馮茜茜,崔文學(xué),劉 婧,史卓夕,馬曉劍
(1.東北林業(yè)大學(xué) 理學(xué)院,哈爾濱150040; 2.哈爾濱工業(yè)大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,哈爾濱 150001)
在圖像處理中,椒鹽噪聲是對圖像質(zhì)量造成顯著性影響的噪聲之一,對于濾除低密度椒鹽噪聲來說,應(yīng)用比較廣泛且有效的方法是中值濾波[1],該算法在抑制噪聲方面優(yōu)于線性算法,但它往往在噪聲密度較低時會破壞邊緣細(xì)節(jié),造成圖像模糊.為了在抑制噪聲的同時保護細(xì)節(jié)信息,TSM濾波算法在平衡抑制噪聲和細(xì)節(jié)保護方面明顯優(yōu)于中值濾波,由于沒有考慮到圖像的局部特征,因此在濾波的同時還是會模糊局部邊緣[2].為了解決這個問題,人們又給出了依賴局部圖像特征的自適應(yīng)濾波算法[3-13],其中基于尺度的圖像平滑濾波算法提出了相似度的概念[10],它依賴于各個像素點上的局部特征,通過使用一個限定的均勻性參數(shù)來過濾局部邊緣區(qū)域,利用這種局部相似度可以自適應(yīng)地調(diào)整任意圖像位置的濾波程度,在保護邊緣細(xì)節(jié)信息上有了顯著的改進,但存在方向不能自適應(yīng)確定且運算量大的問題[11-12].為了改善這些弊端,方向自適應(yīng)的各項異性高斯濾波算法被提出來[14],該算法根據(jù)邊緣梯度特性自適應(yīng)生成濾波模板,能動態(tài)地調(diào)整方向,可以更好地保留邊緣細(xì)節(jié)信息且迭代簡單計算量不大,但是當(dāng)圖像紋理復(fù)雜時,該算法還是會在尖銳的邊緣點處丟失信息[15-19].
針對以上問題,本文首次將正確率和召回率引入到圖像噪聲判別時閾值和統(tǒng)計性參數(shù)的選取中,根據(jù)待處理像素點與周圍像素點的相似度與閾值的大小關(guān)系便可以準(zhǔn)確地判別出噪聲點.利用每個像素點計算該像素點與其他不同的方向的像素值的相似度,構(gòu)造出的自適應(yīng)各項異性高斯模板,可對檢測出的噪聲點進行濾除.實驗結(jié)果表明,本文算法可以有效地檢測和濾除椒鹽噪聲,而且比其他濾波算法更大限度地保留邊緣細(xì)節(jié)信息.
由于椒鹽噪聲點與周圍像素點的灰度值差異較大,本文采用相似度函數(shù)作為判別模型中的度量函數(shù).
現(xiàn)給出相似度函數(shù)[11-12]的定義:設(shè)點(x,y)的某個局部鄰域的集合為Dxy,該區(qū)域中的像素點值設(shè)為P(i,j),對于圖像中的任意一個像素點(x,y),定義該點和它的鄰域Dxy之間的相似度為Sxy(Dxy),即:
(1)
其中:|B(Dxy)|代表集合Dxy中點的個數(shù),σs是反映圖像梯度分布的一個統(tǒng)計特性參數(shù).
相似度函數(shù)的意義為被判斷的像素點與周圍像素點的相似程度,某點灰度值與周圍像素點的灰度值差異大時,相似度相應(yīng)會較小[20-22].當(dāng)相似程度小于所給的閾值時,就判斷該點為噪聲點.可以得出如下噪聲點判斷模型:
(2)
其中:P(x,y)=1表示為噪聲點,P(x,y)=0表示非噪聲點,M為所需確定的閾值.
根據(jù)式(1)可知計算相似度需要確定參數(shù)σs,目前已經(jīng)存在一些計算σs的方法[23-27].以上方法對整個圖像中的不同噪聲點的σs的選取是固定不變的,為了更好地反映局部特征,生成自適應(yīng)的濾波模板,本文對σs的選取做了如下調(diào)整:針對于圖像的每個像素點的2i+1 (本文i=2)鄰域都生成一個σs,其中σs是指定的區(qū)域的標(biāo)準(zhǔn)差.
從式(1)、(2)可以看出,在噪聲點檢測模型中需要確定的變量有相似度函數(shù)中的統(tǒng)計特性參數(shù)σS和閾值M,下面將給出一種確定這兩個變量的方法.
確定取值前需要說明的是,由實驗論證可以得到,σS與像素點和周圍像素點的標(biāo)準(zhǔn)差是同階的,即有如下關(guān)系:
σS=k·σs(x,y) (i),k∈R+,i∈Z
其中:s(x,y)(i)代表待處理像素點(x,y)的2i+1鄰域,σs(x,y) (i)代表s(x,y)(i)像素區(qū)域的標(biāo)準(zhǔn)差.根據(jù)這一關(guān)系,可以將參數(shù)σS的選擇轉(zhuǎn)變?yōu)橄禂?shù)k的確定,在這里本文稱k為線性系數(shù).
為了得到最佳的線性系數(shù)k和閾值M,本文引入正確率(Accuracy)和召回率(Recall)兩個概念,定義如下:
正確率(Acc)能夠衡量檢測出的點是否為噪聲點,召回率(Rec)則代表了噪聲點的檢出率.這兩個指標(biāo)能夠衡量檢測噪聲點的有效程度,它們的值越高,正確檢測出的噪聲點越多,噪聲點的檢測越有效.利用Acc和Rec來獲得參數(shù)的取值,能夠?qū)⒆兞康倪x取直接地與檢測效果關(guān)聯(lián)起來,從而能夠更加準(zhǔn)確地找到最佳取值.
現(xiàn)對某341×256標(biāo)準(zhǔn)灰度圖像隨機添加400個噪聲點并進行消噪實驗,以此為例,展示對于不同的線性系數(shù)k、閾值M檢測結(jié)果的Acc、Rec之間的散點關(guān)系.圖1為閾值M取0.2、0.4和0.5時的圖像.
圖1 閾值M不同時Acc與Rec的散點圖
在噪聲檢測中,檢測結(jié)果的Acc和Rec的值越大越好,但由圖1可知,往往不能使它們同時增大:當(dāng)固定閾值M且線性系數(shù)k的值增大時,Acc增大,Rec減??;當(dāng)閾值M的值增大時,Acc減小,Rec增大.為了取得最佳的檢測效果,使Acc較高的同時Rec也較高,最恰當(dāng)?shù)姆椒ㄖ荒苁鞘笰cc和Rec相等,即散點圖的交點的橫坐標(biāo)為該閾值M下所能達(dá)到理想狀態(tài)的線性系數(shù)k的取值.
得知以上關(guān)系后,為了確定最佳的參數(shù)取值,本文對大量不同圖像進行了實驗,總結(jié)出了比較恰當(dāng)?shù)膮?shù)取值.由實驗數(shù)據(jù)可以得出,當(dāng)k在[0.7,1.2]之間取值,M在[0.4,0.8]之間取值時,圖像的消噪效果最好,具有較強的實用性和普遍性.(本文取M=0.4,k=1.2).
由于椒鹽噪聲和周圍像素點的差異性較大,在利用傳統(tǒng)的高斯濾波器進行濾波會損失了一些細(xì)節(jié)信息.為了保留更多的邊緣信息,本文對高斯濾波器進行了相應(yīng)的改進:傳統(tǒng)自適應(yīng)各向同性高斯濾波器具有最大中心權(quán)重,經(jīng)過卷積之后會將噪聲點信息放大,本文將中心點所占權(quán)重重置為零,這樣就避免了噪聲點對其卷積運算的影響;改進的高斯濾波模板其橫截面是橢圓,橢圓的長軸與待處理像素點所在的邊緣方向一致,文獻[14]中給出了求邊緣方向的方法,可以根據(jù)不同點的局部邊緣細(xì)節(jié)信息,生成相應(yīng)的濾波模板,使得該模板具有自適應(yīng)的各項異性,改進的高斯函數(shù)如式(3)所示:
Gθ(x,y,σx1,σy1,σx2,σy2,θ)=
(3)
其中:
Gθ(x,y,σx,σy,θ)=
根據(jù)對高斯函數(shù)f(z)的分析,相似度越大,對應(yīng)的高斯模板的σ也應(yīng)該越大,對圖像的平滑效果越好.但隨著σ的增加,相似度值的變化趨于平緩,即對象之間差異性的敏感程度降低.當(dāng)σ過大時,會使得待處理噪聲點的各個方向相似度的差異性的敏感程度很低,從而降低圖像邊緣細(xì)節(jié)的濾除效果.為了使相似度和σ之間的對應(yīng)更加有效,應(yīng)該使得相似度具有較大的值域范圍,本文選取比較小的σs來計算八個方向的相似度.自適應(yīng)濾波模板中σ(Ui)的計算方法,如公式(4)所示,此處設(shè)σ的值域為[σ(min),σ(max)],其中:σ(min)=0.4,σ(max)=10.
σ(Ui)=((Ui)t-(min(U)k)·h+σ(min)
(4)
其中:
k∈R+
min(U)=min(Ui),i=1,2…8; max(U)=max(Ui),i=1,2…8
綜上所述,用相似度和高斯函數(shù)的濾波算法的主要步驟為:首先計算待處理像素點與周圍8個方向的像素集的相似度,計算出的相似度分別設(shè)為U1,U2,U3,U4,U5,U6,U7,U8,取8個相似度的最大值,然后提前設(shè)置一個閾值M,當(dāng)周圍像素值的相似度都大于該閾值時,就認(rèn)為該點不為噪聲點,保留該像素值不變;否則,該點有噪聲,處理該噪聲點.如果待處理點是噪聲點,則根據(jù)8個方向的相似度來構(gòu)造自適應(yīng)各向異性的高斯濾波模板濾除.重復(fù)以上步驟直到圖像中的所有像素點處理完成.基于相似度與高斯函數(shù)的濾波算法框架如圖2.
圖2 基于相似度與高斯函數(shù)的濾波算法流程圖
為了評價本文算法的濾波性能,現(xiàn)本文選取文獻[11]算法、文獻[12]算法、TSM算法、3×3中值濾波算法、文獻[13]算法與本文算法從數(shù)值結(jié)果和圖像觀察兩個方面進行對比實驗.本文實驗設(shè)備為Fujitsu電腦,實驗軟件為MatlabR2018a.
本文先對六種濾波算法進行數(shù)據(jù)特性分析.表1展示了這六種算法對于256×256的Lena圖添加不同數(shù)目的噪聲時的峰值信噪比.
表1 不同濾波算法關(guān)于Lena圖像的RPSN值
信噪比是衡量濾波算法是否能夠有效去除噪聲點的最重要的指標(biāo)之一.分析表內(nèi)數(shù)據(jù)可以知道,本文算法的效果要優(yōu)于其余五種算法,尤其相較TSM算法,性能也有較大提升.從而驗證了本文算法的可行性,以及證明了其對噪聲點的處理效果是較為優(yōu)越的.
為了更加客觀全面地評價本文算法的性能,本文選擇SSIM、IEF和MAE三個指標(biāo)從多方面驗證本文算法的性能,指標(biāo)IEF和MAE的計算公式如式(5)、(6)所示.
(5)
(6)
其中:xi,j為原始圖像的像素點值,yi,j為被噪聲污染圖像的像素點值,zi,j為去噪后圖像的像素點值,M和N分別為圖像的寬度和高度.
圖3~6展示了對于256×256的Lena圖像幾個指標(biāo)在不同數(shù)目噪聲點下的折線圖.
SSIM即結(jié)構(gòu)相似度(Structural Similarity)是能夠反映圖像中的細(xì)節(jié)信息的一個判斷指標(biāo),該指標(biāo)能很好地驗證本文算法的優(yōu)勢,即在去除噪聲點的同時,能較好地保持圖像的邊緣和精細(xì)結(jié)構(gòu).從圖中可見,本文算法的SSIM數(shù)據(jù)值最高,且接近于1,說明本文算法對于細(xì)節(jié)的保留程度最高.
由式(5)可知,在噪聲點個數(shù)一定的條件下,濾波算法效果越好,即去噪后圖像與原始圖像差異越小,IEF的值就越大.觀察圖5可知本文算法的IEF值在不同噪聲點個數(shù)下均高于其他算法,顯示本文算法濾波后圖像的恢復(fù)程度最高;由式(6)可知,指標(biāo)MAE同樣反映了去噪后圖像與原始圖像的差異性,本文算法的MAE值居于最低,效果最好.
圖3 Boats圖像RPSN折線圖
圖4 Boats 圖像SSIM折線圖
圖5 Boats 圖像IEF折線圖
圖6 Boats 圖像MAE折線圖
通過本節(jié)分析可以看出,在噪聲點數(shù)目較少的情況下,對于不同的指標(biāo)本文算法相較其他算法效果都較好.
為了更加直觀地看出濾波的效果,圖7展示了文獻[11]的算法、文獻[12]的算法、TSM算法、3×3中值濾波算法、文獻[13]算法和本文算法在噪聲點數(shù)目為500時對256×256標(biāo)準(zhǔn)灰度圖像的濾波效果圖.
(A)文獻[11]算法;(B)文獻[12]算法;(C)TSM算法;(D)3×3中值濾波算法;(E)文獻[13]算法;(F)本文算法
觀察上述處理過的圖像可發(fā)現(xiàn),文獻[11]算法、文獻[12]算法和文獻[13]算法處理過的圖像對細(xì)節(jié)和邊緣的模糊程度較為嚴(yán)重;中值濾波算法對像素點不做區(qū)別處理,故模糊了圖像的邊緣細(xì)節(jié);TSM算法和本文算法相比較,可觀察出本文算法不僅對噪聲點的處理最有效,而且對圖片細(xì)節(jié)和邊緣的保留程度最高.
圖8~10為細(xì)節(jié)放大后的各算法的效果對比圖.
圖8 Lena圖像去噪后的局部放大結(jié)果(噪聲點數(shù)目500)
圖9 Peppers圖像去噪后的局部放大結(jié)果(噪聲點數(shù)目500)
圖10 Cameraman圖像去噪后的局部放大結(jié)果(噪聲點數(shù)目500)
仔細(xì)觀察上述圖像細(xì)節(jié),也可看出本文算法對尖銳部分的處理效果要更加優(yōu)越,對于細(xì)節(jié)的處理效果最好.
針對當(dāng)前許多圖像消噪算法存在的邊緣細(xì)節(jié)失真問題,本文提出了一種基于高斯函數(shù)和相似度函數(shù)的新方法.根據(jù)各個方向的相似度對椒鹽噪聲進行檢測,根據(jù)圖像局部區(qū)域的相似度特征生成自適應(yīng)的各向異性高斯模板并有效地濾除噪聲.通過仿真實驗驗證了此算法在有效濾除噪聲同時更好地保護邊緣細(xì)節(jié)信息.本文提出的算法在噪聲點密度較低時具有非常好的濾波效果,尤其是對邊緣細(xì)節(jié)和局部尖銳點的處理要比其他算法更加有效,更適用于處理細(xì)節(jié)較多的圖像.但對于噪聲點密度較高時的處理有待進一步的提高,需要進一步分析和研究.