R-CNN 简单梳理

R-CNN 简单梳理

作者:xg123321123

出处:http://blog.csdn.net/xg123321123/article/details/53048204

声明:版权所有,转载请联系作者并注明出处

1 亮点

  • R-CNN将卷积神经网络应用到了自底向上的目标定位;

  • 以往的目标检测算法使用滑窗法(传统的SIFT,HOG等方法)依次判断所有可能的区域;而R-CNN是预先提取一系列较可能是物体的候选区域,之后只在这些候选区域上提取特征,进行判断;

  • 发现当标注数据比较少时,通过先在有监督的数据集上训练,然后到特定任务的数据集上fine-tuning的方法,可以得到较好的新能:也就是说使用Imagenet上训练好的模型,在需要训练的数据上fine-tuning,提升的效果显著。

2 大致流程

  • 一张图像生成1K~2K个候选区域(Regions);
  • 对每个候选区域,使用深度网络(CNN)提取特征;
  • 特征送入每一类的SVM 分类器,判别是否属于该类;
  • 使用回归器精细修正候选框位置。
    这里写图片描述

3 候选区域生成

使用Selective Search方法从一张图像生成约2000-3000个候选区域。

Selective Search方法先基于各种颜色特征将图像划分为多个小块,然后自底向上地对不同的块进行合并,在这个过程中,合并前后的每一个块都对应于一个候选窗口,最后挑出最有可能包含待检测目标的窗口作为候选窗口。

具体流程

  • 使用过分割手段,将图像分割成小区域;
  • 查看现有小区域,合并可能性最高的两个区域,重复直到整张图像合并成一个区域为止;
  • 输出所有曾经存在过的区域,所谓候选区域;

合并规则

优先合并以下四种区域:

  • 颜色(颜色直方图)相近的;
  • 纹理(梯度直方图)相近的;
  • 合并后总面积小的;
    • 保证合并操作的尺度较为均匀,避免一个大区域陆续“吃掉”其他小区域;
    • 假设有区域a-b-c-d-e-f-g-h。较好的合并方式是:ab-cd-ef-gh -> abcd-efgh -> abcdefgh;不好的合并方法是:ab-c-d-e-f-g-h ->abcd-e-f-g-h ->abcdef-gh -> abcdefgh。
  • 合并后总面积在其Bounding box中所占比例大的。
    • 用于保证合并后形状规则。例:左图适于合并,右图不适于合并。
      这里写图片描述

上述四条规则只涉及区域的颜色直方图、纹理直方图、面积和位置。合并后的区域特征可以直接由子区域特征计算而来,速度较快。

为尽可能不遗漏候选区域,上述操作在多个颜色空间中同时进行(RGB,HSV,Lab等)。在一个颜色空间中,使用上述四条规则的不同组合进行合并。所有颜色空间与所有规则的全部结果,在去除重复后,都作为候选区域输出。

Selective Search的源码在这里

候选区域生成和后续步骤相对独立,实际可以使用任意算法进行。

4 特征提取

预处理

  • 把候选区域抠出来,归一化成同一尺寸227×227。
  • 有一些细节会轻微影响性能:

    • 外扩的尺寸大小;
    • 形变时是否保持原比例;
    • 对框外区域直接截取还是补灰。

预训练网络

  • 使用ILVCR 2012的全部数据进行训练,输入预处理中归一化好的图片,输出1000维的类别标号;
  • 借鉴Hinton 2012年在ImageNet上的分类网络,略作简化;
  • 网络提取的特征为4096维,之后送入一个4096->1000的全连接(fc)层进行分类。
    这里写图片描述

调优网络

  • 训练数据的标定:考虑候选框图片和当前图像上所有标定框重叠面积最大的一个:如果重叠比例大于0.5,则认为此候选框为标定的类别之一;否则认为此候选框为背景;
  • 使用PASCAL VOC 2007的训练集,输入预处理中归一化好的图片,输出21维的类别标号,表示20类+背景;
  • 网络结构同上,只是将最后一层换成4096->21的全连接网络。

5 类别判断

分类器
对每一类目标,使用一个线性SVM二类分类器进行判别。输入为深度网络输出的4096维特征,输出是否属于此类。

正样本
本类的真值标定框。

负样本
考察每一个候选框,如果和本类所有标定框的重叠都小于0.3,认定其为负样本。

6 位置精修

目标检测问题的衡量标准是重叠面积。
许多看似准确的检测结果,往往因为候选框不够准确,重叠面积很小,所以需要进行位置精修。

训练样本
判定为本类的候选框中,和真值重叠面积大于0.6的候选框。

输入
N个候选框以及对应Ground Truth的坐标对

(Pi,Gi)i=1,...,N

Pi=(Pix,Piy,Piw,Pih) ,分别为第i个候选框的中心横纵坐标以及宽和高;
Gi=(
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值