RCNN是整个RCNN系列的开端,也是使用卷积神经网络进行目标检测的一类重要方法的开端,下面我们来看一下RCNN算法。
RCNN是rbg大神在2013年发表的《Rich feature hierarchies for accurate object detection and semantic segmentation》一文中提出的算法,其实算法的思想在现在来看非常的简单,而且也很容易想到,然而这个算法一出却极大的提升了检测的效果。
1. RCNN的检测流程
RCNN主要分为3个大部分,第一部分产生候选区域,第二部分对每个候选区域使用CNN提取长度固定的特征;第三个部分使用一系列的SVM进行分类。
下面就是RCNN的整体检测流程:
(1)首先输入一张自然图像;
(2)使用Selective Search提取大约2000个候选区域(proposal);
(3)对每个候选区域的图像进行拉伸形变,使之成为固定大小的正方形图像,并将该图像输入到CNN中提取特征;
(4)使用线性的SVM对提取的特征进行分类
下面我们来分布介绍这几个步骤。
1.1 候选区域的产生
这里介绍的比较简单,RCNN使用Selective Search算法提取图像中的候选区域(因为我关注RCNN系列比较晚,直接应用的Faster RCNN,就没有关注Selective Search算法,这里也就不介绍了)
1.2 CNN特征提取
作者使用AlexNet