楊靛青,毛艷萍
(福州大學 經濟與管理學院,福建 福州 350116)
先前,利用專業人員對無人機航拍圖片判斷滑坡險情[1]的方法來代替人工巡檢,但航拍采集的圖片數據量較大,并且無人機航拍過程容易受干擾導致圖片不清晰、模糊等問題,使得存在誤判或漏檢的情況[2]。因此,利用機器學習方法自動識別航拍圖片的滑坡險情是及時準確發現滑坡災害點、提高應急搶險速度的有效途徑。但傳統機器學習方法的泛化性、實時性以及精度已無法滿足當前需求,而基于深度學習的目標檢測算法能夠改善這些方面的不足。目前基于深度學習的目標檢測方法分為兩類:一是以YOLO與SSD算法為主One-Stage目標檢測算法,檢測速度快,實時性更有優勢;二是以Faster R-CNN算法為主的Two-Stage目標檢測算法,精確度以及定位更加的準確,小目標檢測更為穩定[3]。由于只有準確地識別滑坡目標,進一步的救援措施才是有效的,否則定位的錯誤不僅使險情無法及時的解決,還會產生新的隱患。因此,本文基于Faster R-CNN算法的目標檢測模型進行研究,針對無人機航拍圖像環境復雜、滑坡目標區域較小等情況,提出結合深度殘差收縮網絡DRSN-CW的Faster R-CNN模型,減小由于航拍圖像中滑坡目標區域較小而導致周圍較多冗余信息的噪聲干擾,改善復雜環境下漏檢現象,提升滑坡目標的檢測精度。
Faster R-CNN是Ross B. Girshick等在Fast R-CNN基礎上提出的目標檢測算法。Faster R-CNN是對Fast R-CNN的優化,兩者在感興趣區域生成方法上存在區別,Fast R-CNN是選擇性搜索而Faster R-CNN采用RPN(region proposal network)結構生成候選框,從而實現高精度檢測性能。Faster R-CNN算法主要分為特征提取(feature extraction)、區域候選網絡(region proposal network)、ROI Pooling以及分類回歸4個部分,將4個部分整合到一個網絡中,促使綜合性能得到較大提升。該算法可分為3個步驟:
(1)首先,將圖片輸入到主干特征提取網絡,得到相應的特征圖;
(2)其次,采用區域候選網絡結構生成候選框,將生成的候選框映射到相應的特征圖上,從而獲得相應的特征矩陣;
(3)最后,將每個特征矩陣通過池化感興趣區域(ROI pooling)層縮放到7*7大小的特征圖;再進行展平處理后通過一系列全連接層,利用Softmax得到目標類別預測概率,同時利用損失函數(smooth L1 loss)完成邊界框回歸獲得目標的精確位置。
為了獲取深層次的特征,卷積神經網絡的卷積層數需不斷增加,但隨之帶來了識別網絡模型訓練效率低、梯度消失、準確率下降等問題。因此,微軟研究院的何愷明等人提出殘差網絡(ResNet),通過引入跨層連接,直接將輸入信息繞道傳到輸出,顯著降低了模型訓練的難度,極大改善了網絡深度的增加而帶來的梯度消失的問題,達到較好的訓練效果。
假設輸入樣本為x時,期望輸出H(x) 是網絡學習到的特征。在傳統的卷積神經網絡,H(x) 是通過直接學習,輸入x映射到輸出。而殘差網絡學習的是F(x)=H(x)-x, 即輸出值H(x) 與輸入值x的殘差。當學習達到近似的準確率,也就是F(x) 足夠小時,輸出H(x) 就近似等于x, 則x為恒等映射。殘差模塊結構如圖1所示。

圖1 殘差模塊結構
SENet是典型的注意力算法之一,SENet通過學習的方式來自主地獲取每個通道的重要程度,再依照這個重要程度來提升與目標任務有關的特征信息抑制無關的特征。
SENet算法可分為3個步驟。首先,Squeeze(壓縮)操作是把C個H*W的特征圖通過全局平均池化壓縮成C的1*1的實數列,而這一維參數能夠獲得更廣的感受野區域。其次,Excitation(激勵)操作將壓縮后的1*1*C的向量經過兩個全連接層,再使用Sigmoid函數對每個特征通道的重要度進行預測,得到不同通道的重要性權重;最后,對于C個H*W的每個元素乘以對應通道的權重,得到新的特征圖。
殘差模式下的Squeeze-and-Excitation模塊如圖2所示,將上述殘差模塊與SENet網絡結合在一起,在這個結構中,殘差結構的恒等路徑,能夠促使SENet注意力機制訓練更為容易,并且根據樣本特征圖自身特點的不同而獲得不同的通道權值,具有自適應能力。

