楊傳棟,錢立志,薛松,陳棟,凌沖
(陸軍炮兵防空兵學院 高過載彈藥制導控制與信息感知實驗室,安徽 合肥 230031)
圖像自尋的是利用裝在彈藥圖像導引頭上的彈載攝像機獲取目標區域圖像,經彈載圖像處理器實時檢測并跟蹤目標進而生成彈體姿態控制指令,以控制彈藥自動命中目標的制導技術。圖像自尋的彈藥獲取的圖像信息直觀豐富,具備抗干擾能力強、成本低等優勢[1],受到國內外高度重視。2016年美國提出導引頭成本轉換項目,旨在開發低成本圖像制導彈藥[2]。在圖像導引頭設計中,彈載圖像目標檢測實現對戰場環境中的目標可靠實時分類和定位,是確保彈藥精確命中目標的關鍵。
傳統目標檢測方法大多采取人工設計目標特征或模板匹配的方式,對不同目標設計特征的工作量大,且易受光照、噪聲、目標特征變化等因素干擾,實際應用中魯棒性差、準確度低。2014年首次提出基于深度學習的目標檢測方法R-CNN[3]在VOC通用數據集上的平均檢測精度均值(mAP)達到66%,超出此前最優的傳統目標檢測方法可形變部件模型(DPM)[4]31.7%,在應對復雜環境下目標特征多樣性、背景多樣性問題上體現了更強的魯棒性和適用性。同時,結合模型壓縮加速方法設計的硬件友好型輕量化神經網絡模型可部署于CPU、FPGA、ASIC等嵌入式平臺,在實時性與檢測精度上優勢明顯,已成為自動駕駛、安防監控、軍事等領域主流檢測方法[5]。在圖像制導類導彈、航空炸彈、炮彈等彈載圖像目標檢測領域,基于深度學習的方法得到了重視和初步應用。2019年 美國薩維奇公司推出的小型反無人機導彈“SAVAGE”使用Movidius AI處理器實現目標檢測和跟蹤。2019年和2021年以色列拉斐爾公司研制的SPICE250精確制導炸彈和“Sea Breaker”巡航導彈使用深度學習技術提高了復雜背景下彈藥目標檢測能力。文獻[6]研究了深度學習在彈載圖像上的應用。文獻[7]提出了一種針對彈載圖像目標檢測模型的壓縮方法。文獻[8-9]研究了目標檢測模型在彈載處理器上的部署。
圖像自尋的彈藥獲取的彈載圖像(見圖1,其中d為彈目距離,v為彈丸飛行速度)與彈體運動高度耦合,有著顯著特點,增加了目標檢測難度。
彈載圖像目標檢測目前具體存在以下問題:
1)圖像制導彈藥成像環境惡劣,導致對目標檢測模型特征提取能力要求更高。受載體運動特性(彈體連續旋轉、捷聯式彈藥打舵引起的彈軸抖動)與不同天候天時(云霧、照度等)影響,進行自動曝光、白平衡、圖像糾旋、穩像、增強[10]等處理后,彈載圖像仍會存在圖像旋轉、抖動、畸變、遮擋、像素運動模糊、噪聲干擾、目標進出視場等特征,加之目標自身運動,使目標的輪廓、紋理、角度、色彩等特征難以全面反映,需提取更準確更具表達性的圖像特征;
2)目標尺度特性隨彈丸飛行變化大,且小目標占比高,容易造成漏檢、錯檢。在提取特征后需對用于預測的多尺度特征圖進行增強;
3)軍事打擊任務中戰場背景復雜、目標種類多樣,導致目標數據集中樣本不均衡問題顯著,為保證目標檢測模型在多戰場背景、多目標、末段彈道全過程中均能實時可靠,需要對樣本進行均衡處理;
4)彈載處理器對目標檢測模型參數量、計算量、速度要求苛刻。因彈上空間有限,彈載處理器功耗低、算力小、對內存、數據帶寬約束強,在部署目標檢測方法時需進行輕量化設計及壓縮加速。
對上述難點問題的解決成為提升圖像自尋的彈藥精確打擊能力的重要環節。本文回顧基于深度學習的目標檢測方法,梳理了彈載目標檢測模型部署中的關鍵技術,對比了目標檢測方法在主要數據集上的性能,并對未來發展進行展望。
基于深度學習的圖像目標檢測方法通常由目標檢測模型、模型訓練及推理過程組成,模型包含多個處理層,使用特征提取網絡對輸入圖像特征自動提取,經過特征圖增強模塊后在一個或多個預測特征圖上使用預測分支完成目標分類和坐標回歸,最后使用后處理方法剔除冗余檢測。模型結構如圖2所示。
在卷積層使用卷積核參數weightl-1∈RNkx×Nky×Nif×Nof對輸入特征圖xl-1∈RNix×Niy×Nif進行卷積操作?,實現特征提取得到輸出特征圖xl∈RNox×Noy×Nof(見圖3)。其中,t為卷積層數,(Nky,Nkx)、s分別為卷積核大小(k表示卷積核)與步長,下標y、x表示對應特征圖的長、寬,(Niy,Nix)、(Noy,Nox)、Nif、Nof分別為輸入和輸出特征圖長、寬及層數(通道數),f為特征圖層數。卷積核參數量為Ws=NkyNkxNifNof,計算量為Os=NkyNkxNiyNixNifNof。
設bl為卷第l層卷積核的偏置參數。積核偏置參數,對給定第l層輸入特征圖,輸出特征圖中的像素值為卷積核空間和通道區域中像素值的加權平均值,權重即為卷積核參數,計算公式為
(1)
式中:nof、nif分別為Nof、Nif組輸出和輸入特征圖中的第of個和第if個。
批歸一化(BN)層通常位于卷積層后,通過將卷積層的每個輸出特征圖像素做如(2)式的線性變換,能夠讓復雜網絡收斂加速訓練。
(2)
式中:BN(x)為輸入為x時批歸一化層的輸出;γ、μ、σ、β均為訓練完成后常數;A、B為一層特征圖共用的BN層參數。但推理階段增加一層運算將影響模型速度,占用內存。因此在部署中多將其與對應的卷積計算融合,得到第l層卷積層融合后的權重weight′l和偏置b′l為
(3)
式中:Al、Bl分別為第l層的BN層參數。
通過該方式針對Resnet50特征提取網絡合并后,經測試CPU提速10%,GPU達到50%。
激活函數通常位于卷積層和BN層后,通過引入非線性緩解神經網絡過擬合問題。以不同激活函數組成6層訓練網絡,對cifar10圖像分類任務測試,均訓練3個回合,每回合50 000張圖片,訓練運行時間和達到精度見圖3。其中修正線性單元(ReLU)函數將正值保留,負值設為0,即ReLU(x)=max(x,0),能加速網絡訓練速度,達到較高的精度,同時計算效率高,適合硬件部署。不同激活函數對比結果如圖4所示。
池化層對特征圖進行降采樣,無需權重參數,起到降低特征圖大小,減低計算量的作用,且對于平移、旋轉、伸縮等具有良好的魯棒性。主要有最大值池化和平均池化,其中最大值池化對局部區域返回最大值,易于硬件實現。
目標檢測模型在訓練階段使用反向傳播算法在大規模數據集上對模型參數進行學習,以適應目標和環境的各類變化;在推理階段通過一次加載前期訓練好的模型參數,模型可實時輸出針對輸入圖像序列的預測結果。根據在提取預測特征后是否基于預設候選框進行檢測,目標檢測模型可分為基于候選框和無候選框的目標檢測模型。
針對在預測特征圖上直接預測坐標面臨訓練難以收斂問題,基于候選框的目標檢測模型根據數據集統計特性,在預測特征圖上人工預設不同尺度和長寬比的候選框(px,py,pw,ph),作為可能出現目標的區域參考,如圖5所示。
在訓練階段學習候選框與真值框的坐標偏移關系,在推理階段加載訓練得到的參數,得到N個預測候選框偏移量后,通過線性變換得到預測框坐標
(4)
根據在目標檢測過程中是否首先進行前景和背景候選框初步篩選,可分為基于區域建議網絡(RPN)的兩階段方法和基于密集檢測的單階段方法。
1.2.1 兩階段方法
兩階段方法首先使用區域建議網絡初步篩選前景和背景候選框,得到稀疏的正樣本,然后在稀疏正樣本中進行目標類別概率預測和坐標微調。2015年Ren提出的Faster R-卷積神經網絡(CNN)[11]是第一個實現端到端訓練和檢測的兩階段方法,模型框架如圖6所示。
候選區域網絡使用前景概率排序和非極大值抑制(NMS)兩次篩選,提取N個前景概率最高的候選框(pxi,pyi,pwi,phi),i=1,2,…,N,作為正樣本輸出,克服了利用傳統候選框提取方法帶來的大量計算消耗,同時改進了候選區域的質量。而后感興趣區域池化層將N個候選框映射到特征圖中,并采樣成固定尺寸。最后通過兩個全連接層對ROI池化層輸出特征降維到4 096,分別輸入由兩個全連接層組成的預測分支,得到目標類別概率和位置坐標。由于分兩階段進行檢測存在運行速度慢的缺點,檢測速度為4.5幀/s;相關改進算法提高了檢測速度,但區域建議網絡帶來的內存消耗無法忽略,因此兩階段方法不適合彈載處理器的部署。
1.2.2 單階段方法
單階段方法將目標檢測過程簡化成端到端回歸問題,利用CNN提取特征并通過均勻地在預測特征圖上的不同位置進行密集抽樣,使用卷積層替代全連接層,對得到的候選框直接進行分類與回歸。因為沒有使用區域建議網絡提取正樣本,而是通過增加置信度預測判斷該候選框是前景或是背景,所以目標檢測速度得到極大提高,更加適合彈載處理器的部署。代表方法有YOLO、SSD等。
2016年Liu等[12]提出的SSD算法使用候選框的方法并在多分辨率特征圖上進行多尺度預測,針對不同尺度特征圖對候選框尺寸和長寬比進行了設計,在保證單階段方法速度優勢的同時提高了定位精度:
(5)

