梁肇峻 鐘俊
摘 ?要: Canny算子在邊緣檢測領(lǐng)域被廣泛應(yīng)用,但傳統(tǒng)的Canny算子需要人為設(shè)定梯度閾值和合適的高斯標(biāo)準(zhǔn)差,因此自動(dòng)化程度不高。為解決Canny算子的自適應(yīng)性,發(fā)展了包括Otsu算法在內(nèi)的自適應(yīng)算法。但傳統(tǒng)的Otsu算法存在定位精度不高,易受高斯濾波標(biāo)準(zhǔn)差影響等問題。在Otsu算法的基礎(chǔ)上,通過對(duì)高斯濾波后梯度圖像的分析與研究,對(duì)最大類間方差進(jìn)行改進(jìn),從而提高自適應(yīng)算法的穩(wěn)定性。將改進(jìn)后的類間方差與類內(nèi)方差的比值作為閾值選取的評(píng)價(jià)標(biāo)準(zhǔn),從而有效提高了自適應(yīng)算法的定位精度。仿真表明,所提出的改進(jìn)算法能有效提高Canny算法的定位精度和魯棒性。
關(guān)鍵詞: 邊緣檢測; 算法改進(jìn); Canny算法; Otsu算法; 自適應(yīng)算法; 定位精度
中圖分類號(hào): TN911.73?34 ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼: A ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào): 1004?373X(2019)11?0054?05
Abstract: Canny operator is widely used in the field of edge detection, but it has low automation degree because the man?made setting of gradient threshold and suitable Gauss standard deviation. In order to improve the adaptivity of Canny operator, the adaptive algorithm including Otsu algorithm was developed. Unfortunately, the traditional Otsu algorithm has low positional accuracy, and is easy to be influenced by Gauss standard deviation. On the basis of studying the Otsu algorithm, the gradient image after Gaussian filtering is analyzed and researched, and the maximum interclass variance is improved to enhance the stability of adaptive algorithm. The ratio of the improved interclass variance and intraclass variance is taken as the evaluation criterion of threshold selection to improve the positional accuracy of adaptive algorithm. The simulation results show that the improved algorithm proposed in this paper can improve the positioning accuracy and robustness of Canny algorithm effectively.
Keywords: edge detection; algorithm improvement; Canny algorithm; Otsu algorithm; adaptive algorithm; positional accuracy
0 ?引 ?言
邊緣保存了圖像的大量重要信息,且邊緣檢測也是數(shù)字圖像處理、圖像分析、識(shí)別領(lǐng)域的重要課題。傳統(tǒng)的邊緣檢測算子如Roberts,Sobel,prewitt,Kirsch和Laplacian等都是局域窗口梯度算子,由于它們對(duì)噪聲敏感,所以在處理實(shí)際圖像中效果并不理想。Canny J F提出了邊緣性能評(píng)估的三準(zhǔn)則,并在其基礎(chǔ)上設(shè)計(jì)了Canny算子。
Canny算子是一種基于最優(yōu)準(zhǔn)則推導(dǎo)出來的邊緣檢測算法,具有定位精度高、檢測準(zhǔn)確等優(yōu)點(diǎn)。雖然近年來研究人員在邊緣檢測中引入小波變換[1]、數(shù)學(xué)形態(tài)學(xué)[2]、蟻群算法[3]等新技術(shù),但Canny算子因操作簡單、檢測性能優(yōu)越,仍然是目前最優(yōu)秀的邊緣檢測技術(shù)之一。雖然Canny算子具有以上優(yōu)勢,但是自動(dòng)化程度不高,受高斯標(biāo)準(zhǔn)差影響大的缺點(diǎn)制約了Canny算子的發(fā)展。為了提高Canny算子的自動(dòng)化水準(zhǔn),文獻(xiàn)[4?7]給出了自適應(yīng)邊緣檢測的可行性分析及評(píng)價(jià)標(biāo)準(zhǔn)。文獻(xiàn)[8?10]將Otsu算法運(yùn)用到邊緣檢測中,文獻(xiàn)[11]將類內(nèi)方差引入到邊緣檢測中,使Canny具有自適應(yīng)性。文獻(xiàn)[12?13]在圖像分割領(lǐng)域?qū)诨叶鹊腛tsu算法進(jìn)行改進(jìn)。
本文結(jié)合Canny算子的實(shí)際情況,基于對(duì)圖像梯度直方圖的分析,提出針對(duì)自適應(yīng)Canny算子分割效果不理想等問題的改進(jìn)。對(duì)基于Canny算子的經(jīng)典Otsu算法進(jìn)行優(yōu)化,達(dá)到提高定位精度和減少因平滑濾波帶來的對(duì)梯度圖像影響的目的。
1 ?Canny邊緣檢測算子的基本原理
兩個(gè)灰度值不同的區(qū)域之間的界限即為邊緣,即邊緣為圖像灰度值不連續(xù)的結(jié)果。圖像的邊緣包含了圖像的大部分信息,這些信息出現(xiàn)在圖像中灰度劇烈變化的地方。
在自適應(yīng)閾值分割中,Otsu算法一直被認(rèn)為是最優(yōu)秀的方法之一,其目標(biāo)是選取出能使目標(biāo)與背景的分離性最好,類間差別最大的分割閾值。而與之對(duì)應(yīng)的類內(nèi)方差則是選取出能使類內(nèi)差別最小的閾值作為最優(yōu)分割閾值。
2 ?基于Canny的自適應(yīng)算法
2.1 ?不同自適應(yīng)算法的比較
圖像可以分為目標(biāo)和背景兩部分。方差是圖像中像素灰度分布均勻性的一個(gè)評(píng)價(jià)指標(biāo),若組成圖像的目標(biāo)與背景兩部分的差別越小,則方差值越小。若背景和目標(biāo)被錯(cuò)誤的劃分時(shí),會(huì)導(dǎo)致兩部分的方差變小,因此,錯(cuò)分概率最小是類間方差分割閾值的基本思想[13]。而類內(nèi)方差反映的是每類像素之間差別的大小,如果邊緣集中分布的梯度區(qū)間比較狹窄,則分類后的類間方差變化不大。
2.2 ?類內(nèi)方差
閾值[t]將像素劃分為兩類:前景[C0] 和背景[C1]。若像素的梯度值[ix,y 2.3 ?類間方差 類間方差中的[C0]和[C1]分別表示前景與背景部分,其均值[u0]和[u1]與類內(nèi)方差推導(dǎo)方式相同。 3 ?基于直方圖的Canny自適應(yīng)算法的改進(jìn) 3.1 ?經(jīng)典自適應(yīng)算法的改進(jìn)應(yīng)用 由于類間方差和類內(nèi)方差是基于圖像的不同性質(zhì),所以針對(duì)直方圖不同的圖片,它們會(huì)產(chǎn)生不同的效果。因此,最理想的閾值分割是類間方差最大同時(shí)類內(nèi)方差最小。而在實(shí)際運(yùn)用中,不可能完全滿足這兩個(gè)條件,但是能找到兼顧兩類方差的最佳分割值,即兼顧考慮以上兩類方差并使之得出最優(yōu)解。為了達(dá)到這一目標(biāo),將類間方差與類內(nèi)方差的比值作為分割標(biāo)準(zhǔn),當(dāng)比值最大時(shí)梯度值作為閾值分割的結(jié)果?,F(xiàn)定義如下: 3.2 ?對(duì)類間方差的改進(jìn) 由于經(jīng)典的Canny算子使用高斯濾波抑制噪聲,濾波效果取決于高斯標(biāo)準(zhǔn)差[σ]。當(dāng)[σ]取值不同,會(huì)對(duì)圖像的直方圖產(chǎn)生影響。[σ]較大,會(huì)在有效抑制噪聲的同時(shí)犧牲邊緣特性;[σ]過小,會(huì)在邊緣檢測的結(jié)果中產(chǎn)生虛假邊緣。[σ]對(duì)直方圖梯度值和權(quán)值的影響導(dǎo)致其對(duì)傳統(tǒng)自適應(yīng)Canny算法的效果差別很大。 梯度均值反映的是非極大值抑制后梯度的區(qū)域平均值;梯度平均方差反映了圖像梯度分布的均勻性,即離散程度[5]。[σ]變化,由于圖像的邊緣特性變化,圖像的梯度均值也會(huì)相應(yīng)變化,因而梯度均值受[σ]影響較大。受[σ]的影響,梯度圖線性變化,內(nèi)部性質(zhì)不變;而平均方差反映的離散程度是梯度內(nèi)部的性質(zhì),所以平均方差受[σ]的影響小。 因此,在[σ]取值不同的情況下,文獻(xiàn)[14]中用均值求閾值的方法穩(wěn)定性較差。其次,當(dāng)圖像的梯度分布較為集中時(shí),梯度區(qū)間通常比較狹窄,均值求取的類間方差并不能準(zhǔn)確反映目標(biāo)與背景梯度的區(qū)別;而使用平均方差表示的類間方差卻依然能表示區(qū)域的離散程度。為了達(dá)到上述效果,將類間方差改進(jìn)為: 選取比值最大時(shí)的梯度值[h2]作為自適應(yīng)閾值分割的高門限值,低門限[h1]=0.4[h2]。由Canny算子的基本原理知:[h1]越小,越有利于保留邊緣信息,邊緣連續(xù)性越強(qiáng);隨著[h1]的增加,檢測到的邊緣特征越來越少,甚至?xí)霈F(xiàn)邊緣斷裂[8]。 4 ?算法性能分析 4.1 ?邊緣定位特性 選取先驗(yàn)知識(shí)為G,記算子檢測的邊緣結(jié)果圖像為F。分別對(duì)F和G進(jìn)行掃描,標(biāo)記它們中相同的邊緣像素。則錯(cuò)檢點(diǎn)為F中未標(biāo)記的邊緣像素,漏檢點(diǎn)為G中未標(biāo)記的邊緣像素[5]。定義錯(cuò)檢率和漏檢率為: 4.2 ?梯度均值與方差的比較 如前所述,梯度均值受高斯標(biāo)準(zhǔn)差[σ]影響大而梯度平均方差受其影響小。選取它們各自與先驗(yàn)知識(shí)的G偏移的百分比的平均方差作為評(píng)價(jià)它們受[σ]影響程度的標(biāo)準(zhǔn)。定義如下: 5 ?實(shí)驗(yàn)結(jié)果及分析 選取一幅大小為220×256未處理過的圖1進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)工具為Matlab 2012b。 5.1 ?不同[σ]情況下直方圖分析 圖2為實(shí)驗(yàn)圖像在不同標(biāo)準(zhǔn)差情況下的灰度圖和梯度圖的對(duì)比。 由以上實(shí)驗(yàn)可知,當(dāng)[σ]取值不同,直方圖會(huì)出現(xiàn)不同變化,經(jīng)過不同標(biāo)準(zhǔn)差濾波后的梯度直方圖在梯度值和梯度值權(quán)重上面均有明顯變化。實(shí)驗(yàn)還說明了高斯標(biāo)準(zhǔn)差[σ]對(duì)梯度值有較大影響,若使用平均梯度作為自適應(yīng)計(jì)算的標(biāo)準(zhǔn),計(jì)算結(jié)果將受到[σ]的嚴(yán)重影響。而梯度直方圖的變化是導(dǎo)致自適應(yīng)Canny算法效果不同的原因所在。圖2 ?當(dāng)[σ]取不同值時(shí)的灰度圖和梯度圖
5.2 ?改進(jìn)后算法的直方圖分析
實(shí)驗(yàn)圖像經(jīng)過不同方差處理后的梯度圖如圖3所示。
由圖3可以看出,改進(jìn)后的梯度圖受不同高斯標(biāo)準(zhǔn)差影響較小,因此,使用本文算法中平均方差代替均值的算法改進(jìn)可以有效提高算法的穩(wěn)定性。
5.3 ?算法性能分析
5.3.1 ?邊緣定位特性
經(jīng)過反復(fù)實(shí)驗(yàn),當(dāng)梯度值取31.40,高斯標(biāo)準(zhǔn)差取0.65時(shí),邊緣檢測的效果最佳,記為先驗(yàn)知識(shí)[G],如圖4所示。
5.3.2 ?梯度均值與方差的比較
表1為本文選取的實(shí)驗(yàn)圖片經(jīng)過本文改進(jìn)后算法的邊緣特性與原算法的邊緣定位特性的性能對(duì)比。表2為實(shí)驗(yàn)圖片在不同高斯標(biāo)準(zhǔn)差情況下梯度均值與方差的變化對(duì)比。
5.3 ?實(shí)驗(yàn)結(jié)果分析
基于以上分析,得出以下結(jié)論:
1) 相同高斯標(biāo)準(zhǔn)差情況下,改進(jìn)后的類間方差的錯(cuò)檢率低于改進(jìn)前的結(jié)果。
2) 改進(jìn)后的比值法求出的梯度圖像,在連續(xù)性上優(yōu)于改進(jìn)前的類間方差,在減少偽邊緣方面優(yōu)于改進(jìn)后的類間方差。
3) 不同高斯標(biāo)準(zhǔn)差對(duì)比,改進(jìn)前的類間方差對(duì)高斯標(biāo)準(zhǔn)差較敏感,而高斯標(biāo)準(zhǔn)差對(duì)改進(jìn)后的類間方差影響不大,并且改進(jìn)后的比值法對(duì)不同高斯標(biāo)準(zhǔn)差的穩(wěn)定性也明顯提高。由此可知,經(jīng)過均方差改進(jìn)的類間方差提高了梯度圖像的魯棒性。
4) 改進(jìn)后的比值法定位錯(cuò)誤明顯低于未改進(jìn)的結(jié)果,定位精度得到明顯的提升。
6 ?結(jié) ?語
本文針對(duì)Otsu算法應(yīng)用在Canny自適應(yīng)邊緣檢測中存在的問題進(jìn)行改進(jìn)。首先,通過在算法中使用平均方差的方法,使改進(jìn)后的邊緣檢測結(jié)果受高斯標(biāo)準(zhǔn)差影響微小。其次,通過改進(jìn)的Otsu門限分割法能計(jì)算出比原算法更準(zhǔn)確的門限值。實(shí)驗(yàn)結(jié)果表明,在Canny邊緣檢測中應(yīng)用本文的算法,在保證原算法自動(dòng)化的基礎(chǔ)上提高了邊緣檢測的定位精度和魯棒性,得出了更好的結(jié)果。
參考文獻(xiàn)
[1] 劉芳,鄧志仁.基于自適應(yīng)小波閾值和雙邊濾波器的去噪算法[J].系統(tǒng)仿真學(xué)報(bào),2014,26(12):2934?2938.
LIU Fang, DENG Zhiren. Denoising algorithm based on adaptive wavelet threshold and bilateral filter [J]. Journal of system simulation, 2014, 26(12): 2934?2938.
[2] 戴青云,余英林.數(shù)學(xué)形態(tài)學(xué)在圖像處理中的應(yīng)用進(jìn)展[J].控制理論與應(yīng)用,2001,18(4):478?482.
DAI Qingyun, YU Yinglin. The advances of mathematical morphology in image processing [J]. Control theory and applications, 2001, 18(4): 478?482.
[3] 解歡慶.改進(jìn)的蟻群算法在圖像邊緣檢測中的應(yīng)用研究[D].蘭州:蘭州大學(xué),2011.
XIE Huanqing. Application research of improved ant colony algorithm in image edge detection [D]. Lanzhou: Lanzhou University, 2011.
[4] 雒濤,鄭喜鳳,丁鐵夫.改進(jìn)的自適應(yīng)閾值Canny邊緣檢測[J].光電工程,2009,36(11):106?111.
LUO Tao, ZHENG Xifeng, DING Tiefu. Improved self?adaptive threshold Canny edge detection [J]. Opto?electronic engineering, 2009, 36(11): 106?111.
[5] 張心言,趙冉陽.基于Canny的自適應(yīng)邊緣檢測算法及性能評(píng)估[J].計(jì)算機(jī)技術(shù)與發(fā)展,2015,25(11):32?37.
ZHANG Xinyan, ZHAO Ranyang. An adaptive edge?detection algorithm based on Canny and its performance evaluation [J]. Computer technology and development, 2015, 25(11): 32?37.
[6] 磨少清.邊緣檢測及其評(píng)價(jià)方法的研究[D].天津:天津大學(xué),2011.
MO Shaoqing. Study on edge detection and its evaluation method [D]. Tianjin: Tianjin University, 2011.
[7] BAO Paul, ZHANG Lei, WU Xiaolin. Canny edge detection enhancement by scale multiplication [J]. IEEE transactions on pattern analysis and machine intelligence, 2005, 27(9): 1485?1490.
[8] 梁光明,孫即祥,馬琦,等.Otsu算法在Canny算子中的應(yīng)用[J].國防科技大學(xué)學(xué)報(bào),2003,25(5):36?39.
LIANG Guangming, SUN Jixiang, MA Qi, et al. Application of Otsu algorithm in Canny operator [J]. Journal of University of Defense Technology, 2003, 25(5): 36?39.
[9] 金剛.自適應(yīng)Canny算法研究及其在圖像邊緣檢測中的應(yīng)用[D].杭州:浙江大學(xué),2011.
JIN Gang. Research on adaptive Canny algorithm and its application in image edge detection [D]. Hangzhou: Zhejiang University, 2011.
[10] 劉超,周激流,何坤.基于Canny算法的自適應(yīng)邊緣檢測方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(18):4036?4039.
LIU Chao, ZHOU Jiliu, HE Kun. Adaptive edge?detection method based on Canny algorithm [J]. Computer engineering and design, 2010, 31(18): 4036?4039.
[11] 傅仲良,李勇.基于梯度幅度直方圖和類內(nèi)方差的邊緣提取方法[J].武漢大學(xué)學(xué)報(bào)(信息科學(xué)版),2005,30(12):1056?1058.
FU Zhongliang, LI Yong. Edge detection based on gradient histogram and variance within clusters [J]. Geomatics and Information Science of Wuhan University, 2005, 30(12): 1056?1058.
[12] 邱麗君.Otus圖像分割方法的研究與應(yīng)用[D].濟(jì)南:山東師范大學(xué),2011.
QIU Lijun. Study and application of Otus image segmentation method [D]. Jinan: Shandong Normal University, 2011.
[13] 李惠光,姚磊,石磊.改進(jìn)的Otsu理論在圖像閾值選取中的應(yīng)用[J].計(jì)算機(jī)仿真,2007,24(4):216?220.
LI Huiguang, YAO Lei, SHI Lei. Automatic selection of image threshold based on improved Otsu [J]. Computer simulation, 2007, 24(4): 216?220.
[14] MEER P, GEORGESCU B. Edge detection with embedded confidence [J]. IEEE transactions on pattern analysis and machine intelligence, 2001, 23(12): 1351?1365.
[15] RACHID D. Using Canny′s criteria to deriver a recursively implemented optimal edge detector [J]. International journal of computer vision, 1987, 1(2): 167?187.