魏 鑫,李曉婷,趙世慧,賈 婧
(北方自動控制技術(shù)研究所,太原 030006)
目標毀傷效果評估的定義是:在對既定的目標進行軍事打擊后,對目標進行及時和準確的毀傷估計[1]。目標毀傷效果評估是現(xiàn)代化戰(zhàn)爭的重要內(nèi)容,可以評估打擊任務的完成情況,可以為我軍下一輪打擊的彈藥種類與用彈量的確定提供依據(jù),具有重大的軍事意義[2]。
目前,常用的目標毀傷效果評估模型有:基于炸點的毀傷效果評估模型、基于圖像的毀傷效果評估模型和綜合毀傷效果評估模型。而基于圖像的目標毀傷效果評估模型,以其更直觀、高效的特點成為了目標毀傷效果評估領(lǐng)域接下來研究發(fā)展的重點,具有重大的研究意義[3]。作為當前的熱點研究方向,國內(nèi)外許多學者都對基于圖像的目標毀傷效果評估進行了深入的研究。蘇娟等提出一種使用圖像變化檢測的毀傷效果評估方法[4],考慮目標打擊前與打擊后圖像的幾何特征和紋理特征進行毀傷效果評估,同時使用建筑物的毀傷圖像進行了實驗。楊青青等通過分析建筑物的高分辨率遙感圖像,將貝葉斯網(wǎng)絡與隸屬度函數(shù)巧妙地融合起來,構(gòu)建毀傷效果評估模型[5]。ZHANG X N 等提出一種基于圖像的自動評價算法,將灰度匹配和特征匹配的方法結(jié)合起來進行目標毀傷效果評估[6]。但是目前的指控系統(tǒng)采用的是計算機與人工相結(jié)合的傳統(tǒng)方法進行目標毀傷效果評估,檢測圖像有效變化的方法為紋理差分圖像對比和灰度差分圖像對比,無法區(qū)分目標特征與背景特征,存在由于背景特征變化劇烈導致得出的毀傷效果評估結(jié)果不準確的情況,檢測精度不高,容易產(chǎn)生虛警檢測。因此,亟需解決這些問題。
本文針對以上問題,重點考慮基于圖像的目標毀傷效果評估,結(jié)合CNN 和隨機森林(RF),提出CNN-F 算法。借助卷積神經(jīng)網(wǎng)絡強大的圖像特征提取能力,使用VGG16 進行特征提取,區(qū)分圖像中的背景特征與目標特征。同時由于隨機森林實現(xiàn)簡單,分類效果較好,泛化能力較強,將卷積神經(jīng)網(wǎng)絡中的部分全連接層與softmax 分類器替換為隨機森林,提高評估準確度,減少過擬合的風險。得到的目標毀傷評估結(jié)果相比于目前的指控系統(tǒng)更加準確。
CNN 是一種著名的人工神經(jīng)網(wǎng)絡,通過局部感受野、權(quán)重共享和降采樣3 種策略的結(jié)合,使其具有了提取圖像局部特征的能力,并且降低了網(wǎng)絡模型的復雜度,同時在圖像旋轉(zhuǎn)、平移時也有較好的特征提取效果。因此,被廣泛應用于圖像分類與目標識別等領(lǐng)域[7-8]。
當前在圖像處理領(lǐng)域有多種卷積神經(jīng)網(wǎng)絡算法,包括LeNet、AlexNet、VGG 等[9-11]。相比于其他模型,VGG 網(wǎng)絡結(jié)構(gòu)更加簡潔,同時特征提取效果較好。VGG 有多種子類,包括VGG13、VGG16、VGG19等。本文考慮特征提取的效果與計算成本,使用VGG16 進行圖像特征提取。VGG16 可以分為6 個模塊,輸入的圖像數(shù)據(jù)在經(jīng)過多次卷積與最大池化操作后,通過全連接層進行降維,使用softmax 分類器輸出結(jié)果[12]。其結(jié)構(gòu)圖如圖1 所示。
圖1 VGG16 結(jié)構(gòu)圖Fig.1 VGG16 structure diagram
隨機森林(random forest,RF)是由LEO BREIMAN等人提出集成學習算法,在分類問題上有著廣泛的應用[13]。隨機森林是一種集成分類器,由多棵決策樹共同組成,利用引導聚集算法(Bagging)的思想,巧妙地將隨機性引入到了分類過程之中,有效提高了泛化性能和準確率,這一思想也使隨機森林在許多分類問題中具有較好的表現(xiàn)[14]。隨機森林首先從訓練集D 中使用bootstrap 抽取n 組樣本,每一個樣本的最大特征維度為m。之后從m 維中隨機選取x個特征作為決策樹的內(nèi)部節(jié)點的待選分裂條件,分別計算x 個特征的基尼增益,并且將最大基尼增益作為最佳分裂條件逐層構(gòu)建決策樹。t 節(jié)點的基尼系數(shù)為:
其中,k 為t 中所有數(shù)據(jù)的類別數(shù),p(ci|t)為節(jié)點t 中數(shù)據(jù)類別為ci的比例。最后統(tǒng)計每一棵決策樹的輸出結(jié)果,得出隨機森林的輸出結(jié)果[15-16]。隨機森林原理如圖2 所示。
圖2 隨機森林Fig.2 Random forest
一般情況下,CNN 處理分類問題時,輸出層為softmax 分類器[17]。softmax 分類器是一個計算結(jié)果概率的過程。CNN 對圖像進行分類時,將圖像進行特征提取后傳入softmax 分類器。softmax 分類器可以將特征值映射到[0,1]區(qū)間內(nèi),輸出值為該圖像分屬于各類的概率。其中,最大值所對應類別為該圖像的判定類別[18]。設(shè)當前有數(shù)組Z=[Z1,Z2,Z3,…,Zn],其中為第i 個元素,則Zi的softmax 值為:
雖然softmax 函數(shù)作為分類器使用廣泛,但是當CNN 使用softmax 函數(shù)作為分類器時,需要通過多個全連接層將高維特征進行降維,計算復雜并且參數(shù)過多,結(jié)果容易過擬合。而隨機森林作為一種常用的分類器具有準確度高、泛化性能好的優(yōu)點,同時易于實現(xiàn),結(jié)果不易過擬合,因此,將其替換CNN中的部分全連接層和softmax 分類器,提出CNN-F算法。CNN-F 算法如圖3 所示。
圖3 CNN-F 算法Fig.3 CNN-F algorithm
本文使用VGG16 作為CNN-F 算法的卷積神經(jīng)網(wǎng)絡部分,在保留VGG16 的最后一個模塊中的前兩層全連接層的前提下,使用隨機森林替換最后一個全連接層與softmax 分類器。模塊6 中前兩層全連接層提取出高維特征之后將其輸入到隨機森林,隨機森林通過高維特征進行分類,得出分類結(jié)果。這樣可以使得模型在評估準確度和泛化能力上得到提升,同時減少結(jié)果過擬合的風險。
本文需要驗證使用卷積神經(jīng)網(wǎng)絡區(qū)分目標特征與背景特征的工作在毀傷效果評估中的重要性,同時需要驗證將VGG16 的最后一層全連接層和softmax 分類器替換為隨機森林是否有效,因此,進行3 次實驗:1)使用現(xiàn)有的紋理差分和灰度差分毀傷效果評估方法進行靶標毀傷效果評估;2)使用VGG16 網(wǎng)絡進行靶標毀傷效果評估;3)使用CNN-F 進行靶標毀傷效果評估。本文借助準確率(accuracy)、精確率(precision)、召回率(recall)和F1值來衡量3 次實驗的分類效果。相關(guān)公式如下:
其中,TP、FP、TN、FN 分別代表真陽率、假陽率、真陰率和假陰率。
本文使用陸軍某項目中的靶標圖像數(shù)據(jù)集進行毀傷效果評估,并根據(jù)陸軍某型號項目要求,將目標的物理毀傷度劃分為5 個等級[19],如表1 所示。
表1 毀傷等級描述表Table 1 Description table of damage grades
本文篩選的靶標圖像共1 000 張,其中,屬于零毀傷等級、輕度毀傷等級、中度毀傷等級、重度毀傷等級和摧毀等級的圖片各200 張。將其裁剪壓縮為224*224*3 的大小。裁剪后對圖像進行數(shù)據(jù)增廣,防止由于數(shù)據(jù)集過小導致結(jié)果過擬合。使用的增廣方式為旋轉(zhuǎn)、鏡像與加噪,相關(guān)圖像如圖4~圖6 所示。擴充后的數(shù)據(jù)集中靶標圖像共10 000 張,其中各個毀傷等級圖像各2 000 張。10 000 張靶標圖像按8∶2 構(gòu)建訓練集與測試集,即其中訓練集8 000張,各個毀傷等級圖像各1 600 張;測試集2 000張,各個毀傷等級圖像各400 張。同時對數(shù)據(jù)集標記毀傷等級標簽。
圖4 靶標原始圖像Fig.4 Original target image
圖5 加入噪聲Fig.5 Adding noise
將數(shù)據(jù)整理后開始實驗。本文實驗流程如下:
首先使用現(xiàn)有的紋理差分和灰度差分毀傷效果評估方法進行靶標毀傷效果評估。由于紋理差分與灰度差分不需要訓練,所以使用100 組靶標原始圖像進行實驗,其中每一組包括一張毀傷前圖像和一張毀傷后圖像。100 組圖像中各個毀傷等級各20組。計算每一組兩張圖像之間的紋理差分與灰度差分后,使用極大似然估計進行差分圖像融合,計算目標的有效變化,得出最終的毀傷結(jié)果。
其次使用VGG16 網(wǎng)絡進行靶標毀傷效果評估。使用訓練集對預訓練的VGG16 模型重新訓練,訓練后采用測試集進行測試,并對其結(jié)果進行評估。訓練集8 000 張,各個毀傷等級圖像各1 600張;測試集2 000 張,各個毀傷等級圖像各400 張。VGG16 網(wǎng)絡進行再訓練時,根據(jù)經(jīng)驗將學習率設(shè)置為0.01,批訓練塊大小設(shè)置為10,epoch 設(shè)置為100。
最后使用CNN-F 進行靶標毀傷效果評估。訓練集8 000 張,各個毀傷等級圖像各1 600 張;測試集2 000 張,各個毀傷等級圖像各400 張。根據(jù)經(jīng)驗將隨機森林中決策樹個數(shù)設(shè)置為500 棵,學習率設(shè)置為0.01,批訓練塊大小設(shè)置為10,epoch 設(shè)置為100。
基于CNN-F 的毀傷效果評估流程如圖7 所示。其具體步驟如下:
圖7 基于CNN-F 的毀傷效果評估流程Fig.7 Damage effect evaluation flow based on CNN-F
Step1:構(gòu)建訓練集與測試集。
Step2:將訓練集輸入預訓練的VGG16 網(wǎng)絡進行訓練,得到訓練后的卷積神經(jīng)網(wǎng)絡。
Step3:將訓練好的VGG16 網(wǎng)絡中的最后一個模塊中的最后一個全連接層與softmax 分類器剔除。
Step4:將訓練好的VGG16 網(wǎng)絡中的倒數(shù)第2個全連接層輸出的數(shù)據(jù),作為高維特征輸入隨機森林,對隨機森林進行訓練,得到訓練后的隨機森林。
Step5:將測試集輸入訓練后的卷積神經(jīng)網(wǎng)絡,得到對應的高維特征。
Step6:將測試集的高維特征輸入訓練好的隨機森林,得出對應的毀傷等級分類結(jié)果。
進行3 次實驗后,將實驗結(jié)果進行分析對比,得出相關(guān)結(jié)論。
3 次實驗的結(jié)果如表2 所示。實驗1 使用現(xiàn)有的紋理差分和灰度差分毀傷效果評估方法進行靶標毀傷效果評估,實驗2 使用VGG16 網(wǎng)絡進行靶標毀傷效果評估,實驗3 使用CNN-F 進行靶標毀傷效果評估。
表2 實驗結(jié)果Table 2 Experimental results
通過3 次對比實驗,可以看出實驗2 相比于實驗1 在準確率上提升了約18.05%,在精確率上提升了約18.189%,在召回率上提升了約18.05%,在F1值上提升了約18.317%,說明卷積神經(jīng)網(wǎng)絡在處理圖像時可以有效區(qū)分目標特征與背景特征,同時也說明區(qū)分目標特征與背景特征的工作在毀傷效果評估中是有意義的。相比于實驗2,實驗3 在準確率、精確率、召回率和F1值4 個指標上都有著明顯的提升,分別達到了83.050%、83.585%、83.050%和82.945%,說明使用隨機森林代替VGG16 的最后一層全連接層和softmax 分類器有著較好的效果。
本文針對目前指揮控制系統(tǒng)中所采用的傳統(tǒng)方法無法區(qū)分目標特征與背景特征導致評估結(jié)果不準確的問題,使用卷積神經(jīng)網(wǎng)絡進行圖像的特征提取,同時將卷積神經(jīng)網(wǎng)絡與隨機森林相結(jié)合,得到了CNN-F 算法。通過實驗比較,CNN-F 算法在準確率、精確率、召回率和F1值4 個指標上都達到了較高的水平,得出的毀傷評估結(jié)果更加科學準確,可以為指揮員的下一步?jīng)Q策提供參考。后續(xù)相關(guān)工作可以聚焦于如何減少算法的計算資源消耗,使得算法運行更加高效。