薛 珊,陳宇超,呂瓊瑩,曹國華
(1. 長春理工大學(xué)機(jī)電工程學(xué)院,吉林 長春 130000;2. 長春理工大學(xué)重慶研究院,重慶 400000)
近年來隨著科學(xué)技術(shù)的不斷進(jìn)步,無人機(jī)飛行器得到迅速發(fā)展。鑒于無人機(jī)具有成本低、機(jī)動(dòng)性強(qiáng)、便于操作等優(yōu)點(diǎn)[1],如今已被廣泛應(yīng)用于軍事、農(nóng)林業(yè)、化工業(yè)、城市規(guī)劃等諸多領(lǐng)域,同時(shí)也成為廣大愛好者旅行航拍的首選裝備。但由于部分愛好者的非法操作所導(dǎo)致的無人機(jī)“黑飛”事件屢見不鮮。例如2016年5月28日成都雙流機(jī)場東跑道飛行空域因無人機(jī)“黑飛”阻礙航班正常起降,導(dǎo)致機(jī)場東跑道停航關(guān)閉1小時(shí)20分鐘,55架航班無法正常起降,大量旅客滯留機(jī)場。
無人機(jī)“黑飛”給公民人身安全與社會(huì)財(cái)產(chǎn)安全造成了一定問題,反無人機(jī)系統(tǒng)隨之出現(xiàn)。能夠準(zhǔn)確識(shí)別無人機(jī)并對(duì)其進(jìn)行攔截打擊成為解決無人機(jī)“黑飛”的關(guān)鍵技術(shù),也是反無人機(jī)系統(tǒng)的關(guān)鍵之一。目前常見的探測識(shí)別技術(shù)有雷達(dá)探測、光電探測、音頻探測、無線探測等[2]。章鵬飛[3]等人提出了一種多角度雷達(dá)觀測微動(dòng)特征融合的無人機(jī)識(shí)別方法,但是雷達(dá)觀測所需要的設(shè)備造價(jià)昂貴,且雷達(dá)與光電設(shè)備聯(lián)動(dòng)配合的同步性方面存在一定困難[4];丘愷彬[5]等人提出了一種基于音頻特征提取的無人機(jī)識(shí)別方法,但是由于聲音識(shí)別對(duì)距離的要求較為苛刻,需要在較近的范圍內(nèi)才能采集到無人機(jī)的音頻數(shù)據(jù)。綜合考慮各種識(shí)別方法的優(yōu)缺點(diǎn),目前利用目標(biāo)的光電圖像特征對(duì)其識(shí)別的方法較為普遍。圖像識(shí)別具有成本低、視場靈活性較高的特點(diǎn),可以在數(shù)百米的范圍內(nèi)對(duì)“黑飛”無人機(jī)實(shí)現(xiàn)識(shí)別操作。
為了提高無人機(jī)圖像識(shí)別的準(zhǔn)確率,本文提出了一種雙支路并行卷積神經(jīng)網(wǎng)絡(luò)(Double Branches Parallel Convolutional Neural Network, DBPCNN),運(yùn)用此算法識(shí)別無人機(jī),提高識(shí)別準(zhǔn)確率。
本文選取兩類四旋翼無人機(jī)作為研究對(duì)象,通過光學(xué)鏡頭與轉(zhuǎn)臺(tái)集成的圖像采集設(shè)備獲取無人機(jī)的原始圖片,該設(shè)備如圖1所示。
圖1 圖像采集設(shè)備
為了使圖片能夠輸入卷積神經(jīng)網(wǎng)絡(luò)中,還需要對(duì)拍攝的原始圖片進(jìn)行圖像預(yù)處理操作。主要流程如圖2所示:首先通過圖像灰度化將彩色圖片轉(zhuǎn)化為灰度圖片以提高處理速度;其次通過邊緣檢測[6]、濾波去噪[7,8]、圖像二值化以及圖像形態(tài)學(xué)方法[9]增強(qiáng)無人機(jī)的邊緣特征;接下來根據(jù)無人機(jī)的邊緣特征尋找無人機(jī)輪廓的最小外接矩形;最后根據(jù)最小外接矩形裁剪圖片并填充黑色區(qū)域補(bǔ)齊為長寬像素相等的圖片,將補(bǔ)齊圖片的尺寸統(tǒng)一修改為100×100像素。
圖2 圖像預(yù)處理流程圖
圖像預(yù)處理的分步結(jié)果示意圖如圖3所示,共計(jì)352張無人機(jī)原始圖片通過該操作轉(zhuǎn)化為可以輸入卷積神經(jīng)網(wǎng)絡(luò)的像素尺寸規(guī)則的圖片。
圖3 圖像預(yù)處理分步結(jié)果示意圖
為避免由于數(shù)據(jù)量較小產(chǎn)生的過擬合問題[10]還需要對(duì)預(yù)處理后的圖片進(jìn)行數(shù)據(jù)擴(kuò)增。如圖4所示,將尺寸歸一化的圖片分別沿順時(shí)針方向旋轉(zhuǎn)90°、180°和270°。將數(shù)據(jù)擴(kuò)增后得到的共計(jì)1408張圖片作為本文設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)集。實(shí)驗(yàn)中該數(shù)據(jù)集將隨機(jī)劃分為卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練集和測試集,劃分比例為7: 3。
圖4 數(shù)據(jù)擴(kuò)增結(jié)果示意圖
由于本文建立的無人機(jī)圖像數(shù)據(jù)集所包含的圖片樣本較少,因此本文網(wǎng)絡(luò)設(shè)計(jì)的主要思路在于盡可能降低網(wǎng)絡(luò)參數(shù)從而避免出現(xiàn)過擬合[11]問題。
本文設(shè)計(jì)的改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)在Inception V1模塊的啟發(fā)下對(duì)傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn),該模塊主要應(yīng)用于2014年的GoogLeNet網(wǎng)絡(luò)模型[12],其結(jié)構(gòu)如圖5所示。該模塊結(jié)構(gòu)由于增加了網(wǎng)絡(luò)寬度,從而增加了網(wǎng)絡(luò)對(duì)多尺度的適應(yīng)性[13]。
圖5 Inception V1模塊
而2015年提出的Inception V2模塊與Inception V1模塊相比,V2模塊參考了VGGNet的思想。VGGNet[14]將網(wǎng)絡(luò)中的卷積核全部改用尺寸為3×3、步長為1的小卷積核,同時(shí)使用卷積層堆疊的方式對(duì)大卷積核做等效替換。該方法可以在保證要求的感受野的同時(shí)降低網(wǎng)絡(luò)的計(jì)算量[15],例如:假設(shè)輸入和輸出均為C個(gè)通道,在不考慮偏置數(shù)量的情況下,由三個(gè)3×3卷積核堆疊的網(wǎng)絡(luò)參數(shù)的計(jì)算公式如式(1)所示
3×(3×3×C×C)=27C2
(1)
而一個(gè)7×7卷積核的網(wǎng)絡(luò)參數(shù)的計(jì)算公式如式(2)所示[16]
7×7×C×C=49C2
(2)
因此本文設(shè)計(jì)的DBPCNN網(wǎng)絡(luò)基于Inception模塊的思想對(duì)傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行改進(jìn)。網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示:選用兩條具有不同大小卷積核的并行支路對(duì)同一輸入圖片進(jìn)行處理,其中支路1使用3×3卷積核(Conv1_1, Conv1_3),支路2使用1×1卷積核(Conv2_1, Conv2_3)。同時(shí)在兩條支路中引入1×1的卷積核(Conv1_2, Conv1_4, Conv2_2, Conv2_4)用作特征圖升維,降低網(wǎng)絡(luò)的參數(shù)數(shù)量。激活函數(shù)選擇ReLU函數(shù),池化方式選擇2×2最大池化(Pool1_1, Pool1_2, Pool2_1, Pool2_2)。隨后將兩條支路的輸出沿深度方向合并,合并后的結(jié)果經(jīng)過全連接層FC1、FC2后通過Softmax分類器完成分類操作。DBPCNN網(wǎng)絡(luò)參數(shù)如表1所示。
表1 DBPCNN網(wǎng)絡(luò)參數(shù)設(shè)置以及參數(shù)數(shù)量
圖6 DBPCNN網(wǎng)絡(luò)結(jié)構(gòu)
DBPCNN網(wǎng)絡(luò)選用兩條并行支路結(jié)構(gòu):通過增加網(wǎng)絡(luò)深度或?qū)挾仁悄壳霸O(shè)計(jì)卷積神經(jīng)網(wǎng)絡(luò)并使其性能更好的主流觀點(diǎn)[17],但如果選用過多的支路結(jié)構(gòu),網(wǎng)絡(luò)參數(shù)將大大增加。以參考表1內(nèi)容對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行計(jì)算為例:若設(shè)置的支路數(shù)為n,每條支路輸出的特征圖均為25×25×32,全連接層FC1仍設(shè)為1024個(gè)神經(jīng)元。在不考慮每條支路參數(shù)數(shù)量的情況下,僅通道融合后進(jìn)入全連接層FC1的網(wǎng)絡(luò)參數(shù)與兩條支路相比增加數(shù)量的計(jì)算公式如式(3)所示:
25×25×32×(n-2)×1024=20480000×(n-2)
(3)
分析式(3)可知,網(wǎng)絡(luò)每增加一條支路,僅全連接層部分就會(huì)增加20480000個(gè)網(wǎng)絡(luò)參數(shù)。為避免由于網(wǎng)絡(luò)參數(shù)過多產(chǎn)生的過擬合問題,因此本文設(shè)計(jì)的DBPCNN選用雙支路結(jié)構(gòu)。
本文實(shí)驗(yàn)使用的計(jì)算機(jī)環(huán)境為:Windows 10系統(tǒng),Intel(R) Core(TM) i9-10900F CPU @ 2.80GHz 2.81GHz處理器,32G RAM;所用程序基于開源深度學(xué)習(xí)框架Tensorflow,使用Python 3.7軟件編寫,通過Sublime軟件運(yùn)行。
為驗(yàn)證本文設(shè)計(jì)的網(wǎng)絡(luò)可行性,在CIFAR-10數(shù)據(jù)集上對(duì)網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn)。CIFAR-10數(shù)據(jù)集包含10類彩色圖像,圖像大小為32×32像素,數(shù)據(jù)集由50000個(gè)訓(xùn)練樣本和10000個(gè)測試樣本組成[18]。
為了比較DBPCNN的識(shí)別效果,本文設(shè)計(jì)了兩個(gè)對(duì)比的卷積神經(jīng)網(wǎng)絡(luò)Conv_Layer_2和Conv_Layer_3。兩個(gè)對(duì)比網(wǎng)絡(luò)結(jié)構(gòu)如表2所示。
表2 兩個(gè)對(duì)比網(wǎng)絡(luò)結(jié)構(gòu)
Conv_Layer_2網(wǎng)絡(luò)參照傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)LeNet-5[19]設(shè)計(jì),其結(jié)構(gòu)如下:輸入→卷積層Conv1→池化層Pool1→卷積層Conv2→池化層Pool2→全連接層FC1→全連接層FC2→ Softmax分類器輸出。
Conv_Layer_3網(wǎng)絡(luò)在Conv_Layer_2的基礎(chǔ)上增加一個(gè)卷積層,提取更深一層特征,其結(jié)構(gòu)如下:輸入→卷積層Conv1→池化層Pool1→卷積層Conv2→卷積層Conv3→池化層Pool3→全連接層FC1→全連接層FC2→ Softmax分類器輸出。
本文選擇CIFAR-10數(shù)據(jù)集中的兩個(gè)類別共計(jì)12000張圖片對(duì)DBPCNN、Conv_Layer_2、Conv_Layer_3網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如圖7所示,其中左側(cè)柱表示訓(xùn)練集,右側(cè)柱表示測試集。經(jīng)過500次訓(xùn)練,DBPCNN、Conv_Layer_2、Conv_Layer_3識(shí)別CIFAR-10數(shù)據(jù)集的測試集準(zhǔn)確率分別為84.8%、84.5%和83.6%。實(shí)驗(yàn)結(jié)果證明了所設(shè)計(jì)網(wǎng)絡(luò)的可行性。
圖7 DBPCNN與Conv_Layer_2、Conv_Layer_3識(shí)別CIFAR-10數(shù)據(jù)集結(jié)果
在無人機(jī)數(shù)據(jù)集上對(duì)DBPCNN進(jìn)行實(shí)驗(yàn),運(yùn)行網(wǎng)絡(luò)程序,繪制DBPCNN網(wǎng)絡(luò)的準(zhǔn)確率曲線與損失函數(shù)曲線如圖8所示。
圖8 DBPCNN網(wǎng)絡(luò)的準(zhǔn)確率曲線(上)和損失函數(shù)曲線(下)
分析圖8可知,當(dāng)實(shí)驗(yàn)訓(xùn)練次數(shù)超過500次時(shí),DBPCNN網(wǎng)絡(luò)在訓(xùn)練集和測試集上的準(zhǔn)確率曲線和損失函數(shù)曲線呈平穩(wěn)趨勢。為減少網(wǎng)絡(luò)的訓(xùn)練時(shí)間,本文實(shí)驗(yàn)選取前500輪實(shí)驗(yàn)數(shù)據(jù)作為DBPCNN網(wǎng)絡(luò)的識(shí)別結(jié)果。
對(duì)設(shè)計(jì)好的兩個(gè)對(duì)比卷積神經(jīng)網(wǎng)絡(luò)使用自行建立的無人機(jī)圖像數(shù)據(jù)集同樣進(jìn)行500次訓(xùn)練。實(shí)驗(yàn)中選取測試集準(zhǔn)確率作為評(píng)價(jià)卷積神經(jīng)網(wǎng)絡(luò)的性能指標(biāo),提取兩個(gè)對(duì)比網(wǎng)絡(luò)的測試集準(zhǔn)確率曲線與DBPCNN網(wǎng)絡(luò)的測試集準(zhǔn)確率曲線進(jìn)行比較,結(jié)果如圖9所示。其中,當(dāng)訓(xùn)練次數(shù)達(dá)到500時(shí),測試集準(zhǔn)確率曲線從上至下分別為DBPCNN、Conv_Layer_3、Conv_Layer_2,分別用藍(lán)、綠、紅三種顏色表示。
圖9 DBPCNN與Conv_Layer_2、Conv_Layer_3的測試集準(zhǔn)確率對(duì)比曲線
為便于觀察,實(shí)驗(yàn)中每訓(xùn)練100次記錄一次三者的測試集準(zhǔn)確率,對(duì)比結(jié)果如表3所示。分析表3可知,經(jīng)過500次訓(xùn)練,本文設(shè)計(jì)的DBPCNN網(wǎng)絡(luò)對(duì)自建無人機(jī)數(shù)據(jù)集識(shí)別的測試集準(zhǔn)確率為96.7%,與之對(duì)比的兩個(gè)傳統(tǒng)網(wǎng)絡(luò)的準(zhǔn)確率分別為90.5%和94.3%。結(jié)果表明了DBPCNN網(wǎng)絡(luò)能夠完成對(duì)無人機(jī)圖像的識(shí)別任務(wù)并具有較高的準(zhǔn)確率。
表3 DBPCNN、Conv_Layer_2和Conv_Layer_3網(wǎng)絡(luò)測試集準(zhǔn)確率
1) 為了提高反無人機(jī)系統(tǒng)中識(shí)別無人機(jī)圖像的準(zhǔn)確率,提出了一種改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)模型。使用自制圖像采集設(shè)備獲取所需識(shí)別的無人機(jī)原始圖片,對(duì)無人機(jī)原始圖片進(jìn)行預(yù)處理,通過數(shù)據(jù)擴(kuò)增操作避免網(wǎng)絡(luò)過擬合,自行構(gòu)建無人機(jī)圖像數(shù)據(jù)集。
2) 設(shè)計(jì)一個(gè)雙支路并行卷積神經(jīng)網(wǎng)絡(luò)DBPCNN,通過實(shí)驗(yàn)驗(yàn)證DBPCNN對(duì)無人機(jī)圖像數(shù)據(jù)集的識(shí)別性能,實(shí)驗(yàn)結(jié)果表明:DBPCNN網(wǎng)絡(luò)對(duì)標(biāo)準(zhǔn)數(shù)據(jù)CIFAR-10和自建無人機(jī)樣本數(shù)據(jù)集的準(zhǔn)確率均高于與之對(duì)比的傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò),證明了用DBPCNN識(shí)別無人機(jī)圖像的可行性。