圖2 殘差模式下的Squeeze-and-Excitation模塊
為了能夠解決對無人機回傳的實時險情圖片因復雜環境、滑坡目標區域面積較小等問題,本文提出了基于Faster R-CNN與DRSN-CW的滑坡險情目標識別。主要有以下操作:①在預處理階段,由于險情天氣、地勢原因以及無人機自身的抖動、姿勢,可能造成圖片昏暗、噪聲以及模糊等問題,對圖片進行預處理是必不可少的,利用Gamma變換調整圖片的亮度,再通過高斯濾波方法,減少噪聲促使圖像質量提升;②在訓練階段利用GN(group norma-lization)群組歸一化方法替換BN(batch normalization),解決由于無人機航拍圖像的尺寸較大而顯存有限batchsize取值較小的影響;③提出結合深度殘差收縮網絡DRSN-CW的Faster R-CNN算法,能夠通過閾值化制定較小的系數來抑制滑坡目標無關區域的干擾,減少噪聲以及冗余信息,能夠提高對滑坡目標物體的定位,可解決滑坡漏檢的問題。因此,本文改進的Faster R-CNN的網絡結構如圖3所示,其中RSBU-CW為逐通道不同閾值的深度殘差收縮網絡DRSN-CW中的殘差收縮模塊。

圖3 改進的Faster R-CNN的網絡結構
圖像預處理是圖像識別的重要環節,圖像質量的好壞,直接影響著對目標物體識別。由于無人機航拍所處的險情環境較為復雜,在圖片采集中容易受到飛行的軌跡以及姿勢、高空氣流導致抖動等影響,再加上天氣自身原因的綜合作用,導致圖片可能存在噪聲干擾、模糊昏暗、亮度不足或曝光等問題,因此需對圖像進行預處理,能夠提高圖片的質量,更適用于后續目標識別的研究。
圖像增強是一項預處理技術,能夠改善圖像的視覺效果,去除噪聲、提高圖片亮度、對比度等,使圖中的目標更為明顯,有利于后續工作的進行。因此,本文采用Gamma變化將無人機航拍圖像進行處理,計算亮度的均值和方差,自適應的調整Gamma值,對于亮度過高的圖片適當的調低,亮度過低的圖片適當調高;同時,利用高斯濾波去除噪聲,高斯濾波能夠減少高斯噪聲給圖片帶來的干擾,性能較好,并且能夠對圖片細節保留方面較為出色。
2.1.1 Gamma變換
Gamma變換是通過非線性變換來進行矯正,讓過暗、曝光的圖像轉換成更為清晰、更能被識別的圖像。當γ>1時,較亮的區域灰度被拉伸,較暗的區域被壓縮,圖像整體變暗;當γ<1時,較亮的區域灰度被壓縮,較暗的區域灰度被拉伸,圖像整體變亮。Gamma變換能對無人機航拍圖像出現的亮度問題進行調整,提高圖像的質量。Gamma變換的公式如下
Vout=AVinγ
(1)
其中,A為常數,通常取1;Vin∈[0,1]。
2.1.2 高斯濾波
高斯濾波能夠減少無人機航拍圖像的高斯噪聲帶來的干擾,并保留更多的圖片細節。高斯濾波廣泛地被采用在圖像處理中進行降噪過程中,主要適用于高斯噪聲的消除。高斯濾波的操作是對圖片進行加權平均的過程,用濾波器模板與每個像素點進行卷積運算,由其本身與鄰域內其它像素點平均加權后得到的結果。一維及二維高斯濾波公式如下
(2)
(3)
其中,(x,y) 為目標像素,σ為標準差。
2.1.3 圖片增強效果
圖片增強效果如圖4所示,經過上文闡述的Gamma變化以及高斯濾波兩種預處理方法后,可以從圖4明顯看出提高了圖像的質量。首先,對于圖(a)為無人機航拍的險情原圖,存在暗沉、模糊等問題;再經過Gamma變化,圖(b)顏色的對比度發生了明顯變化,更能夠看清圖像中的滑坡目標,但仍存在不夠清晰的問題;最后,通過高斯濾波去除干擾噪聲,生成的圖(c)能夠進一步提高圖像質量。

