张永梅 王世伟 许静
摘 要: 提出了Canny算子与小波变换相结合的道路边缘特征提取算法。首先用Canny算子对原图像提取边缘,与原图像进行叠加,再用小波变换对此图像进行二次边缘提取,有效地提取道路边缘特征,避免了Canny算子提取道路边缘不连续现象和小波变换提取边缘时出现的虚假边缘信息。
关键词: 边缘特征; 阈值; Canny算子; 小波变换
中图分类号:TP751.1 文献标志码:A 文章编号:1006-8228(2015)08-44-03
Road edge feature extraction algorithm with Canny operator and wavelet transform
Zhang Yongmei1,2,3, Wang Shiwei1, Xu Jing1
(1. School of Computer Science, North China University of Technology, Beijing 100144; 2. Guangdong Key Laboratory of Popular High Performance Computers;
3. Shenzhen Key Laboratory of Service Computing and Applications)
Abstract: A road edge feature extraction algorithm based on Canny operator and wavelet transform is proposed in this paper, the edge of the original image is extracted by using Canny operator, overlay??it on the original image, and then extract edge of the overlaid image by using wavelet transform. This algorithm can effectively extract the edge features of the road , and avoid the road edge discontinuity phenomena of Canny operator and the false edge information of wavelet transform.
Key words: edge character; threshold; Canny operator; wavelet transform
0 引言
图像的边缘特征是图像局部特性不连续性的反映,它是一个区域和另一个区域的分界线。由于噪声和模糊的存在,检测到的边界可能会在某些边缘处变宽或在某些点处发生间断,因此边缘提取的首要任务是检出图像局部特性的不连续性,然后剔出某些边界点或填补一些边界间断点,并将这些边缘像素连成完整的边界[1]。在边缘方向上,边缘的像素变化比较模糊,但是与边缘相垂直的方向,像素值变化很明显。因此,某种意义上来说,提取边缘的算法就是找出像素的一种微分算子。各种边缘检测技术的基本思想都是计算出局部的微分算子,然后根据微分算子检测出边缘[2]。
1 Canny边缘特征提取方法
从定位的可靠性和检测边缘的有效性出发,John Canny对最优边缘检测器所需要的所有特性进行了研究,他在1986年写的一篇论文中推导出了最优边缘检测的数学表达式。对于不同类型的图像边缘,Canny边缘检测的最优形式也不一样,但是他推导的一维M-H边缘检测器与一维边缘检测器基本上是相同的,这是因为在一阶导数算子中,其最大值和M-H 算子的零交叉点在理论上是一致的。但是在二维导数情况下,Canny算子在定位性方面和方向性质方面的边缘检测性能要比M-H 算子好,它能够比较准确地估计边缘的强度,在梯度方向上,也可以产生较好的效果。Canny算子边缘检测首先用高斯滤波器平滑图像,再用一阶偏导的有限差分来计算梯度的幅值和方向,对梯度的幅值进行非极大值抑制。对一般图像来说,在梯度的图像像素中,像素值越大,梯度值就越大。对于Canny算子,进行抑制非极大值也是关键的一步,一般来说,就是要寻找像素点的局部最大值,将非极大值点的灰度值设置为0,这样就可以屏蔽掉很大一部分非边缘的点。但是这并不一定就是图像的边缘,所以还可以保留局部的最大点,来确定图像的边缘点。Canny算法中为了减少虚假边缘信息,采用双阈值法。首先要选择两个阈值,从高阈值可以得到一个边缘图像,这样一个图像中含有假的边缘信息就少,但是如果选取的阈值较高,产生的图像边缘可能就不是闭合的,为了解决这样一个问题,又采用了另外一个低阈值。但在低阈值的选择过程中,如果选择不当,就会出现不闭合的可能[3-4]。所以,选取低阈值就很重要,一般比较难选择,虽然Canny算子在边缘提取方面能够抑制虚假信息,但是若低阈值选择不当,就会出现断续的边缘结果。
2 小波边缘特征提取方法
对于一幅图像来说,图像的边缘点通常就是急剧变化的地方,也是图像信息中很重要的部分。在小波变换的应用中,很重要的一个方面就是信号的突变点检测或者图像的边缘检测,小波变换在边缘点重建原始图像上也有应用。在小波变换域中,小波变换的系数模的极值点或者是过零点与图像信号的突变点相对应,而且信号奇异性的大小与小波系数的极值点随尺度规律的变化而变化,所以,应用小波变换对图像信号的瞬时特征进行描述也具有一定的意义[5]。
假设θ(t)为低通平滑函数,分别为的一阶导数和二阶导数,f(s)为L2(R)的实函数,θs=(1/s)θ(x/s),在尺度s下,它表示了θ(x)函数的伸缩度,为小波母函数,f(x)与伸缩函数进行卷积运算后的小波变换为:
⑴
将带入后,得到式⑵。
⑵
从上面的推导过程可以看到,小波变换W1f(s,x)与f(x,y)平滑后的一阶偏导数与W2f(s,x)和f(x,y)的二阶偏导数对应成比例。即在某一固定尺度s下,沿着x变量的W1f(s,x)的局部极值与W2f(s,x)的过零点与f*θs(x)的拐点也是相互对应的。
利用θs(x)平滑f(s,x)后,将f(s,x)的局部突变点利用尺度为s的边缘点来定义,从现实上来说,对图像的边缘检测就是检测f(x)θs(x)的拐点。当s较小时,f(x,y)被θs(x)平滑后的结果对f(s,x)的突变部分的位置和形态影响的结果不是很大。然而当s较大时,f(s,x)被θs(x)平滑后的结果会消除掉f(s,x)的一些比较细小的突变,图像只留下了大尺寸的突变。因此,当小波函数被当作θs(x)函数的一阶导数时,小波变换模的局部极值点就对应于这个突变点。小波函数被当作θs(x)函数的二阶导数时,模的过零点与突变点也相对应。一般来说,当θ(t)为高斯函数时,过零点检测就等效为M-H边缘检测方法,而极值点的检测与Canny边缘检测相似。
采用检测小波变换系数模的过零点与局部极值点的方法即可检测图像信号的边缘位置。这两种方法有其相似的地方,但是从实际应用来看,用局部极值点对边缘进行检测则更具有其优越性。因为函数f*θs(x)的拐点对应于一阶导数模极值点,W1f(s,x)的极大值点对应于信号变化快的点,而W1f(s,x)极小值点又对应于变化慢的点,所以说,只是单单检测二阶导数的过零点,并不是很容易区分信号到底是突变点还是缓变点。另外,过零点检测不出变化点变化快慢的信息,它只能给出拐点位置,然而对于局部极大值,它就一定为该点对应信号的快的变化点,此外,取出模极大值点在各尺度上的值,就能够推测拐点处的导数值,得到信号变化程度。
从以上分析得出,以θs(t)函数的一阶导数φ(1)(t)作为小波母函数来进行小波变换,小波变换多尺度系数的模极大值都对应于信号的突变点。一般来说,尺度分的越小,θs(t)平滑区域就会越小,小波系数模极大值点与突变点对应就会越准确。但是,在小尺度下,小波系数受到噪声影响会比较大,它能够产生许多的极值点,所以往往只在一个尺度下不能判定突变点位置。相反,在大尺度下,对噪声有一定的抑制作用,极值点也相对来说比较稳定,但是因为平滑作用使它的定位又有了一定的偏差。只有在一定的尺度下,突变点的小波变换才能避免交叠干扰。因此,在利用小波变换的模极大值法定位突变点时,需要结合多尺度综合观察。现在定义一个平滑函数θ(x,y),它沿x方向和y方向的一阶偏导数为:
⑶
设,对任意函数f(x,y)∈L2(R2)对应于φ1(x,y),φ2(x,y)的小波变换定义为:
⑷
f(x,y)在尺度为s时的边缘定义为f*θs(x,y)梯度矢量的模与方向都是最大的点。当小波函数φ1(x,y),φ2(x,y)是方差为σ2的高斯平滑函数φ(x,y)的偏导数时,f(x,y)在尺度s的小波变换模定义为:
⑸
⑹
实际上,边缘检测就是检测的模局部是否最大,同时在梯度矢量方向上也是最大的点。在各个尺度sj下,小波变换模的极值定义为沿梯度方向Af(sj,x,y)最大,同时模Mf(sj,x,y)局部也是最大的点(x,y)。
3 Canny与小波相结合的边缘特征提取方法
在噪声比较多的情况下,利用Canny算子提取图像轮廓会有比较多的虚假信息,而在后期Canny算子在进行边缘连接过程中,可能会出现边缘点不连续的情况。对于小波变换,由于处理图像求其模极值时,可能会出现局部的极值点,导致出现虚假信息。如果首先用Canny算子对原图像进行处理,由于Canny算子本身就具有平滑作用,再与原图像进行叠加,就可以得到一幅轮廓清晰的图像,再用小波变换对此图像进行二次边缘提取,此时的边缘检测会更加清晰。Canny算子与小波变换相结合的边缘特征提取算法具体步骤如下。
⑴ 使用Canny算子检测图像的边缘信息,提取出一幅二值图像的图像边缘。
⑵ 如果图像含有噪声,对原图像进行图像平滑处理,然后对二值图像与原图像根据一定的权值进行叠加。
⑶ 利用小波变换对步骤⑵得到的图像再一次进行边缘检测,取模局部最大,同时梯度矢量方向也取最大的点,得到一幅效果较好的图像边缘轮廓。
4 实验结果及分析
本文选取不同地形的多幅图像进行了测试,图1给出了一幅图像的实验结果。该幅图像是城市立交桥的道路,有直路、弯路和交叉的复杂道路。从主观上看,Canny算子提取的边缘特征虽然在虚假边缘上处理得比较好,但由于在预处理阶段,图像灰度的差别在边缘上不是很明显,Canny算子在最后连接边缘过程中效果比较差。Canny算子存在边缘没有完全连接的缺陷,原因可能是对于边缘点的像素值没有处理好。对于小波变换,是通过取局部的模极大值点来提取其边缘特征,所以可能产生比较多的虚假信息,虽然很少出现边缘不连续的现象,但在边缘与其他地方相连处出现了一些虚假信息。本文方法将Canny算子与小波变换相结合,利用Canny算子对图像进行边缘提取后,虽然边缘有些不连续的地方,但又与原图像进行叠加,使边缘信息更明显,然后再用小波变换进行边缘特征提取,得到了明显的边缘特征,虽然也出现了一些虚假信息,但很少,而且连接效果比Canny算子要好些。
5 结论
本文提出了Canny算子与小波变换相结合的边缘特征提取方法,该方法利用Canny算子提取边缘的优点和小波变换在检测图像突变点中的优点,避免了Canny算子提取道路边缘不连续现象和小波变换提取边缘时出现的虚假边缘信息,可以有效地对图像进行边缘检测。
参考文献:
[1] 王一鸣.基于红外图像的道路边缘检测算法研究[D].南京理工大学,
2006.
[2] 苏红军,杜培军.高光谱遥感数据光谱特征提取方法与分类研究[J].
计算机应用研究,2008.25(2):390-394
[3] 叶衍,张凌.基于特征分布的图像信息抽取[J].中国图像图形学报,
1998.3:189-193.
[4] 陈芒.图像中道路网络自动识别的研究[D].上海交通大学,2006.
[5] 段淼.BP神经网络在图像信息提取中的应用研究[J].吉林建筑大学
学报,2013.30(4):65-67