實(shí)操教程 | 用于小目標(biāo)檢測(cè)的一個(gè)簡(jiǎn)單高效的網(wǎng)絡(luò)

作者 | ronghuaiyang
來(lái)源 | AI公園
編輯 | 極市平臺(tái)
極市導(dǎo)讀
本文介紹一種以Tiny YOLOV3的速度達(dá)到Y(jié)OLOV3的效果的網(wǎng)絡(luò)。 >>加入極市CV技術(shù)交流群,走在計(jì)算機(jī)視覺(jué)的最前沿
1 介紹
本文提出一種專(zhuān)門(mén)用于檢測(cè)小目標(biāo)的框架,框架結(jié)構(gòu)如下圖:

我們探索了可以提高小目標(biāo)檢測(cè)能力的3個(gè)方面:Dilated模塊,特征融合以及passthrough模塊。
Dilated Module:上下文信息對(duì)于檢測(cè)小目標(biāo)是很重要的,一種方法是重復(fù)的上采樣來(lái)恢復(fù)丟失的信息,同時(shí)下采樣來(lái)擴(kuò)大感受野。但是,這個(gè)過(guò)程中信息丟失是難免的,受dilated卷積的啟發(fā),我們提出了Dilated Module,在不損失分辨率的情況下,提升感受野。
特征融合:不同層的特征圖包含不同的特征,淺層特征包含細(xì)節(jié)信息,深層特征包含語(yǔ)義信息,兩者對(duì)于檢測(cè)小目標(biāo)都很重要,所以,對(duì)于不同的Dilated Module出來(lái)的特征圖,我們進(jìn)行拼接,全部用來(lái)檢測(cè)小目標(biāo)。
Passthrough Module:位置信息對(duì)于小目標(biāo)也是至關(guān)重要的,我們提出了Passthrough Module從結(jié)合淺層特征圖和深層特征圖一起得到準(zhǔn)確的位置信息。本文的主要貢獻(xiàn):
(1)提出了Dilated Module來(lái)擴(kuò)大感受野,提出了Passthrough Module來(lái)利用上下文信息和小目標(biāo)的位置信息??紤]到小目標(biāo)的特點(diǎn),用特征融合來(lái)同時(shí)獲取細(xì)節(jié)特征和語(yǔ)義信息,為了模型加速,使用了1x1卷積來(lái)降維。
(2)基于VEDAI數(shù)據(jù)集和DOTA 數(shù)據(jù)集,我們制作了一個(gè)small vehicle數(shù)據(jù)集,同時(shí),分析了每個(gè)數(shù)據(jù)集的分布。
(3)我們?cè)赩EDAI數(shù)據(jù)集和DOTA 數(shù)據(jù)集上進(jìn)行了訓(xùn)練和評(píng)估,結(jié)果表明,我們的網(wǎng)絡(luò)非常的簡(jiǎn)單,快速和高效。
2 方法
2.1 DILATED模塊
使用Dilated卷積可以在不降低分辨率的情況下,指數(shù)的增加感受野,如圖2所示:
我們使用Dilated卷積作為基本單元,構(gòu)建Dilated Module,為了重復(fù)使用之前層的特征,我們把之前層的特征通過(guò)拼接合并起來(lái),然后使用1x1的卷積來(lái)降維,模塊結(jié)構(gòu)如下:
2.2 PASSTHROUGH模塊
為了可以利用到之前的層的信息,我們使用了stride為2的passthrough層,這個(gè)passthrough層將特征圖從2N×2N×C轉(zhuǎn)換為N×N×4C,過(guò)程如圖4,左邊是passthrough層的輸入,右邊是passthrough層的輸出:

我們使用passthrough層作為基本單元,構(gòu)建了passthrough module,具體結(jié)構(gòu)見(jiàn)圖5,LayerA表示之前的層,LayerB表示當(dāng)前的更深一點(diǎn)的層:

2.3 特征融合
本文使用拼接的方式來(lái)融合淺層特征和深層特征,框架里有2種特征融合的方法,一種是在不同的Dilated Module之間進(jìn)行特征融合,此時(shí),特征圖的分辨率是相同的,直接拼接就可以。見(jiàn)圖6。還有一種是類(lèi)似passthrough module,中間有降采樣的過(guò)程,特征圖的分辨率已經(jīng)改變了,如果要拼接的話(huà),就需要進(jìn)行通過(guò)passthrough層或者上采樣層。這里選用了passthrough層來(lái)進(jìn)行融合。

2.4 網(wǎng)絡(luò)結(jié)構(gòu)
我們這個(gè)網(wǎng)絡(luò)的目標(biāo)是檢測(cè)小目標(biāo),太多的下采樣層對(duì)于檢測(cè)小目標(biāo)并不好,但是,下采樣層的個(gè)數(shù)又直接影響到感受野的大小。所以,這里,我們使用了2個(gè)dilated模塊(Dilated module A 和 Dilated module B ),特征圖下采樣2次,然后和使用passthrough module下采樣3次的特征圖進(jìn)行融合,為了加速,每次拼接之后,使用1x1卷積進(jìn)行降維。最后一層進(jìn)行結(jié)果的預(yù)測(cè),尺寸為,這里,為每個(gè)網(wǎng)格點(diǎn)預(yù)測(cè)的框的數(shù)量,默認(rèn)是3。感受野的計(jì)算公式:

如表3所示,使用了2個(gè)Dilated卷積的網(wǎng)絡(luò),只下采樣3次,感受野和下采樣4次的網(wǎng)絡(luò)一樣。

3 實(shí)驗(yàn)
我們分析了VEDAI數(shù)據(jù)集和DOTA 數(shù)據(jù)集的數(shù)據(jù)分布:


在VEDAI數(shù)據(jù)集上,設(shè)計(jì)了2種實(shí)驗(yàn),實(shí)驗(yàn)1是將‘car’, ‘pick-up’和 ‘van’ 合并成了1個(gè)類(lèi)別,實(shí)驗(yàn)2是使用了原來(lái)的9個(gè)類(lèi)別,結(jié)果如下,結(jié)果明顯好于YOLOv2和Tiny YOLOv3,但是低于YOLOv3:


在DOTA數(shù)據(jù)集上的比較:

不同網(wǎng)絡(luò)的速度的比較:

可以看到,模型速度和Tiny YOLOv3相當(dāng),準(zhǔn)確率大大超過(guò)Tiny YOLOv3,僅僅比YOLOv3略低。
如果覺(jué)得有用,就請(qǐng)分享到朋友圈吧!
公眾號(hào)后臺(tái)回復(fù)“CVPR21檢測(cè)”獲取CVPR2021目標(biāo)檢測(cè)論文下載~

# CV技術(shù)社群邀請(qǐng)函 #

備注:姓名-學(xué)校/公司-研究方向-城市(如:小極-北大-目標(biāo)檢測(cè)-深圳)
即可申請(qǐng)加入極市目標(biāo)檢測(cè)/圖像分割/工業(yè)檢測(cè)/人臉/醫(yī)學(xué)影像/3D/SLAM/自動(dòng)駕駛/超分辨率/姿態(tài)估計(jì)/ReID/GAN/圖像增強(qiáng)/OCR/視頻理解等技術(shù)交流群
每月大咖直播分享、真實(shí)項(xiàng)目需求對(duì)接、求職內(nèi)推、算法競(jìng)賽、干貨資訊匯總、與 10000+來(lái)自港科大、北大、清華、中科院、CMU、騰訊、百度等名校名企視覺(jué)開(kāi)發(fā)者互動(dòng)交流~

