楊幸芳,張夢文,嚴 凱,郭恩躍
(西安工程大學 電子信息學院,陜西 西安 710048)
圖像在形成和傳輸過程中,不可避免地會引入各種噪聲,脈沖噪聲就是其中最典型的一種.對于脈沖噪聲的檢測與去除,大量學者進行了研究[1-7],但總存在一些不盡如意的地方.如,在脈沖噪聲的檢測方面,文獻[1]以窗口中心像素與其鄰域像素的灰度中值之差與一個指定閾值的大小關(guān)系來檢測脈沖噪聲點,但該文獻自始至終沒有提到該指定閾值的取值及確定方法;文獻[2-3]以窗口中心像素是否是其鄰域像素的灰度極值點作為脈沖噪聲檢測的判據(jù),事實是,脈沖噪聲點可能是其局部鄰域的灰度極值點,而局部鄰域的灰度極值點卻不一定是噪聲點,故該類算法的弊端在于會把非噪聲點判斷為脈沖噪聲點.文獻[4-5]采用了4個方向模板作灰度差分,利用4個灰度差分值中的最小值與給定閾值之間的關(guān)系分離出脈沖噪聲.該算法需要設(shè)定閾值,且不同圖像采用不同的閾值,對一幅圖像,若要達到好的濾波效果,需要反復測試來設(shè)定閾值,所以該算法應用起來并不方便.對于脈沖噪聲的濾除,中值濾波器及其改進算法具有較強的能力,因而得到了廣泛的應用.標準中值濾波器[6]利用了濾波窗口內(nèi)像素灰度的排序信息,用排序后的灰度中值代替窗口中心像素的灰度值,該算法對所有像素一視同仁,沒有考慮濾波窗口內(nèi)各個像素對窗口中心像素的疏密程度,因而濾波效果并不理想.加權(quán)中值濾波器[7]強調(diào)中間點和距離中間點較近的幾個點的作用,其基本原理是將排序后的窗口內(nèi)的各個像素按其對應的權(quán)值復制到相應的次數(shù),然后從這個新的序列中選取中值作為中間點的灰度值.加權(quán)中值濾波器在使用前需要人為地選擇權(quán)值,故使用難度較大.中心加權(quán)中值濾波器[8]強調(diào)窗口中心像素的作用,賦予窗口中心像素最高的權(quán)重.若窗口中心像素本身就是噪聲點,賦予它一個更大的權(quán)重只會夸大噪聲的作用,因而這類算法不會取得很好的濾波效果.文獻[9-10]排除了濾波窗口內(nèi)的脈沖噪聲點參與濾波運算,僅利用濾波窗口內(nèi)的有效信號對窗口中心像素進行中值濾波,但該類算法沒有考慮濾波窗口內(nèi)的各個有效信號對窗口中心像素的貢獻程度.文獻[11-12]通過對4個方向的子窗口中值濾波的結(jié)果求加權(quán)和來得到受脈沖噪聲污染的窗口中心像素濾波后的灰度值.在這類算法中,濾波窗口內(nèi)的脈沖噪聲點也參與了濾波運算,且加權(quán)系數(shù)僅由像素間的灰度關(guān)系確定.實際上,窗口鄰域像素對窗口中心像素的貢獻(表現(xiàn)在加權(quán)系數(shù)上)不僅取決于像素間的灰度關(guān)系,而且還取決于像素間的位置關(guān)系,故這類算法也不能使受脈沖噪聲污染的圖像像素的灰度得到較好的還原.
本文依據(jù)脈沖噪聲的孤立性以及灰度奇異性特點,提出了一種多數(shù)差異性脈沖噪聲檢測算法.為了濾除檢測到的脈沖噪聲,又提出了一種改進的加權(quán)中值濾波算法,該算法采取了兩種方法來改善加權(quán)中值濾波器的性能.實驗結(jié)果表明,本文提出的算法不僅可以準確檢測與濾除圖像中的脈沖噪聲,而且還可以較好地保護圖像的細節(jié),較傳統(tǒng)的加權(quán)中值濾波器具有更優(yōu)良的性能.
脈沖噪聲具有這樣的特點:(1)只對部分像素造成污染,即存在孤立性;(2)噪聲像素的灰度值要么遠大于其周圍鄰域的像素灰度值,要么遠小于其周圍鄰域的像素灰度值.根據(jù)這些特點,本文提出了如下的脈沖噪聲檢測算法:若某像素與其鄰域多數(shù)像素在灰度上都具有明顯差異,則可認為該像素受到了脈沖噪聲的污染,但這樣確定的脈沖噪聲不乏包含邊緣點,因此根據(jù)邊緣結(jié)構(gòu)特征,構(gòu)建了4個方向模板來剔除偽噪聲,具體步驟如下:
用 3×3 的窗口在圖像上滑動,設(shè)(i,j)為當前像素(窗口中心像素)坐標,{(i+s,j+t)|s,t=-1,1}為其鄰域像素坐標,f(i,j),f(i+s,j+t)分別為(i,j)及(i+s,j+t)對應的灰度值.若窗口中心像素與其鄰域像素的灰度差(正的,取絕對值)大于給定閾值dij,則認為窗口中心像素與其鄰域像素在灰度上具有顯著差異,用ci,j(s,t)來標記.dij為灰度差異性閾值,定義為

