本文要介绍的是SLIC(simple linear iterative clustering),即简单线性迭代聚类算法。它在分割效果和分割速度两方面表现都比较优良,是一种比较实用的超像素分割算法。本文首先介绍SLIC算法的原理,其构造一个关于LAB空间色彩和空间距离的像素间距离的度量函数,选择一些初始点对图像像素进行局部聚类,之后根据聚类结果修改初始点位置,反复迭代,直到初始点的变化小于预期的阀值。
接下来本文通过python程序实现SILC,将展示每一部分python代码,并详细解释每一部分的功能。之后展示代码的实际运行效果,在安装二核的intel corei7-6500u处理器的笔记本电脑上处理311*308像素的照片,迭代一次仅需约三秒,在分割速度方面令人满意。
在本文的最后一部分将讲述作者本人对SILC算法的认识,其与K-MEANS聚类算法的关系。
更新:
本文将在之前的基础上进行扩展,利用SLIC算法对3D医学图像进行SuperVoxel分割。本文将着重放在二维与三维情况的不同点进行描述。