圖4 圖片增強效果
批處理歸一化(BN)已經普遍存在于許多基于深度學習的模型網絡中,特別在圖像識別領域。通過計算平均值和方差來規范化層輸入,從而導致模型容易訓練。而BN層在訓練過程中需要在batchsize上計算中間統計量,導致BN嚴重依賴于batchsize大小的影響。當batchsize較小時,會受到干擾導致BN無法正確估計當前batch的均值和方差,會造成模型誤差明顯增加,惡化其性能。
但由于本文針對于無人機航拍的圖像,輸入圖片的尺寸較大,由于顯存受限,需要對batchsize進行調小,這樣導致BN的不足顯現,因此本文采用組歸一化方法(GN)來替代批處理歸一化(BN)。GN的計算與batchsize無關,消除batchsize的影響來實現歸一化。對于高精度圖片小batchsize的情況效果更好,在batchsize不同時性能是一致的,減小了BN的缺陷。
GN計算均值和標準差時,把每一個樣本特征圖的通道劃分成多個組,再計算每個 (C/G)HW內的均值和方法,各組通道用其對應的歸一化參數獨立地進行歸一化
(4)
(5)
(6)
其中,ε是個很小的數用于防止前式中分母為0。
滑坡區域相對于泥石流等險情面積較小,在一張無人機航拍的滑坡險情圖像中,存在較少部分為滑坡目標,圖像中則包含較多與滑坡目標無關的區域。對于這些區域就是冗余信息,會干擾對滑坡物體識別,需要盡可能地減小這些與當前任務無關的特征信息對模型的噪聲干擾,如何減小噪聲的干擾是成為影響模型目標檢測的重要問題。
而軟閾值是降噪方法的核心步驟[4]。它的作用是將絕對值低于某閾值的特征設置為零,則其它特征照著0進行調整,即達到收縮的作用。并且,由于軟閾值函數求導后梯度只有0和1,也避免了梯度爆炸以及消失的問題。閾值是需要設置的參數并對降噪的結果影響較大,而一個合適的軟閾值需要不斷的調試,不具有自學習能力。因此,深度殘差收縮網絡將軟閾值作為收縮層引入殘差網絡中,借助注意力機制,根據各特征圖的特點自適應地設置不同的閾值,形成一種有效消除無關特征信息以及噪聲的方式;其轉化函數以及偏導函數如下
(7)
(8)
其中,τ為閾值,是一個正數,x是輸入特征,y是輸出特征。
從公式上可看出,輸入特征x在 [-τ,τ] 區間內都會被置為0,將τ大于的輸入特征x減τ, 將小于-τ的輸入特征x加τ, 向中心收縮,其偏導數取值只為 0或1,有利于訓練梯度的反向傳播,ReLU激活函數也同時具有此特征。但ReLU激活函數直接將負值設置為0,而軟閾值只將 [-τ,τ] 這一區間特征置為0,能夠保留有用的負值特征,根據自身的情況,自動進行調整,更加地靈活對待置0區間,更具有擴展性。
一個深度殘差收縮網絡DRSN-CW的模塊結構如圖5所示,其中框中為軟閾值學習模塊。該學習模塊先對輸入的特征圖所有特征x取絕對值,再經過全局平均池化(golbal average pooling)得到一個特征A;同時,將經過GAP后的輸出結果進行兩次全連接層,再經過Sigmoid函數將結果映射到0-1之間,獲得一個系數λi(i=1,2,…,n), 公式如下

圖5 深度殘差收縮網絡模塊
λi=1/(1+e-ωi)i=1,2…,n
(9)
其中,ωi為最后一層全連接網絡第i神經元的輸出值,λi為歸一化的結果。
最后,將分別得到的A和λi相乘,得到自動學習到的軟閾值結果,公式如下
τi=λi*A
(10)
其中,τi為特征圖第i個通道的閾值,A為特征圖經過全局平均池化的結果。
深度殘差收縮網絡通過各種非線性變化來學習到判別特征,消除無關特征的干擾。若樣本的不同,則產生的閾值也不同,靈活地對目標任務噪聲信息進行抑制。在一定程度上,可以理解成特殊的注意力機制,對于當前目標無關特征可通過閾值化將它們設置為0來進行抑制,該網絡能夠更好地適用當前滑坡目標檢測任務。
在Ubuntu 20.04操作系統上搭建CPU使用Intel(R)Core(TM)i5-1035G1,GPU為Nvidia TITAN Xp,使用python3.7編程開發語言,采用pytorch 1.7.1和torchvision 0.8.1。

