盛子旗,霍冠英
(河海大學 物聯(lián)網(wǎng)工程學院,江蘇 常州 213022)
水雷目標檢測對于排除航道上的危險、保障戰(zhàn)艦和貨船的安全通行具有特別重要的意義。由于聲波作用距離遠,側(cè)掃聲吶、前視聲吶等各種聲吶設(shè)備是當前水雷目標探測主要采用的裝備。側(cè)掃聲吶基于聲學散射原理來探測海底地貌和凸起物體[1],接收到的回波經(jīng)過處理后以瀑布圖像的形式顯示,可以獲得海底地貌和障礙物等重要信息。
水雷目標的探測和識別,當前仍然依賴人工對聲吶獲取的圖像進行判讀,效率較低,難以適應潛航器大面積智能、快速掃雷的需求。如何實現(xiàn)水雷目標的精確檢測,是亟待解決的難題[2]。水雷目標的自動檢測通常分為兩步:第一步首先檢測出所有可能的疑似水雷目標,側(cè)掃聲吶圖像分割方法[3-4]能夠區(qū)分目標高亮區(qū)、陰影區(qū)和背景混響區(qū),可用于標記所有可疑水雷目標;第二步,對每個目標進行特征提取和判別,判斷其是否屬于水雷目標。
在深度學習興起之前,傳統(tǒng)的檢測方法大多使用先驗知識或數(shù)據(jù)驅(qū)動的方法來識別類水雷目標,通過從目標中提取的特征信息與訓練數(shù)據(jù)進行比較,當兩者的相似度非常高時,這些方法可以有較高的精度[5]。Bryner等[6]提出一種形狀先驗知識指導的主動輪廓跟蹤方法提取聲吶圖像中的目標輪廓進而實現(xiàn)目標分割。Raquel等[7]提出一種基于分類的聲吶圖像水底目標檢測系統(tǒng)中最優(yōu)特征級的設(shè)計方法,通過對感興趣區(qū)域的分割完成目標高亮及陰影區(qū)域的分割。Cho等[8]嘗試通過多角度水雷目標模擬和模板匹配來提高識別精度。Sawas提出了無先驗知識的局部特征描述子,如采用Haar-like特征[9]識別水雷。
以上檢測方法中使用人工提取特征的方式并配合支持向量機、boosting等不同的分類器[10]進行檢測分類,這樣的方法對于特定的任務(wù)有較好的性能,但是人工提取特征需要專業(yè)的知識,成本較高且泛化能力有限。當訓練數(shù)據(jù)不平衡時,必須仔細地選擇特征并反復調(diào)整分類器,識別率很難達到實用要求。相較于傳統(tǒng)的識別方法,深度學習在特征提取方面有著突出優(yōu)勢,其通過多層抽象學習到目標的數(shù)據(jù)表征,從而省去了人工提取特征的麻煩。自深度學習方法提出以來,卷積神經(jīng)網(wǎng)絡(luò)在大樣本數(shù)據(jù)集的光學圖像的目標識別已經(jīng)取得了較大成功[11],然而對水下小樣本數(shù)據(jù)的水雷等水下目標識別還存在較大問題。由于水下實驗困難、實驗代價較大,獲取的水雷目標樣本嚴重不足。因此,直接采用小樣本數(shù)據(jù)集對深度神經(jīng)網(wǎng)絡(luò)進行訓練得到的模型存在突出的過擬合問題,泛化能力往往非常差,難以實際應用。
針對上述水雷目標檢測與識別中的問題,提出使用樣本仿真的方法來增廣數(shù)據(jù),同時結(jié)合遷移學習的方法來解決水下圖像樣本數(shù)據(jù)不足的問題,并基于深層卷積神經(jīng)網(wǎng)絡(luò)進行檢測,最終通過有效的目標檢測模型實現(xiàn)側(cè)掃聲吶圖像水雷目標的檢測與識別,為水雷目標檢測提供有益借鑒。
由于實驗困難和經(jīng)濟成本等因素,水雷目標聲吶圖像獲取困難,難以得到充分的真實樣本數(shù)據(jù)。因此,我們首先考慮通過仿真計算的方法建立聲吶模型,對水雷目標進行仿真,以增廣樣本數(shù)據(jù)集。水下目標受距離和高度的影響,在圖像上占像素點的面積不同,通過對不同高度和距離下的目標進行仿真,可以增廣出一組高度和距離均不同的目標圖像。同時,由于水下聲吶成像時受到海底混響的影響,我們要在模型中加入背景混響模型,從而增廣出含有不同背景混響的水雷目標聲吶圖像,以此提升仿真數(shù)據(jù)對不同混響背景下目標檢測的魯棒性。
聲吶圖像是目標回波的強度圖像,一般亮色代表回波強,暗色代表回波弱,被遮擋區(qū)域不產(chǎn)生回波,因此仿真的樣本最終也以灰度圖像形式輸出。
水雷目標的幾何形態(tài)較為簡單、規(guī)則,因此對水雷目標的仿真可以設(shè)計出準確的仿真模型,通過目標陰影生成仿真計算得到水雷目標圖像的亮區(qū)與暗區(qū),并經(jīng)過背景模擬與灰度調(diào)整得到最終的水雷目標仿真圖。
設(shè)聲吶點為P,距離海底高度為H,θ1與 θ2分別為聲吶點到目標的切線夾角,則ACB部分為回波區(qū)(亮區(qū)),AFE部分為目標暗區(qū),其余部分則構(gòu)成海底背景區(qū)域。目標陰影生成仿真原理如圖1所示。通過均勻采樣若干個橫截面進行計算并 繪制,最后可得到整個水雷目標的亮暗區(qū)圖像。
圖 1 目標陰影生成仿真原理Fig. 1 Simulation schematic diagram of shadow generation of target
亮區(qū)兩側(cè)的坐標表達式如下:
暗區(qū)兩側(cè)的坐標表達式如下:
式(1)中,p,q為聲吶點坐標;a,b為模擬目標橫截面中心;r為模擬目標半徑;式(2)中當y=0時即可得到目標暗區(qū)部分范圍。
海底的不平整性和底質(zhì)的非均勻性會產(chǎn)生海底混響,它是一個無規(guī)則的隨機過程,導致聲吶圖像背景噪聲較強。研究表明,聲吶圖像的海底混響背景的灰度級服從Weibull分布,通過對Weibull模型中參數(shù)取值不同可以得到多種不同的背景分布,如式(3)所示:
式中:x是隨機變量,λ>0 是比例參數(shù),k>0 是形狀參數(shù)。
通過對Weibull分布模型的自由度參數(shù)進行不同取值,得到不同強度的背景混響。部分水雷目標圖像的仿真結(jié)果如圖2所示。
圖 2 水雷目標樣本仿真結(jié)果Fig. 2 Mine sample simulation results
Faster R-CNN是“Fast R-CNN+RPN”的系統(tǒng)[12],基本結(jié)構(gòu)如圖3所示,是一種交替優(yōu)化網(wǎng)絡(luò),可以使兩個卷積網(wǎng)絡(luò)實現(xiàn)共享,通過兩個訓練網(wǎng)絡(luò)相互協(xié)調(diào)來對目標進行檢測。Faster R-CNN拋棄了傳統(tǒng)的滑動窗口和SS方法(selective search),直接使用RPN生成候選框。RPN網(wǎng)絡(luò)能夠從輸入的特征圖產(chǎn)生前景候選框和前景框的位置偏移,并且也能加快生成候選框的速度。Fast R-CNN主要負責邊框回歸及分類,與RPN的特征共享有效提高了檢測精度和檢測效率。
YOLOv3是YOLO系列第三版,是基于回歸的深度卷積神經(jīng)網(wǎng)絡(luò)[13],其模型結(jié)構(gòu)如圖4所示。YOLOv3速度快,并且能發(fā)揮多核處理器和GPU并行運算的功能。除此以外,YOLOv3會對圖像的全局區(qū)域進行訓練,能夠更好地區(qū)分目標和背景,因此在中小尺寸的目標檢測上準確率較高。YOLOv3的主干網(wǎng)絡(luò)由全連接卷積層構(gòu)成,采用多標簽的方式替代了之前的softmax單標簽方式。YOLOv3同時具有多尺度檢測的優(yōu)勢,在3種不同的特征尺度上進行檢測可以適應更多的檢測識別任務(wù)。
圖 3 Faster R-CNN模型結(jié)構(gòu)Fig. 3 Structure of the Faster R-CNN model
SSD是一種單階段的物體檢測算法[14],其模型結(jié)構(gòu)如圖5所示。SSD的核心設(shè)計理念是采用多尺度特征圖做預測,并通過卷積或池化降低特征圖大小,使用較大的特征圖來檢測較小的目標,相反較小的特征圖用于檢測較大的目標。SSD具有回歸功能,通過卷積在不同的特征圖上提取檢測結(jié)果。SSD還借鑒了Faster R-CNN中錨點的理念,通過尺度及長寬比各不相同的先驗框來生成預測的邊界框,一定程度上減少了訓練難度。
研究表明,F(xiàn)aster R-CNN、SSD和YOLOv3這3種方法在檢測速度和精度上都有較好的表現(xiàn),因此文中使用這3種方式進行水雷目標檢測并對比檢測結(jié)果。
圖 4 YOLOv3模型結(jié)構(gòu)Fig. 4 Structure of the YOLOv3 model
圖 5 SSD模型結(jié)構(gòu)Fig. 5 Structure of the SSD model
深度學習通常需要數(shù)千張樣本數(shù)據(jù),預訓練配合參數(shù)調(diào)整是目前深度學習中主要的參數(shù)學習方式[15],通常會采用廣源域數(shù)據(jù)集ImageNet對模型進行預訓練以初始化模型參數(shù)。在樣本數(shù)據(jù)較少的情況下我們可以采用遷移學習的方式將知識從源域轉(zhuǎn)移到目標域以此來克服數(shù)據(jù)不足的困難,文中所使用的結(jié)合樣本仿真的遷移學習過程如圖6所示。
圖 6 遷移學習過程Fig. 6 Process of transfer learning
根據(jù)源域和目標域之間的關(guān)系,遷移學習方法可以分為四大類[16]:基于實例的遷移、基于特征的遷移、基于參數(shù)/模型的遷移和基于關(guān)系的遷移?;谀P偷纳疃冗w移學習是最普遍的一種,大量研究表明,從源域中的大型基準數(shù)據(jù)集中學習的預訓練模型比直接遷移學習更有效[17-18],原因是基于模型的深度遷移學習的一大優(yōu)勢是深層網(wǎng)絡(luò)的中低級特征對不同的任務(wù)是通用的[19]。
為了彌補樣本數(shù)量的不足及提高圖像檢測的精度,使用遷移學習的方式將仿真數(shù)據(jù)作為樣本數(shù)據(jù)集對網(wǎng)絡(luò)進行訓練,以此實現(xiàn)對真實數(shù)據(jù)的檢測與識別。
具體的訓練步驟如下:
1)使用ImageNet數(shù)據(jù)集對VGG16、Darknet53進行預訓練,以得到一個較合理的初始參數(shù)。經(jīng)過預訓練的網(wǎng)絡(luò)對圖像的邊緣、紋理等底層信息敏感,具備對圖像特征的表達能力。因為網(wǎng)絡(luò)的底層卷積提取的中低級特征對不同的任務(wù)通用,所以可使用大數(shù)據(jù)集來預訓練網(wǎng)絡(luò)。
2)將通過仿真獲取的樣本數(shù)據(jù)集對步驟1)中預訓練好的網(wǎng)絡(luò)進行更深一步的訓練,因為預訓練模型對低層特征的能力較強,可以固定底層卷積的參數(shù),將高層卷積部分繼續(xù)訓練,經(jīng)過微調(diào)可以較快達到最優(yōu)值。
3)訓練完成后對網(wǎng)絡(luò)的檢測效果進行測試,使用真實的聲吶樣本進行檢測與識別,比較不同方法在訓練時間、平均精度以及查準率和查全率上的區(qū)別。如果準確率能夠達到識別任務(wù)的要求,則可以將訓練好的網(wǎng)絡(luò)用于該應用中。
首先采用樣本仿真方法得到1 000個目標仿真圖像,仿真的水雷目標為球狀、柱狀兩種形狀類型,背景假定為平坦的海底;然后加入真實的水雷目標聲吶圖像200張;利用圖像標注工具labelImg手動標注水雷目標并以xml格式保存。從數(shù)據(jù)集中隨機選取200張,總共標注473個樣本,作為交叉驗證集;剩余的1 000張總共標注2 342個樣本作為訓練集。柱狀水雷目標的類別設(shè)置為mine0,球狀水雷目標的類別設(shè)置為mine1。
用真實的聲吶圖像對訓練好的網(wǎng)絡(luò)進行檢測,一方面驗證遷移學習的可行性,另一方面對三種網(wǎng)絡(luò)的檢測結(jié)果進行無偏估計。為驗證所提出方法的有效性,同時使用樣本仿真訓練數(shù)據(jù)和遷移學習。
將訓練數(shù)據(jù)集送入卷積神經(jīng)網(wǎng)絡(luò)中進行訓練,首先由輸入層輸入訓練數(shù)據(jù),經(jīng)過多層卷積后得到深層次的特征圖;然后通過激活函數(shù)加入非線性因素;再通過池化層壓縮得到的特征圖,以突出主要的特征并減少檢測模型的計算量;最后通過全連接層連接所有特征,并輸出到分類器中進行分類。圖7為YOLOv3算法流程的總體框圖。
訓練檢測模型與檢測水雷目標時的參數(shù)設(shè)置和訓練時長見表1,不同方法檢測的mAP結(jié)果見表2。
網(wǎng)絡(luò)在檢測結(jié)果輸出前根據(jù)設(shè)定的閾值判斷是正樣本還是偽樣本,結(jié)果小于閾值的目標丟棄,結(jié)果大于閾值的目標則保留。表1中的閾值為多次訓練與檢測后根據(jù)結(jié)果選取的最優(yōu)值。
使用基于Haar-like特征的Adaboost水下目標檢測方法對側(cè)掃聲吶圖像水雷目標數(shù)據(jù)集中檢測準確率為79%,這說明傳統(tǒng)的特征提取方法對于噪聲較強的水下目標檢測的魯棒性較差。使用Faster R-CNN和YOLOv3兩種目標檢測方法的準確率均比該傳統(tǒng)目標檢測方法有顯著提升(準確率提升了約12%)。YOLOv3由于深度和結(jié)構(gòu)不同,并且大量使用了殘差的跳層鏈接,很大程度上加快了訓練與檢測的速度。Faster R-CNN網(wǎng)絡(luò)相對YOLOv3來說耗時稍長,但準確率相近。SSD網(wǎng)絡(luò)的檢測效果并不理想,原因是其訓練網(wǎng)絡(luò)的深度不夠,無法有效地提取到樣本中的關(guān)鍵信息。
圖 7 YOLOv3算法流程框圖Fig. 7 Block diagram of YOLOv3
表 1 網(wǎng)絡(luò)訓練與檢測參數(shù)、時間Table 1 Network training and detection parameters, time
表 2 不同方法水雷圖像測試集檢測mAP結(jié)果Table 2 Detection of mAP results from underwater mine image test set by different methods
圖8和圖9分別為YOLOv3網(wǎng)絡(luò)和Faster RCNN網(wǎng)絡(luò)在不同測試數(shù)據(jù)下的最終檢測結(jié)果:圖8(a)和圖9(a)是僅使用真實數(shù)據(jù)進行訓練和檢測的效果,圖8(b)和圖9(b)則是結(jié)合了真實數(shù)據(jù)和仿真數(shù)據(jù)進行訓練和檢測的效果??梢钥吹酵瑫r使用真實數(shù)據(jù)和仿真數(shù)據(jù)進行訓練對檢測效果的提升比較明顯,即使是在噪聲干擾較大,背景與目標邊緣較模糊的條件下,YOLOv3網(wǎng)絡(luò)和Faster RCNN仍然能夠比較準確地檢測出水雷目標。實驗結(jié)果表明,樣本仿真結(jié)合遷移學習的方法能夠有效提升基于深度學習的水雷目標檢測準確率,相比傳統(tǒng)的檢測方法檢測效果提升明顯。而且,隨著水雷目標的仿真數(shù)據(jù)和真實數(shù)據(jù)的增多,深度卷積神經(jīng)網(wǎng)絡(luò)具有繼續(xù)提高檢測精度的優(yōu)勢,對水雷目標檢測具有重要的意義。
圖 8 YOLOv3檢測結(jié)果Fig. 8 Detection results of YOLOv3
圖 9 Faster R-CNN檢測結(jié)果Fig. 9 Detection results of Faster R-CNN
本文實現(xiàn)了水雷目標聲吶圖像仿真,擴增了數(shù)據(jù)集,為水下數(shù)據(jù)獲取難度高、成本大的問題提供了一個切實可行的解決方案;同時,基于深度卷積神經(jīng)網(wǎng)絡(luò)的特征提取優(yōu)勢,結(jié)合樣本仿真和遷移學習提升了深度學習的準確性,避免了深度學習對小樣本學習不足的問題。實驗結(jié)果表明,在樣本仿真和遷移學習的基礎(chǔ)上,YOLOv3對水雷目標的檢測精度更高,速度更快。這一實驗結(jié)果為水雷目標的檢測提供了重要的借鑒。本文仿真的水雷形狀規(guī)則,并假設(shè)海底平坦,在面對復雜地形環(huán)境和不規(guī)則目標的任務(wù)時有一定的局限性。下一步的工作將繼續(xù)提高仿真模型的復雜度和適應性,同時考慮其他數(shù)據(jù)生成方式,例如基于生成式對抗網(wǎng)絡(luò)的數(shù)據(jù)生成方式,以進一步提升檢測精度。此外,由于遷移學習的本質(zhì)是利用不同任務(wù)之間的相關(guān)性,在預訓練模型的基礎(chǔ)上凍結(jié)部分網(wǎng)絡(luò)并對參數(shù)做精細的調(diào)優(yōu),因此,如何結(jié)合強化學習進行更細致的參數(shù)訓練并對網(wǎng)絡(luò)結(jié)構(gòu)進行更加深入的調(diào)整,也需要進一步深入考慮。