魏 琦,何子清,王亞林,王 軍
(1.蘇州科技大學,江蘇 蘇州 215009;2.近地面探測技術重點實驗室,江蘇 無錫 214035;3.中國白城兵器試驗中心,吉林 白城 137001)
破片殺傷效應[1]是指戰斗部毀傷試驗爆炸后破片對目標的破壞作用,它與破片的數量、破片的空間分布、彈目交匯條件等參數有關。對于破片殺傷效應的評估[2]是爆炸性武器研發、改進、定型及作戰威力評估的重要內容。戰斗部威力試驗中常利用靶板測量飛散特性,需要在爆炸區域設立多個鋼板靶或木板靶,試驗后人得到有限數量的破片且防護困難。靶板法價格便宜、安裝簡單,能夠可靠地獲得破片分布信息及侵蝕能力,是靶板沿用至今的破片參數測試方法。
傳統的靶板法在數據處理時使用人工圈定[3]的方式對破片位置進行測量,存在以下方面不足:一是采集效率低,需要耗費較多的人力和時間;二是采集數據信息較少,僅獲取某個靶板有效區域內的破片數量;三是誤檢漏檢率大。
隨著激光掃描技術的發展,以及深度學習的研究方法逐漸滲透到各個領域,針對靜爆場破片的目標檢測已經不再滿足于單純的人工檢測。基于激光掃描技術,何性順等[4]提出了基于TLS的靶板穿孔特征識別提取方法,采用三維激光掃描技術通過點云間內部關系,識別破片穿孔特征,但實驗的樣本數量少,識別速度慢。目前主流的深度學習目標檢測方法包括Fast R-CNN[5]、Faster R-CNN[6]等基于候選區域的算法以及 YOLO[7]、單激發探測器(single shot detector,SSD)[8]等基于回歸的算法。雷江波等[9]提出了基于Faster R-CNN的破片群圖像目標檢測研究,首次將Faster R-CNN網絡應用于破片檢測,但檢測速度較慢,且對于小目標的檢測精度較低。為解決這個問題,Fu 等[10]提出 DSSD(deconvolutional single shot detector)檢測器。該模型將 SSD 中的骨干網絡修改為 ResNet101,同時增加 Deconvoluational 模塊和 Prediction 模塊,提升了模型對小目標物體的識別和分類能力,但是計算量較大,無法進行實時性目標檢測。張侶等[11]在骨干網絡中引入注意力機制和 ResNet 的思想,并在殘差模塊外層增加skip connection 構成嵌套殘差結構,大幅提升了網絡的特征提取能力。趙鵬飛等[12]采用分組殘差的方式重新構建 Darknet-53,引入特征增強模塊與通道注意力機制獲得淺層增強特征,改善淺層語義特征信息不足的問題。
本文提出改進的SSD目標檢測算法,將SSD網絡模型中的骨干網絡修改為DenseNet[13],并改進DenseNet網絡模型結構,減少網絡參數,降低輸入圖像特征信息的消耗,最大程度地保留目標物體的細節信息,另外引入注意力機制模型,提升網絡前向傳播時的特征表達能力,充分提取小目標的特征信息。
靜爆試驗過程中由于爆炸范圍較大,會設置多個鋼板靶進行破片參數測量,因此破片打擊到靶板上進行檢靶主要存在以下難題:(1)如何在復雜明暗程度不同的破片圖像中準確定位到破片區域,并進行分類;(2)如何提高破片區域的定位識別精度。針對這些技術難點,提出基于深度學習目標檢測方法,根據破片圖像特點,引入深度學習網絡,首先對物體和背景進行簡單的二分類與粗略定位,根據第一部分的二分類結果過濾大部分簡單負樣本,然后進行目標類別的判斷與位置回歸,最后輸出破片數量及類別。提出的算法流程如圖1所示。

圖1 基于SSD的破片圖像識別流程Fig.1 Fragment image recognition process based on SSD
SSD網絡是基于回歸的目標檢測算法的典型網絡,它利用單個深度卷積神經網絡結合6個不同尺度的特征圖進行預測獲取目標的類別和位置信息。SSD網絡由基礎網絡和額外增加網絡組成,其結構如圖2所示。

圖2 SSD網絡結構Fig.2 SSD network structure
其中,VGG-16網絡為SSD的基礎網絡。SSD的額外增加網絡由 Conv4-3 特征圖以及經過不斷下采樣操作形成尺度逐漸變小的特征圖組成。
SSD網絡對于小尺度目標的檢測主要利用分辨率較高的Conv4_3淺層特征圖,而Conv4_3位置比較靠前,容易導致特征提取不充分,丟失一些重要的細節特征,因此,這里考慮更換SSD中的主干網絡。由于DenseNet網絡是密集型網絡,它的特點是重復利用前幾層的特征信息,利用拼接操作,最大化重用每一層的特征,而且可以很好的緩解梯度消失現象,所以本文將采用DenseNet網絡模型替代VGG-16原始網絡模型進行檢測。
DenseNet網絡由多個Dense Block模塊和多個Transition Layer層組成,其網絡結構如圖3所示。

