張 意, 闞子文, 邵志敏, 周激流
(四川大學計算機學院, 成都 610065)
在獲取遙感圖像的過程中,各種太空射線或者電磁波的干擾都有可能引入噪聲[1],圖像質量顯著下降,造成獲得圖像中的細節丟失、邊緣模糊,甚至形成死點或者帶狀噪聲,這些都會影響到遙感圖像的進一步分析應用,例如,目標檢測中的地物提取分割、天氣預測和環境檢測等[2].因此高質高效地遙感圖像去噪在遙感圖像處理中是非常重要的一環,具有重要應用價值.
目前,遙感圖像去噪方法主要有兩種:(1) 是基于變換域的方法;(2) 是基于空間域的方法.基于變換域的方法試圖通過不同變換從噪聲數據中分離出清晰的原始信號,主要方法包括主成分分析,傅里葉變換、小波變換等.Atkinson等[3]提出了一種利用離散傅里葉變換在光譜域中去相關的估計,并且利用小波變換進行空間域濾波.Othman等[4]提出了一種采用混合空間-光譜導數域的小波去噪方法,這種方法依賴于噪聲水平升高的光譜導數域,并受益于信號在空間以及光譜維度上的不同性質.這類方法的主要缺點是對于變換函數的選擇比較敏感,同時缺乏對遙感圖像中幾何性質差異的考慮.為了能夠有效利用合理的先驗知識,提出了一些基于空間域的方法,包括全變分[5],非局部相似性[6-8],稀疏表示[9-10],以及低秩模型[11-12]等.該類方法可以有效地去除圖像中的噪聲,同時保持圖像的空間以及光譜特性.Yuan等[5]提出了一種基于空間-光譜的自適應全變分去噪算法.Jose等[6]提出了一種自適應非局部均值的方法NLM3D (Non-Local Means 3D).Chen等[7]將BM4D (Block-Matching 4D Filtering)[8]方法應用于遙感圖像數據去噪,并且使用主成分分析來進行降噪.Lu等[9]提出了一種空譜-光譜自適應稀疏表達方法.此外,在聯合稀疏表示以及字典學習過程中,Li等[10]利用光譜帶間的結構以及相似性來進行去噪.由于遙感圖像相鄰波段的光譜相關性以及同一波段內的空間相似性.Renard等[11]提出了一種低秩張量近似的方法LRTA (Low Rank-Tensor Approximation),該方法同時進行空間低秩近似及光譜降維.此外,Zhang等[12]提出了一種低秩矩陣恢復的方法來進行高光譜遙感圖像去噪LRMR (Low-Rank Matrix Recovery).雖然以上去噪方法可以取得較好的結果,但是對于參數的選擇非常敏感[13],魯棒性較差,且算法對計算資源的要求較高.
近年來,深度學習技術發展迅速,其應用深入各個領域,在計算機視覺、圖像處理等方面都取得豐碩的成果,在高光譜領域也有許多其他方向的研究,如分類算法和虛擬維數分析[14]算法.在去噪領域上,Jain等[15]在2008年提出使用卷積神經網絡方法去除自然圖像的噪聲,該方法取得了較好的結果.此后,越來越多的神經網絡模型被應用于圖像去噪當中.Zhang等[16]利用卷積神經網絡來提取圖像內在的高維特征,避免了構造復雜的先驗約束項,實現了良好的去噪性能.但這些去噪方法在應用于遙感圖像時,沒有充分考慮遙感圖像的頻譜冗余特性.目前已有一些用于遙感圖像去噪的網絡模型出現.Xie等[17]提出了一種具有可訓練非線性函數的深層卷積神經網絡來去除遙感圖像中的噪聲.Yuan等[18]提出了一種基于空間-光譜的深度學習網絡來學習樣本域噪聲之間的非線性映射關系HSID-CNN (Hyper Spectral Image Denoising Convolution Neural Network).Liu等[19]提出了一種基于三維卷積核的雙通道網絡來圖像中去除噪聲3DADCNN (3D Atrous Denoising Convolution Neural Network).Zhang等[20]提出了一種基于空間域和光譜域梯度的高光譜去噪方法SSGN (Spatial-Spectral Gradient Network).Wei等[21]提出了一種基于循環一致性的高光譜去噪方法QRNN3D (3D Quasi-Recurrent Neural Network).Zhao等[22]提出了一種基于殘差注意力的高光譜去噪方法ARDN (Attention-based Deep Residual Network).其中HSID-CNN這一方法考慮將空間-光譜的多尺度特征進行聯合表達,得到了較好的結果.但是目前這些方法對于遙感圖像信息挖掘還不夠充分,網絡對噪聲的辨別能力不強.因此,本文結合注意力機制、殘差自編碼器以及感知損失,提出了一種新的基于深度學習的遙感圖像去噪方法.
噪聲可以認為是附加在圖像上的信號,遙感圖像的主要噪聲來源于電噪聲和電磁波噪聲.根據噪聲與圖像之間的關聯,可以將噪聲分為加性噪聲和乘性噪聲兩類.進一步研究表明,從噪聲對圖像的信號的相關性的建模,遙感圖像的噪聲為加性噪聲[23],可以表示為
z=a+n
(1)
式(1)中,z表示含噪聲圖像;a表示原始圖像;其大小均可以表示為M×N×B;M、N表示圖像的長和寬;B表示波段;n是高斯分布的加性噪聲.
考慮到遙感圖像噪聲數據以及干凈數據之間的關系可以通過深度學習模型來擬合函數進行表示,同時,深度學習模型在大規模數據表示具有顯著優勢.本文提出了一種結合注意力機制以及感知損失的殘差自編碼網絡模型來進行遙感圖像去噪.為了能充分地利用圖像的光譜以及空間信息,單個遙感圖像波段及其相鄰的K個波段同時作為網絡的輸入;其次由于遙感圖像中相同的物體往往在不同的區域有著不一樣的尺度,因此在網絡中使用了多尺度卷積來提取圖像的多尺度信息;同時為了提高網絡的辨識能力,本文將注意力機制引入網絡中,以盡可能地關注圖像中的重要特征;同時使用了一種基于注意力機制的殘差自編碼器結構用于圖像的去噪;最后,為了能夠保持圖像的視覺一致性,本文利用預訓練的VGG網絡提取特征,構造感知損失,聯合MSE損失進行訓練.
為了能夠充分提取遙感圖像特征,恢復更多的圖像細節,本文提出了一種新的結合注意力機制以及感知損失的網絡模型來處理遙感圖像去噪任務,稱為ARED-VGG(Attention based Residual Encoder-Decoder),本文所提出的方法整體框架如圖1所示.本文采用單波段遙感圖像及其相應的相鄰K個波段圖像同時作為網絡的輸入,分別表示為yspatial和yspectral,其大小分別為M×N以及M×N×K,這樣的輸入策略可以使得網絡獲取更多的光譜信息,進一步避免光譜失真.接著是特征提取模塊,由于遙感圖像地物在不同的區域中所表現出來的尺寸是不同的,所以本文使用不同的卷積核大小進行特征提取.在對yspectral進行特征提取后,考慮到并不是所有的特征都對其波段具有相同的效果,本文加入注意力機制模塊來進行辨別.其后采用注意力殘差自編碼結構來對特征進行重建.最后將重建后的結果與yspatial和yspectral進行堆疊,卷積后得到最后的去噪結果.圖1中,Concat表示的是堆疊操作;Conv表示的是卷積操作;k,n,s分別表示卷積核大小,輸出特征圖個數和卷積滑動步長大小.
遙感圖像中每個波段的紋理特征以及表面參數等都有非常高的相關性.因此,相鄰的光譜段對遙感圖像去噪效果的提升具有至關重要的作用.考慮到遙感圖像中地物大小不同.在本文中采用了3×3、5×5、7×7三種不同感受野大小的卷積對圖像的單波段以及相鄰波段進行特征提取,如圖2所示.采用這種模式可以同時獲得不同尺度的特征,同時可以捕捉到更多的圖像細節信息以及光譜信息.將不同的層獲得的不同的特征進行堆疊輸入到下一個處理模塊中,使得下一個模塊可以同時處理圖像的空間以及光譜信息.圖2中Input表示的是輸入,在網絡中是雙分支結構,其中一個分支是輸入單波段的圖像,另一個輸入則是輸入與單波段相鄰的K個波段.相鄰波段的取法為,數據前K/2個波段以及最后K/2個波段均取為最前以及最后的K個波段,其余波段則直接取相鄰K波段.然后 ,進行卷積操作Conv,特征圖數量以及滑動步長均相同,分別為40和1.最后,將輸出的特征進行堆疊Concat.經過不同尺度的特征學習模塊,可以提取到不同尺度的空間紋理信息,更大程度地保留更多的紋理細節.

