论文笔记:R-CNN

论文笔记:Rich feature hierarchies for accurate object detection and semantic segmentation


【分类】【分割】【检测】
需要带有bounding box的数据。

论文笔记:R-CNN_第1张图片

摘要: 这篇论文主要把CNN的FC7层作为特征提取器,利用SVM做分类器。然后利用CNN的pooling5层作为attention的区域,形成bounding box。
主要分为3个阶段:(1)提取类别独立的区域(region);(2)利用CNN提取每个区域的固定长度特征向量;(3)linear SVM来分类。

region proposal

已经有很多人做过这方面的工作,包括objectness [1], selective search [34], category-independent object proposals [12], constrained parametric min-cuts (CPMC) [5], multi-scale combinatorial grouping [3]。 此外在有丝分裂细胞检测方面Ciresan等人做过相关工作,应用CNN到有关空间块裁切[6].本文我们使用selective search来进行region提取。每张图片2000个regions。

feature extraction

我们从5层卷积2层全连接的网络提取4096维特征,利用caffe的前向传递,对减去均值的数据进行特征提取。
在进行网络训练之前,我们需要把所有提取到的region变成227 * 227 的格式,以便进行训练。在这里直接把bounding box里面的图像进行resize,可能会有些变形。resize之前,膨胀了16个像素,具体怎么膨胀的看附录。

test - time

  • selective search : 2000 regions per image(selective search fast model)
  • forward propagate through the CNN to get the features
  • SVM 对特征进行评分
  • 得到一张图里的所有评分之后, 利用greedy non-maximum suppression来排除一些overlap的score很高的region。

    · CNN 所有参数对于不同的类别全部共享
    · 相对于其他的特征提取方法(空间金字塔等),CNN提取的特征是低维的。 UVA检测系统中用到的特征维数比我们的大两个数量级。特征矩阵一般是2000 * 4096维的,SVM权重矩阵是4096 * N维的,N是类别个数。 如果亚欧地十万类进行预测,UVA需要134G内存,我们只需要1.5G,由于低维的数据。并且快很多。
    跟DPMs和hashing相比,平均正确率(mAP)和从16%变成59%,消耗的时间由5分钟变成1分钟(CPU上)。

训练

· 利用image-level标注(没有bounding box)在大的数据集(ILSVRC2012)上进行训练。直接利用caffe训练。
· 为了使CNN模型更好的应用到我们数据集上,要对它进行fine-tuning,利用梯度下降方法和裁剪出来的region proposal进行训练。输出改成21类(20个类别加背景)。这些region proposal >= 0.5 IoU overlap 跟ground-truth box相比看做positive类,其他的都是negative。 fine-tuning 学习率初始化为0.001,原来的十分之一(原来是0.01)。每个SGDiteration,我们设置32个positive region还有96个background regions (覆盖所有类别)来构成一个mini-batch 128个。我们bias sampling 对positive region。。不知道具体怎么实施的。这个就是根据region与bounding box overlap的百分比来划分类别的,所有 类的类别都只有positive or negative。这样利用所有的训练一个模型,实现CNN参数共享。

训练一个二分类的分类器来检测车。跟ground-truth overlap很多的region看做positive类,那些包含背景的region就看做negative类。这里需要设置一个阈值来判断,当region跟bounding box overlap的百分比,来判断region是正还是负。
特征提取好之后,label也分好之后,我们可以对于每一类训练SVM。
利用CNN pooling5进行可视化。

文章中表示,卷积层包含了大量的信息,而不是connnected layers。
Much of the CNN’s representational
power comes from its convolutional layers, rather than from
the much larger densely connected layers.

此外增加正确率,论文又引进了Bounding box regression。

Bounding box regression

REFERENCE

[1] Rich feature hierarchies for accurate object detection and semantic segmentation
[2] http://blog.csdn.net/u011534057/article/details/51240387
[3] http://blog.csdn.net/u011534057/article/details/51218218
[4] http://blog.csdn.net/u011534057/article/details/51218250


EMMA
SIAT
2017.03.28

你可能感兴趣的:(cnn)