王 穎,吳 旭,冷小鵬,余 戈
(成都理工大學 計算機與網(wǎng)絡安全學院(牛津布魯克斯學院),四川 成都 610059)
滑坡一直是頻繁發(fā)生的地質災害之一,及時發(fā)現(xiàn)滑坡并更新滑坡清單,可以有效減少生命、財產的損失。另外,準確檢測已存在滑坡的位置是加強滑坡災害預防的先決條件[1]。由于傳統(tǒng)的實地野外調查和利用航空影像進行目視解譯的檢測方式效率較低,近幾年滑坡檢測的主要研究方向轉換到利用遙感影像和深度神經(jīng)網(wǎng)絡來進行自動滑坡檢測。Wang等人[2]采用基于注意力機制的YOLOv5模型實現(xiàn)了高分辨率遙感影像的滑坡識別。Su等人[3]針對雙時程RGB航拍圖像和數(shù)字地形模型提出了基于ResNet的LanDCNN滑坡識別模型。張?zhí)N靈等人[4]提出了基于ResNet的多尺度特征融合的CNN模型用于高分辨率遙感影像滑坡檢測。張倩熒等人[5]將Faster RCNN,YOLO,SSD應用于遙感圖像滑坡檢測,對比實驗結果表明Faster RCNN更適合小數(shù)據(jù)集的檢測,而YOLO和SSD分別有檢測精度高和推理速度快的優(yōu)勢。Xia等人[6]提出了適用于高分辨率多源數(shù)據(jù)集的FSTF-Net模型來檢測滑坡。以上研究中的YOLO,Faster RCNN,SSD模型都是針對目標檢測任務,只能檢測出滑坡的位置,無法檢測滑坡的規(guī)模、形狀。雖然其他研究提出的模型是基于圖像分割的,但所適用的數(shù)據(jù)集都是高分辨率的,且數(shù)據(jù)源較單一。高分辨率遙感影像不僅獲取成本高,而且解譯困難。相比較而言,中分辨率的遙感影像,如Sentinel-2,不僅可以通過開放的哨兵中心(Sentinel Hub)或谷歌地球引擎(Google Earth Engine,GEE)直接完成預處理,使得滑坡檢測更方便、及時。而且其包含了13個波段,可以提供更多益于滑坡檢測的特征,從數(shù)據(jù)源方面提升滑坡檢測精度。
2021年,Ghorbanzadeh等人[7]基于Sentinel-2影像中的RGB波段和近紅外波段,研究了兩種經(jīng)典的全卷積網(wǎng)絡(Fully Convolutional Network,FCN)對滑坡檢測的效果,分別是U-Net和ResU-Net,其中ResU-Net獲得了更高的F1分數(shù):73.32%。后續(xù),Ghorbanzadeh等人[8]基于Sentinel-2影像的12個波段和ALOS PALSAR的數(shù)字高程模型(Digital Elevation Model,DEM)、坡度層生成了一個用于遙感圖像滑坡檢測的基準數(shù)據(jù)集,并以此對比了11種語義分割模型(PSPNet,ContexNet,DeepLab-v2,DeepLab-v3+,FCN-8s,LinkNet,FRRN-A,FRRN-B,SQNet,U-Net,ResU-Net),實驗結果表明,仍是ResU-Net模型表現(xiàn)最優(yōu),F1分數(shù)達71.65%。
由上述研究可知,ResU-Net模型在針對中分辨率遙感多光譜影像的滑坡檢測任務上效果較好,但就滑坡自身的特殊性上該模型還有待改進。本研究考慮了兩點特殊性:(1)滑坡特征不具有統(tǒng)一性。受不同地質、水文、天氣條件等因素的影響,滑坡的地表特征可能有很大的差異[9];(2)滑坡形狀不規(guī)則,主要展示為各種多邊形[10]。以上兩點特殊性會限制ResU-Net模型的滑坡檢測精度。對此,該文對ResU-Net模型提出了對應的改進策略:(1)添加注意力機制,提升模型提取關鍵信息的能力;(2)加深網(wǎng)絡結構,以獲得更豐富的語義信息。除了模型改進以外,該文還探討了不同特征組合的數(shù)據(jù)集對滑坡檢測精度的影響,實驗結果發(fā)現(xiàn)剔除原始數(shù)據(jù)集中無效(對滑坡不敏感)的特征,添加歸一化植被指數(shù)(Normalized Difference Vegetation Index,NDVI)、歸一化水體指數(shù)(Normalized Difference Water Index,NDWI)和坡向特征可以最大化提升滑坡檢測的精度。
數(shù)據(jù)集中滑坡像素點與非滑坡像素點的比例大約為2.4%,類別占比極不平衡,針對此類問題,使用復合損失函數(shù)性能更佳,也更穩(wěn)定[11]。常使用的有Dice損失+交叉熵損失、Dice損失+Focal損失,但在本研究任務中均表現(xiàn)不佳,故本研究使用了另一個效果更好的損失函數(shù)——Unified Focal loss[12]。這是一個將各種基于分布的(如交叉熵損失)、基于區(qū)域的(如Dice損失)以及復合損失函數(shù)(如Combo損失)統(tǒng)一到一個框架里面進行計算的損失函數(shù)。實驗選擇了文獻[12]中非對稱的Unified Focal loss,計算公式如下:
LaUF=λLmaF+(1-λ)LmaFT
(1)
其中,LmaF計算公式如下:
(2)
LmaFT計算公式如下:
(3)
其中,mTI的計算公式如下:
mTI=
(4)
式(1)至(4)中:λ用于控制LmaF和LmaFT的比例;δ用于控制各類別的權重;N是待分割樣本的所有像素點個數(shù);p0i是像素i屬于滑坡類的概率;p1i是像素i屬于非滑坡類的概率;g0i為1表示像素i屬于滑坡類,為0則屬于非滑坡類;g1i為1表示像素i屬于非滑坡類,為0則屬于滑坡類;c表示所有類別,即滑坡類和非滑坡類;r表示稀有類,在本研究中就是滑坡類;yi,r是一個真實標簽中每個像素是否屬于滑坡類的矩陣,1表示屬于,0表示不屬于;pt,r是一個預測標簽中每個像素是否屬于滑坡類的矩陣,1表示屬于,0表示不屬于;pt,c是一個預測標簽中每個像素是否屬于非滑坡類的矩陣,1表示屬于,0表示不屬于;γ用于控制背景抑制和前景增強的程度。
本研究使用的是Loshchilov等人[13]提出的AdamW優(yōu)化算法,該算法解決了Adam配合權重衰減反而導致性能下降的問題,其在圖像分類的數(shù)據(jù)集上與使用動量的SGD優(yōu)化性能相當。另外,由于在大多數(shù)深度學習框架中權重衰減與批量歸一化一起使用會削弱權重衰減的效果[14],所以本實驗均不對批量歸一化層的參數(shù)做權重衰減。
本研究使用的注意力機制是Woo等人[15]于2018年提出的卷積注意力模塊(CBAM),其是一種混合注意力機制,同時包含了通道注意力模塊(CAM)和空間注意力模塊(SAM),兩者結合可以更穩(wěn)定地增強特征提取的能力;另外,與以往注意力機制的不同點還在于CBAM引入了全局最大池化作為全局平均池化的補充,更有利于重要特征的提取。其計算方式如下:
Fout=Fin?Mc(Fin)?Ms(Fin?Mc(Fin))
(5)
其中,Fout∈RC×H×W代表CBAM的輸出,C為通道數(shù),H為高,W為寬;Fin∈RC×H×W代表輸入;?代表兩個特征映射逐元素對應相乘的操作;MC∈RC×1×1代表CAM;Ms∈R1×H×W代表SAM。
(6)
Ms(Fin)=σ(f3×3([Avg(Fin);Max(Fin)]))
(7)
其中,σ代表sigmoid激活函數(shù);f1×1代表卷積核大小為1×1的卷積操作;Avg代表全局平均池化;Max代表全局最大池化;f3×3代表卷積核大小為3×3的卷積操作。
改進的ResU-Net模型網(wǎng)絡結構見圖1。
圖1 改進的ResU-Net模型網(wǎng)絡結構
(1)在編碼器中添加CBAM(見1.3小節(jié))。除了提升模型提取關鍵信息的能力,還能緩解編碼器與解碼器兩邊特征映射拼接時,編碼器前幾層帶來很多冗余信息的問題。(2)在編碼器與解碼器之間的第1個橋連接中添加SAM(見1.3小節(jié))。因為編碼器第1個殘差塊產生的特征映射冗余信息太多,添加注意力模塊容易對后續(xù)殘差塊的特征提取造成負面影響,所以沒有添加,但參考文獻[16]可以在橋連接之間添加一個注意力門,緩解兩邊特征映射拼接時冗余信息太多的問題。本研究經(jīng)過實驗對比發(fā)現(xiàn),此處只添加SAM比添加CBAM得到的F1分數(shù)略高一些。(3)加深網(wǎng)絡結構。除了獲得更大的感受野和更豐富的語義信息以外,還因為注意力機制需要多層疊加才會有增強效果,所以原始ResU-Net編碼器的5層殘差塊不夠。對此,本研究參考了ResNet18[17]的網(wǎng)絡結構,在編碼器中使用了9層殘差塊,每個殘差塊包含兩次卷積,既獲得了更豐富的語義信息,又可疊加注意力效應。(4)增加一次下采樣。原ResU-Net一共使用3次步距為2的下采樣,而改進的ResU-Net增加了1次,共下采樣16倍,進一步獲得更大的感受野和更豐富的語義信息。經(jīng)過實驗對比也證實了在本研究任務中下采樣16倍得到的F1分數(shù)更高。下采樣的位置分別位于編碼器的MaxPool層和layer2、layer3、layer4的第1個殘差塊中的第1個卷積層。
實驗數(shù)據(jù)取自LandSlide4Sense 2022[8],共3 799個樣本,各樣本大小都為128×128像素,都包含14個特征(見表1)。對應的標簽則包含兩個特征,0表示非滑坡,1表示滑坡,均以HDF5格式存儲。此數(shù)據(jù)集的滑坡域分別取自全球4個不同的地區(qū),地形多樣且滑坡類型豐富。
表1 數(shù)據(jù)集的14個特征
文獻[8]在“Benchmark Dataset Statistics and Shape”一節(jié)中,分別對4個地區(qū)的訓練集、測試集中的滑坡類和非滑坡類各個特征的平均值進行了統(tǒng)計,從統(tǒng)計結果可知B1,B2,B3,B4,B5,B6,B10,B11,B12,B13,B14的滑坡類平均值和非滑坡類平均值存在差異,且差異的方向在4個地區(qū)對應的訓練集、測試集上大致相同,故保留這11個特征(剔除無效特征B7、B8、B9)。另外,通過文獻[18]可知,NDVI、NDWI與滑坡的易發(fā)性相關,故引入這兩個特征。由此生成包含13個特征的新數(shù)據(jù)集(流程見圖2),也是做消融實驗和模型對比實驗時用的數(shù)據(jù)集,其中訓練集2 553個、驗證集524個、測試集722個。
圖2 新數(shù)據(jù)集合成流程
(8)
(9)
本研究使用的深度學習框架是Pytorch,運行環(huán)境如下:Linux系統(tǒng),NVIDIA RTX A4000顯卡(內存16G),英特爾12核Xeon(R) Gold 5320 @ 2.20 GHz處理器(內存32G)。為了保證對比實驗的公平性,所有實驗的訓練設計都保持一致:用訓練集的平均值和方差做輸入標準化處理;參數(shù)初始化方式是He初始化[19];初始學習率為0.01,采用熱身(warm up)的方式開始,衰減策略為多項式衰減,計算方式見公式;優(yōu)化器用AdamW(見1.2小節(jié)),β1=0.9,β2=0.999,權重衰減為5e-4;損失函數(shù)用Unified Focal loss(見1.1小節(jié)),λ=0.5,δ=0.4,γ=0.2;批量大小為32,共訓練100次;數(shù)據(jù)增強方式只用隨機上下翻轉和隨機水平翻轉。
(10)
其中,iter為迭代次數(shù),max_iter=160,power=4.0。
本研究采用召回率(Recall)、精確率(Precision)、F分數(shù)來評估分割結果,其計算公式如下:
(11)
(12)
(13)
所有評估指標的計算均只針對滑坡類。式中TP、FP、FN分別表示滑坡類被正確識別的數(shù)量、將非滑坡類預測為滑坡類的數(shù)量、將滑坡類預測為非滑坡類的數(shù)量。召回率表示樣本中所有滑坡被檢測到的比例。精確率表示模型預測為滑坡的結果中,預測正確的比例。F分數(shù)是綜合召回率和精確率的評估指標,可更加客觀地反映整體的性能,是主要的評估指標。在本研究任務中召回率和精確率同樣重要,故設置β=1,即使用F1分數(shù)。
基線模型就是ResU-Net(下采樣16倍),另外針對其改進策略共有3個對比模型:(1)添加注意力機制。在ResU-Net編碼器中添加CBAM(第1個殘差塊除外),以及在編碼器與解碼器之間的第1個橋連接中添加SAM;(2)加深網(wǎng)絡結構。去掉改進的ResU-Net中的CBAM和SAM。(3)添加注意力機制和加深網(wǎng)絡結構相結合,即改進的ResU-Net模型。消融實驗的結果如表2所示。
實驗結果表明,添加注意力機制和加深網(wǎng)絡結構都可以提升模型的分割精度,其中網(wǎng)絡結構的加深幫助最大,在ResU-Net的基礎上提升了0.27百分點,再通過添加注意力機制則可以進一步提升。
表2 改進ResU-Net模型的消融實驗結果
在對比實驗中,除了U-Net和ResU-Net模型,在文獻[8]中已做過對比實驗的語義分割模型之外,額外選擇了4種具有代表性的主流語義分割模型:Attention U-Net,BiSeNet,Semantic FPN,U-Net++,以豐富此類研究的對比工作。表3對6種對比模型的特點進行了簡單的總結。針對LandSlide4Sense 2022數(shù)據(jù)集進行模型對比實驗的結果如表4所示。經(jīng)實驗證明,在該任務中Attention U-Net、U-Net以及ResU-Net下采樣16倍比原文獻中下采樣8倍效果更好,且與本研究改進的ResU-Net下采倍數(shù)相同,所以對比實驗中,這3個模型使用的是16倍下采樣結構,以此保證對比實驗的公平性。
表3 6種對比模型特點的總結
表4 改進的ResU-Net與6種對比模型的 滑坡檢測結果
從表4可以發(fā)現(xiàn),改進的ResU-Net的性能最好,F1分數(shù)達到76.91%,比ResU-Net高0.43百分點,而推理時間只多了3.03 ms(每4張圖像),平均每張圖像0.76 ms,增加的時間代價較小;另外,改進的ResU-Net的召回率也是最高的,比第二的Attention U-Net高0.4百分點,說明其能預測出最多的真實滑坡點;而在精確率方面,則是U-Net++得分最高,達到79%,說明其預測出的滑坡點可信度最高,但其召回率偏低,即對真實滑坡點的預測較少。還值得注意的是,改進的ResU-Net得到的召回率和精確率最接近,只相差0.85百分點,這說明該模型得出的預測平衡性較好,預測結果不會太激進也不會太保守。反觀ResU-Net、Semantic FPN和U-Net++的平衡性就差一些,召回率和精確率的差值分別為4.21、5.44和5.71百分點。從推理時間來看,BiSeNet、Semantic FPN以及U-Net推理最快,但精度與改進的ResU-Net有差距,其中最接近的是U-Net。在本實驗環(huán)境下,改進的ResU-Net相比于U-Net,用每4張圖像多出8.14 ms推理時間的代價換取了0.69百分點的精度提升。而根據(jù)目前GPU運行速度的提升和并行計算技術的增強,增加的推理時間還可以縮短一些,故提出的改進的ResU-Net模型在此類任務中是可行的。
為了展示模型的分割效果,圖3可視化了表4中7種模型的預測結果。前5個樣本從測試集抽取,最后一個是用GEE在Sentinel-2 MSI數(shù)據(jù)集上提取B1至B12的特征和用ASF Data Search在ALOS PALSAR數(shù)據(jù)集上提取B13、B14特征合并得到的,該滑坡點取自四川省雅安市漢源縣,由于采集數(shù)據(jù)的特征分布與實驗數(shù)據(jù)有差異,所以分割精度降低。從圖中可以看出,整體上改進的ResU-Net分割最準確。但所有模型都表現(xiàn)出對小分支滑坡分割效果不好的問題,如圖3中“image_1456” 底部的小分叉7個模型都沒預測出來?;滦螤罘彪s,提升模型對各樣式滑坡檢測的兼容性是改善模型性能的重點之一,也是后續(xù)的研究工作之一。
圖3 模型預測可視化
由文獻[18]可知,坡向可通過影響地表降水流向、植被生長及繁茂程度,對滑坡的產生造成間接影響,其值可通過python的richde.TerrainAttribute函數(shù)傳入B14(DEM)計算得到。另外,歸一化濕度指數(shù)(Normalized Difference Moisture Index,NDMI)可以描述作物的水分脅迫等級[26],與滑坡產生有間接聯(lián)系,其計算公式如下:
(14)
首先,向3.2小節(jié)生成的新數(shù)據(jù)集依次加入坡向和NDMI特征,生成另兩個對比數(shù)據(jù)集;然后分別送入改進的ResU-Net進行訓練、評估。評估結果見表5。
從中可以看出通過剔除無效特征,添加NDVI和NDWI特征、添加坡向特征都可以提升檢測精度,而對原始數(shù)據(jù)集同時進行以上3種優(yōu)化,可將精度提升最大化,F1分數(shù)可達77.03%,比使用原始數(shù)據(jù)集高了0.36百分點。另外,使用新數(shù)據(jù)集+NDMI比僅使用新數(shù)據(jù)集得到的F1分數(shù)減少了0.15百分點,這說明NDMI的加入無益于滑坡檢測。
表5 特征組合對比結果
針對基于中分辨率遙感影像滑坡檢測精度低的問題,提出了一種改進的ResU-Net模型。實驗結果證明改進的ResU-Net優(yōu)于ResU-Net,U-Net,Attention U-Net,BiSeNet,Semantic FPN和U-Net++,其F1分數(shù)達76.91%,并且由文獻[8]中已做的11種語義分割模型的對比實驗結果為ResU-Net的F1分數(shù)最高,可推斷改進的ResU-Net在本研究任務上優(yōu)于大多數(shù)主流的語義分割模型。另外,基于LandSlide4Sense 2022的數(shù)據(jù)集,生成了不同特征組合的對比數(shù)據(jù)集,實驗結果表明Sentinel-2的B1、B2、B3、B4、B5、B6、B10、B11、B12和ALOS PALSAR的DEM、坡度層以及NDVI、NDWI、坡向共14個特征的數(shù)據(jù)組合最有利于滑坡檢測。