论文笔记 | R-FCN: Object Detection via Region-based Fully Convolutional Networks
2016-07-04 06:15
603 查看
Authors
Jifeng Dai,Yi Li,Kaiming He,Jian Sun代季峰
代码里还有百度云盘的连接,为国人考虑的真周到~
(更新,作者又给出了end2end版本,现有三版code 包括mxnet版: https://github.com/daijifeng001/R-FCN )
Abstract
本文提供了region-based,fully convolutional networks,用于快速精确的目标检测。Fast或者Faster在per-region的时候都需要subnetwork很多次,比如region通过fc层,本文希望可以将几乎所有的计算都可以共享。提出了position-sensitive score maps来处理图像分类时的translation-invariance和目标识别时的translation-variance。R-FCN可以将ResNet等全卷积图片分类器转换为目标识别用。可以达到比faster rcnn快2.5-20倍。1 Introduction
现有的目标检测网络大多数分为两部分:全卷积网络+RoIl之后的不再进行计算共享的网络。但是现在的state of the art 图片分类的网络ResNet,googlenet都是全卷积网络(googLeNet在训练时不是)。我们想在目标检测方面也利用全卷积网络,但是之前的尝试都是精度比较差,在ResNet的文章里http://blog.csdn.net/bea_tree/article/details/51735788,插入了RoI pooling layer 提高了精度,可是却降低了速度,因为在计算每一个RoI时计算不共享(下图是fast的,faster多了RPN)。我们需要设置RoIl-wise subnetwork的原因是图像分类时的translation-invariance和目标识别时的translation-variance的矛盾:
1. 图像分类,希望图片中的物体无论怎么变化都可以被识别,深度卷积网络在这方面做的很好;
2. 在object detection中,物体的定位是需要translation-variance,比如目标变动的时候需要产生与candidate box的相应的合理关系。
Locally adaptive learning for translation-variant MRF image priors
而我们推测越深的卷积网络对于translation越不敏感。
本文提出了一种Region-based Fully Convolutional Network (R-FCN),其结构是FCN中的一种,为了将translation variance 包含进FCN,我们用FCN的输出设计了一组 position sensitive score maps,它包含物体的位置信息,其顶端设有RoI Poolinglayer 来处理位置信息,之后再没有权重层
2 our approach
骨架:ResNet101去掉global average和分类用的fc层,添加一个1024d的1x1conv layer来降低维度,然后加了k2(C+1)通道的conv layers 来产生 score maps。
Position sensitive score maps and RoI pooling:最后的卷积层对每一个类别都产生k^2个score maps,对于第(i,j)个pool bin里数值信息都只对应着第(i,j)个score map:
之后计算平均分:
之后计算softmax得分,用于计算cross-entropy loss及RoIs rank。
在之后的Bounding box regression也是类似,对每一个RoI产生一个4k2的向量,类似的最后使用平均voting产生一个4d向量,分别代表左上角坐标及长和宽。
灵感来源:
J. Dai, K. He, Y. Li, S. Ren, and J. Sun. Instance-sensitive fully convolutional networks. arXiv:1603.08678, 2016.
Training 和fast rcnn类似,loss 分为两部分:
正例需要是与ground truth iou大于0.5的。
本文这种方法还可以比较容易的运用于online hard example mining。
A. Shrivastava, A. Gupta, and R. Girshick. Training region-based object detectors with online hard example mining. In CVPR, 2016.
weight decay 0.0005
momentum 0.9
image:600 p
each GPU:1 image and selects B=128 ROIS for backprop
微调:0.001 lr for 20k mini-batches 0.0001 for 10k mini-batches
RPN:4 step alternating
Inference 如Faster rcnn, 我们估计了300个rois每张图片,最后使用non-maximum suppression来postprocessed(0.3 IoU)
À trous and stride: 由ResNet101的32 p的stride变为16 pixels,增加了score map的分辨率,前四个阶段的stride不变,第五阶段由stride=2变为1,其filter使用hole algorithm修改,其map可提高2.6个百分点:
S. Mallat. A wavelet tour of signal processing. Academic press, 1999 L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L. Yuille. Semantic image segmentation with deep convolutional nets and fully connected crfs. In ICLR, 2015.
为了便于与faster rcnn比较 其RPN由第4阶段的输出conv来计算。
visualization
4 试验对比
VS Faster Rcnn
深度的影响
region proposals的影响
5 conclusion
AuthorsAbstract
Introduction
our approach
试验对比
conclusion
相关文章推荐
- 论文笔记 | HyperNet: Towards Accurate Region Proposal Generation and Joint Object Detection
- PF_NETLINK应用实例NETLINK_KOBJECT_UEVENT具体实现--udev实现原理
- PF_NETLINK应用实例NETLINK_KOBJECT_UEVENT具体实现--udev实现原理
- RemObjects 客户端完整执行流程
- 【译】Using Objects to Organize Your Code
- a different object with the same identifier value was already associated with the session
- XML参数转换为Object,并转换为List或DataTable
- Objective-C方法的使用
- objective-c 编程基础(一 基础语法)
- Objective-C学习笔记——基础知识
- swift基础(十):类型检查操作符is、类型转换操作符as(包括!及?的区别)、AnyObject和Any类型
- Part6 继承与OOD Inheritance and Object-Oriented Design(二)
- java、C++、Objective-C中运行时多态的表现
- Javascript FileSystemObject 读取/创建本地文件及目录文件夹的方法
- iOS学习(二)Objective-C 第一个OC程序
- iOS学习(一)Objective-C 概述和特点
- 使用NSProxy和NSObject设计代理类的差异
- Objective-C类的定义和实现
- 参加了Object-Oriented Analysis and Design Using UML培训
- Objective-C Runtime 深入了解