周玲芳,陳菲
基于斜率差值的自適應(yīng)圖像椒鹽噪聲濾波算法
周玲芳,陳菲
(西南科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,四川綿陽(yáng)621000)
提出了一種基于斜率差值的自適應(yīng)中值濾波算法,以有效去除圖像脈沖噪聲。該算法在經(jīng)典自適應(yīng)中值算法的基礎(chǔ)上,采用斜率差值進(jìn)行噪聲判定。針對(duì)自適應(yīng)中值濾波算法和基于斜率的自適應(yīng)中值濾波算法在噪聲強(qiáng)度較高情況下的不足進(jìn)行了改進(jìn),同時(shí)解決了噪聲塊難以去除的問(wèn)題。實(shí)驗(yàn)結(jié)果表明,該算法能有效去除圖像脈沖噪聲,并較好的保護(hù)圖像細(xì)節(jié)。
斜率差值;中值濾波;噪聲檢測(cè);脈沖噪聲
數(shù)字圖像在采集、轉(zhuǎn)換和傳送過(guò)程中,受到成像設(shè)備或者外界環(huán)境的干擾,造成不同程度的脈沖噪聲污染,在圖像中表現(xiàn)為比較明顯的黑白雜點(diǎn),使得圖像的質(zhì)量下降,影響了圖像的后續(xù)分析和處理。因此噪聲的檢測(cè)和濾除十分有必要,方法主要分為線性濾波和非線性濾波兩大類。線性濾波因其低通性,在濾除噪聲的過(guò)程中容易丟失圖像的細(xì)節(jié)信息;非線性濾波[1-4]在一定程度上克服了線性濾波這一缺點(diǎn),濾波的同時(shí)較好的保留了圖像細(xì)節(jié),具有相對(duì)廣泛的應(yīng)用。非線性濾波中自適應(yīng)的中值濾波算法是在圖像處理方面是去除脈沖噪聲的經(jīng)典算法。
中值濾波不加區(qū)分的將每一個(gè)像素用中值替代,丟失了很多圖像的細(xì)節(jié)信息,造成了圖像的模糊。為此,人們將自適應(yīng)中值濾波算法引入到數(shù)字圖像去噪[1],并提出了系列改進(jìn)的自適應(yīng)中值濾波算法[5-10]等,通過(guò)對(duì)圖像像素點(diǎn)逐一判定,將像素點(diǎn)分為噪聲點(diǎn)和信號(hào)點(diǎn),判定為噪聲的點(diǎn)用模板內(nèi)中值替代,判定為信號(hào)的點(diǎn)保持不變,以減少不必要的細(xì)節(jié)丟失,但是容易將邊緣等一些高頻信號(hào)的點(diǎn)判定為噪聲點(diǎn),造成圖像的邊緣信息丟失。
本文針對(duì)上述改進(jìn)算法的不足之處,結(jié)合椒鹽噪聲的特點(diǎn),提出自己的改進(jìn)方法。算法沿用了自適應(yīng)中值濾波算法的兩層框架,在A層對(duì)中值判定,在B層對(duì)當(dāng)前像素點(diǎn)判定。在對(duì)像素點(diǎn)判定時(shí),采用斜率差值判定法,在準(zhǔn)噪聲點(diǎn)中進(jìn)一步區(qū)分噪聲點(diǎn)和信號(hào)點(diǎn)。最后,對(duì)高密度噪聲塊,用模板內(nèi)已經(jīng)去噪處理的各點(diǎn)均值替代。
2.1自適應(yīng)中值濾波(RAMF)原理
自適應(yīng)中值濾波算法的基本思想是根據(jù)噪聲密度的大小調(diào)整濾波窗口的大小,通過(guò)與窗口極大值和極小值的比較判定像素點(diǎn)為噪聲點(diǎn)或信號(hào)點(diǎn),對(duì)信號(hào)點(diǎn)予以保持,對(duì)噪聲點(diǎn)進(jìn)行中值替代。
設(shè)當(dāng)前像素灰度值為f(i,j),W為當(dāng)前濾波窗口,fmax,fmin,fmed分別為濾波窗口內(nèi)的灰度極大值、極小值和中值。Wmax為窗口的最大值。
自適應(yīng)中值濾波分為兩層實(shí)現(xiàn):
A層:判斷中值fmed,若為極值點(diǎn),則在Wmax以內(nèi)增大窗口再次判斷;若為信號(hào)點(diǎn),則進(jìn)入B層;
B層:判定當(dāng)前像素f(i,j),若fmin<f(i,j)<fmax,則判定為信號(hào)點(diǎn),灰度值不變;否則判定為噪聲點(diǎn),灰度值用窗口中值替代。
自適應(yīng)中值濾波算法能在判別像素點(diǎn)之后,有選擇性的進(jìn)行中值替代,但大多高頻信號(hào)點(diǎn)也是濾波窗口的極值點(diǎn),這樣不加區(qū)分的去除,導(dǎo)致了圖像的細(xì)節(jié)丟失。
2.2基于斜率差值的自適應(yīng)中值濾波算法
為了避免處在窗口極值處的信號(hào)點(diǎn)被誤判為噪聲,本文在自適應(yīng)中值濾波的基礎(chǔ)上,在B層將不滿足fmin<f(i,j)<fmax的像素點(diǎn)判定為準(zhǔn)噪聲點(diǎn)。根據(jù)窗口整體斜率和準(zhǔn)噪聲點(diǎn)的斜率作差值,依據(jù)差值的大小對(duì)極值點(diǎn)進(jìn)行二次判定。
2.2.1斜率的選取
設(shè)當(dāng)前像素點(diǎn)灰度值為f(i,j),將f(i,j)與濾波窗口(n×n)內(nèi)其他像素的灰度值按升序排列,存放在數(shù)組s中,得到數(shù)組的極小值fmin,極大值fmax、中值fmed及除去極值后的最小值位置m1、最大值位置m2。
(1)窗口整體斜率的選取
窗口的整體斜率k代表整個(gè)濾波窗口所有像素灰度值的變化快慢,首先依據(jù)所有像素的計(jì)算方法是:
在沒(méi)有噪聲點(diǎn)影響的時(shí)候,這個(gè)斜率能有效反映整個(gè)窗口的灰度遞變情況。但存在噪聲時(shí),極值點(diǎn)fmin,fmax極有可能就是噪聲點(diǎn),則式(1)不足以代表整個(gè)窗口的斜率。為了防止噪聲對(duì)窗口斜率的影響,本文提出:
從圖1中可以看出,式(2)克服了式(1)的缺點(diǎn),且無(wú)論窗口內(nèi)是否存在噪聲干擾都能有效的代表整個(gè)濾波窗口的斜率。
圖1 窗口整體斜率的選取Fig.1Choice of window’s slope
(2)當(dāng)前準(zhǔn)噪聲點(diǎn)斜率k1的選取
不滿足fmin<f(i,j)<fmax的像素點(diǎn)被判定為準(zhǔn)噪聲點(diǎn),則準(zhǔn)噪聲點(diǎn)存在兩種情況:
第一種情況:f(i,j)=fmin,即當(dāng)前準(zhǔn)噪聲點(diǎn)為極小值。為了避免多個(gè)極小值的影響,k1選所有極小值中間點(diǎn)到m1點(diǎn)的斜率,用來(lái)表征當(dāng)前點(diǎn)的斜率。
圖2 f(i,j)為極小值Fig.2f(i,j)is the minimum
第二種情況:f(i,j)=fmax,即當(dāng)前準(zhǔn)噪聲點(diǎn)為極大值。為了避免多個(gè)極大值的影響,k1選所有極大值中間點(diǎn)到m2點(diǎn)的斜率,用來(lái)表征當(dāng)前點(diǎn)的斜率。
圖3 f(i,j)為極大值Fig.3f(i,j)is the maxima
從圖2,圖3中可以看出,f(i,j)為噪聲時(shí),k1與k2差別較大;f(i,j)為信號(hào)時(shí),k1與k2相差無(wú)幾。故依據(jù)k1與k2的差值能有效區(qū)分當(dāng)前準(zhǔn)噪聲點(diǎn)是否為噪聲點(diǎn),為噪聲點(diǎn)用中值替代,為信號(hào)點(diǎn)原值輸出。
2.2.2閾值的選取
在初次判定為準(zhǔn)噪聲的點(diǎn),需要k1與k2的差值來(lái)進(jìn)行二次判定。因而需要引入一個(gè)閾值T,當(dāng)斜率差值大于T時(shí),判定為噪聲,用中值替代;反之判定為信號(hào)予以保持。T的選取應(yīng)該和整個(gè)濾波窗口內(nèi)的像素的灰度值有關(guān),而此處中值已經(jīng)判定為非噪聲點(diǎn),能代表窗口的平均水平。閾值T可表示為:
其中:fmed為濾波窗口中值,e為正整數(shù)。對(duì)準(zhǔn)噪聲點(diǎn)判定時(shí),依據(jù)fmed自適應(yīng)地選取閾值T,而閾值T的大小隨e的取值而不同,圖4所示為峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)和均方差(Mean Squared Error,MSE)隨著e取不同值時(shí)的變化趨勢(shì)。由圖可見(jiàn),當(dāng)e=55時(shí),能取得高PSNR和低MSE,所以本文選取55計(jì)算閾值T。
圖4 PSNR、MSE隨e的變化趨勢(shì)Fig.4Trends of PSNR and MSE with e
2.2.3噪聲塊的處理
在噪聲強(qiáng)度較低,單個(gè)濾波窗口內(nèi)不包含過(guò)半的極小值或者極大值噪聲點(diǎn)時(shí),我們采用上述方法進(jìn)行判定之后濾除噪聲。但是隨著噪聲強(qiáng)度的增大,單個(gè)窗口內(nèi)出現(xiàn)過(guò)半的極小值噪聲點(diǎn)或過(guò)半極大值噪聲點(diǎn)時(shí),當(dāng)前點(diǎn)所處的區(qū)域判定為噪聲塊。對(duì)這種噪聲塊噪聲的處理分兩種情況(以3×3窗口為例):
圖5 m2<=m1時(shí)像素的取值Fig.5Value when m2<=m1
(1)m2>m1時(shí),當(dāng)前像素點(diǎn)取m1到m2所有像素的均值;
(2)m2<=m1時(shí),當(dāng)前像素點(diǎn)取濾波窗口內(nèi)已經(jīng)去噪處理像素的均值,如圖5取陰影部分像素的均值。
為驗(yàn)證本文算法的有效性,對(duì)512×512,8位灰度圖像Lena加不同強(qiáng)度椒鹽噪聲,用本文算法和傳統(tǒng)的中值濾波(MF)、自適應(yīng)中值濾波(AMF,最大窗口為7×7)及劉淑娟基于斜率的自適應(yīng)中值濾波算法進(jìn)行去噪比較。
圖6 各算法去噪效果比較Fig.6De-noising results of the algorithms
3.1主觀比較
從圖6可知,當(dāng)噪聲密度較小時(shí),MF、AMF、劉淑娟算法及本文算法能取得較好的去除噪聲,其中后兩者能更好地保持圖像細(xì)節(jié)。當(dāng)噪聲密度增大到一定程度,劉淑娟算法去噪效果顯著降低; AMF能去除大部分噪聲,但是平滑了圖像細(xì)節(jié),模糊了邊界;本文算法去除噪聲的同時(shí)能繼續(xù)保持邊界信息。當(dāng)噪聲密度大到一定程度,MF和劉淑娟算法已失效,AMF能去除密度不大的噪聲點(diǎn),沒(méi)法去除噪聲塊,本文算法能有效去除噪聲塊,基本還原圖像信息。
3.2客觀比較
為了客觀說(shuō)明本文算法的濾波性能,采用峰值信噪比PSNR(單位:dB)和邊緣保持度FOM作為評(píng)判標(biāo)準(zhǔn),其定義分別為:
其中:f(i,j)表示未加噪聲的原始圖像各像素的灰度值,表示去噪后圖像各像素的灰度值,M、N表示圖像的高度和寬度,N^為檢測(cè)到的邊緣像素點(diǎn)數(shù),Nideal為理想邊緣像素點(diǎn),di表示第i個(gè)檢測(cè)到的邊緣點(diǎn)到它最近的理想邊緣點(diǎn)間的歐氏距離。各種不同算法對(duì)不同噪聲強(qiáng)度的圖像處理后的PSNR和FOM對(duì)比如表1、表2所示。
表1 各算法PSNR比較Tab.1PSNR of different algorithms
表2 各算法FOM比較Tab.2FOM of different algorithms
中值濾波算法針對(duì)去除脈沖噪聲能取得較好的效果。本文在中值濾波基礎(chǔ)上,結(jié)合基于斜率差值的噪聲判定方法,有效保留了極值處的信號(hào)成分,提高了濾波的保真度,對(duì)密度大的噪聲塊進(jìn)行有效的均值處理。實(shí)驗(yàn)結(jié)果表明,該算法能有效去除圖像噪聲,同時(shí)很好地保持圖像的細(xì)節(jié),并且在噪聲密度增大時(shí),能取得優(yōu)于其他算法的效果。從表中可以看出本文算法的有效性和優(yōu)越性。隨著噪聲密度的增加,其他算法的濾波性能顯著降低,而本文算法依然能有效去除噪聲并保持大部分圖像細(xì)節(jié),還原圖像信息。
[1]劉偉,孫麗媛,王汝梅.自適應(yīng)中值濾波在數(shù)字圖像處理中的應(yīng)用[J].河北理工大學(xué)學(xué)報(bào):自然科學(xué)版,2008,29 (4):111-113.
Liu W,Sun L Y,Wang R M.An adaptive median filter in the application of digital image processing[J].Journal of Hebei Polytechnic University:Natural Science Edition,2008,29(4):111-113.(in Chinese)
[2]韓希珍,陳朝東,趙建.基于PDE的非線性圖像去噪與增強(qiáng)[J].液晶與顯示,2011,26(1):111-115.
Han X Z,Chen C D,Zhao J.Nonlinear image de-noising and enhancement based on PDE[J].Chinese Journal of Liquid Crystals and Display,2011,26(1):111-115.(in Chinese)
[3]龔衛(wèi)國(guó),劉曉營(yíng),李偉紅,等.雙密度雙樹復(fù)小波變換的局域自適應(yīng)圖像去噪[J].光學(xué)精密工程,2009,17(5): 1171-1180.
Gong W G,Liu X Y,Li W H,et al.Local adaptive image denoising based on double-density dual-tree complex wavelettransform[J].Optics and Precision Engineering,2009,17(5):1171-1180.(in Chinese)
[4]Pan M S,Tang J T,Yang X L.An adaptive median filter algorithm based on B-spline function[J].International Journal of Automation and Computing,2011,8(1):92-99.(in Chinese)
[5]黃寶貴,盧振泰,馬春梅,等.改進(jìn)的自適應(yīng)中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2011,31(7):1835-1837.
Huang B G,Lu Z T,Ma C M,et al.Improved adaptive median filtering algorithm[J].Journal of Computer Applications,2011,31(7):1835-1837.(in Chinese)
[6]衛(wèi)保國(guó).一種改進(jìn)的自適應(yīng)中值濾波方法[J].計(jì)算機(jī)應(yīng)用,2008,28(7):1732-1734.
Wei B G.Improved adaptive median filtering[J].Journal of Computer Applications,2008,28(7):1732-1734.(in Chinese)
[7]劉茗.基于噪聲檢測(cè)的自適應(yīng)中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2011,31(2):390-392.
Liu M.Dynamic window-based adaptive median filter algorithm[J].Journal of Computer Applications,2011,31(2):390-392.(in Chinese)
[8]劉淑娟,趙曄,董蕊,等.基于斜率的自適應(yīng)中值濾波算法[J].計(jì)算機(jī)應(yīng)用,2012,32(3):736-738.
Liu S J,Zhao Y,Dong R,et al.Adaptive median filtering algorithm based on slope[J].Journal of Computer Applications,2012,32(3):736-738.(in Chinese)
[9]寧春玉,趙春華.自適應(yīng)中值濾波算法濾除醫(yī)學(xué)圖像脈沖噪聲[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(24):153-156.
Ning C Y,Zhao C H.Removing impulse noise in medical images using adaptive median filtering algorithm[J].Computer Engineering and Applications,2012,48(24):153-156.(in Chinese)
[10]林清華,杜民.新型快速中值濾波算法及在醫(yī)學(xué)圖像中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用研究,2012,29(9):3584-3587.
Lin Q H,Du M.Novel fast median filtering algorithm and its application in medical image[J].Application Research of Computers,2012,29(9):3584-3587.(in Chinese)
Adaptive slope difference algorithm for filtering salt and pepper noise in image
ZHOU Ling-fang,CHEN Fei
(School of computer Science and Technology of,Southwest University of Science and Technology,Mianyang,621010,China)
An adaptive median filter based on slope is proposed to remove the impulse noise effectively.The algorithm based on the adaptive median filter algorithm,uses difference of slope to determine noise.Compare with traditional algorithms,it performs better when the noise intensity gets high.Meanwhile it solves the difficulty of filtering noise block.The result shows that the algorithm can remove impulse noise effectively and protect image details well.
slope difference;median filter;noise detection;impulse noise
TP391
A
10.3788/YJYXS20153004.0695
周玲芳(1989-),女,湖南株洲人,碩士研究生,主要研究方向:數(shù)字圖像處理。E-mail:1021539211@qq.com陳菲(1974-),女,四川綿陽(yáng)人,副教授,碩士,主要研究方向:嵌入式系統(tǒng),圖像處理。
1007-2780(2015)04-0695-06
2014-09-18;
2014-10-25.
國(guó)家自然科學(xué)基金資助項(xiàng)目(No.61202044);四川省科技創(chuàng)新苗子工程項(xiàng)目(No.20132022)
*通信聯(lián)系人,E-mail:1021539211@qq.com