自动化学报
ACTA AUTOMATICA SINICA
1999年 第25卷 第6期 Vol.25 No.6 1999



基于区域一致性测度的多尺度边缘检测方法
杨　　梁德群
摘　要　在多尺度边缘检测方法中，滤波器的滤波尺度的选取非常重要，该文提出了区域一致性测度的概念以度量当前像素点所处的区域是平滑区还是边缘区，并以此测度来自适应调整滤波尺度.实验结果和分析表明，这种方法可以得到令人满意的结果，同时具有较好的抗噪能力.
关键词　滤波，边缘检测，小波变换.
MULTISCALE EDGE DETECTION BASED ON
REGION HOMOGENEITY MEASURE
YANG Xuan
(Institute of Electronics Engineering, Xidian University, Xi'an　710071)
LIANG Dequn
(Dalian Marine University, Dalian　116026)
Abstract　The most important thing in multiscale edge detection is the filter scale. Region homogeneity measure is defined to distinguish homogenous region from edge region. The cubic B spine wavelet whose scale is adjusted by the region homogeneity measure is used to detect edge. The experiment results and comparisons show that this method is effective and feasible.
Key words　Filtering, edge detection, wavelet transform.
1　引言
　　边缘检测在计算机视觉中具有重要的意义.经典的边缘检测方法中最具代表的有Marr-Hildreth［1］边缘检测方法与Canny［2］最优算子.随着小波研究的深入，小波边缘检测方法［3］得到了越来越多的应用.这些方法都属于线性滤波的方法，因而都需要解决一个关键的问题――滤波尺度的选择.小尺度滤波可以得到较准确的边缘定位，同时反映更多的边缘细节，但对噪声较为敏感；而大尺度滤波，在边缘定位上会有一定的偏差，同时只能反映大的边缘轮廓，但对噪声具有较强的抑制.对图像进行边缘检测，如何同时满足边缘定位的精度，又有效抑制噪声，其关键在于滤波尺度的自适应选取.滤波尺度的选取与当前像素点所处的区域是平滑区还是边缘区有关，文献［4］采用模糊推理方法判定平滑区和边缘区，文献［5］定义局部熵来分析噪声的情况.我们希望能够得到一个度量来反映当前区域的特征，本文将从边缘的特征入手，定义区域一致性测度作为判定是平滑区和边缘区的依据，并以此来自适应调整滤波尺度，进而进行多尺度边缘检测.

2　区域一致性测度
　　传统的边缘定义为图像中灰度的突变，这样的定义过于简单了.由于噪声的影响，仅从灰度的突变上，常常无法区分真正的边缘和噪声.事实上，有效边缘往往具有以下特征：1)灰度突变，2)是不同区域之间的边界，3)具有方向性.也就是说，有效边缘不仅在局部反映出灰度突变的特征，同时也是图像中轮廓结构的一部分.因此，判断所关心的区域，其特征是否存在差异，就可以判断是否有存在边缘的可能.如果区域内特征是一致的，就认为是平滑区；如果特征有差异，则判定为边缘区.本文定义的区域一致性测度就是对区域内特征是否存在差异的度量.
2.1　区域一致性测度
　　对于邻域R=｛(i,j)｜｜i-ci｜≤L,｜j-cj｜≤L｝，(ci,cj)是邻域中心像素点，L是邻域的长度.取过中心点(ci,cj)、方向为θ的一条直线l，将R划分为两半S1和S2，如图1所示.令


图1　邻域划分图示

