《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于多尺度多結(jié)構(gòu)元的數(shù)學(xué)形態(tài)學(xué)邊緣檢測(cè)
基于多尺度多結(jié)構(gòu)元的數(shù)學(xué)形態(tài)學(xué)邊緣檢測(cè)
2016年微型機(jī)與應(yīng)用第07期
田國(guó)富,宋江波
(沈陽(yáng)工業(yè)大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽(yáng) 110870)
摘要: 針對(duì)傳統(tǒng)的邊緣檢測(cè)算子對(duì)噪聲敏感問(wèn)題,提出了一種基于多尺度多結(jié)構(gòu)元素形態(tài)學(xué)邊緣檢測(cè)算子。該算子在傳統(tǒng)形態(tài)學(xué)邊緣檢測(cè)的基礎(chǔ)上,通過(guò)改變結(jié)構(gòu)元素的形狀和尺度,在很好抑制噪聲的前提下,實(shí)現(xiàn)圖像精細(xì)邊緣提取。MATLAB仿真結(jié)果表明,該邊緣檢測(cè)算子具有更強(qiáng)的去噪能力,定位準(zhǔn)確,保留了更多的圖像細(xì)節(jié),優(yōu)于傳統(tǒng)的邊緣檢測(cè)算子。
Abstract:
Key words :

  田國(guó)富,宋江波

  (沈陽(yáng)工業(yè)大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽(yáng) 110870)

      摘要: 針對(duì)傳統(tǒng)的邊緣檢測(cè)算子對(duì)噪聲敏感問(wèn)題,提出了一種基于多尺度多結(jié)構(gòu)元素形態(tài)學(xué)邊緣檢測(cè)算子。該算子在傳統(tǒng)形態(tài)學(xué)邊緣檢測(cè)的基礎(chǔ)上,通過(guò)改變結(jié)構(gòu)元素的形狀和尺度,在很好抑制噪聲的前提下,實(shí)現(xiàn)圖像精細(xì)邊緣提取。MATLAB仿真結(jié)果表明,該邊緣檢測(cè)算子具有更強(qiáng)的去噪能力,定位準(zhǔn)確,保留了更多的圖像細(xì)節(jié),優(yōu)于傳統(tǒng)的邊緣檢測(cè)算子。

  關(guān)鍵詞數(shù)學(xué)形態(tài)學(xué);多尺度多結(jié)構(gòu)元素;邊緣檢測(cè)

0引言

  圖像最基本的特征是邊緣,它包含著大量的圖像信息,因此對(duì)圖像邊緣進(jìn)行完整、精準(zhǔn)的檢測(cè)在圖像處理過(guò)程中有著非常重要的意義。圖像邊緣檢測(cè)就是定位和提取邊緣信息,為圖像分析、目標(biāo)識(shí)別和機(jī)器視覺(jué)等做前期準(zhǔn)備[1]。由于噪聲對(duì)圖像邊緣檢測(cè)帶來(lái)的不利影響,在邊緣檢測(cè)過(guò)程中會(huì)丟失大量的圖像細(xì)節(jié)信息,因此圖像處理的基本問(wèn)題就是在盡可能降低噪聲干擾的同時(shí)提高檢測(cè)精度。

  傳統(tǒng)的邊緣檢測(cè)算子起步比較早,如Roberts算子、Sobel算子、Canny算子等一階微分算子,以及Laplacian算子、LOG(高斯—拉普拉斯)算子等二階微分算子。這些算法大多是在以要處理像素為中心的鄰域中進(jìn)行灰度分析,實(shí)現(xiàn)對(duì)圖像邊緣的提?。?],計(jì)算簡(jiǎn)單,實(shí)時(shí)性好,有良好的邊緣檢測(cè)性。但由于微分運(yùn)算的性質(zhì),對(duì)噪聲比較敏感,抗噪聲性能差,提取的邊緣不夠精細(xì),因此在實(shí)際應(yīng)用中受到限制[3]。近年來(lái),很多學(xué)者提出了基于數(shù)學(xué)形態(tài)學(xué)的邊緣檢測(cè)算法,在此基礎(chǔ)上,本文針對(duì)單一尺度的結(jié)構(gòu)元素容易導(dǎo)致在對(duì)目標(biāo)圖像進(jìn)行邊緣提取時(shí)定位不夠準(zhǔn)確、邊緣信息丟失、去噪效果達(dá)不到預(yù)期要求等問(wèn)題,提出了一種基于多尺度多結(jié)構(gòu)元素的形態(tài)學(xué)邊緣檢測(cè)算法。

