?

圖像去噪與增強中的改進自適應分數階中值濾波*

2022-11-07 08:47張雪峰任建旭桂清龍
關鍵詞:椒鹽微分灰度

張雪峰, 劉 日, 任建旭, 桂清龍

(①東北大學理學院;②東北大學機械工程與自動化學院,110819,遼寧省沈陽市)

0 引 言

數字圖像在采集、傳輸或處理等過程中不可避免地會受到噪聲影響. 噪聲不僅使圖像的視覺效果變差,還會影響后續圖像的識別和分割等工作. 因此圖像去噪算法的研究是數字圖像處理中的重要部分[1].

圖像噪聲有很多種,如脈沖噪聲、高斯噪聲、泊松噪聲等,其中脈沖噪聲也稱椒鹽噪聲,是一種常見的圖像噪聲,其是一種隨機出現黑點或白點的噪聲,對于一幅經典的8位灰度圖,灰度值為0意味著黑點,灰度值為255意味著白點. 處理椒鹽噪聲的經典方法是利用中值濾波[2,3]處理,但傳統中值濾波算法不區分噪聲點和信號點,而對所有像素點統一處理,故去噪的同時也可能濾去了信號點,這使得圖像邊緣細節大幅丟失,而且該方法在噪聲密度大于50%時近乎失效. 因此,很多學者提出了改進措施,如中值濾波與小波變換結合[4],加權自適應中值濾波[5]等,這些算法在噪聲密度較低時均有很好的效果,但在實際應用中都存在一定的局限性,如在噪聲密度較高時去除噪聲不完全,去噪后的圖像會變模糊. 而在去除噪聲后,一般圖像的邊緣細節都會有一些丟失,導致圖像的視覺效果變差,這就需要對去噪后的圖像進行增強.

圖像增強是為了使圖像邊緣細節更加清晰,視覺效果更好,同時更適于后續處理圖像的工作. 增強圖像有梯度場增強算法[6]或使用微分算子來處理圖像,用整數階微分算子處理圖像,但效果并不理想,出現增強不明顯,破壞平滑區域等問題. 近年來,分數階微分算子逐漸被用于處理圖像[7-9],文獻[10]提出了一種分數階微分掩模,應用于圖像的多尺度紋理增強,文獻[11]提出了一種自適應分數階全變差圖像恢復的方法,文獻[12]提出了基于4個分數階偏微分方程的多尺度去噪模型.

目前,用分數階微分算子處理圖像已經成為熱點問題,眾多文獻已經應用該方法且取得了一定效果. 文獻[13]利用Grümwald-Letnikov定義的分數階設計了一種分數階微分掩模,將分數階引入圖像處理中. 其設計的算法對圖像邊緣部分進行增強,但圖像平滑區變得模糊,導致最終視覺效果并不理想. 之后文獻[14]引入一維Savitzky-Golay濾波器,將其從整數階推廣到分數階,并從一維推廣到二維,進而提出了基于二維Savitzky-Golay濾波器的圖像增強算法,得到的圖像平滑區幾乎沒有改變,邊緣細節也得到了增強,但增強效果并不突出. 在圖像處理領域引進分數階的方法在近幾年的熱度依然不減,文獻[15]將去噪與增強結合起來,去除噪聲且增強了圖像,其算法解決了傳統方法會使圖像模糊化的同時增強了圖像邊緣,但其算法處理結果的對比度并不高. 文獻[16]提出了一種分數階梯度能量算子,并將其應用于圖像融合中,相比于整數階梯度能量清晰度算子,該融合方法有效避免了融合圖像中的偽影和塊狀效應,更充分地保留了源圖像信息.

為了解決噪聲消除不完全且去噪后圖像邊緣信息不突出的問題,本文提出一種改進的新算法. 設計一個檢測椒鹽噪聲的開關,進而利用中值濾波設計一種開關濾波去除噪聲,消除噪聲的同時保留了正常像素點. 之后為了使圖像的視覺效果更好,即邊緣細節更突出且不會模糊其他區域,本文根據圖像自身特性設計了一種自適應算法,利用分數階濾波器對每一個像素點用不同階次的分數階濾波器處理. 由于分數階微分算子具有弱導數性,故其增強效果明顯優于整數階. 本文提出改進的自適應分數階中值濾波在去除椒鹽噪聲的同時對圖像進行增強,相較于文獻[13-15]在圖像邊緣細節增強更明顯,紋理細節更突出,較好地克服了經典中值濾波去噪及傳統分數階濾波增強會使圖像模糊化及增強效果不明顯的缺點.

