国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

改進(jìn)的Canny算子邊緣檢測(cè)算法研究

2018-01-19 11:35段軍張博
軟件導(dǎo)刊 2018年10期
關(guān)鍵詞:邊緣檢測(cè)迭代法閾值

段軍 張博

摘要:針對(duì)傳統(tǒng)Canny算子邊緣檢測(cè)算法出現(xiàn)偽邊緣或邊緣丟失的缺陷,提出了一種采用統(tǒng)計(jì)濾波去噪和基于灰度的迭代法計(jì)算閾值的邊緣檢測(cè)算法。首先統(tǒng)計(jì)濾波并使用均值和方差去噪,避免出現(xiàn)如同高斯函數(shù)受噪聲干擾的問(wèn)題,保證圖像邊緣完整性;其次,使用灰度進(jìn)行迭代計(jì)算確定閾值,改進(jìn)了傳統(tǒng)算法中人工確定的不足,使閾值更加準(zhǔn)確,減少偽邊緣和信息丟失的情況。通過(guò)大量實(shí)驗(yàn)對(duì)比和結(jié)果分析表明,改進(jìn)后的算法與傳統(tǒng)算法相比,可以提高邊緣檢測(cè)運(yùn)行效率,使結(jié)果更加清晰、準(zhǔn)確。

關(guān)鍵詞:統(tǒng)計(jì)濾波;Canny算子;邊緣檢測(cè);閾值;迭代法

DOIDOI:10.11907/rjdk.181305

中圖分類(lèi)號(hào):TP312

文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2018)010-0068-04

英文摘要Abstract:The traditional Canny edge detection algorithm exists problems of fake edge and edge loss, so this paper proposed an improved Canny edge detection algorithm.The new algorithm uses statistic wave filtering and interactive threshold to calculate threshold.First of all, averages and variances are employed in statistic wave filtering.Unlike Gauss function,it can avoid noise interference and also keep the integrity of image edges. Secondly, it improves the traditional algorithm by using gray values to calculate threshold. It makes threshold more accurate and reduces the fake edge and edge loss.Verified by a large number of experiments and the result analysis of the programs,the improved algorithm shows that compared with traditional algorithm, it improves the operating efficiency and obtains more accurate and clearer results.

英文關(guān)鍵詞Key Words:statistic wave filtering;Canny algorithm;edge detection;threshold;iterative algorithm

0 引言

圖像邊緣是灰度發(fā)生突變的像素點(diǎn)集合,圖像邊緣包含數(shù)字圖像重要信息,所以提取邊緣信息能夠降低圖像處理數(shù)據(jù)量。圖像分割對(duì)后續(xù)操作產(chǎn)生重要影響[1]。圖像分割包含圖像邊緣檢測(cè),同時(shí)圖像理解、分析和圖像識(shí)別都是在圖像邊緣檢測(cè)基礎(chǔ)上進(jìn)行的[2]。受噪聲干擾的圖像在圖像理解方面有難度,導(dǎo)致邊緣不易被測(cè)出。因此,需要在圖像的預(yù)處理階段進(jìn)行去噪處理,降低對(duì)處理后續(xù)圖像的影響。目前邊緣檢測(cè)常用算子有一階偏導(dǎo)算子(Roberts算子、Sobel算子、Prewitt算子等)、二階偏導(dǎo)算子(拉普拉斯算子),兩者都是在像素點(diǎn)鄰近區(qū)域內(nèi)進(jìn)行計(jì)算,對(duì)噪聲敏感性較強(qiáng)[3],檢測(cè)效果不佳[4]。本文通過(guò)分析傳統(tǒng)Canny算子和其它各種算法,提出一種結(jié)合統(tǒng)計(jì)濾波和迭代閾值法的改進(jìn)算法,在一定程度上降低了噪聲,同時(shí)能夠準(zhǔn)確提取邊緣信息。

1 基本原理

1.1 傳統(tǒng)Canny算子邊緣檢測(cè)算法

