R-CNN

标题:《Rich feature hierarchies for accurate object detection and semantic segmentation》

时间:2014

出版源:CVPR 2014

主要链接:

R-CNN 创新点:

  • 使用CNN(ConvNet)对 region proposals 计算 feature vectors。从经验驱动特征(SIFT、HOG)到数据驱动特征(CNN feature map),提高特征对样本的表示能力。
  • 采用大样本下(ILSVRC)有监督预训练和小样本(PASCAL)微调(fine-tuning)的方法解决小样本难以训练甚至过拟合等问题。

注:ILSVRC其实就是众所周知的ImageNet的挑战赛,数据量极大;PASCAL数据集(包含目标检测和图像分割等),相对较小。

R-CNN 介绍:

  R-CNN作为R-CNN系列的第一代算法,其实没有过多的使用“深度学习”思想,而是将“深度学习”和传统的“计算机视觉”的知识相结合。比如R-CNN pipeline中的第二步和第四步其实就属于传统的“计算机视觉”技术。使用selective search提取region proposals,使用SVM实现分类。

原论文中R-CNN pipeline只有4个步骤,光看上图无法深刻理解R-CNN处理机制,下面结合图示补充相应文字

  • 预训练模型。选择一个预训练 (pre-trained)神经网络(如AlexNet、VGG)。

  • 重新训练全连接层。使用需要检测的目标重新训练(re-train)最后全连接层(connected layer)。

  • 提取 proposals并计算CNN 特征。利用选择性搜索(Selective Search)算法提取所有proposals(大约2000幅images),调整(resize/warp)它们成固定大小,以满足 CNN输入要求(因为全连接层的限制),然后将feature map 保存到本地磁盘。

  • 训练SVM。利用feature map 训练SVM来对目标和背景进行分类(每个类一个二进制SVM)

  • 边界框回归(Bounding boxes Regression)。训练将输出一些校正因子的线性回归分类器

R-CNN 实验结果:

R-CNN在VOC 2007测试集上mAP达到58.5%,打败当时所有的目标检测算法。

转:目标检测

posted @ 2019-03-15 21:41  珠峰上吹泡泡  阅读(215)  评论(0编辑  收藏  举报