R-FCN: Object Detection via Region-based Fully Convolutional Networks
- Paper
- Code
摘要
- 全卷积网络,全部是卷积层,移除了最后的全连接层(fc).
- 几乎所有的计算都是在整张图像上共享的.
- position-sensitive score maps 位置敏感分数图, 平衡图像分类所需的平移不变性和目标检索所需的平移变化性间的矛盾.
Introduction
目标检测的框架根据ROI pooling 层可以分为两个子网络: - 共享的,全卷积子网络,独立于ROI; - 各个ROI子网络,不共享计算
图像分类中,要求网络对于平移不变性越强越好,比如图像中的猫,不管平移到图像的哪个位置,仍是猫; 目标检测则要求网络对平移变化越敏感越好,需要平移变化来定位图像中目标位置.
一般假设在图像分类网络中,网络卷积层越深, 网络的加深,使得其对位置信息的保留越来越少,对平移变化越不敏感. 但目标检测需要对图像中目标的位置信息能较好的感知.
在ResNet-101做目标检测的框架中,是将ROI pooling层插入到前面的卷积层,其后面的卷积层不共享计算,降低了平移不变性,ROI后的卷积层对不同的区域块不再具有平移不变性. 该方法引入了相当数量的逐区域层.
提出R-FCN(Region-based Fully Convolutional Network )框架,解决目标检测任务: - R-FCN是共享的、全卷积网络结构 - 采用指定的卷积层的输出,来构建 position-sensitive score maps 集合. 各个score map分别编码了对于某个相对空间位置的位置信息,如物体的左边(to the left of an object). - 在FCN网络层的上面,添加一个位置敏感的ROI pooling 层,来处理来自score maps的信息, 后面不需要权重层(conv/fc). - End-to-end - 所有的训练层都是卷积层,在整张图像上共享计算
R-FCN
two-stage 目标检测策略: - region proposal 候选区域 - region classification 区域分类
- 采用RPN(Region Proposal Network)网络提取候选区域,RPN是全卷积网络结构. R-FCN和RPN共享特征.
- 给定候选区域(ROIs),R-FCN网络将ROIs分类到不同的物体类别和背景.
基础网络结构
- 如果与 ground-truth box 的 IoU 大于 0.5的ROIs,设为positive examples; 小于0.5,设为negative examples.
- 单尺度训练(single-scale training),将图像裁剪为最短边为 600 pixels的尺寸
- 单个GPU训练一张图片,共8GPUs,选取 B=128B=128B=128 个 ROIs作为备选.
- fine-tune R-FCN,weight_decay = 0.0005, momentum=0.9,20K次 mini-batches的 lr=0.001, 10K次mini-batches的 lr=0.0001.
推断
如Figure 2 所示. - 输入图像是单尺度的,尺寸为 600×600 - RPN和R-FCN的 feature map是计算是共享的 - RPN 提取 ROIs,R-FCN 估计各个类的 scores,以及回归边界框. - 最后进行 NMS(non-maximum suppression) 后处理,IoU 阈值为 0.3.
À trous and stride
- R-FCN 继承了FCN的网络的特点
- R-FCN 将 ResNet-101 的有效步长由 32 pixels 减少到 16 pixels,以增加 score map 的分辨率
- 在 conv4 stage之前的网络层保持不变(stride=16)
- 第一个 conv5 网络块的步长由 stride=2 修改为 stride=1,所有 conv5 stage的卷积 filters 根据 “hole algorithm” 进行修改,以补偿减少的步长.
可视化
如 Figure 3 和Figure 4,图示了当 k×k=3×3k×k=3×3k×k=3×3时,由 R-FCN 学习得到 position-sensitive score maps. - 这些得到的 maps 应该对于物体的相对位置具有较强的响应. 例如,“top-center-sensitive” 对于物体的 top-center 附近的位置应该具有high socre. - 如果候选 box 能够与真实物体重叠较精确,如Figure 3, 则ROI的 k2k2k^2 个单元格中的大部分被激活,且得到的投票分数较高. - 如果候选 box 与真实物体不能正确重叠,如Figure 4,则ROI 的 k2k2k^2 个单元格中的一些是不被激活的,且投票分数较低.
Result
相关
- R-FCN:基于区域的全卷积网络来检测物体
- R-FCN: Object Detection via Region-based Fully Convolutional Networks