R-CNN阅读笔记

关键见解

  • 将CNN应用于自下而上的候选区域,对目标进行定位和分割
  • 当缺少标签训练数据是,对辅助任务进行有监督的预训练,再对特定领域进行微调,即迁移学习

结果

  • 比先前VOC 2012上的最好的评价指标mAP提升了30%,达到了53.3%

思路

目标检测概述

  1. 对输入图像提取大概2000个自底向上的候选区域
  2. 使用CNN对每个候选区域计算特征向量
  3. 根据特征向量,使用具体类别的线性SVM判断每个候选区域属于该类的可能性(每个类别对应一个SVM分类器)

难点

  • 使用深度网络对目标进行定位
  • 使用少量的标注数据训练一个高性能的模型

与图像分类不同,目标检测需要在一张图片中对物体进行定位。本文采用的是滑动窗口方法。

实现细节

模型设计

候选区域:
现在有很多生成候选区域的方法:

  • objectness
  • selective search
  • category-independent object proposals
  • constrained parametric min-cuts(CPMC)
  • multi-scale combinatorial grouping
  • Ciresan

本文采用的方法是selective search.

特征提取:
使用Krizhevsky等人描述的CNN的基于Cafe的实现(Alexnet),从每一个候选区域总提取一个 4096 4096 4096 维的特征向量.
为了与CNN的格式相兼容,需要先将图像转换成 227 × 227 227\times227 227×227 大小,此处本文采用的方法是:
不管候选区域的大小和长宽比,we warp all pixels in a tight bounding box around it to the required size. Prior to warping, we dilate the tight bounding box so that at the warped size there are exactly p pixels of warped image context around the original box(本文取p=16)

测试阶段

思想

  • 在测试图像上使用selective search 提取大约2000个候选区域。
  • 对每个候选区域变形并通过CNN前向传播,从所需层中获取特征向量。
  • 对每一个类别,我们使用为这个类别训练的SVM为每一个提取的特征向量打分。
  • (该步骤每个类别单独的执行)根据图片中每个候选区域的分数,本文使用非极大值抑制方法,如果某个区域与得分最高的候选区域的IoU大于某个阈值,就舍弃它。

分析
使得检测效率高的原因有两个:

  • 所有类别的CNN参数是共享的
  • 相比于其它的方法,CNN计算得到的特征向量维度更低
训练阶段

有监督的预训练
使用大型的标注数据集ILSVRC 2012(没有边框标签)对CNN进行预训练
特定领域的微调
为了将刚刚训练的CNN应用于新的任务(识别)和新的领域(VOC),继续使用VOC转化好的候选区域,使用SGD对CNN的参数进行训练。除了用21个类别层(VOC包括20个类别+1个背景类别)替换CNN的ImageNet的1000个类别外,CNN的结构没有改变。
如果候选区域与ground-truth box的IoU>0.5,则该候选区域是positive;其它的为negative.
SGD的学习率初始值为0.001,在每一个SGD迭代中,统一采样32个positive窗口(包括所有类)和96个背景窗口,构建一个大小为128的mini-batch。
目标类别分类器
本文设定了IoU阈值,与ground truth重叠区域小于这个阈值的区域被判定为negative.
一旦特征抽取成功并且应用了训练标签,会对每个类优化一个线性SVM.
由于训练数据太大无法存储时,本文使用standard hard negative mining method.

需要学习

  • selective search
  • mini-batch 梯度下降
    利用一部分样本数据来近似的计算整体,就是用随机选择的小批量数据(mini-batch)作为全体训练数据的近似值。
  • 阅读后半篇可视化以及其它方面的分析内容

如有问题 请多多指正

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值