圖1 ARED-VGG網絡整體結構圖Fig.1 Overall network structure of ARED-VGG

圖2 特征提取模塊Fig.2 Feature extraction block
傳統的深度學習卷積神經網絡對待每一個通道的特征都是相同的,缺乏辨別學習的能力,并且會限制深度網絡的表達能力.此外,從相鄰光譜圖像獲得的特征并不是都對去噪有著積極的影響.因此,網絡應該更多地關注那些有意義的特征.同樣,在編碼-解碼模塊中,對于那些提取有用信息的卷積來說也應該有更多的關注,以提升去噪的效果.基于以上考慮,本文引入注意力機制來自適應地調整特征表示.通道注意力模塊的網絡結構如圖3所示.主要由卷積層,池化層以及激活層構成,該模塊主要用于相鄰波段特征提取模塊之后以及編解碼模塊的后幾層當中.圖3中,注意力模塊可表示為
Out=In+w·x
(2)
式(2)中,In和Out分別表示輸入和輸出的特征圖;X表示經過兩個3×3卷積獲得的需要傳遞的殘差部分.前兩層部分可以表示為
X=W2·σ(W1·In)
(3)
式(3)中,W1和W2表示前兩個卷積層的權重參數;δ表示ReLU激活函數;W是通過學習得到的權重參數,對于得到的X首先使用全局平均池化操作,接著使用一個1×1卷積和ReLU函數,將特征通道數進行下采樣,然后使用一個1×1卷積恢復之前的通道數量,最后是Sigmoid函數用保證輸出的權重W在0到1之間.
W=Sigmoid(W4·σ(W3·GP(X)))
(4)
在式(4)中,W3和W4表示卷積層的權重系數;GP(·)表示全局平均池化操作.經過注意力模塊,可以學習到各個模塊的不同權重信息,網絡能辨別地關注更有意義的特征,優化去噪效果.
為了能夠更好地表達提取到的特征,以提升去噪效果,本文在圖像重建階段采用了注意力殘差自編碼器結構來進行處理.先用卷積層對特征進行編碼,然后使用卷積層進行解碼操作,中間通過殘差結構進行連接,同時在解碼結構中加入了注意力模塊,以便更高效地利用特征.該網絡模塊結構如圖4所示.
該模塊主要包括9層網絡結構,前5層及第9層是由一個卷積Conv和Leaky ReLU激活函數構成的, 6~8層網絡結構中加入了注意力模塊,所有層的卷積核大小均為3,特征輸出大小為120,卷積滑動步長為1,編解碼單元均是采用卷積操作,并使用殘差連接將對應的編碼解碼模塊連接在一起.編碼單元主要是將獲得的特征進一步深入提取特征信息進行編碼,同時消除噪聲.解碼單元主要是用于恢復圖像的細節部分,注意力機制可以用于進一步提升對于圖像特征中細節的關注,以便恢復出更多的細節信息.采用殘差連接主要是解決梯度消失以及其它的反向傳播問題,雖然解碼單元可以恢復一些圖像信息.采用這種方式可以進一步加快網絡的訓練,避免梯度消失的問題出現,同時可以避免丟失更多的細節信息.

