?

基于改進YOLOv3的遙感小目標檢測網絡

2023-09-21 08:40陳成琳
計算機仿真 2023年8期
關鍵詞:特征提取損失精度

陳成琳,鮑 春,曹 杰,郝 群

(1. 北京理工大學光電學院,北京 100081;2. 北京理工大學長三角研究院(嘉興),浙江 嘉興 314003)

1 引言

隨著衛星和航空攝影技術的成熟,遙感圖像檢測在城市規劃、智能監測、精準農業等民用和軍事領域發揮著越來越重要的作用。 在這種需求的推動下,近年來人們在光學遙感圖像目標檢測方面做了大量的研究。眾所周知,高質量、大規模的數據集對于訓練基于深度學習的目標檢測方法具有重要意義。目前,通用的目標檢測器已經比較成熟,一些主流的單階段、雙階段及多階段檢測算法對大、中目標有著較好的性能,但對小目標的檢測仍存在較大的發展空間。光學可見光遙感圖像一般是從衛星或者航空攝影采集得到,受其成像機制的影響,采集的圖像往往具有如下特點[1]:①遙感圖像視野比較廣闊,使得背景復雜度高,且采用俯視拍攝,目標的方向不確定。②遙感圖像的拍攝高度從幾百米到近萬米不等,且地面目標也大小不一,使得目標具有尺度多樣性。③遙感圖像中目標普遍較小且目標分布不均勻。遙感圖像自身的這些特性使得檢測難度大大增加。

小目標本身尺寸較小,經過卷積神經網絡后,目標的特征信息與位置信息逐漸丟失,在深層特征圖中小目標檢測困難,經典的Faster R-CNN[2]就是利用了網絡的最后一層進行預測。Liu等[3]提取不同層次的特征進行預測,利用淺層特征對小目標進行檢測,但該方法沒有充分融合不同尺度的特征,對淺層信息的使用不夠充分。通過多尺度學習,可以將目標深淺信息融合,進一步提升小目標檢測性能。特征金字塔網絡FPN[4](Feature Pyramid Networks)是最常見的一種多尺度網絡,它將不同尺度的特征圖與上采樣之后的特征圖融合之后的結果來做預測。Kong等[5]提出了一種跳層特征提取網絡,有效融合了高層語義信息和底層高分辨率信息。這種跳層特征提取是多尺度提取特征方式的一種,現在已經成為小目標檢測的一種常規手段。Liu等[6]在不同分支的卷積層上加入不同尺寸與膨脹率的空洞卷積以融合不同特征,能夠在不增加額外參數和計算量的情況下提高特征分辨率和擴大感受野,提高了對小目標檢測的魯棒性。通過結合生成對抗網絡也可以提升小目標檢測性能。Li等[7]提出的感知生成對抗網絡PGAN,將低分辨率的特征變成高分辨率的特征,以提高對小目標的特征表示。類似的工作還有SOD-MTGAN[8],其將小目標的模糊圖像生成具有詳細信息的高分辨率圖像,為使得生成器恢復更多細節以便于檢測。數據增強也是提升小目標檢測的最簡單有效的方法之一,具體增強方式有隨機裁剪、翻轉、旋轉、縮放以及CutOut[9]、MixUp[10]、Mosaic[11]等。Kisantal等[12]提出了一種復制粘貼的方法,通過在圖像中多次復制粘貼小目標的方式來增加小目標的訓練樣本數,從而提升了小目標的檢測性能。除此之外,還有一些研究者通過改變模型的訓練方式來提高小目標的檢測精度。Singh等[13]提出了圖像金字塔的尺寸歸一化算法SNIP,借鑒多尺度訓練的思想,針對大、中、小分辨率特征圖分別提取小、中、大目標候選框,對小目標檢測非常有效,但其訓練速度很慢。Chen等[14]設計了一種基于小目標Loss反饋驅動機制的圖像拼接法來提升小目標檢測。

為提高遙感小目標識別精度,本文基于YOLOv3[15]模型,首先增加了一層預測層并優化了loss來針對小目標檢測。其次引入了注意力機制,來區分背景和目標。最后在DIOR[16]和 NWPU VHR-10[17]數據集上進行實驗驗證。實驗結果表明,該方法有效提升了對小目標的檢測精度,且模型滿足實時性的要求。

2 改進的 YOLOv3 模型

2.1 特征提取

