天天看點

Light-Head R-CNN學習筆記

Light-Head R-CNN學習筆記

在這篇文章裡,作者主要分析了:

為什麼two-stage detector會慢,主要慢在哪?

如何在解決速度慢同時保證精度?

文中,作者把 two-stage 拆解成 body 跟 head:

body: 生成proposal(RoI)的過程, 即: ROI warping.

head: 基于proposal的recognition過程, 即: RCNN subnet.

作者認為,目前的算法,為了追求best accurcy,一般都會把head設計的非常heavy,是以即使我們把前面的base model變小,還是無法明顯提升檢測速度。

下面的Figure1為我們展示了Faster R-CNN,R-FCN,Light-Head RCNN在結構上的對比圖。

Light-Head R-CNN學習筆記

我們知道,由于Faster RCNN經過ROI Pooling之後需要對每個候選框進行檢測,這是特别耗時的,特别是圖檔中目标很多時。針對這種情況,R-FCN将所有的權重共享,并引入了Position Sensitive Score Map來解決CNN的位置不敏感性,是以在R-FCN中将Score Map的通道設計為P^2(C+1)個,因為對于COCO資料集來說就需要3969個通道,這樣就極大的增加了運算的複雜度,基于這一點Light-Head RCNN的出發點就是是否可以将這個特征圖變薄?但一旦将特征圖變薄,那麼R-FCN裡面的vote方式産生預測結果就不能用了,是以需要增加全連接配接層做輸出映射。

相對于Faster RCNN來講,Light-Head RCNN的檢測頭部分是做了輕量化的,從上圖可以看到Light-Head RCNN中的Region Proposal的通道數變小了,隻有490層,并且隻有一個全連接配接層,參數量大幅減少了。

(這裡這個490是怎麼來的,一臉懵逼,還有怎麼縮減成490的?還是一臉懵逼)

另外論文還在BackBone的最後一層卷積中加入了可分離卷積,以減少該層卷積的運算複雜度,同時實作兩路卷積以增加不同的感受野。

Light-Head R-CNN學習筆記

Inception 3中将大小為k_k的卷積核,用1_k和k*1的兩層卷積來代替。使用這種卷積替換之後,可以在計算結果一緻的前提下減少計算量。減少的計算量,大緻為原來的k/2,文中作者将k取15,是以這裡大大減少了計算了。當然,計算複雜度還跟 C_mid 和 C_out 有關。

下面是精度和速度比較圖:

Light-Head R-CNN學習筆記

繼續閱讀