R-CNN学习笔记

由于课程作业的要求,实现一项检测任务,故决定读一下R-CNN的paper,由于知识的匮乏读起来真的很费劲。将一些个人认为重要的地方进行了翻译以方便阅读。建议在读文章前对一些基本的概念有所了解,比如selective search、非极大值抑制、以及各个数据库等。等更深层次的理解后再做补充。

2.Object detection with R-CNN

  • 生成分类独立的Region proposals.
  • 用一个大型卷积神经网络,从每一个区域提取固定长度的特征向量。
  • class-specific linear SVMs.

2.1 Module design

使用Selective search的方法与先验的检测工作做对照比较。
2.1.2 Feature extraction
在Caffe框架用CNN提取一个4096维的特征向量。

  • 改变region的图像为相同尺寸,义工CNN使用(CNN要求图片的尺寸是相同的)

2.2 Test-time detection

  • 为了满足CNN的计算特性,对图像进行warp,通过前向传播计算。
  • 然后,针对每个类,我们使用针对该类训练的SVM对每个提取的特征向量进行打分。
  • 对图像中的region打分,并使用非极大值抑制的方法计算IoU。

2.3 Run-time analysis

  • CNN的两大优点,一是参数贡献
  • 二是CNN相对于其他算法是低维计算。

2.3 Training 2.3.1 Supervised pre-training

  • 在ILSVRC上进行了有区别的训练,这个图像库不提供边框标签只有图像级注释。
    2.3.2 Domain-specific fine-tuning

  • 我们继续随机梯度下降(SGD)训练的CNN参数只使用warped region proposals。

  • 对于与ground-truth重叠区域的IoU>0.5的作为正样本,其他的作为负样本。

2.3.3 Object category classifiers

主要讲了如何选取positive example和negative example,以及如何选取阈值。

  • 在提取特征并应用训练标签后,我们对每个类优化一个线性SVM

2.4. Results on PASCAL VOC 2010-12

3 Visualization, ablation, and modes of error
提出了一种非参数的方法能直接显示网络是如何工作的。
网络似乎学习了一种表示方法,该方法将少量的类调优特性与形状、纹理、颜色和材料属性的分布式表示方法结合在一起。

3.4 Bounding-box regression

训练了一个线性回归模型用来预测一个新的检测窗口,该窗口给出了一个选择性搜索区域建议的pool特征。

4.2 Region proposal

一个小的改进是由于Selective search方法不具有尺度不变性,因此regions的数量依赖于图像的分辨率。所以在跑selective search方法之前先调整像素。

4.3 Training data

R-CNN的训练数据需要三步:

  • CNN的微调
  • SVM检测器的训练
  • bounding-box回归训练
    没有从train中提取负样本,因为注释不是详尽的,没有使用额外的经过验证的负面图像。

5.Semantic segmentation 6.Conclusion

我们通过两个方法实现了这一性能。首先将大容量卷积神经网络应用于自底向上的区域方案中,对目标进行定位和分割。第二种是当标记的训练数据缺乏时训练大型CNNs的范例。实验结果表明,对数据丰富的辅助任务(图像分类)进行带监督的网络预训练,然后对数据不足的目标任务(检测)进行网络微调是非常有效的。我们推测,监督前培训/领域特定的微调将对各种数据匮乏的视觉问题非常有效。

你可能感兴趣的:(计算机视觉)