?

基于整體變分模型的隨機值脈沖噪聲去除方法

2024-01-05 02:02樾,陶
關鍵詞:變分鄰域灰度

胡 樾,陶 勝

(1.集美大學誠毅學院,福建 廈門361021;2. 集美大學理學院,福建 廈門361021)

0 引言

一幅干凈無污染的圖像可以獲得的信息量遠大于有噪聲的圖像,因此,圖像質量顯得極其重要??墒?,圖像往往在不知不覺中被污染。例如,在圖像獲取過程中,傳感器常常會受到各種因素的影響致使圖像出現噪聲;在傳輸過程中,由于所用的傳輸信道的干擾導致圖像受到噪聲污染[1]。當噪聲干擾嚴重時,甚至會使圖片失去其本身的價值。脈沖噪聲是一種常見的噪聲,分成椒鹽噪聲(salt and pepper noise, SPN)和隨機值脈沖噪聲(random-valued impulse noise, RVIN)兩類。

傳統中值濾波被廣泛用于去除脈沖噪聲,可是不加區別地對圖像所有像素進行統一處理會造成噪聲在鄰域傳播,會導致圖像細節結構的平滑[2]。因此,一些改進算法被提出,例如WM(weighted median)[3]、CWM(center weighted median)[4]等,這類算法通過給可能正常的像素點提供更大的權重來修復圖像細節,但仍沒有區分噪聲與非噪聲點。隨后SWM(switching median)[5]提出一種將圖像處理過程進行兩階段處理的策略,即先檢測噪聲后去噪。該方法依靠窗口內鄰域點中值與檢測點差的絕對值判斷噪聲點和信號點,僅對噪聲進行中值處理。PSM(progressive switching median)[6]提出在兩階段處理圖像的同時多次迭代檢測及去噪的策略。由此衍生出了很多方法[7-13],例如TSM(tri-state median)[7]、MSM(multi-state median)[8]、PWMAD(pixel-wise median absolute deviation)[9]、SNC(similar neighbor criterion)[10]和SPF(seed pixels filter)[11]等。ADTM(adaptive dual threshold median)[12]采用基于像素值平均的自適應雙閾值來檢測噪聲像素,并使用簡單的中值濾波器去除它們。APCM(adaptive partition-cluster-based median)[13]使用基于自適應分區簇的中值濾波器,該濾波器可以將像素分為不同的組,并應用不同的策略來檢測和過濾噪聲像素。SSD(statistical standard deviation)[14]利用濾波窗口八個不同方向上的估計標準差和平均絕對差來計算相似性指數,并以此判斷噪聲。BPDF(based on pixel density filter)[15]方法利用像素值變化時的關系來確定最合適的窗口大小和替換值,能夠在低中噪聲密度下得到較好的去噪效果。SAMFWMF(switching adaptive median and fixed weighted mean filtering)[16]方法結合了自適應中值濾波器和固定加權均值濾波器,能夠在高噪聲密度下保持圖像的邊緣細節,并且提供了一種有效的邊緣跟蹤和連接算法。雖然這些算法的效果提高了,但隨著噪聲密度提升仍會對噪聲檢測及濾波效果產生較大影響,特別遇到高密度噪聲時,已經無法保護圖像細節,導致去噪效果下降明顯。

為了提高去噪效果,一些學者開始嘗試使用整體變分模型(total variation,TV)[17]來去除隨機值脈沖噪聲。整體變分模型最早被提出來是用于去除高斯噪聲,可是存在階梯效應問題,隨后一些針對脈沖噪聲的改進整體變分模型被提出。例如:文獻[18] 利用重疊組稀疏性和Lp-偽范數收縮的整體變分方法來保持圖像的邊緣和稀疏性。文獻[19]將像素分為損壞的、無噪聲的和可能損壞的,對不同類別的像素采用不同的處理方式,即,如果一個像素是損壞的,就使用改進的整體變分擴散方法進行重構,如果一個像素是可能損壞的,就使用加權整體變分擴散方法進行重構,否則,就保持像素不變,并根據噪聲密度的不同,自適應地調整窗口大小和閾值參數。文獻[20]提出快速的求解帶有盒約束的分數階整體變分圖像恢復方法,利用交替方向乘子法、迭代加權L1算法和快速迭代技術去除脈沖噪聲。這些模型可以在一定程度上減少階梯效應,但是對于隨機值脈沖噪聲的去除效果還不夠理想,因為它們沒有充分利用噪聲點和非噪聲點的區別,而是對所有像素進行同樣的處理。

