范加利, 田少兵, 黃 葵, 朱興動(dòng)
(1. 海軍航空大學(xué)(青島校區(qū))艦面航空保障與場(chǎng)站管理系, 山東 青島 266041;2. 中國人民解放軍91851部隊(duì), 遼寧 葫蘆島 125000; 3. 海軍航空大學(xué)岸防兵學(xué)院, 山東 煙臺(tái) 264001)
航母是國之利器,艦載機(jī)在艦面安全、高效地開展保障作業(yè)是航母作戰(zhàn)效能發(fā)揮的基礎(chǔ)。航母甲板調(diào)運(yùn)作業(yè)中艦載機(jī)、艦載直升機(jī)、牽引車、保障人員等構(gòu)成了航母艦面復(fù)雜的調(diào)運(yùn)環(huán)境。對(duì)航母艦面目標(biāo)進(jìn)行檢測(cè),是采用視覺檢測(cè)方式實(shí)現(xiàn)艦面目標(biāo)智能監(jiān)控和態(tài)勢(shì)感知的基礎(chǔ),對(duì)提高航母艦面調(diào)運(yùn)的安全性有重要意義。
圖像目標(biāo)檢測(cè)算法發(fā)展至今,主流的框架有兩種:兩階段目標(biāo)檢測(cè)算法和單階段目標(biāo)檢測(cè)算法。前者由于首先生成了目標(biāo)框區(qū)域建議,算法共進(jìn)行了兩次分類和回歸,目標(biāo)檢測(cè)準(zhǔn)確率較高,但是算法運(yùn)行速率不高,代表算法有區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(region convolutional neural networks,R-CNN)、Fast R-CNN、Faster R-CNN。后者由于直接在特征圖上進(jìn)行目標(biāo)分類和回歸,降低了算法的運(yùn)算規(guī)模,因此運(yùn)行速率高,但檢測(cè)準(zhǔn)確率不如前者,代表算法有YOLO系列、SSD(single shot multibox detector)算法。
上述算法在PASCAL VOC、MS COCO等公共數(shù)據(jù)集上取得了較高的檢測(cè)準(zhǔn)確率,但針對(duì)本文多尺度艦面目標(biāo)檢測(cè)需求,直接使用上述算法得到的檢測(cè)結(jié)果并不理想。針對(duì)多尺度目標(biāo)檢測(cè)尤其是小目標(biāo)檢測(cè)問題,廣大學(xué)者進(jìn)行了廣泛的研究。文獻(xiàn)[11]針對(duì)算法對(duì)于小目標(biāo)檢測(cè)能力差的問題,提出了多尺度特征提取網(wǎng)絡(luò),對(duì)不同尺度的特征層進(jìn)行融合,實(shí)驗(yàn)表明改進(jìn)后算法相比于原算法檢測(cè)準(zhǔn)確有了一定程度的提高。文獻(xiàn)[12]針對(duì)坦克裝甲目標(biāo)檢測(cè)任務(wù),提出了一種分層的區(qū)域建議網(wǎng)絡(luò),在不同尺度的特征層上生成區(qū)域建議,并結(jié)合困難負(fù)樣本挖掘策略,在構(gòu)建的坦克目標(biāo)檢測(cè)數(shù)據(jù)集上取得了優(yōu)異的檢測(cè)效果。文獻(xiàn)[13]針對(duì)傳統(tǒng)自動(dòng)化方法檢測(cè)發(fā)動(dòng)機(jī)零件表面缺陷中準(zhǔn)確率低下的問題,提出一種基于Faster R-CNN的零件表面缺陷檢測(cè)方法,通過聚類分析確定了錨點(diǎn)框生成方案,并引入多級(jí)感興趣區(qū)域池化層結(jié)構(gòu),實(shí)現(xiàn)了對(duì)零件表面缺陷的高效準(zhǔn)確檢測(cè)。國內(nèi)外學(xué)者就多種不同目標(biāo)的檢測(cè)問題,在CNN算法的基礎(chǔ)上進(jìn)行了網(wǎng)絡(luò)結(jié)構(gòu)、訓(xùn)練方法、損失函數(shù)設(shè)計(jì)等方面的研究,取得了大量成果。
本文針對(duì)航母艦面艦載機(jī)、艦載直升機(jī)、牽引車、人員等各目標(biāo)尺度差異大、檢測(cè)準(zhǔn)確率不高的問題,提出了一種改進(jìn)Faster R-CNN的艦面多尺度目標(biāo)檢測(cè)算法,在自建的艦面目標(biāo)數(shù)據(jù)集上驗(yàn)證了算法的有效性和優(yōu)越性。
Faster R-CNN是典型的端到端目標(biāo)檢測(cè)算法,網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示,由Vgg-16特征提取網(wǎng)絡(luò)充分提取輸入到網(wǎng)絡(luò)的圖片特征,生成特征圖,并將特征圖輸入到區(qū)域建議網(wǎng)絡(luò)(region proposal network,RPN)分支和分類回歸分支網(wǎng)絡(luò)用于特征共享。
圖1 Fasetr R-CNN網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Faster R-CNN network structure
RPN的作用是生成一系列區(qū)域建議框,并初步對(duì)建議框內(nèi)是否含有目標(biāo)即對(duì)目標(biāo)位置進(jìn)行回歸。建議框在原始圖像上的映射被稱為錨框,RPN結(jié)構(gòu)如圖2所示。
圖2 RPN結(jié)構(gòu)Fig.2 RPN structure
通過設(shè)置不同比例尺度和面積的錨框,得到(原算法取值為9)個(gè)不同的錨框,將每個(gè)錨框映射為512維的低維特征向量,分別輸入到分類層和回歸層中,以端到端的方式進(jìn)行訓(xùn)練。分類層負(fù)責(zé)預(yù)測(cè)錨框內(nèi)是否含有目標(biāo),得到2個(gè)置信得分,回歸層負(fù)責(zé)回歸邊界框的位置,得到4個(gè)坐標(biāo)位置參數(shù),最后綜合分類層和回歸層輸出的結(jié)果,得到目標(biāo)區(qū)域建議框,再輸入到后面的檢測(cè)網(wǎng)絡(luò)中進(jìn)行目標(biāo)檢測(cè)。
在端到端的網(wǎng)絡(luò)訓(xùn)練過程中,單張圖片的損失函數(shù)可定義為
(1)
分類損失為對(duì)數(shù)函數(shù),定義為
(2)
對(duì)于目標(biāo)候選框回歸損失,定義為
(3)
其中smooth1()計(jì)算公式為
(4)
對(duì)于目標(biāo)邊界框回歸,參數(shù)一般用一個(gè)4維向量表示,坐標(biāo)參數(shù)回歸如下:
(5)
式中:(,)表示預(yù)測(cè)的目標(biāo)邊界框的中心坐標(biāo);和分別為其寬和高;(,)表示候選目標(biāo)建議框的中心坐標(biāo);和分別為其寬和高;(,)表示真實(shí)目標(biāo)區(qū)域邊界框的坐標(biāo);和分別為其寬和高。
針對(duì)艦面復(fù)雜的多尺度目標(biāo)檢測(cè)環(huán)境,尤其是對(duì)牽引車、保障人員等小目標(biāo)檢測(cè)準(zhǔn)確率不高的問題,提出了基于多尺度特征提取的區(qū)域建議網(wǎng)絡(luò)和基于聚類的錨框生成方案,旨在提高算法對(duì)多尺度目標(biāo)的檢測(cè)性能和對(duì)小目標(biāo)的檢測(cè)效果。
Faster R-CNN采用一種全連接層網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)目標(biāo)的檢測(cè),RPN和目標(biāo)檢測(cè)子網(wǎng)絡(luò)共享特征提取網(wǎng)絡(luò)的特征圖,并在最后一層的特征圖上生成錨框,實(shí)現(xiàn)對(duì)目標(biāo)的選取與分類。特征提取網(wǎng)絡(luò)Vgg-16由于進(jìn)行了4次池化,對(duì)于一張輸入網(wǎng)絡(luò)的圖片,經(jīng)過網(wǎng)絡(luò)的前向映射之后,其大小會(huì)縮小16倍,因此導(dǎo)致該特征圖上分辨率較小,小目標(biāo)的細(xì)節(jié)信息大量缺失,針對(duì)以上問題,提出了一種多尺度特征的RPN,如圖3所示。
圖3 多尺度特征層的RPNFig.3 RPN of multi-scale feature layer
通常圖像的淺層特征具有豐富的細(xì)節(jié)圖像信息,但是語義信息較弱;圖像深層特征圖圖像細(xì)節(jié)信息較少,但語義信息較強(qiáng)。綜合考慮圖像特征的細(xì)節(jié)信息和語義信息,分別在Vgg-16網(wǎng)絡(luò)卷積層的conv3-3、conv4-3、conv5-3上添加不同大小的滑動(dòng)窗口。由于conv3-3卷積層分辨率較高,感受野較小,所含圖像目標(biāo)細(xì)節(jié)信息較多,主要用于對(duì)圖像中的小目標(biāo)進(jìn)行檢測(cè),因此設(shè)置7×7大小的滑動(dòng)窗口。對(duì)于conv4-3卷積層,分辨率相比conv3-3縮小了1倍,因此采用5×5的滑動(dòng)窗口,適合于檢測(cè)中尺度目標(biāo)。對(duì)于conv5-3卷積層,感受野大,分辨率最小且圖像深層特征最集中,適合于檢測(cè)大目標(biāo),因此選用3×3的滑動(dòng)窗口,3個(gè)滑動(dòng)窗口的步長(zhǎng)都設(shè)置為1。將3個(gè)滑動(dòng)窗口所選擇的區(qū)域特征信息均映射為512維的特征向量輸入到兩個(gè)全連接層:分類層和回歸層,前者負(fù)責(zé)判斷所選擇的窗口中是否含有目標(biāo),后者用于初步回歸目標(biāo)位置坐標(biāo)。實(shí)驗(yàn)表明,所提的多尺度特征層RPN能夠有效提高算法對(duì)艦面多尺度目標(biāo)的檢測(cè)性能以及對(duì)小目標(biāo)的檢測(cè)效果,但多尺度特征提取網(wǎng)絡(luò)增加了網(wǎng)絡(luò)的運(yùn)算規(guī)模,一定程度上降低了算法的檢測(cè)速率。
由于Faster R-CNN中的錨框方案是針對(duì)PASCAL VOC 2007數(shù)據(jù)集所確立的,與本文艦面目標(biāo)數(shù)據(jù)集的尺度不相適應(yīng),RPN在生成建議框時(shí)需要大量的時(shí)間,影響網(wǎng)絡(luò)的訓(xùn)練效率以及檢測(cè)精度。針對(duì)這些問題,提出用K-means聚類算法來確定本文錨框生成方案,主要對(duì)艦面目標(biāo)數(shù)據(jù)集標(biāo)注的寬和高進(jìn)行聚類分析,并將聚類結(jié)果作為本文錨框的生成方案,從而加快網(wǎng)絡(luò)收斂時(shí)間,生成更優(yōu)的目標(biāo)候選區(qū)域,以提高算法的檢測(cè)精度。
原K-means聚類算法通常將歐式距離作為評(píng)價(jià)相似性的準(zhǔn)則函數(shù),本文需要對(duì)標(biāo)注目標(biāo)框的寬和高進(jìn)行聚類,若采用歐式距離作為評(píng)價(jià)指標(biāo),則會(huì)造成大目標(biāo)框比小目標(biāo)框的誤差更大。因此,用聚類中心對(duì)應(yīng)的框與周圍各目標(biāo)框的面積的交并比值來衡量?jī)烧叩牟町?則聚類目標(biāo)函數(shù)定義如下:
(6)
式中:為聚類中心個(gè)數(shù);為數(shù)據(jù)集大??;box為數(shù)據(jù)集中每個(gè)艦載機(jī)的尺寸;center為預(yù)設(shè)的聚類中心;IOU為兩者面積交并比。
原Faster R-CNN中的錨框數(shù)目為9,因此也將K-means聚類中心數(shù)設(shè)置為9,本文聚類步驟如下所示。
隨機(jī)在本文的艦面目標(biāo)數(shù)據(jù)集的寬、高標(biāo)簽中選取9個(gè)點(diǎn)作為初始的聚類中心。
計(jì)算每個(gè)數(shù)據(jù)與9個(gè)聚類中心數(shù)據(jù)的IOU值,并將該數(shù)據(jù)劃分到與其IOU值最大的類中。
重新計(jì)算聚類中心。
若數(shù)據(jù)集的聚類分布不再發(fā)生變化,則輸出聚類結(jié)果;否則,返回步驟2。
對(duì)本文數(shù)據(jù)集標(biāo)注的寬和高進(jìn)行聚類分析后得到聚類結(jié)果,首先對(duì)數(shù)據(jù)集中的寬和高進(jìn)行歸一化,然后再進(jìn)行聚類分析,得到聚類結(jié)果之后,將9個(gè)聚類中心結(jié)果再乘以網(wǎng)絡(luò)輸入圖片尺度,作為算法初始的寬和高,歸一化結(jié)果如圖4所示,聚類結(jié)果如圖5所示。
圖4 數(shù)據(jù)集歸一化Fig.4 Dataset normalization
圖5 聚類結(jié)果(Mean IOU=0.770 4)Fig.5 Clustering results (Mean IOU=0.770 4)
在實(shí)驗(yàn)室條件下采集了3 500張包含5種航母艦面目標(biāo)的圖像數(shù)據(jù),并按照PASCAL VOC 2007的格式標(biāo)注建立目標(biāo)檢測(cè)數(shù)據(jù)集,表1為詳細(xì)的艦面目標(biāo)檢測(cè)數(shù)據(jù)集。
表1 艦面目標(biāo)檢測(cè)數(shù)據(jù)集
在3 500張圖像數(shù)據(jù)中,參與網(wǎng)絡(luò)訓(xùn)練的圖片有3 000張,參與網(wǎng)絡(luò)模型測(cè)試的圖片有500張。
為了增強(qiáng)網(wǎng)絡(luò)所訓(xùn)練模型的泛化能力,對(duì)艦面目標(biāo)檢測(cè)數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)。對(duì)數(shù)據(jù)集中的圖像進(jìn)行隨機(jī)水平、垂直翻轉(zhuǎn),隨機(jī)旋轉(zhuǎn)的角度是[-45°,+45°],隨機(jī)縮放的比例范圍是0.7~1.3,從而增強(qiáng)數(shù)據(jù)集的多樣性。
(1) 實(shí)驗(yàn)環(huán)境配置
在Ubuntu16.04系統(tǒng)上搭建實(shí)驗(yàn)環(huán)境,CPU為Inter(R) Xeon Silver 4110,GPU為NVIDIA GeForce RTX 2080Ti,深度學(xué)習(xí)框架為Tensorflow。
實(shí)驗(yàn)中設(shè)置初始學(xué)習(xí)率為0.000 1,并隨著迭代次數(shù)的增加線性遞減。權(quán)重衰減系數(shù)設(shè)置為0.000 5,批量大小batchsize設(shè)置為1,訓(xùn)練網(wǎng)絡(luò)共迭代30 000批次。
(2) 算法性能評(píng)價(jià)指標(biāo)
深度學(xué)習(xí)目標(biāo)檢測(cè)類算法通常采用準(zhǔn)確率(Precision)和召回率(Recall)來評(píng)價(jià)模型的性能,公式定義如下:
(7)
(8)
式中:Precision反映的是被目標(biāo)檢測(cè)模型判定為正確樣本中真正正樣本的比重;Recall反映的是被目標(biāo)檢測(cè)模型判定為正確樣本中的正樣本占總的正樣本的比重;TP表示檢測(cè)正確的艦載機(jī)目標(biāo)(實(shí)際為正樣本檢測(cè)也為正例);FP表示將負(fù)例檢測(cè)為艦載機(jī)目標(biāo)的數(shù)量(實(shí)際為負(fù)例但檢測(cè)為正例);FN表示漏檢的艦載機(jī)目標(biāo)數(shù)量(實(shí)際為正樣本但檢測(cè)為負(fù)例)。
對(duì)于特定的某一目標(biāo)類別,可以通過平均準(zhǔn)確率(ave-rage precision,AP)來表示算法對(duì)其檢測(cè)效果,定義為
(9)
式中:為準(zhǔn)確率;為召回率。對(duì)于個(gè)類別的平均準(zhǔn)確率,用平均準(zhǔn)確率的均值來表示,定義為
(10)
分別對(duì)原Faster R-CNN算法和改進(jìn)后的算法在測(cè)試集上進(jìn)行測(cè)試,以對(duì)比改進(jìn)前后算法的性能,實(shí)驗(yàn)結(jié)果如表2所示。
表2 Faster R-CNN算法改進(jìn)前后性能對(duì)比
由表2實(shí)驗(yàn)結(jié)果可知,改進(jìn)后的算法在檢測(cè)不同目標(biāo)尺度性能上均有所提升,尤其對(duì)于人員、牽引車等小目標(biāo),平均準(zhǔn)確率分別提升了7.1%和6.5%,總體平均準(zhǔn)確率的均值mAP也提升了4.49%,說明所提算法總體性能的提升尤其是對(duì)小目標(biāo)的檢測(cè)性能起到了良好的效果。但是,由于多尺度特征的區(qū)域建議生成時(shí)會(huì)增加網(wǎng)絡(luò)計(jì)算量,因此改進(jìn)后的算法檢測(cè)速率有所下降,目標(biāo)檢測(cè)效果圖如圖6所示。
圖6 艦面目標(biāo)檢測(cè)效果圖Fig.6 Effect drawing of aircraft carrier surface object detection
由圖6的檢測(cè)結(jié)果可知,對(duì)于人員、牽引車等小目標(biāo),由于改進(jìn)后的算法在多尺度特征上進(jìn)行了建議區(qū)域生成,增加了大尺度特征圖檢測(cè)小目標(biāo)的環(huán)節(jié),且錨框方案經(jīng)過聚類后適應(yīng)了本文數(shù)據(jù)集,因此算法準(zhǔn)確地檢測(cè)出了目標(biāo)的位置,明顯提升了對(duì)小目標(biāo)的檢測(cè)性能。
為探究本文多尺度特征RPN和錨框聚類分析兩個(gè)改進(jìn)方案對(duì)算法性能提升的影響,設(shè)計(jì)如表3所示的實(shí)驗(yàn)方案并對(duì)各自方案的性能進(jìn)行測(cè)試,實(shí)驗(yàn)結(jié)果如表3所示。方案a為原Faster R-CNN算法,方案b只有多尺度特征的RPN,方案c只有錨框聚類分析,方案d同時(shí)施加上述兩個(gè)改進(jìn)方案。由各目標(biāo)類別平均準(zhǔn)確率來看,兩個(gè)改進(jìn)方案對(duì)于算法性能提升的效果相當(dāng),多尺度特征的RPN和錨框聚類分析對(duì)于算法總體性能分別提升了3.25%和3.35%,表明兩個(gè)改進(jìn)方案對(duì)算法性能的提升均產(chǎn)生了良好的效果,同時(shí)施加兩個(gè)改進(jìn)方案時(shí)算法的檢測(cè)性能最高。
表3 消融實(shí)驗(yàn)
實(shí)驗(yàn)對(duì)比本文算法、YOLO v3目標(biāo)檢測(cè)算法、SSD目標(biāo)檢測(cè)算法的性能,從平均準(zhǔn)確率均值和檢測(cè)速率兩個(gè)方面對(duì)算法的性能進(jìn)行評(píng)估,實(shí)驗(yàn)結(jié)果如表4所示。
表4 不同算法性能對(duì)比
由實(shí)驗(yàn)結(jié)果可知,本文算法的準(zhǔn)確率相比于單階段目標(biāo)檢測(cè)算法YOLO v3和SSD分別提高9.82%和11.56%,由于本文算法為兩階段算法,網(wǎng)絡(luò)進(jìn)行了兩次分類與回歸,算法檢測(cè)速率明顯低于單階段目標(biāo)檢測(cè)算法,但能夠滿足艦面目標(biāo)檢測(cè)實(shí)際需求。
針對(duì)航母艦面多尺度目標(biāo)檢測(cè)任務(wù)需求,提出了一種改進(jìn)Faster R-CNN的艦面目標(biāo)檢測(cè)算法。在原算法特征提取網(wǎng)絡(luò)的基礎(chǔ)上添加多尺度特征的RPN,并在本文艦面目標(biāo)數(shù)據(jù)集上進(jìn)行聚類分析以生成適合于本文目標(biāo)檢測(cè)的錨框尺寸,提高了算法對(duì)艦面多尺度目標(biāo)尤其是對(duì)小目標(biāo)檢測(cè)的準(zhǔn)確率。后續(xù)將繼續(xù)研究如何提高算法檢測(cè)速率,以提高算法檢測(cè)的實(shí)時(shí)性。