圖3 DenseNet網絡結構Fig.3 DenseNet network structure
由圖3可以看出,Dense Block模塊作為DenseNet網絡結構中的重要組成部分,除去第1層只有1個輸入,其他層的輸入都包括該層前面每一層的特征圖,同時該層的特征圖也會傳遞給之后的所有層,這樣的連接更加稠密,比傳統卷積網絡需要更少的參數。在DenseNet網絡結構中每個Dense Block模塊之間還包含一個Transition Layer層,它起到防止過擬合和降采樣的作用,由于Dense Block 重用特征圖的特性導致其中各層特征圖的大小必須相等,因此需要在2個Dense Block之間通過1×1的卷積對特征圖進行壓縮,再用一個步長為2的池化層來對圖像進行降采樣。
注意力機制模型主要分為通道注意力機制(channel attention module)和空間注意力機制(spatial attention module),SENet[14]是通道注意力機制的典型實現,它的主要目的是獲得輸入進來的特征層的每一個通道的權值。圖4是SENet的結構模型。

圖4 SENet結構Fig.4 SENet structure
如圖4所示,SENet網絡首先對輸入進來的特征層進行全局平均池化,將一個多維度的特征通道映射成一個全局的實數,接著進行兩次全連接,第一次全連接神經元個數較少,第二次全連接神經元個數和輸入通道數一致,完成之后再經過Sigmoid激活函數將值固定在0~1,此時我們獲得了輸入特征層每一個通道的權值(0~1),最后將這個權值乘上原輸入特征層對其進行重新加權,從而實現通道上的特征重寫。
空間注意力機制[15]則是獲得輸入進來的特征層上每一個特征點的權值,其模型結構如圖5所示。

圖5 空間注意力機制結構Fig.5 Structure of spatial attention mechanism
對輸入進來的特征層,在每一個特征點的通道上取最大值和平均值。之后將這兩個結果進行一個堆疊,利用一次通道數為1的卷積調整通道數,然后取一個sigmoid,此時我們獲得了輸入特征層每一個特征點的權值(0~1)。在獲得這個權值后,我們將這個權值乘上原輸入特征層即可。
CBAMNet[16]將通道注意力機制和空間注意力機制進行了結合,它會對輸入進來的特征層,分別進行通道注意力機制的處理和空間注意力機制的處理。圖6是CBAMNet的結構模型。

圖6 CBAMNet結構Fig.6 CBAMNet structure
在每個Dense Block結構中引入CBAMNet注意力機制模型,可以將淺層網絡重新加強全局特征,將深層次的網絡中各個特征的重要通道進行重新加權,有效提高模型精度。
原始的DenseNet卷積網絡中第1個卷積核的大小為 7×7,步長為2,輸入圖像在經過第一層卷積和池化下采樣后,其特征信息還未被充分提取就已部分丟失,從而影響到后續特征提取。因此,本文對DenseNet進行改進,采用 3 個 3×3 的卷積核代替7×7卷積核,其中第一個3×3的卷積核步長為2,其余步長為1。此外,對DenseNet網絡中的Dense Block模塊進行改進,在3×3卷積前加上一個1×1的卷積,用來降低上一層輸入的通道數,減少后面的計算量,再結合前面提到的CBAMNet注意力機制模塊,加到Dense Block模塊的3×3卷積后面,用來增強有用信息的特征提取。改進后的 DenseNet網絡層參數如表1所示。

表1 DenseNet與改進后DenseNet網絡層參數對比表Table 1 DenseNet and the improved DenseNet network layer parameters comparison
為解決正負樣本不均衡的問題,本文引入焦點損失函數[17]替代原有的交叉熵損失函數,其原理是降低損失函數中易分類樣本的權重,增加難分類樣本的權重。
交叉熵損失函數的公式如式(1)所示。

(1)
式中:y表示目標的真實類別情況;p表示檢測模型輸出是目標的概率,取值范圍(0,1]。
平衡交叉熵損失函數在交叉熵公式前面增加了一個a權重,a值越小,負樣本的權重相對降低,同時正樣本的權重相對增加,其公式如式(2)所示。

(2)
在平衡交叉熵損失函數中加入調制因子,構成焦點損失函數,公式如式(3)所示。當樣本屬于易分類時,調制因子趨近于0,對損失值造成的影響較小,當樣本屬于難分類時,調制因子趨近于1,對損失值造成的影響較大,從而控制難易分類樣本在損失函數中所占的比重。
(3)
將上述改進后的DenseNet基礎網絡替換到SSD的基礎網絡中,將尺寸為38×38、19×19的特征圖取出添加到額外增加網絡中,另外替換原有的交叉熵損失函數,改為焦點損失函數。改進后的SSD網絡結構如圖7所示。