為了解決去噪效果不佳的問題,本文結合開關濾波器的開關特性和整體變分模型的去噪算法,提出一種新的基于整體變分模型的隨機值脈沖噪聲去噪方法,以達到更好的去噪效果。

1 基于整體變分模型的去噪方法

針對不同密度等級的隨機值脈沖噪聲圖像,本研究提出的去噪流程如圖1所示。

本文方法的第一階段是噪聲檢測,首先對被污染的圖像進行噪聲判定以獲得噪聲標識矩陣,然后根據修正準則對噪聲標識矩陣進行二次處理以防止對圖像像素的誤判。而第二階段噪聲去除,采用快速整體變分模型將噪聲標識矩陣的點依次進行修復處理。

1.1 噪聲檢測

根據噪聲的密度,將噪聲分為低密度、中密度和高密度三種情況,分別采用不同的鄰域窗口和判定準則進行噪聲檢測。同時,為了避免對圖像的邊緣點誤判為噪聲,本研究還提出了相應的修正準則,對判定為噪聲的像素進行二次處理。

1.1.1 低密度噪聲檢測

對于低密度(密度小于等于20%)噪聲的圖像,采用3 px×3 px的鄰域窗口。

判定準則1:考察圖像中的任意像素P,計算該像素灰度值與周圍8個點的灰度值的差的絕對值。如果最小的3個絕對值之和小于或等于給定的閾值T(本研究取為48),則判定像素P為非噪聲像素;否則,判定像素P為噪聲像素。

上述判定準則對非邊緣點,能夠取得較好的檢測效果。但對于圖像的邊緣點,由于它與周圍8個點的灰度值的差別較大,容易誤判為噪聲像素。因此,需要對這些已判定的噪聲像素進行修正。

修正準則1:對于噪聲像素Q,假設其灰度值為v,計算Q的3 px×3 px鄰域窗口內非噪聲像素的平均值,記為v1。如果滿足:v與v1的差的絕對值小于等于T1,或者Q的3 px×3 px鄰域窗口內存在相似的非噪聲像素(該像素的灰度值與v的差的絕對值小于等于20),則將像素Q修正為非噪聲像素。其中參數T1給定方法如下:計算Q的3 px×3 px鄰域窗口內非噪聲像素的方差,如果該方差值較大,則T1取為32,否則T1取為16。

1.1.2 中密度噪聲檢測

對于中密度(密度大于20%,小于等于40%)噪聲的圖像,采用5 px×5 px的鄰域窗口。

判定準則2:考察圖像中的任意像素P,計算該像素灰度值與周圍24個點的灰度值的差的絕對值。如果3 px×3 px的鄰域窗口內對應的最小的3個絕對值之和小于或等于給定的閾值T,或者5 px×5 px的鄰域窗口內對應的最小5個絕對值之和小于或等于給定的閾值T+16,則判定像素P為非噪聲像素;否則,判定像素P為噪聲像素。

這一判定準則對非邊緣點,能夠取得較好的檢測效果。然而,對于圖像的邊緣點,需要對這些已判定的噪聲像素進行修正。

