APP下载

基于各向异性和边缘强度修正因子的边缘检测算法

2021-08-06张永生童晓冲

计算机工程与科学 2021年7期
关键词:鲁棒性高斯边缘

李 凯,张永生,童晓冲,李 峰

(1.军事科学院系统工程研究院后勤科学与技术研究所,北京 100071;2.战略支援部队信息工程大学地理空间信息学院,河南 郑州 450001)

1 引言

边缘检测是诸多计算机视觉和模式识别应用的基础,因此边缘检测结果直接影响后续影像匹配[1]、图像分割[2]、角点检测[3]和目标识别[4]等更高层次的图像处理应用效果。为了提高边缘检测结果的精度,过去几十年间已有多种边缘检测方法被提出。这些边缘检测方法可以分类为基于差分的方法[5 - 9]、基于统计的方法[10]、蚁群优化方法[11]、机器学习方法[12]和主动轮廓模型方法[13]等。这些方法均有各自的特点,如基于差分的方法原理和计算简单,可以快速提取边缘,但是边缘的完整性和连续性较差。各向异性扩散或选择性平滑方法采用自适应高斯核,可在抑制噪声的同时减少边缘模糊,但是计算量较大。主动轮廓模型方法则比较适宜提取物体轮廓的闭合边缘。

Canny算法是一种经典的边缘检测算子,该算子虽然为边缘检测提供了更优的解决方案,但是仍然存在一对矛盾:当使用小尺度的高斯核时,边缘定位精度高,但是对噪声敏感;当使用大尺度的高斯核时,噪声鲁棒性好,但是边缘定位精度差。多尺度边缘检测方法融合多个尺度,可以在一定程度上解决Canny算法最优尺度的选取问题,更适用于检测图像中的多尺度边缘特征。文献[14]基于剪切波变换提出了多尺度多方向的边缘检测算子。然而,大多数多尺度工具是为图像表达等应用设计的,较少应用于边缘检测。基于偏微分方程的各向异性扩散或选择性平滑方法也被广泛应用于边缘检测[15 - 19]。与Canny算法相比,这种方法能够迭代和自适应地平滑图像,更易于提取微小边缘结构,其主要缺点是计算量较大,不能实现边缘的快速提取。文献[20,21]均使用各向异性高斯核进行边缘检测,各向异性高斯核能够优化边缘检测算子的噪声鲁棒性和边缘定位精度,并且具有较高的边缘分辨率,因此检测结果优于Canny和基于统计的边缘检测等方法的。但是,各向异性高斯核带来了严重的边缘拉伸效应,导致了边缘附近伪边缘的产生。文献[20]使用基于梯度的边缘强度图ESM(Edge Strength Map)抑制边缘拉伸效应,但是增加了边缘模糊效应,算法对噪声鲁棒性也有所下降。

为了更好地抑制基于各向异性高斯方向导数滤波器ANDD(ANisotropic Directional Derivative)带来的拉伸效应,本文融合了各向同性和自动各向异性高斯核边缘检测方法的优势,提出了一种加入边缘强度修正因子的边缘检测算法,并通过实验验证了改进算法具有较强的噪声鲁棒性和较高的边缘提取精度。

2 改进的边缘检测算法

2.1 各向异性高斯方向导数滤波器

从特征检测角度来说,具有多维特征的各向异性高斯核更能准确地描述边缘、角点等局部特征。各向异性高斯核可表示为:

ρ≥1,σ> 0

(1)

(2)

将各向异性高斯核对方向角θ求导,即可得到该方向上各向异性高斯导数滤波器:

(3)

文献[20]证明,ANDD边缘梯度最大值与σ成反比,利用大尺度因子平滑噪声的同时,也削弱了边缘响应能力。此外,边缘梯度与各向异性因子ρ成正比,当使用ANDD检测边缘时,边缘响应具有更高的信噪比,从而可提高边缘检测能力。此外,文献[22]进一步证明ANDD具有优于各向同性高斯滤波器的角点检测与定位能力,并可用于角点分类。

