王煜,張鵬,孫愷悅,孫學宏,劉麗萍*
(1.寧夏大學 物理與電子電氣工程學院,寧夏 銀川 750021;2.寧夏大學 信息工程學院,寧夏 銀川 750021)
隨著遙感技術的發展,實現遙感滑坡區域的自動識別,對滑坡體監測、地質災害預防具有重要現實意義[1-2]?;伦R別作為其他研究工作的基礎,主要分為人工目視解譯、計算機識別兩類[3-4]。人工目視解譯依據遙感影像色彩、紋理等幾何特征,與專家知識、非遙感數據相結合,識別準確度較高[5-6],但存在專家知識依賴性強、遙感信息利用不充分、人工成本高、效率低、定量描述不準確等局限[7]。
近年來,計算機識別方法取得長足進步。機器學習通過提取區域相關特征,使用多層感知機(MLP)[8]、支持向量機(SVM)[9]、人工神經網絡(ANN)[10]等分類器進行遙感目標識別,自動化程度較高,但模型依賴手工設計,處理效率較低[11]。深度學習算法依托卷積神經網絡(CNN)及大量訓練樣本,不用人工構建特征圖,大幅提高了識別效率和精度[12]。深度學習的滑坡識別模型多聚焦于CNN[13-14],如趙福軍等[15]提出的多尺度分割DCNN模型,利用全連接結構提高模型泛化能力,滑坡目標提取總體精度達到87.68%,顯著優于傳統機器學習方法。簡小婷等[6]基于Faster R-CNN和高分1號衛星影像,實現了強特征滑坡目標的高識別率,但對形態殘缺的滑坡區域提取有限。針對滑坡目標與地物背景容易混淆的問題,姜萬冬等[16]提出基于模擬困難樣本的Mask R-CNN滑坡提取方法,該方法檢測精度達到94.0%,實現了低虛警率下的高性能滑坡分割。針對復雜場景下遙感目標邊緣識別不佳的問題,王曦等[17]基于UNET模型框架,引入FPN結構和BLR損失函數,大幅改善了目標邊緣識別結果。針對CNN局部感受野導致滑坡與地表背景難以區分的問題,許瀕支等[18]通過引入金字塔結構和通道注意力機制,增強了模型的多尺度特征提取和全局感知能力,在滑坡的完整性保持和區分光譜信息混淆方面取得明顯提升。此外,編碼器-解碼器結構在滑坡識別任務上表現優異,張蘊靈等[11]提出多尺度特征融合滑坡分割網絡框架,通過稠密連接提取局部特征,利用跳躍連接融合多尺度語義特征。與經典分割方法相比,具有更高的檢測精度,能夠有效削弱遙感影像背景噪聲。
基于卷積神經網絡的滑坡識別方法利用多層卷積聚合局部特征,缺乏明確捕獲長期(全局)特征間依賴關系的能力[19],對重點滑坡區域關注有限[20]。針對這些問題,本文提出一種基于注意力融合的遙感圖像滑坡目標識別方法。首先,在淺層特征中引入通道注意力與空間注意力機制,增強滑坡區域的特征權重。其次,在深層特征層,采用改進自注意力(Self-attention,SA)編解碼模塊將上下文特征序列化,最大限度獲取特征間相關關系。該方法利用CNN的圖像歸納偏差有效避免了自注意力的大規模預訓練。本文考慮到滑坡樣本小的問題,選擇擴充后的武漢大學滑坡檢測數據集作為研究數據源,選擇貴州省畢節市作為研究區,探索本文方法進行滑坡區域識別的可行性。
基于注意力融合的滑坡識別網絡結構如圖1所示。該方法遵循編碼器-解碼器體系結構,使用深度可分離卷積替代普通卷積進行特征提取,使用卷積塊注意力(Convolutional block attention,CBA)串聯跳躍連接(Skip connection)進行滑坡關注區域提取,使淺層特征提取更具針對性,將自注意力編解碼模塊應用到模型的深層特征表示,捕獲高級語義尺度下的全局依賴關系。