2017年Redmod等[13]提出YOLOv2方法。該方法使用k-Means算法對訓練集進行聚類得到候選框尺寸,并利用Sigmoid激活函數σ將偏移量預測值約束在[0,1]范圍,即每個候選框僅負責當前網格處的目標,并在輸入層和卷積層后增加BN層對數據進行歸一化處理,提高了訓練收斂速度和模型泛化能力。在檢測特征圖選擇上將大尺度特征圖重組合后與小尺度特征圖合并,提高了小目標檢測效果。2018年,Redmod等[14]優化了YOLOv2方法。該方法借鑒特征金字塔FPN方法,使用上采樣和融合的方式在3個尺度特征圖上進行檢測,并且每個通道設置3個候選框,在保持實時性的同時提高了目標檢測效果。文獻[15]通過加入SPP模塊提高感受野,并使用PANet[16]使預測特征圖具有更豐富的特征信息等,在訓練過程中使用了改進位置損失、數據增強、類別標簽平滑等訓練策略,實現了同等速度下更優的檢測效果。2020年,美國Ultralytics LLC公司開源了新的目標檢測網絡框架并命名為YOLOv5,通過融合多種改進手段使算法性能進一步提升,在工業界得到廣泛應用。
文獻[17]指出單階段方法精度低的根本原因在于,單階段方法產生過量的背景類候選框,引起類別不平衡。通過設計新的損失函數,在訓練過程中能有效削弱背景候選框的損失值,進而提高檢測精度,在VOC2007數據集上檢測精度達到75.1%,速度達到58幀/s。
單階段方法速度快、適用性好、易于部署,因此在彈載目標檢測中得到廣泛應用。
基于候選框的檢測算法是目標檢測領域的主流方法,但也有其局限性,例如:預設候選框大小、寬高比和數量等超參數通常需人工設置,難以包含形狀特殊的目標;對數據集敏感,換用場景需要調節候選框參數;通過密集采樣方式得到數量眾多的候選框,交并比(IoU)計算及后處理篩選計算冗余和內存開銷大;大多數候選框為負樣本,在訓練過程中大量負樣本會造成正負樣本比例失衡。近年來,為解決上述問題,候選框的檢測模型被提出,該類模型可分為基于錨點的方法和基于關鍵點的方法。
1.3.1 基于錨點的方法
基于錨點的方法將預測特征圖上的每個像素點作為錨點,通常使用錨點到邊界的距離表示預測框。
2015年提出的YOLO[18]、DenseBox[19]是最早無候選框的方法之一。YOLO方法將預測特征圖劃分為s×s網格,將每個網格中心作為錨點,每個錨點處預測向量包含2組預測框坐標、目標置信度和C類目標的概率,其中預測框坐標用網格中心點坐標和預測框長寬表示,目標置信度表示預測框是目標的概率。YOLO模型框架如圖7所示。
DenseBox方法將預測特征圖上的每個像素點作為錨點,錨點處的輸出預測向量包含4個坐標值和單類目標概率,為5維,最后均使用NMS篩選預測框。但該類方法難以應對重疊的邊界框,且查全率較低。
2019年Tian等[20]提出FCOS方法。該方法以預測特征圖上像素點為錨點,輸出預測向量包含C類目標分類概率、中心度分數及該錨點到邊界框4條邊的距離(l*,r*,t*,b*),通過增加中心度分數預測分支并使用交叉熵損失訓練,抑制了距離目標中心較遠的預測框。中心度分數計算公式為
(6)
通過在不同尺度的預測特征圖上預測特定大小范圍的目標,解決了真實邊框重疊帶來的模糊性和低召回率。
同年,文獻[21]在高分辨率預測特征圖上將每個像素點作為錨點,輸出預測向量維度為C類目標的熱圖、中心點坐標、修正量。考慮到中心點附近點為難樣本,為加速訓練收斂,通常在訓練中將中心點真值(x,y)映射到熱圖中的某一高斯散射核區域Yxyc內:
(7)
式中:σx、σy為二維高斯核半徑參數。在推理階段取消NMS,對每類熱圖篩選前100個局部峰值點作為輸出目標,減少了后處理的時間消耗,在精度上與RetinaNet方法相近并達到了實時。
1.3.2 基于關鍵點的方法
基于關鍵點的方法通過預測目標角點、中心點或極點,對關鍵點分組構成預測框。2018年Law等[22]提出CornerNet方法。該方法使用人體姿態估計中常用的沙漏網絡Hourglass作為特征提取網絡提取高分辨率的預測特征圖,而后用兩個檢測模塊分別預測左上和右下角點,輸出類位置熱圖、嵌入向量和取整修正量,最后對兩組角點篩選、分組并修正位置。基于同目標角點的嵌入向量接近、不同目標角點的嵌入向量遠離的先驗原則進行訓練,損失函數設計為
(8)
式中:N為訓練樣本數量;ec為第c個角點所對應的嵌入向量etc、ebc的平均值。該方法缺點是難以達到實時,且角點匹配時容易產生分組錯誤,導致定位不夠準確,錯檢率高。文獻[23]、文獻[24]分別從中心點約束與角點匹配原則方面進行改進,提高了檢測精度,但均無法達到實時。文獻[25]提出一種輕量化特征提取網絡的方法。針對使用角點檢測缺乏外觀特征的問題,2019年Zhou等[26]提出ExtremeNet方法,使用沙漏網絡對目標5個關鍵點(4個極值點和1個中心點)進行檢測,但該方法對大目標中心點響應不夠準確,容易造成漏檢且效率較低。
基于關鍵點的檢測方法依賴于復雜的特征提取網絡和高分辨率的預測特征圖,需要更大的內存成本和計算量,速度較低,因此不利于彈載處理器部署。基于錨點的檢測方法可以使用更簡單的特征提取網絡,速度更快,但在對打擊過程中可能出現的密集目標和彈道末端大尺度目標檢測效果較差,影響打擊精度。
2017年美國谷歌公司首次提出了一種基于編解碼器的序列預測結構Transformer,并應用于機器翻譯任務,改進了循環神經網絡訓練慢、全局語義考慮不足的缺點,在編碼器和解碼器中利用自注意力層能夠獲得更豐富的全局語義信息。自注意力層包括查詢矩陣Wqry∈RDm×Dk、關鍵詞矩陣Wkey∈RDm×Dk、值矩陣Wval∈RDin×Dout3個需要訓練學習的共享參數,輸入為X∈RT×DmT個Din維的像素序列,其中Din為特征圖長乘寬。則自注意力層輸出可以表示為
(9)
式中:softmax函數將輸入歸一化為概率分布。
2020年美國Facebook公司[27]首次將transformer結構應用到目標檢測領域,提出DETR目標檢測模型,成為近兩年熱點方向。該模型首先使用CNN提取特征,融合位置消息后將特征展開為X∈RT×Dm的序列,送入transformer的編碼器中得到T個物體編碼序列。非自回歸解碼器以編碼器輸入和N個目標序列為輸入,并行解碼得到N個目標序列,經過全連接層直接輸出N個預測結果。文獻[28]使用基于transformer的特征提取網絡并借鑒DETR方法輸出檢測結果,提出一種基于全transformer結構的目標檢測方法YOLOS。2021年文獻[29]采用Swin-Transformer[30]模型作為特征提取網絡,并提出一種多注意力感知結合的預測分支,在COCO數據集上取得了最高的mAP。該類方法對于超大規模數據集有更好的性能,但計算開銷更大,經輕量化后在效果上不具備明顯優勢,距離模型實際部署應用仍有待發展和驗證。
綜上,通用目標檢測模型中基于候選框的單階段方法和基于錨點的方法更適用于彈載處理器平臺的目標檢測模型部署。
為實現目標檢測方法在彈載處理器上部署并提高應用效果,當前可從特征提取網絡設計、預測特征圖增強模塊設計、訓練中樣本均衡、NMS后處理算法設計及模型壓縮5個方面入手。
2.1.1 典型特征提取網絡設計
目標檢測模型的特征提取網絡計算量通常超過模型總計算量的60%,因此特征提取網絡設計選擇決定了彈載目標檢測模型的基準性能,影響著模型對復雜背景的戰場環境和對多類目標特征的提取能力。2012年文獻[31]使用5×5、7×7大卷積核及5層卷積層構成特征提取網絡AlexNet,在圖像分類領域達到超越人的表現,表明了基于深度學習的方法在特征提取上的巨大優勢。2014年文獻[32]從增加網絡深度的角度提出了卷積塊概念,將多個小卷積核卷積層堆疊組成卷積塊,設計了VGG結構,提高了特征提取能力和泛化能力。2014年Szegedy等[33]從增加網絡寬度角度提出由多個小尺寸卷積核構成增寬的Inception卷積塊,并指出小卷積核組合能夠保持感受野并降低參數量,因此3×3和1×1小卷積核級聯被當前大多數網絡[34]采用。通常隨著網絡加深特征圖包含的圖像信息會減少,為解決深度神經網絡帶來的梯度爆炸和梯度消失問題,2015年He等[33]提出包含殘差模塊的特征提取網絡ResNet,該網絡中任意兩層之間的函數關系可由連續兩層公式通過遞歸關系得到:
(10)
式中:xL為殘差模塊的輸出層;F表示殘差模塊中處理層的集合,跳躍連接保證了第L層網絡一定比淺層第l層包含了更多圖像信息。由(11)式梯度計算公式可以看到梯度不會消失,跳躍連接成為后續更深網絡設計中通用的方法[36]。
(11)
式中:ε為網絡的輸出。
特征融合是提高特征提取能力的有效手段。Huang等[37]提出DenseNet網絡結構,該結構通過密集連接進行特征融合,獲得了更高的精度,但由于每層都聚合前面層的特征導致存在信息冗余,造成高內存訪問成本和能耗。2018年,針對DenseNet的特征復用冗余,文獻[38]提出一種由可學習分組卷積組成的CondenseNet結構來裁剪掉冗余連接。2019年Lee等[39]提出OSA模塊,該模塊最后一層聚合前面所有層的特征,緩解了密集連接帶來的信息冗余問題。2021年文獻[40]通過稀疏特征重激活的方式設計了CondenseNetV2結構,對冗余特征同時進行裁剪和更新,有效提升了密集連接網絡的特征復用效率。
加入注意力機制的卷積模塊是提高特征提取能力的一個有效方向。通過設計一系列神經網絡層操作,可以使網絡關注重要信息,抑制無關信息。2017年Hu等[41]提出SE模塊在通道維度進行注意力生成,在訓練中根據每個通道特征的重要程度和關聯程度進行加權,提高特征表征能力。SE模塊可嵌入到通用特征提取網絡模塊中,也可嵌入在輕量化網絡中,能以較小的計算成本達到較大的精度提升。
2018年文獻[42]提出一種同時在通道和空間兩個維度使用注意力機制的特征增強結構CBAM,該結構使用平均池化AvgPool()和最大值池化MaxPool()提升了關鍵區域的特征表達,可表示為
(12)
式中:mlp為共享卷積層;Mc、Ms分別為通道、空間注意力增強操作;Xl為經過注意力機制增強的特征圖。圖8所示為利用Grad-CAM[43]方法對使用CBAM的YOLOv4檢測方法的特征圖特征可視化,其中圖8(a)為彈目距離5 km處的艦船目標圖像。
對比圖8(b)、圖8(c)可知,增加了CBAM注意力機制的特征提取網絡對海雜波環境下的彈載圖像目標特征定位更加敏感,進而可提高檢測方法的準確性。
2.1.2 特征提取網絡輕量化設計
針對深度特征提取網絡在部署于彈載處理器等嵌入式設備上面臨硬件存儲空間不足、功耗高、復雜的計算單元延遲長、在硬件上支持不足等實際問題,對特征提取網絡進行輕量化設計是當前主要的解決方法。
2016年文獻[44]設計了Fire卷積塊,該結構使用多個1×1卷積核替代3×3卷積核,并通過多個Fire卷積塊結合跳躍連接構建了SqueezeNet網絡結構,降低了所需內存帶寬并能保持較高的精度。2016年文獻[45]提出深度可分離卷積模塊,將卷積操作分解為分別學習空間特征和通道特征的深度卷積和逐點卷積,縮減了參數量和每秒浮點數計算量(FLOPs),并引入通道和輸入尺寸壓縮比作為超參數,進一步控制模型大小。2017年Howard等[34]將其應用于MobileNet,取得了良好的效果。為彌補精度的下降,2018年Sandler等[46]在MobileNet基礎上提出MobileNetv2網絡結構。該網絡在深度卷積操作前增加一層逐點卷積升維以在更高維度提取特征;隨后使用逐點卷積降維,并去掉了第2個逐點卷積后的激活函數以保持低維特征;最后增加跳躍連接,提高了網絡的特征表征能力。但該網絡結構中過多的逐點卷積會增加額外的內存讀取,降低了并行計算效率。
2017年Zhang等[47]提出ShuffleNet網絡結構,其卷積塊由逐點分組卷積結合深度卷積組成,并在特征通道維度隨機打亂各組特征圖彌補信息交流,參數量相對原始卷積操作可縮減組數倍。2018年Ma等[48]進一步改進了ShuffeNet,提出ShuffleNetv2網絡結構,該結構首先在通道維度上將輸入特征圖拆分成兩個分支,使用逐點卷積代替組卷積,用級聯操作合并特征圖,保持卷積塊輸入輸出特征維度相同,可獲得更低的計算量。2020年Han等[49]設計了Ghost模塊[49],該模塊采用逐點卷積縮減輸出特征圖通道數,然后利用深度卷積模擬線性操作,生成具有相似信息的中間特征圖,能成倍縮小計算量。使用該模塊替換MobileNetv3[50]網絡中的基本模塊獲得了更優性能。2021年文獻[51]對逐點卷積和深度卷積進行低秩近似減少輸入輸出的連接數,并使用動態最大偏移函數作為激活函數,設計得到的MicroNet網絡彌補了網絡深度減少帶來的性能降低。部分輕量化網絡基本模塊如圖9所示,其中DWConv表示深度卷積操作。
手工設計高效模塊和網絡架構屬于高維空間的最優參數搜索問題,可選擇的設計數量增加會加大輕量化網絡最優化設計的難度。近年來神經架構搜索(NAS)成為解決設計難題的一個解決方案。該方法依托大規模GPU資源,通過在定義的搜索空間內使用一定的搜索策略找出候選網絡結構并評估,得到最優的網絡結構。2018年文獻[52]通過強化學習在500塊GPU上搜索得到NASNet網絡結構,但該結構分支碎片化,不利于硬件部署。2019年Wu等[53]基于可微神經網絡搜索方法,在人工設計好的22層網絡和9種候選卷積塊組成的搜索空間內進行快速搜索,得到FBNet。2020年Wan等[54]針對FBNet搜索空間相對較小問題,提出DMaskingNAS方法,將通道數和輸入分辨率分別以掩模和采樣的方式加入到搜索空間中,在減少內存和計算量同時大幅增大搜索空間。2021年文獻[55]將訓練參數加入搜索空間,搜索得到FBNetV3網絡結構,提高了精度。
相比于車載、機載圖像目標,彈載圖像目標在彈道末端尺度變化最為劇烈,是影響彈載目標檢測效果的主要因素。以長20 m×寬10 m的面目標為例,彈丸以固定下滑角和視場角對目標區域成像,圖像分辨率為1 280×1 024,統計彈丸彈道末端圖像目標在長度方向上的像素數隨彈目距離的變化和當前幀相對兩幀前目標尺度的變化率,如圖10所示。
由圖10可以看到,目標圖像在4~1.5 km范圍內時,當前幀相對前一幀的尺度變化率不大,以弱小目標特征為主,當進入1.5 km范圍內,尺度變化率快速增加,直至圖像目標充滿整個視場。
對于此問題,從預測特征圖增強角度有針對性地提高彈載圖像目標檢測效果。最初檢測方法如YOLO、Faster-RCNN僅使用特征提取網絡得到的單層卷積特征作為預測特征圖進行預測,如圖11(a)所示。
由于深層特征圖尺度小、感受野大,缺乏小目標特征,造成小目標檢測效果差。SSD方法針對不同尺度的目標設置不同大小的候選框,在多層特征圖上檢測,如圖11(b)所示。但采用該方法時預測特征圖之間缺乏信息融合,效果提升有限。
目前通常有3類增強模塊設計增強預測特征圖,一是采用在特征提取網絡之后加入特征融合及連接模塊增強特征,獲取適應不同尺度目標的預測特征圖;二是使用注意力機制進行融合;三是通過增加視覺感受野提高小目標檢測能力。
借鑒傳統特征提取算法中圖像金字塔的思想,文獻[56]提出了自上而下的特征融合金字塔結構FPN。高層特征圖上采樣后與相同尺寸的低層特征圖使用像素加法進行特征融合,為消除混疊效應使用3×3卷積處理,得到同時包含局部信息和全局信息的預測層,有效提高了小目標效果。YOLOv3、RetinaNet方法均使用了自下而上的特征融合方式。針對FPN可能導致出現重復的預測問題,文獻[16]提出路徑聚合網絡PANet作為預測特征圖增加模塊,在FPN融合特征基礎上加入自下而上的雙向融合,提高了多尺度目標的檢測精度,如圖12所示。
文獻[57]在FPN模塊中重復使用一個有效的卷積塊,進行復雜的雙向特征圖融合,提出BiFPN結構,如圖13所示。文獻[58]通過NAS方法搜索得到更為復雜的NAS-FPN預測特張圖增強模塊,但過于復雜的融合方式會增大內存占用,不利于網絡輕量化。
在預測特征圖中增加注意力機制能夠提高檢測效果。Liu等[59]在YOLOv3方法基礎上采用了注意力機制,將3層不同分辨率的預測特征圖按權重融合,設計了ASFF預測特征圖增強模塊,如圖14所示。文獻[60]同時使用特征融合和注意力機制增強預測特征圖特征,在輕量化同時提高了精度。Dynamic Head方法[30]使用3個級聯注意力機制分別提高預測特征圖尺度感知、空間感知、任務感知能力。
通過增加感受野的方式可以增強預測特征信息。感受野通常與卷積卷積核大小、空洞卷積大小有關。Liu等[61]模擬人類視覺感知模式提出RFB模塊,并應用于SSD目標檢測方法。該模塊使用不同大小的卷積核分支得到多尺度感受野,隨后使用不同大小的空洞卷積模擬感受野尺度和離心率的關系,能夠增強預測特征圖對不同尺度目標的表征能力,有效提升目標檢測方法的性能。2019年Li等[62]提出TridentNet預測特征圖增強方法,使用3個不同大小的空洞卷積,生成感受野大小不同的預測分支,分別負責檢測大中小三類不同尺度目標,如圖15所示。
文獻[63]使用不同擴展率的多路徑擴張卷積層組成語義提取模塊AC-FPN,從不同的感受野中捕獲豐富的上下文信息,通過密集連接融合多個感受野的信息,解決了特征圖分辨率和感受野之間的矛盾以及多尺寸感受野之間缺乏有效交互的問題。文獻[64]提出一種具有不同空洞卷積大小的空洞編碼模塊作為預測特征圖增強模塊,通過該模塊實現了在單尺度預測特征圖上的感受野覆蓋,與使用多尺度預測特征圖的目標檢測方法具備同樣的檢測精度,且具有更快的速度和更低的內存占用。
彈載圖像數據訓練中的樣本不均衡問題是影響模型效果的重要因素。樣本不均衡問題一是正樣本和負樣本不均衡,二是難樣本和易樣本不均衡,三是不同類樣本不均衡。以艦船目標為例,圖16中真值為艦船目標區域,通常將與真值IoU小于閾值的區域視為負樣本。一幀圖像中負樣本數量占據大多數,如果大量負樣本參與訓練會造成正樣本損失湮滅,使模型失效;在訓練過程中難樣本為被錯誤預測的樣本,數量相對少,模型難以專注對難樣本學習;同時,戰場環境中某些類別目標出現概率低、樣本數量少,會導致該類預測準確性差的問題。可從改進訓練樣本采樣方法、調整損失函數中樣本的權重及通過研究樣本之間的關系三個方面解決訓練樣本不均衡問題。
Shrivastava等[65]提出OHEM算法,對每張圖片的感興趣區域損失進行排序,篩選出損失較大的部分樣本作為難樣本,并對其重新訓練,但該方法對噪聲標簽敏感。Cao等[66]提出了一種簡單而有效的采樣策略,首先對樣本進行分組并依次抽取組內IoU最高的樣本,得到不同的等級,然后通過重新加權方式將學習的焦點集中在具有高等級的優質樣本上。Zhang等[67]提出根據真值的相關統計特征自適應選擇正負樣本的方法ATSS,在不帶來額外計算量和參數的情況下將FCOS的精度提高到與RetinaNet相同的水平。文獻[64]針對不同尺度正樣本選擇不均衡的問題提出一種均衡匹配策略,使得各個尺度的正樣本在訓練中做出同等貢獻,有利于在全尺度預測上保持結果一致性。
Lin等[17]提出Focal Loss損失函數,通過引入兩個加權因子解決正負樣本不均衡和難易樣本不均衡問題,但是兩個參數需要根據數據集調整。Li等[68]提出了一種梯度協調機制GHM,把訓練過程中存在類別中難易樣本的不平衡歸結為梯度分布不平衡,通過增加有效難樣本的梯度達到提高訓練的有效性和穩定性的目的。針對訓練和推理階段正負樣本預測策略不一致和預測框分布離散的問題,文獻[69]提出廣義焦點損失GFL:
(13)
Chen等[70]提出模擬樣本關系的排序損失作為目標損失,來解決樣本類不平衡問題。Chen等[71]提出完全基于學習的殘差機制,將多分類的不平衡轉移到目標類相關模塊,在模塊之間建立殘差連接,用激活函數計算更新目標分數,通過連續細化的過程逐步解決樣本不平衡問題。
目標檢測模型的預測結果通常包含大量冗余重疊的預測邊界框,需要NMS后處理方法進行篩除。NMS流程如圖17所示。
針對原始NMS僅依靠單一經驗閾值篩選導致漏檢、使用分類置信度排序并未關聯定位準確度等問題,2017年文獻[72]提出的Soft-NMS算法對分類置信度加權衰減后再進行篩選,在兩階段方法上能更好地改善漏檢問題。2018年文獻[73]提出IoU-Guided NMS算法,該算法在網絡預測分支增加定位置信度預測分支,將預測框和真值間的IoU作為定位置信度替代分類置信度作為篩選閾值。2019年文獻[74]提出一種自適應NMS算法,該算法根據密集預測模塊得到的目標密集度可自適應選擇閾值大小。2020年文獻[75]將定位置信度與分類置信度相乘作為篩選閾值,在增加少量計算量下提高了精度。2020年文獻[76]指出相鄰預測候選框中心距離越靠近,則越有可能為冗余框,因此在閾值篩選中增加了中心距離先驗,提高了檢測精度。
上述提升精度的方法均為順序處理的方式,運算效率較低。而對于彈載處理器等嵌入式設備后處理時間不可忽略,因此需要針對NMS進行加速。文獻[77]提出Fast NMS算法,針對NMS在IoU計算和順序迭代抑制造成低效問題,按置信度降序排列N個預測候選框集合B=[B1,B2,…,BN],計算與自身上三角化的IoU矩陣:
(14)
按列取最大后使用NMS閾值篩選可一次得到全部計算結果,并可與提升精度的方法相結合,但是取最大值的過程會允許冗余框錯誤抑制其他框而導致漏檢。文獻[78]提出Cluster NMS算法,通過更少的迭代計算使Fast NMS保持與NMS相同的精度,能夠并行處理聚類的預測候選框,最大迭代次數僅為擁有最多預測候選框的類的迭代次數,并可以融合得分懲罰機制、中心點距離約束及加權平均方法,進一步提高篩選精度。近年來出現了無NMS的方法[21],該類方法通過樣本匹配策略可得到少量的預測框[27],但存在不夠穩定的缺點。因此對于彈載目標檢測方法使用NMS算法仍有較大實用價值。
當前通用的目標檢測算法通常基于GPU高算力平臺進行訓練,受限于彈載處理器體積、功耗、算力制約,在推理端對算法體積速度要求苛刻。不進行壓縮加速的高精度浮點計算神經網絡模型占存儲空間大、計算量高、數據傳輸帶寬要求高,難以在彈載處理器上直接使用。
當前彈載圖像處理器通常使用基于CPU+AI芯片的異構處理器[8],CPU主要完成處理器初始化、數據調度等控制功能和NMS等后處理,利用AI芯片提供的AI指令集編譯器能夠快速部署加速后的目標檢測算法,實現卷積神經網絡的加速計算。結合面向深度學習的彈載處理器平臺對算法進行針對性壓縮設計,可實現低內存帶寬、低功耗、低計算資源占用以及低模型存儲等。
從壓縮參數和壓縮結構兩個角度可以將壓縮方法分成表1所示7類。

