Faster R-CNN改进篇(二): RFCN ● RON

@改进1:RFCN

       论文:R-FCN: Object Detection via Region-based Fully Convolutional Networks    【点击下载

       MXNet代码:【Github

一. 背景介绍

       RCNN 在目标检测上取得了很大的成功,比如 SPPnet、Fast R-CNN、Faster R-CNN 等,这些方法的典型特征都是 一个二分网络,以 ROI Pooling 为界,前面子网络用于特征提取后面子网络用于 目标检测(Per ROI),带来的问题是 后面的子网络需要对每一个 ROI(Candidate)进行重复计算

       这种模式的形成是有原因的:Detection 来自于前期的分类网络(如 AlexNet、VGG),最后一个 Spatial Pooling 层直观对应到 RoI Pooling,这算是一个历史问题。

       新提出的几个网络(ResNet、GoogLeNets)原生就是全卷积网络,因此也就将这种结构天然的对应到 Detection 问题上,想在 ResNet 上实现Detection,需要增加一个 ROI Pooling 层,但插入的位置很关键(每个 ROI 候选框对应一次计算,对应 后面子网的计算量 x N):

  • 越靠近 Input - 对应 ROI-Wise 检测子网越深,准确度也就越高;
  • 越靠近 Output - 对应 ROI-Wise 子网越浅,针对每个 ROI 计算量就越小,效率提高;

       PS:减少 Proposal(ROI)的数量也是一个好办法,这对 Proposal 的要求会比较高(根据得分排序),先不讨论这种思路。

        

       通过上面 可选的方案对比,可以看到 R-CNN 直接输入 Proposal,因此整个网络都用作检测,Faster 保留了后面10层用于检测,而作者新提出的方法则是 将 101 层全部用于共享,那么这种方案的可行性是怎么来保证的呢?

       

二. 提出框架

       作者首先分析了 分类/检测 这两类问题的区别:

● 分类问题 - 具有平移不变性(Translation Invariance);

● 检测问题 - 在一定程度上具有平移敏感性 (Translation Variance);

       通过 RoI pooling 的插入,打破了原卷积网络的平移不变性,但这种做法牺牲了训练和测试效率(Region-Wise)。

       针对上述问题,作者提出了 一种新的卷积层 - Position Sensitive 的 Score Map,Score Map 包含了位置信息,如下图所示:

        

       有两个关键层:

  • 13
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值