圖4 注意力殘差自編碼器模塊Fig.4 Attention based residual auto-encoder module
已有文獻顯示[24],僅使用MSE損失可能會使得去噪后的圖像趨于平滑,圖像的視覺效果不好,因此本文引入感知損失,進行聯合訓練,可表示為
Ltotal=λ1LMSE+λ2LP
(5)
式(5)中,λ1和λ2表示平衡兩項損失的參數,在本文中分別設置為0.9和0.1;Ltotal表示最終的網絡損失函數;LMSE表示MSE損失函數;LP表示感知損失.本文中LMSE作為保真項用于確定去噪之后的結果盡可能地與目標圖像接近,表示為
(6)

(7)
式(7)中,φ(·)表示VGG-19特征提取器.
結合了感知損失的復合損失函數,引入了特征空間的相似度損失,使得恢復的圖像更符合人的視覺感觀,減小MSE損失所帶來的過平滑效果.
為了驗證本文所提方法的有效性,使用Washington DC mall以及AVIRIS Indian Pines 數據集進行仿真數據及真實數據的實驗驗證.選取NLM3D[6],LRMR[12],BM4D[8],HSID-CNN[18],3DADCNN[19]等幾類具有代表性的方法進行了實驗比較與分析,本文中根據原作者提供的鏈接下載了NLM3D,LRMR,BM4D等源碼并優化了實驗參數對數據進行了測試.同時本文中使用相同數據集,依照原論文的方法重新訓練HSID-CNN和3DADCNN.在預處理階段所有遙感圖像每一個波段的灰度值都歸一化到[0,1].使用MPSNR(Mean Peak Signal to Noise Ratio)[25]及MSSIM(Mean Structure Similarity Index Measure)[26]作為定量指標評價仿真數據的實驗結果.由于真實數據缺乏參照圖像,采用去噪后數據進行地形分類的精度OA (Overall Accuracy)以及卡帕系數(Kappa)作為定量指標[18].本文實驗中光譜相鄰波段數K設置為24,這一考慮是基于文獻[18]的實驗結果來設定的.實驗采用Adam算法對網絡進行訓練優化,參數設置分別為β1=0.9,β2=0.999,學習率設置為0.000 1.本文采用Pytorch框架來訓練網絡,基于Intel Xeon e5 2650 CPU 和 256 GB RAM,以及GTX 1080 Ti顯卡.以下將分為仿真數據實驗、真實數據實驗及網絡結構的消融實驗等3個部分來驗證本文方法的有效性.
本文中仿真數據實驗所用的數據為Washington DC mall遙感圖像數據集,大小為1280×303×191.參照標準測試流程[18],將實驗數據切分為兩個部分,一部分大小為200×200×191用于測試,另一部分則為1080×303×191用于訓練,訓練數據被裁剪為40×40,總共36 000個數據塊,數據塊之間沒有重疊.加性高斯白噪聲被添加到仿真數據中用于模擬噪聲數據,對于不同的波段添加相同水平的噪聲σn.
表1給出的是不同方法在不同噪聲水平下的MPSNR和MSSIM指標10次實驗的平均值和標準差.從表1中可以看出,本文所提出的方法的兩項指標多數高于其他4種方法.當噪聲情況較小時,可以看到不同方法的結果較為接近,LRMR在噪聲小的情況下數值結果最好,這主要是在低噪聲情況下干凈HSI的低秩性保持較好,但隨著噪聲變大,圖像的低秩性很難保持,算法性能隨之開始下降,但是本文所提出的方法ARED-VGG依然能夠取得不錯的數值結果,在高噪聲下的實驗數據表現最優.
圖5和圖6是Washington DC mall 在噪聲方差大小為0.075時,第97波段去噪結果以及由波段(185,97,2)去噪后的偽彩色結果.