表1 模型壓縮方法分類
隨著神經網絡模型壓縮方法的發展,已經孕育出一系列承載最新成果的壓縮方法工具包,表2列舉了一些常用的壓縮方法工具包。其中,Distiller、Pocketflow、PaddleSlim均提供多種參數剪枝、量化、知識蒸餾方法的支持,并且提供自動化模型壓縮算法AMC[79]的實現。

表2 壓縮方法工具包
ImageNet是當前用于預訓練特征提取網絡的大規模圖像分類數據集。特征提取網絡在該數據集上的Top1分類精度能夠表征其特征提取能力的高低。將特征提取網絡區分為基于手工設計和通過NAS方法自動搜索得到的特征提取網絡,匯總典型特征提取網絡在ImageNet圖像分類數據集上的Top1分類精度、模型參數量和乘加累積操作數(MACS),性能對比如圖18 所示。
由圖18可以看到,傳統特征提取網絡模型如ResNet、DenseNet等參數量通常大于30 MB,MACs在30億次以上,具備相對較高的精度,但大參數量及高浮點計算量導致難以部署在彈載處理器上。輕量化網絡模型通過更優的網絡設計能夠達到較高的精度,同時計算量大幅降低,對于算法部署具有實際應用價值。如結合自動搜索方法得到的輕量化網絡模型FBNetV3可在FLOPs為5.57億次時達到80.5%的精度[54],且模型參數量僅為8 MB。
表3匯總了當前典型目標檢測方法在通用目標檢測數據集COCO上的性能表現,檢測速度均為在TITAN X GPU硬件平臺測試結果。

