單連平,竇 強(qiáng)
(1.江蘇自動(dòng)化研究所,江蘇 連云港 222061;2.海軍駐七一六所軍事代表室,江蘇 連云港 222061)
在現(xiàn)代化海戰(zhàn)中,衛(wèi)星、無人機(jī)等空天偵查平臺(tái)在軍事目標(biāo)探測(cè)中得到了廣泛應(yīng)用,能夠監(jiān)視和捕獲到大量遙感、SAR和可見光圖像,從這些圖像中解算出目標(biāo)的身份和位置信息對(duì)戰(zhàn)前籌劃、指揮輔助決策以及精確打擊具有重要價(jià)值。然而,在實(shí)際海戰(zhàn)場(chǎng)環(huán)境中,圖像質(zhì)量通常容易受到光照、薄霧、遮擋等自然地理因素的影響,此外,目標(biāo)本身的姿態(tài)和尺度具有多變性,這些因素都會(huì)對(duì)識(shí)別性能造成一定的影響。因此,研究先進(jìn)的圖像目標(biāo)自動(dòng)識(shí)別技術(shù),提升海戰(zhàn)場(chǎng)環(huán)境下的圖像識(shí)別能力非常重要。
目前,國內(nèi)針對(duì)目標(biāo)識(shí)別的綜述,特別是雷達(dá)目標(biāo)識(shí)別的綜述很多,而針對(duì)圖像目標(biāo)識(shí)別的綜述較少。陳文婷等[1]針對(duì) SAR 圖像艦船目標(biāo)識(shí)別流程和技術(shù)進(jìn)行了全方位總結(jié),但由于近幾年深度學(xué)習(xí)技術(shù)的飛速發(fā)展,難以精確地概括當(dāng)前的圖像目標(biāo)識(shí)別技術(shù);謝曉竹等[2]針對(duì)復(fù)雜背景下的車輛目標(biāo)識(shí)別研究進(jìn)行了綜述,但對(duì)深度神經(jīng)網(wǎng)絡(luò)識(shí)別技術(shù)的介紹不夠詳細(xì)。
從已有文獻(xiàn)來看,海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別系統(tǒng)的發(fā)展經(jīng)歷了兩個(gè)階段:基于傳統(tǒng)方法的識(shí)別系統(tǒng)和基于深度神經(jīng)網(wǎng)絡(luò)的識(shí)別系統(tǒng)。本文將著重對(duì)識(shí)別中應(yīng)用的深度學(xué)習(xí)技術(shù)進(jìn)行歸納,對(duì)比分析不同技術(shù)的優(yōu)勢(shì)和缺陷,并展望海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別的技術(shù)發(fā)展方向。
海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別包括基于序列圖像的識(shí)別和基于靜態(tài)圖像的識(shí)別,本文主要討論基于靜態(tài)圖像的識(shí)別。一個(gè)完整的海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別系統(tǒng)需要識(shí)別圖像中所有目標(biāo)的類別和圖像中所有目標(biāo)的具體位置和大小。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)是目前應(yīng)用最廣泛的深度學(xué)習(xí)技術(shù),在圖像分類、圖像檢索、物體檢測(cè)等任務(wù)中表現(xiàn)及其優(yōu)異。2012年, AlexNet[4]以絕對(duì)優(yōu)勢(shì)拿下ImageNet競賽的冠軍,引發(fā)了深度學(xué)習(xí)研究的熱潮。此后,CNN在計(jì)算機(jī)視覺領(lǐng)域不斷取得新的突破,為海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別提供了新的解決方案。
一個(gè)經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)通常包括輸入層、卷積層、下采樣層(也叫池化層)、全連接層和輸出層,其中卷積層利用一定大小的卷積核對(duì)上一層輸出按一定步長從左到右從上到下進(jìn)行卷積操作;下采樣層對(duì)卷積結(jié)果進(jìn)行小鄰域特征點(diǎn)整合;全連接層對(duì)經(jīng)過一系列卷積和下采樣步驟后的數(shù)據(jù)進(jìn)行分類,得到的誤差回傳到前面各層,并更新卷積核參數(shù)和全連接層參數(shù),最終完成圖像分類。
1998年,LeCun等[3]針對(duì)二維文本圖像識(shí)別問題提出了現(xiàn)代卷積神經(jīng)網(wǎng)絡(luò)的雛形 —— LeNet,如圖1所示。LeNet 包含了兩個(gè)卷積層、兩個(gè)池化層和一個(gè)全連接層,卷積層和池化層的作用是提取特征,將原始數(shù)據(jù)映射到特征維度,全連接層進(jìn)行分類,將特征維度映射到樣本標(biāo)簽。
圖1 經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)(LetNet-5)結(jié)構(gòu)
AlexNet[4]在 LeNet 的基礎(chǔ)上加深了網(wǎng)絡(luò)的學(xué)習(xí)層數(shù),使用5個(gè)卷積層和3個(gè)全連接層,并在訓(xùn)練中進(jìn)行了諸多改進(jìn),主要表現(xiàn)在:1)使用ReLU函數(shù)做激活函數(shù)解決了在網(wǎng)絡(luò)層數(shù)較深時(shí)易發(fā)生梯度消失的問題;2)使用 LRN 歸一化提高網(wǎng)絡(luò)的泛化能力;3)提出池化的大小大于步進(jìn)、訓(xùn)練時(shí)隨機(jī)丟棄全連接層中的部分神經(jīng)元(Dropout)和擴(kuò)大訓(xùn)練數(shù)據(jù)集大小等方式抑制過擬合;4)在多GPU上進(jìn)行分布式計(jì)算加速網(wǎng)絡(luò)訓(xùn)練。AlexNet是最先在ImageNet圖像分類競賽中取得突破的網(wǎng)絡(luò),為后來更多更優(yōu)秀模型的提出奠定了基礎(chǔ)。
為了提升CNN在圖像分類問題上的表現(xiàn),牛津大學(xué)的研究人員在卷積層大量采用3*3的卷積核提取圖像特征,提出比AlexNet模型更深的VGG模型[5]。Google為了更好的融合多尺度模型特征,提出了InceptionNet[6],InceptionNet在同一個(gè)卷積層中使用多個(gè)不同大小的卷積核對(duì)上一層輸出進(jìn)行卷積,并把所有的卷積運(yùn)算結(jié)果堆積到一起,從而避免了人工確定卷積核大小帶來的不確定性。此外,InceptionNet降低了全連接層的層數(shù),除了分類層以外的所有層數(shù)全部用作特征通用的特征提取器。
由于梯度消失和梯度爆炸問題的存在,很深的神經(jīng)網(wǎng)絡(luò)較難訓(xùn)練,因此,隨著網(wǎng)絡(luò)深度的持續(xù)增大,分類精度反而會(huì)有所下降。針對(duì)該問題,何愷明等[7]基于使用卷積層學(xué)習(xí)輸入輸出之間的殘差較為容易的思想,提出了ResNet,ResNet的每一個(gè)殘差塊在前向傳播的基礎(chǔ)上將當(dāng)前層的激活值跳遠(yuǎn)連接到網(wǎng)絡(luò)的更深層,如圖2所示。
圖2 ResNet的一個(gè)殘差塊結(jié)構(gòu)
近年來,以卷積神經(jīng)網(wǎng)絡(luò)為主的深度學(xué)習(xí)技術(shù)在計(jì)算機(jī)視覺領(lǐng)域幾乎取得了統(tǒng)治地位,針對(duì)其在海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別系統(tǒng)中的應(yīng)用研究也越來越多。晁安娜等[8]提出了一種改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了存在大量干擾(如遮擋、噪聲、視角變化)的遙感飛機(jī)圖像識(shí)別;鄭光迪等[9]優(yōu)化了VGGNET的層數(shù)和節(jié)點(diǎn)數(shù),得到易于訓(xùn)練的精簡網(wǎng)絡(luò),有效的識(shí)別了復(fù)雜海戰(zhàn)場(chǎng)環(huán)境下的目標(biāo);趙亮等[10]結(jié)合CNN提取的特征、HOG算法提取的邊緣特征和HSV算法得到的顏色特征較好的實(shí)現(xiàn)了船舶目標(biāo)識(shí)別。
由于卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練需要大量的數(shù)據(jù),但在實(shí)際的海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別應(yīng)用中,收集大量真實(shí)包含海戰(zhàn)場(chǎng)目標(biāo)的圖像較為困難,可以考慮遷移學(xué)習(xí)。遷移學(xué)習(xí)通過簡單的調(diào)整在一個(gè)問題上訓(xùn)練好的模型即可得到適用于新問題的新模型。
Donahue J等[11]指出:在已經(jīng)訓(xùn)練完成的Inception-v3模型中,從輸入層到最后一個(gè)卷積層都是在對(duì)圖像進(jìn)行特征提取,而最后僅通過一個(gè)單層全連接神經(jīng)網(wǎng)絡(luò)即可很好的區(qū)分ImageNet中的1000類圖像,所以Inception-v3模型的卷積層輸出可以被作為任意圖像的精簡且表達(dá)能力很強(qiáng)的特征向量。因此,可以使用已訓(xùn)練好的Inception-v3模型中的卷積層從新圖像集中提取特征,并使用提取到的特征向量作為輸入來訓(xùn)練一個(gè)新的分類器。Ge W等[12]在文獻(xiàn)[11]的基礎(chǔ)上指出在訓(xùn)練中保持已訓(xùn)練CNN模型的前n層參數(shù)不變,使用現(xiàn)有數(shù)據(jù)微調(diào)之后的卷積層和全連接層的參數(shù)可以獲得更好的遷移效果。根據(jù)Ge W等的結(jié)論,在實(shí)際海戰(zhàn)場(chǎng)目標(biāo)識(shí)別系統(tǒng)應(yīng)用中,可用于訓(xùn)練的圖像數(shù)據(jù)越多,需要凍結(jié)的卷積層數(shù)n越小,訓(xùn)練得到的模型也越精確。
由于圖像中通常不止包含一個(gè)目標(biāo),因此,將整張圖像劃分為單個(gè)類別并不準(zhǔn)確。此外,一個(gè)完整的識(shí)別系統(tǒng)需要識(shí)別圖像中所有目標(biāo)的類別和它們?cè)趫D像中的具體位置。和傳統(tǒng)的識(shí)別系統(tǒng)一樣,基于區(qū)域卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)算法也使用預(yù)訓(xùn)練的分類模型對(duì)圖像中的候選區(qū)域進(jìn)行分類。近年來,候選區(qū)域生成方法的研究不斷深入,涌現(xiàn)出包括R-CNN系列檢測(cè)算法等諸多成熟檢測(cè)算法。
傳統(tǒng)識(shí)別系統(tǒng)中常用的滑動(dòng)窗口檢測(cè)方法,同樣也可用于基于深度網(wǎng)絡(luò)的識(shí)別系統(tǒng),它通過暴力手段從左到右,從上到下滑動(dòng)固定大小的窗口,并使用預(yù)訓(xùn)練完成的CNN對(duì)窗口中的目標(biāo)進(jìn)行分類。滑動(dòng)窗口檢測(cè)方法計(jì)算成本高、窗口大小和窗口移動(dòng)步幅難以確定等缺點(diǎn)十分明顯。
Girshick R等[13]針對(duì)滑動(dòng)窗口的缺陷提出了使用 Selective Search 方法從待檢測(cè)圖像中提取可能包含待檢測(cè)目標(biāo)的2000個(gè)左右候選區(qū)域,使用預(yù)先訓(xùn)練好的CNN提取這些候選區(qū)域的特征,最后進(jìn)行目標(biāo)分類和邊框回歸,這就是R-CNN,如圖3所示。
圖3 基于RCNN的目標(biāo)檢測(cè)和識(shí)別過程
相對(duì)于滑動(dòng)窗口方法,R-CNN雖然在很大程度上降低了計(jì)算成本,但它生成的2000個(gè)候選區(qū)域都需要獨(dú)立地輸入CNN來提取特征,所以訓(xùn)練和推斷速度仍然非常慢。為了進(jìn)一步降低計(jì)算成本,解決R-CNN的重復(fù)計(jì)算問題,Girshick R[14]基于直接使用特征圖代替原圖來檢測(cè)目標(biāo)的想法,又提出了Fast R-CNN,Fast R-CNN不再像R-CNN一樣對(duì)每個(gè)候選區(qū)域進(jìn)行特征提取,而是先使用CNN提取整個(gè)圖像特征,然后將Selective Search方法創(chuàng)建的候選區(qū)域直接用在特征圖上,如圖4所示。
圖4 基于Fast R-CNN的目標(biāo)檢測(cè)和識(shí)別過程
針對(duì) Fast R-CNN模型生成2000個(gè)候選區(qū)域耗時(shí)太長的問題,Ren S等[15]提出了 Faster R-CNN,在最后一個(gè)卷積層之后加入?yún)^(qū)域建議網(wǎng)絡(luò)(Region Proposal Networks, RPN)快速生成候選區(qū)域,并判斷候選區(qū)域是否包含特定類別的目標(biāo),最后使用回歸器進(jìn)一步調(diào)整包含目標(biāo)的候選區(qū)域,如圖5所示,Faster R-CNN大大提高了目標(biāo)檢測(cè)和識(shí)別的效率。
圖5 基于Faster R-CNN的目標(biāo)檢測(cè)和識(shí)別過程
Bojarski M等[16]在自己的論文中首次提到了端到端的學(xué)習(xí),但沒有給出嚴(yán)格的定義。通常,從輸入端到輸出端的所有任務(wù)在同一個(gè)網(wǎng)絡(luò)中進(jìn)行訓(xùn)練的過程可看做是端到端學(xué)習(xí)。
事實(shí)上,Faster R-CNN 將RPN集成到Fast R-CNN中得到統(tǒng)一的檢測(cè)網(wǎng)絡(luò),已經(jīng)是一種端到端可訓(xùn)練的網(wǎng)絡(luò)。但是 Faster R-CNN 仍然通過生成候選區(qū)域的方法來完成目標(biāo)識(shí)別,其中很多存在較大重疊的候選區(qū)域帶來了重復(fù)地識(shí)別工作。針對(duì) Faster R-CNN存在的缺陷,Redmon J等[17]提出了 YOLO (You Only Look Once)模型。YOLO模型是一種基于回歸的檢測(cè)和識(shí)別模型,它將目標(biāo)檢測(cè)當(dāng)作一個(gè)回歸問題,使用CNN對(duì)輸入圖像進(jìn)行一次推理直接得到圖像中所有物體的位置、所屬類別及相應(yīng)的置信概率,極大地提升了目標(biāo)檢測(cè)的速度。
傳統(tǒng)的海戰(zhàn)場(chǎng)目標(biāo)識(shí)別系統(tǒng)將識(shí)別流程分為預(yù)處理、特征提取、特征融合和目標(biāo)檢測(cè)識(shí)別四個(gè)步驟,如圖6所示。
圖6 傳統(tǒng)識(shí)別系統(tǒng)流程
和傳統(tǒng)識(shí)別系統(tǒng)需要人工設(shè)計(jì)特征不同,基于深度學(xué)習(xí)技術(shù)的識(shí)別系統(tǒng)通過對(duì)大量訓(xùn)練數(shù)據(jù)的自動(dòng)學(xué)習(xí),提取出識(shí)別目標(biāo)所需要的重要特征,從而完成識(shí)別任務(wù),如圖7所示。
圖7 基于深度學(xué)習(xí)的識(shí)別系統(tǒng)流程
近年來,以卷積神經(jīng)網(wǎng)絡(luò)為主的深度學(xué)習(xí)技術(shù)在計(jì)算機(jī)視覺領(lǐng)域得到了廣泛應(yīng)用,關(guān)于深度學(xué)習(xí)技術(shù)為什么能夠奏效的討論也越來越多,總結(jié)來看,深度學(xué)習(xí)技術(shù)和傳統(tǒng)識(shí)別技術(shù)的區(qū)別主要表現(xiàn)在以下三個(gè)方面:
其一,特征提取的方式不同。在構(gòu)建傳統(tǒng)識(shí)別系統(tǒng)時(shí),需要手動(dòng)提取已被行業(yè)專家確定有效的多種特征,并應(yīng)用特征融合算法從中剔除冗余特征量,從而獲得用于分類器訓(xùn)練的特征;而卷積神經(jīng)網(wǎng)絡(luò)試圖從數(shù)據(jù)中學(xué)習(xí)特征,能夠大大減少發(fā)現(xiàn)特征的成本。此外,卷積神經(jīng)網(wǎng)絡(luò)從大量數(shù)據(jù)中學(xué)習(xí)到的特征對(duì)海戰(zhàn)場(chǎng)環(huán)境下受噪聲、遮擋以及尺度、姿態(tài)變化干擾的圖像更加魯棒。
其二,對(duì)訓(xùn)練數(shù)據(jù)體量和多樣性的依賴不同。隨著數(shù)據(jù)體量的增加,傳統(tǒng)識(shí)別系統(tǒng)的性能容易飽和;而基于深度學(xué)習(xí)技術(shù)的識(shí)別系統(tǒng)性能可以持續(xù)提升。此外,基于深度學(xué)習(xí)技術(shù)的識(shí)別對(duì)數(shù)據(jù)多樣性要求更高,同一類目標(biāo)的不同姿態(tài)尺度以及其他噪聲干擾圖像越多,訓(xùn)練得到的模型越魯棒。
其三,系統(tǒng)的運(yùn)行時(shí)間差別較大。傳統(tǒng)識(shí)別系統(tǒng)訓(xùn)練分類模型很快,但是在預(yù)測(cè)時(shí)提取線數(shù)據(jù)特征往往涉及復(fù)雜的圖像變換,在線數(shù)據(jù)預(yù)測(cè)的實(shí)時(shí)性難以保證;基于深度學(xué)習(xí)技術(shù)的識(shí)別系統(tǒng)有太多的參數(shù)需要學(xué)習(xí),需要很長時(shí)間訓(xùn)練,但是訓(xùn)練完成的模型在提取特征時(shí)只涉及簡單的四則運(yùn)算,能夠保證預(yù)測(cè)任務(wù)上的實(shí)時(shí)性。
基于深度學(xué)習(xí)的目標(biāo)檢測(cè)技術(shù)主要包括基于區(qū)域建議的R-CNN系列模型和基于回歸的YOLO模型。這兩類檢測(cè)技術(shù)的共同點(diǎn)是都使用卷積神經(jīng)網(wǎng)絡(luò)作為特征提取器,但解決目標(biāo)檢測(cè)的方式不同?;趨^(qū)域建議的R-CNN系列模型將目標(biāo)檢測(cè)問題分為給出可能存在目標(biāo)的區(qū)域和識(shí)別所有建議區(qū)域的目標(biāo)類別,而基于回歸的YOLO模型將目標(biāo)檢測(cè)問題轉(zhuǎn)換為回歸問題,運(yùn)行一次CNN直接得到所有目標(biāo)的位置、所屬類別和相應(yīng)的置信概率。因此,相比于基于回歸的YOLO模型,基于區(qū)域建議的R-CNN系列模型在實(shí)際應(yīng)用中目標(biāo)檢測(cè)率更高、定位更準(zhǔn)確(尤其是對(duì)小目標(biāo)),但檢測(cè)速度較慢。
目前,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)和識(shí)別技術(shù)發(fā)展迅速,但尚處于研究階段,實(shí)際應(yīng)用不多。胡炎等[18]在Faster R-CNN框架下構(gòu)建了一個(gè)僅3層的卷積神經(jīng)網(wǎng)絡(luò),并對(duì)4種不同海洋雜波環(huán)境的寬幅SAR圖像進(jìn)行測(cè)試,取得了較好的檢測(cè)結(jié)果;周奇[19]通過融合低層特征和抽象特征提出了一種新的YOLO網(wǎng)絡(luò)模型變種,實(shí)現(xiàn)了移動(dòng)輪船的實(shí)時(shí)檢測(cè)。
因?yàn)橛辛薎mageNet這樣百萬量級(jí)的帶標(biāo)簽數(shù)據(jù),卷積神經(jīng)網(wǎng)絡(luò)才能在計(jì)算機(jī)視覺領(lǐng)域大放異彩,可以說深度學(xué)習(xí)是一種數(shù)據(jù)驅(qū)動(dòng)型技術(shù)。就目前而言,實(shí)際應(yīng)用中還缺乏大量的帶標(biāo)簽數(shù)據(jù),傳統(tǒng)算法在一段時(shí)間內(nèi)將仍然是海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別的主要方法,但在海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別中應(yīng)用深度學(xué)習(xí)技術(shù)的趨勢(shì)已經(jīng)越來越明顯。
可以預(yù)見,通過不同渠道收集和標(biāo)注真實(shí)數(shù)據(jù),研究數(shù)據(jù)增強(qiáng)方法和尋找可遷移到海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別中的模型應(yīng)當(dāng)是今后的工作重點(diǎn)。此外,組合手動(dòng)提取的經(jīng)典特征和CNN提取的抽象特征用于分類、利用對(duì)高維特征有較強(qiáng)分類能力的SVM對(duì)CNN提取的特征進(jìn)行分類,被證明能夠提升識(shí)別準(zhǔn)確率,應(yīng)當(dāng)是今后的研究方向。最后,海戰(zhàn)場(chǎng)圖像目標(biāo)識(shí)別系統(tǒng)對(duì)目標(biāo)檢測(cè)和識(shí)別的快速性和準(zhǔn)確性有較高要求,所以基于端到端可訓(xùn)練網(wǎng)絡(luò)的識(shí)別技術(shù)將是未來研究的潮流。