圖1 基于注意力融合的滑坡識別網絡結構Fig.1 Landslide identification network structure of attention fusion
自注意力機制由Vaswani等[21]提出,其善于發現數據特征內部的相互關聯性,能夠捕獲長期(全局)依賴關系。輸入特征圖X∈RC×H×W,其中C、H、W分別為通道維數、空間高度和寬度。首先,利用卷積將X映射到3個不同的特征空間Q、K、V∈Rd×H×W,其中d≤C,表示特征通道的維數。隨后將Q、K、V中單一位置的全通道特征數據分別序列化為qi,ki,vi∈R1×d(i∈{1,…,n}),其中n=HW,將Q、K、V特征空間的序列化數據分別拼合為Q′,K′,V′∈Rn×d。自注意力輸出fatt是一個可伸縮點積(Scaled dot-product):

其中,softmax為歸一化指數函數。具體來說,第i個查詢的上下文映射矩陣pi用來計算qi和每個ki的相關聯程度,以此作為權重,從vi中收集上下文信 息,qi、ki、vi分別為Q′、K′、V′的第i行序列數據。
在自注意力機制中,序列長度主導了自注意力計算。文獻[22]從理論方面證明了由自注意力機制形成的特征空間矩陣Q、K、V是低秩的,因此我們提出一種改進自注意力機制,即將原序列化數據組合K′、V′線性映射為低秩矩陣K″,V″∈Rs×d,其中s?n,自注意力輸出變換為:

經過改進的自注意力能夠縮短原序列化數據K′、V′的序列長度,從而達到減少模型參數,輕量化模型的目標。
2.2.1 改進自注意力編碼模塊
依照改進自注意力機制設計自注意力編碼模塊,結構如圖2所示。該模塊輸入語義特征圖X∈RC×H×W,生成3個空間矩陣Q、K、V,經過卷積操作得到Q′、K′、V′,再經過線性映射得到低秩矩陣K″、V″,利用Q′對K′進行查詢,獲取查詢結果Q′K″T,將查詢結果與隨機位置矩陣(Positional Encoding)相加并進行softmax處理得到矩陣V″序列數據間的關聯權重,其中隨機位置矩陣經過模型訓練可以獲取序列數據間的位置相關信息,最后將關聯權重矩陣與值矩陣V″相乘獲取語義特征圖的自注意力。該編碼模塊的本質是將特征圖映射為多條序列數據,將與每條序列數據相關的其他序列數據按照相關性強弱進行加權求和,并利用加權結果替代原序列數據得到輸出特征圖。改進自注意力編碼模塊能夠從通道和空間兩方面縮減特征圖尺度,減少了計算成本,實現了特征圖內部的自注意力機制。

圖2 改進自注意力編碼模塊Fig.2 Improved self-attention encoder module
2.2.2 改進自注意力解碼模塊
改進自注意力解碼模塊結構如圖3所示,該模塊利用低級語義特征X∈RC×H×W生成查詢輸入Q,利用高級語義特征Y∈RC×h×w生成鍵、值輸入K和V,經過類似編碼模塊的卷積與線性映射得到Q′、K″、V″,通過查詢結果Q′K″T獲取兩種語義尺度下序列數據間的相關性矩陣,加入位置信息和softmax處理后獲取特征X反映在特征Y上的相關性權重,最后將相關性權重與值V″矩陣相乘獲得自注意力特征圖。該解碼模塊的本質是獲得兩種語義尺度間序列數據的相關性,選出與低級語義特征每條序列數據相關的高級語義序列,將這些高級語義序列按照相關性強弱進行加權求和并替換對應的低級語義特征序列,進而獲得由高級語義序列線性表示的低級語義特征矩陣,即輸出特征圖。該解碼模塊在繼承編碼模塊優勢的基礎上,能夠捕獲不同特征圖不同空間位置特征的相關關系,實現了特征圖間的自注意力機制。

圖3 改進自注意力解碼模塊Fig.3 Improved self-attention decoder module
卷積塊 注意力 機制由Woo等[20]提 出,分為通道注意力和空間注意力兩部分,如圖4所示。通道注意力利用特征的通道間關系,獲取通道注意力圖,進而賦予高相關性通道以高權重。空間注意力則與之互補,其利用特征間的空間關系生成空間注意力圖,賦予通道內高相關區域以高權重。