2.2 IAGK边缘检测算法

对图像I(x)中每一个像素点x,计算其P个方向的各向异性高斯核和导数滤波器:

θp=(p-1)π/P,p=1,2,…,P

(4)

由此可得到基于ANDD的ESM:

(5)

各向同性高斯核的边缘拉伸效应与尺度因子σ正相关,而ANDD的边缘拉伸效应与尺度各向异性因子的积σρ正相关,因此当尺度因子和各向异性因子较大时,基于ANDD的ESM拉伸效应严重。为了减轻这种效应,可对式(5)进行修正,得到结合各向同性和各向异性高斯核的ESM:

(6)

其中,ηi(x)为尺度为σ/ρ的各向同性高斯核的ESM。

根据式(2)可以得到各向同性高斯核在x方向和y方向上的偏导数分别为:

(7)

(8)

因此有:

(9)

同时,将梯度方向:

(10)

作为ESM 中ηf(x)的梯度方向。结合各向同性和各向异性高斯核IAGK(Isotropic and Anisotropic Gaussian Kernels)的边缘检测算法就是利用式(6)得到的ESM替代Canny算法中的基于梯度幅值的ESM,沿用Canny算法的非极大值抑制和磁滞阈值处理流程进行边缘检测。

2.3 AAGK边缘检测算法

文献[21]依据Canny提出的最优边缘检测器应同时具有最优信噪比和最优定位性能的准则,进一步推导出了最优各向异性因子的表达式,并在此基础上提出基于自动各向异性高斯核AAGK(Automatic Anisotropic Gaussian Kernels)的边缘检测算法。AAGK边缘检测算法以边缘图像f(x)经ANDD滤波后沿方向角θ的信噪比公式为理论基础,自动选择最优各向异性因子ρopt,而后在ESM的非极大值抑制方法上选择了与IAGK不同的策略。该算法首先计算ESM和各像素边缘强度取最大值时的梯度方向;当某个像素的边缘强度大于其梯度方向上相邻2个像素的边缘强度时,将该像素保留为候选边缘点;然后采用与Canny算法相同的双阈值和磁滞阈值处理方法筛选边缘;最后,对磁滞阈值处理后的边缘进行边缘连接等后处理工作,以修复漏检的边缘点。

2.4 结合IAGK和AAGK的边缘检测算法

IAGK和AAGK用于边缘检测,均取得了优于Canny算法的边缘检测结果,显示了各向异性高斯核在边缘检测方面的优势。然而,2种算法均有各自的缺陷。与AAGK算法相比,IAGK算法各向异性因子仅作为一个经验值设置,缺乏严格的理论依据。AAGK算法则仅以基于ANDD的ESM进行非极大值抑制,由于基于ANDD的ESM拉伸效应严重,因此,这种算法会导致大量伪边缘的产生。IAGK算法虽然利用各向同性高斯导数滤波器对基于ANDD的ESM进行修正,有效抑制了边缘拉伸效应,但是由于各向同性高斯导数滤波器的引入,Canny算法固有的缺陷也被引入,导致ANDD的边缘模糊效应更加明显,算法对噪声的鲁棒性也有所下降。

为了使ESM更好地抑制伪边缘的产生,同时具有更高的噪声鲁棒性,本文综合利用IAGK和AAGK算法的优势,即在利用AAGK算法自动选择最优各向异性因子的基础上,对IAGK算法的ESM计算方法进行修正,加入边缘强度修正因子λ,λ≥1,进一步抑制伪边缘像素在ESM中的强度值。从而得到改进的ESM表达式为:

(11)

Figure 1 “buildings”影像的局部区域及使用不同算法得到的ESM图1 Local areas of “buildings” images and ESM using different algorithms

本文提出的基于最优各向异性因子和边缘强度修正因子的边缘检测算法步骤如下:

步骤1输入算法参数,包括各向异性高斯核方向个数P、高斯核尺度参数σ、高阈值Th、低阈值Tl和边缘强度修正因子λ;根据文献[21]方法计算最优各向异性因子ρ。

