劉彤 ,楊德振,宋嘉樂,傅瑞罡 ,何佳凱
(1.華北光電技術研究所 機載探測中心,北京 100015;2.中國電子科技集團公司電子科學研究院,北京 100015;3.國防科技大學 電子科學學院ATR 重點實驗室,湖南 長沙 410073;4.北京真空電子技術研究所 微波電真空器件國家重點實驗室,北京 100015)
采用多個復合翼無人機集群的空基紅外目標探測識別系統(tǒng)進行協(xié)同態(tài)勢感知是地面遠程紅外制導的有效輔助手段。其中艦船和車輛目標的智能識別算法作為當代陸海防務系統(tǒng)中關鍵技術,對于保障我國的國防安全具有重要的應用價值。紅外圖像具有對比度高、作用距離遠、穿透力強等特點,熱成像不需要借助外界光源,隱蔽性好,可以全天時工作。目前多數(shù)車載系統(tǒng)的視角為平視,平視視場受限,而使用機載系統(tǒng)可以獲得更大的下視視場角,在實戰(zhàn)中能有效探測和攔截低空突防的威脅目標。
傳統(tǒng)目標識別算法難以對下視視場角的圖像進行特征提取,作為端到端學習的深度學習,能夠自動提取圖像特征,具有較好的目標識別能力。北京理工大學的王旭辰等[1]提出基于深度學習的無人機載多平臺目標檢測算法,使用Darknet-53 網(wǎng)絡作為檢測器,在公開數(shù)據(jù)集UAV123 和實測數(shù)據(jù)集中進行檢測,驗證得到該算法在視角旋轉(zhuǎn)、目標尺度變化以及障礙物遮擋下能進行穩(wěn)定檢測。但文中僅使用了YOLOv3 目標檢測算法,并未對其進行改進,檢測精度沒有得到提高。電子科技大學的劉瑞[2]針對空中目標存在目標尺度及疏密程度變化大、存在重疊、遮擋等問題,提出四級復雜度的航空圖像目標檢測算法,采用復合擴張主干網(wǎng)深度和寬度的方法構建出四級復雜度的主干網(wǎng)絡,再將主干網(wǎng)分別與FPN+PAN 網(wǎng)絡、輸出頭網(wǎng)絡相結合,得到空中目標檢測算法。在VisDrone-DET2020 訓練集下對提出的網(wǎng)絡進行訓練,將算法的mAP@[.5:.95]累計提升了0.65%,mAP@0.75 累計提升了1.41%。但僅在公開數(shù)據(jù)集上進行訓練與檢測,該公開數(shù)據(jù)集僅為可見光數(shù)據(jù)集,不具備紅外數(shù)據(jù)集所具備的優(yōu)點。嚴開忠等[3]針對小型無人機載平臺算力受限、檢測速度慢的問題,提出了一種改進YOLOv3 的目標檢測算法,引入深度可分離卷積對主干網(wǎng)絡進行改進,降低網(wǎng)絡的參數(shù)和計算量,從而提高檢測速度。此外使用K-means 生成先驗框的初始聚類中心,在邊界框回歸中使用CIoU 損失,同時將DIoU 與NMS相結合,提高算法的檢測精度。在自定義數(shù)據(jù)集中的mAP 為82%,檢測速度從3.4 f/s 提高到16 f/s。但算法的檢測精度和速度仍有待提高。上海交通大學的朱壬泰等[4]針對目前深度學習中多目標檢測算法占用資源量大,無法在中小型無人機平臺上實時運行的問題,提出了基于卷積神經(jīng)網(wǎng)絡計算優(yōu)化的算法。采用深度可分離卷積對計算量進行優(yōu)化,將主干網(wǎng)Resnet18 中的卷積層替換為深度可分離卷積,對改進的算法在公開數(shù)據(jù)集PASCAL VOC 2007 進行驗證,得到在檢測精度不變的條件下,檢測速度達到56 f/s。但該算法在航拍數(shù)據(jù)集上的檢測精度由于與公開數(shù)據(jù)集分布的差異有所下降,對航拍目標的適應性不強。周子衿[5]針對深度學習網(wǎng)絡結構復雜,機載平臺計算資源有限,以及航拍視角中小目標數(shù)量大,難以對圖像特征進行提取,容易出現(xiàn)漏檢和錯檢現(xiàn)象,對YOLOv3 網(wǎng)絡進行輕量化處理,在網(wǎng)絡稀疏化訓練后進行BN 層的通道剪枝,此外使用K-maens++算法對先驗框進行重定義,將改進后的算法在自定義的DOTA-like 數(shù)據(jù)集上進行測試,算法權重模型大小下將98.7%,使得推理時間加快了60.5%,檢測速度提高了32.9%,檢測精度提高1.14%。但無人機的飛行高度較低,局限于超低空域附近,所看到的視場角受限。
上述文章中均不存在多角度的空基下視紅外目標,且該類目標所在環(huán)境復雜多樣,為保證較高的精度和實時性,提出了一種基于單階段的多角度空基下視紅外目標識別算法。主要研究內(nèi)容包括單階段目標檢測算法、針對空基下視多角度紅外目標所提出的改進、多角度下視紅外數(shù)據(jù)集的構建以及所提改進算法與單階段算法的對比實驗。
根據(jù)深度學習算法是否需要經(jīng)過候選框的步驟,將目標檢測算法分為單階段和雙階段兩類。雙階段檢測算法雖然檢測精度較高,但運行速度慢,無法滿足多角度空基下視紅外目標實時識別的需求[6]。常用的單階段算法有SSD[7]、RetinaNet、YOLO 等,SSD 算法檢測精度較低,RetinaNet 算法檢測精度得到了提升,但檢測速度無法達到實時性需求。YOLO 算法在擁有較高檢測精度的同時兼顧檢測速度。YOLOv3 借助殘差網(wǎng)絡思想[8],將YOLOv2特征提取網(wǎng)絡的Darknet-19 改為Darknet-53[9]。主要由1×1 的卷積層和3×3 的卷積層組成該特征提取網(wǎng)絡。為防止過擬合,在每個卷積層之后加入一個批量歸一化層和一個Leaky ReLU。Darknet-53 中的基本單元DBL 包含卷積層、批量歸一化層和Leaky ReLU 三個組成部分。Darknet-53中共有53個DBL基本單元。res unit為殘差單元,輸入通過兩個DBL,再與原輸入相加。該單元能夠讓網(wǎng)絡提取到更深層次的特征,并且能避免出現(xiàn)梯度的消失或梯度爆炸。
為實現(xiàn)多尺度特征融合的目的,把Darknet-53 的中間層和后面某一層的上采樣進行拼接,對張量的維度進行擴充。從而得到三種不同尺度的輸出Y1、Y2、Y3。Darknet-53 相比于Darknet-19,不再采用最大池化層,而是使用步長為2 的卷積層進行下采樣。將BN 層和一個Leaky ReLU 加在每個卷積層后,以防止過擬合現(xiàn)象的發(fā)生。同時,為提取到更深層次的特征,引入殘差網(wǎng)絡的思想,可以同時避免梯度消失或梯度爆炸。為了能夠進行多尺度特征融合,將網(wǎng)絡中間層和后面某一層的采樣結果進行張量拼接。
在多尺度預測方面,YOLOv3 選擇三種不同形狀的Anchors,每種Anchors 擁有三種不同的尺度,得到共計9種不同大小的Anchors,達到預測多尺度目標的目的。
在損失函數(shù)方面,YOLOv3 相比于YOLOv1 的損失函數(shù),其位置損失部分仍使用sum-square error 的損失計算方法。但對于置信度損失和類別預測將原來的sumsquare error 計算方法改為交叉熵損失計算方法。
由于復合翼無人機在不同時刻采集紅外圖像時所處的高度不同,導致獲得的圖像尺寸有所差異。圖像空間金字塔池化(Spatial Pyramid Pooling,SPP)[10]結構能夠解決因圖像區(qū)域裁剪、縮放一系列操作導致的圖像失真問題,并能解決卷積神經(jīng)網(wǎng)絡對圖像特征的重復提取,極大地提升了產(chǎn)生候選框的速度,同時節(jié)約計算成本。SPP 模塊結構如圖1 所示。
圖1 SPP 模塊結構圖
SPP 模型由kernel size 為5×5、9×9、13×13 的最大池化和一個跳躍連接四個并行分支組成。借鑒空間金字塔池化思想,對YOLOv3 網(wǎng)絡結構進行改進。在原YOLOv3網(wǎng)絡的第5、6 層卷積之間加入一個SPP 模塊,不同的池化操作組成該模塊。改進后的網(wǎng)絡結構如圖2 所示。
圖2 改進后的網(wǎng)絡結構圖
通過檢測頭前的第5 卷積層和第6 卷積層之間集成的SPP 模塊獲取網(wǎng)絡中的SPP,經(jīng)過SPP 模塊池化后的特征圖重新按通道進行拼接傳入到下一層偵測網(wǎng)絡中。該模塊借鑒了空間金字塔思想,利用SPP 模塊實現(xiàn)局部特征和全局特征,特征圖經(jīng)局部特征和全局特征融合后,能夠豐富特征圖的表達能力,有利于提升待檢測圖像中目標大小差異較大情況下的檢測精度。使用SPP 模塊優(yōu)化主干網(wǎng)絡Darknet-53 的算法用YOLOv3-S 表示。
在所得的空基下視多角度紅外圖像中,目標較背景的占比很小,存在正負樣本不平衡的現(xiàn)象。在訓練密集目標檢測器時出現(xiàn)嚴重的前景-背景類別不平衡,一步檢測算法精度無法超過兩步網(wǎng)絡。但RetinaNet 的提出使得一步網(wǎng)絡的檢測精度能夠首次超越兩步網(wǎng)絡,因此借鑒RetinaNet 的思想對YOLOv3 進行改進,使得改進后的算法在擁有較快檢測速度的同時檢測精度也得到了相應的提高。原有交叉熵損失無法抵抗類別極不平衡,易導致分類器訓練失敗,因此使用Focal loss[11]代替YOLOv3 中使用的交叉熵誤差。在正負樣本匹配方面,針對每一個Anchor 于事先標注好的GT 進行匹配,計算其IOU。若某一個Anchor 與其GT box 的IOU≥0.5,則將Anchor 標記為正樣本;若某一個Anchor 與所有的GT box的IOU 值都<0.4,則將其標記負樣本;若IOU∈[0.4,0.5),則將其舍棄。對于二分類而言普通的交叉熵損失(CE)計算公式如式(1)所示。
將CE 進一步簡化得到式(3)。
引入針對于正樣本而言的超參數(shù)α∈[0,1]和針對于負樣本而言的參數(shù)1-α,以此平衡正負樣本的權重,CE 的表達式可改寫為式(4)。
α 雖可以平衡正負樣本的權重,但不能區(qū)分困難的樣本和容易的樣本。因此提出能夠降低簡單樣本的權重,從而聚焦于一些難分的負樣本。引入新元素(1-pt)γ,定義Focal loss 如式(5)所示:
(1-pt)γ能夠降低易分樣本的損失貢獻。加入(1-pt)γ平衡的超參數(shù)αt得到Focal loss 的最終形式如式(6)所示:
Focal loss 與交叉熵對于難分樣本和易分樣本對比如表1 所示。
表1 Focal loss 與交叉熵在難分/易分樣本對比
其中p 為預測目標概率;laebl 為對應的真實標簽,1表示正樣本,0 表示負樣本;CE 為針對二分類的交叉熵損失;FL 為Focal loss;rate 為采用CE 計算得到的損失和采用Focal loss 計算所得到損失的比值。由表1 可知第1,2 行正樣本預測概率為0.9 和0.968 屬于易分樣本,p=0.9 時,其Focal loss 約為原來的CE 損失的1/400,p=0.968 時,其Focal loss 約為原來的CE 損失的1/3906;第3,4 行負樣本預測概率為0.1 和0.032 也屬于易分樣本,p=0.1 時,其Focal loss 約為原來的CE 損失的1/133,p=0.032 時,其Focal loss 約為原來的CE 損失1/1302;第5 行對應為正樣本,網(wǎng)絡預測概率為0.1,該樣本比較難學習,其Focal loss 約為原來的CE 損失的1/4.9,第6 行為負樣本,網(wǎng)絡預測概率為0.9,同樣為難分樣本,其Focal loss 約為原來的CE 損失的1/1.4。使用Focal loss后更加專注于訓練難分的樣本,而對于易分樣本起到降低損失權重的作用。
總損失函數(shù)分為分類損失和回歸損失兩部分,見式(8):
分類損失針對所有的正負樣本計算,回歸損失針對所有的正樣本計算。其中Lcls為Sigmoid Focal Loss,Lreg為L1損失,NPOS為正樣本個數(shù),i 為所有的正負樣本,j 為所有的正樣本。使用Focal loss 優(yōu)化損失函數(shù)的YOLOv3 算法用YOLOv3-F 表示。同時使用SPP 模塊和Focal loss函數(shù)的算法用YOLOv3-SF 表示。
系統(tǒng)由復合翼無人機作為光電探測設備的空中移動平臺,通過圖傳設備進行無線數(shù)據(jù)傳輸,地面配備圖像處理計算機[12]。訓練網(wǎng)絡模型使用硬件平臺為R7-4800H銳龍?zhí)幚砥?,GPU 采用NVIDIA GeForce RTX 2060,采用PyTorch 深度學習框架搭建該網(wǎng)絡。
使用某型復合翼無人機搭載的多波段光電吊艙,采集大量海上艦船和陸地車輛紅外目標,圖像分辨率為640×512,多尺度無人機圖像采集系統(tǒng)現(xiàn)場如圖3 所示。
圖3 多尺度無人機圖像采集系統(tǒng)現(xiàn)場圖
復合翼無人機分別從低(200 m)、中(300 m)、高(500 m)不同高度對復雜背景中的車輛(其中車類包含小汽車、卡車、公交車、貨車)、海上的游艇、貨船等多種不同類型的目標俯拍,其中包含了大、中、小三種不同尺度的紅外圖像。按8:1:1 的比例對數(shù)據(jù)集進行劃分,為測試模型的魯棒性,選取了一些復雜背景下不同運動速度的目標。
高度為200 m 的紅外大圖像數(shù)據(jù)集中,車類、游艇和貨船的下視角為12°、16°、20°,訓練集、驗證集和測試集張數(shù)如表2 所示。
表2 高度為200 m 紅外圖像數(shù)據(jù)集
高度為300 m 的紅外中型圖像數(shù)據(jù)集中,車類、游艇和貨船的下視角為24°、28°、32°,訓練集、驗證集和測試集張數(shù)如表3 所示。
表3 高度為300 m 紅外圖像數(shù)據(jù)集
高度為500 m 的紅外小圖像數(shù)據(jù)集中,車類、游艇和貨船的下視角為35°、36°、40°,訓練集、驗證集和測試集張數(shù)如表4 所示。
表4 高度為500 m 紅外圖像數(shù)據(jù)集
綜上自定義紅外數(shù)據(jù)集包括29 853 幅紅外艦船圖像和30 000 幅車輛紅外圖像。數(shù)據(jù)集的部分樣本圖像如圖4 所示。對所采集圖像中的車輛和艦船目標使用labellmg 標注軟件進行標注,將標注好的帶有車輛和艦船目標的紅外圖像送入YOLOv3-SF 網(wǎng)絡中進行聯(lián)合訓練。
圖4 不同高度拍攝的紅外圖像
在評價指標方面選取準確率(Precision)、召回率(Recall)、AP、mAP、FPS 作為該目標檢測算法的評價指標[13]。TP、FN、TN、FP 的含義如表5 所示。
表5 正、負例含義表
(1)準確率(Precision)/查準率
識別對了的正例占識別出正例的比例,其中識別出的正例等于識別對的正例加上識別錯的正例,公式如下:
(2)召回率(Recall)/查全率
識別對了的正例占實際總正例的比例,其中實際總正例等于識別對的正例加上識別錯的負例,公式如下:
(3)AP(Average Precision)
PR 曲線下的面積,表示召回率0~1 的平均精度。其中PR 曲線下面積越大,表示模型的性能越好。使用插值法計算PR 曲線下的面積得到AP,公式如下:
(4)mAP(mean Average Precision)
所有類別AP 的平均值,能衡量模型在所有類別上平均精度的好壞。該指標綜合考慮了準確率P 和召回率R,能夠解決P 和R 的單點值局限性,試算公式如下:
設置初始學習率learning_rate=0.001,迭代次數(shù)steps=100,訓練過程中batch 設置為64,輸入該網(wǎng)絡的圖像尺寸為416×416。在YOLOv3-SF 的訓練過程中訓練損失(train loss)、驗證損失(val loss)的變化曲線如圖5 所示,mAP 在不同模型下的變化曲線如圖6 所示。
圖5 損失函數(shù)變化曲線
如圖5 所示損失函數(shù)總體呈下降趨勢,前25 次迭代中訓練損失快速下降,最后趨于穩(wěn)定。對于模型的識別精度,以mAP 作為評價指標,如圖6 所示YOLOv3-SF算法的mAP 最高,且變化曲線更為穩(wěn)定。
圖6 mAP 值在不同模型下的變化曲線
在自定義的紅外圖像測試集上分別選取低、中、高三種不同高度及下視角的艦船目標和車輛目標對SSD算法、YOLOv3 算法、RetinaNet 算法與YOLOv3-S、YOLOv3-F、YOLOv3-SF 算法進行測試,幾種算法對比結果如圖7~圖10 所示。
由圖7~圖10 結果可以看到SSD 和YOLOv3[9]無法識別下視遠距離小目標和被遮擋目標,且SSD 對于復雜背景下的紅外目標識別漏檢率最高;RetinaNet[14]對下視遠距離小目標的識別有了一定的提升,但對遮擋目標的識別較差且存在一定的誤檢率;YOLOv3-SF 結合了YOLOv3-S 和YOLOv3-F 的優(yōu)勢,識別效果得到較大提升,對遮擋目標和小尺寸目標的識別效果最好。
圖7 SSD 識別結果
表6、表7 分別給出了紅外艦船目標和車輛目標在6 種不同算法的輸入圖像尺寸和各類評價指標的檢測結果。
在表6、表7 中的AP 為mAP 值;APIoU=0.5為IoU=0.5時的mAP 值,是voc 的評判標準;APIoU=0.75為較為嚴格的mAP 值,能夠反映算法框的位置精準程度;FPS 為每秒幀率,即每秒內(nèi)可以處理得到圖片數(shù)量。
表7 紅外車輛目標在不同模型上的檢測結果
由各類算法的識別結果和表6、7、8 可知,在測試3 組低、中、高紅外艦船圖像和紅外車輛圖像時,YOLOv3-SF算法的識別精度最高,識別速度較RetinaNet 得到極大的提升,YOLOv3 算法識別精度較低,SSD 算法識別精度最低。說明YOLOv3-SF 算法相比于原有YOLOv3 算法在識別精度上得到較大提升,可以在提高識別精度的同時兼顧識別速度,從圖10 第三列可以看出在下視背景復雜度較高的場景應用具有一定優(yōu)勢。
表6 紅外艦船目標在不同模型上的檢測結果
圖8 YOLOv3 識別結果
圖9 RetinaNet 識別結果
圖10 YOLOv3-SF 識別結果
此外將改進算法應用于公開紅外船舶數(shù)據(jù)集Maritime Imagery in the Visible and Infrared Spectrums 也得到較高的識別精度,同時保證識別速度,滿足實時性的要求,識別結果如圖11 所示。
圖11 公開數(shù)據(jù)集識別結果
在民用目標中可以較為簡單地利用無人機對目標進行多角度采集,但對于軍用目標可能存在使用條件受限,無法獲取多角度圖像的情況。雖然識別速度會有一定提升,但識別精度會隨無人機采集圖像角度數(shù)量的減少有所下降。表9 給出了目標圖像采集角度數(shù)量對6 種不同算法mAP 的影響。
表9 采集角度數(shù)量對不同算法mAP 的影響(%)
表8 三種尺度目標在不同模型上的mAP(%)
復合翼無人機從低、中、高不同高度向下視角對海上艦船目標和復雜背景中的車輛目標俯拍得到紅外圖像。針對沒有開源多角度下視紅外圖像數(shù)據(jù)集的特點,構建了自定義多角度下視目標數(shù)據(jù)集。同時,在原有單步檢測主干網(wǎng)絡Darknet-53 的基礎上進行改進,提出了一種單階段的多角度下視空基紅外目標識別算法。借鑒空間金字塔池化思想,在原有主干網(wǎng)絡Darknet-53 中增加SPP 模塊。同時對損失函數(shù)進行改進,將原有的交叉熵損失改為Focal loss 損失,改進后的損失更加專注于訓練難分的樣本,對于易分樣本起到降低損失權重的作用。利用構建數(shù)據(jù)集訓練網(wǎng)絡,對紅外目標進行特征提取,確定目標的檢測框并給出目標類型及檢測精度。對SSD、YOLOv3、RetinaNet 與各改進算法進行對比測試。通過幾種評價指標和識別結果的對比,提出的算法在提高識別精度的基礎上,同時保證了識別速度,并且在復雜背景的目標識別方面具有一定的優(yōu)勢,適合于多種類型的紅外目標圖像識別。改進的算法可移植于機載目標識別系統(tǒng)中,只需向地面融合處理系統(tǒng)傳輸識別后的目標信息,在傳輸帶寬一定的條件下提高數(shù)據(jù)傳輸效率和增加無人機個數(shù),有效提高了系統(tǒng)穩(wěn)定性,為后續(xù)空基紅外目標探測識別系統(tǒng)的多尺度多角度目標識別提供理論和實驗依據(jù)。