任 超,張勝國(guó)a,2,李現(xiàn)廣a,王子彥a,閆志恒a
(1.桂林理工大學(xué) a.測(cè)繪地理信息學(xué)院;b.廣西空間信息與測(cè)繪重點(diǎn)實(shí)驗(yàn)室,廣西 桂林 541006;2.中國(guó)電建集團(tuán)貴陽勘測(cè)設(shè)計(jì)研究院有限公司,貴陽 550081)
由于傳感器系統(tǒng)本身存在的缺陷及周圍環(huán)境因素的影響, 遙感影像在獲取和傳輸過程中會(huì)受到噪聲干擾, 嚴(yán)重影響了圖像后續(xù)的使用和研究[1-2]。因此, 在遙感圖像預(yù)處理過程中, 有效去除噪聲并且盡可能多地保留原始圖像的細(xì)節(jié)信息顯得尤為重要。目前對(duì)遙感影像的處理主要考慮高斯噪聲及椒鹽噪聲[3-5]。傳統(tǒng)的去噪方法主要分為兩大類, 即空域?yàn)V波和頻域?yàn)V波, 這兩類濾波能夠有效去除噪聲, 但同時(shí)會(huì)使圖像邊緣及細(xì)節(jié)產(chǎn)生一定程度的模糊現(xiàn)象[6]。
近年來, 為了有效去除噪聲、 保護(hù)圖像細(xì)節(jié), Dabov等[7]提出了BM3D算法, 這是一種聯(lián)合三維濾波算法, 能夠有效去除高斯噪聲, 但對(duì)椒鹽噪聲去噪效果不佳; Zhang等[8]提出了前饋去噪卷積神經(jīng)網(wǎng)絡(luò)(DnCNN)算法, 它是目前基于深度學(xué)習(xí)的一種新的去噪方法, 能夠?qū)崿F(xiàn)高斯去噪, 但同樣對(duì)椒鹽噪聲去除效果不佳。在實(shí)際應(yīng)用中, 遙感影像所含噪聲并非是單一的, 大多為同時(shí)包含高斯噪聲與椒鹽噪聲的混合噪聲, 單一的傳統(tǒng)去噪方法在處理含有混合噪聲的遙感圖像時(shí)效果不理想。因此, 侯建華等[9]提出了將BayesShrink算法和自適應(yīng)Wiener濾波相結(jié)合的去噪方法, 該方法在一定程度上解決了混合噪聲去噪的問題, 但仍有較大的改進(jìn)空間; 朱建軍等[10]提出了3層組合濾波方法, 將Bayes小波閾值濾波、 自適應(yīng)Wiener濾波和自適應(yīng)中值濾波相結(jié)合, 達(dá)到去除混合噪聲的目的; 鄧開元等[11]提出了將三維塊匹配算法和自適應(yīng)中值濾波相結(jié)合的去噪算法; 任超等[12]提出了將BM3D和多級(jí)非線性加權(quán)平均中值濾波相結(jié)合的去噪方法。這些組合濾波雖然能夠達(dá)到去除混合噪聲的目的, 但最終都會(huì)殘留部分噪聲。
本文提出了將DnCNN算法與自適應(yīng)中值濾波相結(jié)合的去噪方法, 在DnCNN算法的基礎(chǔ)上增加了一層自適應(yīng)中值濾波, 為了在去噪過程中更好地保留影像的細(xì)節(jié)、 邊緣等信息, 在自適應(yīng)中值濾波過程中對(duì)影像進(jìn)行邊界擴(kuò)展[13], 采用噪點(diǎn)及其最近鄰域像素中值代替原濾波窗口中值, 提升影像邊緣及細(xì)節(jié)等信息的保護(hù)能力, 使去噪后的影像更加清晰。
前饋去噪卷積神經(jīng)網(wǎng)絡(luò)(DnCNN)是在卷積神經(jīng)網(wǎng)絡(luò)(CNN)的基礎(chǔ)上, 采用了更深的結(jié)構(gòu), 并且使用殘差學(xué)習(xí)算法、 正則化、 批量歸一化等方法提高算法的去噪性能, 能夠處理未知噪聲水平的高斯噪聲。DnCNN算法將圖像去噪視為一種判別學(xué)習(xí)問題, 通過端到端的可訓(xùn)練的卷積神經(jīng)網(wǎng)絡(luò), 采用殘差學(xué)習(xí)策略, 將圖像信息與噪聲進(jìn)行分離, 進(jìn)而將噪聲濾除, 恢復(fù)原始圖像。
X={x1,x2, …,xi, …,xn};
(1)
Y={y1,y2, …,yi, …,yn};
(2)
V={v1,v2, …,vi, …,vn};
(3)
V=Y-X;
(4)
(5)
DnCNN算法網(wǎng)絡(luò)架構(gòu)主要由3大部分組成: 第1部分(Conv+ReLU)為第一層, 該部分使用64個(gè)大小為3×3×C的濾波器生成64個(gè)特征圖, 然后將校正后的線性單位(ReLU, max(0,·))用于非線性, 這里C表示圖像通道的數(shù)量, 即于灰度圖像C=1, 對(duì)于彩色圖像,C=3; 第2部分(Conv+BN+ReLU)為2~D-1層, 該部分使用64個(gè)大小為3×3×64的濾波器, 并且在Conv和ReLU之間進(jìn)行批量歸一化;第3部分(Conv)為最后一層, 該部分使用C個(gè)3×3×64的濾波器對(duì)處理后的圖像進(jìn)行重構(gòu)輸出, 為避免產(chǎn)生邊界偽影, 在進(jìn)行卷積之前采用0填充的方式確保輸入圖像與輸出圖像大小保持一致。
傳統(tǒng)的自適應(yīng)中值濾波(IAMF)是一種非線性濾波, 它不僅能夠有效去除噪聲, 而且在一定程度上能夠保留邊緣紋理細(xì)節(jié)。該方法在去噪過程中主要分為兩個(gè)進(jìn)程, 可以定義為進(jìn)程A與進(jìn)程B。設(shè)X(i,j)為中心像素點(diǎn)(i,j)在進(jìn)行濾波時(shí)對(duì)應(yīng)的窗口(窗口允許的最大尺寸為Mmax),Zmin為窗口X(i,j)中灰度值的最小值,Zmax為窗口X(i,j)中灰度值的最大值,Imed為窗口X(i,j)中灰度值的中值,Z(i,j)為圖像像素點(diǎn)(i,j)位置上的灰度值:
ZA1=Imed-Zmin;
(6)
ZA2=Zmax-Imed;
(7)
ZB1=Z(i,j)-Zmin;
(8)
ZB2=Zmax-Z(i,j)。
(9)
濾波具體算法流程如下:
進(jìn)程A: 如果ZA1>0且ZA2>0時(shí), 轉(zhuǎn)入進(jìn)程B; 否則, 增大窗口X(i,j)尺寸。如果窗口尺寸x(i,j)≤Mmax, 則重復(fù)進(jìn)程A; 否則, 輸出該像素點(diǎn)灰度值Z(i,j)。
進(jìn)程B: 如果ZB1>0且ZB2>0時(shí), 輸出該像素點(diǎn)灰度值Z(i,j); 否則, 輸出中值Imed。
對(duì)于噪聲圖像, 自適應(yīng)中值濾波是以其濾波窗口內(nèi)的中值Imed替換噪聲點(diǎn)像素進(jìn)行輸出的, 因此窗口內(nèi)中值的大小直接影響去噪的效果及圖像模糊度, 當(dāng)中值像素點(diǎn)距離待替換噪聲點(diǎn)較遠(yuǎn)時(shí), 會(huì)導(dǎo)致圖像失真, 出現(xiàn)模糊現(xiàn)象。為了能夠在有效去除噪聲的同時(shí)較好保留圖像細(xì)節(jié)信息, 本文針對(duì)以上問題, 在經(jīng)典的自適應(yīng)中值濾波基礎(chǔ)上進(jìn)行改進(jìn):
(1)根據(jù)濾波算法流程, 在進(jìn)程B中, 如果ZB1>0且ZB2>0時(shí), 輸出該像素點(diǎn)灰度值Z(i,j); 否則, 利用Z(i,j)及其最近鄰域像素點(diǎn)的中值Zmed替換濾波窗口中值Imed, 進(jìn)行輸出。最近鄰域像素點(diǎn)如圖1所示, 其中Z(i-1,j)、Z(i,j-1)、Z(i+1,j)、Z(i,j+1)四個(gè)像素點(diǎn)表示點(diǎn)Z(i,j)的最近鄰域像素點(diǎn)。
圖1 最近鄰域像素點(diǎn)Fig.1 Nearest neighborhood pixel
(2)在濾波處理前, 對(duì)圖像進(jìn)行最大濾波窗口尺寸邊界擴(kuò)展, 確保原圖像邊界像素點(diǎn)也能夠自適應(yīng)地參與噪聲檢測(cè)與處理, 提升圖像邊緣信息的去噪效果。最大濾波窗口尺寸邊界擴(kuò)展如圖2所示: 假設(shè)最大濾波窗口尺寸大小為2, 圖2a表示一張尺寸為3×3像素大小的圖像X, 將其按最大濾波窗口尺寸進(jìn)行邊界擴(kuò)展, 并且復(fù)制原圖像邊界像素值對(duì)擴(kuò)展后的邊界進(jìn)行像素填充, 最終獲得擴(kuò)展邊界后的圖像Y(圖2b)。
圖2 圖像邊界擴(kuò)展示意Fig.2 Schematic of boundary expansion
本文算法將前沿的DnCNN算法與改進(jìn)的自適應(yīng)中值濾波相結(jié)合, 在有效去除混合噪聲的同時(shí)提升了圖像細(xì)節(jié)信息保護(hù)能力。采用DnCNN對(duì)含混合噪聲的圖像進(jìn)行高斯噪聲去除, 再對(duì)輸出的圖像進(jìn)行邊界擴(kuò)展, 利用改進(jìn)的自適應(yīng)中值濾波對(duì)輸出圖像進(jìn)行二次修正, 提高算法對(duì)于混合噪聲中椒鹽噪聲的去除能力。算法具體步驟如下:
(1)第一階段: 去除高斯噪聲。利用DnCNN算法對(duì)含有混合噪聲的圖像進(jìn)行高斯噪聲去除處理, 設(shè)置DnCNN接收?qǐng)龃笮?5×35, 相應(yīng)的深度D=17, 將卷積層(Conv)中的圖像通道數(shù)量C設(shè)置為1。
(2)第二階段: 圖像邊界擴(kuò)展。對(duì)于去除高斯噪聲后的圖像, 復(fù)制圖像最外側(cè)的邊界像素值, 將其對(duì)應(yīng)的上下左右邊界按最大窗口尺寸進(jìn)行擴(kuò)展。
(3)第三階段: 去除椒鹽噪聲。對(duì)于擴(kuò)展邊界后的圖像采用改進(jìn)的自適應(yīng)中值濾波去除圖像中的椒鹽噪聲, 濾波最大窗口尺寸設(shè)置為7×7, 將濾波后的圖像去除之前擴(kuò)展的圖像邊界, 最后得到去除混合噪聲后的圖像。
(4)第四階段: 算法去噪質(zhì)量評(píng)價(jià)。對(duì)于去噪后的圖像, 利用均方誤差(MSE)[15]、 峰值信噪比(PSNR)[16]、 平均結(jié)構(gòu)相似度(MSSIM)[17]3個(gè)因子以及邊緣檢測(cè)結(jié)果對(duì)圖像進(jìn)行去噪質(zhì)量評(píng)價(jià)。算法實(shí)現(xiàn)流程如圖3所示。
圖3 本文算法流程框架Fig.3 Flow framework of algorithm in this paper
將本文算法與BM3D 算法、 自適應(yīng)中值濾波、 DnCNN 算法進(jìn)行實(shí)驗(yàn)對(duì)比分析, 采用MSE、 PSNR、 MSSIM及邊緣檢測(cè)結(jié)果作為去噪效果評(píng)價(jià)指標(biāo), 顯示算法去除圖像混合噪聲的精度, 其中MSE值越小、 PSNR值越大表示去噪質(zhì)量越好, MSSIM更接近人眼的視覺評(píng)價(jià), 其值越大, 表示去噪后的影像結(jié)構(gòu)越完整。
(10)
PSNR=10×lg(2552÷MSE);
(11)
(12)
(13)
式中:F1(i,j)和F2(i,j)分別為原始影像與去噪影像;M與N為影像尺寸;SSIM為結(jié)構(gòu)相似度;MSSIM是通過將影像分塊計(jì)算SSIM, 然后對(duì)各分塊的SSIM取均值所得;x和y分別表示原始影像和去噪影像;μx、μy分別是x、y的平均值;σx、σy分別是x、y的標(biāo)準(zhǔn)差;σxy是x和y的協(xié)方差;c1=(k1L)2、c2=(k2L)2是用來維持穩(wěn)定的常數(shù);B是影像分塊數(shù)。
遙感影像中常見的混合噪聲濃度為25/0.005、 30/0.010、 35/0.030、 40/0.050(高斯噪聲標(biāo)準(zhǔn)差/椒鹽噪聲密度)。為了驗(yàn)證本文算法對(duì)于混合噪聲去噪的有效性與優(yōu)越性, 仿真實(shí)驗(yàn)采用大小為256×256像素的圖像, 分別對(duì)圖像加入上述4種濃度的混合噪聲, 比較本文算法與與BM3D、 IAMF、 DnCNN、 DAIN與自適應(yīng)中值濾波結(jié)合(DAIN)算法的去噪效果, 運(yùn)行平臺(tái)為Matlab R2018a, 實(shí)驗(yàn)結(jié)果見圖4??梢? 隨著噪聲濃度升高, 各算法去噪質(zhì)量下降, 但本文算法去噪效果相對(duì)穩(wěn)定。對(duì)于MSE、MSSIM這兩個(gè)指標(biāo), 在低濃度噪聲影響時(shí), 雖然本文算法去噪后的MSE、MSSIM與BM3D算法和DAIN算法基本持平, 但隨著噪聲濃度升高, BM3D算法的MSE、MSSIM指標(biāo)下滑嚴(yán)重, 并且本文算法各項(xiàng)去噪指標(biāo)均優(yōu)于DAIN算法。綜合各項(xiàng)指標(biāo)對(duì)比結(jié)果分析, 本文算法相比于傳統(tǒng)去噪算法具有更好的去噪效果。在噪聲濃度為25/0.005時(shí), 本文算法去噪效果如圖5所示。
圖4 5種方法的圖像去噪仿真模擬效果對(duì)比Fig.4 Comparison of image denoising simulation effects by 5 algorithms
圖5 仿真圖像去噪效果圖Fig.5 Denoising effect of simulated image
為了驗(yàn)證算法的可行性, 進(jìn)行一個(gè)真實(shí)遙感影像去噪實(shí)驗(yàn)。利用高分1號(hào)衛(wèi)星在2014年3月5日拍攝的江蘇某湖泊的正射影像作為去噪實(shí)驗(yàn)數(shù)據(jù), 截取實(shí)驗(yàn)數(shù)據(jù)大小為1 250×1 250像素, 同時(shí)對(duì)截取的影像添加不同濃度的噪聲, 以便進(jìn)行定量分析。各去噪算法在不同噪聲濃度條件下的遙感影像去噪實(shí)驗(yàn)結(jié)果見圖6。在噪聲濃度為30/0.010時(shí), 各去噪算法的去噪效果如圖7所示, 各算法去噪效果局部放大圖如圖8所示。
圖6 5種方法遙感影像去噪實(shí)驗(yàn)效果對(duì)比Fig.6 Denoising results of remote sensing image by 5 algorithms
圖7 各算法去噪效果圖Fig.7 Denoising effect diagram of each algorithm
圖8 各算法去噪效果局部放大圖Fig.8 Local enlarged view of denoising effect of each algorithm
自適應(yīng)中值濾波對(duì)于混合噪聲去噪效果較差, 其對(duì)椒鹽噪聲的去除效果明顯, 但受混合噪聲中高斯噪聲的影響。隨著噪聲濃度升高, 其均方根誤差迅速增大, 峰值信噪比及平均結(jié)構(gòu)相似度也迅速下降, 圖像模糊嚴(yán)重。BM3D算法在噪聲濃度較小時(shí)去噪效果較好, 特別是對(duì)高斯噪聲去除效果明顯, 但隨著噪聲濃度升高, 受到混合噪聲中椒鹽噪聲的影響, 其去噪質(zhì)量下滑明顯, 并且圖像中殘留有較多的椒鹽噪聲點(diǎn)。隨著噪聲濃度升高, DnCNN算法對(duì)于混合噪聲去噪效果相比BM3D算法穩(wěn)定, 但圖像中仍殘留有較多椒鹽噪聲點(diǎn), 從定量指標(biāo)MSE、 PSNR和MSSIM三方面比較分析, 本文方法均優(yōu)于DnCNN算法。通過本文方法去噪后的圖像, 隨著噪聲濃度升高, 其均方根誤差、 峰值信噪比及平均結(jié)構(gòu)相似度相對(duì)穩(wěn)定, 并且圖像中殘留的椒鹽噪聲點(diǎn)相對(duì)較少; 從PSNR、 MSSIM兩個(gè)指標(biāo)分析, 本文算法均優(yōu)于DAIN算法。 因此, 無論是從主觀視覺還是客觀指標(biāo)上來看, 本文提出的組合去噪方法均優(yōu)于傳統(tǒng)的去噪算法, 可用于實(shí)際遙感影像去噪。
為分析去噪后影像的邊緣細(xì)節(jié)保留情況, 對(duì)去噪影像進(jìn)行邊緣檢測(cè)。截取3.2節(jié)中遙感影像的部分影像作為檢測(cè)實(shí)驗(yàn)數(shù)據(jù), 采用Canny算子[18]對(duì)上述算法去噪后的影像作邊緣輪廓檢測(cè), 結(jié)果見圖9。
圖9 各算法去噪影像邊緣檢測(cè)結(jié)果Fig.9 Edge detection results of each algorithm for denoising image
通過邊緣輪廓檢測(cè)后, BM3D算法去噪后的影像輪廓線條相比本文算法較為稀疏, 原始影像的一些邊緣細(xì)節(jié)在去噪過程中被當(dāng)作噪聲濾除, 不能很好地保留影像的邊緣細(xì)節(jié)信息; IAMF算法去噪后的影像輪廓線條較為雜亂, 去噪后的影像殘留有較多的噪聲, 破壞了原始影像的輪廓結(jié)構(gòu), 影響了邊緣檢測(cè)的結(jié)果; DnCNN算法與DAIN算法去噪后的影像相比本文算法與原始影像檢測(cè)結(jié)果來看, 仍然有部分雜亂的輪廓線條, 去噪后的影像仍然殘留有部分噪聲, 并且影像的部分細(xì)節(jié)信息也被當(dāng)作噪聲濾除; 本文算法去噪后的影像輪廓線條較為連續(xù), 殘留的噪聲較少, 特別是在影像的中間及及下方區(qū)域, 相比原始影像, 去噪后都能檢測(cè)出影像的大致輪廓邊界, 說明經(jīng)過本文算法去噪后可以保留較多的影像邊緣細(xì)節(jié)信息。
遙感影像噪聲會(huì)對(duì)影像后續(xù)的使用和研究產(chǎn)生較大影響, 因此去噪是遙感影像處理中必不可少的環(huán)節(jié)。 針對(duì)影像中存在的混合噪聲, 提出一種新的遙感影像組合濾波去噪方法。由仿真實(shí)驗(yàn)與真實(shí)遙感影像去噪實(shí)驗(yàn)結(jié)果可見, 無論從主觀視覺效果還是從客觀質(zhì)量評(píng)價(jià)來看, 本文方法都具有較好的去噪性能, 且去噪效果優(yōu)于傳統(tǒng)去噪方法, 能夠有效去除高斯噪聲和椒鹽噪聲, 較好地保留圖理像邊緣及紋細(xì)節(jié), 可應(yīng)用于實(shí)際的遙感影像去噪處理。