模糊C均值聚类(FCM)算法介绍及其Python实现

这篇文章是楼主老早之前做课后作业写的,如果有问题的话建议米娜桑自行解决哦~

目录

    • 一、理论介绍
    • 二、算法实现思路
    • 三、FCM算法核心代码的python实现
    • 四、使用示例
      • 1.对数据进行聚类
      • 2.图片分割
    • 五、实现时出现的错误总结
    • 六、源码链接

一、理论介绍

模糊C均值聚类(FCM)算法介绍及其Python实现_第1张图片

模糊C均值聚类(FCM)算法介绍及其Python实现_第2张图片
模糊C均值聚类(FCM)算法介绍及其Python实现_第3张图片

二、算法实现思路

下面给出该算法的基本思路:
       1.可以先初始化一个隶属度矩阵U(每个样本对各个类的隶属度和为1)。
       2.根据U开始对类中心矩阵C进行计算。
       3.再根据C计算U。
       4.循环2,3步骤直到满足循环条件,结束。

三、FCM算法核心代码的python实现

模糊C均值聚类(FCM)算法介绍及其Python实现_第4张图片

模糊C均值聚类(FCM)算法介绍及其Python实现_第5张图片
模糊C均值聚类(FCM)算法介绍及其Python实现_第6张图片

模糊C均值聚类(FCM)算法介绍及其Python实现_第7张图片

四、使用示例

1.对数据进行聚类

下面我用np的random生成一些数据来对FCM进行展示
示例1:
模糊C均值聚类(FCM)算法介绍及其Python实现_第8张图片

示例2:
模糊C均值聚类(FCM)算法介绍及其Python实现_第9张图片

示例3:
模糊C均值聚类(FCM)算法介绍及其Python实现_第10张图片


2.图片分割

模糊C均值聚类(FCM)算法介绍及其Python实现_第11张图片
下面展示图片分割的结果~

灰度图:(下面展示聚类中心为2和15两种)
模糊C均值聚类(FCM)算法介绍及其Python实现_第12张图片
模糊C均值聚类(FCM)算法介绍及其Python实现_第13张图片

Ps:聚类中心不要设太大,图片不要太大!!!

彩图:
模糊C均值聚类(FCM)算法介绍及其Python实现_第14张图片

模糊C均值聚类(FCM)算法介绍及其Python实现_第15张图片

可以看到,分割后的图片还是能有清晰的轮廓,只是灰度或色彩的种类数减少了。



五、实现时出现的错误总结

模糊C均值聚类(FCM)算法介绍及其Python实现_第16张图片

六、源码链接

点击此处,混合食用最佳

你可能感兴趣的:(#,FCM(模糊C均值聚类),python,聚类)