FPN(feature pyramid networks)论文笔记

论文概述:

这篇论文是CVPR2017年的文章,采用特征金字塔代替了传统的Scale handling 方法,截止目前(2018.11.26)引用量为529次。
在这里插入图片描述
论文链接:https://arxiv.org/abs/1612.03144

深度卷积神经网络天然地就能计算出金字塔特征结构,作者正是要利用这一点来构造一个在所有层级上都能有强语义的特征金字塔结构。 具体说来是要通过自顶向下(top-down)的通路以及横向连接将低分辨率、强语义特征和高分辨率、弱语义特征进行有机的结合与类似算法不同之处在于FPN预测是在不同特征层独立进行的,而不是融合后在某一个单一的层次做预测,这很好保留了低层次的信息不丢失。下图描述了这两类网络的不同。

在这里插入图片描述

Introduction:

1、特征图金字塔(Featurized image pyramid),计算量大
在这里插入图片描述
CNN中卷积层产生不同scale的图像,对每个scale的图像对应生成feature后作predict,计算开销和存储开销都较大。基于深度网络的检测算法出来之前,检测算法基本都是基于这种scale handling;后来出现的SNIP、SNIPER也是基于Image Pyramid。

2、Single feature map 框不出小物体像
在这里插入图片描述
多数的object detection算法如R-CNN、SPPNet、Fast R-CNN、Faster R-CNN、YOLOv1以及R-FCN系列均采用这种方式,即仅采用网络顶层特征作预测

3、Pyramidal feature hierarchy 底虽然框出了小物体,但小物体容易被错分:
在这里插入图片描述
One-stage算法SSD(Single Shot Detector)采用多尺度特征融合的方式没有上采样过程直接由特征做预测,这种方式不会增加额外的计算量。作者认为SSD算法中没有用到足够低层的特征(在SSD中,最低层的特征是VGG网络的conv4_3),而在作者看来足够低层的特征对于检测小物体是很有帮助的。

4、Feature Pyramid Networks
FPN结构包含三大要素:从底向上的通路(bottom-up pathway)、从顶向下的通路(top-down pathway)和横向连接(lateral connection),来 融合 “ 少位置信息而多语义信息的top层feature map ” 和 “ 多位置信息而少语义信息的down层feature map ” :
在这里插入图片描述
下图中放大的区域就是横向连接,这里1*1的卷积核的主要作用是减少卷积核的个数,也就是减少了feature map的个数,并不改变feature map的尺寸大小。
在这里插入图片描述

Note:

在FPN(+Faster R-CNN)中,选用了 C2~C5 四个scale,并对C5下采样出了 P6 一个scale。

在RetinaNet中,选用了 C3~C5 三个scale,并对C5下采样出了 P6、P7 两个scale。