1數(shù)學(xué)形態(tài)學(xué)基礎(chǔ)

  數(shù)學(xué)形態(tài)學(xué)是建立在數(shù)學(xué)理論之上的新興學(xué)科,理論基礎(chǔ)是集合論,基本運(yùn)算是像素間的邏輯關(guān)系而非代數(shù)關(guān)系。其基本思想是:用一個(gè)具有一定形狀的結(jié)構(gòu)元素去度量和提取圖像中的對(duì)應(yīng)形狀以達(dá)到對(duì)圖像進(jìn)行分析和識(shí)別的目的[4]。

  數(shù)學(xué)形態(tài)學(xué)可以去除目標(biāo)圖像中不相關(guān)的形態(tài)結(jié)構(gòu)屬性,而保留本質(zhì)的結(jié)構(gòu)屬性,達(dá)到簡(jiǎn)化圖像數(shù)據(jù)的目的。目前,數(shù)學(xué)形態(tài)學(xué)已廣泛應(yīng)用于機(jī)器視覺(jué)、顯微圖像分析、醫(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對(duì)灰度圖像f的形態(tài)學(xué)運(yùn)算如下:

 ?。?)形態(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)

 ?。?)形態(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)

 ?。?)形態(tài)學(xué)開運(yùn)算

  圖像f被b腐蝕后再用b來(lái)膨脹腐蝕結(jié)果,記作fb,定義為:

  fb=f(x,y)Θb(m,n)⊕b(m,n)(3)

  (4)形態(tài)學(xué)閉運(yùn)算

  圖像f被b膨脹后再用b來(lái)腐蝕膨脹結(jié)果,記作f·b,定義為:

  f·b=f(x,y)⊕b(m,n)Θb(m,n)(4)

  1.2形態(tài)學(xué)濾波

  數(shù)字圖像的噪聲主要來(lái)源于圖像的獲取和傳輸過(guò)程,對(duì)圖像邊緣檢測(cè)產(chǎn)生不利的影響。因此在對(duì)圖像進(jìn)行邊緣檢測(cè)之前必須對(duì)其進(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)常組合在一起用來(lái)平滑圖像并去除噪聲[7]。但由于閉運(yùn)算的擴(kuò)展性和開運(yùn)算的反擴(kuò)展性使得兩者單獨(dú)使用時(shí)并不能獲得良好的濾波效果,因此本文采用兩者的均值來(lái)實(shí)現(xiàn)噪聲圖像的平滑處理。假設(shè)經(jīng)過(guò)去噪之后的圖像用Filter來(lái)表示,則公式表示如下:

  Filter1={[(f⊕b)Θb]Θb}⊕b=(f·b) b(5)

  Filter2={[(fΘb)⊕b]⊕b}Θb=(f b)·b(6)

  Filter=12(Filter1+Filter2)

  =1/2[(f·b) b]+[(f b)·b](7)

  2數(shù)學(xué)形態(tài)學(xué)邊緣檢測(cè)算法及其改進(jìn)

  2.1數(shù)學(xué)形態(tài)學(xué)邊緣檢測(cè)算法

  對(duì)上文介紹的形態(tài)學(xué)的基本運(yùn)算進(jìn)行組合,便可得到基本的形態(tài)學(xué)邊緣檢測(cè)算子的數(shù)學(xué)表達(dá)式,設(shè)E為邊緣圖像。

  若采用膨脹運(yùn)算,則邊緣檢測(cè)算子為:

  E1(x,y)=f(x,y)⊕b(m,n)-f(x,y)(8)

  若采用腐蝕運(yùn)算,則邊緣檢測(cè)算子為:

  E2(x,y)=f(x,y)-f(x,y)Θb(m,n)(9)

  若采用膨脹腐蝕復(fù)合運(yùn)算,則邊緣檢測(cè)算子為:

  E3(x,y)=f(x,y)⊕b(m,n)-f(x,y)Θb(m,n)(10)

  由于形態(tài)邊緣檢測(cè)算子都屬于非線性差分算子,因此對(duì)噪聲都比較敏感,而且檢測(cè)出的邊緣與結(jié)構(gòu)元素b緊密相關(guān)。利用數(shù)學(xué)形態(tài)學(xué)腐蝕和開運(yùn)算組成的邊緣檢測(cè)器可以抑制圖像中的峰值噪聲,而利用數(shù)學(xué)形態(tài)學(xué)膨脹和閉運(yùn)算可以抑制圖像中的低谷噪聲。因此對(duì)上述形態(tài)學(xué)邊緣檢測(cè)算子改進(jìn)后得到抗噪型邊緣檢測(cè)算子。

  (1)抗噪膨脹型:

  E4(x,y)=[f(x,y)b(m,n)]⊕b(m,n)-

 ?。踗(x,y)b(m,n)]·b(m,n)(11)

  (2)抗噪腐蝕型:

  E5(x,y)=[f(x,y)·b(m,n)]b(m,n)-

 ?。踗(x,y)·b(m,n)]Θb(m,n)(12)

  (3)抗噪膨脹腐蝕型:

  E6(x,y)=[f(x,y)b(m,n)]⊕b(m,n)-

 ?。踗(x,y)·b(m,n)]Θb(m,n)(13)

  2.2多結(jié)構(gòu)元素邊緣檢測(cè)算法

  上述式(11)~(13)介紹的改進(jìn)的數(shù)學(xué)形態(tài)學(xué)邊緣檢測(cè)算子可以很好地去除噪聲和保持邊緣細(xì)節(jié),很大程度上減少了對(duì)噪聲的敏感程度,但各算子均使用單一結(jié)構(gòu)元素,因此檢測(cè)到的邊緣比較弱、不連續(xù),而且很難檢測(cè)出復(fù)雜形狀的邊緣。文獻(xiàn)[8]針對(duì)以上問(wèn)題提出了基于多結(jié)構(gòu)元素的邊緣檢測(cè)算法,公式如下:

  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)元素,分別對(duì)原圖像和噪聲圖像采用文獻(xiàn)[8]算法進(jìn)行邊緣檢測(cè)。仿真試驗(yàn)結(jié)果如圖1所示。

