(江南大學 信息工程學院 江蘇 無錫 214122)
摘 要:提出了一種針對圖像脈沖噪聲進行檢測,并根據檢測結果利用中值濾波濾除脈沖噪聲的方法。該方法將含有脈沖噪聲的子圖像樣本空間,通過核函數映射成為高維空間中的一個超球體,計算該球體半徑R及對應的球心向量a。對于測試樣本,比較其到超球體球心的距離d與球體半徑R兩者之間的關系,若兩者差的絕對值小于某一閾值,則不存在噪聲,反之存在噪聲。采用中值濾波方法,對檢測到的噪聲點進行濾除。與其他算法相比,提出的算法對噪聲的判斷更加準確,濾除噪聲的方式更加合理,適用的圖像范圍更加廣泛,具有更好的濾波性能。
關鍵詞:脈沖噪聲; 噪聲檢測; 核函數; 一類分類方法; 中值濾波
中圖分類號:TP391.41文獻標志碼:A
文章編號:1001-3695(2009)05-1994-03
Image median filtering algorithm based on impulse noise detection
TONG Cheng WANG Shi-tong
(College of Information Engineering of Technology Jiangnan University Wuxi Jiangsu 214122 China)
Abstract:The paper proposed an algorithm that removes the impulse noise in an image by median filtering on the basis of the impulse noise detection result.It first mapped the sub image sample space mixing with impulse noise into a supersphere of multidimensions by kernel function,then computed the radius R of the sphere and the vector of sphere center a.Compared the radius R with the distance that the test sample and sphere center a.If the absolute value of them subtracting was less than a threshold,then inexist noise contrarily exist noise.The median filtering was used to remove the noise. Compareing with the others algorithms,it could verdict accurately the impulse noise much more,the mode filtering noise was more reasonable,the images range applicability was morebroad,so,it holded better filtering performance.
Key words:impulse noise; noise detection; kernel function; one-class classification; median filter(MF)
0 引言
數字圖像是許多科學領域獲取信息的重要來源,如生物學、醫學以及天文學等[1]。但是實際采集到的圖像往往會因為圖像采集系統、傳輸媒介及成像系統等的不完善而引入不同程度的噪聲,所以有效的噪聲清除工作便成為圖像處理中非常關鍵的一環,接下來的許多工作(如邊緣檢測、圖像分割、特征識別等)都在很大程度上依賴于噪聲去除的好壞[2]。當圖像在編碼和傳輸中經過含噪聲的線路或被電子感應噪聲所污染時,其中使得圖像降質的噪聲主要是椒鹽噪聲(即正負脈沖噪聲)。
濾除噪聲的主要方法是進行圖像濾波,對圖像濾波的要求是既要去除圖像中的噪聲,又要保持圖像的細節。常用的濾波算法中,均值濾波、中值濾波(MF)和自適應濾波(AMF)使用較廣[3,4]。當噪聲污染的概率較小時,中值濾波抑制噪聲的能力優于均值濾波;而當噪聲污染的概率較大時,均值濾波抑制噪聲的能力優于中值濾波。中值濾波對噪聲密度低于0.2的圖像比較有效。當噪聲密度高于0.2時,可以使用自適應濾波對圖像噪聲進行濾除。但是常用的濾波算法在對噪聲圖像進行濾波的同時,會模糊圖像的細節邊緣,使圖像的一些重要信息丟失。本文提出一種新的基于圖像脈沖噪聲檢測的中值濾波方法,它可以有效地檢測和去除噪聲點,保持圖像原始信息不被破壞。與其他算法相比,本文提出的算法對噪聲的判斷更加準確,濾除噪聲的方式更加合理,適用的圖像范圍更廣,具有更好的濾波性能。
1 一種新的圖像噪聲檢測算法
為了在濾除脈沖噪聲的同時能夠保留圖像的細節,本文提出了一種新的圖像脈沖噪聲檢測算法——基于一類分類算法原理的圖像脈沖噪聲檢測技術。使用這種方法對噪聲圖像進行降噪處理,能有效地保留圖像的細節。
1.1 算法的提出
一類分類方法也稱為數據描述,是一類特殊的分類方法,用于描述現有數據的特征,并對新數據進行判斷,是否屬于原先數據所確定的類別。一類分類方法目前常用于模式分類、知識發現等領域。一類分類方法用于圖像噪聲檢測,能有效地解決降噪與保留圖像細節之間的矛盾問題。一類分類問題的一種直接方法就是用一個具有最小體積的超球體將樣本集中的全體樣本包含起來[5]。對于樣本集:
X={X1,X2,X3,…,Xn}(1)
設將樣本集中全體樣本完全包圍所對應的最小球體的半徑為R,對應的球心向量為a ,則R、a滿足如下優化方程:
min Q(R)=R2(2)
s.t.R2-(Xi-a)T(Xi-a)≥0; i=1,2,3,…,n(3)
由式(3)和(4)建立Lagrange 函數:
L(R,a,α)=R2-∑ni=1αi{R2-(Xi-a)T(Xi-a)}(4)
s.t.αi≥0; i=1,2,3,…,n(5)
考慮到L(R,a,α)對R、a取極小,因此對式(5)關于R、a求偏微分,并令它們為0,即
L/R=2R-2R∑ni=1αi=0(6)
L/a=∑ni=1αi(2Xi-2a)=0(7)
由上面兩式得
∑ni=1αi=1(8)
a=∑ni=1αiXi(9)
將式(9)和(10)代入(5),稍作變換,即得優化方程:
max L=∑ni=1αi(Xi×Xi)-∑ni=1 ∑nj=1αiαj(Xi×Xj)(10)
s.t.∑ni=1αi=1(11)
αi≥0; i=1,2,3,…,n(12)
與支持向量機類似,根據KKT 條件,α中只有部分αi>0,正是與這部分αi相對應的樣本點決定了封閉超球體的半徑和球心。為與支持向量(support vector SV)相區別,將這些樣本點稱為支持對象(support object SO)。
由式(12)獲得系數αi后,即可由式(10)獲得球心向量a,進一步任選一支持對象Xi,由式(14)得到半徑R :
R2-(Xi-a)T(Xi-a)=0(13)
對于任一待測定樣本Z,檢測它到球心a的距離,令
f(Z)=(Z-a)T(Z-a)=(Z-∑ni=1αiXi)T(Z-∑ni=1αiXi)=(Z×Z)-2∑ni=1αi(Z×Xi)+∑ni=1∑nj=1αiαj(Xi×Xj)(14)
設Xs為任一支持對象,則可采用式(15)判斷樣本Z 是屬于原有類別,還是新類別。
‖f(Z)-f(Xs)‖2≤ε 屬于原有類別
‖f(Z)-f(Xs)‖2ε 屬于新的類別(15)
1.2 算法的改進
由式(12)求得的超球體形式單一,且可能范圍過大,往往不能準確地反映實際數據的分布特征。為此,在式(11)中引入核函數:
(Xi×Xj)→K(Xi,Xj)(16)
此時與式(11)對應的優化方程為
max L=∑ni=1αiK(Xi,Xi)-∑ni=1 ∑nj=1αiαjK(Xi,Xj)(17)
約束條件不變。特別地,選擇高斯徑向基核函數:
K(x,y)=exp(-‖x-y‖2/σ2)(18)
有K(Xi,Xi)=1,結合式(12)(18)變換為
max L=1-∑ni=1 ∑nj=1αiαjK(Xi,Xj)(19)
引入核函數后,與式(15)對應的判別函數為
f(Z)=K(Z,Z)-2∑ni=1αiK(Z,Xi)+∑ni=1 ∑nj=1αiαjK(Xi,Xj)(20)
判別式不變,仍為式(16)。
2 算法設計與實現
在脈沖噪聲圖像中檢測噪聲點,可以用一類分類方法作如下處理:首先生成一個3×3的滑動窗口矩陣,這個窗口矩陣可以在整個圖像上從上到下、從左到右滑動。在窗口矩陣每次移動的過程中,選取窗口矩陣的九個點作為訓練樣本:X={X1,X2,…,X9},然后使用高斯核函數把這些樣本訓練生成球心為a,半徑為R的超球體。接下來用式(20)對測試樣本窗口矩陣中心點Z,檢測它到球心a的距離f(Z),根據f(Z)與f(Xs)之間的關系,用判別式(15)檢測窗口矩陣的中心點是否為噪聲點。如果測試結果中有大于設置的正閾值ε,斷定測試樣本窗口矩陣中心點Z為噪聲;如果測試結果小于設置的正閾值ε,可認為此窗口矩陣中沒有噪聲。在每次檢測到噪聲時,使用中值濾波方法[6]對窗口矩陣子圖像進行濾波,并將濾波后的結果添加到一個新的與原圖像相同大小的矩陣中。反復迭代這一過程,直到處理完整個圖像。
3 實驗及性能評價
在PC P4 T2310 1.86 GHz,2 GB RAM,Inte182865G圖形卡的計算機上,以MATLAB 7.0作為開發環境,實現了本文提出的噪聲圖像中的噪聲檢測及降噪。從實驗結果來看,文中提出的方法是有效和理想的。
本文對醫學器官圖像[7,8]、硬幣圖像、Lena圖像進行處理,如圖1所示。其中,(a)為原始圖像,對原始圖像加入20%的脈沖噪聲后得到噪聲圖像(b)。對于噪聲圖像,通過上述的算法,對其進行降噪處理。這里生成一個3×3的滑動窗口矩陣,在噪聲圖像中從上到下、從左到右滑動,可以得到不同的子圖像。在每次的移動過程中,均會得到九個像素點的信息。在這里取每個像素點的三個屬性作為訓練樣本X={X1,X2,…,X9},可以生成一個9×3的矩陣,每行分別代表一個像素點的橫坐標、縱坐標、灰度值,即訓練樣本X和測試樣本Z可變為
X={xi,yi,gray(xi,yi)};i=1,2,…,9Z(Zx,Zy,gray(Zx,Zy))
接下來對噪聲圖像,通過運用一類分類算法,對訓練樣本進行訓練,此時取噪聲圖像的前三行作為訓練樣本,從第四行開始全部作為測試樣本。
本文以醫學器官圖像、硬幣圖像、Lena圖像、米粒圖像為例,對本文方法的去噪效果通過客觀評價標準與標準中值濾波和均值濾波方法進行比較實驗。評價標準為峰值信噪比(PSNR),即
MSE=(∑Ni=1 ∑Mj=1‖F(i,j)-G(i,j)‖2)/(NM)
RMSE=MSE
PSNR=20 log{255/RMSE}
其中:M和N分別為圖像的行與列;MSE為均方差。
器官圖像、硬幣圖像、Lena圖像、米粒圖像本文濾波與中值濾波輸出信噪比比較如表1~4所示。對應的濾波圖像及其實驗結果如圖2~4所示。
從表1~4及對應的濾波圖像效果來看,本文提出的脈沖噪聲檢測算法比標準中值濾波效果更好,在濾波脈沖噪聲的同時能很好地保留圖像的細節。
4 結束語
通過建立核函數,具有對噪聲的識別更加準確的特點,更能準確地反映實際數據的分布特征。本文噪聲檢測方法與標準中值濾波相比,既可有效地濾除脈沖噪聲,又可以較好地保持圖像邊緣細節。說明了該方法的有效性,對數字圖像處理的研究工作有重要意義。
參考文獻:
[1]姚天任,孫洪.現代數字信號處理[M].武漢:華中理工大學出版社,2002.
[2]阮秋琦.數字圖像處理學[M].北京:電子工業出版社,2001.
[3]CASTLEMAN K R.Digital image processing[M]. [S.l.]:Prentice Hall,1996.
[4]GONZALEZ R C WOODS R E. Digital image processing[M]. Englewood Cliffs NJ: Prentice Hall 1992:241-243.
[5]李煥榮,林健.基于一類分類的聚類方法及其應用[J].計算機工程,2005 10(5):36-38.
[6] ARAKAWA K. Median filter based on fuzzy rules and its application to image restoration[J].Fuzzy Sets and Systems,1996 77(1): 3-13.
[7]TOPRAK A GLER I. Impulse noise reduction in medical images with the use of switch mode fuzzy adaptive median filter[J]. Digital Signal Processing,2007 17(4):711-713.
[8]TOPRAK A GLER I. Suppression of impulse noise in medical images with the use of fuzzy adaptive median filter[J].Journal Medical Systems 2006 30(6):465-471.
[9]孫兆林.MATLAB 6.x圖像處理[M].北京:清華大學出版社,2002.