王浩桐,郭中華,2*
(1.寧夏大學(xué) 物理與電子電氣工程學(xué)院,寧夏 銀川 750021;2.寧夏沙漠信息智能感知重點(diǎn)實驗室,寧夏 銀川 750021)
隨著遙感技術(shù)的發(fā)展,遙感圖像目標(biāo)檢測在軍事和民用領(lǐng)域有著廣泛應(yīng)用,其中光學(xué)飛機(jī)遙感圖像目標(biāo)檢測已經(jīng)成為遙感領(lǐng)域的重要研究方向之一[1]。飛機(jī)遙感圖像目標(biāo)檢測的核心任務(wù)是判斷遙感圖像中是否存在飛機(jī)目標(biāo)并對其進(jìn)行檢測、特征提取、分類和定位。傳統(tǒng)的遙感圖像目標(biāo)檢測算法需要手工定義特征,如模板匹配或機(jī)器學(xué)習(xí)等方法[2]。此類方法定義的特征魯棒性差,對尺度多變和背景復(fù)雜的遙感圖像難以進(jìn)行有效的目標(biāo)檢測?,F(xiàn)今,得益于硬件GPU的高性能計算,基于深度學(xué)習(xí)的目標(biāo)檢測模型成為遙感圖像領(lǐng)域的研究熱點(diǎn)[3]。目前基于卷積神經(jīng)網(wǎng)絡(luò)[4](Convolutional Neural Network,CNN)的目標(biāo)檢測算法主要分為兩類,一類是以Fast R-CNN[5]和Faster R-CNN[6]為代表的兩階段目標(biāo)檢測算法,另一類是以YOLO[7](YOU Only Look Once)和SSD[8]為代表的單階段目標(biāo)檢測算法。
以上算法常用于檢測日常生活中的通用物體,對尺度大小不一和背景復(fù)雜的遙感圖像難以進(jìn)行有效的飛機(jī)目標(biāo)檢測。如果直接將現(xiàn)有的深度學(xué)習(xí)目標(biāo)檢測算法應(yīng)用到遙感影像上進(jìn)行飛機(jī)目標(biāo)檢測,顯然是不能得到等同于自然光學(xué)圖像的檢測精度。因此,對常用物體的目標(biāo)檢測算法進(jìn)行改進(jìn),變得更加適合于遙感圖像的目標(biāo)檢測算法已成為了近年來的熱點(diǎn)問題之一[9]。文獻(xiàn)[10-11]使用Faster-RCNN算法對遙感圖像進(jìn)行目標(biāo)檢測,該算法取得的檢測精度較好,但檢測效率偏低,基本不能滿足實時檢測的條件。文獻(xiàn)[12-13]在使用SSD算法的基礎(chǔ)上,結(jié)合特征金字塔網(wǎng)絡(luò)[14](Feature pyramid networks,F(xiàn)PN)結(jié)構(gòu)的優(yōu)勢,得到一種基于特征融合的遙感圖像目標(biāo)檢測算法。該算法在滿足實時檢測條件的同時也一定程度上提高了遙感目標(biāo)的檢測精度,但是對于小尺度的飛機(jī)遙感目標(biāo)來說,檢測精度一般較差。對以上4篇目標(biāo)檢測文獻(xiàn)的優(yōu)缺點(diǎn)進(jìn)行分析可知,高檢測精度與實時檢測往往不能同時兼顧,可能有如下兩個原因:其一,飛機(jī)遙感圖像經(jīng)常存在場景復(fù)雜多變和目標(biāo)尺度大小不一的情況。雖然使用了FPN進(jìn)行多尺度特征融合,但是特征融合的程度并不能滿足飛機(jī)遙感目標(biāo)的高精度檢測,還增加了網(wǎng)絡(luò)的訓(xùn)練參數(shù),降低了模型的檢測效率。其二,在模型訓(xùn)練的過程中默認(rèn)了所有特征圖通道的重要程度都是一致的,缺少通道之間的關(guān)聯(lián)性會導(dǎo)致算法最終的檢測精度不夠理想。
為實現(xiàn)飛機(jī)遙感目標(biāo)的高精度檢測,本文首先使用改進(jìn)后的深度殘差網(wǎng)絡(luò)[15](Deep residual network,ResNet)替換了SSD算法的VGG[16](Visual geometry group)特征提取網(wǎng)絡(luò),用以提升算法對飛機(jī)遙感圖像的特征提取能力。而后設(shè)計了一種新型特征金字塔網(wǎng)絡(luò)用以實現(xiàn)不同層級的特征圖之間的特征融合。本文設(shè)計的新型網(wǎng)絡(luò)可以提高算法對不同尺度飛機(jī)目標(biāo)的特征提取能力,對小尺度飛機(jī)目標(biāo)的檢測精度有較大的提升。同時本文還使用了注意力機(jī)制網(wǎng)絡(luò)[17](Squeeze-and-excitation networks,SENet)和聚焦分類損失函數(shù)[18](Focal classification loss),用以提升網(wǎng)絡(luò)學(xué)習(xí)的有效性,改進(jìn)后的算法僅需較少的時間代價即可帶來較高的檢測精度提升。
SSD是一種端對端的單階段目標(biāo)檢測算法,該算法在檢測效率和檢測精度上有著較好的平衡性。除此之外,該算法的優(yōu)勢主要有3個方面:其一,采用多種尺度特征進(jìn)行目標(biāo)檢測。Conv4_3、FC7 層在原圖上的感受野較小,主要用于檢測較小目標(biāo)物體,而 Conv8_2、Conv9_ 2、Conv10_2、Conv11_2 在原圖上的感受野較大主要用來檢測較大目標(biāo)物體;其二,設(shè)置不同高寬比例的錨框用以更好地匹配目標(biāo);其三,多種數(shù)據(jù)增強(qiáng)的方法使得算法對輸入不同大小和不同形狀的目標(biāo)具有更好的魯棒性。本文以輸入尺寸為300×300的SSD網(wǎng)絡(luò)為例,如圖1所示。
圖1 SSD300網(wǎng)絡(luò)結(jié)構(gòu)圖
特征金字塔網(wǎng)絡(luò)是一種將不同層級的特征圖通過自上而下的方式進(jìn)行特征信息融合的網(wǎng)絡(luò)。本文所提到的原始FPN是以SSD的骨架網(wǎng)絡(luò)輸出的6個特征圖為基礎(chǔ)進(jìn)行融合的結(jié)果。不同層級的特征圖融合的優(yōu)勢在于彌補(bǔ)了特征層之間的語義差距。特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。0.5×和2×分別表示特征圖下采樣(縮小)2倍和特征圖上采樣(擴(kuò)大)2倍,特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 特征金字塔網(wǎng)絡(luò)
ResNet是一種用于特征提取的卷積神經(jīng)網(wǎng)絡(luò)。因為其具有高效性和實用性廣泛用于計算機(jī)視覺目標(biāo)檢測領(lǐng)域。以往的特征提取網(wǎng)絡(luò)經(jīng)常會面臨網(wǎng)絡(luò)層數(shù)過深而導(dǎo)致性能退化的問題。ResNet的不同之處在于提出了殘差結(jié)構(gòu)來解決網(wǎng)絡(luò)退化的問題,殘差結(jié)構(gòu)如圖3(a)所示。
圖3 殘差結(jié)構(gòu)
在殘差結(jié)構(gòu)中,當(dāng)輸入為x時,原始特征記為H(x),殘差特征記為F(x)。則網(wǎng)絡(luò)學(xué)習(xí)到的殘差特征可以表示為:
F(x)=H(x)-x.
(1)
與原始特征H(x)相比,深度殘差網(wǎng)絡(luò)更容易學(xué)習(xí)到殘差特征F(x)。在理想狀態(tài)下,當(dāng)F(x)為0時,ResNet僅僅只是完成了恒等映射的任務(wù),網(wǎng)絡(luò)的學(xué)習(xí)能力不會因?qū)訑?shù)的增多而下降。實際上F(x)并不會等于0或者一直等于0,殘差結(jié)構(gòu)總會通過輸入學(xué)習(xí)到新的特征,網(wǎng)絡(luò)的學(xué)習(xí)性能自然會更好[19]。ResNet101與VGG16兩種特征提取網(wǎng)絡(luò)以Faster-RCNN作為目標(biāo)檢測算法的成績?nèi)绫?所示[15]。
表1 使用Faster R-CNN 的兩種特征提取網(wǎng)絡(luò)在PASCAL VOC 2007/2012數(shù)據(jù)集上進(jìn)行目標(biāo)檢測(mAP)
本文改進(jìn)后的殘差結(jié)構(gòu)如圖3(b)所示,相比于原殘差結(jié)構(gòu)增加了批量歸一化(Batch Normalization, BN)[20]和Leaky-relu[21]。BN的作用是為了對輸出特征圖進(jìn)行歸一化處理,加快網(wǎng)絡(luò)的收斂速度,同時也能一定程度上解決梯度爆炸或者梯度消失導(dǎo)致網(wǎng)絡(luò)無法訓(xùn)練的問題。ReLU激活函數(shù)的特點(diǎn)是當(dāng)輸入小于0時,輸出結(jié)果恒為0。這樣的結(jié)果會導(dǎo)致網(wǎng)絡(luò)可能會丟失一部分特征信息,個別情況下會導(dǎo)致對應(yīng)權(quán)重?zé)o法更新從而無法學(xué)習(xí)到有效的特征。而Leaky-relu激活函數(shù)即使在輸入小于0時,仍然會有不為0的輸出,使得模型能夠持續(xù)更新權(quán)重和學(xué)習(xí)特征。
通過以上分析可知,ResNet相比于SSD算法中的骨架網(wǎng)絡(luò)(VGG16)有著更好的特征提取能力。在模型大小與計算量方面,ResNet50在分類精度與 ResNet101相差不多的情況下,計算量遠(yuǎn)小于后者。因此在改進(jìn)的過程中,首先將SSD原本的骨架網(wǎng)絡(luò)VGG16替換為網(wǎng)絡(luò)層數(shù)相對更深且計算量相對較低的ResNet50。為了讓ResNet50網(wǎng)絡(luò)適合作為SSD算法的骨架網(wǎng)絡(luò),現(xiàn)對ResNet50網(wǎng)絡(luò)做部分調(diào)整,刪除和添加一些層作為網(wǎng)絡(luò)輸出的特征圖。
在SSD算法中有6個尺度和通道數(shù)都不相同的輸出特征圖。為了與SSD算法的輸出特征圖相匹配,對于輸入尺寸為300×300×3的ResNet50,對Conv4_x的第一個殘差結(jié)構(gòu)進(jìn)行修改,將短路連接(Shortcut connection)上的卷積核的步長由2修改為1,Conv4_x的輸出就變成了38×38×1 024。將其作為SSD算法中的第二個輸出特征圖(Feature map 2),與修改前的輸出結(jié)果(38×38×512)相比,可以發(fā)現(xiàn)輸出特征圖的通道數(shù)增加了一倍,得益于殘差結(jié)構(gòu)的優(yōu)點(diǎn),輸出特征圖可以學(xué)習(xí)到的特征信息量變得更加豐富。改進(jìn)后的Conv4_x結(jié)構(gòu)如圖4(a)所示,Blockx(x:2,3,4,5,6)由圖3(b)組成。當(dāng)輸入尺寸為300×300×3時,Conv5_x的特征輸出層尺寸和SSD算法的第2個特征輸出層尺寸不一致,故刪除ResNet50網(wǎng)絡(luò)里Conv4_x之后的層結(jié)構(gòu),額外設(shè)計了5個輸出特征圖Feature map(2~6)。在每次縮小輸出特征圖尺寸前使用1×1的卷積核重新聚合前層的特征信息并調(diào)整通道數(shù),之后再次用3×3的卷積核進(jìn)行輸出特征圖尺寸的縮小,循環(huán)此操作達(dá)到多尺度輸出特征圖的結(jié)果。
(a)Conv4_x層
Feature map(1~6)是改進(jìn)后的殘差模塊與額外添加層的輸出結(jié)果,因而可以在保證模型訓(xùn)練收斂的同時使特征提取網(wǎng)絡(luò)具有更好的語義抽象能力,改進(jìn)后的ResNet50如圖4(b)所示。
本文提出了一種新型特征金字塔網(wǎng)絡(luò),如圖5(a)所示。該網(wǎng)絡(luò)除卻FPN經(jīng)典的自上向下的卷積網(wǎng)絡(luò)以外,還有S模塊與Conv Moudule 1模塊兩個部分組成。
(a)改進(jìn)后的SSD網(wǎng)絡(luò)結(jié)構(gòu)圖
(1)S模塊(特征感受野增強(qiáng)模塊+注意力機(jī)制模塊)
特征感受野增強(qiáng)模塊如圖5(b)虛線左側(cè)所示,該模塊由并行卷積核和短路連接兩部分組成。在并行卷積核的部分中,在使用3×3,5×5,Maxpool卷積核進(jìn)行不同尺度目標(biāo)的特征感受野增強(qiáng)之前,首先使用1×1卷積核進(jìn)行通道數(shù)的減少,這樣的操作減少了網(wǎng)絡(luò)的訓(xùn)練參數(shù),變相地提高了網(wǎng)絡(luò)的效率。另外,空洞卷積的好處不僅在于可以學(xué)到更多的特征信息,還可以增大飛機(jī)目標(biāo)的感受野。不同的空洞率還附帶有下采樣的效果,使網(wǎng)絡(luò)學(xué)習(xí)到的特征信息更加豐富[22]。并行卷積核的輸出與短路連接的1×1直連卷積核連接,進(jìn)行通道之間的拼接特征融合(Connection)。將特征感受野增強(qiáng)模塊添加到不同層級的特征圖之間,不僅可以提升特征圖對飛機(jī)目標(biāo)的感受野,還可以增強(qiáng)網(wǎng)絡(luò)對小尺度飛機(jī)目標(biāo)的檢測能力。
在傳統(tǒng)FPN結(jié)構(gòu)中,對于同級特征圖部分僅通過簡單線性疊加方式進(jìn)行特征融合,而注意力機(jī)制可對特征圖內(nèi)部不同位置特征施以差異性權(quán)重值,有選擇性地激活任務(wù)相關(guān)區(qū)域,抑制次要信息以提升模型效果[23]。為此,本文設(shè)計帶有SENet的FPN結(jié)構(gòu)模塊,其具體操作模塊如圖5(b)虛線右側(cè)所示。首先通過全局平均池化得到每個通道上的均值,使二維的特征通道變成一個具有全局感受野的實數(shù)。而后通過一個FC(全連接層)將特征維度降低到輸入的1/16(R=16),經(jīng)過 ReLu 激活后,再通過一個 FC 層升回到原來的維度。這樣的操作比直接用一個 FC 層更具有優(yōu)勢:(1)可以具有更多的非線性且更好地擬合通道間復(fù)雜的相關(guān)性;(2)極大地減少了參數(shù)量和計算量。降維和升維操作之后再通過一個Sigmoid激活函數(shù)得到歸一化的權(quán)重,最后通過一個Scale的操作將歸一化后的權(quán)重加權(quán)到每個通道的特征上。
(2)Conv Module 1
結(jié)構(gòu)為自頂向下的FPN是為了解決高低階特征圖中語義與位置信息間的矛盾,實現(xiàn)對高低階不同尺度特征有效融合。但是傳統(tǒng)的FPN僅含有自頂向下的結(jié)構(gòu),沒有自下而上的結(jié)構(gòu),換言之就是低階特征圖含有高階特征圖的特征信息,而高階特征圖中不含有低階特征圖的特征信息。為了使高階特征圖包含經(jīng)過S模塊增強(qiáng)后的低階特征信息,本文設(shè)計了Conv Moudule 1模塊。將通過此模塊處理后的特征信息與高階特征圖(Feature map 3,F(xiàn)eature map 4,F(xiàn)eature map 5)相加得到新的深層特征圖,保證不同階數(shù)的特征圖含有特征信息的完整性。其中Maxpool層池化后的寬和高等于與之相加特征圖的寬和高。1×1卷積核是為了調(diào)整通道數(shù),同時也為了減少卷積操作需要的訓(xùn)練參數(shù)。3×3卷積核的卷積模式為“same”,即不改變特征圖的尺寸大小。BN和Leaky-ReLU的引入使得Conv Module 1具有一定的非線性和加快網(wǎng)絡(luò)收斂速度的特性。Conv Module 1具體如圖5(a)虛線框內(nèi)的結(jié)構(gòu)所示。
針對模型訓(xùn)練過程中遙感圖像正、負(fù)樣本劃分不平衡的問題,本文將使用聚焦分類損失函數(shù)對網(wǎng)絡(luò)模型進(jìn)行優(yōu)化訓(xùn)練,公式具體表示為:
L(x,c,p,l,g)=
(2)
式中:N表示與真實框相匹配的候選框的個數(shù),x為輸入圖像,c為目標(biāo)類別,p為預(yù)測類別概率,l為候選框,g代表真實的標(biāo)簽框,a為兩者的權(quán)重。Lfl(x,c,p)和Lloc(x,l,g)分別為聚焦分類損失和邊界框回歸損失,其中Lloc(x,l,g)借鑒SSD算法中的邊界框回歸函數(shù),表示為:
Lloc(x,l,g)=
(3)
式(2)中的Lfl(x,c,p)結(jié)合聚焦分類損失函數(shù)采用交叉熵計算損失,表示為:
(4)
本文采用西北工業(yè)大學(xué)開源的遙感圖像數(shù)據(jù)集NWPU VHR-10[24]進(jìn)行飛機(jī)遙感圖像目標(biāo)檢測實驗,數(shù)據(jù)集包含尺寸大小不同的圖片并且按照7∶3的比例來隨機(jī)劃分訓(xùn)練集和驗證集。依據(jù)數(shù)據(jù)集對目標(biāo)面積大小劃分的標(biāo)準(zhǔn)(Small object: area < 322;Medium object: 322< area < 962;Big object: area > 962)對采集的光學(xué)遙感數(shù)據(jù)集進(jìn)行劃分,由于一些飛機(jī)在小分辨率的情況下只有極少的像素個數(shù),已很難通過人眼確定是否為飛機(jī),因此,僅對像素個數(shù)超過6個的目標(biāo)進(jìn)行劃分。圖6為本文數(shù)據(jù)集的樣本示例,面積類型從左到右分別為Small object,Medium object,Big object。
圖6 本文數(shù)據(jù)集的樣本示例
本文的實驗環(huán)境選用 Pytorch 開源框架進(jìn)行訓(xùn)練、測試,基于ubuntu16.04操作系統(tǒng),CPU為Inter Corei9-9900K,3.60 GHz,顯卡為NVIDIIA GTX2080。編譯環(huán)境為 torch-1.6、torchvision-0.7,cuda10.1、python 3.6 語言編程。
(5)
(6)
式(5)和(6)中TP為正樣本中的正例,F(xiàn)P為負(fù)樣本中的正例,F(xiàn)N為負(fù)樣本中的負(fù)例。此外,F(xiàn)PS決定了算法的效率,其數(shù)值的大小反映了檢測速度的快慢[25]。
為了初步評估改進(jìn)SSD算法的性能,本文選取了驗證集中3張具有代表性的圖片,并使用幾種經(jīng)典目標(biāo)檢測算法和改進(jìn)后的算法進(jìn)行橫向結(jié)果比較。比較結(jié)果如圖7所示,其中3張具有代表性的圖片如圖7(a)所示。第一張圖片是飛機(jī)遙感目標(biāo)存在于復(fù)雜環(huán)境背景下的情況;第二張圖片是同時含有復(fù)雜環(huán)境背景和飛機(jī)遙感目標(biāo)密集分布的情況;第三張圖片是同時含有飛機(jī)遙感目標(biāo)密集分布和飛機(jī)遙感目標(biāo)尺度極小的情況。
由圖7幾種目標(biāo)檢測算法檢測結(jié)果可知,對于圖7(a)中的第一張圖片,除了文本改進(jìn)的算法以外,其他目標(biāo)檢測算法均有不同程度的漏檢法以外,其他目標(biāo)檢測算法均有不同程度的漏檢和誤檢發(fā)生。對于圖7(a)中的第二張圖片,只有YOLO v3算法出現(xiàn)了誤檢的情況,其余3種算法檢測結(jié)果基本一致,即都能正確識別出全部飛機(jī)目標(biāo)。對于圖7(a)中的第三張圖片,由于飛機(jī)遙感目標(biāo)存在尺寸極小且密集的情況,包括本文算法在內(nèi),4種算法均不能正確檢測出全部目標(biāo)。但是改進(jìn)后的算法雖然沒有全部檢測出飛機(jī)目標(biāo),但檢測結(jié)果明顯要優(yōu)于其他3種算法。對以上不同算法檢測結(jié)果的差異分析可知,造成誤檢和漏檢的主要原因是特征圖之間缺少相應(yīng)的聯(lián)系,即淺層網(wǎng)絡(luò)缺少深層網(wǎng)絡(luò)重要的語義信息,深層網(wǎng)絡(luò)缺少淺層網(wǎng)絡(luò)豐富的細(xì)節(jié)信息。除此之外,特征圖不同通道間的重要程度也缺少定量的權(quán)重系數(shù)。改進(jìn)后的SSD算法綜合考慮了各個特征圖之間的關(guān)聯(lián)性,設(shè)計了S模塊和Conv Module 1模塊。使得各層級的特征圖攜帶更加完整的特征信息以便可以較好地識別出復(fù)雜環(huán)境背景下尺度大小不一的飛機(jī)遙感目標(biāo)。另外,注意力機(jī)制網(wǎng)絡(luò)SENet可以幫助網(wǎng)絡(luò)學(xué)習(xí)特征圖不同通道間的重要程度,在一定程度上提高算法的檢測精度。
以上3張飛機(jī)遙感圖片的檢測結(jié)果多為極端條件下的檢測結(jié)果,例如飛機(jī)遙感目標(biāo)尺度極小且密集分布的極端條件。在更為實際的情況中,飛機(jī)遙感目標(biāo)并不是只存在于極端條件中,對于生活中較容易接觸到的典型場景也是飛機(jī)遙感目標(biāo)檢測的主要用地。本文列舉了4種生活中含有飛機(jī)遙感目標(biāo)的典型場景并進(jìn)行相關(guān)的飛機(jī)目標(biāo)檢測實驗。典型場景分別是民用機(jī)場(圖8(a))、包含住宅區(qū)背景的民用機(jī)場(圖8(b))、機(jī)場跑道(圖8(c))和包含其他交通工具背景(圖8(d))的場景。改進(jìn)后的SSD在各個典型場景下的檢測結(jié)果如圖8所示。
圖8 典型場景下的檢測結(jié)果
場景2和場景4具有較為復(fù)雜的地面背景,可以簡單歸類為極端條件中的復(fù)雜背景一類。場景2、場景3和場景4具有尺度較小和較為密集分布的特點(diǎn),可以簡單歸類為極端條件中的密集分布和極小尺度一類。改進(jìn)后的算法從不同特征層的特征信息的完整性的角度出發(fā),增加了特征層彼此的關(guān)聯(lián)性,一定程度上增加了飛機(jī)目標(biāo)檢測的魯棒性。由圖8的檢測結(jié)果分析可知,改進(jìn)后的算法不僅適用于極端條件下的飛機(jī)遙感目標(biāo)的檢測,對貼近生活中的典型場景也具有較好的檢測效果。
為了進(jìn)一步評估改進(jìn)SSD算法的性能,本文使用4.2節(jié)的評價標(biāo)準(zhǔn)計算得到了該算法的檢測精度與檢測速度,并與其他幾種目標(biāo)檢測算法進(jìn)行橫向結(jié)果對比[26]。對比結(jié)果如表2和圖9所示。
從表2的實驗結(jié)果中可以分析到,本文提出的改進(jìn)后的SSD算法在精度均值(AP)的指標(biāo)上優(yōu)于YOLO、YOLO v2、YOLO v3、SSD、DSSD和Faster-RCNN+FPN算法。從檢測精度上看,當(dāng)IOU=0.5且area為all時(all為包含所有面積類型的目標(biāo)),改進(jìn)后的SSD算法相比于SSD算法提高了3.73%,相比于Faster-RCNN+FPN、YOLO、YOLO v2、YOLO v3和DSSD分別提高了1.10%,14.23%,8.09%,4.31%,1.87%。當(dāng)IOU=0.5∶0.95且area=small時,改進(jìn)后的SSD算法的精度均值為44.58%,較改進(jìn)前提升了4.93%。顯然,改進(jìn)后的SSD算法對小型目標(biāo)的檢測精度相比于其他算法提升幅度更為明顯,證明改進(jìn)后的SSD算法對小型目標(biāo)檢測更具有優(yōu)勢。從檢測速度上看,改進(jìn)SSD的檢測速度和改進(jìn)前相比基本沒有太大的變化,和其他單階段目標(biāo)檢測算法相比仍然可以滿足實時檢測的需求[27]。
表2 檢測精度和檢測速度
圖9為IOU=0.5和IOU=0.7時各目標(biāo)檢測算法的PR曲線。從檢測結(jié)果可以看出,改進(jìn)后的SSD算法在準(zhǔn)確率和召回率兩個性能指標(biāo)均優(yōu)于其他算法,對于邊界框的回歸自然就越準(zhǔn)確。
(a)幾種經(jīng)典目標(biāo)檢測算法的PR曲線(IOU=0.5)
為探究新型FPN與原始FPN對AP值的影響,本文設(shè)置SSD、SSD+FPN以及SSD+FPN(新型)3組實驗來探究其影響。其余設(shè)置均與SSD算法相同。實驗結(jié)果如表3所示,3組相比于一組和二組AP值提升了2.62%,1.83%。
表3 新型特征金字塔消融實驗結(jié)果
實驗證明新型特征金字塔網(wǎng)絡(luò)通過特征融合和注意力機(jī)制的方式有效彌補(bǔ)了不同特征圖之間的信息空缺并選擇性地激活和抑制特征圖通道間的主要次要信息。既增強(qiáng)了低階特征圖的語義,也豐富了高階特征圖的細(xì)節(jié),又對特征圖內(nèi)部不同位置特征施以差異性權(quán)重值,有效提升了改進(jìn)后的算法對飛機(jī)遙感目標(biāo)的檢測精度[31]。
為探究骨架網(wǎng)絡(luò)替換和聚焦分類損失函數(shù)對AP值的影響,本文分別設(shè)3組模型對照,一組為SSD+FPN(新型),二組為SSD+FPN(新型)+ Focal classification loss,三組為SSD+FPN(新型)+ Focal classification loss + ResNet50(改進(jìn)后)。其余設(shè)置均與SSD算法相同。實驗結(jié)果如表4所示,第三組相比于一組和二組AP值提升了1.09%和0.86%。
表4 骨架網(wǎng)絡(luò)替換與損失函數(shù)的消融實驗結(jié)果
實驗證明,使用改進(jìn)后的ResNet50作為算法的骨架網(wǎng)絡(luò)相比SDD算法中的VGG16網(wǎng)絡(luò)有著更好的特征提取能力。聚焦分類損失函數(shù)在一定程度上解決了網(wǎng)絡(luò)訓(xùn)練時正負(fù)樣本不均衡的問題,對檢測精度的提高有一定的作用。
改進(jìn)后的SSD算法對飛機(jī)遙感圖像數(shù)據(jù)集的部分檢測結(jié)果如圖10所示,在復(fù)雜背景(圖10(a))、小尺度且密集分布的遙感目標(biāo)(圖10(b))、極小尺度且密集(圖10(c))和曝光背景(圖10(d))的情況下,該算法均可以精確檢測出相關(guān)的目標(biāo)物體,證明了改進(jìn)后的SSD在不同環(huán)境背景且目標(biāo)面積類型為all時均有較好的檢測效果。
對于SSD算法在飛機(jī)遙感圖像領(lǐng)域目標(biāo)檢測效果不佳的問題,本文對SSD算法做出了一定的改進(jìn)。使用改進(jìn)后的ResNet50作為算法的骨架網(wǎng)絡(luò),與改進(jìn)前的骨架網(wǎng)絡(luò)相比有著更加優(yōu)秀的特征提取能力。設(shè)計了新型特征金字塔網(wǎng)絡(luò),該網(wǎng)絡(luò)用于不同特征圖之間的特征融合,增加了特征圖之間的相互聯(lián)系,保證了不同特征圖上含有特征信息的完整性。還使用了注意力機(jī)制監(jiān)督網(wǎng)絡(luò)的學(xué)習(xí),在一定程度上提高了算法在復(fù)雜環(huán)境背景下進(jìn)行飛機(jī)遙感目標(biāo)檢測的檢測精度。使用了Focal classification loss作為改進(jìn)后算法的損失函數(shù),與改進(jìn)前的損失函數(shù)相比,F(xiàn)ocal classification loss 更加注重解決分類問題中數(shù)據(jù)類別不平衡以及判別難易程度差別的問題。
從實驗結(jié)果來看,改進(jìn)后的SSD對不同場景下且面積類型不同的飛機(jī)遙感目標(biāo)的AP值為92.45%,F(xiàn)PS為35.6。證明了改進(jìn)后的算法在檢測精度上要優(yōu)于SSD算法,對比其他幾種經(jīng)典的目標(biāo)檢測算法,改進(jìn)后的算法在檢測精度和檢測速度方面有著更好的平衡性。