步骤2计算ESM。利用式(4)和式(5)得到ANDD的ESM,利用式(7)~式(9)得到基于梯度的ESM,利用式(11)得到本文算法的ESM。ESM各像素的梯度方向仍由式(10)得到。

步骤3非极大值抑制。对于任意像素,计算其边缘强度值η′f(x)是否大于其梯度方向上的相邻2个像素的边缘强度值,若是,则保留该像素,作为候选边缘点,否则舍弃。

步骤4双阈值筛选。对经非极大值抑制后的候选边缘点集合,如果某像素边缘强度值大于高阈值Th,则认为该点为强边缘点;若边缘强度值介于高阈值Th和低阈值Tl之间,则认为该点为弱边缘点,留待进一步处理;若边缘强度值小于低阈值Tl,则舍弃该点。

步骤5滞后边界跟踪。搜索所有连通的弱边缘,如果一条连通的弱边缘的任何一个点和强边缘点连通,则保留这条弱边缘,否则抑制这条弱边缘。

3 实验结果与分析

本节利用南佛罗里达大学提供的2个边缘检测数据集对改进算法进行检验,其中一个数据集包含50幅自然场景影像,另一个数据集则包含10幅航空影像。由于边缘检测器性能与所采用的参数有关,本文分别采用ROC(Receiver Operating Characteristic)曲线和边缘品质因子FOM(Figure Of Merit)2个评价指标更全面地验证算法有效性。

3.1 聚集ROC曲线实验

3.1.1 聚集ROC曲线与算法参数设置

聚集ROC曲线能够更客观地评价在不同参数条件下边缘检测器的性能,因此被广泛应用于边缘检测算法评价中。影像的ROC曲线是基于其已分类好的边缘检测结果绘制的,南佛罗里达大学的数据集提供了这些数据集的人工采集结果GT(Ground Truth)。数据集中像素被分为边缘像素、非边缘像素和其他像素(don’t care regions)3类。设某一边缘检测数据中,边缘像素数为NE,非边缘像素数为NNE。若边缘检测算法检测到的边缘像素与人工采集结果中边缘像素距离在3个像素以内,则标记该像素为真阳性TP(True Positive),且人工采集结果中边缘像素不再重复使用; 若边缘检测算法检测到的边缘像素在非边缘像素区域内,则标记该像素为假阳性TP(False Positive);落在其他像素区域的边缘像素不计数。最终检测到标记为TP的像素数设为NTP,标记为FP的像素数设为NFP。则可以得到各参数取值下一系列点(1-PTP,PFP),其中:

(12)

实际上,1-PTP表示未被正确检测的边缘点的概率,PFP表示被错误检测为边缘点的非边缘点的概率。当(1-PTP,PFP)=(0,0)时,检测结果最理想,因此,ROC曲线由点集(1-PTP,PFP)中最靠近左下方的点连接而成。当获取某一图像数据的ROC曲线后,其对应的参数取值也被获得,将该参数设置应用于数据集中其他数据得到各影像数据的ROC曲线,并将所有被测试数据的ROC曲线取平均值,得到聚集ROC曲线。

IAGK、AAGK均有5个参数,分别为各向异性高斯核方向角个数P、各向异性因子ρ、高斯核尺度因子σ、高阈值Th和低阈值Tl。本文算法除了包含这5个参数外,还有边缘强度修正因子λ。在IAGK中,P=16,各向异性因子ρ取在无噪声情况下的推荐值ρ2=7;AAGK中,各向异性高斯核方向角个数P取值设置为[8,16],ρ可由P自动获取。本文算法中,各向异性高斯核方向角个数P与IAGK算法保持一致,各向异性因子ρ的获取则与AAGK算法的一致。为了更公平地评价不同算法的性能,3种算法的Th均设置为[0.6,0.95],Tl均设置为[0.1,0.5],高斯核尺度因子σ的取值均设置为σ2=[0.5,3]·ρ2。在边缘区域,ηi(x)的值通常大于1,因此本文对λ的选取基本原则是λ大于或等于1,此时才能够达到增强边缘区域像素与非边缘区域像素强度之间的对比度的效果。而λ值也不宜过大,其过大时会削弱基于ANDD的ESM的作用,本文据此设计边缘强度修正因子λ的取值为[1,3]。

