- 图像分割(1)
一. 图像分割
图像分割就是依据图像特征,把图像分成各自满足某种相似性准则或具有某种同质特征的连通区域的集合的过程。图像的特征可以是灰度、颜色、纹理等。
1.1图像分割在视觉中的地位
(1)低层视觉处理技术有图像变换、图像平滑、图像锐化、图像形态学等,使输出图像的品质得到某种程度改善的处理方法。
(2)中层视觉中图像分割属于中层视觉技术的图像处理技术。
(3)高层视觉中的图像分析图像分析是一种通过分割的特征或目标物来对图像中的目标进行分类、识别和理解的技术。
1.2图像分割技术的分类
二.基于边缘检测的图像分割
2.1基本思想
先确定图像中的边缘像素,然后把它们连接在一起构成所需要的边界。
(1)图像的边缘是指图像灰度发生空间突变的像素。
(2)图像边缘有两个特征方向和幅度,沿着边缘方向图像像素变化缓慢,沿着垂直于边缘的方向,图像像素变化剧烈。
(3)常用一阶和二阶导数来描述和检测边缘。
2.2梯度
2.2.1梯度
梯度两大重要性质:
(1)梯度的方向在函数 f(x,y)最大变化率的方向上。
(2)梯度的模(幅度)用由下式算出:
2.2.2已学梯度算子
2.2.3 log算子(Marr-Hidden边缘检测器)
在这里插入图片描述
说明:log算子经过两个步骤求得
(1)首先用高斯函数对图像作平滑滤波。
(2)然后使用Laplacian算子检测边缘。
经过log算子处理的图像克服了Laplacian算子抗噪声能力比较差的缺点,抑制噪声的同时也可能将原有的比较尖锐的边缘平滑掉,造成这些尖锐边缘无法被检测到。
(3)所以高斯函数中方差参数的选择很关键,对图像边缘检测效果有很大的影响。
(4)高斯滤波器为低通滤波器,方差参数越大,通频带越窄,对较高频率的噪声的抑制作用越大,避免了虚假边缘的检出,同时信号的边缘也被平滑了,造成某些边缘点的丢失。反之,方差参数越小,通频带越宽,可以检测到的图像更高频率的细节,但对噪声的抑制能力相对下降,容易出现虚假边缘。为取得更佳的效果,对于不同图像应选择不同参数。
2.3 Canny算子(Canny边缘检测器)
Canny 算法的目标是找到一个最优的边缘检测算法,Canny算法仍然是图像边缘检测算法中最经典、有效的算法之一。
2.3.1最优检测边缘
(1)好的检测:算法能够尽可能多地标识出图像中的实际边缘。
(2)好的定位:标识出的边缘要尽可能与实际图像中的实际边缘尽可能接近。
(3)低的错误检测率:图像中的边缘只能标识一次,并且可能存在的图像噪声不应标识为边缘。
2.3.2 Canny算子实现步骤
(1)用二维高斯滤波模板进行卷积以平滑图像。
(2)利用微分算子,计算梯度的幅值和方向。
(3)对梯度幅值进行非极大值抑制。
(4)用双阈值算法检测和连接边缘。
Canny算法应用双阀值,即一个高阀值和一个低阀值来区分边缘像素。如果边缘像素点梯度值大于高阀值,则被认为是强边缘点。如果边缘梯度值小于高阀值,大于低阀值,则标记为弱边缘点,小于低阀值的点则被抑制掉。
Canny算子流程演示:
2.4边缘连接
由于噪声、照明等产生边缘间断,使得一组像素难以完整形成边缘因此,在边缘检测算法后,使用连接过程将间断的边缘像素组合成完整边缘。边缘连接分为局部处理和全局处理。
2.4.1边缘连接的局部处理
分析图像中每个边缘点(x,y)的一个邻域内的像素,根据某种准则将相似点进行连接,由满足该准则的像素连接形成边缘。
相似性准则:
(1)
如果
那么(x,y)领域内的像素(x0,y0)在幅度上相似于(x,y)。
(2)
如果
那么(x,y)领域内的像素(x0,y0)在方向(角度)上相似于(x,y)。
2.4.2 边缘连接的全局处理(Hough变换)
霍夫变换运用两个坐标空间之间的变换将在一个空间中具有相同形状的曲线或直线映射到另一个坐标空间的一个点上形成峰值,从而把检测任意形状的问题转化为统计峰值问题。
实例来解释一下对偶性的意义。
在直角坐标系中:
(1)
已知点A(x0,y0)的坐标,在图像空间x-o-y坐标系下,y0=kx0+b可理解为过点A的直线簇
在参数空间k-o-b坐标系下,b=-kx0+y0则表示为一条直线,因此可以得到结论,图像空间中的点与参数空间中的直线一一对应。
(2)
再在图像空间x-o-y坐标系下增加点B(x1,y1),同理y1=kx1+b可理解为过点B的直线簇,此时的点A和点B构成一条k,b已知的直线,在参数空间k-o-b坐标系下,b=-kx1+y1则表示为另一条直线,点A和点B相交确定出唯一的k,b。把图像空间中的直线对应到参数空间中的点,最后通过统计特性来解决问题。假如图像空间中有两条直线,那么最终在参数空间中就会对应到两个峰值点。
此时的无法在参数空间中表示x=r的直线。
在极坐标系中:
解决无法在参数空间中表示x=r的直线。
图像空间中的每个点就被映射为一个r-θ空间中的正弦曲线。r-θ空间中多条正弦线的交点就是对应与图像空间中多个点共线的直线。
Hough变换直线检测:
原理:
优点:Hough直线检测的优点是抗干扰能力强,对图像中直线的缺部分、噪声以及其它共存的非直线结构不敏感。
缺点:Hough变换算法的特点导致其时间复杂度和空间复杂度都很高,并且在检测过程中只能确定直线方向,丢失了线段的长度信息。
Hough变换圆检测:
原理:(1)把X-Y平面上的圆转换到a-b-r参数空间,则图像空间中过(x,y)点圆对应参数空间中,高度r变化下的一个三维锥面。
(2)过图像空间中任意一点的圆对应于参数空间中的一个三维锥面。因此,过图像空间上同一圆上的点,对应的参数空间中的三维锥面,在r高度必然相交于一点(a,b,r)。这样通过检测这一点可以得到圆的参数,相应的圆也可求得了。
三、基于阈值的简单图像分割
基于阈值图像分割最主要的问题是如何确定阈值
3.1人工经验选择法
根据各人对图像处理的经验设定阈值,通过比较图像经过处理后的效果,来选择阈值,此种效率低下。
3.2直方图法
利用直方图进行分析,根据直方图波峰与波谷的关系,在其间选择一个合适的阈值,此种方法尤其适合一个目标和一个背景的图像,即直方图是双峰。
3.3最大类间方差法
一直被认为是阈值自动选取方法的最优方法
3.3.1基本思想
通过设定阈值,将图像分成前景和背景,前景和背景之间的类间方差如果越大,就说明构成图像的两个部分之间的差别越大,当部分目标被错分为背景或部分背景被错分为目标,都会导致两部分差别变小,当所取阈值的分割使类间方差最大时就意味着错分概率最小。
3.3.2实现步骤
说明:
(1)右边括号内实际上就是类间方差值。
(2)方差是灰度分布离散性的一种度量,方差值越大,说明构成图像的和两部分差别越大。
(3)当部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小。
(4)使类间方差最大的分割意味着错分概率最小。
3.3.3最大类间方差法的缺点
最大类间方差阈值分割法在分割过程中对图像上的每个像素都使用了相等的阈值。但在实际情况中,当照明不均匀、有突发噪声或者背景变化较大时,整幅图像分割时将没有合适的单一阈值,如果仍采用单一的阈值去处理每一个像素,可能会将目标和背景区域错误划分。
3.4自适应阈值分割法
根据图像的局部特征分别采用不同的阈值进行分割
3.4.1自适应阈值方法简单步骤
(1)将整幅图像分成一系列互相之间有50%重叠的子图像。
(2)做出每个子图像的直方图。
(3)检测各个子图像的直方图是否为双峰,如果是,则采用最佳阈值法确定一个阈值,否则就不进行处理。
(4)根据对直方图为双峰的子图像得到的阈值通过插值得到所有子图像的阈值。
四、基于区域的分割
4.1区域生长法
基本思想:将相似像素结合起来构成区域。(“物以类聚”)
基本步骤:
(1)选择区域的种子像素。
(2)确定将相邻像素包含进来的准则。
(3)制定停止生长的准则。
方法要点:如何选择种子像素和两个准则的制定。
4.2例说简单的区域生长法
下图给出已知种子点进行区域生长的一个示例。第1图给出需分割的图象,设已知有两个种子象素(标为深浅不同的灰色方块),现要进行区域生长。设这里采用的生长判断准则是:如果所考虑的象素与中子象素灰度值差的绝对值小于某个门限,则将该象素包括进种子象素所在区域。那么第2图给出T=3时的区域生长结果,整幅图被较好地分成2个区域;第3图给出T=1时的区域生长结果,有些象素无去判定;第4图给出T=6时的区域生长结果,整幅图都被分在一个区域中了。
4.3种子像素和规则制定
(1)选取的种子点原则上是待提取区域的有代表性的点。可是单个像素,也可是包括若干个像素的子区域。
(2)生长准则原则上是评价与种子点相似程度的度量。生长准则多采用与种子点的距离度量。种子点可以随着区域的生长而变化,也可以设定为一个固定的数值。
(3)区域生长的停止条件,对于渐变区域进行生长时的停止判断非常重要。一般是结合生长准则来进行合理的设定。判定生长停止的阈值可以是确定的值,也可是随生长而变化的值。
4.4区域分裂和合并
基本思想:将图像分成若干子块,对每个字块进行属性计算
(1)当该块属性表明包含不同的区域的像素时,则该字块分裂成若干子块。
(2)如果几个子块的属性相似,则这几个相似属性的子块合并成一个大的区域。
由此可以完成图像得分割。
五、基于形态分水岭的分割
5.1基本概念:分水岭概念是以对图像进行三维可视化处理为基础的:其中两个是坐标,另一个是灰度级。对于这样:一种“地形学”的解释,我们考虑三类点:(a)属于局部性最小值的点;(b)当一滴水放在某点的位置上的时候,水一定会下落到一个单一的最小值点;©当水处在某个点的位置上时,,水会等概率地流向不止一个这样的最小值点。对一个特定的区域最小值,满足条件(b)的点的集合称为这个最小值的“汇水盆地”或“分水岭”。满足条件©的点的集合组成地形表面的峰线,术语称做“分割线”或“分水线”。
基于这些概念的分割算法的主要目标是找出分水线。基本思想很简单:假设在每个区域最小值的位置上打一个洞并且让水以均匀的上升速率从洞中涌出,从低到高淹没整个地形。当处在不同的汇聚盆地中的水将要聚合在一起时,修建的大坝将阻止聚合。水将只能到达大坝的顶部处于水线之上的程度。这些大坝的边界对应于分水岭的分割线。所以,它们是由分水岭算法提取出来的(连续的)边界线。
这些思想可以用图10.44作为辅助做进一步的解释。图10.44(a)显示了一个简单的灰度级图像。图10.44(b)是地形图。其中“山峰”的高度与输入图像的灰度级值成比例。为了易于解释,这个结构的后方被遮蔽起来。这是为了不与灰度级值相混淆;三维表达对一般地形学是很重要的。为了阻止上升的水从这些结构的边缘溢出,我们想像将整幅地形图的周围用比最高山峰还高的大坝包围起来。最高山峰的值是由输入图像灰度级可能具有的最大值决定的。
假设在每个区域最小值中打一个洞[如图10.44(b)中的深色区域],并且让水以均匀的上升速率从洞中涌出,从低到高淹没整个地形。图10.44©说明被水淹没的第一个阶段,这里水用浅灰色表示,覆盖了对应于图中深色背景的区域。在图10.44(d)和(e)中,我们看到水分别在第一和第二汇水盆地中上升。由于水持续上升,最终水将从一个汇水盆地中溢出到另一个之中。图10.44(f)中显示了溢出的第一个征兆。这里,水确实从左边的盆地溢出到右边的盆地,并且两者之间有一个短“坝”(由单像素构成)阻止这一水位的水聚合在一起(在接下来的章节中将讨论坝的构筑)。由于水位不断上升,实际的效果要超出我们所说的。如图10.44(g)所显示的那样。这幅图中在两个汇水盆地之间显示了一条更长的坝,另一条水坝在右上角。这条水坝阻止了盆地中的水和对应于背景的水的聚合。这个过程不断延续直到到达水位的最大值(对应于图像中灰度级的最大值)。水坝最后剩下的部分对应于分水线,这条线就是要得到的分割结果。
对于这个例子,在图l0.44(h)中显示为叠加到原图上的一个像素宽的深色路径。注意一条重要的性质就是分水线组成一条连通的路径,由此给出了区域之间的连续的边界。
分水岭分割法的主要应用是从背景中提取近乎一致(类似水滴的)的对象。那些在灰度级上变化较小的区域的梯度值也较小。因此,实际上,我们经常可以见到分水岭分割方法与图像的梯度有更大的关系,而不是图像本身。有了这样的表示方法,汇水盆地的局部最小值就可以与对应于所关注的对象的小的梯度值联系起来了。
5.2标记图像的分水岭算法
在真实图像中,由于噪声点或者其它干扰因素的存在,使用分水岭算法常常存在过度分割的现象,这是因为很多很小的局部极值点的存在,比如下面的电泳凝胶图像与经过分水岭转变的分割图图像,这样的分割效果是毫无用处的。
为了解决过度分割的问题,可以使用基于标记(mark)图像的分水岭算法,就是通过先验知识,来指导分水岭算法,以便获得更好的图像分段效果。通常的mark图像,都是在某个区域定义了一些灰度层级,在这个区域的洪水淹没过程中,水平面都是从定义的高度开始的,这样可以避免一些很小的噪声极值区域的分割。
下图为经过mark图像的分水岭算法的电泳凝胶图像
5.3基于形态分水岭的分割的优缺点
(1)优点:与一些基于统计学的图像分割算法相比,分水岭分割算法在计算量上具有明显的优势,尤其适合于一些需要实时处理的图像数据。而且,分水岭分割算法可以得到一条闭合的分割曲线,为后续操作,如计算分割部分的面积等带来极大方便。
(2)缺点:不足分水岭分割算法对噪声相当敏感,且容易产生过分割。因此,如何有效抑制过分割也成为研究的重点和热点。
下图展示该种算法的应用实例: