【论文学习笔记006】R-FCN

1.论文信息

题目 R-FCN: Object Detection via Region-based Fully Convolutional Networks
作者 Jifeng Dai, Yi Li, Kaiming He, Jian Sun
年份 2016
论文地址 https://arxiv.org/abs/1605.06409
项目地址 https://github.com/daijifeng001/r-fcn

2. 论文创新点

  • 改造Faster RCNN中的ROI Pooling层,设置位置敏感得分图实现平移不变性以及平移敏感性;共享计算
  • 改用更加强大的ResNet作为骨干网络

3.欲解决的问题

  • 提升Faster RCNN的检测速度

4.解决方案

4.1 概述

在这里插入图片描述

  • 整体架构图如上所示
  • 基于ResNet-101骨干网络,采用前100个卷积层提取特征
  • 采用RPN网络生成ROI
  • 采用位置敏感得分图以及ROI一起池化,经过softmax回归,得到每个ROI属于每个类别的概率;同时ROI与回归层的输出进行池化可得每个ROI的坐标
    在这里插入图片描述

4.2 主干架构

  • 基于ResNet-101,仅采用前100层卷积层提取特征,去掉了池化层与全连接层;
  • 最后一个卷积块是2048维,附加了一个随机初始化的1024维的1x1的卷积层以降低维度;
  • 采用kk(C+1)个通道的卷积层生成得分图

4.3 位敏得分图&位敏ROI池化

  • 为了在ROI中明确编码位置信息,将每个ROI分成KxK个bins;在第i行第j列的bin中,采用位敏ROI池化操作,将结果汇集在第(i,j)个得分图上:
    在这里插入图片描述
  • 用KxK个得分图对ROI区域进行投票,产生(C+1)为向量(含有1个背景),然后计算每个类别的softmax响应:
    r c ( Θ ) = i , j r c ( i , j Θ ) r_{c}(\Theta)=\sum_{i, j} r_{c}(i, j | \Theta) s c ( Θ ) = e r c ( Θ ) / c = 0 C e r c ( Θ ) s_{c}(\Theta)=e^{r_{c}(\Theta)} / \sum_{c^{\prime}=0}^{C} e^{r_{c} \prime}(\Theta)
  • 除了KxKx(C+1)个卷积层,附加一个4xKxK个卷积层用于边界框回归。对于每一个ROI生成一个4xKxK维的向量,再通过平均投票得到一个4维向量t

4.4 训练

  • 损失函数为每个ROI上的交叉熵损失与边界框回归损失之和:
    在这里插入图片描述
  • ROI与ground truth 的IOU大于等于0.5时,为正样本,反之负样本;

5.几点思考

5.1 平移不变性以及平移敏感性

  • 平移不变性是指无论目标怎么移动,扭曲,最终识别结果不变;平移敏感性是指目标的位置发生变化,输出的目标坐标值随之变化;
  • ResNet-100网络层数较深,平移不变性明显,但随着输出的特征图不断变小,目标在输入中的小偏移经过很多层池化后在特征图上很难感知,因此平移敏感性会变差;
  • 在ResNet-100中间(conv4与conv5之间)加个ROI层,ROI层提取出的proposal中,有的对应前景label,有的对应背景label,proposal位置的偏移就有可能造成label分类的不同,分类loss对proposal的位置是敏感的,因此ROI层给深层网络带来了平移敏感性。

6.论文结果

  • PASCAL VOC2007中,mAP为83.6%,FPS为6

7.待解决的问题

  • 检测帧率没有达到实时
发布了15 篇原创文章 · 获赞 14 · 访问量 1255

猜你喜欢

转载自blog.csdn.net/chiyukunpeng/article/details/103123991
今日推荐