1 預備知識

1.1 二維中值濾波

中值濾波是基于排序統計理論的一種能有效抑制噪聲的非線性信號處理技術,在圖像增強和復原中被廣泛應用. 中值濾波器的響應基于由濾波器包圍的圖像區域中像素灰度值的中值. 利用中值濾波處理圖像,是指對圖像中的任意一點(x,y),以該點為中心設計中值濾波窗口,在該窗口內將像素點的灰度值按從小到大進行排序,取排列中值作為(x,y)點的濾波結果,即

傳統中值濾波對低密度椒鹽噪聲去除效果較好,但在噪聲密度較高時效果并不理想,而經過多次中值濾波處理,噪聲雖然能夠消除,但是重復使用中值濾波處理可能會使圖像模糊化.

1.2 分數階定義

分數階定義表達式主要有3種形式:Capotu定義、Riemann-Liouville定義與Grümwald-Letnikov定義[17]. 函數f(t)的Capotu定義為

其中n=[α]+1,n-1<α≤n,t>a,Γ(·)為伽瑪函數. 函數f(t)的Riemann-Liouville定義為

以上2種定義均使用了Cauchy積分公式,其復雜度較高,不利于進行大規模的數據計算. 而G-L定義(Grümwald-Letnikov,簡稱G-L)可以轉化為卷積的形式,因此相較于其他兩種定義在圖像處理中有更好的效果,函數f(s)的G-L定義為

式中h為步長,Γ(·)為伽瑪函數.

1.3 分數階微分對信號的增強作用

已知對任意平方可積能量信號f(t)∈L2(),由信號處理基本理論可得到其Fourier變換為

設信號f(t)的n階導數是f(n)(t),n∈,由Fourier變換性質可得

若信號f(t)的階數為v的分數階導數為f(v)(t),v∈+,由分數階Fourier變化可得[18]

式中

由以上可得當分數階階次v為0.1,0.2,0.3,0.5,0.6,0.8時的幅頻特性曲線,如圖1所示.

圖1 分數階微分算子幅頻特性曲線

由圖1可知,分數階階次在0.5以下時,相對應的微分算子對于信號幅值有一定提升,但相對于0.5以上的分數階階次提升幅度較小. 因此,分數階的階次對圖像具有不同的作用,可根據圖像局部信息與特征來改變微分階次,從而實現對圖像不同區域的有效增強.

2 圖像去噪與增強算法

2.1 椒鹽噪聲檢測與去噪算法

在圖像去噪過程中,正確判斷噪聲點是去噪的關鍵. 本文根據椒鹽噪聲的特性,即噪聲總是將像素點的灰度值數字化為0或255,根據噪聲這一特點便可以很容易檢測出可疑噪聲點. 下面為本文噪聲檢測的步驟.

第1步:設一幅圖像大小為x×y,G(xi,yi)為圖像第i個點的灰度值. 若某點的灰度值為0或255,標記該點為可疑噪聲點;若該點的灰度值為其他值,則代表其為正常點. 標記方式為

第2步:對于上一步的可疑噪聲點,因原圖像本身可能存在灰度值為0或255的點,所以為了降低誤檢率,對這些點進一步檢測. 設圖像中某一可疑噪聲點G(x,y),以該點為中心,建立一個3×3的檢測窗口,計算窗口內灰度值為0~255之間的個數A1,灰度值為255的個數A2,灰度值為0的個數A3.

(1)若A1=0,即窗口內均為可疑噪聲點.

①若A2=9或A3=9,說明該窗口內均為黑色像素點或白色像素點. 在該情況下,認為該區域即原圖中本有的白色或黑色區域.

②若A2>A3,即該窗口內白色點比黑色點多,此時可以將該點處灰度值按255輸出.

③若A2

