(江南大學 信息工程學院, 江蘇無錫 214122)
摘 要:提出了一種新的彩色圖像脈沖噪聲濾除的方法。該方法充分考慮彩色圖像的顏色信息,結合模糊規則進行檢測。實驗結果顯示,此方法不論對椒鹽脈沖噪聲還是均勻分布的隨機值脈沖噪聲都有較好的濾波效果,比VMF更好地保護了圖像邊緣細節。
關鍵詞:彩色圖像降噪; 模糊濾波; 隸屬度; 模糊規則
中圖分類號:TP391.41 文獻標志碼:A
文章編號:10013695(2009)03119803
Fuzzy detection and filtering of impulse noise for color images
MAN Lihong, WANG Shitong
(School of Information Technology, Jiangnan University, Wuxi Jiangsu214122, China)
Abstract:This paper presented a new color image impulse noise filtering methods. This filtering method took advantage of the full use of the color information and used fuzzy rules for detection. So it was better to retain the sharpening level of the edge. The experimental results show that this method has a better filtering effect to not only salt and pepper pulse noise, but also the random value pulse noise with uniform distribution. Compared with VMF, it has a better protection for the image edge details.
Key words:color image noise reduction; fuzzy filter; membership; fuzzy rules
0 引言
噪聲作用于圖像處理的輸入、采集、處理以及輸出的全過程,特別是圖像在輸入、采集過程中引入的噪聲,會影響到圖像處理的全過程以至輸出結果,也會影響后續的圖像分割、特征提取和模式識別等處理的效果,因此有效地去噪便成為圖像處理過程中非常重要的環節。圖像噪聲的種類有多種,主要類型有脈沖噪聲(包括固定值脈沖噪聲和隨機值脈沖噪聲)、高斯噪聲、乘性噪聲[1]。在圖像生成和傳輸過程中,經常會產生脈沖噪聲,主要表現在成像的短暫停留中,對圖像的質量有較大影響。
計算機技術和數字信息的發展使得彩色圖像處理技術日益重要。傳統的濾波方法有以局部平均法為代表的線性濾波和以中值算法為代表的非線性濾波。脈沖噪聲有很多基于向量的方法,如自適應向量中值濾波(AVMF)[2],這些方法都基于向量中值濾波(VMF)[3]。由于基于向量的方法,將每個像素看成是一個單元,而脈沖噪聲可以存在于像素的任一顏色分量中,如一個3×3的窗口,在極端情況下,如果在27個分量中恰有9個紅色分量被噪聲污染,基于向量的方法就不能夠檢測出噪聲;基于向量的方法另一缺點是噪聲濃度越大,降噪性能越差。
在1965年,L.A.Zadeh提出了模糊集理論,它使視覺和認知科學領域有了重大發展,隨之模糊集理論便應用到圖像處理領域。模糊檢測加權均值算法(FDWM)提出了一種非常有效的椒鹽噪聲消除方法,但對于隨機噪聲的消除效果卻很差。彩色圖像的模糊脈沖噪聲檢測和降噪方法(FIDRMC)[4]使用的迭代技術分別檢測像素的每個分量是不是噪聲點,使用這種分量的不同進行降噪,卻沒有充分考慮顏色分量間的關系。文獻[5]提出了基于模糊規則的新型中值濾波器,該濾波器由模糊規則判別脈沖噪聲的存在與否,而濾波器參數由模糊規則控制,這種濾波器通過訓練來優化設計,使得濾波器輸出的均方誤差最小,表示規則的隸屬函數并不要求事先得到。在文獻[6]中,Choi等人提出了模糊加權均值濾波器,也稱為平均算子濾波器,其性能優于固定權值的方法(如NTM算法),平均算子濾波器可平滑高斯噪聲并有效地保護圖像細節,但對脈沖噪聲的濾波效果較差。本文提出了一種彩色圖像脈沖噪聲模糊檢測濾波器,與傳統的脈沖噪聲濾波器相比較,新濾波器有較好的脈沖噪聲抑制與圖像細節邊緣保護的性能。
1 一種新的彩色圖像脈沖點檢測算法
本章介紹了一種基于模糊集理論的新型脈沖噪聲檢測方法,檢測出彩色圖像像素的各分量屬于無噪聲集的隸屬程度,主要檢測中間像素與其鄰域像素的兩個方面的關系:a)同一顏色通道,中間像素分量與鄰域像素分量的關系;b)某一通道顏色分量的變化與其他兩通道分量變化的關系。
1.1 周圍像素顏色分量對中間像素顏色分量的隸屬度
這里采用RGB顏色空間,設滑動窗口的大小為N×N。其中:N=2C+1,C是自然數。要處理的中間像素用F0=(FR0,FG0,FB0)表示。其中FR0、FG0、FB0 分別表示待處理像素的三種顏色分量的值。以3×3的滑動窗口為例,可以將周圍像素表示為F1~F8(從左到右,從上到下表示),即Fk=(FRk,FGk,FBk),其中:k=1,2,…,8;FR0、FG0、FB0分別表示鄰域內第k個像素的三個顏色分量的值。
計算中間像素與領域像素的相同分量的差值,表示為ΔFRk=|FR0-FR0|,ΔFGk=|FG0-FGk|,ΔFBk=|FB0-FBk|,然后看這個差值是否屬于“小”這個模糊集。采用偏小型隸屬度函數,選擇怎樣的函數呢?對于鄰域內像素分量,希望差值小的賦予較大的隸屬值,隨差值的慢慢增加,隸屬值變化較小,當差值達到一定值時,將賦予較小的隸屬值,同時隨著差值不斷增加,隸屬度的值變化較快,大到一定程度隸屬度的值將賦為0。基于這個特性,選擇了1S型隸屬函數,S型隸屬函數定義如下[7]:
S(X)=0,x≤a2[(x-a)/(r-a)]2,a<x≤(a+r)/21-2[(x-r)/(r-a)]2,(a+r)/2<x≤r1,x>r
則
S1(X)=1-S(X)1,x≤a1-2[(x-a)/(r-a)]2,a<x≤(a+r)/22[(x-r)/(r-a)]2,(a+r)/2<x≤r0,x>r
利用S1函數計算中間像素的分量是否與鄰域內的像素分量相似。其中S1(ΔFRk)、S1(ΔFGk)、S1(ΔFBk)(k=1,2,…,8)分別表示了鄰域內紅色、綠色、藍色分量的關系。由于鄰域內像素可能是噪聲點,在求周圍像素的分量對中間像素的分量總體隸屬水平時,只可考慮差別較小的像素,即函數值較大的K個像素分量。分別將S1(ΔFRk)、S1(ΔFGk)、S1(ΔFBk)三個向量進行降序排列,得到的第j個位置上的值表示為S1(ΔFR(j))、S1(ΔFG(j))、S1(ΔFB(j))。這里使用模糊連接操作中的模糊乘積來計算鄰域內像素分量對中間像素分量的總體隸屬情況,三種分量的隸屬度可表示為
uR=Kj=1S1(ΔFR(j)) uG=Kj=1S1(ΔFG(j)) uB=Kj=1S1(ΔFB(j))
其中:uR、uG、uB分別表示FR0、FG0、FB0與它最近的K個像素的隸屬度。
1.2 不同顏色分量的隸屬度
以上介紹了同一顏色分量的隸屬度計算方法。在RGB顏色空間中,R、G、B三分量有很大的相關性,所以該部分計算某一顏色分量與鄰域內像素的該顏色分量的變化是否隨另外兩個顏色分量的變化而變化,以及相關程度如何;仍然使用1S型隸屬函數。
R與G、R與B,G與B變化的相關程度分別表示為uRGk、uRBk、uGBk。其中k=1,2,…,8。計算公式如下:
uRGk=S1(|S1(ΔFRk)-S1(ΔFGk)|)uRBk=S1(|S1(ΔFRk)-S1(ΔFBk)|)uGBk=S1(|S1(ΔFGk)-S1(ΔFBk)|)
計算鄰域內紅色、綠色、藍色分量的變化相互的總體相關程度時,仍然采取上述方法。分別將uRGk、uRBk、uGBk 三個向量降序排列,得到第j 個位置上的值分別表示為uRG(j)、uRB(j)、uGB(j)。用模糊連接操作的模糊乘積計算該總體隸屬度,計算式如下:
uRG=Kj=1uRG(j)uRB=Kj=1 uRB(j)uGB=Kj=1uGB(j)
1.3 檢測噪聲的模糊規則
判斷像素的紅色分量是不是非噪聲點,首先判斷該像素的紅色分量的值是否與周圍像素的紅色分量的值相似;還要判斷該像素的紅色分量與鄰域像素的紅色分量的差值是否和該像素的綠色、藍色分量與鄰域內其他像素的綠色、藍色分量的差值相似,因為如果中間像素在一種通道情況下與其鄰域像素具有相似性,那么在其他兩種通道情況下中間像素與其鄰域像素也具有這種相似性。
FR0、FG0、FB0是否屬于非噪聲模糊集的計算由下列三個模糊規則定義,其中NFFR0、NFFG0、NFFB0用來表示隸屬于相應模糊集的程度。
規則1 如果uR大AND uRG 大AND uG 大,OR uR大 ANDuRB 大ANDuB 大,那么NFFR0大。
規則2 如果uG大AND uRB 大AND uR 大,OR uG大ANDuGB大AND uB 大,那么NFFG0大。
規則3 如果大uBANDuRB大ANDuR大,OR uB大,AND uGB大,AND uG大,那么NFFB0大。
在模糊邏輯中,可使用乘法計算與操作,用加法計算或操作。
2 脈沖噪聲的濾波過程
所使用的脈沖噪聲消除方法基于最大最小估計方法。該方法根據鄰近像素信息計算像素F0的估計值。下面根據計算該位置上的紅色分量的估計值,介紹該算法的實現過程,用FR0表示像素F0的紅色分量。
small1=min(FR1,FR8);large1=max(FR1,FR8)
small2=min(FR2,FR7);large2=max(FR2,FR7)
small3=min(FR3,FR6);large3=max(FR3,FR6)
small4=min(FR4,FR5);large4=max(FR4,FR5)
Pmax=max(small1,small2,small3,small4)
Pmin=min(large1,large2,large3,large4)
計算FR0的估計值:FR0=(Pmax+Pmin)/2。
最終求像素紅色分量的恢復值時,利用中間像素原紅色分量的值和所求的紅色分量的估計值擬合而得,則該濾波器的輸出用F′R0表示,即
F′R0=NFFR0×FR0+(1-NFFR0)FR0
同上,綠色、藍色顏色分量的濾波輸出可相應表示為
F′G0=NFFG0×FG0+(1-NFFG0)FG0
F′B0=NFFB0×FB0+(1-NFFB0)FB0
3 實驗結果和分析
本文以彩色pepper和baboon圖像為例,通過與向量中值濾波算法做實驗進行比較,可以看到本文的算法對兩種類型的脈沖噪聲(固定值脈沖噪聲和隨機值脈沖噪聲)均有較好的效果。本文采用峰值信噪比(PSNR)和歸正均方誤差(NMSE)兩個性能指標來定性評價濾波后圖像的質量。
彩色圖像性能指標的計算方法如下:
MSE(F′,F)=∑3c=1∑Mi=1∑Nj=1[F(i,j,c)-F(i,j,c)]2/(3MN)
MSE(F′,F)=∑3c=1∑Mi=1∑Nj=1[F(i,j,c)-F(i,j,c)]2/∑3c=1∑Mi=1∑Nj=1F(i,j,c)2
PSNR(F′,F)=10 log10255×255/MSE(F,F);
其中:F代表原始圖像;F′代表濾波后的圖像;M×N代表濾波后圖像的大小。
表1是椒鹽噪聲污染的pepper圖像,分別經過向量中值濾波算法、本文算法濾波后得到的NMSE和PSNR值。表2是隨機值均勻分布脈沖噪聲污染的baboon圖像,分別經過向量中值濾波算法、本文算法濾波后得到的NMSE和PSNR值。
4 結束語
本文方法充分考慮彩色分量之間的相關性,采用一種新的模糊噪聲檢測技術,只對噪聲點濾波,提高了濾波效果。該方法不僅適用于固定值脈沖噪聲,對于噪聲密度較高的隨機值脈沖噪聲也有較好的濾波性能。從實驗結果看出,本文算法在濾除噪聲的同時,能較好地保護圖像的邊緣和細節信息。
參考文獻:
[1]范立南,韓曉徽,張廣淵.圖像處理與模式識別[M].北京:科學出版社,2007.
[2]LUKAC R. Adaptive vector median filtering[J].Pattern Recognition Letters, 2003,24(12):18891899.
[3]BARNI M,CAPPELLINI V,MECOCCI A. Fast vector median filter based on Euclidean norm approximation[J].IEEE Signal Processing Letters, 1994,1(6):9294.
[4]SCHULTE S,DE WITTE V,NACHTEGAEL M, et al. Fuzzy twostep filter for impulse noise reduction from color images[J].IEEE Trans on Image Processing, 2006,15(11):35673578.
[5]ARAKAWA K. Median filter based on fuzzy rules and its application to image restoration[J].Fuzzy Set and System, 1996,77(1):313.
[6]CHOI Y,KRISHNAPURAM R. A robust approach to image enhancement based on fuzzy logic[J].IEEE Trans on Image Processing, 1997,6(6):808825.
[7]黃崇福,阮達.模糊集理論與近似推理[M].武漢:武漢大學出版社,2004.