表3 典型目標檢測方法性能對比
由表3可以看到,基于Transformer的目標檢測算法通過超大規模數據預訓練能獲得更高的檢測精度,代表了當前所能達到的最高檢測能力,但目前在速度上難以達到實時。單階段算法如YOLO、Objects as Points能夠達到更高的實時性,其端到端的網絡結構在彈載處理器部署上具有更好的適應性。
NMS算法用于進一步篩選目標檢測模型的預測冗余結果,是影響彈載處理器目標檢測效果的主要算法。表4匯總了典型NMS算法在COCO數據集上的性能表現,目標檢測模型均采用YOLOv3-SPP結構。平均檢測精度均值(mAP)、IoU閾值為75%時對應的平均查準率AP75、檢測結果上限為100個時對應的平均查全率AR100指數。

表4 典型NMS算法性能對比
由表4可以看到,傳統NMS算法經過Fast NMS等方法并行加速處理后速度得到較大提升,滿足了實時性要求,在此基礎上通過增加Weighted-NMS、DIoU-NMS等提高精度的方法,能以較小的速度損失得到一定的精度提高。
彈載處理器能耗和面積消耗與運算數據的位寬密切相關。文獻[80]測試了不同數據類型運算操作的占硬件面積及能耗對比,如表5所示。
由表5可以看到,低精度定點數加操作和乘法操作的硬件面積大小及能耗比高精度浮點數要少幾個數量級,使用8 bit定點量化可帶來4倍的模型壓縮、4倍的內存帶寬提升,以及更高效的緩存利用(內存訪問是主要能耗)。除此之外,計算速度也通常具有2~3倍的提升,且在一定場景下定點量化操作精度損失小,因此使用低比特數進行模型壓縮具有較大優勢。