修正準則2:對于噪聲像素Q,假設其灰度值為v,計算Q的3 px×3 px鄰域窗口內非噪聲像素的平均值,記為v1;計算Q的5 px×5 px鄰域窗口內非噪聲像素的平均值,記為v2。如果滿足:v與v1的差的絕對值小于等于T1,或者v與v2的差的絕對值小于等于T2,或者Q的3 px×3 px、5 px×5 px鄰域窗口內存在相似的非噪聲像素(該像素的灰度值與v的差的絕對值小于等于20),則將像素Q修正為非噪聲像素。其中參數T1和T2給定方法如下:計算Q的3 px×3 px鄰域窗口內非噪聲像素的方差,如果該方差值較大,則T1取為32,否則T1取為16;計算Q的5 px×5 px鄰域窗口內非噪聲像素的方差,如果該方差值較大,則T2取為32,否則T2取為16。

1.1.3 高密度噪聲檢測

對于高密度(密度大于40%)噪聲的圖像,采用7 px×7 px的鄰域窗口。由于噪聲密度大,所以需要采用區別于低密度噪聲和中密度噪聲的檢測方法。

判定準則3:考察圖像中的任意像素P,計算該像素灰度值與周圍48個點的灰度值的差的絕對值。如果3 px×3 px的鄰域窗口內對應的最小的3個絕對值之和大于給定的閾值T,或者5 px×5 px的鄰域窗口內對應的最小的5個絕對值之和大于給定的閾值T+16,或者7 px×7 px的鄰域窗口內對應的最小的7個絕對值之和大于給定的閾值T+32,則判定像素P為噪聲像素;否則,判定像素P為非噪聲像素。

對于非邊緣點,這一判定準則能夠取得較好的檢測效果。然而,對于圖像的邊緣點,由于它們與周圍點的灰度值差別較大,容易被誤判為噪音像素,因此需要對這些已判定的噪聲像素進行修正。

修正準則3:對于噪聲像素Q,假設其灰度值為v,計算Q的5 px×5 px鄰域窗口內非噪聲像素的平均值,記為v1;計算Q的7 px×7 px鄰域窗口內非噪聲像素的平均值,記為v2。如果滿足:v與v1的差的絕對值小于等于T1,或者v與v2的差的絕對值小于等于T2,或者Q的5 px×5 px、7 px×7 px鄰域窗口內存在相似的非噪聲像素(該像素的灰度值與v的差的絕對值小于等于20),則將像素Q修正為非噪聲像素。其中參數T1和T2給定方法如下:計算Q的5 px×5 px鄰域窗口內非噪聲像素的方差,如果該方差值較大,則T1取為32,否則T1取為16;計算Q的7 px×7 px鄰域窗口內非噪聲像素的方差,如果該方差值較大,則T2取為32,否則T2取為16。

1.2 整體變分模型

Chan等于2002年提出基于整體變分模型的圖像修復算法[17]。但原始修復方法速度慢,修復效果不太理想。許多學者在此基礎上提出了快速修復算法[21],并完全采用未破壞的區域信息對圖像進行修復[22],取得了比較好的修復效果。

假設圖像為u(x,y),本研究采用的TV模型修補基本公式[22]如下:

(1)

設目標像素點O的位置為(i,j),它周圍上、下、左、右對應的鄰域點位置組成的集合為∧={PW,PE,PN,PS}={(i-1,j),(i+1,j),(i,j-1),(i,j+1)}(如圖2所示)。其中w,e,s,n分別為PW和O的中點、PE和O的中點、PS和O的中點、PN和O的中點,這4個點對應的像素值未知。令v=(v1,v2)=u/|u|ε,則它的散度為:

(2)

同理可得v1w,|uw|ε,v2n,|un|ε,v2s,|us|ε。將式(2)代入式(1),可得:

(3)

如果目標像素點O的上、下、左、右對應的鄰域點均為非噪聲像素,則按式(3)進行修復;如果存在噪聲像素,則對式(3)修正如下:

(4)

其中:如果點p為非噪聲像素點,則m(p)=1;如果點p為噪聲像素點,則m(p)=0。這樣可以減少噪聲對修復的干擾。

1.3 去噪方法

基于整體變分模型的去噪方法流程,先輸入噪聲圖像、迭代次數、初始閾值,然后分以下幾個步驟完成:

1)根據噪聲判斷和修正準則得到噪聲標識矩陣;

