最近准备开始认真的梳理一下目标检测的相关算法,组合成一个目标检测算法系列。之前看到了一张特别好的目标检测算法分类的甘特图,但忘记是哪里的了,要是原始出处请提醒我标注。
我也会按照这个图来讲解目标检测算法。
所谓目标检测就是在一张图像中找到我们关注的目标,并确定它的类别和位置,这是计算机视觉领域最核心的问题之一。由于各类目标不同的外观,颜色,大小以及在成像时光照,遮挡等具有挑战性的问题,目标检测一直处于不断的优化和研究中。
上面那张甘特图已经说明了目标检测算法主要分为两类,即:
RCNN是第一个使用卷积神经网络来对目标候选框提取特征的目标检测算法。同时,RCNN使用了微调(finetune)的技术,使用大数据集上训练好的分类模型的前几层做backbone,进行更有效的特征提取。
看下图:
首先,R-CNN是将传统图像算法和深度学习技术结合起来的结构,第一部分是需要候选框区域建议,这里一般使用Selective Search的方法提取出候选框,然后再传入CNN做特征提取及分类,后面还借助了机器学习算法做回归修正。
RCNN的出世成为当时目标检测领域的SOAT算法,虽然现在很少有人使用到了,但论文的思想我们仍可以借鉴。任何事情都要经历一个从无到有的过程。
rgbirshick大神,也就是RCNN作者,提供了源码,链接如下: https://github.com/rbgirshick/rcnn