基于像素聚类的分割方法基于slic的方法_基于区域的分割方法二聚类算法(11.3)...

一,k-means 聚类

k-means 聚类算法是一种非常简单实用的图像分割方法。它属于无监督机器学习算法。通常的做法是按照一定的方法度量样本间的相似度,然后通过不断的迭代来更新聚类的中心,当中心不再变动时,说明图像分割完成。具体的方法如下:

1.随机选择K个点作为聚类的中心点(本示例选择的两个点)

c3493a39edd255ea9e54ee281998a4f6.png

2.计算每个点到两个中心点的距离,并将每个像素点分配给距离其最近的中心点

dbb38a1141394c6bae6a7f15192fefa9.png

3.计算每个族群的均值位置作为新的聚类中心点

25724d92e0bb9fd262800fb79d588885.png

4.重复上述步骤,直到中心点不再变化

7bee098b7ca8f9505eab4fcfb519a36f.png

聚类算法的缺点:

1.在算法开始时,随机选择的中心点不同,可能导致最终的结果不同(如下图所示),同样是选择三个中心点,由于开始随机选取的点不同,造成最终结果不同

4756a0c181def6371253184398b5fc22.png

2.对于分割区域的大小差异较大的图像,分割效果较差(如下图所示)

e54407444cebecd0083ca20936f6a463.png

3.对于非球状的图像,分割效果较差(如下图所示)

b90e26231e2939dbace827afb27f1b37.png

二,分层聚类(Hierarchical Clustering)

Hierarchical Clustering 有两种方式,一种叫做agglomerative clustering,这种方法的核心思想为每个像素为认为是一类,通过迭代将最近的两个类别merged到一起形成新的类;另一种方法叫做divisive clustering,这种方法的核心思想为先将整个图像当成一类,然后通过迭代将整个图像逐渐分割成不同的类。Agglomerative clustering 的基本步骤为:

1.将每个像素点当成一类

2.计算距离矩阵,即所有像素点两点之间的距离。假设有A, B, C, D, E 5个点(如下图)

003ef0b65804fc5d852dfaf236f16f48.png

3.通过迭代,不断的merge距离最近的两个群组,直到最终全部合并成一个群组为止

重点:算法的核心在于计算两个群组的最短距离的方式不同,最终所分成的群组的结果也会不同,常用的计算两个群组的最短距离的方式有如下三种:

single-link clustering: 两群组间的最短距离为群组间的最相邻点的距离

44a88083c86d73260bb4efbbbf61520f.png

complete-link clustering: 两群组间的最短距离为群组间最远点的距离

ec58f41cf7c13c644985b022542f119e.png

group-link clustering: 两群组间的最短距离为群组间所有点的相互距离的平均值。如,两群组分别有m 和 n个元素,则相互间可以计算出 m *n个距离,将这些距离相加再除以m*n 则是他们两个群组的距离

c71dd7d2fff193763b1acf38fc63ba06.png

centroid clustering: 两群组间的距离为先求出每个群组内部的平均距离,然后再计算群组间的距离

Reference:

https://blog.csdn.net/M1M1M16/article/details/79415871

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值