(2)若A1≠0,則繼續考察該3×3窗口內的像素值,如圖2所示,判斷該窗口內像素受污染程度. 根據受污染程度,用不同的去噪方法來達到較好的效果. 用該窗口內除中心像素點之外的其余像素點灰度值與中心像素點灰度值作差的絕對值小于閾值的個數來判斷,計算方式為

Ha=|G(i+m,j+n)-G(i,j)|≤10,

若β<1,說明該窗口受噪聲污染嚴重,利用該窗口內非0、非255的其余灰度值的平均值來代替該點的灰度值. 若β>1,說明該窗口受噪聲污染并不嚴重,此時利用中值濾波進行去噪.

G(i-1,j-1)G(i-1,j)G(i-1,j+1)G(i,j-1)G(i,j)G(i,j+1)G(i+1,j-1)G(i+1,j)G(i+1,j+1)

2.2 自適應算法

在圖像增強過程中,分數階微分的階次不僅與梯度幅值平均值、梯度幅值的最大值、梯度幅值的最小值有關,還受到圖像局部信息的影響. 本文為了更好地增強圖像邊緣細節,根據圖像的局部信息設計出一種自適應算法,可以根據圖像的局部信息來計算出適當的分數階.

圖3 自適應算法流程圖

由以上3個反應圖像局部信息的定義可知,局部信息參數M,S,C的值越大,表明該區域為目標增強區域的概率越大,分數階的階次也應更大;M,S,C的值越小,該區域為目標增強區域的概率越小,分數階的階次也應越小.由此可知,分數階階次的大小與3個圖像局部參數值大小成正相關.

本文將上述3個局部重要信息的參量進行加權求和,故設P=λ(k1·M+k2·S+k3·C),其中k1,k2,k3為加權系數,三者和為1,λ為調節參數. 又由于e指數在實數域上為增函數,增強幅度隨變量的增加而增加,與本文算法想要達到的目的相符合,故能得到分數階微分自適應算法v=eP-Q,式中Q為調節參數. 經過多次實驗,且在本算法中,圖像的粗糙度較其他兩個特征參數更能反應圖像局部特征,故取λ=1,k1=0.3,k2=0.1,k3=0.6,Q=1.8.

2.3 圖像增強算法

分數階微分濾波不僅對圖像高頻信號有加強作用,還能非線性地保留一些低頻信息. 因此在圖像處理中,利用分數階微分增強邊緣紋理細節,而且在一定程度上保留圖像平滑區信息.

為了使圖像分別完成在8個中心對稱方向上的分數階微分運算,達到增強算法的抗旋轉性能,把以上兩式推廣到其他6個方向(0°,45°,90°,135°,225°,315°),得到一個基于8個方向的分數階微分濾波器[13](圖4).

wn…00wn00…wn…00…00…00w20w20w20000w1w1w1000wn…w2w1w0w1w2…wn00w1w1w10000w20w20w200…00…00…0wn…00wn00…wn

本文在圖像增強方面選擇經典的8個方向濾波窗口大小為5×5的分數階微分濾波器. 如下頁圖5所示. 將圖5中的每項元素除以8-12v+4v2,再與圖像做卷積,就能得到v階次的分數階微分處理的圖像.

傳統的增強方法是只使用同一分數階微分階次來處理圖像,會出現邊緣過度增強而平滑區變模糊的狀況. 由于本文的增強算法是自適應的,這就使得得到的增強圖像邊緣部分更加突出的同時,較好的保留了平滑區的圖像信息,即沒有對原圖非紋理部分進行破壞. 這就使得增強后的整幅圖像更適于識別,同樣適于后續的分割等工作.

w30w30w30w2w2w20w3w2w1w2w30w2w2w20w30w30w3

3 實驗結果及分析

利用中值濾波設計的開關濾波器以及自適應分數階增強算法對圖像進行處理的算法流程圖如圖6.

圖6 算法流程圖

3.1 實驗結果

在MatlabR2017a平臺上實現本文的編程算法,并選取了“Lena”等3種灰度圖像(圖7)進行實驗,改變椒鹽噪聲的密度得到不同的實驗結果.

(a)Lena原圖 (b)Truck and APCs原圖 (c)航拍圖原圖

