欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习、深度学习的知识!
目标检测作为图像处理和计算机视觉领域中的经典课题,在交通监控、图像检索、人机交互等方面有着广泛的应用。它旨在一个静态图像(或动态视频)中检测出人们感兴趣的目标对象。传统的目标检测算法中特征提取和分类决策分开进行,对特征选取的要求就更加严格,在面对复杂场景的时候很难得到理想效果。自Hinton教授提出深度学习理论,越来越多的研究人员发现在目标检测领域应用深度学习,可以有效提高检测效果和性能,于是深度学习在实时视频的目标检测开始获得大规模的应用。时至今日,其检测效率和精度已经有了极大提高。
一、传统检测算法
传统的目标检测一般使用滑动窗口的框架,主要包括三个步骤:先利用不同尺寸的滑动窗口框住图中的某一部分作为候选区域;然后提取候选区域相关的视觉特征——比如人脸检测常用的Harr-like特征,行人检测和普通目标检测常用的HOG(Histogram of Oriented Gradient)、SIFT(Scale Invariant Feature Transform)特征等;最后利用分类器进行识别,比如常用的SVM模型。
经典传统检测算法之DPM:
传统的目标检测中,多尺度形变部件模型DPM(Deformable Part Model)是出类拔萃的,连续获得VOC(Visual Object Class)2007到2009的检测冠军,2010年其作者Felzenszwalb Pedro被VOC授予“终身成就奖”。DPM把物体看成了多个组成的部件(比如人脸的鼻子、嘴巴等),用部件间的关系来描述物体,这个特性非常符合自然界很多物体的非刚体特征。DPM可以看做是HOG+SVM的扩展,很好的继承了两者的优点,在人脸检测、行人检测等任务上取得了不错的效果,但是DPM相对复杂,检测速度也较慢,从而也出现了很多改进的方法。
正当大家热火朝天改进DPM性能的时候,基于深度学习的目标检测横空出世,迅速盖过了DPM的风头,很多之前研究传统目标检测算法的研究者也开始转向深度学习。基于深度学习的目标检测发展起来后,其实效果也一直难以突破。比如C. Szegedy等人提出的基于DNN的检测算法在VOC 2007测试集合上的mAP只能达到约30%,P. Sermane等人提出的OverFeat在ILSVRC 2013测试集上的mAP只能达到24.3%。2013年R-CNN[8]诞生了,在VOC 2007测试集检测的mAP大幅提升至48%,随着研究的不断深入,各类先进检测算法不断涌出。
1.YOLO
2015年Joseph Redmon提出了一个新的物体检测方法YOLO(You Only Look Once), 顾名思义是指只看一次就可以知道‘是否存在’以及‘在哪儿’,进一步把目标判定和目标识别合二为一,所以识别性能有了很大提升,达到每秒45帧,而在快速版YOLO(Fast YOLO,卷积层更少)中,可以达到每秒155帧。
2.Faster R-CNN
2015年S Ren等人对R-CNN系列又提出了改进型Faster R-CNN,运用一种区域建议网络RPN(Region Proposal Network),它和检测网络共享全图的卷积特征,使得区域建议几乎不花时间。RPN是一个全卷积网络, 在每个位置同时预测目标边界和客体性得分。 将RPN 生成的高质量区域建议框,用于Fast R-CNN来检测,通过一种简单的交替运行优化方法,RPN和Fast R-CNN 可以在训练时共享卷积特征,应用共享卷积,计算建议框的边际成本是很小的(例如每个图像10ms)。这种将一直以来分离的候选区域提取阶段和卷积神经网络分类过程融合到了一起,使用端到端的网络进行目标检测,在速度以及精度上都得到了显著的提高。
3.SSD
之后,针对于Faster R-CNN与YOLO网络中出现的不足, SSD网络对YOLO 网络进行了相应的改进。SSD的框架如图6所示,图6(a)表示带有两个Ground Truth边框的输入图片,图6(b)和(c)分别表示8×8网格和4×4网格,显然前者适合检测小的目标,比如图片中的猫,后者适合检测大的目标,比如图片中的狗。在每个格子上有一系列固定大小的Box(有点类似前面提到的Anchor Box),这些在SSD称为Default Box,用来框定目标物体的位置,在训练的时候Ground Truth会赋予给某个固定的Box,比如图6(b)中的蓝框和图6(c)中的红框。
写在最后:计算机视觉领域技术更新很快,本次只对三个热门目标检测算法做了简单介绍。想了解更多计算机视觉相关最新技术更新请持续关注公众号:磐创AI。
【注】:文中所用引用文献,回复可见。
相关项目实战推荐:
相关项目实战推荐:
YOLO: https://zhuanlan.zhihu.com/p/29555602
SSD: https://zhuanlan.zhihu.com/p/29586716
Faster R-CNN:https://github.com/endernewton/tf-faster-rcnn
本篇文章出自http://www.tensorflownews.com,对深度学习感兴趣,热爱Tensorflow的小伙伴,欢迎关注我们的网站!