SEPC:使用3D卷積從FPN中提取尺度不變特徵,漲點神器 | CVPR 2020

曉飛的演算法工程筆記發表於2020-05-26

論文提出PConv為對特徵金字塔進行3D卷積,配合特定的iBN進行正則化,能夠有效地融合尺度間的內在關係,另外,論文提出SEPC,使用可變形卷積來適應實際特徵間對應的不規律性,保持尺度均衡。PConv和SEPC對SO他的檢測演算法有顯著地提升 ,並且沒有帶來過多的額外計算量

來源:曉飛的演算法工程筆記 公眾號

論文: Scale-Equalizing Pyramid Convolution for Object Detection

Introduction


  特徵金字塔是解決物體尺度問題的重要手段,但是不同level的特徵圖其實存在較大的語義差距。為了消除這些語義差距,很多研究專注於如何加強特徵的融合,但這些研究大都直接將特徵圖縮放相加,沒有很好地考慮特徵金字塔的內在屬性。受尺度空間理論(多尺度提取特徵點)的啟發,論文提出PConv(pyramid convolution),使用3-D卷積來關聯相近的特徵圖,挖掘尺度間的相互作用。考慮到特徵金字塔的層間特徵變化較大,層間各點的對應無規律,論文提出SEPC(scale-equalizing pyramid convolution)對特徵金字塔的高層特徵進行可變形卷積,能夠自適應實際的尺度變化,保持層間尺度均衡。
  論文的主要貢獻如下:

  • 提出輕量級金字塔卷積PConv,對特徵金字塔進行3-D卷積來挖掘內在尺度的關聯性。
  • 提出尺度均衡的金字塔卷積SEPC來減少特徵金字塔與高斯金字塔間差異(論文證明了PConv在高斯金字塔上具有尺度不變性)。
  • 該模組能夠提升SOTA single-stage目標檢測演算法的效能,而且幾乎不影響推理速度。

Pyramid convolution


  PConv(pyramid convolution)其實是個3-D卷積,橫跨尺度和空間維度,如圖4a所示,PConv可表示為N個不同的2-D卷積。

  但不同pyramid level的特徵圖大小是不同的,為了容納不同的尺寸,在PConv在處理不同的特徵圖時使用不同的stride,論文采樣$N=3$,首個卷積核的stride為2,最小的的卷積核的stride為0.5。

  PConv可表示為公式1,$w_1$、$w_0$和$w_{-1}$為3個獨立的2-D卷積核,$x$為輸入的特徵圖,$*_{s2}$代表stride為2的卷積核。

  stride為0.5的卷積核先對特徵圖雙線性上取樣2倍,再用stride為1的卷積核進行處理。PConv也使用zero-padding,對於底層和頂層的pyramid level僅需使用公式2的其中兩項即可,PConv的計算量大約為原始FPN的1.5倍。

Pipeline

  如圖5a所示,RetinaNet可看作是$N=1$的PConv,將4個Conv head替換成$N=3$的PConv head,堆疊的PConv能夠有效地逐步提高相關性,而且不會帶來過多的額外計算。但為了儘可能減少計算量,可以選擇分類和定位分支先共享4層PConv,再額外分別新增一層普通卷積層,如圖5b所示,這樣設計的計算量甚至比原生的RetinaNet還要少,具體計算可以看原文Appendix 1。

Integrated batch normalization (BN) in the head

  PConv使用共享的BN層,統計feature pyramid中所有特徵圖,而不是單圖統計。由於統計來自於pyramid內所有的特徵圖,方差會變得更小。這樣,即使使用很小的batch size也可以很好地訓練BN層(方差較穩定)。

Scale-equalizing pyramid convolution


  PConv對於不同的level都使用固定的卷積核大小,在高斯金字塔上(模糊程度不嚴重且高斯核接近特徵圖縮放比例),PConv能夠提取尺度不變的特徵,具體證明可以看原文Appendix 3。
  但實際中,由於多層卷積和非線性操作的存在,特徵金字塔的模糊程度比高斯金字塔要嚴重得多(特徵的縮放程度可能跟特徵圖大小不成比例),使用固定的卷積核大小很難提取尺度不變的特徵。為此,論文提出SEPC(scale-equalizing pyramid convolution),對除最底層外的高層特徵使用可變形卷積,單獨預測一個offset,能夠自適應各層的模糊程度,保持特徵圖間的尺度均衡,從而提取尺度不變的特徵。
  SEPC主要有以下好處:

  • 可變形卷積的自適應效能夠處理特徵金字塔較大的層間模糊程度。
  • 消除特徵金字塔與高斯金字塔間的差異(論文證明PConv能夠對高斯金字塔提取特徵不變的特徵)。
  • 由於高層特徵的卷積計算量相對於低層減少了4倍(面積減少),對高層加入可變形卷積僅帶來少量額外的計算量。

  SEPC分為兩個版本,SEPC-full對圖5b的Combined head和Extra head加入SEPC,而SEPC-lite則僅對Extra head加入SEPC。

Experiments


Single-stage object detectors

Effect of each component

Comparison of different BN implementations in the head

  BN層的輸出$y=\gamma \frac{x-\mu}{\sigma} + \beta$,$\gamma$和$\beta$為引數,$\mu$和$\sigma$為統計結果,圖7的三種BN的對比,其中Integrated BN(iBN)為論文提出的共享BN,全部引數和統計共享

Comparison with other feature fusion modules

Comparison with state-of-the-art object detectors

Extension to two-stage object detectors

CONCLUSION


  論文提出PConv為對特徵金字塔進行3D卷積,配合特定的iBN進行正則化,能夠有效地融合尺度間的內在關係,另外,論文提出SEPC,使用可變形卷積來適應實際特徵間對應的不規律性,保持尺度均衡。PConv和SEPC對SO他的檢測演算法有顯著地提升,並且沒有帶來過多的額外計算量。



如果本文對你有幫助,麻煩點個贊或在看唄~
更多內容請關注 微信公眾號【曉飛的演算法工程筆記】

work-life balance.

相關文章