編者按:深度學習知名博主Jonathan Hui簡要介紹了FPN(特征金字塔網(wǎng)絡)的直覺、架構(gòu)和表現(xiàn)。
檢測不同尺度的目標(尤其是其中的小目標)很有挑戰(zhàn)性。我們可以使用同一圖像的不同尺度版本來檢測目標(下圖左部)。然而,處理多尺度圖像很費時,內(nèi)存需求過高,難以同時進行端到端訓練。因此,我們可能只在推理階段使用這種方法,以盡可能提高精確度,特別是在競賽之類不顧及速度的場景中。我們也可以創(chuàng)建特征金字塔來檢測目標(下圖右部)。然而接近圖像的、由低層結(jié)構(gòu)組成的特征映射在精確目標預測上效果不佳。
來源:FPN論文
特征金字塔網(wǎng)絡(Feature Pyramid Network,FPN)是為這一金字塔概念設計的特征提取器,設計時考慮到了精確性和速度。它代替了Faster R-CNN之類的檢測模型的特征提取器,生成多層特征映射(多尺度特征映射),信息的質(zhì)量比普通的用于特征檢測的特征金字塔更好。
數(shù)據(jù)流
來源:FPN論文
FPN由自底向上和自頂向下兩個路徑組成。自底向上的路徑是通常的提取特征的卷積網(wǎng)絡。自底向上,空間分辨率遞減,檢測更多高層結(jié)構(gòu),網(wǎng)絡層的語義值相應增加。
FPN特征提取(修改自FPN論文中的圖片)
SSD基于多個特征映射進行檢測。然而,低層并不用于目標檢測——這些層的分辨率很高,但語義值不夠高,因此,為了避免顯著的速度下降,目標檢測時不使用這些層。因為SSD檢測時僅適用高層,所以在小目標上的表現(xiàn)要差很多。
修改自FPN論文中的圖片
而FPN提供了自頂向下的路徑,基于語義較豐富的層構(gòu)建分辨率較高的層。
修改自FPN論文中的圖片
盡管重建的層語義足夠豐富,但經(jīng)過這些下采樣和上采樣過程,目標的位置不再準確了。因此FPN在重建層和相應的特征映射間增加了橫向連接,以幫助檢測器更好地預測位置。這些橫向連接同時起到了跳躍連接(skip connection)的作用(類似殘差網(wǎng)絡的做法)。
修改自FPN論文中的圖片
自底向上路徑
自底向上路徑由很多卷積模塊組成,每個模塊包含許多卷積層。自底向上的過程中,空間維度逐模塊減半(步長翻倍)。每個卷積模塊的輸出將在自頂向下的路徑中使用。
自頂向下路徑
上圖中,F(xiàn)PN使用一個1x1的卷積過濾器將C5(最上面的卷積模塊)的頻道深度降至256維,得到M5。接著應用一個3x3的卷積得到P5,P5正是用于目標預測的第一個特征映射。
沿著自頂向下的路徑往下,F(xiàn)PN對之前的層應用最近鄰上采樣(x2)。同時,F(xiàn)PN對自底向上通路中的相應特征映射應用1x1卷積。接著應用分素相加。最后同樣應用3x3卷積得到目標檢測的特征映射。這一過濾器減輕了上采樣的混疊效應。
這一過程在P2后停止,因為C1的空間維度太高了。如果不停,依法炮制得到P1的話,會大大拖慢進程。
FPN搭配RPN
FPN自身并不是目標檢測器,而是一個配合目標檢測器使用的特征檢測器。例如,使用FPN提取多層特征映射后將其傳給RPN(基于卷積和錨的目標檢測器)檢測目標。RPN在特征映射上應用3x3卷積,之后在為分類預測和包圍盒回歸分別應用1x1卷積。這些3x3和1x1卷積層稱為RPN頭(head)。其他特征映射應用同樣的RPN頭。
FPN搭配Fast R-CNN和Faster R-CNN
首先簡短地概覽下Fast R-CNN和Faster R-CNN的數(shù)據(jù)流。它基于特征映射層創(chuàng)建ROI(感興趣區(qū)域)。然后使用ROI和特征映射層創(chuàng)建特征片,以傳給ROI池化。
FPN生成了特征映射金字塔后,應用RPN(見上一節(jié))生成ROI。根據(jù)ROI的尺寸,選擇最合適的尺度上的特征映射以提取特征片。
基于ROI尺寸選擇特征映射的具體公式為:
其中,w和h為ROI的寬度和高度,k0= 4,k對應FPN中的Pk層。
所以,如果k = 3,我們將選擇P3作為特征映射,應用ROI池化,并將結(jié)果傳給Fast R-CNN/Faster R-CNN頭(兩者的頭一致),以完成預測。
分割
類似Mask R-CNN,F(xiàn)PN也是一個優(yōu)良的圖像分割提取掩碼。下圖中,應用5x5的滑窗于特征映射,以生成14x14分割。之后,合并不同尺度的掩碼以形成最終的掩碼預測。
來源:FPN論文
結(jié)果
FPN搭配RPN,提升AR(average recall,平均召回)至56.3,相比RPN基線提升了8. 在小目標上的提升更是達到了12.9.
來源:FPN論文
基于FPN的Faster R-CNN的推理時間為0.148秒/張(單Nvidia M40 GPU,ResNet-50),單尺度ResNet-50基線的速度是0.32秒/張。
來源:FPN論文
FPN和當前最先進的檢測器實力相當。事實上,F(xiàn)PN擊敗了COCO 2016和2015挑戰(zhàn)的贏家。
來源:FPN論文
經(jīng)驗總結(jié)
下面是從試驗數(shù)據(jù)中總結(jié)出的一些經(jīng)驗。
在單個高分辨率特征映射層上增加更多錨不足以提升精確度。
自頂向下路徑重建了富含語義信息的分辨率。
但我們需要橫向連接,以便將更多準確的目標空間信息加回來。
在COCO數(shù)據(jù)集上,自頂向下路徑和橫向連接將精確度提升了8。小目標的提升達到了12.9.
-
檢測器
+關注
關注
1文章
863瀏覽量
47676 -
圖像
+關注
關注
2文章
1083瀏覽量
40449 -
數(shù)據(jù)流
+關注
關注
0文章
119瀏覽量
14349
原文標題:特征金字塔網(wǎng)絡FPN的直覺與架構(gòu)
文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論