第10章图像分割 整体等于其部分之和 欧几里得 整体大于其部分之和 -Max Wertheimer 引言 从前一章的资料开始了一个转变,即从输入和输出都是图像的图像处理方法,转到了输入为图 像而输出为从这些图像中提取出来的属性的图像处理方法(在1.1节中的定义的意义上)。分制是这一 方向的另一个主要步骤。 分将图像细分为构成它的子区域或物体。细分的程度取决于要解决的向题。也就是说。在应 用中,当感兴趣的物体或区域已经被检则出来时,就停止分割。例如,在电子元件的自动检测中,我 们关注的是分析产品的图像,客观地确定是否存在特定的异常现象,如丢失元件或断裂的连线。超过 识别这些元素所需细节的分割是没有意义的 异常图像的分割是图像处理中最困难的任务之一。分割的精度决定着计算分析过程最终的成败。 因此,应该对改进准确分割的可能性给予相当的关注。在某些情形下,比如在工业检测的应用中,至 少对环境某些范围的典型控制还是可能的。有经验的图像处理系统设计师总是非常关注这种机会。在 其他应用中,比如自主目标获取,系统设计者无法控制操作环境,常用方法是将注意力集中于传感器 类型的选择上,在减少图像无关细节的影响的同时,很可能增强感兴趣物体。一个很好的例子是军方 使用红外线成像来检测有着较强热特性的物体,如运动中的装备和部队。 本章中的多数分割算法均基于灰度值的两个基本性质之一:不连续性和相似性。在第一类中, 方法是以灰度突变为基础分割一幅图像,比如图像的边缘。在第二类中,主要方法是根据一组预定义 的准则将一幅图像分割为相似的区域。阂值处理、区域生长、区域分 裂和区域聚合都是这类方法的例子。在本章中,我们将讨论和说明这 F多个灰度亮度)值的分制技术 些方法,并说明综合运用不同种类的方法可以改善分割的性能,例如。 的计枪,见67节和103节 边缘检测就结合了阀值处理的技术。我们还将讨论基于形态学的图像分割。这种方法特别有吸引力, 因为它基于本章第一部分给出的技术,结合了分制的一些值得肯定的属性。 最后,我们将以分割中运 动线索运用的简单讨论结束本章。 10.1基础知识 令R表示一幅图像占据的整个空间区域我们可以将图像分割视为把R分为n个子区域R.R,… R的过程,满足 712
444 数字图像处理(第三版) (a)0R=R。 (b)R是一个连通集,i=1.2,…,n。 关于连通使的讨论.请参阅252节 (c)RnR=O,对于所有i和j,i≠j (d)O(R)=TRUE.i=1.2.....n (e)Q(RUR)=FALSE,对于任何R,和R的邻接区域 其中,Q(R)是定义在集合R的点上的一个逻辑属性,并且⑦表示空集。如2.6.4节中定义的那样 符号U和门分别表示集合的并和交。如252节中讨论的那样,若R和R,的并形成一个连通集,则我 们说这两个区域是邻接的。 条件()指出,分割必须是完全的:也就是说.每个像素都必须在一个区域内。条件(6)要求一个 区域中的点以某些预定义的方式来连接(即这些点必须是4连接的或8连接的,就像25.2节中定义的 那样)。条件(c)指出,各个区域必须是不相交的。条件()涉及分割后的区域中的像素必须满足的属 性一例如,如果R中的所有像素都有相同的灰度级,则Q(R)=TRUE。最后,条件()指出,两 个邻接区域R和R,在属性Q的意义上必须是不同的P 这样,我们看到,分割中的基本问题就是把一幅图像分成满足前述条件的多个区域。通常 针对单色图像的分割算法基于处理灰度值的两类特性之一:不连续性和相似性。在第一类特性 中,假设这些区域的边界彼此完全不同,且与背景不同,从而允许基于灰度的局部不连续性来 进行边界检测。基于边缘的分割是这一类中所用的主要方法。第二类中基于区域的分割方法是 根据事先定义的一组准则把一幅图像分割成相似的几个区域。图10.1说明了前述概念。图10.1(a 显示了一幅在恒定灰度的暗背景上叠加一个恒定灰度区域的图像。这两个区城构成了整个图像区域 图10.1)显示了基于灰度的不连续性来计算内部区域的边界所得到的结果。边界内侧和外侧的点 都是黑色(O),因为在这些区域中灰度不存在不连续性。为了分割该图像,我们对该边界上或该边 界内的像素分配了一个灰度级(譬如白),而对该边界外部的所有点分配了另一个灰度(譬如黑) 图10.1(c)显示了这一处理方法的结果。我们看到,该结果满足本节开始时说明的条件(a)到(e)。条件( 的属性是:如果一个像素位于边界上或边界内,则将其标为白色否则标为黑色。我们看到,在图10.1 中,对于标为黑色和白色的点,该属性为“真”。类似地,两个分割后的区域(物体和背景)满足条 件(e)。 下面三辐图像说明了基于区域的分割。图10.1(d)类似于图10.1(a)、.但内部区域的灰度形成了 幅纹理模式。图10.1(®)显示了计算该图像的边缘的结果。很清楚,灰度中的大量寄生变化使得识别 原图像中的唯一边界很困难,因为很多非零灰度变化连接到了边界上,故基于边缘的分割不是一种 合适的方法。然而.我们注意到,外部区域是恒定的,因此,我们需要解决的这个简单分割问题的 全部就是区分纹理区域和恒定区域的一个属性。像素值的标准差是完成该任务的一种度量,因为在 纹理区域标准差非零,而在其他区域标准差为零。图10.1(D显示了将原图像分成大小为4x4的几个 子区域后的结果。若某个子区域中的像素的标准差为正(即如果属性为“真”),则将该子区域标记为 白色:其他为零。其结果是在区域边缘周围有“块”效应出现,因为4x4的方块组被标记为相同的 灰度。最后,注意这些结果也满足本节开始处说明的5个条件。 固
第10章图像分割 445 图10.】(包含恒定灰度区域的图像:6)显示内部区域边界的图像,该图像是由灰度不连续性获得的:(⊙)将 图像分制成两个区域后的结果:(d包含一个纹理区域的图像:(⊙计算边缘后的结果。注意。由于存在大量 连接到原始边界的小边缘,仅使用边缘信息是很难找到一条唯一的边界的;(们基于区域特性的分结果 10.2点、线和边缘检测 本特将售中在以灰度局部别列恋化拾则为基电的分割方法上。我们成兴趣的二种图像特征是加 立点、线和边缘。边缘像素是图像中灰度突变的那些像素,而边缘(成边缘线段)是连接的边缘像素的 集合(关于连接性的定义,见25.2节)。边缘检测器是设计用来检测边缘像素的局部图像处理方法。一条 线可视为一条边缘线段,该线两侧的背景灰度要么远亮于该线像素的灰度,要么远暗于该线像素的灰 度。事实上,如下节及102.4节中讨论的那样,线会引起所谓的“屋顶 边缘”。类似地,孤立点可视为一条线,只是其长度和宽度都为一个像素。 当我们说到线时。实际上是指那 些较细的结构,它通常只有几个像 10.2.1背景知识 正如在2.63节和3.5.1节我们所看到的局部平均平滑一幅图像那样,假设平均处理类似于积分 对于灰度的突变,局部变化可以用微分来检测应该并不奇怪。由于变化非常短促,因此一阶微分和二 阶微分特别适合于这种目的。 数字函数的导数可用差分来定义。就像3.6.1节中解释的那样,近似这些差分的方法有多种,但 对于用于一阶导数的任何近似,我们要求:(1)在恒定灰度区域必须为零:(2)在灰度台阶或斜坡开 始处必须不为零:(3)在沿灰度斜坡点处也必须不为零。类似地,对于所用的二阶导数的近似,我 们要求:()在恒定灰度区域必须为零;(②)在灰度台阶或斜坡的开始 处和结束处必须不为零:(3)沿灰度斜坡必须为零。因为我们处理的 回忆242节可知,为表达清张, 图像样本间的增量定义为1。因此( 是数字量,故它们的值是有限的,最大可能的灰度变化也是有限的。 式1021)的推导中使用了△x=1。 且在其上发生变化的最短距离是在两个邻接像素间的距离。 我们按如下方式来得到一维函数f)在点x处的导数的近似:将函数f(x+△x)展开为关于x的 泰勒级数,令△x=1,且只保留该级数的线性项(见习题10.)。结果是数字差分 (10.2-1 当我们考虑一个两变量的图像函数∫化时,为了表示的一致性,这里我们使用了偏微分,此时, 我们将处理沿两个空间轴的偏微分。很明显。当函数f只有一个变量时,有f/x=d山1d山
446 数字图像处理(第三版) 对式(10.21)关于x微分,我们得到一个二阶导数表达式: a1_fr国=fx+0-f国 ax x =f(x+2)-f(x+l)-f(x+l)+f(x) =f(x+2)-2f(x+1)+f(x) 其中,第二行来自式(10.21)。这一展开是关于点x+1的。我们的兴趣是关于点x的二阶导数,故将 上式中的变量减1后,得到 =r=++x-0-2因 (10.2-2 dx 很容易证明式(10.21)和式(102-2)满足本节开始时说明的关于一阶和二阶导数的条件。为了说明这 一点,并强调一阶导数和二阶导数在图像处理中的基本相同点和不同点,考虑图102。 图10.2(a)显示了一幅图像,该图像中包含有不同的实心物体、一条线和单个噪声点。图10.2(6) 显示了近似通过该图像中心的水平灰度剖面(扫描线),其包括孤立点。实心物体和沿扫描线的背景之 间的灰度过渡显示了两种类型的边缘:斜坡边缘(左侧)和台阶边缘(右侧)。正如稍后我们要讨论的那 样,灰度过渡涉及较细物体,如常称为屋顶边缘的线。图10,2()显示了剖面线的简化,构成曲线的 点刚好足够我们在遇到一个噪声点、一条线和物体的边缘时在数量上分析一阶导数和二阶导数的特 性。在这幅简化图中,斜坡的过渡跨越4个像素,噪声点是单个像素,线为3个像素粗,灰度台阶的 过渡发生在邻接像素间。为简化起见,灰度级数限制为8级。 孤立点 台将 附像集带343200006000013100007777a▣ a b -阶数44006600022000)00 图10,2(a)图像:(b)通过该图像中心的水平灰度剖面,包括孤立躁声点:(©)简化后的剖 面线(为清楚起见,点已用虚线连接起来)。图像条带对应于灰度剂面曲线。方框 的数字是剖面线中所示的点的灰度值。导数是使用式(10.2)和式(102-2)得到的
第10章图像分割 447 现在我们考虑当从左到右横穿该剖面时一阶导数和二阶导数的性质。首先,我们注意到在灰度 斜坡的开始处并沿着整个灰度斜坡,一阶导数不为零,同时二阶导数仅在斜坡的开始处和结尾处不为 零。因为数字图像的边缘类似于这种类型的过渡,故我们断定一阶导数会产生“粗”边缘,而二阶号 数则会产生细得多的边缘。接下来,我们遇到孤立噪声点。该点处的二阶导数响应幅度远强于一阶导 数响应幅度。这并不意外,因为在增强剧烈变化方面,二阶导数要比一阶导数更为激进。这样,我们 就口以预期,在增强细节(包括碟声)方面二阶导数远强于一阶导数。在本例中线是如此之细,以至于 它也是更精细的细节,并且我们再次看到到一阶导数的幅度重大。最后,我们注意到到在斜坡和台阶边缘 中,进人边缘和离开边缘过渡时的二阶导数的符号相版(从负到正或从正到负)。正如我们在10.26节中 显示的那样,这种“双边缘效应”是可用于定位边缘的一种重要特性。二阶导数的符号也可用于确定 一个边缘是从亮到暗(负二阶导数)过渡还是从暗到亮(正二阶导数)过渡,这里,当我们移进边缘时. 就观察到这个符号。 总之,我们得出如下结论:(1)一阶导数通常在图像中产生较粗的边缘:(②)二阶导数对精细细 节,如细线、孤立点和噪声有较强的响应:(3)二阶导数在灰度斜坡和灰度台阶过渡处会产生双边缘 响应:(4)二阶导数的符号可用于确定边缘的过疲是从亮到暗还是从暗到亮。 用于十算图像中每个像素位臀处的一阶导数和一阶导数的可洗择方法是使用空间滤波辈。对付干 图10.3中的3×3滤波器模板,该过程是计算模板系数与被该模板覆盖的区域中的灰度值的乘积之和。 也就是说.参考式(3.43),模板在该区域中心点处的响应是 (10.2-3) 其中乙,是像素的灰度,该像素的空间位置对应于模板中第k 个系数的位置。3.4节和3.6节中已详细时论了对图像中所有 0s 像素执行这种操作的细节。换句话说,基于空间模板的导数 的计算是用这些模板对一幅图像进行空间滤波,正如在那些 章节描述的那样。 10.2.2孤立点的检测 基于前一节得到的结论,我们可知点的检测应以二阶导 数为基础。由3.62节的讨论,这意味着使用拉普拉斯 图103一个普通的3×3空间滤波器掩模 a2f.∂2f vf(x.y)=axay (10.2-4) 其中,偏微分用式(10.2-2)得到: 2=j0x+10+fx-山)-2f》 (10.2-5) dr2 和 f卫=fy++fxy-0-2f》 (10.2-6) dy" ①像343节中解释的那样,式102.3)要么是由式341)给出的空间相关的简化表示,要么是由式(342》给出的空司卷积的简 的。在某些情形下。我们通常会使用术语“模板与图像卷积”。但是,我们收在滤波器是对称滤波器时才使用这一术语。因为 这一情形下相关和叁积会产生相同的结果 718