1. 程式人生 > >深度學習系列之FPN 個人總結

深度學習系列之FPN 個人總結

FPN是一種優化手段,利用特徵金字塔來進行目標檢測。同時還進行了不同解析度feature map的融合,將低層feature map的高解析度資訊與高層feature map的高語義資訊做了結合。

1. 常見的4種特徵金字塔

這裡寫圖片描述
(a) 由影象金字塔生成特徵金字塔,然後分別在每層feature map上做預測,例如OverFeat

(b) 單特徵對映: 直接在最後一層feature map上做預測。如Fast R-CNN、Faster R-CNN

(c) 利用卷積過程中產生的不同層級的feature map,分別做預測。如SSD

(d) FPN,就是本文的。利用卷積過程中產生的不同層級的feature map,自上而下(top-down),對上層的feature map做上取樣

,下層的feature map做1x1的卷積(為了使channel和上層相同),然後融合成一個feature map,進行預測。

2. FPN的Top-down結構與橫向連線

上面(d)已經講了,這裡再配個圖說明一下。
這裡寫圖片描述
將上層的粗糙的解析度的feature map進行上取樣,與下層高解析度的feature map融合。好吧,YOLOv3就是這樣的。融合後,FPN再用一個3x3的卷積核處理,得到最終要預測的feature map。如此一來,就可以將上層豐富的語義資訊和下層的高解析度資訊結合,有利於小目標的檢測

高解析度影象對小目標的檢測是非常重要的,因為隨著下采樣,解析度降低,小目標的資訊也會丟失很嚴重。