池 越,趙文靜,周亞同
(河北工業(yè)大學(xué) 電子信息工程學(xué)院,天津 300401)
信號(hào)在采集和傳輸過(guò)程中往往混入了大量噪聲,因此有必要進(jìn)行去噪處理。信號(hào)去噪的方法很多,傳統(tǒng)的均值濾波[1]和中值濾波[2]等方法在去除信號(hào)噪聲的同時(shí)會(huì)使信號(hào)細(xì)節(jié)丟失,對(duì)信號(hào)造成一定程度的破壞。自適應(yīng)中值濾波[3]可根據(jù)噪聲干擾程度選擇濾波窗口的大小,在去噪的同時(shí)能較好地保護(hù)邊緣細(xì)節(jié)。小波變換[4]具有時(shí)域和頻域上的局部特性,對(duì)突變信號(hào)、非平穩(wěn)信號(hào)的去噪效果良好[5]。利用小波子帶的方向性和小波稀疏的相關(guān)性,將小波系數(shù)的概率分布建模成一種高斯混合模型[6],高斯混合模型與小波變換的結(jié)合[7]對(duì)噪聲濾除有更好的效果。近年來(lái)提出的基于非局部[8-11]的去噪算法可以大幅提高信號(hào)降噪性能,得到了廣泛應(yīng)用。
PGPD算法[12]利用信號(hào)的非局部自相似性NSS(Non-local Self-similarity),將信號(hào)分成一定數(shù)量的局部塊,對(duì)于其中任意一個(gè)局部塊可以提取出多個(gè)與此相似的非局部塊,它們共同組成新的塊組,用于學(xué)習(xí)明確的NSS模型[13],并將此模型應(yīng)用于噪聲信號(hào)進(jìn)行處理,與其他算法相比去噪性能得到較大提升。但PGPD算法在去噪過(guò)程中耗時(shí)較長(zhǎng),主要體現(xiàn)在創(chuàng)建非局部塊組過(guò)程中,對(duì)于信號(hào)中任意一局部塊,在以它為中心固定大小的搜索窗內(nèi)可以搜索到一定數(shù)量與此局部塊相似的非局部塊,其中搜索窗的大小決定著窗內(nèi)非局部塊數(shù)量的多少,進(jìn)而影響著算法的計(jì)算量,而PGPD算法在處理復(fù)雜信號(hào)時(shí)去噪速度較慢。
鑒于上述原因,本文提出快速PGPD算法。首先在搜索信號(hào)局部塊的相似塊時(shí)適當(dāng)減小搜索窗大小,縮小非局部塊的搜索范圍,再通過(guò)采樣篩選提取出對(duì)應(yīng)的相似塊??焖貾GPD算法有效避開(kāi)了相似性差的非局部塊,減少了不必要的計(jì)算量,節(jié)省了去噪時(shí)間。與傳統(tǒng)PGPD算法相比,改進(jìn)后的快速PGPD算法大幅提高了圖像信號(hào)的去噪速度,同時(shí)保證了信號(hào)質(zhì)量。并與其他去噪算法,如BM3D算法[14],EPLL算法[15]和WNNM算法[16]進(jìn)行比較,實(shí)驗(yàn)證明快速PGPD算法在去噪性能和去噪時(shí)間上均優(yōu)于其他算法。將PGPD應(yīng)用于地震信號(hào)去噪,取得了良好的效果,驗(yàn)證了其實(shí)用價(jià)值。
PGPD算法包括學(xué)習(xí)階段和去噪階段。在學(xué)習(xí)階段提取非局部相似塊組,首先從一系列自然信號(hào)中提取出許多塊組,每個(gè)塊組由一個(gè)局部塊和以它為中心足夠大的搜索窗內(nèi)與此局部塊相似的其他非局部塊共同組成?;诟咚够旌夏P偷膲K組PG-GMM用于學(xué)習(xí)自然信號(hào)的先驗(yàn)NSS。在去噪階段進(jìn)行高斯分量選擇和加權(quán)稀疏編碼,PG-GMM提供字典和正規(guī)化參數(shù),通過(guò)加權(quán)稀疏編碼進(jìn)行去噪,最后將這些塊組重建組成去噪后的新信號(hào)。
(1)
減去組均值的塊分量為
(2)
(3)
式中:D為對(duì)應(yīng)的特征向量組成的正交矩陣;α為稀疏編碼系數(shù)向量;ν為損壞噪聲。通過(guò)特征向量對(duì)應(yīng)的第i個(gè)特征值Λi來(lái)調(diào)整分布的比例因子,當(dāng)特征值Λi越大,則D中的第i個(gè)特征向量越重要,因此該特征向量的編碼系數(shù)分布應(yīng)該較稀疏,根據(jù)文獻(xiàn)[12]有
(4)
在信號(hào)中與局部塊相似的區(qū)域一般在該局部塊的附近位置,比在距離此局部塊較遠(yuǎn)的位置更有可能出現(xiàn),所以在目標(biāo)局部塊周圍選取搜索窗即可。如圖1所示,傳統(tǒng)PGPD算法選取的是以局部塊為中心,距離邊界各w個(gè)單位長(zhǎng)度的搜索窗,所以搜索窗大小為(2w+1)2。
圖1 傳統(tǒng)PGPD算法的局部塊與其相似窗
信號(hào)局部塊的相似性體現(xiàn)在其附近的各個(gè)區(qū)域,利用廣泛存在的信號(hào)結(jié)構(gòu)的自相似性,快速PGPD算法選取以局部塊為頂點(diǎn)的大小為w個(gè)單位長(zhǎng)度的窗作為其搜索窗,如圖2所示,搜索窗大小為(w+1)2。與圖1相比,搜索窗的大小雖然減小了,然而根據(jù)圖像信息的對(duì)稱性及廣泛分布性,新搜索窗內(nèi)所含有的相似性信息十分豐富。確定搜索窗后,需計(jì)算局部塊與相似窗中各非局部塊的歐氏距離,并對(duì)距離由小到大排序,選取前M個(gè)距離最小的非局部塊作為相似塊。對(duì)于每一個(gè)局部塊,計(jì)算量為(w+1)2,而對(duì)于傳統(tǒng)PGPD算法的局部塊,計(jì)算量為(2w+1)2。因此快速PGPD算法縮小了搜索范圍,大幅減少了計(jì)算量。
圖2 快速PGPD算法的局部塊與其相似窗
減小搜索窗在一定程度提高了PGPD算法的去噪速度,然而截止到當(dāng)前還達(dá)不到理想效果,下一步通過(guò)對(duì)搜索窗中的非局部塊進(jìn)行采樣,進(jìn)一步縮小取塊范圍,可有效避開(kāi)相似性差的非局部塊,減小算法的計(jì)算量。
已知搜索窗內(nèi)的非局部塊數(shù)為(w+1)2,對(duì)這些非局部塊進(jìn)行采樣,設(shè)采樣的個(gè)數(shù)為m,由于是隨機(jī)采樣,所以搜索窗內(nèi)的每一個(gè)非局部塊都可能被抽樣。非局部塊采樣過(guò)程中的抽樣由一個(gè)獨(dú)立的隨機(jī)變量Li決定,對(duì)于任意一非局部塊,規(guī)定Li=1代表此塊被抽樣的概率為pi,Li=0代表此搜索塊被抽樣的概率為1-pi。一般0 (5) 期望值為 (6) 式中:Fn和ξ分別是實(shí)際采樣率和平均采樣率。傳統(tǒng)PGPD去噪算法相當(dāng)于ξ=1,在這種情況下p=[1 1 … 1]T,即信號(hào)中的所有非局部塊被抽樣。 步驟1輸入含噪信號(hào),信號(hào)大小為ab; 步驟2遍歷信號(hào)中每個(gè)局部塊,建立搜索窗尋找非局部相似塊; 步驟3對(duì)搜索塊進(jìn)行采樣,抽選出相似塊組成新的塊組; 步驟4對(duì)新塊組進(jìn)行高斯分量選擇; 步驟5加權(quán)稀疏編碼得到新的塊組; 步驟6重建信號(hào); 步驟7輸出去噪信號(hào)。 基于以上提出的快速PGPD去噪算法,本文以10幅常用圖像信號(hào)為例進(jìn)行去噪。本實(shí)驗(yàn)在CPU主頻為2.50 GHz,內(nèi)存為4 GB,Windows7旗艦版64位操作系統(tǒng)的筆記本電腦上運(yùn)行,運(yùn)行環(huán)境為MATLAB(R2012b)。通過(guò)在圖像信號(hào)中疊加均值t=0、均方差σ=30的高斯白噪聲來(lái)研究圖像信號(hào)的去噪效果,以3個(gè)指標(biāo)來(lái)衡量:峰值信噪比PSNR、均方誤差MSE和算法運(yùn)行時(shí)間TIME。 (7) PSNR=10lg(max(S)2/MSE) (8) PGPD信號(hào)去噪算法的計(jì)算量與搜索窗的大小成正比例關(guān)系,搜索窗太大計(jì)算量過(guò)于復(fù)雜,算法運(yùn)行速度慢;搜索窗太小不能準(zhǔn)確表征信號(hào)特征,導(dǎo)致去噪效果差。因此需要確定一個(gè)大小合適的搜索窗,在提高算法運(yùn)行速度的同時(shí)也保證信號(hào)去噪效果。搜索窗的選取一般是在目標(biāo)局部塊附近,而不需要遍歷整個(gè)圖像信號(hào)。 在原PGPD算法中,局部塊到搜索窗的邊距大小w為15,因此原PGPD算法的搜索窗大小(2w+1)×(2w+1)對(duì)應(yīng)為31×31,本文新確定的搜索窗大小(w+1)×(w+1)對(duì)應(yīng)為16×16,窗口大小近似為原來(lái)的四分之一,在保證信號(hào)質(zhì)量的前提下大幅減少了窗內(nèi)非局部塊的數(shù)量,從而減小算法的計(jì)算量。將改進(jìn)的原PGPD算法命名為快速PGPD算法,圖3為σ=30高斯噪聲下,對(duì)10幅不同的常用圖像信號(hào)進(jìn)行去噪處理,原PGPD算法與快速PGPD算法關(guān)于PSNR和TIME的對(duì)比圖。由圖3可以發(fā)現(xiàn),快速PGPD算法比原PGPD算法去噪后的圖像PSNR有略微減小,而在運(yùn)行時(shí)間上則大幅減少,提高了算法運(yùn)行速度。 (a)兩種算法去噪效果對(duì)比 (b)兩種算法去噪時(shí)間對(duì)比圖3 10幅經(jīng)典圖像應(yīng)用兩種算法的去噪結(jié)果對(duì)比 上述改進(jìn)在一定程度上提高了原PGPD算法的運(yùn)行速度,但效果還不夠理想,因此對(duì)搜索塊進(jìn)行采樣處理。為了確定最優(yōu)的搜索塊采樣數(shù),在減小搜索窗的基礎(chǔ)上,對(duì)3個(gè)經(jīng)典圖像信號(hào)進(jìn)行隨機(jī)采樣,對(duì)不同采樣數(shù)目的實(shí)驗(yàn)結(jié)果進(jìn)行分析。如圖4所示,隨著采樣個(gè)數(shù)的變化,圖像信號(hào)去噪性能和去噪時(shí)間也會(huì)發(fā)生改變。 (a)三幅不同圖像的PSNR隨采樣個(gè)數(shù)的變化 (b)三幅不同圖像的TIME隨采樣個(gè)數(shù)的變化圖4 采樣個(gè)數(shù)對(duì)圖像去噪的影響 在圖4(a)中隨著采樣個(gè)數(shù)增多,3個(gè)圖像信號(hào)的PSNR值最開(kāi)始基本保持不變,到達(dá)轉(zhuǎn)折點(diǎn)后會(huì)略微增大。在圖4(b)中隨著采樣個(gè)數(shù)增多,TIME值先緩慢增長(zhǎng),到達(dá)一定值后快速增長(zhǎng)。本實(shí)驗(yàn)采樣點(diǎn)個(gè)數(shù)為:16、32、64、128、192、256。通過(guò)圖4可以發(fā)現(xiàn),當(dāng)采樣點(diǎn)數(shù)大于192后,PSNR值有微小增長(zhǎng)而TIME值大幅度快速增長(zhǎng),所以采樣點(diǎn)192之后的采樣數(shù)可舍棄。因此在0~192之間需選取一個(gè)合適的值作為最終采樣個(gè)數(shù),為了在PSNR和TIME兩者間達(dá)到一個(gè)合適的折中,選取采樣數(shù)為128作為搜索塊采樣值,即搜索窗總塊數(shù)的二分之一。 以上為隨機(jī)采樣,目的是確定采樣個(gè)數(shù),下一步需要確定采樣位置。通常以圖像信號(hào)的目標(biāo)局部塊為左上角確定搜索窗,然而當(dāng)目標(biāo)局部塊位于圖像的右下方且圖像信號(hào)不能完整容納規(guī)定大小的搜索窗時(shí),以目標(biāo)局部塊為右下角確定搜索窗。鑒于此特性,目標(biāo)局部塊附近的128個(gè)搜索塊的相似性較大,因此確定以目標(biāo)局部塊為首的前128個(gè)塊為采樣位置。 對(duì)13個(gè)圖像信號(hào)進(jìn)行去噪,針對(duì)PSNR、MSE和TIME進(jìn)行分析,圖像信號(hào)名稱下方注明了對(duì)應(yīng)信號(hào)尺寸。表1為采用PGPD算法和快速PGPD算法后的結(jié)果對(duì)比。表1對(duì)13個(gè)圖像信號(hào)分別用PGPD算法和快速PGPD算法進(jìn)行去噪,并對(duì)兩種去噪方法進(jìn)行對(duì)比分析,可以發(fā)現(xiàn)快速PGPD算法在PSNR上略微低于PGPD算法,降低了1%左右,然而在時(shí)間上可以提高40%左右??焖貾GPD算法在保證去噪圖像信號(hào)質(zhì)量輕微損失的情況下,提高了去噪速度,所以快速PGPD算法在對(duì)尺寸較大的圖像進(jìn)行去噪時(shí)可以節(jié)省更多的時(shí)間。圖5是利用快速PGPD算法對(duì)上述實(shí)驗(yàn)中2個(gè)圖像信號(hào)進(jìn)行去噪的結(jié)果,對(duì)比去噪前后,圖像信號(hào)的保真度較好。 將改進(jìn)的快速PGPD去噪算法與近幾年提出的圖像信號(hào)去噪效果較好的3種算法進(jìn)行比較,包括BM3D去噪算法、EPLL去噪算法和WNNM去噪算法。其中BM3D算法是一種基于變換域增強(qiáng)稀疏表示的圖像信號(hào)去噪方法,EPLL算法通過(guò)在圖像信號(hào)中抽樣高似然值的塊模型進(jìn)行去噪,WNNM算法利用加權(quán)核范數(shù)最小化原理結(jié)合圖像信號(hào)的非局部自相似性進(jìn)行去噪。用不同的算法對(duì)8幅加入σ=30的高斯噪聲的經(jīng)典圖像分別進(jìn)行去噪實(shí)驗(yàn),通過(guò)MATLAB仿真實(shí)驗(yàn)得到的數(shù)據(jù)記錄見(jiàn)表2、表3,從PSNR和TIME兩個(gè)方面進(jìn)行對(duì)比分析。 表1 13個(gè)圖像信號(hào)采用PGPD算法和快速PGPD算法去噪后的結(jié)果對(duì)比 (a)原始babara圖像信號(hào) (b)加噪babara圖像信號(hào) (c)去噪babara圖像信號(hào) (d)原始cameraman圖像信號(hào) (e)加噪cameraman圖像信號(hào) (f)去噪cameraman圖像信號(hào)圖5 快速PGPD去噪效果 表2 不同算法對(duì)圖像信號(hào)去噪性能PSNR的對(duì)比dB 表3 不同算法對(duì)圖像信號(hào)去噪時(shí)間TIME的對(duì)比 s 由表2可以發(fā)現(xiàn),快速PGPD算法的PSNR值大于BM3D算法,僅次于WNNM算法,與EPLL算法的去噪性能接近,而在表3中快速PGPD算法的去噪速度要遠(yuǎn)大于EPLL算法和WNNM算法??焖貾GPD算法的運(yùn)行速度最快,其次是BM3D算法,EPLL算法運(yùn)行速度比前兩者都慢,而WNNM算法需要訓(xùn)練在線字典,所以運(yùn)行速度更慢。因此綜合去噪效果和去噪速度,快速PGPD去噪算法為最優(yōu)去噪算法。 地震信號(hào)采集和處理[17]可用于勘探石油[18]和天然氣,獲知地質(zhì)結(jié)構(gòu)分布情況。然而一般采集到的地震信號(hào)往往摻雜噪聲,而且采集技術(shù)能采集到海量地震信號(hào),因此對(duì)地震信號(hào)去噪算法[19-20]的速度要求較高。傳統(tǒng)的PGPD算法因?yàn)樗俣容^慢,不適合用于地震去噪。本文的快速PGPD算法在時(shí)間上優(yōu)于原算法,應(yīng)用于地震信號(hào)可以提高去噪速度。 圖6、圖7為對(duì)2個(gè)不同的地震信號(hào)進(jìn)行快速PGPD去噪處理,圖6為海洋地震信號(hào),是規(guī)則的二維疊后地震數(shù)據(jù),共240道,每道750個(gè)采樣點(diǎn)。圖7為陸地地震信號(hào),共240道,每道750個(gè)采樣點(diǎn)。以上兩個(gè)信號(hào)均是規(guī)則的二維疊后地震信號(hào)。 (a)原始信號(hào) (b)加噪信號(hào) (c)去噪信號(hào)圖6 對(duì)海洋地震信號(hào)進(jìn)行快速PGPD去噪 (a)原始信號(hào) (b)加噪信號(hào) (c)去噪信號(hào)圖7 對(duì)陸地地震信號(hào)進(jìn)行快速PGPD去噪 由圖6、圖7可知,加入噪聲后,地震信號(hào)變得模糊,信號(hào)特征不明顯,通過(guò)快速PGPD算法進(jìn)行去噪,去噪信號(hào)與原始信號(hào)相比基本無(wú)失真,可以發(fā)現(xiàn)快速PGPD去噪算法在去除噪聲的同時(shí)較好地保留了原始地震信號(hào)的細(xì)節(jié)信息,保證了信號(hào)的真實(shí)度。從數(shù)值上直觀定量地分析兩種方法的去噪效果,具體對(duì)比數(shù)據(jù)見(jiàn)表4,證明了快速PGPD算法去噪速度的優(yōu)越性。 表4 PGPD算法和快速PGPD算法對(duì)地震信號(hào)去噪的對(duì)比 本文提出一種快速PGPD算法,根據(jù)圖像的非局部自相似性適當(dāng)減小搜索窗大小,從而減少搜索塊的數(shù)量,在搜索塊中采樣抽取了代表非局部相似性的部分非局部塊,通過(guò)歐氏距離計(jì)算提取出一定數(shù)量的相似性較好的局部塊組成新的塊組。利用新的塊組進(jìn)行高斯分量選擇和加權(quán)稀疏編碼,重建形成去噪后的圖像。理論分析和實(shí)驗(yàn)結(jié)果表明,快速PGPD算法在去噪過(guò)程中,提取圖像相似塊時(shí)有效避開(kāi)了相似性差的非局部塊,通過(guò)歐氏距離計(jì)算可以快速準(zhǔn)確搜索到相似塊,減少了不必要的計(jì)算量。通過(guò)與其他圖像去噪算法(BM3D算法、EPLL算法、WNNM算法)進(jìn)行對(duì)比分析,快速PGPD去噪算法在去噪性能和去噪時(shí)間上都有較好的優(yōu)越性,可以保證圖像質(zhì)量輕微損失的情況下大幅提高算法的去噪速度、綜合運(yùn)行時(shí)間和去噪效果,比原PGPD算法有了進(jìn)一步改善。同時(shí)快速PGPD去噪算法還可應(yīng)用于其他信號(hào)處理,例如地震信號(hào)去噪,在地震去噪實(shí)驗(yàn)中對(duì)理論地震信號(hào)和實(shí)際地震信號(hào)分別進(jìn)行去噪,去噪效果明顯,還原了清晰的地震信號(hào),與原PGPD算法相比提高了去噪速度。2.3 快速PGPD算法的具體實(shí)現(xiàn)步驟
3 快速PGPD算法數(shù)字圖像去噪實(shí)驗(yàn)
3.1 減小搜索窗實(shí)驗(yàn)
3.2 搜索塊采樣實(shí)驗(yàn)
3.3 圖像去噪算法的比較
4 快速PGPD算法在地震信號(hào)去噪中的應(yīng)用
5 結(jié)束語(yǔ)