表5 不同數據類型的運算操作占硬件面積及能耗
彈載圖像數據集中的圖像通過某型旋轉炮彈靶場射擊試驗、無人機掛載彈載相機模擬拍攝、軟件仿真等手段獲取,包含港口、海洋、荒漠、草地等作戰場景,具備彈載視角下多種目標類型不同尺度特征的圖像序列。本文基于該數據集對典型目標檢測算法進行訓練,得到部分檢測結果如圖19所示。
圖19(a)~圖19(d)為基于YOLOV4目標檢測方法對在不同彈目距離d和圖像旋轉角α獲取的多靶標圖像的識別效果。由圖19可以看到:在遠距離時YOLOV4方法可對靶標區域及區域內多個靶標進行準確檢測;隨著彈目距離縮小,目標檢測方法能夠保持對打擊的靶標精確定位,表明采用的檢測方法能夠適應不同尺度和不同場景下靶標特征,具有較強的魯棒性。圖19(e)、圖19(f)為基于YOLACT方法對模擬彈載視角拍攝的裝甲目標檢測結果,從中可以看到,該方法在獲取目標輪廓同時可得到旋轉檢測框,具有更精確的定位信息。
本文結合彈載圖像目標檢測難點問題,綜述了基于深度學習的目標檢測方法,從5個方面闡述了目標檢測模型在彈載處理器部署中的關鍵技術,為高性能彈載圖像目標檢測實現提供了先進理論基礎和可行方案,一定程度上推動了圖像自尋的彈藥的精確化、智能化。相關技術可應用于車載、機載等平臺的檢測任務,但目前尚未發展成熟,仍有如下值得關注和討論的研究方向:
1)兼顧模型性能和彈載處理器硬件部署的輕量化檢測模型設計。當前彈載目標檢測通常采用單階段輕量化模型,具有實時性好、硬件部署適應性強等優點。但在復雜環境下檢測精度仍有提升空間;對模型硬件部署效果缺乏理論分析及全面的指標評價。通過強化學習自動搜索得到高性能的輕量化網絡,結合大感受野注意力機制增強特征圖等方法,綜合數據讀取、模型計算量、內存訪問成本、計算并行度、硬件能耗等指標設計更優的硬件友好型目標檢測模型,是實現高效可靠的彈載圖像目標檢測必須研究的重要課題。
2)彈載圖像自尋的系統一體化設計。彈載圖像自尋的系統包含大靶面彈載攝像機圖像采集、彈載目標檢測及跟蹤。在工程上通常采用分治法完成各個任務,簡單清晰,分工明確,但集成度低、丟失了任務間關聯信息。一體化設計能利用任務間關聯信息,在系統層面緩解模型經過壓縮后帶來精度損失的問題,具有重要的實用價值。
3)模型的可解釋性問題研究。雖然基于深度學習的目標檢測方法具備高準確性、高魯棒性的優點,但通常被認為是基于數據驅動的“黑箱”模型。當前通過可視化、外部擾動、因果解釋等方法仍無法完全解釋其決策依據和邏輯,導致使用者無法完全信任模型決策結果。因此,未來在提升模型性能的同時也應注意模型的可解釋性。
4)多目標打擊決策問題研究。圖像自尋的彈藥作為“察打評”一體化閉環作戰平臺,在目標檢測中增加毀傷判別先驗知識,對實現作戰效能最大化具有重要的實戰意義。