当前位置:文档之家› 基于边缘保持平滑滤波的Canny算子边缘检测

基于边缘保持平滑滤波的Canny算子边缘检测

第25卷󰀁第1期2006年2月兰州交通大学学报(自然科学版)JournalofLanzhouJiaotongUniversity(NaturalSciences)Vol.25No.1Feb.2006

󰀁󰀁文章编号:1001󰀁4373(2006)01󰀁0086󰀁05

基于边缘保持平滑滤波的Canny算子边缘检测*

陈宏希

(兰州石化职业技术学院电子电气工程系,甘肃兰州󰀁730060)

摘󰀁要:在Canny算子实施边缘检测前,运用具有边缘保持性能的滤波器做预处理.仿真实验主、客观分析表明,边

缘保持滤波预处理的Canny算子较原有Canny算子在边缘检测性能方面有一定的改善;边缘保持滤波器性能的定

量分析和比较,对预处理滤波器和Canny算子边缘检测参数的选择有一定的指导意义.

关键词:边缘检测;Canny算子;边缘保持平滑滤波;品质因数

中图分类号:TP391.41󰀁󰀁󰀁󰀁󰀁文献标识码:A

󰀁󰀁边缘检测是数字图像处理中的基本问题之一.

传统的边缘检测算子,由于对噪声很敏感,对实际图

像的处理效果并不理想.近二三十年来研究发展了

许多优秀的边缘检测算法或算子,如Marr󰀁Hildreth

提出的最佳边缘检测算子、基于二维小波变换的边

缘检测算法、基于神经网络及数学形态学的边缘检

测算法[1]、基于仿射变换和特征空间的边缘检测[2]

以及基于󰀁函数的边缘检测算法[3]等.文献[4]提出

的最佳边缘检测算子󰀁󰀁󰀁Canny算子,以其在处理

受高斯白噪声污染图像方面的良好效果而成为其它

边缘检测算子性能优劣评价的标准.Canny算子在

图像边缘方向上是对称的,但在垂直于边缘方向上

是反对称的,所以,Canny算子对最急剧变化方向上

的边缘特别敏感,但在沿边缘方向上却是不敏感的,

即对屋顶状边缘不敏感,这势必影响Canny算子的

边缘检测性能.针对这一问题,本文提出在Canny

算子前先运用具有边缘保持性能的滤波器做平滑滤

波预处理,其后再运用Canny算子做边缘检测,可

改善Canny算子的边缘检测性能.

1󰀁Canny算子边缘检测

1.1󰀁Canny最佳边缘检测指标

Canny研究了最优边缘检测器所需要的特性,

给出了评价边缘检测性能优劣的3个指标[5,6]:

1)好的信噪比,即将非边缘点判为边缘点和将

边缘点判为非边缘点的概率都要低;2)好的定位性

能,即检测出的边缘点要尽可能在实际边缘的中心;3)对单一边缘仅有唯一响应,即单个边缘产生多个响

应的概率要低,并且虚假响应边界应得到最大抑制.

1.2󰀁Canny算子的具体实现

Canny算子的具体实现主要有以下3个步骤:

1)用高斯滤波器对图像进行滤波,去除图像中

的部分噪声;2)用高斯算子的一阶微分对图像进行

滤波,得到图像梯度的强度和方向[7];3)对梯度进

行非最大抑制和滞后阈值处理,得到边缘图像.

2󰀁常见边缘保持平滑滤波器

图像中的景物之所以可以被清楚辨认,是因为目

标物之间存在灰度显著变化的边界.而对边界上的像

素进行平滑滤波时,简单选取邻域的中值或均值,都

会在一定程度上降低边界的灰度显著性,从而导致图

像的模糊.因此,希望在对图像进行平滑处理时,只对

噪声部分进行平滑处理,同时又保持了图像边界原有

的灰度特性,这类滤波器被称为边缘保持平滑滤波

器.下面是几种常见的边缘保持平滑滤波器[5,8].

2.1󰀁方向平滑滤波器

方向平滑滤波技术是一种空间域局部方向均值

滤波器.在某一局部邻域内,沿不同的方向计算像素

的平均值,取最小的平均值替代原中心像素的值.方

向平滑滤波的原理如图1所示,用公式表示为

y(i,j)=min1N󰀁󰀁󰀁

(r,s)󰀁W󰀁x(i-r,j-s)

式中:x(i,j)为像素点(i,j)的输入像素值;y(i,j)为

输出像素值;W󰀁为与水平方向成󰀁角的滤波器窗口;

*收稿日期:2005󰀁03󰀁12作者简介:陈宏希(1970󰀁),男,陕西岐山人,讲师,硕士.第1期陈宏希:基于边缘保持平滑滤波的Canny算子边缘检测

N󰀁为滤波器窗口中参与计算平均值的像素个数.

图1󰀁方向平滑滤波原理图

Fig.1󰀁Principleofdirectionalsmoothfilter

2.2󰀁Kuwahara滤波器

Kuwahara滤波器的滤波思想是,选择如图2所

示4个模板,对模板覆盖区域中的像素,分别计算其

灰度分布方差,然后用方差最小的模板中像素灰度

均值替代原中心像素值.实现步骤如下:

图2󰀁Kuwahara滤波器的4个模板

Fig.2󰀁FourKuwaharafiltermasks1)以中心像素为中心,分别计算图2所示4个

模板中像素灰度分布的方差;2)找出方差值最小的