其中gij是像素点(i,j)的灰度值.将l绕(ci,cj)从0°旋转到180°，得到N个方向θk的划分结果，每一次划分得到一个gθk　，k=1,2,…,N.令
　　(2)
Rh的值可以反映区域内特征是否一致，也就是存在边缘的可能性.若(ci,cj)是有效边缘点，则l的N个方向中必有一个方向θk是边缘存在的方向，S1和S2是具有不同灰度值的两个区域，此时gθk的值最大，而其它方向gθk的值较之为小，也就是说，在边缘方向上，灰度的变化最大，此时Rh的值就反映了边缘方向的灰度变化；若(ci,cj)处在平滑区内，则l的N个方向都是将同一个区域划分为两半，其gθk都比较小，从而Rh的值也就比较小，此时Rh的值就反映了平滑区内的灰度变化.
　　对于加噪的图像，由于噪声的分布是随机的，因此无论(ci,cj)是有效边缘点还是处在平滑区内，l所旋转的N个方向中，S1和S2的噪声分布以及噪声强度，在概率上都是相同的.由于gθ=｜gS1-gS2｜，噪声的影响相应地被抵消了，不会对Rh的值产生较大的影响，因此Rh具有较好的抗噪能力，这一点正是克服了传统边缘定义中仅考虑灰度突变的缺点，而是同时考虑了灰度突变以及边缘方向的结构信息，体现了前述的边缘本质特征，是一种有效、合理的定义.
　　定义.对于邻域R=｛(i,j)｜i-ci｜≤L,｜j-cj｜≤L｝，过中心点(ci,cj)以方向θk(0°≤θk≤180°，k=1,2,…,N)将R划分为两半S1和S2，令

则Rh称为区域一致性测度.
　　邻域大小L的选取取决于图像的特点，如果图像中边缘分布较为分散，L取值可以较大；如果图像中边缘分布密集，L取值相应较小.一般地，取L=3.
2.2　侧向抑制
　　前面考虑了(ci,cj)为边缘点及在平滑区的情况，还有一种情况就是(ci,cj)处在边缘的附近.假设区域S1和S2中的灰度值分别为g1和g2，则当划直线l与边缘平行时，gθ　最大；若划分直线l距边缘距离为d，则
　　(3)
　　(4)
　　(5)
也就是说，在有效边缘附近的点，其Rh比边缘点的Rh值小，但相对平滑区的Rh较大，这些点需要去掉，以避免错判，所以侧向抑制就是将有效边缘点附近的这些点的Rh值减小.其方法是，首先求出图像中所有像素点在邻域内的Rh值，在整图中求一次局部极值，并以这些局部极值作为侯选的边缘点，进而判定附近无效点，将其Rh的值置0。
3　滤波尺度自适应调整
　　自适应调整滤波尺度就是在平滑区内进行大尺度的滤波，而在边缘区进行小尺度滤波，这样既可以抑制噪声，同时又较好地保留了有效边缘.有了区域一致性测度这一度量，自适应调整滤波尺度就成为可能.本文使用小波边缘检测方法［3］，采用二次样条小波进行小波变换，平滑函数θ(x)=B3(x)，小波函数，对于信号f(x)，尺度s下的小波变换为
　　(6)
其中，需要自适应调整的就是滤波尺度s.
　　首先要解决的问题是滤波尺度s的取值范围.尺度空间［6］的思想中s∈［0，∞)，但在实际应用中，s是有一个有限的范围，即s0≤s≤smax，smax是用于平滑区的大尺度参数，其目的是为了抑制噪声，所以smax的取值应尽量大，我们取smax=24；s0是用于边缘区的小尺度参数，其目的是为了准确定位边缘，s0的取值应尽量小，但并不是越小越好.对于斜坡状的边缘，大尺度下的小波变换结果中存在局部极值，而小尺度的变换结果中没有局部极值，因而，尺度过小，就不能检测这种斜坡边缘.
　　设斜坡边缘高度为A，宽度为d,u(x)是阶跃函数，其一维模型为
　　(7)
　　(8)
　　(9)
由B样条性质知
　　(10)
其中平滑函数θ(x)的支集为［-w／2,w／2］，对于三次B样条，w=3.当s>d/3时，在x=0处才有局部极值，边缘定位才是准确的，否则检测不出边缘.也就是说，滤波尺度的选取与边缘宽度有关，若边缘宽度为d，则相应的滤波尺度为.
　　下面讨论如何确定边缘宽度.如果存在一个邻域，恰好使边缘的灰度变化完全在该邻域内表现出来，则该邻域的长度就是边缘的宽度.若取的邻域小于边缘宽度，则其区域一致性测度将随邻域增大而增大；而当邻域大于边缘宽度时，其区域一致性测度就不再发生大的变化.对于判定为边缘区的邻域R，l是可变的领域长度.令Rhl是领域长度为l时的区域一致性测度，则边缘宽度d为
　　(11)
其中l1是某一领域长度，满足｜Rhl1／Rhl2-1｜≤β，l2=l1+1，取β=0.05.这里可以确定的最大边缘宽度为3×22，此时的滤波尺度为s=22，可以适用于大多数图像的情况.
　　构造尺度确定函数s=f(Rh)，以确定每一个像素点的滤波尺度.若当前像素点是在边缘区，则区域一致性测度Rh值较大，此时应采用相应的小尺度进行滤波；若当前像素点是在平滑区，则Rh的值较小，此时应采用大尺度进行滤波.
　　判定Rh的值大小程度时，需要求一个判定阈值T，采用高斯峰拟和的方法来确定T.将整图Rh的值离散化到［0，255］，统计整图的Rh值，得到相应的Rh直方图，判定阈值T就是取该直方图的分割阈值.一般来讲，边缘在整图中所占的比例比较小，Rh的值大多分布在值较小的地方.整图中，Rh值较小的部分其分布可以假设为一个高斯分布，阈值T可以取在高斯峰结束的地方.令hi是整图中Rh=i的像素点的个数，则
T=a+3σ*，　　(12)
　　(13)
其中.且
　　当然，这样确定的阈值T不一定是最佳的，但是可以保证是比较理想的.实验表明，阈值T的小变化，对判定结果不会产生过大影响.由上述分析，得到尺度确定函数
　　(14)
4　实验结果分析
　　我们对本文提出的多尺度边缘检测方法进行实验，将该方法应用于图2(a)和图3(a).图2(a)是人造图像，图3(a)是实际图像Lena图，这两幅图都是在原图的基础上添加了分布为N(0，102)的噪声，然后分别使用σ=1.6的LOG算子和Canny算子以及本文方法进行边缘检测.图2(a)的右上角灰度值为160，相邻区域灰度值为128，中间区域灰度值为66，左下角灰度值为210.图2(a)和图3(a)的判定阈值T分别取32和25.图2(a)中右上角的区域在Canny算子中没有检测出来，如果被检测出来，则相应的噪声会非常多，而本文中的方法效果很好.Lena图加噪之后，LOG算子的检测结果中噪声比较多，Canny算子的检测结果也较差，本文方法在有效边缘和噪声之间可以得到较好的折衷.