圖8是“Lena”圖的實驗結果. 首先在“Lena”圖中加入密度為20%的椒鹽噪聲,分別用中值濾波、文獻[13-15]算法以及本文算法處理. 本文算法使平滑區信息保留完好,而且增強了圖像的邊緣,相較于原圖更加清晰. 再從視覺的角度出發,可以清楚地看到本文算法相較于其他算法在頭發、帽子等邊緣細節有更好的處理效果. 這表明了本文算法在去除椒鹽噪聲的同時對圖像進行了增強,證明了本文算法的有效性.

(a)20%椒鹽噪聲 (b)中值濾波 (c)文獻[13]算法 (d)文獻[14]算法 (e)文獻[15]算法 (f)本文算法

“Truck and APCs”實驗效果如圖9所示. 先對“Truck and APCs”圖像加入密度為30%的椒鹽噪聲. 本文算法基本將噪聲完全去除且對邊緣有明顯增強效果,視覺效果更好. 而使用中值濾波處理后,噪聲仍有殘留,嚴重影響了圖像的觀感,其他算法在處理圖像紋理細節時,增強效果不明顯. 這表明本文算法相較于其他算法有提高.

(a)30%椒鹽噪聲 (b)中值濾波 (c)文獻[13]算法 (d)文獻[14]算法 (e)文獻[15]算法 (f)本文算法

圖10展示了一幅航拍圖. 對其添加40%的椒鹽噪聲,實驗結果如圖. 由圖可見,本文算法有效地去除了噪聲,處理后的圖像邊緣輪廓相較于其他算法比較突出,平滑區也比較清晰,整張圖片很有層次感. 這再次表明本文改進的自適應分數階中值濾波在圖像去噪與增強方面的優越性.

(a)40%椒鹽噪聲 (b)中值濾波 (c)文獻[13]算法 (d)文獻[14]算法 (e)文獻[15]算法 (f)本文算法

圖11展示的是一幅實際圖像分別用不同文獻算法與本文算法處理的結果. 由圖11可見,本文算法的處理結果相較于其他算法小船的輪廓更為清晰,樹葉棱角分明,云層的邊緣更加明顯,但云層的主體部分相較于原圖改變不大,這很直觀地說明了本文算法對圖像紋理區的加強相較于其他算法更為有效,且更好地保護了圖像平滑區的信息. 文獻[6]算法(梯度場增強算法)的處理結果的亮度顯然高于其他算法的處理結果,這是因為梯度場增強算法會顯著提高圖像的對比度,但這種算法對于圖像紋理區的加強相較于本文算法不夠明顯.

(a)實際圖像 (b)文獻[13]算法 (c)文獻[14]算法 (d)文獻[15]算法 (e)文獻[6]算法 (f)本文算法

圖12也是對于一幅實際圖像用不同算法的處理結果. 可以看到原圖飛機上的字母和圖案不夠清晰,同時對邊緣細節增強不明顯,而本文算法的處理結果字母最為清晰. 本文對山脈的處理結果也顯然優于其他算法. 本文對云層的輪廓部分增強明顯,且對云層主體部分基本保持與原圖一致. 這再一次說明了本文算法對于紋理區域的增強和平滑區的保持做到了很好的平衡.

(a)實際圖像 (b)文獻[13]算法 (c)文獻[14]算法 (d)文獻[15]算法 (e)文獻[6]算法 (f)本文算法

3.2 結果分析

首先,通過對圖像直接觀察,進行主觀評價. 由圖7可以看出,在添加椒鹽噪聲比例較小時中值濾波處理結果獲得了比較好的效果,但是出現了局部模糊的問題,文獻[13-15]算法處理結果也比較滿意,但相較于本文算法仍有不足. 可以看到本文算法在Lena圖的帽子、頭發和眼睛等邊緣細節、紋理部分的加強效果都很好. 由圖9和10可以看出,在添加椒鹽噪聲比例提高時中值濾波處理結果較差,處理后的圖像仍有較多的噪聲點. 文獻[13-15]雖對圖像進行增強,但增強效果并不明顯且部分平滑區會出現模糊的情況. 在噪聲密度較高時,本文算法仍保持較好的消除噪聲功效,同時對邊緣紋理部分有明顯增強,視覺上也有良好的提升.

