目标检测 Feature Pyramid Networks for Object Detection(FPN)论文笔记
原文: Feature Pyramid Networks for Object Detection
作者: Tsung-Yi Lin, Piotr Dollar, Ross Girshick, Kaiming He, Bharath Hariharan, and Serge Belongie
下载地址: https://arxiv.org/abs/1612.03144
1 简介
- 长久以来,在不同尺度下识别物体一直是计算机视觉一大挑战。传统的解决方法是对一张图像进行缩放,形成图像金字塔,然后从每层分别提取特征,形成对应的特征金字塔(如Figure1(a))。这种方法曾经在深度学习方法之前很受欢迎,但之后逐渐被CNN一系列方法替代。因为CNN网络已经能够自动提取高级特征,并且鲁棒性更强(如Figure1(b)),而且金字塔结构相对而言太耗时间了。
- 即便如此,CNN系列的检测网络对于小物体还是不够理想,所以还是可以考虑使用金字塔。SSD(Single Shot Detector)对此进行过尝试(如Figure1(c))。**网络的浅层分辨率高,但特征表示较为低级;深层的分辨率低,但有更高级的特征表示。**SSD从每层的特征中进行预测,为了避免计算量过大,前面的浅层信息没有使用。但本文表明这些高分率的浅层信息也是很有用的。
- 作者根据以上提出了FPN(Feature Pyramid Networks)(如Figure1(d))。网络首先通过bottom-up pathway由浅到深提取特征(就是正常的网络结构),再通过top-down pathway和lateral connections生成在每个等级都有丰富语义的特征金字塔。
- 过去有一些研究方法采用的是Figure2上半部的结构,即只在top-down pathway的最后一层做预测。而本文的方法在每一层都有预测(Figure2下半部)。
2 FPN介绍
2.1 Bottom-up pathway
- bottom-up pathway就是平常见到的前向传播网络,从原图开始,一层一层计算特征。作者将一些尺度相同的层称为同一“stage”。下一个stage的分辨率比上一个降低了1倍。在后面的特征金字塔中,只取每个stage的最后一层参与其构成。
- 由于使用的是Resnet作为主干,作者将其分成5个stage,每个stage最后的conv输出标记为 {
C1,C2,C3,C4,C5} 。第一层占用的内存太多,因此只取 {
C2