众所周知,物体检测的任务是找出图像或视频中的感兴趣物体,同时检测出它们的位置和大小。
当然,物体检测过程中有很多不确定因素,如图像中物体数量不确定,物体有不同的外观、形状、姿态,加之物体成像时会有光照、遮挡等因素的干扰,导致检测算法有一定的难度。
由于目标检测的应用场景广泛,所以在CV面试中经常出现,比如七月在线有一CV就业班的学员出去面试时,便被问到“one-stage和two-stage目标检测方法的区别和优缺点?”(详见此文:https://ask.julyedu.com/question/88747)
虽然我们在本文中详细介绍了各个目标检测的方法:
https://www.julyedu.com/question/big/kp_id/32/ques_id/2103 ,但如果你是第一次听到one-stage和two-stage,你会不会瞬间一脸懵逼,这是啥?
其实很简单,顾名思义,区别在于是一步到位还是两步到位。
具体说来,进入深度学习时代以来,物体检测发展主要集中在两个方向:
two stage算法,如R-CNN系列;
ones-tage算法,如YOLO、SSD等。
两者的主要区别在于two stage算法需要先生成proposal(一个有可能包含待检物体的预选框),然后进行细粒度的物体检测,而one stage算法会直接在网络中提取特征来预测物体分类和位置。
所以说,目标检测算法two-stage,如Faster R-CNN算法会先生成候选框(region proposals,可能包含物体的区域)ÿ