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