3.1.2 实验结果与分析

利用IAGK、AAGK和本文算法分别对2个数据集进行边缘检测,为了使算法结果更适于比较,本文所使用的3种算法均只使用Canny算法的检测流程,即均进行非极大值抑制、双阈值边缘选取和滞后边界跟踪,而未对检测结果再进行边界提取等后处理。最终得到的航空影像数据集和自然场景影像数据集的聚集ROC曲线分别如图2a和图2b所示。从图2a和图2b中可以看出,本文提出的算法获得的ROC曲线在3种算法中结果最优。IAGK算法和AAGK算法在不同参数取值情况下的检测结果则有不同的表现。当未被正确检测的边缘点较少时,即1-PTP较小时,AAGK算法被错误检测为边缘点的非边缘点概率PFP小于IAGK算法的,这说明在使用较大阈值滤除边缘点时,AAGK算法保留的边缘点更多为真实边缘点,而IAGK算法保留的边缘点中存在较多的噪声点。这也说明了AAGK算法具有更强的抑制噪声能力。而当未被正确检测的边缘点较多时,即1-PTP较大时,AAGK算法被错误检测为边缘点的非边缘点概率PFP大于IAGK算法的,这说明在使用较小阈值滤除边缘点时,IAGK算法保留的边缘点更多为真实边缘点,而AAGK算法保留的边缘点中存在较多的伪边缘,这些伪边缘主要是由ANDD的边缘拉伸效应导致的。

Figure 2 Aggregated ROC curve of aerial image dataset and natural image dataset under noise-free conditions图2 无噪声条件下航空影像数据集和自然场景影像数据集聚集ROC曲线

进一步对实验数据分别加入均值为0,标准差ε为5,10,15的噪声,验证不同噪声条件对算法的影响。实验结果如图3所示。从图3中可以看出,在不同噪声条件下,本文算法依然在3种算法中表现最优。而且随着噪声增加,3种算法与Canny算法相比,优势越来越明显,这是因为3种算法都采用了各向异性高斯核,与Canny算法相比对噪声具有更好的鲁棒性。而在自然场景影像数据集聚集ROC曲线中,随着噪声的增加,本文算法的优势也越来越明显,这说明了本文算法与其他算法相比也具有更好的噪声鲁棒性。

3.2 FOM评价

除了聚集ROC曲线,边缘品质因子FOM也被广泛用来客观评价边缘检测算法的性能。假设Nd是算法检测到边缘像素的个数,Ne是真实边缘图中边缘像素的个数,d(k)表示第k个检测到的边缘像素和真实边缘图中距离最近的边缘像素之间的距离,边缘品质因子FOM可表示为:

(13)

Figure 3 Aggregated ROC curves of aerial image dataset and natural image dataset under different noise conditions图3 不同噪声条件下航空影像数据集和自然场景影像数据集聚集ROC曲线

其中,γ为常数,表示像素偏移的损失因子,实验中γ=1/4。从式(13)可以看出,FOM综合考虑了真实边缘的丢失、虚假边缘和边缘的定位误差。真实边缘丢失越少,虚假边缘越少或边缘定位误差越小,FOM因子越大。当FOM等于1时,所有边缘像素均被正确检测,且不存在伪边缘。因此,算法的FOM值越大,算法的性能越好。本节将南佛罗里达大学边缘检测数据集中的10幅航空影像作为实验对象,分别计算每一幅图像在噪声标准差为15时的FOM值。检测结果如表1所示。从实验结果中可以看出,在少数影像检测中IAGK或AAGK算法检测FOM值优于或接近本文算法FOM值,但是差别不大;Canny算法检测结果则均低于本文算法检测结果。总体来看,本文算法的FOM值优于其他3种算法的。统计10幅影像FOM计算结果的平均值,得到本文算法的FOM计算结果的平均值分别比IAGK、AAGK和Canny算法的高3%,4%和7%。