(a)加噪图


(b)LOG算子检测结果


(c)Canny算子检测结果


(d)本文方法检测结果
图2　加噪人造图像边缘检测结果


(a)加噪图


(b)LOG算子检测结果


(c)Canny算子检测结果


(d)本文方法检测结果
图3　加噪Lena图边缘检测结果
5　结论
　　多尺度边缘检测方法中滤波尺度的选取是关键，而判断当前像素点所处的区域是边缘区还是平滑区是选取尺度的依据.本文定义的区域一致性测度定量地反映了当前像素点所处邻域是平滑区或是边缘区的可能，同时该测度具有较好的抗噪能力，可以作为滤波尺度自适应调整的依据.本文给出了滤波尺度的选取原则，实验结果表明，该方法是可行和有效的.
作者简介：杨　　西安电子科技大学电子工程学院博士后.主要从事计算机视觉、模式识别方向的研究.
　　　　　梁德群　西安交通大学电信学院图像所博士导师，现在大连海事大学工作.主要从事图像处理、模式识别、工业图像检测等方向的研究.
作者单位：杨　　西安电子科技大学电子工程学院　西安　710071
　　　　　梁德群　大连海事大学　大连　116026
参考文献
1　Marr D, Hildreth E. Theory of edge detection. In: Proc. Roy. Soc., London, 1980,B207：187～217
2　Canny J. A computational approach to edge detection. IEEE Trans. Pattern Anal. & Mach. Intell.，1986，8(6)：679～698
3　Mallat S, Zhong S. Characterization of signals from multiscale edges. IEEE Trans. Pattern Anal. & Mach. Intell., 1992，14(9)：710～732
4　Law T, Itoh H, Seki H. Image filtering, edge detection and edge tracing using fuzzy reasoning. IEEE Trans., Pattern Anal. & Mach. Intell.,1996，18(5)：481～491
5　Beghdadi A, Khellaf A. A noise-filtering method using a local information measure. IEEE Trans. Image Process., 1997，6(6):879～882
6　Witkin A. Scale-space filtering. In: Int. Joint Conf. Artifical Intelligence, Karlsruhe, Germany, 1983,1019～1021
收稿日期　1997-09-15　收修改稿日期　1998-09-15
