劉晉川, 黎向鋒, 劉安旭, 趙康, 李高揚, 左敦穩(wěn)
(南京航空航天大學(xué)機電學(xué)院, 南京 210016)
近年來,人工智能與計算機技術(shù)持續(xù)迭代,計算機硬件和光電成像設(shè)備不斷更新,這極大地推動了計算機視覺領(lǐng)域的發(fā)展,同時,搭載著高效視覺系統(tǒng)的無人機在軍事和民用領(lǐng)域的應(yīng)用也更加廣泛。然而,無人機由于拍攝高度高、視野廣,其獲得的圖像中往往包含大量小目標(biāo),像素信息少且邊界模糊,很難提取到有效的目標(biāo)特征。傳統(tǒng)的目標(biāo)檢測方法根據(jù)顏色、紋理、邊界等信息人工設(shè)計特征描述符[1]提取目標(biāo)特征,最后通過支持向量機(support vector machine,SVM)實現(xiàn)目標(biāo)分類;但該類算法中特征的設(shè)計以及選擇在很大程度上依賴于人工,導(dǎo)致特征提取器設(shè)置復(fù)雜,對復(fù)雜多變的特征魯棒性差,且傳統(tǒng)算法中基于滑動窗口的區(qū)域選擇策略沒有針對性,窗口冗余,復(fù)雜度高,實時性差,難以勝任無人機圖像中的目標(biāo)檢測任務(wù)。近年來,基于卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks, CNN)的深度學(xué)習(xí)檢測方法快速發(fā)展,該方法設(shè)計方便且泛化能力強,已逐漸成為目標(biāo)檢測的主流方法。
基于深度學(xué)習(xí)的目標(biāo)檢測方法按照檢測階段大致可以分為二階段檢測算法和一階段檢測算法。二階段算法通過對候選框進行初篩后再對候選區(qū)域中的目標(biāo)進行定位與識別,如Faster R-CNN[2]、特征金字塔網(wǎng)絡(luò)(feature pyramid networks,F(xiàn)PN)[3]都是經(jīng)典的二階段檢測算法,該類算法可以取得較高的檢測精度,但檢測速度較慢;一階段算法不對候選框進行初篩,而是通過回歸思想直接完成檢測和識別,檢測速度大大提升,但精度略低,如YOLOv3[4]、單點多盒探測器(single shot multibox detector,SSD)[5]、RetinaNet[6]等都是通用的一階段算法。相比傳統(tǒng)算法,基于深度學(xué)習(xí)的目標(biāo)檢測算法性能更高,但對小目標(biāo)的檢測效果仍有很大提升空間。
通過豐富特征圖中的小目標(biāo)信息是提高小目標(biāo)檢測精度最有效、最常用的手段,如采用注意力機制、FPN等方法。2018年,Liu等[7]設(shè)計了由深至淺、再由淺至深的兩條特征圖融合路徑,相比FPN,進一步加強了特征信息流動,豐富了特征圖信息,并由此提出了路徑聚合網(wǎng)絡(luò)(path aggregation network,PANet);2019年,Ghiasi等[8]通過神經(jīng)網(wǎng)絡(luò)搜索技術(shù)搜尋“最優(yōu)”的特征圖融合路徑,通過融合跨比例的特征圖,得到了性能極高但融合路徑復(fù)雜的NAS-FPN網(wǎng)絡(luò),相比FPN,在COCO測試集上檢測精度提升了2%;曹凱等[9]通過模擬人類視覺選擇注意力機制提出了SENet注意力模型,通過學(xué)習(xí)每個特征通道的重要性對特征圖特征進行重標(biāo)定,增強有用信息,抑制無用信息,極大地降低了檢測模型的錯誤率;Woo等[10]采用全局池化方法設(shè)計了通道注意力和空間注意力兩個模塊,并實驗驗證了其嵌入順序,通過串行連接兩個注意力模塊有效提高了對小目標(biāo)信息的關(guān)注程度;Zhang等[11]在2019年提出了CAD-Net,利用注意力機制以及上下文信息實現(xiàn)了對遙感目標(biāo)的檢測,可以對圖像中的小目標(biāo)以及密集目標(biāo)實現(xiàn)精準(zhǔn)識別。雖然上述方法都可以對小目標(biāo)的檢測起到正面效果,但大部分方法都會對網(wǎng)絡(luò)的計算量和參數(shù)量帶來較大負荷,最終導(dǎo)致檢測速度無法達到實時要求。
合理的錨框機制也是提升網(wǎng)絡(luò)對小目標(biāo)的檢測精度的常用方法。大部分目標(biāo)檢測算法通過在特征圖的每個像素點上鋪設(shè)一組預(yù)定義好的錨框來實現(xiàn)目標(biāo)檢測,該類方法一般通過人工或聚類算法[12]設(shè)計合適的錨框尺寸以提升檢測精度,對不同的數(shù)據(jù)集泛化性較差。近年來,一種新型的無錨框(Anchor-free)檢測方法也在迅速發(fā)展。Law等[13]提出的CornerNet是性能較高的無錨框檢測算法,該算法不再設(shè)計錨框檢測目標(biāo),而是將目標(biāo)檢測看作是對兩個關(guān)鍵點位置的預(yù)測,通過預(yù)測兩組熱力特征圖確定關(guān)鍵點的位置,該方法在當(dāng)時Anchor-base的檢測潮流下取得了不錯的效果;不同于CornerNet對兩個角點的檢測方式,Tian等[14]提出的全卷積的單級目標(biāo)檢測器(fully convolutional one-stage,F(xiàn)COS)算法對每個中心點就行回歸,回歸目標(biāo)則是中心點相對于邊界框上、下、左、右4條邊的距離,在當(dāng)時Anchor-free檢測算法中性能達到最高;Zhang等[15]指出導(dǎo)致Anchor-base與Anchor-free方法存在差異的根本原因在于其正負樣本的定義不同,深入分析了正負樣本的選擇對檢測精度的影響,并針對該問題設(shè)計了自適應(yīng)訓(xùn)練樣本選擇(adaptive training sample selection,ATSS)方法來確定正負樣本,實驗結(jié)果表明,該方法可以有效提升算法的檢測精度。
RetinaNet是檢測精度較高的一階段算法,分3個模塊完成對目標(biāo)的檢測:首先是特征提取網(wǎng)絡(luò),該模塊通過CNN提取圖片特征,生成包含細粒度信息(紋理、顏色等)的淺層特征圖與包含粗粒度信息(語義信息)的深層特征圖;隨后通過FPN網(wǎng)絡(luò)融合各特征圖信息,加強各特征圖之間的信息流動;最后設(shè)計錨框檢測各特征圖中的目標(biāo)并對其進行打分,篩選出可信度較高的檢測結(jié)果,從而實現(xiàn)目標(biāo)的定位和檢測。RetinaNet可以對航拍下的中大型目標(biāo)取得較好的檢測效果,但對小目標(biāo)的漏檢率較高。現(xiàn)以RetinaNet為基礎(chǔ),以提高無人機航拍圖像中小目標(biāo)檢測精度為主要目標(biāo),通過豐富特征圖信息及錨框機制等手段設(shè)計檢測精度高、檢測速度快的無人機航拍目標(biāo)檢測算法。首先提出一種多階段特征融合方法,并結(jié)合注意力機制設(shè)計特征挖掘模塊(feature mining module,F(xiàn)MM),充分提取圖像中感興趣目標(biāo)信息;其次,在RetinaNet網(wǎng)絡(luò)中設(shè)計基于中心點的Anchor-free檢測方法,避免人工設(shè)計錨框超參數(shù);最后,為了減小模型大小、提高檢測速度,采用深度可分離卷積的方法對提出的特征提取網(wǎng)絡(luò)進行輕量化設(shè)計,使之可以勝任實時的目標(biāo)檢測任務(wù)。
RetinaNet算法精髓是Focal Loss損失函數(shù)。針對檢測過程中參與反向傳播的前景目標(biāo)和背景目標(biāo)比例不均衡現(xiàn)象,在交叉熵損失函數(shù)中添加了正負樣本的權(quán)衡因子與之相乘,得到了Focal Loss損失函數(shù),該損失函數(shù)可以自動判斷正負樣本并決定該樣本對總損失的貢獻,一定程度上解決了正負樣本不均衡現(xiàn)象,提升了一階段算法的檢測精度。在RetinaNet之前的通用算法一般使用二分類交叉熵作為損失函數(shù),其計算過程為
(1)
式(1)中:CE為交叉熵函數(shù);y為二分類結(jié)果,前景為1,背景為-1;p為預(yù)測結(jié)果y=1的概率。在Focal Loss中,為了方便,定義新的參數(shù)pt為
(2)
則可重寫交叉熵損失函數(shù)為
CE(p,y)=CE(pt)=-lnpt
(3)
通常解決正負樣本不均衡的方法是在損失函數(shù)前引入權(quán)重因子α(α∈[0,1]),但該方法只能平衡正負樣本,并不能區(qū)分兩者。故在函數(shù)上加了權(quán)重參數(shù)使其注重難分類樣本對損失的貢獻,整合出的損失函數(shù)如式(4)所示。
FL(pt)=-αt(1-pt)γlnpt
(4)
式(4)中:γ為關(guān)注度參數(shù);α為權(quán)重因子。經(jīng)實驗,當(dāng)γ=2,α=0.25時,網(wǎng)絡(luò)的表現(xiàn)最好。
圖1 RetinaNet結(jié)構(gòu)圖Fig.1 The structure of RetinaNet
圖1為RetinaNet網(wǎng)絡(luò)檢測流程圖,RetinaNet[6]采用何愷明團隊提出的ResNet-101深度殘差網(wǎng)絡(luò)為主干網(wǎng)絡(luò),生成不同深度特征圖后經(jīng)FPN網(wǎng)絡(luò)進行特征融合,最后基于錨框(Anchor-base)方法在多尺度上回歸目標(biāo)。將設(shè)計特征提取能力更強的FMM模塊取代ResNet-101中的殘差塊,并設(shè)計Anchor-free的方法檢測目標(biāo),最后對重新設(shè)計的主干網(wǎng)絡(luò)進行模型壓縮,達到檢測精度與檢測速度的均衡,使其應(yīng)用在實時檢測任務(wù)中。
為了盡可能豐富特征圖中的目標(biāo)信息,對傳統(tǒng)殘差塊進行了改進,設(shè)計了注意力機制與多階段特征融合方法,最終構(gòu)成FMM模塊取代傳統(tǒng)殘差結(jié)構(gòu)。
1.1.1 注意力模塊
FMM模塊中采用的注意力結(jié)構(gòu)如圖2所示,該方法旨在通過建模輸入特征圖通道間的關(guān)系,使網(wǎng)絡(luò)自動學(xué)習(xí)每個通道的重要程度,從而挖掘特征圖中的重要信息。圖2中,X和Y分別為輸入輸出特征圖,其維度保持一致,均為H×W×C。整體操作由壓縮和擴張兩部分完成;由于X的每個通道都是二維特征,很難捕捉到每個通道之間的關(guān)系,所以,通過全局池化將特征圖每個通道的信息變換為一個像素,保持通道數(shù)不變,從而生成1×1×C的特征向量zc,該過程即為壓縮操作,公式為
(5)
式(5)中:xc為輸入特征圖中每個通道對應(yīng)的二維向量;(i,j)為枚舉該通道的每一個像素點;SQ即為壓縮操作;zc為壓縮得到的一維向量。壓縮后通過擴張操作獲取每個特征通道間的依賴關(guān)系,計算公式為
s=EX(z,W)=σ[W2δ(W1z)]
(6)
式(6)中:s為通道重要性向量;W1的維度是C/r×C,用來進行全連接層的計算;r為縮放因子,一般取r=16,以降低計算量;W1與z相乘后得到1×1×C/r的向量,然后該向量會經(jīng)過一個ReLU激活函數(shù)(式中δ操作),隨后與維度為C×C/r的W2相乘,其輸出的維度為1×1×C,該向量中的C對應(yīng)輸入特征圖X中各個通道的重要程度。最后將得到的表示通道重要性的向量作用到原特征通道上,以完成對原始通道的重標(biāo)定。
圖2 注意力模塊結(jié)構(gòu)圖Fig.2 The structure of attention module
1.1.2 多階段特征融合
常見的殘差網(wǎng)絡(luò)如ResNet、ResNext[16]以及ResNeSt[17]等為加強特征圖中的小目標(biāo)信息,會將特征提取網(wǎng)絡(luò)生成的最終階段的特征圖進行連接融合以增強目標(biāo)信息,可以有效提升檢測精度。借鑒這種思想,在特征提取過程中設(shè)計了多階段特征融合模塊,在特征提取過程以及更小的粒度上融合特征圖信息。
圖3是傳統(tǒng)殘差塊結(jié)構(gòu)圖,進入殘差塊的輸入特征圖首先經(jīng)過1×1卷積降低通道數(shù),再通過3×3卷積進行正常的特征提取,最后使用1×1卷積將其還原到初始通道數(shù)量,兩者進行相加后作為該殘差塊的輸出。提出的特征挖掘模塊如圖4所示,由多階段特征融合模塊與注意力機制結(jié)合而成。多階段特征融合模塊首先通過1×1卷積減少通道數(shù),然后將通道順序均分為k塊,取k=4,每一小塊Xi(除X1之外)都會先通過3×3的變形卷積[18]提取特征,該卷積操作用Ki表示,對應(yīng)的卷積結(jié)果為Yi,在該流程中,每個Xi會先于Ki-1進行相加然后再進行Ki的卷積操作,最終會得到k個輸出,將這些輸出按照分割時的順序進行拼接融合,再送入1×1的卷積擴張維度,最后與網(wǎng)絡(luò)的輸入相加得到最終的輸出。通過在每個殘差塊中對特征圖通道進行拆分和融合,可以在特征提取過程中就實現(xiàn)類似特征圖融合的作用,從而提高對各類目標(biāo)尤其是小目標(biāo)的檢測。
圖3 傳統(tǒng)殘差塊Fig.3 Traditional residual blocks
圖4 特征挖掘模塊Fig.4 Feature mining module
經(jīng)FMM模塊設(shè)計的特征提取網(wǎng)絡(luò)結(jié)構(gòu)如表1所示,命名為無人機小目標(biāo)探測網(wǎng)絡(luò)(UAV small target detection network,USTDNet)。輸入網(wǎng)絡(luò)的圖像尺寸為800 pixel×800 pixel。
表1 USTDNet網(wǎng)絡(luò)結(jié)構(gòu)Table 1 The structure of USTDNet
圖5為ResNet-101與USTDNet對同一張圖像進行特征提取后得到的熱力特征圖,其中暖色像素對網(wǎng)絡(luò)的決策更加重要。從圖5中可以看出,經(jīng)FMM設(shè)計后的特征提取網(wǎng)絡(luò)可以更加有效地關(guān)注到目標(biāo)信息。
圖5 ResNet-101與USTDNet熱力圖對比Fig.5 Heat map comparison between ResNet-101 and USTDNet
目前的主流算法都是基于錨框檢測目標(biāo)的,雖然也能取得較高的檢測精度,但是這種Anchor-base方法也有不少缺陷。Anchor-base模型依賴于初始錨框的設(shè)計,尺寸、長寬比都是重要的影響因素,設(shè)定好的anchor可以匹配到大多數(shù)目標(biāo),但是對于形變較大或者小尺寸目標(biāo)會表現(xiàn)出一定的局限性,對不同的數(shù)據(jù)集泛化性能不好;再者,Anchor-base方法為了取得較高的召回率,會在每個特征圖的像素點上鋪設(shè)密集的錨框,導(dǎo)致網(wǎng)絡(luò)在進行前向推演以及非極大值抑制[19](non-maximum suppression,NMS)時占用較多的資源。近年來研究學(xué)者提出Anchor-free的方法對其進行改進,經(jīng)過幾年的不斷發(fā)展和完善,已經(jīng)達到甚至超越了Anchor-base方法的檢測精度。將設(shè)計基于中心的Anchor-free算法[20]對網(wǎng)絡(luò)進行改進。
主干網(wǎng)絡(luò)生成各階段特征圖之后,通過在特征圖的每個特征點上生成一個中心點來對目標(biāo)進行回歸,回歸的目標(biāo)是該點距離真實框上、下、左、右邊界的距離,分別用t、b、l、r表示,如圖6所示。當(dāng)某個點(x,y)落入真實框中時,就將其作為正樣本,回歸目標(biāo)為T*=(l*,t*,r*,b*),按式(7)進行計算。
(7)
式(7)中:(x0,y0)和(x1,y1)分別為矩形框左上角和右下角的坐標(biāo)。
圖6 Anchor-free示意圖Fig.6 Schematic diagram of Anchor-free
在上述過程中,由于有些中心點會遠離其預(yù)測目標(biāo)的中心,導(dǎo)致網(wǎng)絡(luò)生成質(zhì)量較低的邊界框,影響檢測精度,所以在Anchor-free方法中引入Center-ness策略抑制無效框的產(chǎn)生,計算公式為
(8)
式(8)中:d為預(yù)測中心(x,y)與預(yù)測物體中心之間的距離。
一般在進行NMS時,將其與分類置信度相乘作為NMS排序的分數(shù)依據(jù),以去除距離物體中心較遠的無效框。然而,在加入Center-ness分支的網(wǎng)絡(luò)中,訓(xùn)練時分類預(yù)測和質(zhì)量估計單獨訓(xùn)練,測試時將兩者相乘作為NMS排序指標(biāo),這必然會導(dǎo)致一定的誤差;因為分類子網(wǎng)是將前景目標(biāo)與大量背景目標(biāo)混合進行訓(xùn)練的,而定位質(zhì)量子網(wǎng)一般只針對前景目標(biāo)進行訓(xùn)練,故存在一部分分類分數(shù)較低的背景目標(biāo)可能獲得較高的定位質(zhì)量估計,兩者相乘做NMS排序時,該背景目標(biāo)可能被劃分為正樣本。
針對此現(xiàn)象,提出在訓(xùn)練時將分類預(yù)測與質(zhì)量預(yù)測結(jié)合。通常,分類估計的輸出為0或1(分類分數(shù)),通過將檢測框的分類得分改為對應(yīng)框的定位質(zhì)量預(yù)測分數(shù),從而達到訓(xùn)練和檢測一致的目的。但由于Focal Loss是針對0和1這種離散標(biāo)簽設(shè)計的,而聯(lián)合表示后得到的是0~1的連續(xù)值,所以有必要對其損失函數(shù)進行修改,故將原來的損失函數(shù)改為式(9),命名為質(zhì)量焦點損失(quality focal loss,QFL)。
QFL(σ)=-|y-σ|β[(1-y)ln(1-σ)+ylnσ]
(9)
式(9)中:-[(1-y)ln(1-σ)+ylnσ]為原函數(shù)中-lnpt交叉熵函數(shù)的展開版本;y∈[0,1],表示定位質(zhì)量分數(shù),y為0時表示背景樣本,0 采用深度可分離卷積的方法對改進RetinaNet進行輕量算法設(shè)計。深度可分離卷積由逐通道卷積和逐點卷積兩部分組成。圖7為上述3種不同卷積的操作流程圖??梢钥闯?,普通卷積中的每個卷積核都需要對特征圖的每一個通道依次執(zhí)行卷積計算,而逐通道卷積中每個卷積核只需要負責(zé)輸入特征圖的一個通道,大大減少了計算量,由于每個卷積核負責(zé)一個通道,所以特征圖的輸入和輸出維度一致,后續(xù)可以使用逐點卷積對通道數(shù)進行擴充或縮減。 圖7 三種不同卷積對比Fig.7 The comparisons of three different convolution 設(shè)輸入、輸出特征圖尺寸分別為H×W×M、H×W×N,卷積核尺寸為K×K×M,則普通卷積的計算量Cstd和參數(shù)量Pstd分別為 Cstd=HWK2MN (10) Pstd=HWMN (11) 在進行深度可分離卷積時,逐通道卷積的計算量Cdc與參數(shù)量Pdc分別為 Cdc=HWK2M (12) Pdc=HWM (13) 逐點卷積的計算量Cpc和參數(shù)量Ppc分別為 Cpc=MNK2 (14) Ppc=MN (15) 則深度可分離卷積的計算量Cdsc和參數(shù)量Pdsc分別為 Cdsc=Cdc+Cpc=HWMK2+MNK2 (16) Pdsc=Pdc+Ppc=HWM+MN (17) 深度可分離卷積與普通卷積的計算量和參數(shù)量之比分別為 (18) (19) 在USTDNet網(wǎng)絡(luò)中,卷積操作一般是由3×3大小的卷積核完成的,將網(wǎng)絡(luò)中的3×3全集全部使用可分離卷積替換,采用該方法大約可以將計算量降為原來的1/9,參數(shù)量的減少比例取決與輸入特征圖的寬、高以及輸出特征圖的通道數(shù)。 DIOR數(shù)據(jù)集[21]是由西北工業(yè)大學(xué)在2019年提出的大型航拍數(shù)據(jù)集,是目前公開的最大、最多樣化的航拍數(shù)據(jù)集之一。DIOR數(shù)據(jù)集中的圖像來自Google Earth,包含23 463張圖片,共有192 472個對象實例,圖像尺寸均為800 pixel×800 pixel。作者選取了飛機、船舶、儲罐、車輛等20類具有實用價值的目標(biāo),這些目標(biāo)具有較大的尺寸變化,且存在較高的類內(nèi)多樣性,類間如車輛與船舶相似性較高。該數(shù)據(jù)集中的車輛、船只以及儲罐等眾多目標(biāo)在圖像中占比很小,十分適用于無人機視角下的小目標(biāo)檢測研究,故選取該數(shù)據(jù)集進行實驗。 設(shè)計的算法應(yīng)用在無人機圖像檢測任務(wù)中,需要對算法的預(yù)測結(jié)果進行定量評估以評價其性能。使用平均精度均值(mean average precision,mAP)作為檢測精度的度量指標(biāo);用每秒檢測幀數(shù)(frame per second,F(xiàn)PS)作為檢測速度的度量指標(biāo)。 DIOR數(shù)據(jù)集中用于訓(xùn)練、驗證和測試的比例與原論文保持一致,按照1∶1∶2的比例設(shè)置,方便與其他研究結(jié)果進行對比;其中驗證集的作用是在訓(xùn)練過程可以及時發(fā)現(xiàn)模型或者參數(shù)設(shè)置的問題,以便及時調(diào)整。訓(xùn)練過程中采用SGD優(yōu)化器更新網(wǎng)絡(luò)參數(shù),共訓(xùn)練16輪,設(shè)置初始學(xué)習(xí)率為0.001,根據(jù)學(xué)習(xí)率衰減策略,分別在第12輪和第15輪下降到0.000 1和0.000 01以尋求SGD優(yōu)化器的最優(yōu)解。訓(xùn)練初期采用ResNet論文中提出的學(xué)習(xí)率預(yù)熱方法,首先采用較小學(xué)習(xí)率訓(xùn)練,然后逐漸增大至設(shè)置的初始學(xué)習(xí)率繼續(xù)訓(xùn)練,避免收斂效果不好以及模型不穩(wěn)定等問題。實驗在Ubuntu20.04系統(tǒng)下進行,使用Python3.6開發(fā)語言,基于Pytorch1.6深度學(xué)習(xí)框架設(shè)計網(wǎng)絡(luò)。 為驗證所提出的Anchor-free檢測方法與FMM模塊的有效性,對網(wǎng)絡(luò)進行消融實驗,結(jié)果如表2所示。從消融實驗結(jié)果可知,對算法的幾種改進方法都取得了不錯的效果,其中基于中心點的Anchor-free檢測方法將網(wǎng)絡(luò)檢測精度提升了0.054;設(shè)計的FMM特征挖掘模塊使網(wǎng)絡(luò)檢測精度提升了0.031。 表2 消融實驗結(jié)果Table 2 Ablation results 為驗證本文算法的先進性,將其與現(xiàn)階段先進算法進行比較。表3是各種算法在DIOR數(shù)據(jù)集上的mAP以及FPS對比。可知,所提出的算法可以大幅度提高檢測精度,其檢測效果優(yōu)于YOLOv3、RetinaNet、經(jīng)典Faster R-CNN以及文獻[22-24]提出的算法;其檢測速度幾乎與原算法持平,在800 pixel×800 pixel的圖像上檢測速度達到12幀/s。 表3 各類算法在DIOR數(shù)據(jù)集上的檢測結(jié)果Table 3 Detection results of various algorithms on DIOR 為觀察本文算法對數(shù)據(jù)集中各尺寸目標(biāo)的檢測情況,列出本章算法與其他幾種算法在各類目標(biāo)上的AP值進行對比分析,如表4所示。 表4 各類算法在DIOR數(shù)據(jù)集上精度對比Table 4 Precision comparison of various algorithms on DIOR 由表4可知,本文算法在各類目標(biāo)上的檢測精度均超越了RetinaNet算法;相比文獻[22]的二階段算法檢測結(jié)果,大多數(shù)目標(biāo)檢測精度處于領(lǐng)先。通過對數(shù)據(jù)集中的小目標(biāo)如汽車、船舶、儲罐的檢測精度觀察分析可知,算法在汽車、船舶、儲罐上的檢測精度相對原RetinaNet算法分別增加了0.192、0.143、0.253,提升明顯。如圖8為RetinaNet算法與本文算法在DIOR數(shù)據(jù)集上的檢測效果圖,可以看出,相對于RetinaNet算法,本文算法不僅提高了召回率,且定位框精度更高。 使用1.3節(jié)中提出的深度可分離卷積方法對特征提取網(wǎng)絡(luò)進行模型壓縮,其結(jié)果如表5所示。由表5中數(shù)據(jù)可知,雖然壓縮后的模型較壓縮前精度損失2.6%,但其檢測速度由12幀/s提升到了19幀/s,且在運算量、參數(shù)量及模型大小方面都有較大優(yōu)勢,更加適合在移動端部署。 圖8 檢測結(jié)果Fig.8 Comparison of test results 表5 輕量化前后結(jié)果對比Table 5 Comparison of results before and after lightweight 針對無人機視角下的小目標(biāo)難以檢測的問題,對RetinaNet網(wǎng)絡(luò)模型進行了多方面改進。首先為了豐富特征圖中的目標(biāo)信息,提出了多階段特征融合方法與注意力機制模塊,將其串聯(lián)形成FMM模塊,加強網(wǎng)絡(luò)對感興趣目標(biāo)的特征提取能力;其次,引入了基于中心點檢測的Anchor-free算法,并通過將質(zhì)量估計和分類分數(shù)聯(lián)合訓(xùn)練的方法解決了一般Anchor-free中的弊病,不僅提升了檢測精度,還加快了模型的推理速度;改進后的算法精度在DIOR數(shù)據(jù)集上達到69.5%,且改進后算法的檢測速度與原算法持平。為了使提出的算法能夠滿足實時檢測的要求,并達到移動端部署的要求,對網(wǎng)絡(luò)進行了輕量化設(shè)計,將網(wǎng)絡(luò)中的3×3標(biāo)準(zhǔn)卷積替換為深度可分離卷積,在損失少量精度的前提下壓縮了模型,提高了檢測速度。但輕量化之后的網(wǎng)絡(luò)精度損失2.6%,后續(xù)應(yīng)當(dāng)使用更加智能的模型壓縮策略,例如結(jié)合剪枝與輕量化方法,以求在損失較少精度的前提下壓縮模型。1.3 改進RetinaNet的輕量算法設(shè)計
2 實驗結(jié)果與分析
2.1 數(shù)據(jù)集及評價標(biāo)準(zhǔn)
2.2 訓(xùn)練策略
2.3 實驗分析
3 結(jié)論