圖4 卷積塊注意力模塊Fig.4 Convolutional block attention module
以特征圖X∈RC×H×W作為特征輸入,通道注意力圖為AC∈RC×1×1,空間注意力圖為AS∈R1×H×W。卷積塊注意力過程可以概括為


其中?表示逐元素乘法。在運算過程中,通道注意力值沿著空間維度進行傳播,空間注意力值則沿著通道維度進行傳播。
遙感圖像滑坡識別方法包括3個階段:數據準備階段,在空間尺度上對遙感滑坡數據集進行擴充,保證數據的一致性和真實性;訓練階段,設置參數訓練模型,直到損失收斂,最終得到模型的權重文件;驗證階段,輸入待檢測圖片,加載已訓練的模型權重,通過特征提取得到5種尺寸的特征圖,尺寸分別為28×28、56×56、128×128、256×256、512×512,利用編解碼得到預測滑坡區域,與真實滑坡區域進行比較,統計語義分割相關指標。
本次實驗使用的遙感數據集來自Ji等[23]制作的貴州省畢節市滑坡數據集。該數據集是包含滑坡光學影像及對應數字高程的公開滑坡數據集?;聰祿姓龢颖緮盗繛?70,負樣本數量為2003,其中光學影像分辨率為0.8 m,數字高程數據分辨率為2 m。本文選取770正樣本與1000負樣本進行擴充,擴充后正負樣本比例基本持平,總樣本數達到6083,具體類別如表1所示。

表1 數據集類別Tab.1 Dataset category
對于滑坡識別效果的評價,通常選用平均像素精度(mean Pixel Accuracy,mPA)和平均交并比(mean Intersection over Union,mIoU)衡量樣本分割結果;模型大小(Model size)、參數量(Parameter)和模型計算量(Giga Floating Point Operations,GFLOPs)用來衡量模型量級,模型越小,參數量越少,計算量越少,模型越輕量化,復雜度越低。本文針對兩種類別的遙感圖像數據集進行目標分割任務,選取mPA、mIoU、精準率(Precision)、召回率(Recall)、F1指數、參數量、模型大小和計算量作為模型的評價指標。

其中,TP為真正樣本;TN為真負樣本;FP為假正樣本;TN為假負樣本;CPA表示樣本的類別像素精度,CPAP表示滑坡類像素精度,CPAN表示背景類像素精度;IoU表示樣本的類別交并比,IoUP表示滑坡類交并比,IoUN表示背景類交并比。
3.3.1 實驗環境
本文實驗配置如下:操作系統為64位的Ubuntu系統,處理器為Intel Xeon Gold 6240,顯卡為NVIDIA RTX TITAN,內存為128 GB。深度學習框架為PyTorch1.9.0,其他的主要輔助軟件包括Anaconda4.9.2和Python3.9.7。
實驗輸入圖像尺寸為512×512,epoch設置為100,學習率設置為0.0001。圖5為模型訓練Loss損失曲線圖,可以看出在約65 epochs時,模型開始逐漸收斂,最終穩定在0.0048左右。

圖5 模型訓練loss變化曲線Fig.5 Loss curve during model training
3.3.2 實驗分析
實驗數據集大約按照9∶1劃分訓練集和測試集。本次實驗測試一共為600張圖片,其中包含300個滑坡正樣本,300個滑坡負樣本,模型的滑坡分割識別結果如圖6所示。從圖6可以看出,本文模型能夠精確提取滑坡位置,但存在滑坡邊界模糊的情況。造成的原因可能是由于植被區域光學影像與高程數據的光譜信息存在一致性,使模型無法分辨出精確的滑坡邊界。