001.jpg

  上圖中,(a)為原圖像,(b)、(c)、(d)分別為采用文獻(xiàn)[8]的檢測(cè)算法對(duì)原圖像、密度0.02的噪聲圖像、密度為0.05的噪聲圖像提取邊緣的結(jié)果。對(duì)于文獻(xiàn)[8]提出的多結(jié)構(gòu)元素的邊緣檢測(cè)算法,b1、b2、b3均采用單一尺度的結(jié)構(gòu)元素。由仿真結(jié)果可以看出,圖像沒(méi)有添加椒鹽噪聲時(shí),檢測(cè)到的圖像邊緣清晰,保留了圖像的邊緣細(xì)節(jié),當(dāng)添加噪聲之后,雖檢測(cè)出的圖像邊緣較平滑,但圖像中混有噪聲點(diǎn),并且通過(guò)仿真試驗(yàn)可知隨著噪聲密度的增大,邊緣圖像中的噪聲點(diǎn)將越來(lái)越多,當(dāng)噪聲點(diǎn)多到一定程度之后,就會(huì)與圖像邊緣粘黏在一起,形成偽邊緣,導(dǎo)致不能準(zhǔn)確地檢測(cè)圖像的輪廓邊緣。

  2.3多尺度多結(jié)構(gòu)元素邊緣檢測(cè)算法

  本文結(jié)合式(13)提出另一種抗噪膨脹腐蝕型邊緣檢測(cè)算子:圖2各算法邊緣檢測(cè)結(jié)果對(duì)比

  E8(x,y)=[f(x,y)·b(m,n)]⊕b(m,n)-

  [f(x,y)b(m,n)]Θb(m,n)(15)

  對(duì)其改進(jìn)得到多結(jié)構(gòu)元素的邊緣檢測(cè)算子:

  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)元素對(duì)圖像進(jìn)行處理,能較好地保護(hù)圖像的細(xì)節(jié),也可以濾除一定尺寸的噪聲;反之,用較大尺寸的結(jié)構(gòu)元素對(duì)圖像進(jìn)行處理時(shí),能濾除較大尺寸的噪聲,但也會(huì)損失更多的圖像細(xì)節(jié)。針對(duì)不同尺度結(jié)構(gòu)元素的優(yōu)缺點(diǎn),本文結(jié)合式(14)、(16)對(duì)文獻(xiàn)[8]的多結(jié)構(gòu)元素邊緣檢測(cè)算子進(jìn)行改進(jìn),提出先用較大結(jié)構(gòu)元素b1和b2對(duì)圖像進(jìn)行開、閉運(yùn)算處理,然后用小尺度結(jié)構(gòu)元素b3對(duì)圖像做膨脹和腐蝕操作。取結(jié)構(gòu)元素b1、b2為不同尺度平坦的圓形結(jié)構(gòu)元素,半徑分別為2和3,b3為R=1的菱形結(jié)構(gòu)元素,得到一種多尺度多結(jié)構(gòu)元素形態(tài)學(xué)邊緣檢測(cè)算子為:

  E(x,y)=1/2{[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)-[f(x,y)Θb1(m,n)⊕b2(m,n)]

  Θb3(m,n)}(17)

