英文原文链接: link.
前言:2014年CVPR上的经典paper《Rich feature hierarchies for Accurate Object Detection and Segmentation》
基本思想
R-CNN摒弃了传统的滑动窗口和人工选取特征的方法,将候选区域算法Selective Search和卷积神经网络相结合。
R-CNN+SVM分类:CNN解决高维问题时容易陷入局部最优,而支持向量机通过使分类间隔最大化来得到最优的分类面,其算法会转化成一个凸二次规划的问题,故其能得到全局最优解,卷积神经网络和支持向量机进行互补,为最终算法的效果提升提供了保证。
池化层虽然减少计算量和增加平移不变性,但导致图像特征的损失,卷积核的数量在逐层增加,其目的是为了消减池化层对特性信息的丢失。
数据集和训练
数据集:
ImageNet ILSVRC 2012:千万张图像,分为1000类,分类识别;
PASCAL VOC 2007:一万张图像,分为20类,目标检测。
训练:
(1)预训练
(2)fine-tuning,1000类改为20+1个背景
(3)resize,前向运算,将第5个卷积层后池化层的输出保存到硬盘
(4)训练SVM分类器(二分类)来判断这个候选框里物体的类别,每个类别对应一个SVM,判断是不是属于这个类别;
(5)回归器精细修正候选框位置:对于每一个类,训练一个线性回归模型去判定这个框是否框的完美。
缺点
(1) 重复计算,相当耗时
(2) 畸变性能瓶颈,信息丢失
(3) 步骤繁琐
(4) 训练占用内存大
(5) 训练过程是多阶段的:首先对卷积神经网络微调训练;然后提取全连接层特征作为SVM的输入,训练得到目标检测器;最后训练边框回归器
(6) 目标检测速度慢
选择性搜索算法
Region proposal:一种基于分层区域合并的图像分割方法(首先通过使用Felzenszwalb等人的区域分割算法获取原始分割区域,然后通过计算区域之间的相似度不断对区域进行合并,最后形成候选区域边框),平均每张约 2000个尺寸不一的候选框
优点: 适应图像不同尺寸物体,多元的区域合并策略,较穷举搜索(Exhaustive Search)法速度快
**区域合并:**层次式,类似于哈夫曼树的构造过程,通过计算相似度将区域划分算法获取的原始分割区域进行层次性的合并:
(1) 原始分割区域集合R={r1,r2,…,rn}
(2) 初始化相似度集合S=Ø
(3)计算两两相邻区域之间的相似度,并将其添加到相似度集合S中;
(4)从相似度集合S中取出具有最大相似度的两个区域ri和rj,将这两个区域合并为rt,并且从集合S中清除掉ri和rj相关的数据。计算与区域rt相邻的其它区域的相似度并将相似度添加到集合S中,同时更新区域集合R,使得R=R∪rt;
(5)重复步骤(4)直到相似度集合S为空。
区域相似度计算:颜色相似度、纹理相似度、大小相似度、吻合相似度 以上加权求和