圖6 滑坡分割結果Fig.6 Landslide detection and segmentation
為驗證本文算法的有效性,使用本文遙感圖像數據集進行對比實驗,對比了本文算法與U-net[24]、DeeplabV3+[25]和FCN[26]算 法 在 遙 感圖 像 測 試數據集上的各項分割指標,如表2所示。
通過對比各項分割指標可以發現,本文算法與U-net、DeeplabV3+相比,各項分割性能均有所提升,但相較FCN算法,本文算法略有不足,通過分析發現可能原因有兩方面:一方面相比于本文的改進自注意力機制,FCN模型的全連接層對于全局特征提取更為徹底,因而像素的分類精度更高;另一方面,FCN采用跳躍結構(Skip architecture),即融合多個尺度特征圖生成最終分割結果。相比于本文算法單一尺度下的特征拼接,這種多尺度特征圖融合方式細節信息損失更少,整體信息獲取維度更多,因而能夠幫助FCN提升細節和整體兩方面的性能。同時,上述原因也反映出FCN的模型量級可能遠大于本文模型。因此,本文針對參數量、模型大小和計算量方面進行對比實驗,結果如表3所示。雖然本文算法在計算量方面遜色于DeeplabV3+,但參數量和模型大小均有大幅削減,本文算法的模型大小和參數量僅是FCN的8.0%。

表3 模型復雜度對比Tab.3 Model complexity comparison
結合表2、3中的各項分割指標、參數量、模型大小、計算量的對比結果可得,本文算法的綜合分割性能要優于U-net與DeeplabV3+。與FCN算法相比,本文算法雖在分割精度方面還有待提高,但模型大小與模型計算量方面均有大幅削減。

表2 分割結果對比Tab.2 Comparison of segmentation results
為了驗證改進自注意力模塊和卷積注意力模塊的有效性,進行消融實驗,如表4所示。添加改進自注意力機制后,平均像素識別精度提升明顯,相比U-net提升了3.86%。改進自注意力處理前后的特征圖如圖7所示,可以看出經過改進自注意力模塊后,滑坡與背景區域差異得到明顯增強。

圖7 改進自注意力處理前后對比圖Fig.7 Comparison images before and after improved selfattentional processing

表4 不同改進策略性能評估Tab.4 Performance evaluation of different improvement strategies
在編碼器-解碼器框架上添加卷積塊注意力之后,雖然F1指數提升較小,但mIoU和mPA均有較大提升,分別提升了2.75%和3.15%。圖8(a)和圖8(b)分別表示卷積塊注意力處理前后各個通道的特征圖,通過對比可以發現,經過卷積塊注意力之后,特征圖中滑坡與背景區域差異得到增強。圖8(c)顯示卷積塊注意力中通道注意力的權重,可以看出區域差異明顯的通道被賦予高權重,符合通道注意力的特點。圖8(d)顯示卷積塊注意力中空間注意力的權重,滑坡與背景區域分別被賦予不同權重,明顯增強了滑坡邊緣區域。

圖8 卷積塊注意力處理前后對比圖Fig.8 Comparison images before and after convolutional block attention processing
本文提出的滑坡分割模型融合了改進自注意力與卷積塊注意力的優勢,綜合分割性能方面優于單一注意力模型,與U-net模型相比,mIoU與mPA分別提升了4.23%與3.61%。在實際工程應用中,滑坡分割模型作為輔助手段,通常搭配區域形變、降水、地形地貌等特征對滑坡區域進行綜合識別,因而普遍認為模型識別精度達到80%以上已經能夠滿足實際工程需要[11,15-16,27]。本文模型識別精度為96.81%,能夠有效區分滑坡區域。同時,隨著深度學習技術發展,滑坡識別模型日趨小型化與輕量化,本文模型在保證同量級滑坡識別精度的基礎上,大幅削減模型規模,有效減少了模型的訓練成本。
本文提出了基于注意力融合的遙感滑坡目標識別方法。首先,針對滑坡正負樣本不均衡的問題,對滑坡數據集進行數據增強;其次,在淺層特征提取中引入卷積塊注意力機制,增強模型對局部特征的關注程度,賦予局部特征不同權重,突出滑坡與背景區域的差異性;最后,在高級語義層引入改進自注意力機制,增強了全局尺度下區域特征間相關關系,進一步提升模型識別精度。實驗結果表明,本文方法的滑坡識別準確率達到96.81%,像素分割平均準確率達到了90.11%,與DeeplabV3+、U-net方法相比在mIoU、mPA方面均有提升,證明了注意力融合方法在滑坡識別方面的有效性。