Rich feature hierarchies for accurate object detection and semantic segmentation(R-CNN,2013)论文笔记

Rich feature hierarchies for accurate object detection and semantic segmentation原文链接

一、解决问题

2012年,Krizhevsky等人在ImageNet大规模视觉识别挑战赛(ILSVRC)上的表现出色(AlexNet)。
那么ImageNet上的CNN分类结果在何种程度上能够应用到PASCAL VOC挑战的物体检测任务上?
本文主要解决两个问题:
1.在候选区域上自下而上使用大型(此时的大型仅仅只是指5层的网络)卷积神经网络(CNNs)用以定位物体。
2.当带标签的训练数据不足时,先针对辅助任务进行有监督预训练,再进行特定任务的调优,就可以产生明显的性能提升。

二、解决方法

(一)问题定位

一种方法将定位作为回归问题。然而,Szegedy等人与我们并行的工作表明这种策略在实践中可能不会很好(实际上也是可以的,比如后来的YOLO系列和SSD)。另一种方法是构建一个滑动窗口检测器。

(二)解决滑动窗与感受野的矛盾

文中用于提取特征的CNN有五层,这就要求有很大的感受野,进而要求滑动窗必须很大。这样必然会导致滑动窗对目标定位不精确的问题(大的滑动窗永远无法把小物体框的严丝合缝)。那么怎么办呢?最直接的办法就是把小的滑动窗放大,使其尺寸满足卷积网络的要求。而本文的做法是无论大的滑动窗还是小的滑动窗都变换成统一大小的尺寸(不光是感受野的要求,更重要的是因为网络中存在全连接层,而全连接层要求每次输入的维度是固定的,从而一开始输入的图像的大小也必须是固定的)。事实上用的也不是传统意义上的多尺度金字塔结构滑动窗,而是SS算法。
测试时,对这每张图片:
1.产生了接近2000个与类别无关的region proposal(通过selective search算法)。
2.将他们变换为统一固定尺寸。
3.卷积网络(过五个卷积层和两个全连接层)对每个变换后的region proposal抽取了一个固定长度的特征向量。
4.然后借助专门针对特定类别数据的线性SVM对每个区域进行分类(每一类对应一个SVM,使用多个SVM)
由于结合了Region proposals和CNNs,所以起名R-CNN:Regions with CNN features。操作流程如下图。
在这里插入图片描述

(三)解决有标签的数据太少

在辅助数据集(ILSVRC)上进行有监督预训练,再在小数据集上针对特定问题进行调优。这是在训练数据稀少的情况下一个非常有效的训练大型卷积神经网络的方法。

三、本人曾经忽视的细节

(一)卷积网络和SVM的训练过程

1.有监督预训练卷积网络

我们在大型辅助训练集ILSVRC2012分类数据集上预训练了CNN(过五个卷积层+两个全连接层)。预训练采用了Caffe的CNN库。总体来说,我们的CNN十分接近krizhevsky等人的网络的性能,在ILSVRC2012分类验证集在top-1错误率上比他们高2.2%。差异主要来自于训练过程的简化。

2.微调神经网络

为了让我们的CNN适应新的任务(即检测任务)和新的领域(变形后的推荐窗口)。我们只使用变形后的推荐区域对CNN参数进行SGD训练。我们替换掉了ImageNet专用的1000-way分类层,换成了一个随机初始化的21-way分类层(其中20是VOC的类别数,1代表背景),而卷积部分(过五个卷积层+两个全连接层)都没有改变。我们对待所有的推荐区域,如果其和真实标注的框的IoU>= 0.5就认为是正例,否则就是负例。SGD开始的learning_rate为0.001(是初始化预训练时的十分之一),这使得调优得以有效进行而不会破坏初始化的成果。每轮SGD迭代,我们统一使用32个正例窗口(跨所有类别)和96个背景窗口,即每个mini-batch的大小是128。

3.训练SVM

由于SVM是二分类器,需要为每个类别训练单独的SVM。以Ground Truth为正样本,以与Ground Truth相交IoU<0.3的建议框为负样本。训练时输入正负样本在AlexNet CNN网络计算下的4096维特征,输出为该类的得分,训练SVM权重向量。

4.训练回归器

每种类别对应的回归器都分别训练,训练样本为与Ground Truth的IoU最大且大于0.6的Region Proposal。

(二)Bounding-box回归

通过训练了一个线性回归模型(在给定一个选择区域的pool5特征时去预测一个新的检测窗口)的方法减小定位误差,修复了大量的错位检测。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值