周萌萌,任子暉,周旋旋
(1.中國礦業(yè)大學(xué) 信息與電氣工程學(xué)院,江蘇 徐州221008;2.徐州機(jī)電高等職業(yè)技術(shù)學(xué)校,江蘇 徐州221011)
圖像在傳輸和形成過程中不可避免地會產(chǎn)生各種噪聲,這就降低了圖像的清晰度。因此,圖像去噪是圖像處理過程的重要部分。去除噪聲的濾波器分為線性和非線性,根據(jù)噪聲的不同特點(diǎn)選擇合適的濾波器。而椒鹽噪聲的特點(diǎn)是:一種是鹽噪聲(salt noise),另一種是胡椒噪聲(pepper noise)。鹽=白色,椒=黑色。前者是高灰度噪聲,后者屬于低灰度噪聲。一般兩種噪聲同時出現(xiàn),呈現(xiàn)在圖像上就是黑白雜點(diǎn)。所以針對椒鹽噪聲的常采用的是中值濾波算法[1]。傳統(tǒng)的中值濾波是采用n×n 的模板對當(dāng)前像素進(jìn)行濾波,當(dāng)前像素點(diǎn)的灰度值用選用的模板內(nèi)的像素點(diǎn)的灰度值的中值替代,此方法雖然能濾去部分噪聲,但是卻改變了圖像像素的灰度值,模糊了圖像的細(xì)節(jié)。因此近年來許多學(xué)者提出了諸多的改進(jìn)方法,如開關(guān)中值(Switching Median,SM)濾波[2-4]改進(jìn)的自適應(yīng)的中值濾波[5-12]等,這些算法雖然取得了一定的濾波效果,但是還存在許多的局限性和不足。
圖像去噪一方面是選擇合適的濾波器,另一方面是要合理地檢測出噪聲,從而更好地保護(hù)圖像的細(xì)節(jié)。文獻(xiàn)[7]利用窗口3×3,判斷是否是疑似噪聲點(diǎn),然后判斷疑似噪聲點(diǎn)是否是7×7 窗口的噪聲點(diǎn),最后確定準(zhǔn)噪聲點(diǎn)。文獻(xiàn)[8]是通過人為設(shè)定的閾值,當(dāng)窗口的像素點(diǎn)的灰度值與當(dāng)前像素點(diǎn)的灰度值的差值超過設(shè)定的閾值,并計(jì)算出超出的像素點(diǎn)的個數(shù),根據(jù)超出個數(shù)的大小來調(diào)節(jié)濾波窗口,從而達(dá)到濾波效果。文獻(xiàn)[9]是首先采用3×3 的模板判斷是否是疑似噪聲點(diǎn),再利用像素灰度值序列中兩段子序列斜率的差值及模板區(qū)域內(nèi)像素灰度值的均值自適應(yīng)地判斷疑似噪聲點(diǎn)是否是真的噪聲點(diǎn)。文獻(xiàn)[10]采用0°,45°,90°,135°方向的模板進(jìn)行噪聲的檢測,降低圖像的失真度。文獻(xiàn)[11]首先是采用椒鹽噪聲的0 或1 的特點(diǎn)判斷噪聲點(diǎn),再利用可疑噪聲點(diǎn)與鄰域內(nèi)其他像素點(diǎn)之間相關(guān)性的大小確定準(zhǔn)噪聲點(diǎn)。這些方法在噪聲的檢測方面取得了一定的效果,從而達(dá)到更好地濾波效果。
本文針對自適應(yīng)的中值濾波(RAMF),提出了一種基于窗口的自適應(yīng)的中值濾波算法。首先,根據(jù)椒鹽噪聲的特點(diǎn)在窗口3×3 中判斷是否為極值點(diǎn),即疑似噪聲點(diǎn),再在窗口5×5 和窗口7×7 判斷是否是準(zhǔn)噪聲點(diǎn),若是準(zhǔn)噪聲點(diǎn),根據(jù)噪聲的大小,選擇合適的最大濾波窗口半徑進(jìn)行中值濾除。若不是,則原值輸出。
1.1.1 噪聲點(diǎn)的初級檢測
椒鹽噪聲是圖像噪聲中的一類,它是由圖像傳感器,傳輸信道,解碼處理等產(chǎn)生的黑白相間的亮暗點(diǎn)噪聲。椒鹽噪聲的表現(xiàn)形式一般是像素點(diǎn)灰度值的最大值或者最小值。如圖1 所示,根據(jù)椒鹽噪聲的特點(diǎn)可以通過窗口3×3 來判斷當(dāng)前像素點(diǎn)是否是疑似噪聲點(diǎn)。
圖1 窗口3×3 鄰域像素值
設(shè)W3min和W3max是窗口3×3 的像素點(diǎn)灰度值的最小值和最大值,fi,j為窗口3×3 的中心像素的灰度值,若fi,j等于窗口3×3 像素點(diǎn)的最大值和最小值,則fi,j為疑似噪聲點(diǎn),否則,fi,j為信號點(diǎn)。
1.1.2 噪聲點(diǎn)的二級檢測
窗口3×3 檢測出的噪聲點(diǎn)不一定就是真正的噪聲點(diǎn),如果把檢測出的疑似噪聲點(diǎn)都用中值替代,勢必會使圖像的細(xì)節(jié)丟失。因此,為了保留圖像的更多地細(xì)節(jié),需要更精確地檢測圖像中的噪聲。尤其是現(xiàn)代生活中,人們接觸到的圖像大多都是內(nèi)容和色彩很豐富,所以,噪聲的檢測方法對圖像去噪是至關(guān)重要的。本文采用5×5 和7×7 的窗口對疑似噪聲點(diǎn)進(jìn)行二次檢測,標(biāo)記為W5和W7。W5min和W5max是窗口5×5 的像素點(diǎn)灰度值的最小值和最大值,而W7min和W7max是窗口7×7的像素點(diǎn)灰度值的最小值和最大值。如果fi,j等于W5min和W7min或者W5max和W7max,則疑似噪聲點(diǎn)fi,j就是準(zhǔn)噪聲點(diǎn);否則,疑似噪聲點(diǎn)fi,j是信號點(diǎn)。
通過表1 中的數(shù)據(jù)對比顯示,當(dāng)隨著噪聲密度的增加,RAMF 和本文方法的對噪聲的漏檢率和誤檢率都越來越小,表明檢測噪聲的效果也越來越好。但是就本文提出的方法來說,隨著噪聲密度的增大,漏檢率減小,但是沒有RAMF 的漏檢率小,但是誤檢率卻明顯優(yōu)于RAMF,綜合以上的效果,本文方法在噪聲檢測方面優(yōu)于RAMF。
表1 RAMF 和本方法的漏檢率和誤檢率
對含有噪聲的圖像,最大濾波窗口半徑根據(jù)圖像中噪聲密度的大小PK 來確定,當(dāng)PK 較小時,選擇合適的較小的最大濾波窗口半徑,確保在去除噪聲的同時保留了更多細(xì)節(jié);當(dāng)PK 較大時,選擇合適的較大的最大濾波窗口半徑,加強(qiáng)對圖像的去噪能力。根據(jù)以上原則,最大濾波窗口半徑LK 的選擇如下
在同一噪聲密度情況下,選取不同的最大濾波半徑,通過觀察對歸一化的均方誤差(MSE)和峰值信噪比(PSNR)的值,不同的最大濾波半徑對應(yīng)不同的歸一化均方誤差(MSE)和峰值信噪比(PSNR),當(dāng)歸一化均方誤差(MSE)較小時,峰值信噪比(PSNR)較大時,選擇最佳的最大濾波半徑。采用此方法,對圖像進(jìn)行實(shí)驗(yàn)得出以上的結(jié)論,當(dāng)噪聲密度小于0.3時,選擇最大濾波半徑為10;當(dāng)噪聲密度處于0.3 和0.5 之間時,選取的最大濾波半徑為20;當(dāng)噪聲密度介于0.5 和0.8之間時,用最大濾波半徑30 進(jìn)行濾波;當(dāng)噪聲密度大于0.8時,選取最大濾波半徑40,加強(qiáng)去噪能力。
自適應(yīng)的中值濾波算法流程總體上可以概括為以下:
1)對圖像區(qū)域的所有像素點(diǎn)用3×3 的窗口進(jìn)行檢測,若像素點(diǎn)的灰度值等于窗口3×3 的極大值或者極小值,則此像素點(diǎn)為疑似噪聲點(diǎn),其他為信號點(diǎn);
2)對第一步確定的疑似噪聲點(diǎn),進(jìn)行進(jìn)一步確認(rèn),當(dāng)疑似噪聲點(diǎn)等于窗口5×5 和窗口7×7 的極大值和極小值,則此疑似噪聲點(diǎn)為準(zhǔn)噪聲點(diǎn),其他為信號點(diǎn);
3)檢測出準(zhǔn)噪聲點(diǎn)以后,再根據(jù)圖像中噪聲密度的大小,選取合適的最大濾波半徑;
4)上述步驟進(jìn)行完成后,對檢測出的準(zhǔn)噪聲點(diǎn)的灰度值用濾波窗口的中值代替輸出,其他信號點(diǎn)原值輸出,從而合成新的圖像。
本文采用主觀和客觀兩種方法對實(shí)驗(yàn)結(jié)果進(jìn)行評價:主觀方法是對圖像濾波后,通過人眼直接觀察出濾波效果;客觀方法是計(jì)算出具體的峰值信噪比(Peak Signal to Noise Ratio,PSNR)和均方誤差(Mean Square Error,MSE)的值,通過比較對圖像濾波效果進(jìn)行評價,參數(shù)定義如下
式中:X(i,j)和Y(i,j)分別為濾波前后的像素灰度值;mn 為處理圖像的大小;max 為濾波前圖像像素點(diǎn)灰度的最大值。
本實(shí)驗(yàn)采用1 幅大小為512×512 的Lena 圖像進(jìn)行結(jié)果驗(yàn)證,圖像灰度級為255。使用MATLAB 2012 對各個算法進(jìn)行仿真分析,包括RAMF、開關(guān)中值濾波[4]、自適應(yīng)中值濾波[13],并與本文算法進(jìn)行比較。
對原始圖像加入30%和70%的噪聲,不同算法的濾波效果如圖2 和圖3 所示。
圖2 30%的噪聲圖及各種算法濾波效果
圖4 顯示了噪聲密度在10%~90%的變化的情況下,各種濾波算法的濾波效果MSE 和PSNR 的曲線圖。
圖3 70%的噪聲圖及各種算法濾波效果
圖4 不同噪聲水平不同算法濾波的PSNR 和NMSE
從圖2、圖3 和圖4 可以得出:在主觀方面,通過圖2 和圖3 可以直接的觀察出在噪聲密度30%情況下,自適應(yīng)濾波方法的濾波效果優(yōu)于開關(guān)濾波,而RAMF 濾波優(yōu)于自適應(yīng)濾波方法,本文方法優(yōu)于RAMF 濾波方法,隨著噪聲密度的增大為70%時,RAMF 的濾波效果最差,本文的濾波效果最好;在客觀方面,通過圖4 的NMSE 圖和PSNR 圖可以觀察出不同的噪聲密度下,參數(shù)的具體數(shù)值,通過4 種濾波方法的數(shù)據(jù)的比較,可以更精確地得出,本文的濾波效果更好,且保護(hù)了更多的圖像細(xì)節(jié)。
通過對濾波效果的影響因素——窗口的分析,本文提出了基于窗口的自適應(yīng)的中值濾波算法,該算法首先是利用混合窗口檢測噪聲,減小了噪聲的誤檢率;然后選擇合適的窗口濾波半徑。仿真實(shí)驗(yàn)結(jié)果表明,無論是在主觀方面還是客觀方面,本文算法在噪聲的濾除和細(xì)節(jié)的保護(hù)方面具有很好的效果。
[1]陳初俠,丁勇,劉櫟莉.去除椒鹽噪聲的自適應(yīng)開關(guān)加權(quán)均值濾波[J].計(jì)算機(jī)工程,2010,36(4):210-212.
[2]蘇鋒,朱旻蕓,楊秋菊.基于自適應(yīng)開關(guān)差值算法的圖像椒鹽噪聲濾波[J].計(jì)算機(jī)應(yīng)用研究,2011,28(2):769-771.
[3]喬坤,郭朝勇,毛東.一種去除椒鹽噪聲的自適應(yīng)開關(guān)中值濾波算法[J].計(jì)算機(jī)應(yīng)用與軟件,2011,28(10):253-256.
[4]曾憲佑,黃佐華,周進(jìn)朝.基于差分分層噪聲檢測的開關(guān)中值濾波算法[J].計(jì)算機(jī)工程與應(yīng)用,2014(14):176-179.
[5]衛(wèi)保國.一種改進(jìn)的自適應(yīng)的中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2008,28(7):1732-1734.
[6]郭海霞,解凱.一種改進(jìn)的自適應(yīng)的中值濾波算法[J].中國圖象圖形學(xué)報(bào),2007,12(7):1185-1188.
[7]黃寶貴,盧振泰,馬春梅,等.改進(jìn)的自適應(yīng)中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2011,31(7):1835-1837.
[8]王歡,王修暉.基于閾值判斷的自適應(yīng)中值濾波算法[J].中國計(jì)量學(xué)院學(xué)報(bào),2011,22(4):382-385.
[9]劉淑娟,趙曄,董蕊,等.基于斜率的自適應(yīng)中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2012,32(3):736-738.
[10]張彩甜.一種紅外圖像顆粒噪聲自適應(yīng)濾波算法[J].紅外技術(shù),2013,35(8):502-506.
[11]張潔玉,王峰.基于鄰域信息的自適應(yīng)中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2014,34(7):2010-2013.
[12]陽建華,鄭瑩娜.一種快速去除高密度椒鹽噪聲的濾波算法[J].電視技術(shù),2014,38(13):14-16.
[13]曾憲佑,黃佐華.一種新型的自適應(yīng)模糊中值濾波算法[J].計(jì)算機(jī)工程與應(yīng)用,2014(17):134-136.