李 超,黃新宇,王 凱
(湖北工業(yè)大學(xué)計算機學(xué)院,湖北武漢 430068)
小目標(biāo)檢測在自動駕駛、衛(wèi)星圖像和醫(yī)學(xué)圖像分析中發(fā)揮著重要的作用.但是受到環(huán)境和測量手段限制,小目標(biāo)本身攜帶的信息量較少,這給小目標(biāo)的特征提取、識別和檢測帶來了極大挑戰(zhàn)[1].
目前,小目標(biāo)的定義主要有2 種[2].第一種是絕對小目標(biāo).COCO 數(shù)據(jù)集指明當(dāng)目標(biāo)的像素尺寸小于32×32 時,此類目標(biāo)即可被看作絕對小目標(biāo)[3].第二種是相對小目標(biāo).這種目標(biāo)的特點是圖像尺寸較大但是目標(biāo)相對原圖的尺寸較小,如圖1所示.圖1(a)中紅色框是普通圖像中的絕對小目標(biāo),圖1(b)中綠色框是高分辨率圖像中的相對小目標(biāo).與普通圖像相比,由于訓(xùn)練環(huán)境限制,尺寸較大且目標(biāo)數(shù)量較多的高分辨率圖像需要下采樣或裁切到合適尺寸之后才能訓(xùn)練.對高分辨率圖像多次下采樣后,相對小目標(biāo)的細節(jié)信息損失更多,導(dǎo)致更難提取到有效特征,從而造成目標(biāo)漏檢[4,5].對高分辨率圖像裁切后,目標(biāo)細節(jié)信息雖然得以保留,但是目標(biāo)周圍的上下文語義信息缺失導(dǎo)致特征相似的目標(biāo)被誤檢.另外,高分辨率圖像中小目標(biāo)的分布極不均勻,由此造成的正負樣本失衡進一步增加了小目標(biāo)的檢測難度.
圖1 小目標(biāo)樣例
針對高分辨率圖像中小目標(biāo)檢測存在的問題,本文提出一種基于特征融合和自學(xué)習(xí)錨框的小目標(biāo)檢測算法,通過多路分支網(wǎng)絡(luò)對高分辨率圖像中的小目標(biāo)提取語義和細節(jié)特征,并對提取的特征融合,利用融合后的特征指導(dǎo)錨框預(yù)測小目標(biāo)的位置和形狀.為了評價算法的有效性,將本文算法與目前先進的檢測算法進行比較.實驗結(jié)果表明,融合后的特征圖能夠有效彌補由下采樣和局部裁切造成的細節(jié)特征和語義特征缺失,全局語義和細節(jié)特征在融合時出現(xiàn)的特征表達不一致問題得到了較大改善,本文算法可以有效提升高分辨率圖像中小目標(biāo)的檢測精度.
針對高分辨率圖像中小目標(biāo)檢測的難點,本文主要從特征融合和建議框改進等方面開展相關(guān)研究工作.卷積神經(jīng)網(wǎng)絡(luò)提取的底層特征分辨率較高,因此細節(jié)信息較多;上層特征的分辨率較低但是具有更強的語義信息[6].為了讓不同層次的特征圖都具有較強的語義信息,特征金字塔網(wǎng)絡(luò)(Feature Pyramid Network,F(xiàn)PN)[7]利用卷積神經(jīng)網(wǎng)絡(luò)的多尺度特性,通過自上向下的方式對上層特征圖上采樣后與其相鄰的下層特征圖融合.
受到特征金字塔網(wǎng)絡(luò)的啟發(fā),Libra-RCNN 檢測模型[8]認為傳統(tǒng)的特征金字塔僅關(guān)注特征圖相鄰層間的特征融合,非相鄰層次中的語義信息在每次融合之后都會被弱化.通過對不同層次的特征圖進行縮放、整合與強化,Libra-RCNN 讓每個層次的特征圖都能從其他層次的特征圖上獲得同等的信息.裴偉等人[9]針對無人機拍攝的圖像分辨率較低和目標(biāo)尺度變化較大的問題,提出了一種基于殘差網(wǎng)絡(luò)的目標(biāo)檢測算法,該算法將低層特征和高層語義特征結(jié)合在一起,改進后的方法提升了無人機航拍的檢測精度.黃繼鵬等人[10]認為專門為小目標(biāo)設(shè)計的檢測方法復(fù)雜度過高,不具有通用性,由此提出一種面向小目標(biāo)的多尺度快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)可以同時使用低層和高層特征進行多尺度目標(biāo)檢測.Liu等人[11]認為低層特征包含的較強位置信息對小目標(biāo)檢測具有非常重要作用,因此提出將最低層的信息直接傳到最高層特征中.Chen 等人[12]通過2 條分支網(wǎng)絡(luò)提取圖像的細節(jié)信息和全局信息,實現(xiàn)了對高分辨率圖像的精準(zhǔn)語義分割.Sun 等人[13]在并行的多分辨率子網(wǎng)上反復(fù)交換信息,通過在不同分支之間進行多尺度的重復(fù)融合來減少信息損耗.Chen 等人[14]設(shè)計了多任務(wù)、多階段的混合級聯(lián)結(jié)構(gòu),通過將語義分割分支的空間上下文信息融合到預(yù)測框和掩碼分支中,使其在目標(biāo)檢測和實例分割任務(wù)上都取得了較好的效果.
除了提高特征融合的質(zhì)量,建議框的優(yōu)化對目標(biāo)檢測也發(fā)揮著重要的作用.Faster-RCNN[15]通過區(qū)域生成網(wǎng)絡(luò)(Region Proposal Network,RPN)在特征圖上以滑動窗口方式均勻生成大量密集的錨框,利用特征金字塔和建議框進行多尺度目標(biāo)檢測[16].Cascade-RCNN[17]不斷提高交并比(Intersection-over-Union,IoU)閾值優(yōu)化建議框的質(zhì)量,通過級聯(lián)回歸重采樣使前一階段重新采樣過的建議框能夠適應(yīng)下一階段更高閾值的檢測器.Dynamic-RCNN[18]提出在訓(xùn)練過程中應(yīng)隨著建議框的分布變化動態(tài)調(diào)整IoU 的閾值.Wang 等人[19]關(guān)注目標(biāo)的邊緣特征以得到更高質(zhì)量的邊界信息來提升目標(biāo)檢測的精度.Wang 等人[20]認為錨框分布與特征圖的語義特征有關(guān),并認為根據(jù)語義特征生成的錨框可以提升建議框的質(zhì)量.基于以上分析可以發(fā)現(xiàn),特征融合質(zhì)量和建議框的生成方式對目標(biāo)檢測非常重要,但是與之前的工作相比,卷積神經(jīng)網(wǎng)絡(luò)對高分辨率圖像提取特征時存在因下采樣導(dǎo)致目標(biāo)細節(jié)特征消失過快以及對原圖裁切后上下文語義信息缺失的問題.針對高分辨率圖像中小目標(biāo)檢測的難點,本文建立表征能力更強的多路分支特征融合網(wǎng)絡(luò),在融合的特征圖上引入自學(xué)習(xí)錨框生成建議框,通過提高特征圖和建議框的質(zhì)量,提升高分辨率圖像中小目標(biāo)的檢測精度.
高分辨率圖像像素尺寸較大以及目標(biāo)尺寸相對較小的特點,導(dǎo)致單一結(jié)構(gòu)的特征金字塔網(wǎng)絡(luò)難以同時提取到小目標(biāo)的細節(jié)特征和周圍的上下文語義特征.本文采用多路分支網(wǎng)絡(luò)對高分辨率圖像中小目標(biāo)的細節(jié)特征和背景語義特征進行融合,整體結(jié)構(gòu)如圖2所示.
圖2中網(wǎng)絡(luò)整體由全局分支、局部分支和融合分支構(gòu)成,特征融合分為從全局到局部的特征融合(Globalto-Local Feature Fusion)和局部到全局的特征融合(Local-to-Global Feature Fusion).受到訓(xùn)練環(huán)境限制,首先在全局分支網(wǎng)絡(luò)上對下采樣圖像訓(xùn)練,以提取整幅圖像的全局特征(為突出特征融合過程,只描述其中一層).之后,在局部分支網(wǎng)絡(luò)上使用骨干網(wǎng)提取切塊上目標(biāo)的局部細節(jié)特征,并將切塊對應(yīng)的上下文特征從預(yù)訓(xùn)練的全局特征上裁切出來進行Global-to-Local特征融合.由于無法對高分辨率圖像直接檢測,接著在預(yù)訓(xùn)練的局部分支上對原圖的每張切塊遍歷,對融合了上下文信息的局部特征圖先下采樣再依次拼接,將拼接的特征圖與融合分支上的全局特征進行Localto-Global 特征融合.最后在融合了全局背景和局部細節(jié)的特征圖上對下采樣圖像實現(xiàn)快速、準(zhǔn)確的檢測.
圖2 全局和局部特征融合網(wǎng)絡(luò)
由于不同分支網(wǎng)絡(luò)上的訓(xùn)練樣本差異較大,相比單一結(jié)構(gòu)的特征金字塔網(wǎng)絡(luò),多路分支網(wǎng)絡(luò)對原圖進行下采樣和裁切時,目標(biāo)的空間位置相對原圖已經(jīng)發(fā)生了較大變化.為了使目標(biāo)的細節(jié)特征和上下文特征有效融合,本文通過空間映射對特征圖進行裁切和拼接[21].另外,全局分支和融合分支上的原始圖像經(jīng)過下采樣之后目標(biāo)尺寸變小,而局部分支上的原始圖像經(jīng)過裁切后目標(biāo)的尺寸并未發(fā)生改變.當(dāng)不同的分支網(wǎng)絡(luò)采用預(yù)設(shè)的固定錨框在特征圖上均勻滑動時,特征圖上每個位置的特征表達是一致的,并且特征圖的每個像素點與錨框的中心點都能夠保持對齊.但是由于錨框?qū)δ繕?biāo)尺寸有不同的偏好,不同的分支網(wǎng)絡(luò)需要根據(jù)目標(biāo)大小使用不同尺寸的錨框,這將導(dǎo)致各分支網(wǎng)絡(luò)上特征的感受野和語義范圍不一致.考慮到難以通過先驗知識在融合的特征圖上選擇合適的錨框生成建議框,本文在多路分支網(wǎng)絡(luò)上引入自學(xué)習(xí)錨框,使融合的全局局部特征與錨框能夠更好地匹配.
本文對Global-to-Local 特征融合做了詳細描述,具體過程如圖2 所示.首先,在預(yù)訓(xùn)練的全局分支網(wǎng)絡(luò)上獲取下采樣圖像的全局特征(Global_C),然后在局部分支網(wǎng)絡(luò)上提取切塊上目標(biāo)的局部細節(jié)特征(Local_C).由于高分辨率圖像上的目標(biāo)分布極不均勻,大量切塊上沒有目標(biāo)樣本,因此為提高正負訓(xùn)練樣本比例,在Global-to-Local特征融合階段只對含有目標(biāo)的切塊進行特征融合.之后,利用空間映射將切塊對應(yīng)的預(yù)訓(xùn)練全局特征裁切后(Cropped_gc)進行上采樣,使其與局部特征圖的大小一致.在此基礎(chǔ)上,采用“級聯(lián)”(concate)方法將裁切后的全局特征和局部特征在通道維度上拼接[22](m為輸入通道數(shù),從上至下依次為2 048,1 024,512,256),通過conv1 卷積對全局和局部特征按照特征金字塔的方式從上至下逐層融合.
為了使不同尺度的特征圖都具有較強的語義信息,特征金字塔FPN_Global 對全局特征Global_C 從上至下進行融合,輸出特征融合結(jié)果Global_P.另外,為了消除FPN_Global 在自上向下過程中對上層特征Global_C 上采樣產(chǎn)生的混疊效應(yīng),通常還會采用3×3卷積核對特征融合結(jié)果Global_P 進行再次卷積,以生成平滑的特征圖Global_SP.在Global-to-Local特征融合過程中,局部分支網(wǎng)絡(luò)上的局部特征Local_P,Local_SP也要與全局特征Global_P,Global_SP做進一步融合.在融合之前,仍然利用空間映射將切塊對應(yīng)的預(yù)訓(xùn)練全局特征裁切后(Cropped_gp,Cropped_gsp)進行上采樣,然后將通道數(shù)均為256 的全局和局部特征圖“級聯(lián)”為通道數(shù)為512 的特征圖,最后采用conv2,conv3 卷積對“級聯(lián)”的特征圖進行卷積,輸出通道數(shù)為256的特征圖(Global-Local Feature),融合過程中只改變特征圖的深度,不改變特征圖的寬和高.根據(jù)圖2,Global-to-Local特征融合算法描述如算法1所示.
Local-to-Global 特征融合過程與Global-to-Local 特征融合類似,不同之處是Global-to-Local 特征融合只對部分切塊對應(yīng)的預(yù)訓(xùn)練全局特征上采樣,而Local-to-Global 特征融合需要對每張切塊的局部特征Local_C,Local_P,Local_SP 下采樣后再依次拼接,保證拼接的特征圖Merged_Local_C,Merged_Local_P,Merged_Local_SP 與融合分支網(wǎng)絡(luò)上的特征圖Global_C,F(xiàn)usion_P,F(xiàn)usion_SP 大小相同.在Local-to-Global 特征融合過程中,使用conv1 對拼接的局部特征和全局特征從上至下逐層融合,使用conv2 和conv3 卷積對“級聯(lián)”的局部特征和融合的全局特征進行卷積,經(jīng)過平滑后逐層融合,輸出通道數(shù)為256 的特征圖(Local-Global Feature).Local-to-Global特征融合算法描述如算法2所示.
由于不同分支間的訓(xùn)練樣本尺寸差異較大,采用基準(zhǔn)檢測模型進行全局和局部特征融合時,如果錨框尺寸選擇不恰當(dāng),將會影響檢測結(jié)果.為了讓全局語義和局部細節(jié)特征更好地匹配,本文引入自學(xué)習(xí)錨框使融合的特征圖以自適應(yīng)方式匹配錨框的位置和形狀,在特征表達一致的情況下對目標(biāo)檢測.考慮到圖像中目標(biāo)的位置是非均勻分布的,并且目標(biāo)形狀與圖像語義有著密切聯(lián)系,Wang 等人[20]認為錨框的位置和形狀服從條件概率分布,通過圖3 中的位置預(yù)測分支使用1×1 卷積將輸入通道數(shù)為256 的特征圖變?yōu)檩敵鐾ǖ罃?shù)為1 的特征圖,并使用sigmoid 函數(shù)將特征圖上的值轉(zhuǎn)換為概率值,在超過閾值的位置上生成錨框.形狀預(yù)測分支使用1×1 卷積將特征圖變?yōu)檩敵鐾ǖ罃?shù)為2 的特征圖,在特征圖上對錨框形狀w,h進行預(yù)測.除此以外,自學(xué)習(xí)錨框模型還對目標(biāo)進行分類和預(yù)測框回歸,因此模型的誤差損失由4部分組成,即
圖3 通過自學(xué)習(xí)錨框?qū)θ趾途植刻卣鬟M行自適應(yīng)匹配
通過對位置誤差損失Lloc和形狀誤差損失Lshape最小化,自學(xué)習(xí)錨框能夠盡量覆蓋與其相鄰目標(biāo)的定位框,這種生成方式可以提高目標(biāo)檢測的泛化能力.但是在不同位置上生成形狀任意的錨框?qū)?dǎo)致特征圖上每個點的特征表達不一致.為解決該問題,自學(xué)習(xí)錨框模型使用3×3 可變形卷積對錨框形狀偏移量進行變換,以特征自適應(yīng)方式使特征圖的感受野在不同位置上保持一致,并且像素點和錨框中心點保持對齊.
雖然特征自適應(yīng)模塊解決了單條分支網(wǎng)絡(luò)上的特征表達問題,但是自學(xué)習(xí)錨框在訓(xùn)練過程中需要將樣本(xg,yg,wg,hg)映射到特征圖上作為標(biāo)簽與預(yù)測值(x',y',w',h')一起計算位置誤差和形狀誤差.由于全局分支和局部分支上目標(biāo)樣本的尺寸差異較大,全局和局部特征圖上相應(yīng)位置像素點的感受野和語義特征表達不一致.如果將預(yù)訓(xùn)練的特征圖與待提取的特征圖直接融合,仍然難以通過自學(xué)習(xí)錨框準(zhǔn)確預(yù)測錨框的位置和形狀.
為了使融合的特征圖與自學(xué)習(xí)錨框自適應(yīng)匹配,本文利用位置誤差損失、形狀誤差損失和特征自適應(yīng)模塊對融合的特征圖做適當(dāng)修正.由于提取預(yù)訓(xùn)練特征的網(wǎng)絡(luò)模型參數(shù)無法再作改變,本文在特征融合時創(chuàng)建新的特征金字塔,將該金字塔輸出的特征與預(yù)訓(xùn)練特征重新融合,并將樣本標(biāo)簽(xg,yg,wg,hg)重新映射到融合后的特征圖上,根據(jù)特征圖預(yù)測的錨框(x',y',w',h')重新計算位置誤差和形狀誤差.對位置誤差損失和形狀誤差損失最小化,使金字塔輸出的特征與預(yù)訓(xùn)練特征在融合時每個特征點都能適應(yīng)錨框的位置和形狀.在預(yù)訓(xùn)練特征基礎(chǔ)上,新建的特征金字塔參數(shù)只需適當(dāng)微調(diào),模型就能快速收斂[23].
根據(jù)高分率圖像的特點,本文采用XVIEW 數(shù)據(jù)集[24]作為訓(xùn)練和測試樣本,該數(shù)據(jù)集中共有846 張高分辨率圖像.隨機選取601 張圖像作為訓(xùn)練集,選取245 張圖像作為測試集.為了進一步說明高分辨率圖像中小目標(biāo)的特點,圖4 對XVIEW 數(shù)據(jù)集的圖像尺寸、目標(biāo)尺寸、目標(biāo)與圖像的面積占比、每張圖像中的目標(biāo)數(shù)量進行了統(tǒng)計,并與COCO 數(shù)據(jù)集進行了對比.
從圖4(a)可以看到,XVIEW 數(shù)據(jù)集的圖像尺寸在2 500×2 500 到5 000×3 500 之間,COCO 數(shù)據(jù)集的圖像尺寸在100×100 到800×800 之間,前者圖像的平均像素尺寸是后者的數(shù)十倍.另外,依據(jù)COCO 數(shù)據(jù)集通過像素大小對目標(biāo)尺寸的定義,圖4(b)中XVIEW 數(shù)據(jù)集的小目標(biāo)占比為63.3%,而COCO 數(shù)據(jù)集中小目標(biāo)的比例為41.44%.圖4(c)中,COCO 數(shù)據(jù)集的目標(biāo)與圖像的面積歸一化占比分布在[10-3,10-2]區(qū)間,而XVIEW 數(shù)據(jù)集中目標(biāo)與圖像的面積歸一化占比分布在[10-5,10-4]區(qū)間.由于目標(biāo)相對原圖的歸一化比例較小,在對原圖下采樣后,XVIEW 數(shù)據(jù)集中的目標(biāo)尺寸將變得更小,導(dǎo)致特征提取網(wǎng)絡(luò)更難提取到目標(biāo)的特征.在圖4(d)中,COCO數(shù)據(jù)集中目標(biāo)數(shù)量少于10個的圖像占比接近75%,而XVIEW 數(shù)據(jù)集中目標(biāo)數(shù)量少于10個的圖像占比不到20%,目標(biāo)數(shù)量超過100個的圖像占比接近60%.以上分析表明,XVIEW 數(shù)據(jù)集中的目標(biāo)比COCO數(shù)據(jù)集的檢測難度更大.
本文算法在Ubuntu 18.04系統(tǒng)下運行,采用MMDetection 2.0 目標(biāo)檢測框架[25]對模型進行訓(xùn)練和測試.CPU 采用Intel Core i7-9700KF,內(nèi)存為32 GB,GPU 采用NVDIA RTX2080Ti,顯存為11 GB,利用CUDA8.0 和CUDNN5.0進行加速.
在對模型訓(xùn)練之前,通常需要對圖像進行縮放、裁切、翻轉(zhuǎn)、填充等預(yù)處理,一方面是為了進行數(shù)據(jù)增強,以提高網(wǎng)絡(luò)的泛化性能,另一方面是為了讓每個輸入網(wǎng)絡(luò)的batch 擁有相同的尺寸,便于GPU 做加速計算.由于XVIEW 數(shù)據(jù)集的圖像尺寸較大并且目標(biāo)數(shù)量較多,除了對圖像采取常用的預(yù)處理方法外,還要考慮GPU 硬件環(huán)境限制和算法效率.根據(jù)圖4(b)中XVIEW 數(shù)據(jù)集的目標(biāo)尺寸分布,當(dāng)圖像縮放到3 000×3 000 后,目標(biāo)尺寸的變化與原始數(shù)據(jù)集相比變化較小,因此將圖像調(diào)整到3 000×3 000 后均勻裁切.為了避免原圖裁切后切塊之間的邊緣信息缺失,讓切塊之間保持一定程度的重疊.考慮到目標(biāo)尺寸較小,設(shè)置切塊之間的重疊區(qū)域為50.本文使用ResNet50 和特征金字塔提取特征,對原圖裁切之前根據(jù)式(2)分析特征提取的計算量[26],即其中,H和W是輸出特征圖的大?。籆in和Cout是輸入和輸出通道數(shù);K是卷積核大小.在卷積核大小和輸入、輸出通道數(shù)不變的情況下,提取特征的計算量主要由輸出特征圖的尺寸決定.一般來說,圖像尺寸越大,輸出的特征圖越大,提取特征的計算量也越大.另外,對高分辨率圖像提取特征時除了考慮切塊尺寸的影響,還要考慮切塊的個數(shù),表1 給出了ResNet50 和特征金字塔對不同尺寸的切塊和整副圖像提取特征的計算量.
圖4 COCO數(shù)據(jù)集和XVIEW數(shù)據(jù)集的特征對比
表1 ResNet50和特征金字塔對高分辨率圖像提取特征的計算量
由表1 可知,當(dāng)切塊尺寸為800×800 時,對整副圖像提取特征的計算量最少.另外,在對整副圖像下采樣時,如果縮放的尺寸越小,提取特征的計算量也越少,但是損失的細節(jié)信息也將更多.考慮多路分支網(wǎng)絡(luò)對每張下采樣圖像只提取一次特征,并且為了便于切塊與其對應(yīng)的全局特征在空間上相互對應(yīng),本文將下采樣圖像的大小設(shè)置為800×800.對圖像下采樣和裁切后,圖2 中Global_C 和Local_C 的大小自下而上依次為200×200,100×100,50×50,25×25.
本文采用隨機梯度下降方式對全局分支和局部分支網(wǎng)絡(luò)分別訓(xùn)練50個epoch,訓(xùn)練初始階段學(xué)習(xí)率設(shè)為0.001,在前五百輪訓(xùn)練學(xué)習(xí)率線性增長并穩(wěn)定在0.002 5,第45 個epoch 開始,學(xué)習(xí)率按epoch 為單位指數(shù)衰減到0.000 3.對融合分支網(wǎng)絡(luò)訓(xùn)練時,只需對網(wǎng)絡(luò)參數(shù)作適當(dāng)微調(diào),訓(xùn)練20個epoch后即能達到比較好的收斂狀態(tài).
在性能評價方面,將真實框與預(yù)測框的交并比(IoU)大于0.5 視為正確的預(yù)測結(jié)果,在IoU 閾值為0.5下計算模型的檢測精度(Average Precision,AP),準(zhǔn)確率(Precision)和召回率(Recall).為了比較的全面性,所有模型均在下采樣圖像和切塊上對目標(biāo)檢測,并對模型的復(fù)雜度進行綜合評價.
本文首先在全局分支網(wǎng)絡(luò)和局部分支網(wǎng)絡(luò)上使用大小不同的基礎(chǔ)錨框?qū)鶞?zhǔn)檢測模型Faster-RCNN 進行訓(xùn)練,并給出基準(zhǔn)模型在特征融合下的檢測結(jié)果.為了說明特征融合和自學(xué)習(xí)錨框?qū)z測結(jié)果的影響,對特征融合前后基準(zhǔn)模型和自學(xué)習(xí)錨框模型的檢測性能進行對比.之后,通過改變特征融合過程中卷積核的尺寸評價算法效率和檢測性能之間的關(guān)系.最后,將本文方法與目前一些先進的檢測模型進行綜合對比,并給出特征融合前后熱度圖的直觀效果.
本實驗使用基準(zhǔn)模型和兩組大小為4和8且長寬比為{1∶2,1∶1,2∶1}的基礎(chǔ)錨框(Base anchor)對特征融合前的全局分支網(wǎng)絡(luò)和局部分支網(wǎng)絡(luò)訓(xùn)練,表2給出了全局分支網(wǎng)絡(luò)對下采樣圖像以及局部分支網(wǎng)絡(luò)對切塊的檢測結(jié)果.
表2 特征融合前的檢測結(jié)果
表2表明錨框尺寸對檢測結(jié)果影響較大,采用基礎(chǔ)錨框為4的基準(zhǔn)模型對下采樣圖像檢測時,檢測精度為29.9,召回率為44.6,采用基礎(chǔ)錨框為8 時,檢測精度為14.3,召回率為23.4.由此可見,高分辨率圖像經(jīng)過下采樣后,由較小錨框生成的建議框可以更準(zhǔn)確地命中小目標(biāo).與此相反,局部分支網(wǎng)絡(luò)上的樣本保留了原始尺寸,使用基礎(chǔ)錨框為8 的檢測結(jié)果優(yōu)于基礎(chǔ)錨框為4 的檢測結(jié)果.
本實驗在基準(zhǔn)模型上使用特征融合算法對小目標(biāo)檢測,表3給出了特征融合后的檢測結(jié)果.
從表3 可以發(fā)現(xiàn),在Global-to-Local 特征融合下對切塊上的小目標(biāo)檢測時,模型準(zhǔn)確率相比特征融合前有了顯著提升.在4 組全局和局部錨框組合中,在全局分支網(wǎng)絡(luò)上使用基礎(chǔ)錨框為8 的基準(zhǔn)模型提取的全局特征與局部分支網(wǎng)絡(luò)上使用基礎(chǔ)錨框為8 的基準(zhǔn)模型提取的細節(jié)特征融合后,檢測精度最高.在4→8 錨框組合下檢測精度有所下降,這說明特征融合前在全局分支網(wǎng)絡(luò)上使用基礎(chǔ)錨框為4 的基準(zhǔn)模型雖然能夠取得較好的檢測效果,但是固定錨框?qū)τ?xùn)練樣本尺寸較為敏感且具有一定偏好,導(dǎo)致特征圖上感受野和特征表達不一致,使得提取的全局特征和局部特征在融合時不匹配.
表3 全局和局部特征融合的檢測結(jié)果
本文進一步在融合分支上將拼接后的局部細節(jié)特征圖與全局特征圖融合,在Local-to-Global 特征融合下對下采樣圖像檢測.實驗結(jié)果表明,在Global-to-Local特征融合基礎(chǔ)上,在融合分支網(wǎng)絡(luò)上采用基礎(chǔ)錨框4對下采樣圖像檢測時,檢測精度從特征融合前的29.9 提升到33.4,召回率從44.6 提升到47.0,說明經(jīng)過Localto-Global特征融合后,特征圖上小目標(biāo)的細節(jié)信息得到了顯著增強.
實驗2 表明特征融合在一定程度上可以提高目標(biāo)檢測精度,但是在不同網(wǎng)絡(luò)上采用固定錨框?qū)︻A(yù)訓(xùn)練特征融合時會出現(xiàn)特征不匹配的問題.為了避免這種情況,本文使用自學(xué)習(xí)錨框?qū)π∧繕?biāo)作進一步檢測.
為了體現(xiàn)自學(xué)習(xí)錨框的作用,本實驗首先在特征融合前使用自學(xué)習(xí)錨框?qū)ο虏蓸訄D像和切塊檢測,將檢測結(jié)果與實驗1 中基準(zhǔn)模型檢測性能最好的結(jié)果進行比較.為了體現(xiàn)自學(xué)習(xí)錨框?qū)μ卣魅诤系挠绊懀瑢⑻卣魅诤纤惴ㄓ糜谧詫W(xué)習(xí)錨框,將檢測結(jié)果與實驗2中基準(zhǔn)模型在特征融合下性能最好的結(jié)果進行比較,結(jié)果如表4所示.
從表4可以發(fā)現(xiàn),在特征融合之前使用自學(xué)習(xí)錨框?qū)η袎K的檢測精度為34.5,比基準(zhǔn)模型的檢測精度高了1.2 個百分點.相比對切塊檢測性能的提升,自學(xué)習(xí)錨框?qū)ο虏蓸訄D像的檢測精度、召回率和準(zhǔn)確率都低于基準(zhǔn)模型,這說明在細節(jié)信息損失較多的全局特征圖上直接使用自學(xué)習(xí)錨框的效果并不理想.
表4 自學(xué)習(xí)錨框?qū)z測結(jié)果的影響
經(jīng)過Global-to-Local 特征融合之后,自學(xué)習(xí)錨框?qū)η袎K的檢測精度為41.9,相比特征融合前檢測精度提升了7.4 個百分點,而基準(zhǔn)模型相比特征融合前檢測精度提升了6.7 個百分點.經(jīng)過Local-to-Global 特征融合后,自學(xué)習(xí)錨框?qū)ο虏蓸訄D像的檢測精度為33.9,相比特征融合前檢測精度提升了7.1 個百分點,而基準(zhǔn)模型相比特征融合前檢測精度提升了3.9 個百分點,這說明在使用自學(xué)習(xí)錨框后,特征融合對檢測性能的提升更為明顯.通過對比自學(xué)習(xí)錨框在特征融合前后的檢測性能,可以發(fā)現(xiàn)自學(xué)習(xí)錨框?qū)μ卣鲌D的質(zhì)量有著更高的要求.在融合了全局語義和局部細節(jié)的特征圖上,自學(xué)習(xí)錨框?qū)π∧繕?biāo)的檢測有著更強的適應(yīng)性.
本實驗通過模型的計算復(fù)雜度評價算法效率和檢測性能之間的關(guān)系.由于本文采用的骨干網(wǎng)和輸出子網(wǎng)與基準(zhǔn)模型相同,自學(xué)習(xí)錨框中的位置預(yù)測分支、形狀預(yù)測分支和特征自適應(yīng)模塊帶來的計算量很小,可以忽略不計,因此全局和局部特征融合的額外計算開銷主要由圖2 中的conv1,conv2 和conv3 產(chǎn)生,其中conv1對每層特征圖融合的計算量如表5所示.
表5 conv1對4層特征圖進行特征融合的計算量
從表5 可以看到,conv1 在全局和局部特征融合過程中產(chǎn)生的計算量為10.11GFLOPs.根據(jù)式(2),在輸入、輸出通道數(shù)和特征圖尺寸不變時,卷積操作產(chǎn)生的計算量與卷積核尺寸有關(guān).在實驗2 和實驗3 中,conv2,conv3 卷積核尺寸為1×1.為了體現(xiàn)算法效率和性能之間的關(guān)系,本實驗使用尺寸為3×3 的卷積核,表6 給出conv2,conv3 在不同尺寸下對4 層特征圖進行卷積的計算量.
表6 conv2,conv3分別對4層特征圖進行特征平滑的計算量
從表6 可以看出,使用1×1 卷積核時,特征融合產(chǎn)生的計算量為13.92GFLOPs,使用3×3 卷積核時,特征融合產(chǎn)生的計算量為125.3GFLOPs,這說明當(dāng)卷積核尺寸增大后,模型的計算復(fù)雜度將顯著增加.由于增大卷積核尺寸將改變感受野,進而影響特征融合的效果,表7 給出在全局和局部特征融合下基準(zhǔn)模型和自學(xué)習(xí)錨框分別使用不同卷積核的檢測性能.
表7 全局和局部特征融合卷積核尺寸對檢測性能的影響
根據(jù)圖2,基準(zhǔn)模型和自學(xué)習(xí)錨框模型對下采樣圖像檢測時,全局特征圖與拼接好的局部細節(jié)特征圖進行一次特征融合,由于可以將下采樣圖像的檢測結(jié)果直接映射回原圖,因此可以直接得到對整副圖像檢測的計算量.對切塊檢測時,原圖被裁切成16 塊,每張局部特征圖都要與其對應(yīng)的預(yù)訓(xùn)練全局特征融合一次,并且每張切塊檢測的結(jié)果都要映射回原圖,因此對整副圖像檢測的計算量是每張切塊的16倍.由表7可知,增大卷積核尺寸雖然能夠提升模型對小目標(biāo)檢測的精度,但是不可避免地會增加計算量.以自學(xué)習(xí)錨框為例,當(dāng)增大卷積核尺寸后,對下采樣圖像的檢測精度可以提升11.2%,但是計算量將增加70.16%,因此需要在算法效率和檢測性能之間進行綜合考慮.
為了更客觀地評價算法的性能和效率,將本文方法與目前一些先進的目標(biāo)檢測模型進行對比,包括Libra-RCNN[8]、Cascade-RCNN[17]、Dynamic-RCNN[18]、Hybrid task cascade[14](只使用bbox 分支)、SABL[19],以及使用HRNet[13]為特征提取網(wǎng)絡(luò)的基準(zhǔn)檢測模型,其中本文使用表7 中自學(xué)習(xí)錨框卷積核尺寸為1×1 的檢測結(jié)果,根據(jù)實驗1對其他模型在下采樣圖像上使用大小為4 的基礎(chǔ)錨框,在局部切塊上使用大小為8 的基礎(chǔ)錨框檢測,表8統(tǒng)計了各檢測模型在測試數(shù)據(jù)集上的檢測精度、召回率、準(zhǔn)確率和計算量.
由表8 可知,在局部切塊上對小目標(biāo)檢測時,本文算法具有更高的準(zhǔn)確率和檢測精度,其中檢測精度比現(xiàn)有模型中檢測精度最高的HRNetV2P_W32 基準(zhǔn)檢測模型高5.6 個百分點.在下采樣圖像上對小目標(biāo)檢測時,本文算法具有更高的召回率和檢測精度,HRNetV2P_W32 基準(zhǔn)檢測模型的檢測精度略低于本文算法,計算量比本文算法多24.61GFLOPs.
表8 本文方法與其他模型目標(biāo)檢測性能對比
由表8 可知,本文選取的6 種具有代表性的目標(biāo)檢測模型分別從特征提取、建議框質(zhì)量和正負例樣本采樣等方面對基準(zhǔn)模型進行改進和優(yōu)化.除了HRNetV2P_W32 基準(zhǔn)檢測模型外,本文選取的其他模型均采用ResNet50 作為骨干網(wǎng)提取特征.Cascade-RCNN 通過級聯(lián)方式提升檢測器的質(zhì)量,在不改變特征金字塔的情況下對切塊上的目標(biāo)檢測時取得了較好的檢測效果.Dynamic-RCNN 對切塊的檢測精度雖然略低于Cascade-RCNN,但是計算量遠低于Cascade-RCNN.Libra-RCNN 使不同層次的特征圖在具體細節(jié)和抽象語義之間達到一種較為平衡的關(guān)系,但是在對局部切塊上的目標(biāo)檢測時,僅在局部范圍內(nèi)對底層細節(jié)和高層語義進行了特征平衡,導(dǎo)致模型的準(zhǔn)確率偏低.Hybrid task cascade 混合任務(wù)級聯(lián)檢測模型通過對圖像進行精細的像素級分類,將語義分割信息融合到預(yù)測框分支中,對下采樣圖像檢測時取得了較高的召回率,而Cascade-RCNN 和SBAL-RCNN 對下采樣圖像檢測時召回率都較低,說明兩者不適用于細節(jié)特征消失太多的全局特征圖上.相比以上檢測模型,HRNetV2P_W32通過重復(fù)跨并行卷積執(zhí)行多尺度融合,使網(wǎng)絡(luò)一直都保持高分辨率表征,以此達到同時增強語義信息和精準(zhǔn)位置信息的目的,因此對小目標(biāo)檢測取得了較好的效果.
由于深度學(xué)習(xí)目標(biāo)檢測模型根據(jù)特征圖生成對目標(biāo)感興趣的建議框,并且在建議框上對目標(biāo)進行分類和位置回歸,因此如何在特征圖上區(qū)分出前景和背景,并且在前景區(qū)域上有針對性地生成建議框,對提高目標(biāo)檢測性能有著重要的影響[27,28].為了進一步說明特征圖對高分辨率圖像檢測的重要性,本文對特征融合前后的熱度圖進行直觀對比.
為了直觀反映特征圖對高分辨率圖像中小目標(biāo)檢測的作用,將全局分支、局部分支和融合分支上的特征圖轉(zhuǎn)換成熱度圖,圖5給出了特征融合前后的熱度圖以及在原圖上生成的建議框.
由圖5(b)可知,全局下采樣后的熱度圖可以大致區(qū)分出前景和后景,大量像素較小的目標(biāo)在熱度圖上顏色較淺,導(dǎo)致對這些小目標(biāo)無法生成有效的建議框.與此相反,圖5(c)的熱度圖顏色較深,說明從切塊上提取的局部特征圖保留了豐富的細節(jié)特征,但是每塊局部特征圖的背景區(qū)域都生成了大量建議框,導(dǎo)致很多目標(biāo)被誤驗.經(jīng)過全局和局部特征融合后,圖5(d)在保留目標(biāo)細節(jié)特征的同時,前景和背景區(qū)分也更為明顯,因此能夠在特征圖上有針對性地生成高質(zhì)量的建議框.
圖5 特征融合前后的熱度圖對比
基于特征融合和自學(xué)習(xí)錨框的檢測模型使高分辨率圖像中小目標(biāo)檢測的效果有所提升,但是由于高分辨率圖像中的小目標(biāo)多為稠密聚集性分布,并且個體之間的邊界較為模糊,因此模型的檢測效果有待進一步提升[29],這一點從圖6 中部分具有代表性的目視預(yù)測結(jié)果對比中可以看出.圖6 中從左到右依次為使用全局分支網(wǎng)絡(luò)、局部分支網(wǎng)絡(luò)和融合分支網(wǎng)絡(luò)給出的檢測結(jié)果,綠色框為正確檢測結(jié)果,藍色框為漏檢,紅色框為誤檢.在圖6(a)背景較為復(fù)雜的地面場景中,部分尺寸較小且灰度與地面場景較為相似的小目標(biāo)在下采樣和卷積過程中,其特征很容易被周圍背景特征掩蓋,因此無法在特征圖上提取該類目標(biāo)的特征.圖6(b)中檢測目標(biāo)由于其形狀和灰度與周圍目標(biāo)比較相似,因此很容易被誤檢.經(jīng)過特征融合之后,圖6(c)中的漏檢和誤檢情況相比圖6(a)和圖6(b)有了明顯減少,但是仍然存在大量與檢測目標(biāo)聯(lián)系比較緊密的個體對象.為解決這類問題,一方面需要提高訓(xùn)練數(shù)據(jù)集中小目標(biāo)標(biāo)注的質(zhì)量,另一方面也要從算法層面對這類稠密聚集性的目標(biāo)做更精確的區(qū)分,這也是本研究團隊下一步研究工作的重點[30~32].
圖6 測試集上小目標(biāo)的檢測結(jié)果
高分辨率圖像的下采樣和裁切處理造成目標(biāo)細節(jié)和上下文語義特征缺失,使得一些先進的目標(biāo)檢測算法對高分率圖像中的目標(biāo)檢測時難以取得理想的效果.本文通過多路分支網(wǎng)絡(luò)對高分辨率圖像提取全局語義和局部細節(jié)特征,并將兩者有效地融合起來.實驗結(jié)果驗證了在融合的特征圖上采用自學(xué)習(xí)錨框能夠有效檢測高分辨率圖像中的小目標(biāo).在未來工作中,本文將進一步探索并優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)以提升特征融合能力,從而提高小目標(biāo)的檢測精度.