(1)
ci,j(s,t)為灰度差異性標記,若兩像素具有明顯的灰度差異性,則標記為1,否則標記為0,即

(2)
求當前窗口內(nèi)標記為1的個數(shù):

(3)
顯然,N(i,j)越大,反映窗口中心像素與其鄰域越多的像素具有灰度差異性,那么窗口中心像素被脈沖噪聲污染的可能性就越大.若N(i,j)≥4,則認為窗口中心像素可能受到了脈沖噪聲的污染.由于當窗口中心像素反映圖像細節(jié)時,也可能滿足以上條件,故還需進一步確定(i,j)處像素的身份.文獻[5]采用4個方向的卷積模板來檢測脈沖噪聲,本文采用類似的方法,用4個方向模板從疑似噪聲中剔除偽脈沖噪聲.0°,45°,90°,135°的方向模板如圖1所示.

圖1 4個不同方向的模板
以疑似脈沖噪聲點為窗口中心像素,采用圖1所示各模板,將窗口中心像素分別與沿不同方向的相鄰像素作灰度差分,得到4個灰度差分值,記作d1,d2,d3,d4.
令dmin為最小的灰度差分值,即
dmin=min(d1,d2,d3,d4).
(8)

噪聲檢測之后,圖像中的點分為脈沖噪聲點和非脈沖噪聲點.對于非脈沖噪聲點仍保留其原有的灰度值不變,而對于脈沖噪聲點(M(i,j)=1的圖像像素),提出了一種改進的加權(quán)中值濾波算法將其濾除.
受脈沖噪聲污染的像素,其本身就具有灰度奇異性,即這些像素已經(jīng)不能真實地反映物體的成像,若讓這些像素參與濾波運算,顯然不能很好地恢復受污染像素的灰度,因此采用濾波窗口內(nèi)的有效信號對窗口中心像素進行濾波,能更真實地反映像素的灰度.
設(shè)Nij表示M(i,j)=1對應的像素點,即脈沖噪聲點,W[Nij]表示對Nij作加窗操作,S(W[Nij])表示以Nij為窗口中心像素的濾波窗口內(nèi)的非噪聲點,稱其為有效信號,f(S(W[Nij]))表示有效信號對應的灰度.Med(f(S(W[Nij])))表示取有效信號灰度的中值.由中值濾波的思想可知,窗口中心像素具有與Med(f(S(W[Nij])))相同的灰度.
一般認為,窗口中心像素與其鄰域像素之間存在著很大的關(guān)聯(lián)性,這包含兩層含義:灰度關(guān)聯(lián)性和位置關(guān)聯(lián)性.關(guān)于中值濾波的許多算法[13-14]基本上都是依據(jù)灰度關(guān)聯(lián)性實現(xiàn)的.事實上,灰度關(guān)聯(lián)是像素關(guān)聯(lián)的必要條件,而不是充分條件,灰度關(guān)聯(lián)、位置亦關(guān)聯(lián)才是像素關(guān)聯(lián)的充分必要條件.因此應該綜合灰度關(guān)聯(lián)信息和位置關(guān)聯(lián)信息對有效信號進行一個關(guān)聯(lián)度排序,這樣才能得到最接近真實值的窗口中心像素的灰度.
設(shè)(i,j)為脈沖噪聲Nij所處位置,s,t為以Nij為中心的鄰域范圍限定參數(shù),對于3×3的濾波窗口,s,t的取值范圍分別為-1≤s≤1,-1≤t≤1.理論上,位置越相近,灰度亦越相近的兩個像素具有越大的關(guān)聯(lián)性,即關(guān)聯(lián)度與灰度差以及像素間的距離成反比,為此本文定義了如下的關(guān)聯(lián)度系數(shù)
w(s,t)=1/{[1+x(s,t)]y(s,t)},(s,t不同時為0).
(9)

從式(9)看到,w(s,t)與x(s,t)以及y(s,t)成反比,即灰度差越小,關(guān)聯(lián)度越大,距離越近,關(guān)聯(lián)度也越大.為了避免灰度差為零時,關(guān)聯(lián)度無窮大,在w(s,t)的分母上x(s,t)的前面加1,這樣,當灰度差x(s,t)=0時,w(s,t)的取值取決于y(s,t),且反比于y(s,t).此外,由于有效信號是窗口中心像素的鄰域像素,故s,t不可能同時為0,從而y(s,t)≠0.
計算濾波后窗口中心像素的灰度為
g(i,j)=∑w(s,t)f(i+s,j+t)/∑w(s,t).
(10)
本文以512×512×8bits的“Lena” 圖像作為標準測試圖像,選擇歸一化均方誤差(NMSE)和峰值信噪比(PSNR)[15]作為客觀評價指標,以濾波效果圖作為主觀評價標準,比較不同程度脈沖噪聲干擾下本文算法與加權(quán)中值濾波器(WMF)以及中心加權(quán)中值濾波器(CWMF)的濾波性能.NMSE和PSNR的定義分別為
(11)