表1 仿真實驗定量結果

圖5 Washington DC mall 97波段去噪結果圖Fig.5 Denoising result of Washington DC mall with 97 band

圖6 Washington DC mall去噪結果偽色圖(185,97,2)Fig.6 Pseudocolor denoising result of Washington DC mall with bands (185,97,2)
測試數據圖中主要包含建筑,道路,樹木以及水等地物.在圖5和圖6中,(a) 表示的是含噪圖像;(b) 表示的是NLM3D的去噪結果;(c) 表示LRMR的去噪結果;(d) 表示BM4D的去噪結果;(e) 表示的是HSID-CNN的去噪結果;(f) 表示的是3DADCNN的去噪結果;(g) 表示的是本文所提出的方法ARED-VGG的去噪結果;(h) 無噪聲的參考圖像.從結果可以看到,所有的方法都可以較好的去除噪聲,但是NLM3D以及BM4D去噪后圖像比較模糊,細節丟失明顯.LRMR和3DADCNN雖然保留了一些細節信息但是還存在著模糊或者噪聲未去除干凈的情況.從圖5中的放大區域中箭頭所指示的地方可以觀察到本文所提出的方法處理的結果在去噪后與參考圖像最為接近,HSID-CNN的去噪結果相比于本文所提方法也略有模糊.從圖5中放大區域箭頭所指示的地方可以看到,箭頭所指示的黑色線條、黑色框左下角以及光譜信息都接近于參考圖像,而其他對比方法存在著細節模糊或者光譜失真等情況.從圖6中可以發現本文方法在去噪后依然能夠保持圖像的光譜信息,并且去噪后保留了更多細節.從圖6中放大區域箭頭所指示的地方可以看到相比于參考圖像,其他結果保留的細節都弱于本文所提出的方法.
在遙感圖像中由于不同地物的物理參數不同,因此光譜反射率對于遙感圖像的解釋也是非常重要的.為了進一步驗證使用不同的方法對遙感圖像在光譜維度上去噪的有效性,圖7給出了干凈無噪聲圖像(a); NLM3D去噪后圖像(b); LRMR去噪后的圖像(c); BM4D去噪后圖像(d); HSID-CNN去噪后圖像(e); 3DADCNN去噪后圖像(f); 本文所提方法去噪后圖像,在像素點(87,112)處的光譜曲線(g).橫坐標表示的是波段數,縱坐標表示的是每個波段在相同位置的像素值.

