Parallel Feature Pyramid Network for Object Detection


Parallel Feature Pyramid Network for Object Detection

ECCV2018

 

總結:

文章借鑒了SPP的思想並通過MSCAmulti-scale context aggregation)模塊進行特征融合從而提出PFPNetParallel Feature Pyramid Network)算法來提升目標檢測的效果。

1.使用spp模塊通過擴大網絡寬度而不是增加深度來生成金字塔形特征圖

2.提出msca模塊,有效地結合了大不相同規模的上下文信息

3.效果好:82.3% (Pascal VOC 2007), 80.3% (PASCAL VOC 2012), 35.2% (MS-COCO),  

4.速度快:a single Titan X:24fps(512*512),33fps(320*320),

 

 

特征金字塔回顧:

 

 

作者先回顧了之前的特征融合網絡。(a)上方是常見的cnn網絡,下面的結構則引入了特征金字塔,基於多個特征層進行預測,類似於SSD(b)上方是近幾年流行的U-net(也稱為漏斗型網絡),下方的結構融合不同層的特征進行預測,就是17年提出的FPN結構圖。(c)是原始的空間金字塔結構,簡單講就是卷積后的特征圖經過不同size的池化操作得到不同尺度的特征圖,將不同尺度的特征圖做融合后進行預測。(d)是文章提出的網絡結構

 

 

網絡結構:

 

 

Figure3PFPNet的整體結構圖。首先對於一張輸入圖像,先通過一個基礎網絡VGG16全連接換卷積)提取特征,假設提取到的特征通道數是D,基於提取到的特征通過SPP網絡得到不同尺度的特征圖(記為高維特征b),用N表示尺度數量(圖中N=3),得到的特征圖通道數用CH表示,CH等於D;然后通過一個通道縮減操作bottleneck將(b)中的特征圖的通道縮減得到低維特征(對應c),縮減后的通道數用CL表示,公式是CL=D/(N-1)(Figure3中(c)的輸出特征通道數應該是2,而不是圖中顯示的1);然后通過MSCA操作得到融合后的特征圖d,得到的特征通道數是Cp;最后基於融合后的多個特征圖進行預測(每個特征圖經過簡單的預測網絡(3*3conv)回歸預測,非極大抑制得到最終結果)

 

 

Figure4MSCA模塊的結構示意圖。MSCA主要是基於特征通道的concat操作,但是輸入特征有些不同。比如Figure4在得到P1這個融合特征時,是用fH(1)、下采樣(雙線性差值)后的fL(0)、上采樣(非重疊平均池化)后的fL(2)進行concat后得到的。為什么不是用fL(1)而是用fH(1),因為在作者看來相同尺度的特征信息要足夠多,而FH部分得到的特征是未經過通道縮減的,因此在得到某一個尺度的預測層特征時,被融合的對應尺度特征都是采用FH部分的輸出特征,而不是FL部分的輸出特征。相比之下,不同尺度的待融合特征采用FL部分的輸出特征,相當於補充信息。因此concat后的特征通道數中有(N-1)*(D/(N-1))=D個是FL的輸出,有D(等於CH)個是FH的輸出,相當於各占一半,這也是前面介紹的為什么FL的輸出特征通道數用D/(N-1)這個公式的原因。作者嘗試過將CL=2D/N,全由FL進行concat操作得到融合特征,但是參數量增多且性能下降,這部分的實驗結果沒有展示出來,所以對於用fH的特征做融合對效果提升有多大就不得而知了。模塊中的Convs也是一個瓶頸結構(bottleneck)。總的來說MSCA模塊就是一個特征融合模塊,作者期望通過concat操作最大程度地保存提取到的特征信息。

 

損失函數:

文章有兩個不同的anchor確定方式,由此有兩種對應的損失函數

 

一種是用SSDanchor,此時loss記為PFPNet-S:;第二種使用ARManchor refinement module)模塊的anchor,此時loss記為PFPNet-R:

 

 

超參數的選取

文中有兩個值需要人為設置,一個是金字塔的層數N,另一個是低維特征通道數CL。(其實這里有個問題,CL=D/N這不是確定的嗎?為什么還可以調整?)作者根據取值不同做了實驗。訓練集為VOC07+VOC12的訓練集,測試集為VOC07的測試集,取IOU0.5,訓練110K代,初始學習率10-3,在80K100K衰減10倍。可以看到最優取值N=4,CL=256

 

 

 

 

實驗結果:

 

 

Table2為不同模塊對模型的影響,說明了模塊的有效性。

 

 

 

 

其中,PFPNet-S512說明anchorSSD的方式,圖片大小512*512-R說明anchor使用用ARM模塊。

 

 

 

 

 

另外:文中有個總結說得特別好,那就是對於目標檢測任務而言,真正有用的特征一定具備這3個特點:1、特征要包含目標的細節信息。2、特征要通過足夠深的網絡提取得到。3、特征要包含目標的語義信息。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM