传统目标检测的方法一般分为三个阶段:首先在给定的图像上选择一些候选的区域,然后对这些区域提取特征,最后使用训练的分类器进行分类。对于传统目标检测任务中存在的两个主要问题,可以通过基于深度卷积神经网络的目标检测算法来改进。
2012年ImageNet大规模视觉识别挑战赛(ILSVRC)上,机器学习泰斗Geoffrey Hinton教授带领学生Krizhevsky使用卷积神经网络将ILSVRC分类任务的Top-5 error降低到了15.3%,而使用传统方法的第二名top-5 error高达26.2%。此后,卷积神经网络占据了图像分类任务的绝对统治地位,微软最新的ResNet和谷歌的Inception V4模型的top-5 error降到了4%以内多,这已经超越人在这个特定任务上的能力。所以目标检测得到候选区域后使用CNN对其进行图像分类是一个不错的选择。
论文Light-Head R-CNN In Defense of Two-Stage Object Detector总结提出基于深度卷积神经网络的目标检测算法分为两大门派:
(一)基于Region Proposal+CNN分类的框架(two-stage/region-based模型)
第1步是生成proposals;
第2步是对这些proposals进行分类、回归。
代表算法:R-CNN、Fast R-CNN、Faster R-CNN、R-FCN、Mask R-CNN等
(二)基于Regression的框架(one-stage/region-free模型)
算法一步到位,无需区域提名,直接从图片获得预测结果,将目标检测任务简化成了回归问题。
代表算法:YOLO、YOLO 9000、SSD等。
通常来说,前者检测精度高,后者检测速度快。随着YOLO、YOLOv2、SSD等速度极快且精度不错的one stage detector的出现,大家似乎对RCNN family的青睐少了很多。毕竟,真正应用落地的时候,speed显然是非常重要的一点。
领取专属 10元无门槛券
私享最新 技术干货