3.3 基于边缘检测结果的评价

为了更加直观地比较不同算法之间的差异,评价本文算法的有效性,本节对比分析利用不同算法对边缘检测数据集中一幅测试图像得到的检测结果。其中图4是航空影像数据集中“series”影像,该影像具有丰富的边缘特征。利用本文算法、IAGK、AAGK和Canny算法得到的边缘检测结果如图5所示。为了使检测结果具有可对比性,4种算法中的边缘判决阈值都设置为Th=0.9,Tl=0.5。

Figure 4 “series” in aerial image dataset图4 航空影像数据集中“series”影像

从图5a白色实线方框中房屋和白色虚线方框中道路的边缘检测结果可以看出,Canny算法不能有效检测具有低对比度的房屋边缘,同时检测结果中还存在大量的伪边缘和噪声信息。图5b中AAGK与Canny检测结果相比,其检测到的虚假边缘的信息明显减少,但是在边缘两端处的伪边缘却明显增多,由第2节的分析可知,这是由ANDD的 ESM的边缘拉伸效应造成的。图5c中IAGK也未能完全检测房屋与道路等弱边缘,但是与Canny算法相比,检测结果中噪声信息得到了较好的抑制;而图5d中本文算法则能够有效提取房屋、道路等弱边缘,同时与Canny算法相比,较好地抑制了噪声信息。综合对比4种算法检测结果可以看出,Canny算法检测到由噪声引起的伪边缘较多,AAGK算法检测到由ESM的拉伸引起的伪边缘较多,IAGK算法在弱边缘检测时,仍然存在漏检的情况,本文算法能够有效抑制边缘拉伸效应,同时检测更多的弱边缘。

Table 1 FOM detection results on aerial image dataset

Figure 5 Edge detection results of "series" in aerial image dataset using four algorithms图5 影像利用4种算法得到航空影像数据集中“series”的边缘检测结果

4 结束语

传统边缘检测算法通常基于各向同性高斯滤波器定位与提取边缘,这种方法得到的边缘定位精度相对不高,且对噪声较敏感。各向异性高斯滤波器具有较高的定位精度和噪声鲁棒性,但是其与影像卷积生成的ESM具有较强的边缘拉伸效应,导致边缘两端产生较多的伪边缘。IAGK算法融合了各向异性和各向同性高斯滤波器算法的ESM,可有效提升传统基于各向同性高斯滤波器边缘检测算法定位结果的精度、噪声鲁棒性,同时抑制各向异性高斯滤波器较强的边缘拉伸效应。但是,由于各向同性高斯导数滤波器的引入,Canny算法固有的缺陷也被引入,导致ANDD的边缘模糊效应更加明显,算法对噪声的鲁棒性也有所下降。为了更好地抑制伪边缘的产生,同时具有更高的噪声鲁棒性,本文在利用AAGK算法自动选择最优各向异性因子的基础上,对IAGK算法的ESM计算方法进行修正,加入边缘强度修正因子,进一步抑制了伪边缘像素在ESM中的强度值。同时新的算法还能够有效提升弱边缘的相对边缘强度值,从而提升对弱边缘的检测能力。经典边缘检测数据集上的测试结果显示,与Canny、AAGK和IAGK算法相比,本文提出的算法具有更少的伪边缘、更好的噪声鲁棒性和更强的弱边缘检测能力。

下一步将深入分析边缘强度修正因子λ的数学含义,进一步研究λ的“自适应”选取方法,以增强算法的普适性。

猜你喜欢

鲁棒性高斯边缘
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
数学王子高斯
基于确定性指标的弦支结构鲁棒性评价
天才数学家——高斯
一张图看懂边缘计算
基于非支配解集的多模式装备项目群调度鲁棒性优化
非接触移动供电系统不同补偿拓扑下的鲁棒性分析
从自卑到自信 瑞恩·高斯林
在边缘寻找自我
走在边缘