(12)
其中f(i,j)和g(i,j)分別表示濾波前后圖像中像素的灰度值,max(f(i,j))表示f(i,j)的最大值,MN表示大小為M×N的圖像的總像素數(shù).

表1 各種算法去噪性能比較
限于篇幅,本文僅給出p=10%,20%,30%,40%時幾種算法的去噪性能指標(表1)以及p=20%和p=40%時幾種算法的濾波效果圖.

(a) 原圖像 (b) 噪聲圖像 (c) WMF濾波 (d) CWMF濾波 (e) 本文算法濾波圖2 含20%脈沖噪聲的Lena圖像降噪視覺效果比較

(a) 原圖像 (b) 噪聲圖像 (c) WMF濾波 (d) CWMF濾波 (e) 本文算法濾波圖3 含40%脈沖噪聲的Lena圖像降噪視覺效果比較
從實驗結(jié)果可以看出,本文算法去噪后的圖像較利用其它兩種算法去噪后的圖像具有更小的均方誤差和更大的峰值信噪比,這說明本文算法具有更好的去噪性能.但是,當噪聲密度達到40%時,本文算法的濾波效果已不甚理想,對于噪聲密度大于50%的圖像,本文算法的濾波效果比較差,這將是進一步需要研究解決的問題.
基于脈沖噪聲特點,依據(jù)脈沖噪聲與其鄰域多數(shù)像素在灰度上具有顯著差異的特點檢測出圖像中可能存在的脈沖噪聲,然后以檢測到的疑似脈沖噪聲為當前像素,提供了4個方向模板來進一步的區(qū)分、確認脈沖噪聲.之后,以檢測到的脈沖噪聲為被處理像素,依據(jù)鄰域內(nèi)圖像像素的位置關(guān)聯(lián)性和灰度關(guān)聯(lián)性,提出了一種改進的加權(quán)中值濾波算法.該算法取濾波窗口內(nèi)非脈沖噪聲點的灰度加權(quán)平均值作為窗口中心像素濾波后的灰度值,由于加權(quán)系數(shù)的選擇綜合考慮了像素間的位置關(guān)聯(lián)性和灰度關(guān)聯(lián)性,因而取得了較好的濾波效果.
參考文獻:
[1] MAMTA Juneja,RAJNI Mohana.An improved adaptive median filtering method for impulse noise detection[J].International Journal of Recent Trends in Engineering,2009,1(1):274-278.
[2] 王紅梅,李言俊,張科.基于極值檢測的圖像濾波算法[J].激光與紅外,2007,37(10):1117-1119.
[3] 楊輝,唐建鋒,楊利容,等.基于中值濾波和維納濾波的圖像混合噪聲濾波研究[J].衡陽師范學院學報,2011,32(6):52-55.
[4] WANG S S,WU C H.A new impulse detection and filtering method for removal of wide range impulse noises[J].Pattern Recognition,2009,42(9):2194-2202.
[5] 王建勇,周曉光,廖啟征.一種基于中值-模糊技術(shù)的混合噪聲濾波器[J].電子與信息學報,2006,28(5):901-904.
[6] I Pitas, A N Venetsanopoulos. Order statistics in digital image processing[J].Proc IEEE,1992,80(12):1893-1921.
[7] D R K Brownrigg.The weighted median filter[J].Commun Ass ComPut Maeh,1984,27(8):807-818.
[8] 金良海,熊才權(quán),李德華.自適應型中心加權(quán)的中值濾波器[J].華中科技大學學報,2008,36(8):291-294.
[9] 譚筠梅,王履程,魯懷偉.一種有效去除圖像中脈沖噪聲的濾波算法[J].蘭州交通大學學報,2011,30(1):18-21.
[10] 聶真真.基于脈沖噪聲點檢測的中值濾波改進算法[J].武漢理工大學學報:信息與管理工程版,2012,34(3):278-280.
[11] 張旭明,徐濱士,董世運.用于圖像處理的自適應中值濾波[J].計算機輔助設(shè)計與圖形學學報,2005,17(2):295-299.
[12] 關(guān)新平,趙立興,唐英干.圖像去噪混合濾波方法[J].中國圖象圖形學報,2005,10(3):332-337.
[13] 李迅波, 蔣東升,王振林.梯度相似性的椒鹽圖像加權(quán)中值濾波算法[J].電子科技大學學報,2012,41(1):114-119.
[14] 王芳,滿益云. 基于模糊中值濾波的椒鹽噪聲去除方法[J].模糊系統(tǒng)與數(shù)學,2012,26(1):166-174.
[15] 劉勍,溫志賢,楊筱平,等.現(xiàn)代數(shù)字圖像噪聲濾除技術(shù)及其評價[J].自動化與儀器儀表, 2012(2):146-148.