謝奇芳, 姚國(guó)清, 張猛
(中國(guó)地質(zhì)大學(xué)(北京)信息工程學(xué)院,北京 100083)
隨著遙感圖像空間分辨率的不斷提升,對(duì)高分辨率遙感圖像中的地物目標(biāo)進(jìn)行快速而準(zhǔn)確的識(shí)別和檢測(cè)成為遙感應(yīng)用領(lǐng)域的研究熱點(diǎn)。傳統(tǒng)的目標(biāo)檢測(cè)方法[1-3]依靠人工提取圖像特征,導(dǎo)致特征通用性差。深度學(xué)習(xí)目標(biāo)檢測(cè)框架依靠卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural netwok,CNN)提取圖像特征,在圖像識(shí)別和檢測(cè)任務(wù)上取得了重大突破[4-5]。
2014年Girshick等[6]提出區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(regions with CNN,R-CNN)框架,第一次成功將深度學(xué)習(xí)引入到目標(biāo)檢測(cè)領(lǐng)域,首次實(shí)現(xiàn)使用搜索選擇算法產(chǎn)生候選窗口以及使用CNN提取圖像特征,極大提高了檢測(cè)精度。但R-CNN框架要對(duì)每一個(gè)候選窗口進(jìn)行特征提取,大量的重復(fù)計(jì)算導(dǎo)致檢測(cè)效率低下[7]。為解決效率問(wèn)題,2015年Girshick[8]提出快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Fast R-CNN)框架,該框架直接將整幅圖像輸入深度網(wǎng)絡(luò)進(jìn)行訓(xùn)練。在網(wǎng)絡(luò)的最后一個(gè)卷積層,借鑒He等[9]的思路提出獨(dú)特的感興趣區(qū)域池化(region of interest pooling,ROI Pooling)層[10],根據(jù)候選窗口的位置將對(duì)應(yīng)的特征從整個(gè)卷積層中裁剪出來(lái),消除了大量的重復(fù)運(yùn)算。此外,F(xiàn)ast R-CNN框架使用多任務(wù)損失函數(shù)對(duì)目標(biāo)分類和邊框回歸進(jìn)行聯(lián)合訓(xùn)練,進(jìn)一步提升了模型的檢測(cè)效果。隨著目標(biāo)檢測(cè)框架的發(fā)展,速度瓶頸集中在生成候選窗口的問(wèn)題上,2016年Ren等[11]提出的Faster R-CNN框架使用區(qū)域推薦網(wǎng)絡(luò)(region proposal network,RPN)代替搜索選擇算法產(chǎn)生候選窗口,并實(shí)現(xiàn)了RPN和目標(biāo)檢測(cè)網(wǎng)絡(luò)共享原始圖像的特征圖。至此,F(xiàn)aster R-CNN框架將特征提取、候選窗口生成、目標(biāo)分類和邊框回歸4個(gè)步驟統(tǒng)一到一個(gè)深度網(wǎng)絡(luò)框架之內(nèi),使得目標(biāo)檢測(cè)流程更為簡(jiǎn)潔,檢測(cè)精度得到大幅提升[12]。
高分辨率遙感圖像具有目標(biāo)物體體積小、數(shù)量多、位置多樣、地物干擾性大等特點(diǎn),本文以高分辨率遙感圖像中的機(jī)場(chǎng)為檢測(cè)場(chǎng)景、飛機(jī)為檢測(cè)目標(biāo),訓(xùn)練Faster R-CNN模型對(duì)飛機(jī)目標(biāo)進(jìn)行識(shí)別和檢測(cè)。飛機(jī)識(shí)別實(shí)驗(yàn)分別對(duì)完整飛機(jī)圖像和殘缺飛機(jī)圖像進(jìn)行識(shí)別,驗(yàn)證CNN在特征提取方面的優(yōu)勢(shì)。飛機(jī)檢測(cè)實(shí)驗(yàn)對(duì)大范圍機(jī)場(chǎng)中的多架飛機(jī)進(jìn)行目標(biāo)檢測(cè),驗(yàn)證Faster R-CNN模型能否適應(yīng)復(fù)雜的檢測(cè)環(huán)境并達(dá)到實(shí)際應(yīng)用性檢測(cè)效果。特征提取網(wǎng)絡(luò)是模型檢測(cè)效果的重要影響因素,本文分別使用VGG網(wǎng)絡(luò)[13]、Resnet-101網(wǎng)絡(luò)[14]和Inception-Resnet-v2網(wǎng)絡(luò)[15]作為Faster R-CNN模型中的特征提取網(wǎng)絡(luò),并通過(guò)制作相應(yīng)數(shù)據(jù)集和調(diào)整模型超參數(shù),使Faster R-CNN模型達(dá)到本文實(shí)驗(yàn)條件下的最佳檢測(cè)效果。
Faster R-CNN框架分為圖像特征提取、候選窗口生成、目標(biāo)分類和邊框回歸4個(gè)主要部分,首先,將原始圖像輸入網(wǎng)絡(luò),由特征提取網(wǎng)絡(luò)提取特征圖; 然后,將提取到的特征圖分別輸入到RPN網(wǎng)絡(luò)和ROI Pooling層,由RPN網(wǎng)絡(luò)產(chǎn)生候選窗口,并將生成的候選窗口映射到特征圖上; 接著,ROI Pooling層將每個(gè)候選窗口中的特征圖固定為統(tǒng)一尺寸; 最后,通過(guò)全連接層對(duì)目標(biāo)分類和邊框回歸進(jìn)行聯(lián)合訓(xùn)練,得到最終目標(biāo)檢測(cè)結(jié)果。Faster R-CNN框架如圖1所示。
圖1 Faster R-CNN框架
RPN網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,其中紅色框代表卷積核,灰色網(wǎng)格代表特征圖上的每一個(gè)像素點(diǎn)。卷積核在特征圖上以劃窗的形式進(jìn)行卷積,經(jīng)過(guò)一個(gè)全連接層后分別進(jìn)入分類層和回歸層。具體過(guò)程為: 首先,將特征圖上的每一個(gè)點(diǎn)映射回原圖作為整個(gè)感受野的中心點(diǎn),根據(jù)網(wǎng)絡(luò)預(yù)設(shè)的面積和長(zhǎng)寬比產(chǎn)生候選窗口; 然后,比較候選窗口與目標(biāo)真實(shí)位置的重疊度,把與目標(biāo)真實(shí)位置重疊度最大的候選窗口和重疊度超過(guò)70%的候選窗口記為正樣本,與目標(biāo)真實(shí)位置重疊度小于30%的候選窗口記為負(fù)樣本; 最后,以正負(fù)樣本1∶1的比例來(lái)訓(xùn)練RPN網(wǎng)絡(luò),其他候選窗口不參加訓(xùn)練。
圖2 RPN網(wǎng)絡(luò)結(jié)構(gòu)
使用上述樣本進(jìn)行RPN網(wǎng)絡(luò)訓(xùn)練,經(jīng)過(guò)訓(xùn)練后的RPN網(wǎng)絡(luò)輸出每一個(gè)候選窗口中存在檢測(cè)目標(biāo)的概率pi和候選窗口的寬高及其中心坐標(biāo)ti,RPN網(wǎng)絡(luò)的總損失函數(shù)為
(1)
(2)
(3)
本文實(shí)驗(yàn)采用VGG,Resnet-101和Inception-Resnet-v2這3種CNN提取圖像特征,CNN的基本結(jié)構(gòu)包括輸入層、卷積層、池化層、全連接層和輸出層,隨著網(wǎng)絡(luò)層次結(jié)構(gòu)不斷加深,特征提取能力也在不斷增強(qiáng)。VGG網(wǎng)絡(luò)使用一組堆疊起來(lái)的小卷積核代替原始的大卷積核,有效減少了網(wǎng)絡(luò)參數(shù)和計(jì)算復(fù)雜度; Resnet-101網(wǎng)絡(luò)通過(guò)添加自身映射層保持網(wǎng)絡(luò)在層數(shù)很深時(shí)仍可以得到有效訓(xùn)練,避免了網(wǎng)絡(luò)訓(xùn)練時(shí)的梯度消失; Inception-Resnet-v2網(wǎng)絡(luò)用已有的稠密連接層來(lái)近似一個(gè)稀疏的結(jié)構(gòu),避免了參數(shù)增加帶來(lái)的過(guò)擬合問(wèn)題。
實(shí)驗(yàn)基于Ubuntu 16.0.4操作系統(tǒng),使用圖形處理器(graphics processing unit,GPU)版Tensorflow 作為深度學(xué)習(xí)框架,GPU型號(hào)為T(mén)esla k80。
實(shí)驗(yàn)數(shù)據(jù)信息如表1所示。
表1 實(shí)驗(yàn)數(shù)據(jù)信息
本文目標(biāo)檢測(cè)實(shí)驗(yàn)流程如圖3所示。
圖3 高分辨率遙感圖像目標(biāo)檢測(cè)實(shí)驗(yàn)流程
首先對(duì)高分辨率遙感圖像進(jìn)行裁剪和數(shù)據(jù)預(yù)處理,飛機(jī)識(shí)別實(shí)驗(yàn)和飛機(jī)檢測(cè)實(shí)驗(yàn)均使用0.5 m空間分辨率的全色遙感圖像制作訓(xùn)練集,其中飛機(jī)識(shí)別實(shí)驗(yàn)訓(xùn)練集采用大小為200×200的圖像160張,飛機(jī)檢測(cè)實(shí)驗(yàn)訓(xùn)練集采用大小為900×900的圖像340張。分別將2個(gè)實(shí)驗(yàn)的訓(xùn)練集輸入Faster R-CNN模型進(jìn)行訓(xùn)練,飛機(jī)識(shí)別實(shí)驗(yàn)采用VGG網(wǎng)絡(luò)作為模型的特征提取網(wǎng)絡(luò),飛機(jī)檢測(cè)實(shí)驗(yàn)采用Resnet-101網(wǎng)絡(luò)和Inception-Resnet-v2網(wǎng)絡(luò)作為模型的特征提取網(wǎng)絡(luò)。訓(xùn)練結(jié)束后保存模型并制作高分辨率遙感圖像測(cè)試集,飛機(jī)識(shí)別實(shí)驗(yàn)的測(cè)試集采用大小為200×200的0.5 m空間分辨率全色遙感圖像40張,飛機(jī)檢測(cè)實(shí)驗(yàn)測(cè)試集分別采用大小為4 000×2 500的0.5 m空間分辨率全色遙感圖像24張和大小為1 600×1 000的2 m空間分辨率多光譜彩色遙感圖像10張。使用訓(xùn)練好的模型對(duì)測(cè)試集進(jìn)行飛機(jī)識(shí)別和檢測(cè),并對(duì)最終結(jié)果進(jìn)行目視解譯和評(píng)價(jià)指標(biāo)計(jì)算。
采用F1分?jǐn)?shù)作為Faster R-CNN模型檢測(cè)性能的評(píng)價(jià)指標(biāo),它同時(shí)兼顧了檢測(cè)模型的準(zhǔn)確率和召回率。準(zhǔn)確率指正確檢測(cè)的飛機(jī)數(shù)與所有檢測(cè)到的飛機(jī)數(shù)之間的比率,衡量模型的查準(zhǔn)率; 召回率指正確檢測(cè)到的飛機(jī)數(shù)與圖像中所有飛機(jī)數(shù)之間的比率,衡量模型的查全率。一般情況下,隨著召回率的上升,準(zhǔn)確率會(huì)有所下降,F(xiàn)1分?jǐn)?shù)可以看作是模型準(zhǔn)確率和召回率的一種加權(quán)平均,其取值在0~1之間,數(shù)值越接近1說(shuō)明模型的檢測(cè)性能越好。
本部分對(duì)實(shí)驗(yàn)數(shù)據(jù)集、實(shí)驗(yàn)參數(shù)進(jìn)行介紹,并使用評(píng)價(jià)指標(biāo)對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了分析,在保證合理性的情況下對(duì)模型的適用性進(jìn)行了拓展。
2.3.1 飛機(jī)識(shí)別實(shí)驗(yàn)
飛機(jī)識(shí)別實(shí)驗(yàn)訓(xùn)練集部分圖像如圖4所示。
(a) 完整飛機(jī)(b) 殘缺飛機(jī) (c) 多架飛機(jī)
訓(xùn)練集圖像包含以下3種情況: 完整飛機(jī)圖像(圖4(a)); 將完整飛機(jī)圖像分割為機(jī)頭、機(jī)尾和機(jī)翼的殘缺飛機(jī)圖像(圖4(b)); 包含多架不規(guī)則殘缺飛機(jī)的圖像(圖4(c))。
模型訓(xùn)練過(guò)程中使用經(jīng)過(guò)COCO(common objects in context)數(shù)據(jù)集[16]預(yù)訓(xùn)練的參數(shù)進(jìn)行初始化,設(shè)置Faster R-CNN模型每次訓(xùn)練3個(gè)樣本,學(xué)習(xí)率為0.000 3。Faster R-CNN模型的初始損失值為1.859 8,經(jīng)過(guò)1 000次訓(xùn)練后損失值開(kāi)始收斂,經(jīng)過(guò)4 000次訓(xùn)練后損失值穩(wěn)定在0.164 3。
飛機(jī)識(shí)別實(shí)驗(yàn)結(jié)果(圖5)表明,F(xiàn)aster R-CNN模型能夠準(zhǔn)確地識(shí)別出圖像中的完整飛機(jī)和殘缺飛機(jī),CNN提取到的特征具有平移旋轉(zhuǎn)不變性并且Faster R-CNN模型能夠通過(guò)局部特征識(shí)別目標(biāo)物體,克服了傳統(tǒng)方法由于物體特征不完整導(dǎo)致識(shí)別失敗的難題。
(a) 完整飛機(jī)(b) 殘缺飛機(jī) (c) 多架飛機(jī)
2.3.2 飛機(jī)檢測(cè)實(shí)驗(yàn)
飛機(jī)檢測(cè)實(shí)驗(yàn)訓(xùn)練集部分圖像如圖6所示。
(a) 場(chǎng)景1 (b) 場(chǎng)景2 (c) 場(chǎng)景3
圖像展示了較大的機(jī)場(chǎng)范圍,每張圖像中包含30架以上不同大小和不同停放位置的飛機(jī)。圖像中存在大量干擾物,其中房屋、道路、汽車和登機(jī)橋等干擾物與飛機(jī)特征存在一定的相似性。
模型訓(xùn)練過(guò)程中使用經(jīng)過(guò)COCO數(shù)據(jù)集預(yù)訓(xùn)練的模型參數(shù)進(jìn)行初始化,訓(xùn)練時(shí)設(shè)置Faster R-CNN模型每次訓(xùn)練1個(gè)樣本,學(xué)習(xí)率為0.000 2,使用Inception-Resnet-v2網(wǎng)絡(luò)的Faster R-CNN模型初始損失值為2.013 4,經(jīng)過(guò)4 000次訓(xùn)練后損失值開(kāi)始收斂,經(jīng)過(guò)8 000次訓(xùn)練后損失值穩(wěn)定在0.313 0。使用Resnet-101網(wǎng)絡(luò)的Faster R-CNN模型初始損失值為1.423 0,經(jīng)過(guò)3 000次訓(xùn)練后損失值開(kāi)始收斂,經(jīng)過(guò)8 000次訓(xùn)練后損失值穩(wěn)定在0.275 0。
使用Inception-Resnet-v2網(wǎng)絡(luò)和Resnet-101網(wǎng)絡(luò)的Faster R-CNN模型在全色遙感圖像測(cè)試集上的檢測(cè)結(jié)果如圖7所示。
(a) Inception-Resnet-v2網(wǎng)絡(luò)場(chǎng)景1 (b) Resnet-101網(wǎng)絡(luò)場(chǎng)景1
(c) Inception-Resnet-v2網(wǎng)絡(luò)場(chǎng)景2 (d) Resnet-101網(wǎng)絡(luò)場(chǎng)景2
(e) Inception-Resnet-v2網(wǎng)絡(luò)場(chǎng)景3 (f) Resnet-101網(wǎng)絡(luò)場(chǎng)景3
場(chǎng)景1圖像中包含房屋、道路和植被等多種干擾物,共有21架飛機(jī),飛機(jī)輪廓完整,??课恢帽容^集中,與背景的對(duì)比度較高,檢測(cè)難點(diǎn)在于飛機(jī)的體積較小以及其他地物干擾性較大。從檢測(cè)結(jié)果可以看到,使用2種特征提取網(wǎng)絡(luò)的Faster R-CNN模型均能達(dá)到良好的檢測(cè)效果,其中使用Inception-Resnet-v2網(wǎng)絡(luò)的模型檢測(cè)出了圖中所有的飛機(jī),使用Resnet-101網(wǎng)絡(luò)的模型對(duì)于體積較小的飛機(jī)存在漏檢現(xiàn)象,2個(gè)模型均沒(méi)有發(fā)生誤檢情況。檢測(cè)結(jié)果如圖7(a)和(b)所示。
場(chǎng)景2圖像中包括登機(jī)橋、跑道和房屋等干擾物,共有50架飛機(jī),有2架殘缺飛機(jī),飛機(jī)體積差別較大,飛機(jī)與背景的對(duì)比度較低。檢測(cè)難點(diǎn)在于模型能否檢測(cè)到圖中所有的飛機(jī)并且成功識(shí)別出殘缺飛機(jī)。從檢測(cè)結(jié)果可以看到使用2種特征提取網(wǎng)絡(luò)的Faster R-CNN模型均能達(dá)到良好的檢測(cè)效果,其中使用Inception-Resnet-v2網(wǎng)絡(luò)的模型成功識(shí)別出2架殘缺飛機(jī)并且無(wú)誤檢情況,模型對(duì)目標(biāo)物體定位準(zhǔn)確,對(duì)比度對(duì)于檢測(cè)結(jié)果影響較小。使用Resnet-101網(wǎng)絡(luò)的模型漏檢了2架體積較大的飛機(jī),檢測(cè)結(jié)果受目標(biāo)與背景對(duì)比度影響較大。此外,可以明顯地觀察到使用Resnet-101網(wǎng)絡(luò)的模型對(duì)目標(biāo)的定位不夠準(zhǔn)確,候選窗口與飛機(jī)的真實(shí)位置存在的偏差,其中一架飛機(jī)的機(jī)頭位于候選窗口之外。檢測(cè)結(jié)果如圖7(c)和(d)所示。
場(chǎng)景3圖像中飛機(jī)體積小,有大量的房屋并存在與飛機(jī)形態(tài)具有相似性的地物。檢測(cè)難點(diǎn)在于對(duì)小飛機(jī)的準(zhǔn)確定位和區(qū)分與飛機(jī)形態(tài)具有相似性的地物。從檢測(cè)結(jié)果可以看到使用Inception-Resnet-v2網(wǎng)絡(luò)的模型對(duì)于小飛機(jī)的檢測(cè)效果較好,但是存在2處將其他地物誤檢為飛機(jī)的情況,使用Resnet-101網(wǎng)絡(luò)的模型無(wú)法準(zhǔn)確定位小飛機(jī)的位置,檢測(cè)效果較差。檢測(cè)結(jié)果如圖7(e)和(f)所示。
Faster R-CNN模型基于全色遙感圖像數(shù)據(jù)集的評(píng)價(jià)指標(biāo)如表2所示。
表2 Faster R-CNN模型基于全色遙感圖像數(shù)據(jù)集評(píng)價(jià)指標(biāo)
測(cè)試集共有24張圖像,包含338架飛機(jī),使用Inception-Resnet-v2網(wǎng)絡(luò)的模型總共檢測(cè)出330架飛機(jī),其中正確檢測(cè)326架,誤檢4架,漏檢12架,準(zhǔn)確率為98.79%,召回率為96.45%,F(xiàn)1分?jǐn)?shù)值為0.976 3,在高準(zhǔn)確率的情況下保證了良好的召回率,模型檢測(cè)效果可以達(dá)到實(shí)際應(yīng)用性水平。使用Resnet-101網(wǎng)絡(luò)的模型總共檢測(cè)出292架飛機(jī),其中正確檢測(cè)291架飛機(jī),誤檢1架,漏檢47架,準(zhǔn)確率為99.66%,召回率為86.09%,F(xiàn)1分?jǐn)?shù)值為0.923 8。相比于使用Inception-Resnet-v2網(wǎng)絡(luò)模型的檢測(cè)結(jié)果,該模型召回率有所下降,但仍認(rèn)為其具有較好的檢測(cè)水平。
為進(jìn)一步驗(yàn)證2個(gè)模型的適用性,使用Faster R-CNN模型對(duì)2 m空間分辨率的多光譜遙感圖像進(jìn)行檢測(cè),均得到了良好的檢測(cè)效果,部分檢測(cè)結(jié)果如圖8所示。
(a) Inception-Resnet-v2網(wǎng)絡(luò) (b) Resnet-101網(wǎng)絡(luò)
本文使用Faster R-CNN模型對(duì)高分辨率遙感圖像中的飛機(jī)目標(biāo)進(jìn)行識(shí)別和檢測(cè),由實(shí)驗(yàn)結(jié)果得到以下結(jié)論:
1)經(jīng)過(guò)訓(xùn)練的Faster R-CNN模型能夠成功檢測(cè)飛機(jī)目標(biāo),在目前的實(shí)驗(yàn)條件下,使用Inception-Resnet-v2網(wǎng)絡(luò)的Faster R-CNN模型取得了最好的檢測(cè)效果,F(xiàn)1分?jǐn)?shù)為0.976 3,高準(zhǔn)確率的同時(shí)也保證了良好的召回率,解決了傳統(tǒng)方法中準(zhǔn)確率和召回率相互影響的難題。
2)特征提取網(wǎng)絡(luò)能夠快速有效地提取圖像特征,克服了人工提取特征的不確定性,并且可以通過(guò)部分特征完成對(duì)目標(biāo)物體的識(shí)別。
3)特征提取網(wǎng)絡(luò)具有各自的適用性,VGG網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,運(yùn)行速度快,能夠完成簡(jiǎn)單的目標(biāo)識(shí)別任務(wù),但是無(wú)法在復(fù)雜的環(huán)境中達(dá)到優(yōu)秀的目標(biāo)檢測(cè)效果。Resnet-101網(wǎng)絡(luò)和Inception-Resnet-v2網(wǎng)絡(luò)具有更深的網(wǎng)絡(luò)結(jié)構(gòu)和更強(qiáng)的特征提取能力,能夠在復(fù)雜的機(jī)場(chǎng)環(huán)境中準(zhǔn)確而全面地檢測(cè)飛機(jī)目標(biāo)。實(shí)驗(yàn)結(jié)果表明,使用更深層的特征提取網(wǎng)絡(luò)可以有效提升Faster R-CNN模型的目標(biāo)檢測(cè)水平,但復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)時(shí)間成本大,對(duì)于實(shí)驗(yàn)的硬件水平有更高的要求。
4)經(jīng)過(guò)訓(xùn)練的Faster R-CNN模型可以成功地對(duì)高分辨率遙感圖像進(jìn)行目標(biāo)檢測(cè),并且模型具有較強(qiáng)的魯棒性,能夠適應(yīng)不同空間分辨率和類別的高分辨率遙感圖像。