当前位置:
文档之家› Canny边缘检测算法在图像处理上的应用
Canny边缘检测算法在图像处理上的应用
原始图像
高斯滤波后的图像
图 1.原始图像
梯度
图 2.滤波后的图像
非极大抑制
图 3.梯度图像
图 4 非极大抑制后的图像
最终效果
图 5 最终检测效果
3 结束语
本文根据 Canny 边缘检测算法对图像进行处理,其中最重要的部分是高斯滤波,该步 骤对后面的处理部分有很大的影响, 但同时会造成边缘细节信息的丢失。 在对假象边缘点进 行处理时,没有采用单阈值处理,由于该处理方法不能很好的确定阈值,因此采用双阈值处 理, 它在充分处理掉假象边缘的同时也较大程度上保证了真实边缘不被去掉。 因此将该算法 应用到图像处理上,能够得到理想的结果。 参考文献
处理。本文首先对带有噪声的图像进行高斯平滑滤波,尽可能地将噪声去掉。然后通过亮度梯度的计算, 得出图像的整体轮廓。然后再对其进行非极大值抑制处理,将虚假边缘像素点去掉。再采用双阈值处理上 一步所得到的图像,并连接边缘像素点得到边缘图像。通过实验仿真分析,该算法能够很好的抑制噪声并 检测出更加精确的图像边缘。 关键词:Canny 边缘检测算法 高斯平滑滤波 非极大值抑制处理 双阈值处理
1 Canny 边缘检测
1.1 Canny 边缘检测算法基本原理 Canny 边缘检测的实质就是求取信号函数的极大值问题来来判定图像边缘像素点。 该检 测算法具有三大特点:①好的检测性:检测出的边缘信息的漏检率和误检率达到最小,使得 算法能够尽可能更多地标识出图像的实际边缘;②好的定位性:定位精度最高,使得标识出 的边缘尽可能与实际图像的边缘精确程度也就越高; ③相应次数最小: 图像的边缘像素点只 能被标识一次,并且在可能存在噪声的像素点上不被标识。 1.2 Canny 边缘检测算法实现步骤
1.2.1 高斯滤波
在未经处理过的图像上进行任何检测算法都是不能很好地处理以及应用, 因此在图像处 理之前,对该图像进行滤波预处理,而且滤波效果的好坏直接影响着后续的处理和分析。 图 像中几种常见噪声有椒盐噪声、脉冲噪声、高斯噪声。通常,图像中噪声以高斯噪声为主, 高斯噪声的幅值分布服从高斯分布, 因此本文采用高斯滤波, 高斯平滑模板与原图像进行卷 积计算, 得到去噪后的图像, 高斯滤波器是根据高斯函数的形状来选择权值的线性平滑滤波 器。 二维高斯函数:
[1]王慧琴.小波分析与应用[M].北京:北京邮电大学出版社,2011(1):156~158 [2]张书玲,张小华.基于小波变换的边缘检测[J].西北大学学报:自然科学版,2000,30(2):93~97 [3]李俊山,马颖,赵方舟.改进的 Canny 图像边缘检测算法[J].光子学报,2011,40(1):50~54 [4]Yao Min.Digital image processing[M] .Beijing:MechanicalIndustry Press,2006.( in Chinese) [5]杨煊,梁德群.基于图像信息检测多尺度边缘检测方法[J.模式识别与人工智能,1998,11(4) :442~446 [6] Mallat S,HwangWL .Singularity detection and processing with wavelets[J].IEEE Trans IT,2005,38(2):617-643 [7]蒋爱德,扈少华.基于 Canny 算子的边缘检测研究[J].郑州牧业工程高等专科学校学报,2007,(5):1~3 [8]陈蒙.基于 Canny 算子的边缘检测算法应用研究[J].电子技术与软件工程,2013,(11):1~2
梯度大小:
2 B (x,y )= Gx2 G y
梯度方向:
( x, y ) arctan
1.2.3 梯度的非极大抑制
Gy Gx
通常情况下, 图像幅值阵列中对应像素点的 B ( x, y ) 值越大, 那么该点梯度值也就越大, 说明该点很可能是边缘点。 但是该点还不能就因为此就确定它是边缘点, 所以本论文为了确 定边缘点,采用非极大抑制来进行边缘检测,确定出真正的边缘点。
1 2 3
8 B 4
7 6 5
遍历每个像素点的值与沿着梯度线方向的的两个像素值进行比较, 如果该点的值比沿梯 度线方向的两个相邻值小,则该点的像素灰度值赋值为 0。
仍然存在着假象边缘点, 如果采用单阈值检测, 对于合 适阈值的选择来说说是非常困难的, 因此本文采用双阈值检测来处理数据。 设置的阈值分别 为 T1 和 T2 ,且 T1 0.5T2 ,由此根据两个阈值得到两幅图像。由于阈值 T2 较大,由它所得到 的图像,在滤掉了大部分噪音的同时,也丢掉了部分边缘信息。阈值 T1 较小,它所得到的图 像包含着较多的边缘信息。然后在由阈值 T2 得到图像的基础上,根据阈值 T1 得到的图像的 边缘信息对它进行补充,然后将边缘信息点连接起来得到边缘图像。
2 实验结果及分析
本文对一张图片用 matlab 进行仿真实验,得出几幅图像的实验结果。该原始图像尺寸 的大小为 261 550 ,该图的顺序表现出了算法的过程!图 2 是由原始图像图 1 经过高斯平 滑滤波得出的图像, 从图中我们可以看出图 2 较图 1 模糊, 但是图 2 增加了边缘检测的准确 性。 由图像 3 可以看出该图像的大体轮廓已经由粗实线显示出来, 但是里面包含有非真实图 像边缘。 然后经过非极大抑制后得到图像 4, 该图像已经去掉大部分的非真实边缘的像素点! 然后经过双阈值处理,并连接边缘信息点得到最终图像 5,可以从中看出图像 5 基本上可以 将真实边缘表示出来。
G ( x, y ) Ae
式中 决定了高斯滤波器的宽度。
1.2.2 梯度计算
( x 2 +y 2 ) 2 2
对滤波后的图像中的每个像素点, 计算其梯度的大小和方向的方法采用一微分算子计算 出 x 方向和 y 方向的偏微分:
1 -1 1 Gx = 2 -1 1 1 -1 1 Gy = 2 -1 1
Canny edge detection algorithm in the application of image processing
Qin Xiaofeng ,Yang Zonggen ,Zheng Xiangqun
1 2 3
(1.Southwest Jiaotong University Emei campus,Department of Mechanical Engineering,Leshan,China; 2. Southwest Jiaotong University Emei campus,Department of computer and Communication Engineering,Leshan, China; 2. Southwest Jiaotong University Emei campus,Department of computer and Communication Engineering,Leshan, China;) Abstract:The edge detection algorithm has been quite active in the field of image processing. Canny edge detection algorithm is also chosen for the edge detection processing of image in this paper. Three steps are as followings: first, using Gauss filter to remove the noise of image as much as possible; Second, with the calculation of brightness step, we can draw the image’s total outline; Third, deleting the false remote pixels by making use of non maxima suppression processing to the outline we observed. Then using dual threshold to deal with the image and join remote pixels. Finally, the edge image forms. Through the analysis of the experimental simulation, this algorithm is good at restraining noise and getting a more accurate edge image.
0 引言
随着计算机的发展和人们对图像的视觉心理或应用需求不断提高, 一系列的图像处理算 法及技术也随之蓬勃发展, 在图像处理领域中最重要的一项处理技术是边缘检测技术。 图像 中物体的边缘处表现出图像局部特性的不连续性,比如颜色的突变、灰度值的不连续,在边 缘处表现出来的信息量是非常大的, 在整个图像中的特征信息占有主导地位, 因此图像的边 缘检测技术广泛用于图像的轮廓、纹理等特征信息的提取。 图像边缘信息中,有走向和幅度两个方面的特征。一般情况下,图像沿着边缘方向的幅 值变化是连续的,而在垂直于边缘走向的幅值变化是阶跃型的,也即是非连续变化的。本文 主要是以 Canny 算法对图像进行边缘检测的算法研究。 Canny 算法的大体步骤是: 首先对处 理的图像进行高斯平滑滤波, 然后将图像中灰度值有显著性变化的点显示出来, 最后通过非 极大值抑制处理,得到所需的边缘图像。
Canny 边缘检测算法在图像处理上的应用
覃小峰 1,杨棕根 2,郑湘群 3
(1.西南交通大学峨眉校区,机械工程系,四川 乐山; 乐山; 乐山;) 2.西南交通大学峨眉校区,计算机与通讯工程系,四川 3.西南交通大学峨眉校区,计算机与通讯工程系,四川
摘
要:边缘检测算法一直在图像处理领域十分活跃,本文根据 Canny 边缘检测算法对图像进行边缘检测