图像分割:Python的SLIC超像素分割
1. 什么是超像素?
在单个或多个通道中,图像表示为像素网格。我们采用这些M x N像素网格,然后对其应用算法,例如面部检测和识别,模板匹配,甚至将深度学习直接应用于原始像素强度。
像素网格并不是图像的自然表示。事实上,单个像素并不具有语义含义,将像素分组为像素网格只是图像的伪影,这是捕获和创建数字图像过程的一部分。
当在像素网格上执行像素局部分组时,我们就会得到超像素(Superpixel)。 超像素比简单的像素网格具有更多的感知和语义含义。
2. 为什么超像素在计算机视觉方面有重要的作用?
从 像素网格到超像素的映射 将具有以下理想的特性:
-
计算效率:超像素使我们能够将图像本身的复杂性从数十万个像素减少到仅数百个超像素。这些超像素中的每一个都将包含某种感知性的,理想情况下是语义性的值。
-
感知意义:相比检查几乎没有感知意义的像素网格中的单个像素,属于一个超像素组的像素具有某种共性,例如相似的颜色或纹理分布。
-
过度分割:大多数超像素算法都会过度分割图像。在找到图像中