本文采用F1分數與平均準確率mAP來對模型進行評價,F1-score與AP是對準確率P和召回率R的綜合評價,而由TP、FP、FN計算公式可得到準確率P和召回率R
(11)
(12)
公式中TP是指所預測得到目標類別和實際定義的目標類別相同的樣本數量,FP是指所預測得到目標類別和實際定義的目標類別不相同的樣本數量,FN則指實際定義的目標沒被檢測到的樣本數量。精確率是指真正例的樣本與預測為正例的樣本的數量之比,描述模型準的程度;召回率是指被預測為正例與為真的樣本的數量之比,描述模型全的程度。但僅僅用它們分別單一的去評價模型的好壞是不夠全面的,因此通過F1-score與mAP來進行評判,F1-score是準確率和召回率的調和平均數,取值范圍為0到1,值越大代表模型越好而mAP指標是不同查全率R水平下對準確率P做平均,也就是得到AP,最后再對所有類別按比例取平均,由于本文只針對滑坡這一險情類別進行目標檢測,因此AP值就是mAP值

(13)
(14)
不同基礎網絡的滑坡檢測的平均精度以及速度值對比見表1,與當前比較流行的其它主干網絡進行對比分析:Mobilenetv2以及VGG16。從表中可得知Resnet50更適合本文模型,雖速度相較于Mobilenetv2、VGG16慢了0.007 s、0.013 s,但檢測精度比Mobilenetv2、VGG16高了8%,6.4%,因此本文模型選取Resnet50為基礎網絡。

表1 不同基礎網絡的滑坡檢測對比
本文將ResNet50深度殘差網絡的殘差模塊中嵌入DRSN-CW收縮網絡作為主干網絡應用于無人機航拍圖片中滑坡險情目標檢測,為了驗證深度殘差收縮網絡對于滑坡檢測的優越性,在配置條件以及各個參數值相同的情況下,將ResNet50與本文進行圖像預處理、歸一化方法替換以及與結合DRSN-CW的不同模型方案進行對比,對比實驗結果根據F1值以及mAP評價指標進行評價。
不同模型方案的實驗結果對比見表2,本文在深度殘差收縮網絡DRSN模型對航拍滑坡目標識別的F1值以及平均精確度達到91.3%、92.1%,而主干網絡為ResNet50模型分別為85.7%、87.5%,說明深度殘差收縮網絡對識別航拍滑坡目標是更為有效的,在圖像識別中是具有優勢的。

表2 不同模型方案的實驗結果比對
同時,經過圖像增強預處理后的ResNet50模型相比原始模型的F1值以及mAP值增加了3.1%、3.5%,由此可見針對實際目標檢測任務的數據預處理是必不可少的,能夠提升模型的性能;再通過GN歸一化方式替換BN后的模型與原始網絡模型相比F1值以及mAP值分別增加了5.1%、5.6%,可得知歸一化方式GN相對于BN更適用于本文目標檢測,能夠提高模型的識別能力。
圖6為上述4種模型方案在滑坡險情的識別效果,對于圖6(a)骨干網絡為ResNet的Faster R-CNN模型存在漏檢的情況;在ResNet50骨干網絡基礎上,采用圖像增強預處理后的圖6(b),同時存在漏檢的情況,但定位更為準確;在此基礎上,再通過GN的歸一化方式來替換BN的識別圖6(c),對于識別能力有了提高,但仍存在漏檢;本文模型在數據進行數據預處理、歸一化方式替換之后,將ResNet50模型中嵌入DRSN-CW網絡結構,可以從圖6(d)能夠較好地識別小目標、背景復雜等的滑坡險情,對漏檢有明顯改善,在復雜的環境下也能表現的很好,在對滑坡險情識別的準確度方面有了很好的突破。

圖6 上述4種模型方案的識別結果
圖7是本文模型mAP指標變化的過程,通過圖中可得知,隨著訓練次數的增加,mAP值是不斷上升的,當到達12次后,mAP值變化趨于平穩,最高可達到92.1%。從圖8可以看出,本模型方法能夠較為有效正確地識別無人機航拍圖片中的險情所在的地理位置,為進一步搶險救災做好準備。

圖7 mAP變化過程

圖8 本文模型滑坡的檢測結果
本研究針對無人機航拍圖片復雜環境、地形差異、滑坡目標區域較小等情況而導致滑坡檢測精度不高的問題,先利用Gamma變換、高斯濾波來調整圖片的亮度以及平滑去噪,通過圖像增強預處理有效地保證了圖片的質量;再采用不依賴于batchsize的分組歸一化方法,消除batchsize對模型的影響,很好地適用無人機航拍圖像分辨率過高的情況;最后,提出了將DRSN-CW嵌入到ResNet50網絡結構的Faster R-CNN模型對滑坡險情的目標檢測,有效地抑制對于滑坡目標無關的區域以及冗余信息干擾,增強重要特征信息。實驗結果表明,本文改進后的模型有更好的識別與定位能力,能夠為后續精準救援提供可靠信息。