田國富,宋江波
(沈陽工業(yè)大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽 110870)
?
基于多尺度多結(jié)構(gòu)元的數(shù)學(xué)形態(tài)學(xué)邊緣檢測*
田國富,宋江波
(沈陽工業(yè)大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽 110870)
針對傳統(tǒng)的邊緣檢測算子對噪聲敏感問題,提出了一種基于多尺度多結(jié)構(gòu)元素形態(tài)學(xué)邊緣檢測算子。該算子在傳統(tǒng)形態(tài)學(xué)邊緣檢測的基礎(chǔ)上,通過改變結(jié)構(gòu)元素的形狀和尺度,在很好抑制噪聲的前提下,實(shí)現(xiàn)圖像精細(xì)邊緣提取。MATLAB仿真結(jié)果表明,該邊緣檢測算子具有更強(qiáng)的去噪能力,定位準(zhǔn)確,保留了更多的圖像細(xì)節(jié),優(yōu)于傳統(tǒng)的邊緣檢測算子。
數(shù)學(xué)形態(tài)學(xué);多尺度多結(jié)構(gòu)元素;邊緣檢測
圖像最基本的特征是邊緣,它包含著大量的圖像信息,因此對圖像邊緣進(jìn)行完整、精準(zhǔn)的檢測在圖像處理過程中有著非常重要的意義。圖像邊緣檢測就是定位和提取邊緣信息,為圖像分析、目標(biāo)識別和機(jī)器視覺等做前期準(zhǔn)備[1]。由于噪聲對圖像邊緣檢測帶來的不利影響,在邊緣檢測過程中會丟失大量的圖像細(xì)節(jié)信息,因此圖像處理的基本問題就是在盡可能降低噪聲干擾的同時提高檢測精度。
傳統(tǒng)的邊緣檢測算子起步比較早,如Roberts算子、Sobel算子、Canny算子等一階微分算子,以及Laplacian算子、LOG(高斯—拉普拉斯)算子等二階微分算子。這些算法大多是在以要處理像素為中心的鄰域中進(jìn)行灰度分析,實(shí)現(xiàn)對圖像邊緣的提取[2],計算簡單,實(shí)時性好,有良好的邊緣檢測性。但由于微分運(yùn)算的性質(zhì),對噪聲比較敏感,抗噪聲性能差,提取的邊緣不夠精細(xì),因此在實(shí)際應(yīng)用中受到限制[3]。近年來,很多學(xué)者提出了基于數(shù)學(xué)形態(tài)學(xué)的邊緣檢測算法,在此基礎(chǔ)上,本文針對單一尺度的結(jié)構(gòu)元素容易導(dǎo)致在對目標(biāo)圖像進(jìn)行邊緣提取時定位不夠準(zhǔn)確、邊緣信息丟失、去噪效果達(dá)不到預(yù)期要求等問題,提出了一種基于多尺度多結(jié)構(gòu)元素的形態(tài)學(xué)邊緣檢測算法。
數(shù)學(xué)形態(tài)學(xué)是建立在數(shù)學(xué)理論之上的新興學(xué)科,理論基礎(chǔ)是集合論,基本運(yùn)算是像素間的邏輯關(guān)系而非代數(shù)關(guān)系。其基本思想是:用一個具有一定形狀的結(jié)構(gòu)元素去度量和提取圖像中的對應(yīng)形狀以達(dá)到對圖像進(jìn)行分析和識別的目的[4]。
數(shù)學(xué)形態(tài)學(xué)可以去除目標(biāo)圖像中不相關(guān)的形態(tài)結(jié)構(gòu)屬性,而保留本質(zhì)的結(jié)構(gòu)屬性,達(dá)到簡化圖像數(shù)據(jù)的目的。目前,數(shù)學(xué)形態(tài)學(xué)已廣泛應(yīng)用于機(jī)器視覺、顯微圖像分析、醫(yī)學(xué)處理等領(lǐng)域[5]。
1.1 數(shù)學(xué)形態(tài)學(xué)的基本運(yùn)算
數(shù)學(xué)形態(tài)學(xué)基本運(yùn)算主要有膨脹、腐蝕、開、閉運(yùn)算,開運(yùn)算和閉運(yùn)算都是由膨脹和腐蝕運(yùn)算組合而成。
設(shè)b(m,n)是結(jié)構(gòu)元素,f(x,y)為輸入的灰度圖像,b的定義域?yàn)镈b,f的定義域?yàn)镈f,則結(jié)構(gòu)元素b對灰度圖像f的形態(tài)學(xué)運(yùn)算如下:
(1)形態(tài)學(xué)膨脹運(yùn)算
圖像f被b膨脹,記作f⊕b,定義為:
f⊕b=max{f(x-m,y-n)+b(m,n)
|(x-m,y-n)∈Df;(m,n)∈Db}
(1)
(2)形態(tài)學(xué)腐蝕運(yùn)算
圖像f被b腐蝕,記作fΘb,定義為:
fΘb=min{f(x+m,y+n)-b(m,n)
|(x+m,y+n)∈Df;(m,n)∈Db}
(2)
(3)形態(tài)學(xué)開運(yùn)算
圖像f被b腐蝕后再用b來膨脹腐蝕結(jié)果,記作f°b,定義為:
f°b=f(x,y)Θb(m,n)⊕b(m,n)
(3)
(4)形態(tài)學(xué)閉運(yùn)算
圖像f被b膨脹后再用b來腐蝕膨脹結(jié)果,記作f·b,定義為:
f·b=f(x,y)⊕b(m,n)Θb(m,n)
(4)
1.2 形態(tài)學(xué)濾波
數(shù)字圖像的噪聲主要來源于圖像的獲取和傳輸過程,對圖像邊緣檢測產(chǎn)生不利的影響。因此在對圖像進(jìn)行邊緣檢測之前必須對其進(jìn)行平滑處理,去除噪聲的影響[6]。常用的圖像去噪方法有中值濾波、小波去噪、數(shù)學(xué)形態(tài)學(xué)濾波等。
數(shù)學(xué)形態(tài)學(xué)中,由于開運(yùn)算可以去除比結(jié)構(gòu)元素更小的明亮細(xì)節(jié),閉運(yùn)算可以去除比結(jié)構(gòu)元素更小的暗細(xì)節(jié),所以它們經(jīng)常組合在一起用來平滑圖像并去除噪聲[7]。但由于閉運(yùn)算的擴(kuò)展性和開運(yùn)算的反擴(kuò)展性使得兩者單獨(dú)使用時并不能獲得良好的濾波效果,因此本文采用兩者的均值來實(shí)現(xiàn)噪聲圖像的平滑處理。假設(shè)經(jīng)過去噪之后的圖像用Filter來表示,則公式表示如下:
Filter1={[(f⊕b)Θb]Θb}⊕b=(f·b)°b
(5)
Filter2={[(fΘb)⊕b]⊕b}Θb=(f°b)·b
(6)
(7)
2.1 數(shù)學(xué)形態(tài)學(xué)邊緣檢測算法
對上文介紹的形態(tài)學(xué)的基本運(yùn)算進(jìn)行組合,便可得到基本的形態(tài)學(xué)邊緣檢測算子的數(shù)學(xué)表達(dá)式,設(shè)E為邊緣圖像。
若采用膨脹運(yùn)算,則邊緣檢測算子為:
E1(x,y)=f(x,y)⊕b(m,n)-f(x,y)
(8)
若采用腐蝕運(yùn)算,則邊緣檢測算子為:
E2(x,y)=f(x,y)-f(x,y)Θb(m,n)
(9)
若采用膨脹腐蝕復(fù)合運(yùn)算,則邊緣檢測算子為:
E3(x,y)=f(x,y)⊕b(m,n)-f(x,y)Θb(m,n)
(10)
由于形態(tài)邊緣檢測算子都屬于非線性差分算子,因此對噪聲都比較敏感,而且檢測出的邊緣與結(jié)構(gòu)元素b緊密相關(guān)。利用數(shù)學(xué)形態(tài)學(xué)腐蝕和開運(yùn)算組成的邊緣檢測器可以抑制圖像中的峰值噪聲,而利用數(shù)學(xué)形態(tài)學(xué)膨脹和閉運(yùn)算可以抑制圖像中的低谷噪聲。因此對上述形態(tài)學(xué)邊緣檢測算子改進(jìn)后得到抗噪型邊緣檢測算子。
(1)抗噪膨脹型:
E4(x,y)=[f(x,y)°b(m,n)]⊕b(m,n)-
[f(x,y)°b(m,n)]·b(m,n)
(11)
(2)抗噪腐蝕型:
E5(x,y)=[f(x,y)·b(m,n)]°b(m,n)-
[f(x,y)·b(m,n)]Θb(m,n)
(12)
(3)抗噪膨脹腐蝕型:
E6(x,y)=[f(x,y)°b(m,n)]⊕b(m,n)-
[f(x,y)·b(m,n)]Θb(m,n)
(13)
2.2 多結(jié)構(gòu)元素邊緣檢測算法
上述式(11)~(13)介紹的改進(jìn)的數(shù)學(xué)形態(tài)學(xué)邊緣檢測算子可以很好地去除噪聲和保持邊緣細(xì)節(jié),很大程度上減少了對噪聲的敏感程度,但各算子均使用單一結(jié)構(gòu)元素,因此檢測到的邊緣比較弱、不連續(xù),而且很難檢測出復(fù)雜形狀的邊緣。文獻(xiàn)[8]針對以上問題提出了基于多結(jié)構(gòu)元素的邊緣檢測算法,公式如下:
E7(x,y)=[f(x,y)Θb1(m,n)⊕b2(m,n)]⊕
b3(m,n)-[f(x,y)⊕b1(m,n)Θb2(m,n)]Θb3(m,n)
(14)
結(jié)構(gòu)元素b1、b2、b3均采用單一尺度3×3的方形結(jié)構(gòu)元素,分別對原圖像和噪聲圖像采用文獻(xiàn)[8]算法進(jìn)行邊緣檢測。仿真試驗(yàn)結(jié)果如圖1所示。
圖1 文獻(xiàn)[8]檢測算法分別對原圖像、噪聲圖像提取邊緣結(jié)果
上圖中,(a)為原圖像,(b)、(c)、(d)分別為采用文獻(xiàn)[8]的檢測算法對原圖像、密度0.02的噪聲圖像、密度為0.05的噪聲圖像提取邊緣的結(jié)果。對于文獻(xiàn)[8]提出的多結(jié)構(gòu)元素的邊緣檢測算法,b1、b2、b3均采用單一尺度的結(jié)構(gòu)元素。由仿真結(jié)果可以看出,圖像沒有添加椒鹽噪聲時,檢測到的圖像邊緣清晰,保留了圖像的邊緣細(xì)節(jié),當(dāng)添加噪聲之后,雖檢測出的圖像邊緣較平滑,但圖像中混有噪聲點(diǎn),并且通過仿真試驗(yàn)可知隨著噪聲密度的增大,邊緣圖像中的噪聲點(diǎn)將越來越多,當(dāng)噪聲點(diǎn)多到一定程度之后,就會與圖像邊緣粘黏在一起,形成偽邊緣,導(dǎo)致不能準(zhǔn)確地檢測圖像的輪廓邊緣。
2.3 多尺度多結(jié)構(gòu)元素邊緣檢測算法
本文結(jié)合式(13)提出另一種抗噪膨脹腐蝕型邊緣檢測算子:
圖2 各算法邊緣檢測結(jié)果對比
E8(x,y)=[f(x,y)·b(m,n)]⊕b(m,n)-
[f(x,y)°b(m,n)]Θb(m,n)
(15)
對其改進(jìn)得到多結(jié)構(gòu)元素的邊緣檢測算子:
E9(x,y)=[f(x,y)⊕b1(m,n)Θ
b2(m,m)]⊕b3(m,n)-[f(x,y)Θ
b1(m,n)⊕b2(m,n)]Θb3(m,m)
(16)
由于用較小尺寸的結(jié)構(gòu)元素對圖像進(jìn)行處理,能較好地保護(hù)圖像的細(xì)節(jié),也可以濾除一定尺寸的噪聲;反之,用較大尺寸的結(jié)構(gòu)元素對圖像進(jìn)行處理時,能濾除較大尺寸的噪聲,但也會損失更多的圖像細(xì)節(jié)。針對不同尺度結(jié)構(gòu)元素的優(yōu)缺點(diǎn),本文結(jié)合式(14)、(16)對文獻(xiàn)[8]的多結(jié)構(gòu)元素邊緣檢測算子進(jìn)行改進(jìn),提出先用較大結(jié)構(gòu)元素b1和b2對圖像進(jìn)行開、閉運(yùn)算處理,然后用小尺度結(jié)構(gòu)元素b3對圖像做膨脹和腐蝕操作。取結(jié)構(gòu)元素b1、b2為不同尺度平坦的圓形結(jié)構(gòu)元素,半徑分別為2和3,b3為R=1的菱形結(jié)構(gòu)元素,得到一種多尺度多結(jié)構(gòu)元素形態(tài)學(xué)邊緣檢測算子為:
⊕b3(m,n)-[f(x,y)⊕b1(m,n)Θb2(m,n)]
Θb3(m,n)+[f(x,y)⊕b1(m,n)Θb2(m,n)]
⊕b3(m,n)-[f(x,y)Θb1(m,n)⊕b2(m,n)]
Θb3(m,n)}
(17)
為驗(yàn)證本文提出的基于多尺度多結(jié)構(gòu)元素算法的有效性,將其與Canny邊緣檢測算法、Sobel邊緣檢測算法和一般抗噪型邊緣檢測算法(式(13))進(jìn)行對比,用MATLAB對Lenna圖像和添加噪聲的Lenna圖像、Rice圖像進(jìn)行仿真。
本文圖像邊緣檢測算法步驟如下:
(1)輸入Lenna、Rice灰度圖像,添加噪聲(密度為0.05的椒鹽噪聲)。
(2)用本文式(7)的方法對加入噪聲的圖像進(jìn)行開—閉濾波運(yùn)算,開、閉運(yùn)算均采用3×3的方形結(jié)構(gòu)元素。
(3)利用公式(17)對經(jīng)過濾波處理后的圖像進(jìn)行邊緣提取。其中,b1和b2分別是半徑為2和3的平坦的圓形結(jié)構(gòu)元素,b3為R=1的菱形結(jié)構(gòu)元素[9]。
實(shí)驗(yàn)結(jié)果如圖2所示。
由以上檢測結(jié)果可以看出,對于Lenna圖像,無噪聲情況下,傳統(tǒng)的Sobel算子出現(xiàn)了很多的邊緣斷裂現(xiàn)象,Canny算子檢測出過多的邊緣細(xì)節(jié),而一般的抗噪型邊緣檢測算子(式(13))和本文的算法檢測的輪廓邊緣清晰,連貫性較好。對于添加噪聲之后的Lenna圖像,傳統(tǒng)的Sobel與Canny算子檢測結(jié)果出現(xiàn)很大的噪聲,不能清楚地觀察到圖像邊緣。一般的抗噪型邊緣檢測算子雖然抵抗噪聲能力比較強(qiáng),但邊緣出現(xiàn)了很多缺口,平滑度達(dá)不到要求。對于Rice圖像,由于其邊緣輪廓比較簡單,無噪聲情況下,幾種檢測算子都顯示出不錯的邊緣檢測結(jié)果。但添加噪聲之后,Sobel算子已經(jīng)完全不能識別圖像的邊緣,Canny算子不能準(zhǔn)確地定位圖像輪廓邊緣,產(chǎn)生很多偽邊緣。一般的抗噪型算子邊緣不連貫,出現(xiàn)很多的缺口,平滑度也不夠好。本文提出的算法,不管是對原圖像還是添加噪聲的圖像,都顯示出很好的邊緣檢測性能,邊緣定位準(zhǔn)確,輪廓清晰完整,邊緣細(xì)節(jié)更加豐富。分別對Lenna圖像和Rice圖像的檢測,也充分說明了本文檢測算法的普遍性和實(shí)用性。
本文針對傳統(tǒng)的邊緣檢測算子抗噪能力差的特點(diǎn),從數(shù)學(xué)形態(tài)學(xué)的基本思想出發(fā),通過對單一尺寸或形狀結(jié)構(gòu)元素的邊緣檢測算法分析與改進(jìn),提出了多尺度多結(jié)構(gòu)元素邊緣提取算法,通過仿真結(jié)果驗(yàn)證,本文算法可在抑制噪聲的同時,有效地提取圖像的邊緣,且提取的邊緣定位精度高,平滑度好,邊緣細(xì)節(jié)保持也比較完整,充分驗(yàn)證了本文算法的優(yōu)越性。
[1] 范立南,韓曉微,王忠石,等. 基于多結(jié)構(gòu)元的噪聲污染灰度圖像邊緣檢測研究[J]. 武漢大學(xué)學(xué)報(工學(xué)版),2003,36(3):86-90.
[2] 劉國棟,范九倫.一種改進(jìn)的Canny邊緣檢測算法[J].微型機(jī)與應(yīng)用,2013,32(22):32-34,37.
[3] 黃金土. 幾種邊緣檢測算子的比較研究[J]. 機(jī)電技術(shù),2014(5):155-157.
[4] 李杰,苗長云,武志剛,等. 基于數(shù)學(xué)形態(tài)學(xué)的圖像邊緣檢測算法的研究[J]. 計算機(jī)科學(xué),2012,39(6A):546-548.
[5] 王芳,錢煒,李文超. 基于數(shù)學(xué)形態(tài)學(xué)的圖像邊緣提取方法[J]. 機(jī)械工程與自動化,2015(1):46-48.
[6] 王英,曾光宇. 圖像去噪算法研究[J]. 電腦與信息技術(shù),2011,19(4):8-12.
[7] GONZALEZ R C,WOOD R E,EDDINS S L. 數(shù)字圖像處理(MATLAB版)[M]. 阮秋琦,譯. 北京:電子工業(yè)出版社,2005.
[8] 王益艷.基于多結(jié)構(gòu)元素的數(shù)學(xué)形態(tài)學(xué)邊緣檢算法[J].四川文理學(xué)院學(xué)報,2009,19(5):21-24.
[9] 唐曉強(qiáng),賴惠成. 形態(tài)學(xué)結(jié)構(gòu)元素選取算法的研究[J].通信技術(shù),2010,43(7):161-162,203.
Morphological edge detection based on multi-scale and multi-structuring elements
Tian Guofu,Song Jiangbo
(School of Mechanical Engineering, Shenyang University of Technology, Shenyang 110870, China)
The detection results of traditional edge detection methods are sensitive to noise. Aiming at this problem, a morphological edge detection algorithm based on multi-scale and multi-structuring elements is proposed. The algorithm can extract fine edge of the image in the premise of good suppression of noise by changing the scale and shape of the structure elements based on the traditional morphological edge detection. The MATLAB simulation results show that the edge detection operator has a stronger ability to remove noise and a more accurate orientation, more image details are retained. The method is better than the traditional edge detection operators.
mathematical morphological; multi-scale and multi-structuring elements; edge detection
沈陽市科技創(chuàng)新專項資金-工業(yè)科技攻關(guān)專項(F15040200)
TP391.41
A
1674-7720(2016)07-0041-03
田國富,宋江波. 基于多尺度多結(jié)構(gòu)元的數(shù)學(xué)形態(tài)學(xué)邊緣檢測[J].微型機(jī)與應(yīng)用,2016,35(7):41-43,47.
2015-12-14)
田國富(1968-),男,博士后,副教授,主要研究方向:機(jī)械系統(tǒng)的CAD/CAE技術(shù)、工程車輛設(shè)計與試驗(yàn)等。
宋江波(1990-),通信作者,男,碩士研究生,主要研究方向:機(jī)械設(shè)計及理論。E-mail:362378526@qq.com。