经历了骨干网络的初步学习之后,逐渐进入目标检测领域。

目标检测算法发展史(陆峰,基于深度学习的目标检测技术综述[doi: 10.15888/j.cnki.csa.007839])

基于深度 学习的目标检测算法大致可分为基于候选区域和基于回归两大类. 基于候选区域的目标检测算法精度高, 但是结构 复杂, 检测速度较慢. 而基于回归的目标检测算法结构简单、检测速度快, 在实时目标检测领域有较高的应用价值, 然而检测精度相对略低。

RCNN作为two-stage检测算法的代表,开始RCNN的学习。

论文:rich feature hierarchies for accurate object detection and semantic segmentation

*RCNN(Regions with CNN features)*过程

  • 预训练一个CNN
  • 将selective search预选出的2000个候选框resize,作为model输入CNN
  • model前向运算至pool5,抽取这一层的特征值
  • 训练SVM,进行二分类问题
  • Bounding box regression,根据监督学习,训练回归器,调整候选框的左右长宽

非极大抑制(NMS)

用于去除冗余的检测框

  • 假设3个框,根据SVM的打分排序,概率从大到小为A、B、C
  • 判断B、C与A的重复率 IoU 是否大于阈值,如果大于,扔掉,如果小于,保留
  • 保留下来的框,根据打分顺序,重复上述过程

Bounding box regression

用于微调边界框

创新点:完成了多物体识别与定位的问题

  • 使用selective search做候选框(区域提案)
  • 使用Bounding-box regression微调窗口
  • mAP提升到了66%

不足:繁琐,慢

  • 使用selective search做候选框,速度慢
  • 结构分散(非端到端)
  • 无法实时检测(最耗时的操作在于区域提案的2k张子图都过了一遍CNN)

Faster RCNN

网络结构