傳統(tǒng)Canny算子因運(yùn)算時(shí)間短、計(jì)算過(guò)程相對(duì)簡(jiǎn)單,檢測(cè)結(jié)果優(yōu)于其它邊緣檢測(cè)算子[5],因而得到了廣泛應(yīng)用。好的邊緣檢測(cè)遵循3個(gè)準(zhǔn)則(信噪比準(zhǔn)則、定位精度準(zhǔn)則、單邊響應(yīng)準(zhǔn)則[6-7])和3個(gè)指標(biāo)(好的檢測(cè)、好的定位、最小響應(yīng)[8])。Canny算子符合以上準(zhǔn)則和指標(biāo),是一種有效的邊緣檢測(cè)方法。

傳統(tǒng)Canny算子邊緣檢測(cè)步驟如下:

(1)為得到無(wú)噪聲圖像,使用高斯濾波G=12πσ2exp-x2+y22σ2平滑圖像進(jìn)行去噪,對(duì)原始圖像進(jìn)行圖像變換,σ是標(biāo)準(zhǔn)差,用來(lái)控制平滑程度[9]。當(dāng)σ較小時(shí),定位邊緣準(zhǔn)確度高;較大時(shí),可能導(dǎo)致圖像過(guò)度平滑,丟失一些有用信息,增加運(yùn)算量,因此要適當(dāng)選擇平滑參數(shù)[10]。

(2)使用一階偏導(dǎo)算子求出水平Gx和垂直Gy的方向偏導(dǎo)數(shù),并求出圖像灰度梯度幅值和方位角度θ=arctanGyGx[11]。

(3)對(duì)得出的梯度幅值在梯度方向上進(jìn)行非極大值抑制,找到局部最大值點(diǎn)。若為最大值點(diǎn)則標(biāo)記為可能的邊緣點(diǎn),否則進(jìn)行抑制,將梯度幅值置為0[12]。經(jīng)過(guò)非極大值抑制后,非邊緣點(diǎn)被排除,剩下的為邊緣點(diǎn)。非極大值抑制能夠準(zhǔn)確定位邊緣位置,并進(jìn)一步細(xì)化邊緣檢測(cè),使邊緣變得更精細(xì)、準(zhǔn)確[13]。

(4)用高低閾值檢測(cè)并連接邊緣。人為確定高低兩個(gè)閾值T1和T2,對(duì)圖像中的每一像素點(diǎn)進(jìn)行驗(yàn)證,如果像素大于T1,則將該點(diǎn)判定為邊緣點(diǎn),如果低于T2,則不是邊緣點(diǎn)。將在兩閾值之間的像素點(diǎn)和在像素鄰域中的像素點(diǎn)進(jìn)行對(duì)比,在鄰域中尋找像素大于高閾值的像素點(diǎn),若找到則將該像素點(diǎn)記為邊緣點(diǎn),否則不是邊緣點(diǎn)。將高低閾值分別作用于原圖像,得到兩幅閾值圖像[14],低閾值得到的圖像保留的邊緣比高閾值得到的圖像多,以低閾值圖像中的邊緣為基礎(chǔ),將高閾值圖像中丟失的邊緣補(bǔ)全,并連接邊緣,得到邊緣檢測(cè)結(jié)果[15]。

1.2 傳統(tǒng)算法缺陷

在傳統(tǒng)Canny算子中,高斯函數(shù)中的方差σ對(duì)圖像預(yù)處理階段的平滑去噪效果有一定影響,并且一階偏導(dǎo)算子對(duì)噪聲敏感,容易出現(xiàn)過(guò)度平滑,減少檢測(cè)到的邊緣數(shù)量[9]。同時(shí),傳統(tǒng)算子采用人工確定閾值的方法,主觀性較強(qiáng),且費(fèi)時(shí)費(fèi)力,如果選取的閾值較大,會(huì)導(dǎo)致邊緣丟失,如果選取的較小,則出現(xiàn)假邊緣,導(dǎo)致結(jié)果不準(zhǔn)確。

通過(guò)對(duì)傳統(tǒng)Canny算子邊緣檢測(cè)算法的分析,本文在傳統(tǒng)算法的基礎(chǔ)上進(jìn)行改進(jìn),提出使用統(tǒng)計(jì)濾波去噪和迭代法確定閾值的新思路。

2 Canny算子邊緣檢測(cè)算法改進(jìn)

2.1 統(tǒng)計(jì)濾波去噪算法