如圖13所示,分別將本文算法的效果圖與原圖作差分,以檢測本文算法對圖像邊緣及紋理細節的增強效果. 可以看到圖13中各圖的邊緣及紋理細節部分清晰可見,且沒有多余噪聲點,從而說明本文算法在去除椒鹽噪聲及增強邊緣和紋理細節部分的有效性.

圖13 本文算法與原圖差分

利用中值濾波設計的開關濾波處理過后,圖像受噪聲影響絕大部分消除,3幅圖像處理過后基本沒有噪聲點;對圖像進行分數階微分處理后,圖像的邊緣細節得到增強,Lena圖中在帽檐、頭發、臉部輪廓以及眼睛處紋理更加清晰了. APCs圖中每個小車的車體更加清楚,且部分雜草的邊緣看起來也明顯了許多. 對于航拍圖,邊緣保持較明顯的地方在于左下角較長的兩條交錯街道,以及右上角有一個缺口的地方. 這些細節都能體現本算法在增強邊緣的有效性.

本文采用SSIM[22](Structural Similarity Index)來衡量兩幅圖像的相似度,可以通過計算兩幅圖像結構信息的相似性來檢測圖像質量的好壞,并且在視覺特征上比傳統的MSE、PSNR方式更符合人眼視覺感知. SSIM的取值范圍為[0,1],值越大,表示圖像失真越小,即圖像視覺效果越好. 圖像信息熵表示一個隨機性變量. 圖像的平滑區域信息熵較小,紋理豐富區域信息熵較大.

由表1可以看出,相較于其他算法,本文算法的SSIM值均比較大,圖像信息熵比較高,這表明本文算法在盡可能保持與原圖一致的情況下加強了圖像的邊緣和紋理細節部分. 而文獻[13]和文獻[14]算法處理圖的SSIM值比較小,這是因為同一分數階階次處理整幅圖像會出現過度增強的情況. 文獻[15]提出的去噪增強算法也有較好效果,但相較于本文算法仍有不足. 從圖8~圖10可以看出本文算法對于圖像邊緣與紋理細節部分的增強效果最優. 從圖11和圖12的處理結果可以看出,本文在處理實際圖像時,不論是對圖像紋理區的增強還是對圖像平滑區的保持都要優于其他算法;從表2的數據也可以看出,本文算法的SSIM值和信息熵值比其他算法的都大,這也從側面反映了本文算法的有效性.

表1 不同算法下的SSIM和信息熵值

表2 不同算法下對實際圖像處理后的的SSIM和信息熵值

4 結 論

基于中值濾波器和自適應分數階濾波器,根據椒鹽噪聲的特點,提出了一種去除椒鹽噪聲并增強圖像的方法. 本文方法主要利用了新的噪聲檢測機制對圖像進行去噪,在有效去除噪聲的基礎上利用自適應分數階增強算法對圖像進行增強. 本文提出的方法克服了傳統中值濾波器的缺點,并在保持圖像平滑區基本不變的情況下增強了圖像邊緣與紋理細節部分. 最后通過實驗表明本文算法在去除椒鹽噪聲和增強圖像細節方面有很好的效果.

然而,本文提出的方法在實際應用中仍然有不足之處. 在今后的研究工作還需著重解決以下問題:如何更加準確地確定圖像局部信息與分數階微分階次的關系,從而構造更為精確的自適應函數;如何通過優化算法,進一步縮短處理圖像所需時間.

猜你喜歡
椒鹽微分灰度
采用改進導重法的拓撲結構灰度單元過濾技術
Ap(φ)權,擬微分算子及其交換子
擬微分算子在Hp(ω)上的有界性
一類非線性復微分差分方程解的不存在性
多復變整函數與其關于全導數的微分多項式
Bp-MRI灰度直方圖在鑒別移行帶前列腺癌與良性前列腺增生中的應用價值
學做椒鹽蝦
基于最大加權投影求解的彩色圖像灰度化對比度保留算法
基于像素重排比對的灰度圖彩色化算法研究
椒鹽芝麻燒餅
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合