ROI (Region of interest pooling) Pooling 层详解

目标检测典型结构通常分为两个阶段:

  • 1)region proposal:
    给定一个输入图像,找出可找到对象的所有可能位置。这个阶段的输出应该是bounding box列表,这些通常被称为region proposal,或感兴趣的地区。
  • 2)final classification:
    对于每一阶段的region proposal,决定属于目标类别还是背景,这里我们使用深度卷机网络。

如果在第一阶段不被检测到的话,那么就没有可能再成功的分类了,这也是为什么region proposal召回率这么高的原因。划分这么多region proposal,但是大多数在检测算法的第二阶段将被划为背景。

问题是:

  • 生成大量region proposal可能会导致性能问题,这会使对实时对象检测实现加大难度;
  • 处理速度方面并不理想;
  • 不做end-to-end 训练,也就是说,无法一次性训练出系统所有的组件。

描述region proposal

region proposal是用于我i提检测任务的神经网络层,保持高精度检测的情况下,实现了训练和测试的显著加速。该图层需要两个输入:

  • 1.来自于有多个卷积层和最大池化层的深度卷积网络中的固定大小的feature map
  • 2.一个表示所有roi的N × 5 的矩阵,N是roi的数量,第一列表示图像索引,其余四个是该区域左上角和右下角的坐标。
    这里写图片描述
    roi pooling具体操作如下:
  • 1)输入image,将roi映射到feature map对应位置;
  • 2)将映射后的区域划分为相同大小的sections(sections 数量与输出唯独相同);
  • 3)对每个sections进行max pooling操作;
    这样我们就可以从不同大小的方框得到固定大小的相应的feature maps。
    值得一提的是,输出的feature maps的大小取决于ROI 和卷积feature maps大小,roi pooling最大的好处就在于极大地提高了处理速度。

example

8×8的feature map ,一个roi,以及输出大小2×2
先看动图了解一下过程:
这里写图片描述
然后具体的过程:
1)输入:
这里写图片描述
2)region proposal 投影之后位置(左上角,右下角比坐标):(0,3),(7,8)
这里写图片描述
3)将其划分为(2×2)个sections(因为输出大小为2×2),我们可以得到:
这里写图片描述
4)对每个sections做max pooling,可以得到:
这里写图片描述
Roi pooling 总结:

  • 1)用于目标检测任务;
  • 2)允许我们对CNN中的feature map进行重复使用;
  • 3)能够显著加速训练和测试时间;
  • 4)允许end-to-end训练
  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值