噪聲在任何圖像中都不可避免,已經(jīng)眾多學(xué)者提出了圖像去噪算法,如中值濾波、小波變換去噪、灰度形態(tài)學(xué)去噪等方法,但已有的算法對(duì)噪聲敏感,去噪效果不理想,甚至去除了一些圖像特征信息,造成圖像處理困難。因此選擇有效的去噪算法對(duì)邊緣檢測(cè)很重要[16]。在傳統(tǒng)的Canny算子中,使用高斯函數(shù)與原圖像卷積進(jìn)行濾波,該過(guò)程需要使用高斯函數(shù)一階導(dǎo)數(shù),噪聲屬于高頻信號(hào),且噪聲w自身的數(shù)量級(jí)要比高斯函數(shù)高一個(gè)次方,所以當(dāng)高斯函數(shù)增加時(shí),噪聲也呈冪指數(shù)增長(zhǎng)。另外高斯函數(shù)容易受到噪聲干擾,使圖像邊緣模糊,不易分辨。且高斯濾波算法復(fù)雜度很高、運(yùn)行效率低。圖像中出現(xiàn)噪聲是一種多維隨機(jī)過(guò)程,可以用統(tǒng)計(jì)概率的相關(guān)知識(shí)進(jìn)行處理。綜上分析,在改進(jìn)算法中使用統(tǒng)計(jì)濾波去噪代替高斯濾波,降低噪聲對(duì)濾波函數(shù)的影響。

在鄰域w內(nèi),通過(guò)方差體現(xiàn)像素變換特點(diǎn),而噪聲是滿足統(tǒng)計(jì)特性的一種多維隨機(jī)過(guò)程,可以利用噪聲的統(tǒng)計(jì)特性去除噪聲,而不引入其它多余性質(zhì),以免給圖像帶來(lái)新的噪聲干擾。因此,將方差作為平滑去噪的一個(gè)參數(shù),能夠避免外界因素對(duì)平滑去噪的影響。

3 分析與討論

在平臺(tái)上使用C#編程語(yǔ)言實(shí)現(xiàn)算法,驗(yàn)證本文改進(jìn)算法準(zhǔn)確性和可行性,并從主觀和客觀兩方面對(duì)算法作出評(píng)價(jià)。在驗(yàn)證算法的過(guò)程中進(jìn)行了大量實(shí)驗(yàn),從眾多實(shí)驗(yàn)結(jié)果中選取3幅圖作為代表進(jìn)行算法分析。

3.1 主觀評(píng)價(jià)

傳統(tǒng)算法與本文改進(jìn)算法的實(shí)驗(yàn)結(jié)果對(duì)比如圖2-圖4所示。其中圖2-圖4中(a)為原始灰度圖像,(b)為傳統(tǒng)算法中閾值選取較低時(shí)邊緣檢測(cè)結(jié)果,(c)為傳統(tǒng)算法中閾值選取較高時(shí)邊緣檢測(cè)結(jié)果,(d)為改進(jìn)算法的邊緣檢測(cè)結(jié)果。通過(guò)對(duì)比結(jié)果可以發(fā)現(xiàn),傳統(tǒng)算法在進(jìn)行邊緣檢測(cè)時(shí),會(huì)出現(xiàn)邊緣缺失、邊緣重復(fù)或偽邊緣的情況,繼而出現(xiàn)邊緣和原圖像不符,對(duì)圖像理解造成一定影響。本文改進(jìn)算法能夠避免出現(xiàn)邊緣丟失、重復(fù)等現(xiàn)象,檢測(cè)出的邊緣基本與原圖像吻合,最終檢測(cè)結(jié)果效果較好,能更方便查看。

3.2 客觀評(píng)價(jià)

不同的閾值選取帶來(lái)不同實(shí)驗(yàn)結(jié)果。傳統(tǒng)算法中由人工確定雙閾值,帶有一定主觀性。如果閾值選取過(guò)低,會(huì)出現(xiàn)邊緣重復(fù)或偽邊緣,而當(dāng)閾值選取過(guò)高,部分邊緣會(huì)丟失。統(tǒng)計(jì)邊緣點(diǎn)數(shù)量反映閾值選取的好壞程度,是邊緣檢測(cè)評(píng)判標(biāo)準(zhǔn)。邊緣點(diǎn)過(guò)多說(shuō)明選取的閾值過(guò)低,邊緣點(diǎn)數(shù)量過(guò)少則說(shuō)明選取的閾值過(guò)高。表1和表2 展示了傳統(tǒng)算法和改進(jìn)算法中閾值對(duì)邊緣檢測(cè)的影響,表1列舉了利用傳統(tǒng)算法進(jìn)行邊緣檢測(cè)時(shí)選取閾值過(guò)高和過(guò)低時(shí)對(duì)圖像邊緣的影響。其中在人工選取的雙閾值中,高閾值為T(mén)H,低閾值為T(mén)L,邊緣點(diǎn)數(shù)量為Amount。表2中IT為改進(jìn)算法的邊緣檢測(cè)閾值,Amount為邊緣點(diǎn)數(shù)量。

通過(guò)上表可以看出,對(duì)同一幅圖像,以從小到大的順序選取閾值時(shí),檢測(cè)出的邊緣點(diǎn)數(shù)量由多變少,說(shuō)明當(dāng)閾值過(guò)低時(shí),出現(xiàn)了多余邊緣,閾值過(guò)高時(shí),一些邊緣丟失。由此可見(jiàn),閾值選取能影響邊緣檢測(cè)結(jié)果,對(duì)MSE邊緣檢測(cè)極為重要。改進(jìn)之后的閾值確定方法使用圖像MSE自身灰度,通過(guò)算法計(jì)算確定閾值,因此準(zhǔn)確度與人工方法相比大幅提升,避免了傳統(tǒng)算法中閾值選取不合適的情況。PSNR改進(jìn)算法只需要一個(gè)閾值即能確定邊緣,比傳統(tǒng)算法人工確定的閾值準(zhǔn)確,并且改進(jìn)后的邊緣點(diǎn)數(shù)量適中,此時(shí)檢測(cè)出的邊緣輪廓最接近原始圖像。

圖像質(zhì)量的客觀評(píng)價(jià)指標(biāo)通常有均方誤差,峰值信噪比PSNR等,MSE表示原圖像和檢測(cè)圖像的均方根誤差,代表兩幅圖像的相似程度。越小,代表兩幅圖越逼近,相似程度越大。PSNR越大,信號(hào)占得比例越大,圖片質(zhì)量越高。表3和表4分別計(jì)算了圖2-圖4的(b)、(c)、(d)3幅圖的MSE和。

由上表數(shù)據(jù)分析可知,本文改進(jìn)算法與傳統(tǒng)算法相比,降低了均方誤差,提高了峰值信噪比,改進(jìn)算法的邊緣檢測(cè)結(jié)果與原始圖像的邊緣更為接近。而且圖像中的信息占比增大,平滑去噪效果較好。通過(guò)上述在算法閾值選取、邊緣點(diǎn)數(shù)量統(tǒng)計(jì)及計(jì)算圖像客觀評(píng)價(jià)指標(biāo)等方面的對(duì)比可知本文改進(jìn)算法可行,且準(zhǔn)確性比傳統(tǒng)算法高。

4 結(jié)語(yǔ)

本文通過(guò)對(duì)傳統(tǒng)Canny算子邊緣檢測(cè)進(jìn)行分析,指出了傳統(tǒng)Canny算子在濾波去噪和閾值確定方面的不足,并加以改進(jìn),使用統(tǒng)計(jì)濾波去噪代替?zhèn)鹘y(tǒng)的高斯濾波去噪,利用基于圖像自身灰度的迭代法確定閾值,代替?zhèn)鹘y(tǒng)算子中人工確定閾值,提高閾值準(zhǔn)確度。本文改進(jìn)后的算法與傳統(tǒng)算法相比,運(yùn)行結(jié)果中假邊緣數(shù)量明顯減少,邊緣位置能準(zhǔn)確確定,算法去噪效果提高,因此本文的改進(jìn)算法在邊緣檢測(cè)方面可行且有效。

參考文獻(xiàn):

[1] 聶方彥,李建奇,張平鳳,等.一種基于Tsallis相對(duì)熵的圖像分割閾值選取方法[J].激光與光電子學(xué)進(jìn)展,2017,54(7):137-144.

[2] 楊婷,段書(shū)凱,王麗丹,等.基于改進(jìn)憶阻細(xì)胞神經(jīng)網(wǎng)絡(luò)的彩色圖像邊緣提取[J].中國(guó)科學(xué):信息科學(xué),2017,47(7):863-877.

[3] 何春華,張雪飛,胡迎春.基于改進(jìn)Sobel算子的邊緣檢測(cè)算法的研究[J].光學(xué)技術(shù),2012,38(3):323-327.

[4] 宋睿,張合新,吳玉彬,等.激光主動(dòng)成像圖像邊緣檢測(cè)算法研究[J].激光與光電子學(xué)進(jìn)展,2017,54(8):159-166.

[5] 趙巖,周百靈.一種改進(jìn)的改進(jìn)的基于Canny邊緣檢測(cè)算法[J].吉林大學(xué)學(xué)報(bào),2012,50(4):740-744.

[6] 張桂梅,孫曉旭,陳彬彬,等.結(jié)合分?jǐn)?shù)階微分和Canny算子的邊緣檢測(cè)[J].中國(guó)圖像圖形學(xué)報(bào),2016,21(8):1028-1038.

[7] 陳曉丹,于鳴,黃英來(lái),等.改進(jìn)Canny算子對(duì)樂(lè)器板材的紋理分析[J].哈爾濱理工大學(xué)學(xué)報(bào),2017,22(4):46-50.

[8] 張石,董建成,佘黎煌.醫(yī)學(xué)圖像分割算法的評(píng)價(jià)方法[J].中國(guó)圖像圖形學(xué)報(bào),2009,14(9):1872-1880.

[9] 薛麗霞,李濤,王佐成.一種自適應(yīng)的Canny邊緣檢測(cè)算法[J].計(jì)算機(jī)應(yīng)用研究,2010,27(9):3588-3590.

[10] 李俊山,馬穎,趙方舟,等.改進(jìn)的Canny圖像邊緣檢測(cè)算法[J].光子學(xué)報(bào),2011,40(S1):50-54.

[11] 侯守明,王陽(yáng),唐琪博,等.一種基于偏微分方程和Canny算子的圖像分割方法[J].山西大學(xué)學(xué)報(bào),2017,40(4):676-682.

[12] 孫硯飛,常曉剛,李東興,等.基于自適應(yīng)Canny的紅外圖像邊緣檢測(cè)算法[J].山東理工大學(xué)學(xué)報(bào),2017,31(6):18-21.

[13] 葉德周,楊風(fēng)健,貌程浩,等.基于Canny算子的紅外影像邊緣檢測(cè)算法[J].激光與紅外,2015,45(9):1129-1132.

[14] 辛玉欣,王傳洋.一種基于Canny算子的圖像邊緣檢測(cè)方法[J].信息與電腦,2017(18):37-38,41.

[15] 史久根,張亞.一種改進(jìn)的自適應(yīng)Canny算子邊緣檢測(cè)算法[J].儀器儀表學(xué)報(bào),2011,32(12):255-260.

[16] 王偉佳,于雪蓮,馬文書(shū),等.基于改進(jìn)P-M模型與加權(quán)復(fù)合型中值濾波的非球面干涉圖去噪方法[J].激光與光電子學(xué)進(jìn)展,2016(3):83-87.

(責(zé)任編輯:江 艷)

猜你喜歡
邊緣檢測(cè)迭代法閾值
迭代法求解一類(lèi)函數(shù)方程的再研究
小波閾值去噪在深小孔鉆削聲發(fā)射信號(hào)處理中的應(yīng)用
基于自適應(yīng)閾值和連通域的隧道裂縫提取
比值遙感蝕變信息提取及閾值確定(插圖)
室內(nèi)表面平均氡析出率閾值探討
迭代法求解約束矩陣方程AXB+CYD=E
預(yù)條件SOR迭代法的收斂性及其應(yīng)用
求解PageRank問(wèn)題的多步冪法修正的內(nèi)外迭代法
成安县| 龙岩市| 育儿| 贵南县| 舞阳县| 栾城县| 江孜县| 临夏县| 仁寿县| 汶上县| 财经| 化州市| 平乡县| 泰和县| 澄城县| 建昌县| 花垣县| 双桥区| 东乡族自治县| 阳朔县| 荔波县| 龙川县| 德阳市| 博爱县| 洪湖市| 泰和县| 珲春市| 曲沃县| 金塔县| 宝兴县| 鹤岗市| 墨竹工卡县| 康定县| 武乡县| 连州市| 鄂尔多斯市| 库车县| 嫩江县| 长治市| 临城县| 莫力|