人脸检测技术 |
您所在的位置:网站首页 › 深度识别技术 › 人脸检测技术 |
人脸检测技术——深度学习算法原理
人脸检测技术——深度学习算法原理1. 通用目标检测网络1.1 faster-rcnn检测算法的基本原理1.2 faster-rcnn应用于人脸检测
2. 专门应用于人脸检测的卷积神经网络2.1 专门用于人脸检测的卷积神经网络的发展现状2.2 cascadeCNN2.3 MTCNN
3. 人脸检测最新进展参考文献微信公众号同步
人脸检测技术——深度学习算法原理
上篇推送介绍了人脸检测技术的基本概念,人脸检测与人脸识别的区别,以及通过代码向读者直观地展示了人脸检测技术;这篇文章,将主要介绍人脸检测技术的算法原理。 人脸检测指的是检测出图片中的人脸,并能够标示出人脸的位置。人脸检测技术主要完成了两件工作:第一,判断图片中是否包含人脸区域;第二,如果图片中存在人脸,将人脸的位置预测出来。 人脸检测分为前深度学习时期和深度学习时期:前深度学习时期,人们主要将传统的计算机视觉算法运用于人脸检测,传统的计算机视觉算法,依赖于人工提取特征,然后使用这些人工特征来训练一个检测器;在深度学习时期,人们尝试将卷积神经网络应用于人脸检测这一问题,一般有两种方式:一种是将适用于多种任务的目标检测网络(如faster-rcnn网络,yolo网络)应用于人脸检测任务;另一种是研究专门的人脸检测网络。 本文接下来将主要简述基于深度学习技术的人脸检测算法原理:首先,讲述faster-rcnn网络的基本原理,以及如何将faster-rcnn应用于人脸检测;接着,讲述专门用于人脸检测的卷积神经网络。 1. 通用目标检测网络通用目标检测网络有faster-rcnn,yolo,ssd以及最新的基于点检测的等网络。只要有相应的数据集,这些网络一般可用来检测任意目标,比如皮卡丘、车辆、人脸等。 1.1 faster-rcnn检测算法的基本原理 faster-rcnn[1]是一种通用的目标检测网络。faster-rcnn网络结构大体上可以分为三个部分。第一部分是用来提取图片特征,生成feature maps的卷积层。第二部分是候选区域生成网络——RPN。第三部分是对候选区域进行分类和调整的网络。其网络结构如下图所示。 将faster-rcnn应用于人脸检测,需要在训练这个网络的时候,使用人脸检测数据集。github上有基于caffe的faster rcnn的实现[2]。读者可以基于这个工程,使用一些开源或者自己标注的人脸检测数据集,训练出一个用于人脸检测的模型。 2. 专门应用于人脸检测的卷积神经网络 2.1 专门用于人脸检测的卷积神经网络的发展现状自深度学习在计算机视觉领域大放异彩后,人们设计了一些专门应用于人脸检测的网络结构。级联卷积神经网络,常被人们应用在人脸检测任务。例如,cascadeCNN,MTCNN等。在专门用于人脸检测的卷积神经网络中,最经典的网络当属MTCNN。MTCNN在github上有一些源码,以及一些已经训练好的模型。读者可以下载到本地机器上运行。 2.2 cascadeCNN cascadeCNN[3]是一种比较快速的人脸检测网络。该网络在FDDB数据集上可以达到85.1%以上的准确率。 MTCNN全称是Multitask Cascaded Convolutional Networks,是2016年中国科学院深圳先进技术研究院的研究成果。MTCNN将人脸检测与人脸关键点检测放在了一起,大体上可以分为三层网络结构:PNet、RNet和ONet。 以上的成果是17年之前的,这些经典的网络有的在工业界取得非常成熟的应用。下面推荐两篇18年的论文以及一篇19年的文章,有兴趣的同学,可以细读并复现一下这些文章,三篇文章分别是Face Detection Using Improved Faster RCNN[6]、Hoi Feature Agglomeration Networks for Single Stage Face Detection[7]、Single-Shot Scale-Aware Network for Real-Time Face Detection[8]。这三篇文章均在一些开源的人脸数据集如WIDER FACE上均取得不错的效果;其中,最后一篇文章在VGA分辨率下对人脸的检测速度可以达到82.1 FPS。 本文简单介绍了人脸检测的发展历程。主要阐述了可以应用于人脸检测的通用目标检测网络faster rcnn,以及专门用于人脸检测的级联卷积神经网络cascadeCNN和MTCNN;这些网络是比较经典的人脸检测网络,是跟进最新人脸检测的基础,有兴趣的读者可以通过阅读原文来加深理解。 下一篇文章,将基于一个网络结构和一个数据集,来讲述如何训练一个人脸检测模型。敬请关注! 参考文献[1] Ren S, He K, Girshick R, et al. Faster r-cnn: Towards real-time object detection with region proposal networks[C]//Advances in neural information processing systems. 2015: 91-99. [2] faster rcnn实现 https://github.com/rbgirshick/py-faster-rcnn [3] Li H, Lin Z, Shen X, et al. A convolutional neural network cascade for face detection[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2015: 5325-5334. [4] Zhang K , Zhang Z , Li Z , et al. Joint Face Detection and Alignment Using Multitask Cascaded Convolutional Networks[J]. IEEE Signal Processing Letters, 2016, 23(10):1499-1503. [5] MTCNN代码 https://github.com/kpzhang93/MTCNN_face_detection_alignment [6] C. Zhang, X. Xu, D. Tu Face Detection Using Improved Faster RCNN. arXiv preprint arXiv:1802.02142, 2018. [7] J. Zhang, X. Wu, J. Zhu, Steven C.H. Hoi Feature Agglomeration Networks for Single Stage Face Detection. arXiv preprint arXiv:1712.00721, 2018. [8] S. Zhang, L. Wen, H. Shi, Z. Lei, S. Lyu, Stan Z. Li Single-Shot Scale-Aware Network for Real-Time Face Detection. International Journal of Computer Vision (IJCV), 2019. 微信公众号同步 关注微信公众号“机器学习和人工智能”,干货多多~ 我们会定期推送Python编程,人工智能基础算法,学术界、工业界最新动态,让更多的人了解人工智能~ 欢迎扫描下方二维码关注哈~ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |