基于模糊C均值聚类(FCM)的图像分割原理
图像分割概述
图像分割就是把图像细分为构成它的对象或子区域,这些区域是互不相交的,每个区域都满足特定区域的一致性。分割的程度主要取决于人们想要解决的问题,当感兴趣的区域或对象已经被区分出来,分割就算是完成了。计算机视觉中的图像理解,包括目标检测、特征提取和目标识别都依赖于图像分割的质量。
目前,图像分割算法一般书围绕高亮度值的两个基本特性设计的:不连续性和相似性。亮度值的不连续性的应用途径主要是基于像素点特性,如灰度值,的不连续变化分割图像,如最常用的边缘检测。而利用亮度值的相似性可以形成一套机制,即依据事先指定的准则将图像分割为相似的区域。一些实例包括门限处理、区域分离、区域生长和聚类等。而采用模糊C均值聚类及其扩展算法进行图像分割的好处是避免了阈值的设定问题,聚类的过程不需要人工干预,只需输入预想的分类数目即可实现自动化的图像分割。
FCM聚类算法(Fuzzy C- Means)
1. FCM原理
模糊C均值聚类- FCM的核心就是“模糊”,相较于K-means这种“硬”聚类,FCM提供了更为灵活的聚类结果。对于图像中像素点的分割往往并不能划分成明显分离的簇类,讲一个对象划分到一个特定的簇是由一些不符合客观认知的。
模糊指的就是对每个对象和每个簇类赋予一个权值,指明一个对象属于该簇的可能程度即可。当然基于概率的方法也可以给出一个权值,但是实际情况中往往很难给出一个合适的统计模型用以计算权值,所以自然的,非概率特性的FCM聚类算法就是一个比较好的选择。
2. FCM聚类流程
- 设置目标函数的精度,模糊指数与算法的最大迭代次数
- 初始化隶属度矩阵
- 计算聚类中心
- 更新隶属度矩阵
- 判断是否满足迭代终止条件,如果不满足则继续进行3,4
- 如果满足终止条件则停止迭代并返回聚类的簇类结果。
3. 具体步骤
Step 1. 初始化隶属度矩阵
FCM模糊聚类算法中将只取
在公式(1)中,
Step 2. 判断是否超过最大迭代次数
设定最大迭代次数
Step 3. 计算聚类中心
传统均值聚类算法在确定聚类中心时,一般最简单的就是找到属于某一类的所有样本点,然后这一类的类中心就是这些样本点的平均值。而对于FCM模糊聚类而言,在聚类中心
如公式(2)中,
Step 4. 更新隶属度矩阵
基于Step 3 中计算所得的各簇类中心点及原始数据集合,通过隶属度计算公式对隶属度矩阵进行更新:
如公式(3)中,
Step 5. 判断是否满足迭代终止条件
在不超过最大迭代次数的前提下,迭代终止条件如下:
如公式(4)中,
FCM算法推导
-
定义数据集大小为
,聚类中心点个数为 , 为第 个中心点的隶属度,并且 ,显然有 -
类似于K-means算法中的距离概念,定义:
其中
为超参数, 表示第 个数据到第 个中心的距离。显然为了让分类更加合理, 应当尽可能地小。换言之,当 不再减小或者减小幅度足够小时,算法结束。 -
运用拉格朗日乘子法合并函数
和约束条件 得到 这里对输入参数求导,从而得到目标函数达到最小值的条件:
传统FCM图像分割实例
对于上图分别进行FCM聚类分割与K-means聚类分割的效果图如下:
K=3的K- means
K=3的FCM
K=4的K-means
K=4的FCM
FCM算法改进
对于FCM算法的改进这里仅包括在图像分割领域常有的改进,其中包括:FCM_S1,FCM_S2,EnFCM,FGFCM,FLICM,NWFCM,KWFLICM,NDFCM,FRFCM
未完待续
1. FLICM
FLICM是一种基于局部空间信息模糊聚类的图像分割算法。它融合了新的正则因子
公式(8)中,
FLICM算法所对应的聚类目标函数为:
公式(9)中,
再满足
公式(11)中与传统FCM算法中的
1.1 FLICM的特征
FLICM中定义了一种新颖的模糊因子用以替代ENFCM和FCM- S及其变体中使用的参数
- 它相对独立于噪声的类型,因此,在没有先验的噪声知识情况下,他是FCM聚类变种的更好的选择。
- 模糊局部约束以模糊方式同时合并了局部空间和局部灰度关系。
- 可以自动确定模糊局部约束,因此不需要任何参数的确定。
- 通过模糊的局部约束自动实现图像细节和噪点之间的平衡,同时增强了聚类性能。
2. NW-FCM
3. GG- FCM
一种半监督的FCM,其中通过考虑每个像素的局部邻域来确定几何条件。
4. FCM-S
其中对经典FCM的目标函数进行了修改,以补偿强度的不均匀性,并允许像素的标记受到其紧邻像素的影响。FCM-S的一个缺点就是每一次迭代过程中都需要计算邻域标签。
FCM-S允许像素的标记受到紧邻像素影响的方式为,以邻域效应充当正则化器,并使解决方案偏向于分段均质标记,修改后的目标函数为:
公式(12)中
隶属度矩阵与聚类中心点的计算如下:
公式(14)分子中的
5. FCM-S1,FCM-S2
FCM- S的两个变体用一减少计算时间,这两种算法分别引入了额外的均值和中值滤波图像,这些图像可以预先计算,以代替FCM-S的邻域项,因此,FCM-S1与FCM-S2的执行时间都大大减少了。
6. ENFCM
增强的FCM算法来加速图像的分割过程。首先由原始图像和每个像素的局部邻域平均灰度级形成线性加权和图像,然后,基于灰度直方图而不是求和图像的像素执行聚类。由于图像中的灰度级数通常比其像素小得多,因此减少了ENFCM算法的计算时间。
7. FGFCM
该算法结合了空间信息,局部像素邻域的强度和图像中的灰度级数。该算法从原始图像及其局部空间和灰度邻域形成非线性加权和图像,由于基于灰度直方图进行聚类,因此FGFCM的计算时间非常短,分割图像的质量得到了很好的增强。
8. ENFCM与FGFCM的问题
ENFCM与FGFCM具有相同的关键参数