目標的特征表示一般由骨干網絡提供,其特征表示的優劣對檢測精度有至關重要的影響。然而,遙感圖像中小目標居多,考慮到小對象的特異性,直接應用原始骨干網絡來提取小對象的特征并不是最優的。原始網絡關注于通用目標,會產生一個較大感受野,這使得小物體容易受到感受域內周圍背景雜波的干擾。小物體特征比較簡單,不需要過深的網絡來擬合?;诖?本文構建了一個新的帶注意力機制的特征提取模塊AM Block(Block with Attention Module ),其能夠更好地區分目標和背景,得到具有背景感知的目標特征。其結構如圖1所示。

圖1 AM Block結構

圖1中,CBL-k-c 表示c個卷積核大小為k×k的Conv和BN、LeakyRelu 的組合體,輸入為 x,經過一系列卷積操作后得到y,將x和y輸入到CSAM(Channel-Spatial Attention Module)可以得到輸出Output。CSAM可用如下公式表示

(1)

其中⊕表示元素加,[·]表示concat連接,是張量上的操作。輸入x按照維度采樣,分別取偶數和奇數通道得到Fsample(x)[0]和Fsample(x)[1],尺度不變,通道數減半。Fsample(x)[0]和y通過元素加求和,然后和經過注意力函數FAT(·)處理的Fsample(x)[1]在通道維度上連接,得到最終的輸出。

輸入特征圖中目標和背景信息混合在一起,CSAM通過一個分支將采樣信息直接合并到y上,使這些特征更加強調背景感知;另一分支首先對每個通道內的信息做全局平均池化,然后通過全連接層將特征維度降低到輸入的1/16,經Relu 激活后再通過一個全連接層恢復原先的維度。將通過Sigmoid激活函數得到的結果自適應地對原始特征的通道權重進行標定來提升有用的特征。將加權后的特征通過一個卷積后對特征圖上的每一個像素進行激活,并與前面通道加權后的特征相乘,得到經過雙重注意力調整的特征圖。該特征圖的所有通道和每一個通道都可以學習到一個權重,用來指導混合特征,以區分目標和背景。圖2展示了本文算法和YOLOv3提取的特征圖對比示意圖,從圖中可以看出,相比于YOLOv3,改進后的結構能更有效的突出小目標特征,保留一些細節信息,抑制背景噪聲。

圖2 特征可視化對比圖

2.2 檢測頭優化

輸入圖像經過特征提取網絡得到了不同尺度的特征圖。淺層特征層目標信息相對較充分,更加關注的是圖像細節紋理等特征;深層特征層目標信息相對較少,更加關注比較抽象的語義信息。而小對象本身尺寸較小,經過多次下采樣,特征信息逐漸丟失,使得在深層特征層中包含的目標信息很有限。使用淺層特征層進行預測可以有效提升對小目標的檢測精度。網絡具體框架見圖3所示,其中Darknet53-A(Darknet53-Attention)是使用AM Block替換Bottleneck后的特征提取網絡,輸入圖像經過特征提取網絡和PFN得到四層不同尺度的特征圖P2,P3,P4,P5,分別為原圖的1/4、1/8、1/16、1/32,相較于原始YOLOv3增加了P2尺度特征圖來進一步預測小目標。

圖3 網絡整體架構

2.3 損失函數

YOLOv3損失由回歸損失、分類損失和置信度損失三部分組成,回歸部分由L2損失函數計算,其余部分由交叉熵損失函數計算得到。在目標檢測領域,目標框的四個位置不是相互獨立的,而使用L2損失函數獨立的計算四點位置的損失并求和得到最終的回歸損失不夠合理。而且預測框的評價指標采用IOU(Intersection over Union),損失的計算和評價不一致。綜合考慮,引入CIOU[18](Complete IOU)來計算目標的回歸損失。該損失函數充分考慮了框回歸的3個幾何因素(重疊區域、中心點距離、寬高比)。同時考慮到,小物體和大物體產生的損失不平衡問題,將回歸損失乘以一個2-wh的比例系數(w和h代表預測框的寬高),來增強對小目標的識別??偟膿p失函數計算公式如下:

Loss(object)=

(2)

3 實驗和結果分析

3.1 數據集和實驗環境

NWPU VHR-10數據集是僅用于研究的公開提供的10類地理空間物體檢測數據集,共包含800幅超高分辨率遙感圖像,數據集規模較小。

DIOR是一個用于光學遙感圖像目標檢測的大規?;鶞蕯祿?。數據集包含23463個圖像(訓練集、測試集分別有11725、11738張圖像)和192472個實例,涵蓋20個對象類。目標尺度和長寬比變換范圍較大。在MS COCO[19]中定義面積小于32×32的為小目標,大于92×92的為大目標,處在二者之間的為中目標。根據這個標準,統計DIOR數據集中大、中、小目標占總目標比例分別為27.7%、29.5%、42.8%,小目標占比近一半。