3試驗(yàn)分析

  為驗(yàn)證本文提出的基于多尺度多結(jié)構(gòu)元素算法的有效性,將其與Canny邊緣檢測(cè)算法、Sobel邊緣檢測(cè)算法和一般抗噪型邊緣檢測(cè)算法(式(13))進(jìn)行對(duì)比,用MATLAB對(duì)Lenna圖像和添加噪聲的Lenna圖像、Rice圖像進(jìn)行仿真。

  本文圖像邊緣檢測(cè)算法步驟如下:

  (1)輸入Lenna、Rice灰度圖像,添加噪聲(密度為0.05的椒鹽噪聲)。

  (2)用本文式(7)的方法對(duì)加入噪聲的圖像進(jìn)行開—閉濾波運(yùn)算,開、閉運(yùn)算均采用3×3的方形結(jié)構(gòu)元素。

  (3)利用公式(17)對(duì)經(jīng)過(guò)濾波處理后的圖像進(jìn)行邊緣提取。其中,b1和b2分別是半徑為2和3的平坦的圓形結(jié)構(gòu)元素,b3為R=1的菱形結(jié)構(gòu)元素[9]。

  實(shí)驗(yàn)結(jié)果如圖2所示。

002.jpg

  由以上檢測(cè)結(jié)果可以看出,對(duì)于Lenna圖像,無(wú)噪聲情況下,傳統(tǒng)的Sobel算子出現(xiàn)了很多的邊緣斷裂現(xiàn)象,Canny算子檢測(cè)出過(guò)多的邊緣細(xì)節(jié),而一般的抗噪型邊緣檢測(cè)算子(式(13))和本文的算法檢測(cè)的輪廓邊緣清晰,連貫性較好。對(duì)于添加噪聲之后的Lenna圖像,傳統(tǒng)的Sobel與Canny算子檢測(cè)結(jié)果出現(xiàn)很大的噪聲,不能清楚地觀察到圖像邊緣。一般的抗噪型邊緣檢測(cè)算子雖然抵抗噪聲能力比較強(qiáng),但邊緣出現(xiàn)了很多缺口,平滑度達(dá)不到要求。對(duì)于Rice圖像,由于其邊緣輪廓比較簡(jiǎn)單,無(wú)噪聲情況下,幾種檢測(cè)算子都顯示出不錯(cuò)的邊緣檢測(cè)結(jié)果。但添加噪聲之后,Sobel算子已經(jīng)完全不能識(shí)別圖像的邊緣,Canny算子不能準(zhǔn)確地定位圖像輪廓邊緣,產(chǎn)生很多偽邊緣。一般的抗噪型算子邊緣不連貫,出現(xiàn)很多的缺口,平滑度也不夠好。本文提出的算法,不管是對(duì)原圖像還是添加噪聲的圖像,都顯示出很好的邊緣檢測(cè)性能,邊緣定位準(zhǔn)確,輪廓清晰完整,邊緣細(xì)節(jié)更加豐富。分別對(duì)Lenna圖像和Rice圖像的檢測(cè),也充分說(shuō)明了本文檢測(cè)算法的普遍性和實(shí)用性。

4結(jié)束語(yǔ)

  本文針對(duì)傳統(tǒng)的邊緣檢測(cè)算子抗噪能力差的特點(diǎn),從數(shù)學(xué)形態(tài)學(xué)的基本思想出發(fā),通過(guò)對(duì)單一尺寸或形狀結(jié)構(gòu)元素的邊緣檢測(cè)算法分析與改進(jìn),提出了多尺度多結(jié)構(gòu)元素邊緣提取算法,通過(guò)仿真結(jié)果驗(yàn)證,本文算法可在抑制噪聲的同時(shí),有效地提取圖像的邊緣,且提取的邊緣定位精度高,平滑度好,邊緣細(xì)節(jié)保持也比較完整,充分驗(yàn)證了本文算法的優(yōu)越性。

參考文獻(xiàn)

 ?。?] 范立南,韓曉微,王忠石,等. 基于多結(jié)構(gòu)元的噪聲污染灰度圖像邊緣檢測(cè)研究[J]. 武漢大學(xué)學(xué)報(bào)(工學(xué)版),2003,36(3):8690.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。