2017-02-27-深度学习论文笔记:R-FCN
来源:互联网 发布:csgo 淘宝版 编辑:程序博客网 时间:2024/06/13 06:26
Abstract
- 提出了一个region-based, fully convolutional的网络来准确高效的进行物体检测。
- 不同于Faster R-CNN,本论文的region-based detector是完全卷积化的,几乎一张图像上所有的计算都是共享的。
- 为了实现这一目标,我们提出position-sensitive score maps,以解决在图像分类的平移不变性(translation-invariance)和物体检测中的平移可变性(translation-variance)之间的困境。
Introduction
- 最近流行的用于目标检测的深度学习框架依据RoI层的不同可以分为两大subnetworks:
- 一类是共享的、fully convolutional的subnetwork。
- 另一类是RoI-wise的subnetwork,不共享计算。
- 在图像分类网络中,一个convolutional subnetwork会以一个sptial pooling layer更随着几个fully-connected layer最为结尾,所以图像分类中的sptial pooling layer自然转化为目标检测中的RoI pooling layer。
- ResNet和GoogleLeNets都被设计成fully convolutional的。
- 在ResNet论文中,Faster R-CNN中的RoI pooling layer被不自然的插入到两个卷积层集之间,带来了准确率的提升,但是速度由于unshared per-RoI计算降低。
- 假设图像分类网络中更深层的卷积层对translation不敏感。
- 为了将translation variance结合到FCN中,我们通过使用一组专用卷积层作为FCN输出来构造一组位置敏感得分图(position-sensitive score maps)。每一个得分图将相对于相对空间位置(例如,“在对象的左边”)的位置信息进行编码。在这个FCN之上,我们附加一个位置敏感的RoI池层(position-sensitive RoI pooling layer),从这些得分图中获取信息,没有跟随的重量(卷积/ fc)层。
Our approach
本论文的方法参考与R-CNN,也是使用two-stage的目标检测策略。
- region proposal
- region classification
虽然不依赖于region proposal的目标检测方法确实存在,但是region-based system依旧在几个基准上保持领先的准确性。
Overall architecture of R-FCN:
用RPN来提出candidate RoIs,然后这些RoIs被应用到score maps,在RPN和R-FCN之间共享特征。
最后卷积层为每个类别产生一组
k2 个position-sensitive score maps,因此具有带有C个对象类别(背景为+1)的k2(C+1) 通道的输出层。每一个category有一个
k2 的score mapRPN以一个position-sensitive RoI pooling layer结束,该层聚合最后卷积层的输出并产生每个RoI的分数。我们的position-sensitive RoI pooling layer进行选择性合并,each of the k × k bin aggregates responses from only one score map out of the bank of k × k score maps。利用端到端训练,这个RoI层管理最后的卷积层以学习专门的position-sensitive score maps。
Backbone architecture
- 本论文R-FCN基于ResNet-101。
- ResNet-101具有100个卷积层,后面是global average pooling和一个1000-class的fc层。我们移去了average pooling layer and the fc layer,仅使用convolutional layer来计算feature maps。
- 我们使用ResNet-101,在ImageNet上进行预训练,ResNet-101中的最后一个卷积块是2048-d,并且我们附加随机初始化的1024-d 1×1卷积层以减小尺寸。然后,我们应用
k2(C+1) 通道卷积层来生成分数图,如下所述。
Position-sensitive score maps & Position-sensitive RoI pooling.
- 为了将位置信息显式编码到每个RoI中,我们将RoI矩形划分为k x k个bins。
- 构造最后的卷积层为每个类别产生的
k2 个分数图。 - 利用average pooling。
- bounding boxes regression。
Training
OHEM: online hard example mining
loss function:
在前向传播中:每张图片N个proposals。我们计算所有N个proposal的loss,排序,选择最高的B个RoIs。然后在选中的proposal上进行反向传播。
decay:0.0005
momentum:0.9
single-scale training。
B=128
lr = 0.001 ~20k, 0.0001 ~ 10k
同Faster R-CNN一趟,使用4步alternating training,在训练RPN和训练R-FCN之间。
Inference
- 为公平期间,在300个RoIs上进行评估,结果之后用NMS进行处理,IoU阈值0.3
À trous and stride
- 将ResNet-10的有效stride从32减为16像素,提高了score map的分辨率。
- Algorithme à trous
- 2017-02-27-深度学习论文笔记:R-FCN
- 【深度学习论文】FCN
- 深度学习论文笔记:Fast R-CNN
- 深度学习论文笔记:Faster R-CNN
- r-fcn论文
- R-FCN论文翻译
- 深度学习论文笔记(六)--- FCN-2015年(Fully Convolutional Networks for Semantic Segmentation)
- [计算机视觉][神经网络与深度学习]R-FCN、SSD、YOLO2、faster-rcnn和labelImg实验笔记
- [深度学习论文笔记][Object Detection] Fast R-CNN
- R-FCN 论文理解2
- 深度学习论文笔记
- R-FCN阅读笔记
- 深度学习目标检测模型发展过程:R-CNN Fast R-CNN Faster R-CNN R-FCN
- 【深度学习:目标检测】 RCNN学习笔记(11):R-FCN: Object Detection via Region-based Fully Convolutional Networks
- R深度学习笔记
- 【深度学习:目标检测】RCNN学习笔记(7):Faster R-CNN 英文论文翻译笔记
- 深度学习论文笔记:OverFeat
- 深度学习论文笔记:OverFeat
- Angular2组件与指令的小实践——实现一个图片轮播组件
- java反射详解
- 2015-A Review 《Efficient Configuration Space Construction and Optimization for Motion Planning》
- hibernate正向生成数据库表以及配置——Student.hbm.xml
- 夜间模式的实现
- 2017-02-27-深度学习论文笔记:R-FCN
- Java中static变量作用和用法详解
- 1
- 蓝桥杯 历届考题 打印十字图 java编写
- 23种设计模式 慢慢来 自我理解
- 渗透测试 2【综合扫描分析】
- hibernate正向生成数据库表以及配置——Teacher.hbm.xml
- 2
- 用户体验超棒的微信WebView进度条