2)對噪聲標識矩陣的噪聲像素,按照公式(4)進行修復,并將修復后的像素標記成非噪聲像素;

3)更新閾值;

4)重復步驟1)→2)→3),直到設定的迭代次數完成。

2 仿真實驗

本文采用MATLAB R2021a作為開發工具,在Windows 10平臺上實現了基于整體變分模型的隨機值脈沖噪聲去除算法。為了驗證算法的性能,本研究使用512 px×512 px的Lena灰度圖像進行了仿真實驗,如圖3所示。為了公平地比較各種方法的性能,本研究采用了以下兩種方式:1)對于能夠獲取代碼的方法,在不同噪聲密度下對圖像進行了10次去噪處理,并取平均值作為最終的去噪結果;2)對于部分缺失代碼的方法,用該方法文獻上提供的實驗數據進行對比分析。通過與其他幾種常用的去噪算法進行比較,本文從主觀視覺效果和客觀評價指標兩方面對本文算法進行了評估和分析。

仿真實驗中針對低、中、高密度范圍,分別對圖像疊加20%、40%、60%的隨機值脈沖噪聲,使用本文算法取得的去噪效果如圖4所示。

本研究用峰值信噪比PSNR(peak signal noise ratio)作為評價圖像質量的客觀指標,并將本文算法與兩類對比方法進行了實驗對比。其中一類是基于開關濾波器的方法,如PSM、TSM、MSM、PWMAD、SNC、SPF、APCM、SSD;另一類是基于整體變分模型的方法,如OGSTV-Lp、DBMTVD。

表1展示了本文算法與其他算法在不同噪聲密度下的去噪效果。從表1可以看出,本文算法在噪聲密度不大于50%的時候,均表現出最好的效果;而在噪聲密度高于60%的時候,本文算法稍弱于SNC算法。這可能是因為SNC算法使用了一個較大的鄰域窗口(9 px×9 px),在高密度噪聲的圖像中,更有可能在窗口內找到未受污染的圖像點,而小窗口則可能完全被噪聲點占據。通過計算所有噪聲密度區間內所有算法的PSNR值的平均值,可以發現本文算法仍然領先于其他算法,這說明本文算法在不同噪聲密度下都具有較強的魯棒性和去噪性能。

表1 不同算法Lena 圖像去噪后PSNR 比較

3 結論

為了有效地去除不同噪聲密度的隨機值脈沖噪聲,結合開關濾波器的靈活性和整體變分模型的去噪效果,本研究提出一種新的開關整體變分去噪方法。本文方法對于不同密度的噪聲,分別采用不同大小(3 px×3 px、5 px×5 px和7 px×7 px)的窗口鄰域,進行自適應檢測和修正,然后利用整體變分模型對噪聲像素進行重構,保持圖像的細節信息。同時,本文方法將噪聲檢測和去噪模型采用動態閾值重復迭代處理。實驗結果表明,本文方法在不同噪聲密度下能夠取得較滿意的結果,且具有較強的魯棒性,優于對比的其他基于開關濾波器的方法和基于整體變分模型的方法。這說明本文提出的開關整體變分去噪方法可以更好地修復隨機值脈沖噪聲圖像,保護更多圖像細節。

未來的工作可以從以下兩個方面展開:一是對不同類型噪聲圖像的處理效果進行進一步研究,比如高斯噪聲、椒鹽噪聲等,探索模型的適應性和通用性;二是對整體變分模型的參數選擇和優化進行深入探討,提高算法的效率和穩定性,減少計算時間和內存消耗。

猜你喜歡
變分鄰域灰度
采用改進導重法的拓撲結構灰度單元過濾技術
基于灰度拉伸的圖像水位識別方法研究
逆擬變分不等式問題的相關研究
稀疏圖平方圖的染色數上界
求解變分不等式的一種雙投影算法
基于鄰域競賽的多目標優化算法
關于一個約束變分問題的注記
基于最大加權投影求解的彩色圖像灰度化對比度保留算法
一個擾動變分不等式的可解性
基于灰度線性建模的亞像素圖像抖動量計算
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合