【论文阅读】Fast RCNN论文详解

Fast RCNN

1. Introduction

1.1 R-CNN

R-CNN存在以下几个问题:

  1. Training is a multi-stage pipeline: 训练分多步,每次训练需要fine tuning一个预训练网络,然后region proposals要通过selective search算法获取,还有针对每一个类别都训练一个SVM分类器,最后还要用regressorbounding box进行回归
  2. Training is expensive in space and time: 时间和内存消耗比较大,在训练SVM分类器和bounding box回归器时需要用网络提取的特征作为输入,特征保存在磁盘上再读入的时间消耗是比较大的
  3. Object detection is slow: 测试时比较慢,每张图片的每个region proposals都要卷积,重复操作太多

1.2 Contributions

  1. 更好的检测效果相较于RCNN和SPPNet
  2. 训练是单阶段的,使用多任务损失,即分类损失和回归损失组合在一起
  3. 训练可以更新所有的网络层
  4. 不需要磁盘来存储特征

2. Architecture

在这里插入图片描述

Fast RCNN步骤如下:

  1. 利用selective search算法提取region proposals候选区域
  2. 将整张图片输入 C N N CNN CNN网络中,提取特征,获得feature maps
  3. region proposals候选区域映射到feature maps上,得到RoI projection
  4. 通过ROI Pooling LayerRoI projection变成固定大小的特征图
  5. 将固定大小的特征图通过一系列FC层得到固定长度的特征向量输入到softmaxbbox regressor中。利用softmax loss分类损失和smoothL1 loss回归损失进行联合训练

3. ROI Pooling Layer

RoI池化层使用最大池化将任何有效区域内的特征转化成一个小的带有固定空间范围HxW(比如下图2x2)的特征图

4. Multi-task Loss

4.1 分类损失

与RCNN不同,Fast RCNN使用softmax作为分类器,其真实类别为 u u u的损失定义如下
L c l s ( p , u ) = − l o g p u L_{cls}(p,u)=-logp_u Lcls(p,u)=logpu
其中 p u p_u pu代表预测为类别 u u u的概率

4.2 回归损失

类别 u u u的真实边界框定义为: v = ( v x , v y , v w , v h ) v=(v_x, v_y, v_w, v_h) v=(vx,vy,vw,vh);类别 u u u的预测边界框定义为: t u = ( t x u , t y u , t w u , t h u ) t^u=(t_x^u, t_y^u, t_w^u,t_h^u) tu=(txu,tyu,twu,thu)。对于回归损失定义如下:
L l o c ( t u , v ) = ∑ i ∈ { x , u , w , h } s m o o t h L 1 ( t i u − v i ) L_{loc}(t^u, v)=\sum_{i \in \{x,u,w,h\}}smooth_{L1}(t_i^u-v_i) Lloc(tu,v)=i{x,u,w,h}smoothL1(tiuvi)
其中:
s m o o t h L 1 ( x ) = { 0.5 x 2 i f ∣ x ∣ < 1 ∣ x ∣ − 0.5 o t h e r w i s e smooth_{L1}(x) = \begin{cases} 0.5 x^2 & if \quad |x| < 1 \\ |x|-0.5 & otherwise \end{cases} smoothL1(x)={0.5x2x0.5ifx<1otherwise

4.3 联合损失

L ( p , u , t u , v ) = L c l s ( p , u ) + λ [ u ≥ 1 ] L l o c ( t u , v ) L(p,u, t^u, v)=L_{cls}(p, u) + \lambda[u \geq 1]L_{loc}(t^u, v) L(p,u,tu,v)=Lcls(p,u)+λ[u1]Lloc(tu,v)
其中中括号项代表这样一个函数:当 u ≥ 1 u ≥ 1 u1时,返回1,否则返回0。根据约定代表全部剩余一切的背景类标注成 u = 0 u=0 u=0。所以对于背景而言,没有标注框信息,因而 L l o c L_{loc} Lloc就忽略了。

5. Fast RCNN网络结构

论文中还有采用SVD分解改进全连接层Mini-Batch 采样RoI 反向传播,在此只介绍较为重要的部分。


参考资料:

  1. https://blog.csdn.net/u014380165/article/details/72851319
  2. https://perper.site/2019/02/14/Fast-RCNN%E8%AF%A6%E8%A7%A3/
  3. https://deepsense.ai/region-of-interest-pooling-explained/
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值