模板的位置;3)将所选择出的模板中像素的灰度平

均值替代原中心像素值;4)对图像中所有处于滤波

范围内的像素点均进行相同的处理.

2.3󰀁灰度最小方差均值滤波器

灰度最小方差均值滤波器的滤波思想与Kuwahara

滤波器相同,不同的是它有9个形状不同的模板参

与灰度最小方差模板的选择.模板如图3所示.

图3󰀁灰度最小方差滤波器的9个模板

Fig.3󰀁NineMVMfiltermasks2.4󰀁K近邻均值滤波器

K近邻均值滤波器的核心是,在一个与待处理中心像素邻近的范围内,寻找出像素值与之最接近

的K个邻点,将该K个邻点的均值替代原中心像素

值.实现步骤如下:

1)设f(x,y)为当前待处理中心像素,以其为

中心,构造一个N󰀁N的模板(N为奇数);2)在模

板中的N󰀁N个像素中,选择出与f(x,y)之最接近

的K个像素(一般当N=3时,取K=5;当N=5

时,取K=9),这K个像素不包含f(x,y)本身;3)

用这K个像素的均值替代原中心像素值f(x,y);

4)对图像中所有处于滤波范围内的像素点均进行

相同的处理.

2.5󰀁对称近邻均值滤波器

对称近邻均值滤波器的实现思想是,以待处理像

素f(x,y)为中心,构造一个(2N+1)󰀁(2N+1)的

模板,这(2N+1)󰀁(2N+1)个像素,除中心点之外,

以中心像素点为对称中心,可以构成2N󰀁(2N-1)

个空间位置对称的对点,在每一对对称点中选择一个

与f(x,y)接近的像素值,用这2N󰀁(2N-1)个选择

点的灰度均值替代原中心像素值作为处理结果.

2.6󰀁Sigma平滑滤波器

Sigma平滑滤波器是根据模板中像素值的统计

特性来进行边缘保持滤波的.实现方法如下:

1)以待处理像素f(x,y)为中心,构造一个

(2N+1)󰀁(2N+1)的模板(N为给定常数);2)计

算该模板中像素的标准方差󰀁;3)对模板中的像素

进行如下处理:若f(i,j)-󰀁󰀁f(x,y)󰀁f(i,j)+

󰀁,则󰀁(i,j)=1;否则󰀁(i,j)=0;其中f(x,y)为模

板中心像素的灰度值,f(i,j)是像素点(i,j)上的

灰度值,且󰀁=2󰀁;4)若模板中󰀁(i,j)=1的像素不

少于K个,则f(x,y)的值由g(x,y)替代,

g(x,y)=󰀁x+N

i=x-N󰀁y+N

j=y-N󰀁(i,j)f(i,j)

󰀁x+N

i=x-N󰀁y+N

j=y-N󰀁(i,j),对于7󰀁7的模

板,K不大于4,对于5󰀁5的模板,K不大于3;

5)若模板中󰀁(i,j)=1的像素少于K个,则表

明在该模板中,f(x,y)是一个孤立点,恰好满足噪

声的特征,则以整个模板中像素的均值替代中心像

素f(x,y)的值.

3󰀁边缘检测算子的性能评价

边缘检测算子性能优劣的评价分为主观评价和

客观评价.主观评价是观察者通过对各种算子处理

结果图像的观察,主观做出算子性能优劣的评价;客87兰州交通大学学报(自然科学版)第25卷

观评价是以人造图像为对象,获取边缘检测器的边

缘检测概率、边缘检测方位、边缘检测定位等性质数

据,依此来评价边缘检测器性能的优劣.Pratt[1]提

出的边缘检测器品质因数,是普遍采用的边缘检测

器性能评价指标,其定义式为

R=1max{II,IA}󰀁IA

i=111+ad2

式中,II和IA分别表示理想和实际检测到的边缘像

素点的数量,a是一比例常数,通常取1/9,d为实际

边缘点到理想边缘点连线的垂直距离.品质因数R

的值是小于或等于1的正数,R值越大,表明检测器

性能越好,当完全精确检测时R=1.

4󰀁实验结果及定量分析

为了以下叙述方便,特做如下名称约定:未做滤波预处理的Canny算子边缘检测命名为Canny算

子;方向平滑滤波预处理的Canny算子边缘检测命

名为Directional;Kuwahara平滑滤波预处理的

Canny算子边缘检测命名为Kuwahara;灰度最小方

差均值滤波预处理的Canny算子边缘检测命名为

MVM;K近邻均值滤波预处理的Canny算子边缘检

测命名为KNN;对称近邻均值滤波预处理的Canny

算子边缘检测命名为SNN;Sigma平滑滤波预处理

的Canny算子边缘检测命名为Sigma.

4.1󰀁试验结果

对人造测试板图像和标准Lena灰度图像,在无

噪声和加高斯白噪声情况下,分别依次做Canny算

子,Directional,Kuwahara,MVM,KNN,SNN,Sigma

边缘检测.无噪声时实验结果如图4,图5所示.

图4󰀁人造测试板原始图像及用不同方法处理后的边缘图像

Fig.4󰀁Synthetictestboardoriginalimageandedgemapsprocessedbyeverymethod

图5󰀁Lena原始图像及用不同方法处理后的边缘图像

Fig.5󰀁Lenaoriginalimageandedgemapsprocessedbyeverymethod88

相关主题