0. 参考
1. 论文概况
1. Motivation
CNN的应用。
2. 解决什么问题?
- 传统目标检测中,基于滑窗的区域选择策略没有针对性,时间复杂度高,窗口冗余;
- 传统目标检测中,手工设计的特征对于多样性的变化并没有很好的鲁棒性。
3. 提出了什么方法?
- region proposal;
- CNN;
4. 效果如何?
- R-CNN在PASCAL VOC2007上的检测结果从DPM HSC的34.3%直接提升到了66%(mAP)。
5. 还存在什么问题?
- 训练分多个阶段,非end to end,步骤繁琐: 微调网络+训练SVM+训练bbox回归
- 训练占用磁盘空间大:候选区域对应的图像需要预先提取
- 速度慢: 每个Proposal都需要进入CNN网络计算,上千个Region存在大量的范围重叠,重复的特征提取带来巨大的计算浪费
- 输入的图片Patch必须强制缩放成固定大小(原文采用227×227),会造成物体形变,导致检测性能下降。
算法流程-测试
==本质:对region proposals进行分类和位置修正,最后输出那些IOU高于阈值的proposals;==
- 候选区域选择(region proposals)
- selective search方法得到2000个proposals;
- proposals缩放到固定大小227×227(FC层的需求);
- CNN特征提取(5个conv+2个FC)
- 特征送入线性SVM进行分类
- 特征送入全连接网络对SVM分好类的region proposal进行bbox回归
边框回归是对region proposal进行纠正的线性回归算法,为了让region proposal提取到的窗口跟目标真实窗口更吻合。
关于region proposal
比较常用的region proposal算法有selective Search和edge Boxes,如果想具体了解region proposal可以看一下PAMI2015的“What makes for effective detection proposals?”
由于region proposal利用了图像中的纹理、边缘、颜色等信息,可以保证在选取较少窗口(几千个甚至几百个)的情况下保持较高的召回率。这大大降低了后续操作的时间复杂度,并且获取的候选窗口要比滑动窗口的质量更高(滑动窗口固定长宽比)。