本文算法統一圖像輸入大小為512×512,批次大小均為16,訓練次數為200Epoch,采用SGD梯度下降方法,動量為0.9,衰減系數為0.0005。學習率更新分兩階段。首先采用warm-up預熱學習率,用一維線性插值來進行對每次迭代的學習率進行更新,學習率為0.01逐漸上升到0.1,然后采用余弦衰減策略來對學習率進行更新。使用旋轉、平移、翻轉、Mosaic進行數據增強。具體實驗在Pytorch1.7.1深度學習框架上進行,并在GPU服務器NVIDIA RTX 3080Ti 的CUDA環境中進行計算加速,詳細配置見表1。

3.2 衡量指標

本文選擇 AP、mAP@0.5作為模型精度衡量指標;選擇FPS(Frame Per Second)作為模型的速度衡量指標,定義為每秒可檢測的圖像數量;選擇模型體積和參數量GFLOPs作為模型大小衡量指標。AP是每一類目標的檢測精度,mAP@0.5是IOU在0.5閾值下計算的各類目標AP平均值,也是準確率-召回率(PR)曲線與坐標軸所圍成的面積(見式(3))。PR曲線以召回率(Recall, R)作為橫坐標軸,準確率(Precision, P)作為縱坐標軸繪制而成。

(3)

其中C表示有C個類別,當C=1時,mAP=AP,準確率和召回率的計算公式如下

(4)

其中TP、FP和FN分別代表預測為正的正樣本、預測為正的負樣本和預測為負的正樣本。

3.3 結果分析

圖4顯示了改進算法在訓練過程中網絡的各類損失的變化曲線。橫軸代表迭代次數,縱坐標是損失值??梢钥闯?隨著訓練迭代,網絡的損失穩定下降,收斂過程比較穩定。

圖4 損失變化曲線

表2比較了改進算法和 YOLOv3 算法在NWPU VHR-10上的各類目標精度和平均精度。從表中可以看出,改進的YOLOv3算法中某些類別有小幅度下降,在汽車、橋、港口、籃球場類別有大幅度上升,平均精度mAP提高8.84%。

表2 在NWPU VHR-10的精度評估

表3比較了改進算法和 YOLOv3 算法在DIOR數據集上的模型精度、速度、體積和參數量,可以看出改進算法的mAP比YOLOv3 提升14%,FPS從83下降到66,體積增大5M,參數量也增加了24GFLOPs,但都在可接受的范圍,且仍然可充分滿足實時性的要求。

表3 在DIOR數據集上模型的驗證結果

表4是不同模型在DIOR上的精度對比分析,分別對比了改進算法和YOLOv3、SSD、FasterRCNN with FPN[16]、RetinaNet[20]的檢測精度。從實驗數據可以看出,改進的YOLOv3 模型在大多類目標精度和平均精度遠高于其它模型,驗證了所改進方法的有效性。

表4 不同模型在DIOR數據集上的精度評估

圖5展示了改進算法在NWPU VHR-10和 DIOR數據集上的部分檢測結果。第一、二行分別為NWPU VHR-10和DIOR數據集在不同背景復雜度下不同類目標的檢測結果可視化圖??梢钥吹?包含小目標在內的大部分目標都可以很好地檢測到。

圖5 模型檢測結果圖

4 結論

本文提出了一種基于YOLOv3的遙感小目標檢測模型,設計了一種新的帶注意力機制的特征提取模塊,其能夠更好的抑制背景噪聲,突出目標特征;增加了一個檢測層且優化了損失函數,進一步提高了對小目標的識別精度。然而本文算法仍存在一些局限性,在選用的數據集中存在不同程度的類別不平衡問題,如何在現有的基礎上提升少樣本類別的檢測精度是下一階段的改進和研究的目標。

猜你喜歡
特征提取損失精度
胖胖損失了多少元
玉米抽穗前倒伏怎么辦?怎么減少損失?
基于Daubechies(dbN)的飛行器音頻特征提取
基于DSPIC33F微處理器的采集精度的提高
Bagging RCSP腦電特征提取算法
GPS/GLONASS/BDS組合PPP精度分析
一般自由碰撞的最大動能損失
損失
改進的Goldschmidt雙精度浮點除法器
基于MED和循環域解調的多故障特征提取
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合