第10章图像分割 453 例10.4一条有噪声边缘的一阶导数和二阶导数的性质。 整个图段的导数计算将在下 图108中的边缘是无噪声的。图1011中第二列图像段是4个斜坡 节中计论现在,我们的月的只是 边缘的特写,这些边缘从左边的黑色区域到右边的白色区域过渡(记住】 分析灰度制面。 从黑到白的整个过渡是一个单一的边缘)。左上方的图像段无噪声。第 列中的其他三幅图像被均值为零、标准差分别为0.1,1.0和10.0个灰度级的加性高斯噪声污染。每幅图像 下面的图形是一个通过图像中心的水平灰度剖面线。所有图像具有8比特的灰度分辨率,并用0和255 分别表示黑色与白色。 考虑中间一列顶部的图像。就像我们对图10.106)的讨论那样,左侧扫描线的导数在灰度恒定区域为 零。这是在导数图像中显示的两个黑色条带。在斜坡上的各点处的导数是恒定的,并等于斜坡的斜率。 在导数图像中这些恒定值显示为灰色。当我们沿中间列向下移动时,导数会变得与无噪声情形时拔来械 不相同。实际上,将中间列中最后一个剖面与斜坡边缘的一阶导数联系起来将会很困难。造成这种有意 思的结果的原因是左列图像中的噪声几乎不可见。这些例子很好地说明了导数对噪声的敏感性。 如预想的那样,二阶导数对于噪声甚至更为敏感。无噪声图像的二阶导数显示在右列的上部。白色 和黑色的细垂直线是二阶导数的正分量和负分量,就像图10.10中解释的那样。这些图像中的灰色表示零 (如先前讨论的那样,比例缩放导致零显示为灰色)。唯一一个类似于无噪声情况的有噪声二阶导数图像 对应于标准差为0.1的噪声。另两幅一阶导数图像和剖面清楚地表明了检测这些图像中的正分量和负分 的确很困难,而这些分量在边缘检测中确实是非常有用的二阶导数特性。 微弱的可见噪声对检测边缘所用的两个关键导数的严重影响的这一事实,是我们应记住的一个重要问 题。特别地,在类似于我们刚刚讨论的水平的噪声很可能存在的应用中,使用导数之前的图像平滑处理是 应该认真考虑的问题。 图10.11第一列:被均值为零、标准差分别为00,Q1,10和10.0个灰度级的随机高斯噪声所污染的斜坡边缘 726 的图像和灰度剖面。第二列:一阶导数图像和灰度剖面线。第三列:二阶导数图像和灰度剖面线 7
454 数字图像处理(第三版) 我们用上面的解释给出执行边缘检测的三个基本步骤: 1.为降噪对图像进行平滑处理。需要这一步的原因已由图10.11的第二列和第三列中的结果做了 详细说明。 2。边缘点的检测。如先前提及的那样,这是一个局部操作,从一幅图像中提取所有的点,这些 点是变为边缘点的潜在候选者。 3,边缘定位。这一步的目的是从候选边缘点中选择组成边缘点集合中的真实成员 本节剩下的内容探讨实现这些目标的一些技术。 10.2.5基本边缘检测 正如前一节说明的那样,为了达到寻找边缘的目的,检测灰度变化可用一阶或二阶导数来完成。 在这一节中,我们讨论一阶导数.二阶导数将在102.6节中讨论。 图像梯度及其性质 为了在一幅图像了的红,y)位置处寻找边缘的强度和方向,所选择 的工具就是梯度,梯度用V来表示,并用向量来定义: 节中的一 「a I8. Vf grad(f) (10.2-9列 8, 该向量有一个重要的几何性质,它指出了∫在位置:处的最大变化率的方向。 向量听的大小(长度)表示为Mk以,即 Mx,y)=mag(V=√g+g (10.2-10) 它是梯度向量方向变化率的值。注意,8·8,和Mxy都是与原图像大小相同的图像.是x和y在∫ 中的所有像素位置上变化时产生的。实践中,我们通常称后一图像为梯度图像,或者在含义很清楚时 简称为梯度。如2.6.1节中定义的那样,求和、平方和开方操作都是阵列操作。 梯度向量的方向由下列对于x轴度量的角度给出: a(r.y)=arctan. (10.2-11) L8. 如在梯度图像的情况那样,α(x,)也是与由g,除以g,的阵列创建的尺寸相同的图像。任意点x) 处一个边缘的方向与该点处梯度向量的方向a(x,》正交。 例105梯度的性质。 图1012显示了包含一段直的边缘线段放大的一部分。所显示的每个方块对应于一个像素,我们的兴 趣是得到用一个方框强调的点处边缘的强度和方向。灰色像素的值为0,白色像素的值为1。下面我们说 明该例子,为计算x方向和y方向的梯度,该方法使用一个关于一点为中心的3x邻域,简单地从底 部一行的像素中减去顶部一行邻城中的像素,得到x方向的偏导数。类似地,我们从右列的像素中减 去左列的像素得到y方向的偏导数。接下来,用这些差值作为偏导数的估计,在这一点处有f1日x=一2 和af10y=2。从而有
第10章图像分割 455 周 dy 由此,我们可以得到这一点处的M(x)=2反。类似地,相同点处梯度向量的方向遵循式(10.21) a(x,)=arctan(g,/g,)=-45°,它与相对于x轴的正方向度量的135相 问忆242节可知,图像坐标系统 同。图10.12⑥)显示了该梯度向量及其方向角。 的原点位于左上角,正x轴向下延 图10.12(c)说明了之前提到的一个重要事实,即某点的边缘与该点 伸,正y轴向右延伸。 的梯度向量正交。因此,在这个例子中,边缘的方向角是α-90=45°。图10.12(a中的所有边缘点都有 相同的梯度,所以,整个边缘段都处在相同的方向上。梯度向量有时也称为边缘法线。当向量通过除以 其幅值[见式(10.2-10)]而归一化为单位长度时,结果向量通常称为边缘单位法线。 度向量 度向量 边像方 ab c 图10.12用梯度确定某个点处的边缘强度和方向。注意,某点处的边缘 垂直于该点处的梯度向量的方向。图中的每个方块表示一个像素 梯度算子 要得到一幅图像的梯度,则要求在图像的每个像素位置处计算偏导数∂f10x和∂f10y。我们处 理的是数字量,因此要求关于一点的邻域上的偏导数的数字近似。由10.2.1节.我们可知 ,=fl-n dx (10.2-12) 和 8,=》=fk.y+》-n (10.2-13) dy 这两个公式对所有x和y的有关值可用图10.13中的一维模 ab -1 -11 板通过对∫化,)的滤波来执行。 当对对角线方向的边缘感兴趣时,我们需要一个二维模板 罗伯特交叉梯度算子(Roberts1965是最早尝试使用具有对角优 势的二维模板之一。考虑图10.14(a)中的3x3区域。罗伯特算 图10.13用于实现式(102.12)和 子以求对角像素之差为基础: 式(102-13)的维模板 (10.2-14) 和 边棒算于或边缘检测子 8,6- (10.2-15) 这些导数可以使用图10.14b)和(©)中的模板对图像进行滤波来实现
456 数宇图像处理(第三版) 2x2大小的模板在概念上很简单,但是它们对于用关于中,心点对称的模板来计算边缘方向不是很 有用,其最小模板大小为3x3。这些模板考虑了中心点对端数据的性质,并携带有关于边缘方向的 更多信息。用大小为3×3的模板来近似偏导数的最简单的数字近似由下式给出: (102.16) 尽管这些公式包合了较大的邻 和 8,"=3+%+)-6++) (10.2-17)论仍然话用 0 0 0 10 0 图10.14一幅图像的3x3区城(:项是灰度面和用于计算标记点云处的梯度的不同模板 在这些公式中,3x3区域的第三行和第一行之差近似为x方向的导数,第三列和第一列之差近似 为y方向的导数。直观上,我们可以预料这些近似要比用罗伯特算子得到的近似更准确。式(10.2-16) 和式(10.2-17)可用图10.14(d和(e)中的两个模板通过滤波整个图像来实现。这两个模板称为Prewitt 算子(Prewitt1970。 对这两个公式的一个小小的变化是在中心系数上使用一个权值2: 8-票=+24+-6+2* (10.2-18) 和 (10.2-19) 可以证明,在中心位置处使用2可以平滑图像(见习题10.10)。图10.14(0和(g)显示了用于实现 式(10.2-18)和式(10.2-19)的模板。这些模板称为Sobel算子(Sobell1970)。 Prewitt模板实现起来比Sobl模板更为简单,但它们之间计算上的小差别并不是问题。正如前 节提到的那样,Sol模板能较好地抑制(平滑)噪声的特性这一事实使得它们更可取,因为在处理导 数时噪声抑制是一个重要的问题。注意,图10.14中所有模板中的系数之和为零,正如导数算子所预 示的那样,恒定灰度区域的响应为零。 刚才讨论的模板用于在图像的每个像素位置处得到梯度分量&,和g然后,用这两个偏导数估 图中H条品
第10章图像分割 457 这种实现并不总是令人满意,因为平方和平方根需要大量的计算开销。经常使用的一种方法是用绝对 值来近似梯度的幅值: M(x,y=8+8, (10.2-20) 该式不仅在计算上更有吸引力,而且仍保持着灰度级的相对变化。为这一优点付出的代价是导致滤波 器一般将不再是各向同性(旋转不变)的。然而.当使用Prewitt和Sobl这样的模板来计算g,和g,时, 这并不是问题,因为这些模板仅对垂直和水平边缘才会给出各向同性的结果。不管使用这两个公式 的哪-一个,只有在这两个方向上的边缘其结果才是各向同性的。此外,当使用Sobl或Prewitt模板 时,式(10.2-10)和式(102-20)对垂直和水平边缘给出相同的结果(见习题10.8》 可以修改图10.14中的3x3模板,以便它们沿对角线方向有最大的响应。图10.15显示了另外两 个用于检测对角线方向边缘的Prewitt和Sobel模板。 ab c d 0 1 -1 -1 1 2 -2-10 0 -1 -101 -10 0 01 Prewitt 图10.15检测对角边缘的Prewitt和Sob模板 例10.6二维梯度幅值和角度的说明 图10.16说明了两个梯度分量g,和g,的绝对值响应,以及由这两个分量之和形成的梯度图像。梯度 的水平和垂直分量的方向性在图10.,16)和()中很明显。注意,图10.16(6)中屋顶的瓦片、砖块的水平 接缝和窗户的水平线段比起其他边缘要强得多。相比之下,图10.16(。中正面和窗户的垂直分量更强 当一幅图像涉及的主要特性是边缘时,如梯度幅度图像,通常使用边缘图这一术语。在图10.16(a)中, 图像的灰度被标定在0,1小范围内。在本节讨论的各种边缘检测方法中,我们使用这一范围内的值来简化 参数的选择。 a b c d 图10.16(a灰度值标定为范围0,1内的、大小为834x1114的原图像:()g 用图10.14(0中的Sot模板滤波图像得到的x方向上的梯度分量:(C)gJ 用图1O.14(g)中的模板得到的y方向上的梯度分量:(@梯度图像gJ+g,J 图10.17显示了使用式(10.2-11)计算得到的梯度角度图像。通常,对于边缘检测而言,角度图像不像 幅度图像那样有用,但它们可以作为用梯度幅值从图像中提取的信息的补充。例如,图10.16()中的恒 定灰度区域。诸如斜屋顶的前边缘和前墙顶部的水平条带,在图10.17中都是恒定的,这说明在这些区域 中的所有像素位置处的梯度向量方向是相同的。正如我们在10.2.6节说明的那样,在坎尼边缘检测算法 的实现中,角度信息起着重要的支撑作用,坎尼边缘检测算法是在本章中我们讨论的最先进的边缘检测 方法 234