周華平,張 杰
(安徽理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,安徽 淮南 232001)
伴隨著深度學(xué)習(xí)的快速發(fā)展,小目標(biāo)檢測(cè)技術(shù)得到了高度認(rèn)可,在軍事、遙感、城市建設(shè)等領(lǐng)域發(fā)揮出巨大作用[1].小目標(biāo)由于可辨識(shí)度較低,在圖像中占比較少,導(dǎo)致特征信息不能充分利用,容易受背景影響等因素,相對(duì)于常規(guī)大中目標(biāo)檢測(cè)任務(wù)來(lái)說(shuō),現(xiàn)有的模型對(duì)小目標(biāo)的檢測(cè)精度一直不夠高.因此如何對(duì)小目標(biāo)進(jìn)行有效的檢測(cè)和識(shí)別,成為計(jì)算機(jī)視覺(jué)領(lǐng)域一個(gè)重難點(diǎn).
在深度學(xué)習(xí)領(lǐng)域,目標(biāo)檢測(cè)任務(wù)算法主要分為兩類(lèi):一種是以SSD[2]和YOLO[3]系列為代表的單階段檢測(cè)算法,這類(lèi)算法有著速度的優(yōu)勢(shì),但犧牲了精度;另一種是以Faster-RCNN[4]和Mask-RCNN[5]等RCNN系列為代表的雙階段檢測(cè)算法,檢測(cè)精度得到了較大提升,但網(wǎng)絡(luò)參數(shù)比較大,導(dǎo)致檢測(cè)速度劣于單階段算法的檢測(cè)速度.
在當(dāng)前的目標(biāo)檢測(cè)任務(wù)中,由于小目標(biāo)攜帶信息較少,容易受背景干擾等原因,導(dǎo)致現(xiàn)有的主流模型對(duì)于小目標(biāo)的檢測(cè)精度一直不高,由此一些學(xué)者開(kāi)始關(guān)注于小目標(biāo)檢測(cè)任務(wù),并作出了些許改進(jìn).跨層注意力網(wǎng)絡(luò)(CA-Net)[6]改進(jìn)了一種注意力網(wǎng)絡(luò),添加到模型里面,利用目標(biāo)的上下文信息來(lái)輔助辨識(shí)小目標(biāo);Zhu等[7]使用大分辨率進(jìn)行輸入來(lái)獲取更多有效信息,從而提升對(duì)小目標(biāo)的檢測(cè)效果;李文濤等[8]提出一種改進(jìn)后的通道注意力融合機(jī)制,通過(guò)對(duì)不同通道小目標(biāo)權(quán)重分配來(lái)增強(qiáng)小目標(biāo)跟通道信息之間的聯(lián)系,從而提高對(duì)小目標(biāo)物體的檢測(cè)結(jié)果;張寅等[9]對(duì)底層特征圖當(dāng)中的感受野進(jìn)行融合,生成一種新的注意力,從而增加了對(duì)遙感小目標(biāo)信息特征的獲取.
受上述方法的啟發(fā),基于Faster-RCNN算法、ResNet50作為特征提取網(wǎng)絡(luò),引入特征金字塔,提出了一種融合上下文信息和注意力的遙感小目標(biāo)算法,通過(guò)添加多尺度擴(kuò)張卷積模塊來(lái)增強(qiáng)模型的上下文特征,擴(kuò)充遙感小目標(biāo)信息,加入通道注意力機(jī)制來(lái)解決特征融合時(shí)帶來(lái)的信息混淆問(wèn)題,從而提升整個(gè)模型對(duì)遙感小目標(biāo)的檢測(cè)效果.
Faster-RCNN是一種基于候選區(qū)域的端到端的雙階段目標(biāo)檢測(cè)算法,建立在Fast-RCNN的基礎(chǔ)上,加入新的區(qū)域建議網(wǎng)絡(luò)(RPN),使用滑動(dòng)窗口的方法,將各個(gè)特征區(qū)域生成相對(duì)應(yīng)寬高比的錨框,然后就是對(duì)錨框進(jìn)行輸出類(lèi)別分別和預(yù)測(cè)邊界框,最后使用非極大抑制算法對(duì)預(yù)測(cè)的結(jié)果進(jìn)行選擇,得到所需要的候選區(qū)域.Faster-RCNN算法作為雙階段算法的典型代表,相比較于單階段網(wǎng)絡(luò),檢測(cè)效果更加精準(zhǔn),在小物體目標(biāo)的檢測(cè)上有明顯優(yōu)勢(shì),同時(shí)Faster-RCNN算法有更廣闊的優(yōu)化空間,其總體框架如圖1所示.
圖1 Faster-RCNN總體框架
Faster-RCNN網(wǎng)絡(luò)模型是由特征提取模塊、區(qū)域提議網(wǎng)絡(luò)、感興趣區(qū)域池(ROI Pooling)層和分類(lèi)回歸層四部分組成,其算法的主要流程是先輸入待檢測(cè)的圖片,獲得所需要的特征圖,然后將特征圖再送到區(qū)域建議網(wǎng)絡(luò)生成預(yù)選框,將得到的預(yù)選框和特征圖都傳到ROI Pooling層,再?gòu)念A(yù)選框中挑選出最符合特征圖的候選框,最后將候選框送入分類(lèi)回歸層得到輸出類(lèi)別和回歸參數(shù).這就是整個(gè)算法的檢測(cè)流程.
Faster-RCNN訓(xùn)練時(shí)的損失函數(shù)為
Faster-RCNN的損失函數(shù)由回歸損失和分類(lèi)損失兩個(gè)函數(shù)構(gòu)成,回歸損失可表達(dá)為
分類(lèi)損失表達(dá)為
特征金字塔(feature pyramid network,FPN)在當(dāng)前主流框架中使用較多,圖2包括自上而下、自下而上和橫向連接操作.自下而上是信息的正向傳導(dǎo)過(guò)程,而自上而下過(guò)程是對(duì)更形象,包含更多語(yǔ)義信息的高層特征圖進(jìn)行上采樣操作,然后將其與左側(cè)的特征圖進(jìn)行水平連接,從而增強(qiáng)更多的特征信息.由于每一層預(yù)測(cè)的特征圖包含不同的分辨率大小和多種特征強(qiáng)度的語(yǔ)義信息,于是可以在不大幅度增加檢測(cè)時(shí)間的同時(shí)提高小目標(biāo)的檢測(cè)精度.
圖2 特征金字塔結(jié)構(gòu)
改進(jìn)后模型的主干網(wǎng)絡(luò)使用ResNet50,如圖2左側(cè)所示,通過(guò)卷積得到每個(gè)層的特征圖,記作C2—C5,自頂向下的意思是采用上采樣的方法將高層特征圖所擁有的特征圖擴(kuò)大到與下一層相同大小的特征圖,這樣就可以將低層特征圖的信息和高層特征圖的信息相結(jié)合在一起,更加有效地使用特征信息;而橫向連接的可以直接將下采樣后的P5和C4進(jìn)行相加,最后通過(guò)3×3卷積消除上采樣過(guò)程帶來(lái)的信息混淆的影響,從而得到最后的特征圖.
特征金字塔將高層特征圖所包含的語(yǔ)義信息和低層特征圖所攜帶的位置信息相結(jié)合,其目的仍然是為了提高對(duì)小目標(biāo)信息的檢測(cè)效果,但P5僅通過(guò)C5得到,而高層特征金字塔主要負(fù)責(zé)處理大中型目標(biāo),這會(huì)讓小目標(biāo)信息容易被忽略,從而導(dǎo)致對(duì)小目標(biāo)的檢測(cè)效果不佳;為更好地解決上面所提出的問(wèn)題,本文提出了一種新的網(wǎng)絡(luò)模型,該模型結(jié)構(gòu)如圖3所示.多尺度擴(kuò)張卷積模塊(Multi-scale Dilation Convolution Module,MDCM)融合多條感受野特征信息,從而獲得豐富的上下文特征,以便擴(kuò)充更多的遙感小目標(biāo)信息,通道注意力(Channel Attention Guided,CAG)[10]可以有效地減少特征融合過(guò)程中帶來(lái)的信息混淆等影響,防止遙感小目標(biāo)信息被信息混淆以及沖突淹沒(méi).
圖3 改進(jìn)后模型的總體網(wǎng)絡(luò)結(jié)構(gòu)
針對(duì)特征金字塔的淺層特征圖含有較少的語(yǔ)義信息以及融合過(guò)程中部分信息損失等問(wèn)題,由于小目標(biāo)有著攜帶信息較少,容易被忽略等特征,因此對(duì)于小目標(biāo)檢測(cè)需要豐富的上下文信息,提出了一種多尺度擴(kuò)張卷積模塊MDCM,如圖4所示.此模塊一共有5個(gè)分支,其中4條分別是由擴(kuò)張率大小為1、3、5、1的擴(kuò)張卷積構(gòu)成,其作用是通過(guò)擴(kuò)大感受野從而捕獲更多遙感小目標(biāo)的語(yǔ)義信息,最后一條是為了與輸入特征圖相融合,保留最初的細(xì)節(jié)信息,最后通過(guò)特征融合將含有不同感受野的上下文信息注入特征金字塔當(dāng)中,讓特征信息得到更加充分的利用.
圖4 多尺度擴(kuò)張卷積模塊結(jié)構(gòu)
多尺度擴(kuò)張卷積模塊的公式為
Y=Add(X,Y′).
其中:Y表示最后輸出的特征圖;X表示輸入的特征圖;Y′表示經(jīng)過(guò)擴(kuò)張卷積處理過(guò)后的特征圖;Add表示按位相加;Y′=Conv[Concat(x1,x2,x3,x4)],其中:x1、x2、x3、x4分別表示經(jīng)過(guò)擴(kuò)張率為1、3、5、1的擴(kuò)張卷積后生成的特征圖,Concat是將前面經(jīng)過(guò)擴(kuò)張卷積后生成的特征圖進(jìn)行連接.
不同尺度的特征圖之間有著信息差異,直接對(duì)它們進(jìn)行融合操作或許會(huì)造成語(yǔ)義混淆等問(wèn)題,為了減輕特征融合過(guò)程帶來(lái)的信息混淆問(wèn)題,一個(gè)最直觀的方法是在特征金字塔當(dāng)中添加注意力機(jī)制,即加入新的注意力機(jī)制CAG,如圖5所示.通道注意力機(jī)制CAG有兩個(gè)分支,第一條對(duì)輸入的特征圖形采取最大池化方式處理,另外一條則采取平均池化方式,各自對(duì)特征信息進(jìn)行處理分析,之后繼續(xù)轉(zhuǎn)入到全連接層,最后經(jīng)過(guò)逐元素求和跟Sigmoid激活函數(shù)獲得所需要的注意力權(quán)重.CAG對(duì)最后輸出的特征圖操作處理,這樣做便于處理特征金字塔特征融合過(guò)程中帶來(lái)的信息混淆,容易導(dǎo)致錯(cuò)檢、漏檢,減少?gòu)?fù)雜背景以及沖突對(duì)檢測(cè)的影響,從而使模型更加關(guān)注我們所需要的部分,這對(duì)于遙感小目標(biāo)的檢測(cè)能力提升是非常有幫助的.CAG注意力機(jī)制的公式可表示為
圖5 CAG注意力模塊結(jié)構(gòu)
CAG(X)=σ(fc1(Avgpool(x))+fc2(Maxpool(x)),
Ri=CAG(I)⊙Pi.
其中:CAG( )代表通道注意力函數(shù);σ表示為Sigmoid函數(shù);fc指的是全連接操作;i表示特征金字塔得到層數(shù);Pi代表特征金字塔的輸出結(jié)果;Ri表示經(jīng)過(guò)注意力機(jī)制后最終的輸出結(jié)果.
該算法模型采用的是基于深度學(xué)習(xí)框架,初始學(xué)習(xí)率是0.01,batch_size選定是8,其他參數(shù)信息如表1所示.
表1 實(shí)驗(yàn)配置
實(shí)驗(yàn)選用中國(guó)科學(xué)院發(fā)布的高分辨率遙感公開(kāi)數(shù)據(jù)集HRRSD[11],總共有21 761張圖片,13個(gè)種類(lèi),依次是飛機(jī)、棒球場(chǎng)、籃球場(chǎng)、橋梁、十字路口、田徑場(chǎng)、港口、停車(chē)場(chǎng)、船、存儲(chǔ)罐、丁字路口、網(wǎng)球場(chǎng)、汽車(chē),其中大部分類(lèi)別在圖像中以排列密集的小目標(biāo)分布,非常適用于驗(yàn)證改進(jìn)后的算法對(duì)小目標(biāo)檢測(cè)結(jié)果的評(píng)估;對(duì)于數(shù)據(jù)集劃分,選擇25%的圖像進(jìn)行訓(xùn)練,25%的圖像進(jìn)行訓(xùn)練期間評(píng)估,另外50%用于測(cè)試.
改進(jìn)后算法模型的評(píng)價(jià)指標(biāo)是目標(biāo)檢測(cè)領(lǐng)域常用的平均精度均值(Mean Average Precision,MAP),代表所有類(lèi)別檢測(cè)結(jié)果(Average Precision,AP)的平均大小;(Frames Per Second,FPS)表示每秒鐘可以檢測(cè)多少?gòu)垐D片.對(duì)于AP的定義通常為
數(shù)據(jù)增強(qiáng)技術(shù)一直廣泛應(yīng)用于各種目標(biāo)檢測(cè)模型當(dāng)中,其目的是擴(kuò)充數(shù)據(jù)集,增加訓(xùn)練的樣本,以此來(lái)提高模型的泛化能力和魯棒性.針對(duì)遙感數(shù)據(jù)集當(dāng)中物體大小、方向多有不同的原因,對(duì)數(shù)據(jù)集進(jìn)行簡(jiǎn)單的水平翻轉(zhuǎn)、垂直翻轉(zhuǎn)操作.為了驗(yàn)證數(shù)據(jù)增強(qiáng)對(duì)實(shí)驗(yàn)結(jié)果的影響,在相同條件下,對(duì)垂直翻轉(zhuǎn)、水平翻轉(zhuǎn)兩種方法進(jìn)行了對(duì)比,實(shí)驗(yàn)結(jié)果如表2所示.
表2 數(shù)據(jù)增強(qiáng)對(duì)比結(jié)果
從表2結(jié)果發(fā)現(xiàn),水平翻轉(zhuǎn)和垂直翻轉(zhuǎn)這兩種方法都能一定程度上提高模型的檢測(cè)性能,而兩種數(shù)據(jù)增強(qiáng)方法共同使用讓模型的檢測(cè)效果達(dá)到最佳,驗(yàn)證了數(shù)據(jù)增強(qiáng)的有效性.
3.4.1 特征提取網(wǎng)絡(luò)和FPN對(duì)比
特征提取網(wǎng)絡(luò)的優(yōu)越性對(duì)于模型檢測(cè)性能的好壞和分類(lèi)結(jié)果有著直接的影響,為了證明改進(jìn)后模型對(duì)于遙感小目標(biāo)的檢測(cè)效果,在參數(shù)相同的情況下做了多組對(duì)比實(shí)驗(yàn),首先驗(yàn)證了ResNet50特征提取網(wǎng)絡(luò)與傳統(tǒng)VGG16,其次驗(yàn)證了加入FPN之后的變化,實(shí)驗(yàn)結(jié)果如表3所示.
表3 特征提取網(wǎng)絡(luò)對(duì)比和FPN引入結(jié)果
從表3可以看出,兩種特征提取網(wǎng)絡(luò)中,ResNet50表現(xiàn)出來(lái)的性能優(yōu)于VGG16,達(dá)到82.7%,比VGG16高出1.2%,其中各種類(lèi)別的檢測(cè)精度也有不同大小的提升,表明在Faster-RCNN模型中,ResNet50特征提取網(wǎng)絡(luò)對(duì)遙感小目標(biāo)的檢測(cè)效果優(yōu)于VGG16;在引入FPN之后,算法模型的檢測(cè)精度值比之前提高了3%,比只更換ResNet50網(wǎng)絡(luò)提高了1.8%,大部分小目標(biāo)類(lèi)別的檢測(cè)結(jié)果較好,驗(yàn)證了更換特征提取網(wǎng)絡(luò)和引入FPN的有效性.
3.4.2 注意力機(jī)制對(duì)比
引入注意力機(jī)制的作用是更好地減少特征融合過(guò)程當(dāng)中帶來(lái)的信息混淆等影響,減少?gòu)?fù)雜背景以及沖突對(duì)小目標(biāo)的影響,增強(qiáng)模型對(duì)小目標(biāo)的檢測(cè)能力.本實(shí)驗(yàn)一個(gè)選取三種注意力機(jī)制,分別為CAG、ECA-Net[12]、SENet[13],在實(shí)驗(yàn)環(huán)境相同的條件下,探討不同注意力機(jī)制對(duì)模型檢測(cè)結(jié)果的影響.實(shí)驗(yàn)結(jié)果如表4所示.
表4 不同注意力機(jī)制對(duì)比結(jié)果
從表4可以看出,三種注意力機(jī)制最后的結(jié)果CAG取得最高的精度,其FPS也達(dá)到了19.5,高于另外兩種,源于CAG注意力機(jī)制優(yōu)化各層最后的輸出特征,在少量計(jì)算負(fù)擔(dān)的條件下減輕混淆影響.綜合考慮,選用CAG機(jī)制來(lái)處理特征融合過(guò)程中的信息混淆等影響.
3.4.3 不同模型檢測(cè)結(jié)果對(duì)比
為了驗(yàn)證改進(jìn)后的算法模型對(duì)遙感小目標(biāo)的檢測(cè)效果,選用Faster-RCNN、RetinaNet[14]、CenterNet[15]、YOLOv5[16]和MSHEMN[17]算法進(jìn)行對(duì)比,數(shù)據(jù)集選用HRRSD,最終結(jié)果如表5所示.
表5 不同模型檢測(cè)結(jié)果對(duì)比
表6 消融實(shí)驗(yàn)結(jié)果
從表5可以看出,改進(jìn)后的算法與傳統(tǒng)的Faster-RCNN算法相比,MAP較改進(jìn)之前提升了5.4%,其中例如汽車(chē)、存儲(chǔ)罐、飛機(jī)、網(wǎng)球場(chǎng)等等遙感小目標(biāo)的檢測(cè)結(jié)果都有不錯(cuò)的提高;跟RetinaNet、CenterNet、YOLOv5和MSHEMN算法相比,MAP分別提升了3.5%、1.6%、2.9%、0.8%,其中如飛機(jī)、棒球場(chǎng)、港口和車(chē)輛等目標(biāo)種類(lèi)的檢測(cè)效果較好,進(jìn)一步驗(yàn)證了改進(jìn)后算法的優(yōu)越性.
圖6展示了Faster-RCNN算法模型在改進(jìn)前和改進(jìn)后對(duì)于同一背景下小目標(biāo)物體的檢測(cè)效果,改進(jìn)前的算法模型存在的漏檢情況比較嚴(yán)重,改進(jìn)后的算法模型對(duì)于漏檢情況得到了較大提升,再次證明了改進(jìn)后算法模型的優(yōu)越性.
圖6 檢測(cè)效果對(duì)比
3.4.4 消融實(shí)驗(yàn)
為了證明添加的多尺度擴(kuò)張卷積模塊和通道注意力機(jī)制對(duì)遙感小目標(biāo)的檢測(cè)效果,在HRRSD數(shù)據(jù)集上完成了消融實(shí)驗(yàn).選用特征提取網(wǎng)絡(luò)為ResNet50加FPN的Faster-RCNN算法,作為基線網(wǎng)絡(luò),檢測(cè)精度值為84.5%;當(dāng)加入多尺度擴(kuò)張卷積模塊后,模型可以檢測(cè)到更多的遙感小目標(biāo)信息,從而檢測(cè)精度值提高了1.2%,但相應(yīng)處理圖片速度的FPS從21.9降到20.8;而加入通道注意力機(jī)制CAG后,原有的特征融合過(guò)程帶來(lái)的信息混淆得到了緩解,避免了更多的遙感小目標(biāo)信息在信息混淆以及沖突中被淹沒(méi),最終檢測(cè)結(jié)果提升了1.3%,FPS相應(yīng)降低1.4;當(dāng)兩個(gè)模塊同時(shí)加入時(shí),模型的檢測(cè)效果較好,為86.7%,較基線模型提升了2.2%,FPS為19.5,基本可以滿足實(shí)時(shí)檢測(cè)對(duì)速度的要求.
針對(duì)Faster-RCNN算法對(duì)遙感圖像中小目標(biāo)檢測(cè)存在漏檢、檢測(cè)精度不高等問(wèn)題,提出一種融合上下文信息和注意力的遙感小目標(biāo)檢測(cè)算法.用ResNet50作為特征提取網(wǎng)絡(luò)替換VGG16,來(lái)加強(qiáng)模型對(duì)小目標(biāo)信息的提取;引入FPN,添加多尺度擴(kuò)張卷積模塊來(lái)增強(qiáng)對(duì)遙感小目標(biāo)信息的擴(kuò)充,使用通道注意力機(jī)制來(lái)減少信息混淆的影響,以防止遙感小目標(biāo)淹沒(méi)在混淆信息中.結(jié)果表明,改進(jìn)后的模型對(duì)遙感小目標(biāo)漏檢有較好改善,檢測(cè)精度也有明顯的提升.在未來(lái)的工作中,將繼續(xù)深入對(duì)特征網(wǎng)絡(luò)和FPN的研究,從而提高現(xiàn)有的算法模型對(duì)遙感小目標(biāo)的檢測(cè)效果.