圖7 各方法去噪結果中像素(87,112)的光譜曲線Fig.7 Spectral of pixel (87,112) in the denoising result
從圖7中可以看出,圖7(b)NLM3D以及圖7(d)BM4D方法去噪之后結果相對平滑,對比參照圖像有更多的細節信息被平滑,這個結果與圖5,圖6所展示的一致.圖7(c)中LRMR在去噪之后保留了更多的細節,但是可以發現相比于參考圖像的曲線來說,LRMR的結果還有更多毛刺的地方,即有較多噪聲未被去除.圖7(f)中3DADCNN的結果也具有許多毛刺的地方.同樣,從圖5和圖6也可以看出類似的結論.而本文所提出的方法ARED-VGG與HSID-CNN更加接近參考圖像的光譜曲線,但是可以看到,本文所提出方法在數據前50波段以及第150個波段左右的表現更加的接近參考圖像的曲線,也恰好同表1中ARED-VGG的定量結果一致.
表2給出各個方法的運行時間.可以看到,NLM3D和BM4D的運行非常耗時,而LRMR雖然運行時間較短,,但是傳統方法難以并行化實現,無法完全發揮GPU的優勢,相對于使用GPU的神經網絡而言,運行時間相差較大.在基于神經網絡的方法當中, HSID-CNN結構簡單,運行速率較快.3DADCNN由于使用了大量的三維稀疏卷積核,參數量大,運行速度相對較慢.而本文提出的ARED-VGG具有注意力模塊,運行速度略慢于HSID-CNN,但是仍快過3DADCNN,可以說在精度提升的條件下,同時具有較好的計算效率.

表2 噪聲強度0.075情況下各方法運行時間
為了進一步驗證本文所提方法的有效性,本文中使用AVIRIS Indian Pines Data Set來進行真實數據驗證,圖像大小為145×145×200.該數據中前面的幾個波段以及其他一些波段遭受到了不同程度的高斯噪聲污染[27].由于真實數據沒有參考圖像,因此本文使用去噪后圖像的地形分類準確率來進行判斷,文獻[28]的方法被用來作為分類器,所有方法都是相同的實驗環境,OA以及Kappa系數作為分類精度的評價指標.

