劉 俊,姜 濤,徐小康,田 勝,李亞輝
(杭州電子科技大學 通信與傳輸信息融合國防重點學科實驗室,浙江 杭州 310018)
作為一個海洋大國,我國的海洋環(huán)境極為復雜,周邊國家對我國設置了三大包圍島鏈,領海糾紛時有發(fā)生。在復雜海戰(zhàn)場環(huán)境下,如何能快速檢測并識別出目標艦船地位置和類別,極大的關系著戰(zhàn)爭的成敗。同時,在建設海洋強國,海上絲綢之路等一系列海洋政策的推動下,民事領域的海洋監(jiān)管顯得愈發(fā)重要,提升艦船目標自動化感知能力和水平在保護海洋漁場、海上能源運輸及港口貿(mào)易監(jiān)管等領域有著重大意義。考慮海上部署平臺的空間與能源受限性,輕量化與自動化的檢測目標識別系統(tǒng)顯得尤為重要。
海上艦船目標自動檢測是一種利用多種傳感器,獲取相關目標的信息并對其進行處理的技術。傳統(tǒng)目標識別方法是基于圖像處理及模式識別等相關技術構建的目標識別方法。隨著大數(shù)據(jù)及云計算等關鍵技術的發(fā)展基于強大特征提取和語義表達的深度學習技術在目標檢測領域得以應用。其采用在權值迭代更新過程中實現(xiàn)對圖像空間域信息的提取和表達,從而能夠自動提取出目標特征。
傳統(tǒng)的艦船目標檢測識別是基于經(jīng)典的數(shù)字圖像處理方法進行的,通過利用設計的相關特征提取算子實現(xiàn)特征目標的模板匹配[1],其泛化能力極差,識別準備率不高。艦船目標檢測領域發(fā)展緩慢。
隨著2012年AlexNet[2]為首的深度網(wǎng)絡的出現(xiàn),艦船目標識別領域也開始從傳統(tǒng)方法轉向深度學習方法。自深度殘差網(wǎng)絡之后,VGG[3],GoogleNet[4]等一大批性能卓越的深度網(wǎng)絡,帶了了性能的極大提升,同時計算量也大大增長,大規(guī)模的密集運算使得深度模型的部署平臺大大受限,限制了相關技術的應用。
MIT韓松博士在2016年發(fā)表了一篇關于對深度網(wǎng)絡模型結構裁剪、量化及編碼的方法,在保證原有網(wǎng)絡性能的前提下,大幅壓縮了模型大小,并由此引發(fā)了一系列對壓縮網(wǎng)絡模型大小的改進,包括MoblieNet[5],GoogleNet等一系列優(yōu)化網(wǎng)絡,使得在海洋多平臺部署艦船目標識別網(wǎng)絡成為可能。
深度學習的目標檢測算法在現(xiàn)階段大致可分為one-stage和two-stage檢測算法。前者通過深度網(wǎng)絡特征提取后直接輸出物體的類別概率和位置坐標預測,具有較快的檢測速度;后者則通過選好候選區(qū)域和目標樣本類別與位置,具有較高的準確率。
R-CNN[6]是首個目標檢測領域的two-stage算法,通過不斷地卷積池化,將輸入圖像信息轉化為單層感興趣區(qū)域,采用softmax多分類器同步類別預測與位置預測,實現(xiàn)特征提取到類別輸出一體化。
而本文選用one-stage算法中的SSD(Single-Shot-Detector)算法作為基礎算法框架[7],并在此基礎上進行優(yōu)化改進,基礎SSD算法基本框架如圖1所示。
圖1 基礎SSD算法基本框架
原生的SSD算法由特征提取網(wǎng)絡、多尺度候選區(qū)域和檢測輸出處理3部分組成,通過在特征提取網(wǎng)絡部份提取的高質量圖像特征信息,完成不同尺度的特征圖默認框生成,采用基于回歸和多類別分類器對所生成的感興趣候選區(qū)域進行類別和坐標的預測,通過非極大值抑制篩選置信度最高的目標位置和對應位置類別[7]。在艦船目標識別多平臺應用上,SSD算法存在默認框所使用的特征圖信息單一,候選框比例不適合艦船目標識別應用,軍船民船樣本數(shù)據(jù)集失衡等問題。
針對以上諸多問題,在海洋多平臺部署應用背景下,本文借鑒了基礎SSD算法,開展了輕量化深度網(wǎng)絡模型壓縮研究,為海上艦船目標自動識別提供支持。
面向艦船目標識別應用,借鑒one-stage中的SSD算法,本文提出了一種新的網(wǎng)絡框架DRSSD。實現(xiàn)海上資源受限情況下的多平臺自動化部署。輕量化檢測網(wǎng)絡結構整體示意如圖2所示。
由圖2可以看出,本文所提出的在資源受限情況下面向艦船目標識別應用的深度學習框架,通過將輸入圖片進行輕量化的特征提取,用較少的算力和模型復雜度提取出相關特征信息,隨后送入多尺度目標檢測附加層。通過對高底層級語義特征圖的信息融合,得到較強的富語義信息圖,結合原有的面向艦船目標改進后的尺寸參數(shù),生成對應的多種候選區(qū)域,最后通過篩選分類,選擇出最合適的候選框區(qū)域和置信類別。
新網(wǎng)絡有以下3大改進點:
① 輕量化特征提取網(wǎng)絡;
② 基于信息融合的多尺度特征語義金字塔網(wǎng)絡;
③ 面向艦船目標的候選框生成比例優(yōu)化。
圖2 輕量化檢測網(wǎng)絡結構整體示意
作為目標檢測與識別的基礎,特征提取的質量極大地關乎著整個模型效果,同時,特征提取中的一系列卷積池化操作和相關存儲的模型參數(shù),占用了極大的算力和存儲量[8]。本文將從以下3個部分對特征提取部分進行輕量化優(yōu)化。
1.1.1 卷積優(yōu)化
卷積是深度學習領域最重要的操作,通過對輸入的濾波進行整合輸出,得到所需要的特征,但是傳統(tǒng)的卷積操作通常將輸入的所有特征圖與卷積核進行逐點求和累加,消耗大量的算力和存儲空間,極大地影響著資源受限情況下的平臺部署,本文用深度可分離卷積替代傳統(tǒng)卷積[12]。
標準卷積核如圖3左側所示,而右側為拆分后的可分離卷積核。由圖3可以看出,通過將一個標準的卷積核簡化為一個深度卷積核和一個逐點卷積核,從而實現(xiàn)標準卷積操作的拆分,避免了輸入特征圖數(shù)量與卷積核參數(shù)量之間的耦合作用,大幅度減少卷積核的參數(shù)。
圖3 深度可分離卷積原理示意
在標準的卷積操作中,假設卷積核的尺寸為Cin×kw×kh,其中,Cin為卷積核的數(shù)量;kw×kh為輸入特征圖的尺寸。輸出特征圖的尺寸為Cout×Ow×Oh,其中,Cout為輸出特征圖的數(shù)量,Ow×Oh為輸出特征圖的尺寸。則標準卷積操作所需的計算量為:
Cfs=Cin×kw×kh×Cout×Ow×Oh。
(1)
參數(shù)量為:
Cws=Cin×Cout×kw×kh。
(2)
而通過深度可分離卷積操作之后,輸入和輸出特征圖的尺寸均相同的情況下,其計算量可以分為2部分:深度卷積計算量和逐點卷積計算量。其中所需計算量為:
Cfd=kw×kh×Cin×Ow×Oh+Cin×Cout×Ow×Oh。
(3)
參數(shù)量為:
Cws=Cin×kw×kh+Cin×Cout。
(4)
通過將標準卷積和深度可分離卷積進行比較可以發(fā)現(xiàn),深度可分離卷積在模型計算量的減少方面,較原始標準卷積減少比例為:
(5)
1.1.2 模型參數(shù)壓縮
針對特征圖感受野缺乏豐富性問題,本文參考并改進了Googlenet網(wǎng)絡的想法,通過利用Bottleneck[10]思想將輸入特征通道進行預處理[10],并對擴充后的輸入通道進行過隨機比例切分之后輸入到之后的不同尺寸的卷積核進行卷積操作,從而實現(xiàn)在增加感受野的同時減少模型中參數(shù)的使用。
原生SSD算法在單感受特征圖基礎上生成多尺度候選框區(qū)域,在某個像素點生成九種長寬比例和不同面積的候選區(qū)域,這種方法強調(diào)了單感受野對于目標識別的重要性,但忽略了局部感受野之間的關聯(lián)性,而淺層輸出通道則具有豐富的語義信息,如果將深層與淺層信息先融合,圖像信息特征表達會更加全面,所產(chǎn)生的候選區(qū)域也將更高質量[11]。多尺度特征語義金字塔網(wǎng)絡結構如圖4所示。
圖4 多尺度特征語義金字塔網(wǎng)絡結構
由圖4可以看出,通過將相鄰層級的特征數(shù)據(jù)歸一化后,用矩陣相加的方法進行高底層信息融合,形成多尺度特征語義金字塔網(wǎng)絡。同時,利用輕量化網(wǎng)絡思想,將金字塔型網(wǎng)絡形成時的標準卷積用深度可分離卷積來替換,進一步壓縮檢測網(wǎng)絡的不必要參數(shù)和計算量。
一般的深度學習算法在生成多尺度候選區(qū)域時的默認框比例是固定的,但這并不適用于艦船目標識別的目標框,盲目運用會導致模型發(fā)散和訓練效率低下等問題。本文利用基于改進型聚類的候選框比例優(yōu)化方法,在自建艦船目標數(shù)據(jù)集上提取大量標注樣本長寬比信息。在k-means++[12]聚類操作之后,得到適用于艦船目標識別的長寬比例,并由此作為默認候選框生產(chǎn)的參數(shù)設定,具體算法如下所示。
圖5 K-means++算法流程
基于嵌入式平臺計算和存儲能力的有限性,采用在服務器端訓練,嵌入式端部署測試相結合地辦法。實驗環(huán)境配置如表1所示。
表1 實驗環(huán)境配置
類型硬件環(huán)境軟件環(huán)境CPUGPU內(nèi)存系統(tǒng)框架高性能服務器Xeon E5-2450@2.00 GHZTITAN X(12GB)16 GBDDR4Ubuntu14.04Caffe嵌入式平臺Tegra K1GeForce Kepler2GB(GPU共享)Ubuntu14.04定制版Caffe
根據(jù)上文所提出的改進型輕量化分類網(wǎng)絡結構圖,將各個模塊連接,最終得到分類網(wǎng)絡模型結構,相關網(wǎng)絡參數(shù)設計如表2所示。
表2 輕量化分類網(wǎng)絡模型參數(shù)配置
層名稱輸出維度卷積核步長重復次數(shù)深度可分離卷積Image224×224----Conv1112×1127×721×Pool157×573×321-Match_Block157×573×311√DRes_Block157×573×311√Match_Block229×293×321√DRes_Bolck229×293×311√Match_Block315×153×321√DRes_Bolck315×153×312√Match_Block48×83×321√DRes_Bolck48×83×312√Pool21×1-global_pooling1-
面對資源受限平臺情況下的相關計算存儲需求,本文將提出的輕量化分類網(wǎng)絡結構DRSSD與業(yè)內(nèi)公開的MoblieNet,ShuffleNet[13],MobilieNetV2[14]等輕量化模型在相關準確率和模型復雜度方面進行了實驗對比,實驗結果如表3和表4所示。
表3 ImageNet-67數(shù)據(jù)集上模型性能對比
模型名稱模型大小/MBTop-1準確率/%Top-5準確率/%單幀耗時/msMobileNet16.270.892.813.3ResNet-1844.670.892.114.3ShuffleNet7.369.990.123.6DRSSD7.871.493.516.3MobileNetv214.271.693.628.9
表4 模型復雜度對比實驗數(shù)據(jù)
模型名稱參數(shù)數(shù)量浮點算量復雜指數(shù)分類準確率/%VGG-16138 344 12815 470 264 3200.089 4393.0ResNet-5025 556 0323 857 973 2480.066 2494.4ResNet-1811 692 7361 826 918 4000.064 0092.1ShuffleNet_1g31 812 734127 061 3040.142 6790.1MobileNet1 330 592149 497 0880.089 0092.8MobileNet v23 504 960429 111 9360.081 6893.6DResNet(Our’s)2 287 392407 326 7200.056 1693.5
通過對模型大小、準確率和速度3個方面的分析,DRSSD有著較小的模型大小(7.8 MB)和較高的準確率(top5準確率達到93.5%)。
為了對比各個改進點對模型性能的提升幅度,本文采用了控制變量法對各個改進點進行了單獨實驗作為艦船目標網(wǎng)絡,本節(jié)的所有實驗都是基于自建艦船目標數(shù)據(jù)集,實驗結果如下。
不同于其他物體,艦船目標有著其獨特的長寬比和模型大小特征。一般算法中,生成的默認錨框長寬比特征未能針對艦船目標進行特殊化配置。本文使用傳統(tǒng)機器學習中的聚類方法來提取艦船目標長寬比例數(shù)據(jù)的獲取,基于自建數(shù)據(jù)集標注目標尺寸聚類結果及可視化如圖6和圖7所示。
圖6 不同聚類中心數(shù)量艦船目標尺寸比例聚類效果
為證明不同數(shù)量的尺寸比例都最終結果的影響,本文使用初始化聚類中心數(shù)量k∈[4,9]。從聚類結果上可以看出,隨著聚類中心數(shù)量的增加,目標尺寸比例數(shù)據(jù)近似在一定范圍內(nèi)波動。但在目標檢測過程中,默認框的數(shù)量將直接影響算法推理過程中的計算量,因此在此選擇k=6作為每個位置生成的默認框的尺寸,也即每個位置生成6種不同尺寸的默認框。k=6時目標尺寸比例效果如圖7所示。其中圓內(nèi)標注數(shù)據(jù)為目標的長寬比例結果。
圖7 目標形狀尺寸比例聚類可視化
為了便于后續(xù)實驗的使用,在此本文將聚類中心數(shù)量為k=6時的聚類數(shù)據(jù)進行了整理,艦船目標形狀聚類詳細數(shù)據(jù)如表5所示。
表5 數(shù)據(jù)集艦船目標長寬比聚類結果
序號123456長寬[0.14,0.40][0.05,0.06][0.12,0.10][0.69,0.58][0.25,0.17][0.49,0.33]長寬比0.350.781.141.181.471.48
由表5可以看出,聚類數(shù)據(jù)的面積部分為真實目標框相對于原始圖像所占的比例,例如[0.25,0.17]表示標注框相對于原始圖像,寬度為原始圖像的0.25,而高度為原始圖像的0.17。此外,從長寬比聚類結果可以看出,采用6個聚類中心進行聚類,最終聚類出的長寬比僅有4類,分別為0.35,0.78,1.14和1.47。本文檢測算法部分也均是基于該聚類數(shù)據(jù)對默認錨點框進行初始化形狀參數(shù)設置。
分類網(wǎng)絡切割改進方法網(wǎng)絡模型性能變化如表6所示。
表6 分類網(wǎng)絡切割改進方法網(wǎng)絡模型性能變化
模型名稱DRSSDDepthwise convolution√√√√Squeeze expand√√√Squeeze excitation√√ImageNet-67 Accuracy94.487.388.791.593.5
由表6可以看出,通過建立多尺度語義特征金字塔來增加網(wǎng)絡模型中感受野的特征信息與語義信息,能夠有效提升艦船目標識別準確率提升了1.4個百分點。
本文針對資源受限情況下的艦船目標檢測識別技術進行了研究。在已有輕量化SSD算法模型的基礎上進行了諸多改進,提出了改進型的DRSSD輕量化檢測模型。經(jīng)過大量實驗表明,該算法結構大量削減了非必要模型參數(shù),在保證原有檢測精度和檢測速度不大規(guī)模降低的情況下,通過本文提出的諸多改進點與現(xiàn)有深度網(wǎng)絡在公開和自建艦船目標數(shù)據(jù)集上進行了比較,證明改進點有效地提高了艦船目標識別的準確率。實現(xiàn)了計算量和參數(shù)量的削減,該方法具有資源損耗低、準確率和實時性高等諸多特點。能夠有效地實現(xiàn)海上多平臺部署,對海洋漁業(yè)及國防等諸多方面都有著重大意義。但本文所設計的網(wǎng)絡模型仍具有很大的改進空間,如何在保持準確率的情況下,更好地壓縮網(wǎng)絡的大小,將傳統(tǒng)目標檢測方法和深度網(wǎng)絡相結合,是我們以后研究的重點方向[15]。