Faster RCNN

直接切入主题。对于Fast RCNN等一系列算法来说,Selective Search已经成了模型检测速率的一个瓶颈。物体检测算法主要是在GPU上进行的,而Selective Search主要在CPU上进行,这极大的限制了模型的运行速率,所以本文直接弃用了Selective Search,改用RPN网络来产生“候选框”,这样RPN网络可以和物体检测网络一块进行训练,并且可以共享基层的Feature Map,这极大的提高了网络的预测速率。

网络主要由两部分组成,RPN网络和Fast RCNN网络。RPN网络主要负责产生候选框,通俗点来说,RPN网络告诉Fats RCNN网络应该去哪个区域寻找物体。如下图所示:

图片左半部分为RPN网络,右半部分为Fast RCNN网络,这两部分共享基础卷积层。根据论文中解释,RPN网络会扮演一个“Attention”的角色,RPN网络输出候选框,也就是原图中的一些坐标,然后Fast RCNN使用这些候选区域继续进行回归。

  1. Region Proposal Networks
    RPN网络接受图片,并且输出一系列候选框的坐标以及对应物体的分类。RPN如下图所示:

先从基础网络中获取feature map,然后RPN网络使用一个(3,3)的滑动窗口在feature map上进行stride=1的滑动。每一步滑动,都会根据滑动窗口的中心在原图对应位置产生3种尺寸,每种尺寸对应3种比列的一共9个anchor,也就是候选框。feature map中每个点对应的9个anchor,网络会分别为每个anchor预测四个回归向量和两个分类向量,分类向量用来初步预测回归框的坐标,分类向量用来预测anchor中是否有物体。上图中k = 9。
RPN网络的损失函数如下图所示:

损失包括两部分,分类损失和回归损失。并且两种损失都做了正则化操作,需要注意的是回归损失只计算具有物体的anchor。对于框回归来说,回归任务如下图所示:

对于每一个anchor来说,如果其与任何一个ground-truth具有最大的IOU那么它就是positive的;或者其与任何一个ground-truth的IOU大于0.7那么它也是positive sample。对于回归损失的计算:预测点与anchor之间的损失 与 ground-true与anchor之间损失的差别,当其为0时,那么预测框等于ground-truth。

所以Faster RCNN的流程:

  1. 使用基础网络提取特征 Feature Map
  2. 在Feature Map上进行(3,3)的窗口滑动,对应每个滑窗产生9个anchor,对于一个(1000,600)的图片,大概会产生60 * 40 * 9个anchor
  3. 剔除掉超出图片边界的anchor,大约会剩下6000个anchor
  4. 对于有些重复的anchor,采用极大值抑制(NMS)筛选,最终生成2000个anchor
  5. 选取Top-n个anchor传入Fast RCNN进行预测

Faster RCNN一共有两步进行物体的类别和回归框预测,第一次发生在RPN网络,简略的回归候选框坐标并判断anchor中是否有物体,然后经过筛选选取有物体的top-n个anchor进入Fast RCNN再一次进行框坐标回归和具体类别的判定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值