圖7 改進后的SSD網絡結構Fig.7 Improved SSD network structure
本文采用佳能EOS 6D Mark相機和24~105 mm變焦鏡頭進行圖像采集,其最大分辨率為6 240×4 160,傳感器尺寸為35.9 mm×24 mm,在鋼靶板尺寸為2 m×3.5 m情況下,像素分辨率最高為0.38 mm/pix,為采集破片圖像提供了保障。此次試驗共采取到1 683個破片圖像,通過對各類型破片進行訓練,將其中的90%用作訓練集和驗證集(訓練集和驗證集比例為9∶1),10%用作測試集。實驗在Python 3.7以及Pytorch 1.2 的深度學習框架上進行,使用CUDA9.0加速GPU運算,GPU由4塊英偉達GTX1080Ti(11 GB 顯存)組成。
本文算法與同樣基于SSD網絡模型的VGG基礎網絡模型、改進前的DenseNet基礎網絡模型進行對比分析。采用檢測平均精度(average precision,AP)和平均精度均值(mean average precision,mAP)作為算法檢測性能的評價指標。上述算法在數據集上的檢測結果如圖8所示。
根據圖8,針對本次實驗的破片數據集驗證結果來看,以VGG-16為基礎網絡的目標檢測算法對于一些邊緣目標、小目標,或者一些形狀奇特的破片的漏檢率比較大,而通過改進的DenseNet基礎網絡的檢測效果明顯較好,不僅檢測精度增加,漏檢率也大大降低。

圖8 本文算法與其他算法檢測結果對比Fig.8 Results compared with other algorithms
圖9、圖10是本文算法下21號靶板靜爆場破片圖像的識別結果,共提取出242個目標結果,可以看出,本文算法對于破片識別的準確度以及精度都要高。對于小破片也有更好的識別效果,漏檢率較低。人工檢靶和本文算法識別的破片結果如表2所示。

圖9 21號靶板破片著靶前后對比Fig.9 Target plate fragment No.21 before and after target comparison

圖10 21號靶板破片識別分割結果Fig.10 Identification and segmentation results of target plate fragment No.21

表2 各類型破片目標檢測結果對比Table 2 Comparison of fragment target detection results
其中,自然破片是指破片著靶前靶板上預先采集到的目標參數信息,用來防止破片著靶前后一些靶板破損或之前試驗遺留信息的干擾。大破片和小破片的劃分是根據如圖8所示得到的檢測目標的預測框的上邊界、左邊界、下邊界、右邊界的坐標值,計算預測框的長寬,從而計算檢測目標的預測框的面積,設置閾值為1 000,小于1 000記為小破片,大于1 000則記為大破片。
表3統計了18~22號靶板破片檢測結果中未檢測出的破片數量,即為漏檢破片數。另外,一些地面因素的干擾或者圖片邊緣檢測到其他靶板上會導致一定數量的錯檢,這里也對錯檢破片數進行了統計,錯檢破片數和總破片數的比值即為誤檢率,漏檢破片數和總破片數的比值即為漏檢率,分別用百分比表示。

表3 著靶破片檢出結果Table 3 Detection of various types of fragments
將500張測試集進行測試,檢出效果如表4所示。其中mAP表示算法的平均檢測精度,根據檢測過程中預測框和先驗框的比較計算求得的預測值計算得出,用百分比表示,檢測精度越高,表示檢測的結果越準確。漏檢率是未檢測出的結果總數和實際總數的比值,用百分比表示,漏檢率越低,檢測出的結果越多,檢測效果越好。誤檢率則是用來檢驗檢測結果的正確率,是錯檢破片總數和實際破片總數的比值,用百分比表示,誤檢率越低,檢測結果正確率越高,檢測結果越精確。誤檢率和漏檢率共同決定平均檢測精度的大小。

表4 各靶板破片檢出率Table 4 Detection rate of fragments of each target plate
從表2可以看出,改進的算法對自然破片和大破片的識別效果較好,對小破片的識別效果隨著破片數量增加逐漸降低。通過對錯檢破片分析,靜爆試驗在野外試驗過程中,部分破片打擊到地面濺起泥巴以及鋼靶板本身的缺陷問題,都會對破片檢測造成影響。表4中DenseNet+SENet算法和本文的DenseNet+CBAMNet算法在檢測時間、檢測精度和誤檢率上都是比較接近的,甚至前者的誤檢率優于本文算法,但是其漏檢率結果要比本文算法低1.3個百分點,考慮到本次實驗的目的是盡可能多且精確地檢測出小破片目標,所以采用平均精度較高的DenseNet+CBAMNet作為實驗的最優算法。
本文提出基于深度學習目標檢測的方法代替傳統方法自動識別靜爆場破片,獲取破片的數量和類別。由于部分破片目標較小,且受復雜環境影響,不易檢測,提出將 SSD 網絡模型中的骨干網絡修改為DenseNet,并對DenseNet網絡結構進行改進,最大程度地保留小目標的細節特征。引入通道注意力機制和空間注意力機制,獲取通道和特征點的權值,提升小目標的特征信息提取能力。實驗結果表明,該算法的檢測平均精度均值較改進前SSD 算法提升4.03個百分點,誤檢率和漏檢率均得到了很好的提升,分別增加了3.6和6個百分點。后續將繼續優化模型結構,進一步提高計算效率。