圖8 Indian Pines 圖像去噪結果波段(2,3,197)Fig.8 Results for the Indian Pines with bands (2,3,197)
圖8給出了所有方法在波段(2,3,197)偽色圖像的去噪結果.圖8 中,(a)表示原始真實圖像;(b)表示NLM3D;(c)表示LRMR;(d)表示BM4D;(e)表示HSID-CNN;(f)表示3DADCNN;(g)表示本文所提出的方法去噪后的結果.從圖8中可以看到,HSID-CNN、3DADCNN以及本文所提出的方法ARED-VGG在處理真實圖像上表現出了良好的性能,相比其他方法,在去噪效果以及視覺效果上都要明顯優于其他方法.NLM3D和BM4D的結果相對平滑,LRMR去噪后細節有所保留,但是視覺上有光譜失真.表3中Origin表示的是去噪前Indian Pines的分類結果,所有的方法在數值上原始圖像都有提升,其中本文所提出的ARED-VGG方法能夠取得最好的分類結果,從而說明本文所提出的方法可以較好地去除圖像中的噪聲并且可以有效保持圖像的細節信息.
為了驗證引入感知損失以及注意力機制對去噪效果有一定的提升,本節主要對三種情況進行分析,分別是:(1) 網絡僅包含VGG模塊,表示為RED_VGG;(2) 網絡中僅有注意力機制模塊,表示為ARED;(3) 兩個模塊均沒有的情況,表示為RED.本節所使用的實驗數據以及評價指標與前兩節相同,實驗中所有的參數設置也相同.本節給出消融實驗的定量結果,以此來反映去噪效果.表4給出的是相關的幾種方法在仿真實驗下噪聲強度為0.075情況下的定量實驗結果.

表3 Indian Pines分類結果

表4 噪聲強度0.075情況下各方法定量結果
從表4中可以看到,RED 的結果最差,而使用了VGG模塊以及使用了注意力模塊的網絡在結果上數值都有所提升,并且在同時使用兩個模塊時的數值提升比較大.通過分析可以發現,在使用VGG模塊的網絡中結合注意力機制可以提升去噪后的MPSNR值,雖然結構相似度的值沒有得到提升,但是二者的差距是非常小的;在使用注意力模塊的網絡中結合VGG模塊后,可以發現兩項指標均得到提升.在實驗數據當中,RED-VGG的MSSIM最高,而MPSNR相比ARED-VGG較低.由于MPSNR更多體現去噪性能,MSSIM主要體現結構保持的性能,可能的原因在于引入注意力機制之后,對于網絡模型噪聲區域的辨識能力有所提升,從而改善了去噪性能,但是在此同時,也損失了一些結構,降低了MSSIM.
表5表示的是幾個不同方法去噪后使用同上一節相同的分類方法進行分類后的數值指標,評價指標依然與上一節相同,以此來進一步反映算法去噪性能.從結果可以看到,相比于基礎的RED結構,其他方法在數值上都有一定的提升,能夠說明注意力機制以及VGG網絡在遙感圖像去噪中是有效的.同時從以上的分析中可以發現本文在方法以及網絡結構上依然有許多需要提升的地方,以便得到更好的去噪后的結果,這也是需要進一步努力的方向.

表5 Indian Pines 分類結果
目前深度學習正逐步應用于遙感圖像去噪領域,針對目前一些基于深度學習遙感圖像去噪網絡缺乏判別能力以及去噪后細節缺失等問題.本文結合注意力機制、殘差自編碼器結構和感知損失,提出了一種新的深度學習網絡模型(ARED-VGG)用于解決遙感圖像去噪問題.將注意力機制應用于去噪,可以進一步使得網絡更加專注于圖像的重要特征以及細節信息.感知損失可以使得去噪后的圖像更加清晰.通過與NLM3D,BM4D,LRMR和HSID-CNN等方法進行對比實驗驗證以及對網絡結構進行消融實驗分析,本文所提出的方法可以有效地去除遙感圖像噪聲并保持圖像細節和光譜信息.有利于進一步將遙感圖像應用于檢測、分類等相關工作.由于本文所研究的遙感圖像去噪是基于加性高斯白噪聲,后續的研究將致力于對不同噪聲水平噪聲以及存在于遙感圖像中復雜真實的混合噪聲進行研究,以進一步將該領域的研究成果應用于更多的實際場景.