智能人脸业务一直以来在工业届的落地水平都是很深的。甚至早在深度学习技术大热之前,很多依托人脸识别的产品就已经面世。而深度学习基础的发展,则将该项技术的准确度和精度,进一步推上了一个新的高度,而衍生出来的产品也越来越丰富
掌握人脸智能技术,我们可以做些什么呢?在搞清楚这个问题之前,我们先来看看人脸智能有哪些点可以做?
人脸检测
人脸关键点
人脸匹配
人脸属性
换脸以及人脸风格化
等等
人脸检测,Face Detection. 人脸检测问题最初来源于人脸识别(Face Recognition)。人脸识别的研究可以追溯到上个世纪六、七十年代,经过几十年的曲折发展已日趋成熟。而人脸检测,是自动进行人脸识别的基础。
人脸检测它能够自动从图像中定位到人脸的位置(多个矩形框x,y,w,h),只有在图像中找到人脸,我们才能更好的继续后续的依托人脸的智能业务。
如下如图所示:
人脸检测也属于目标检测的范畴,因此解决人脸检测问题,我们可以采用通用的目标检测算法框架,比如:SSD、Faster RCNN、Yolo这三种不同系列的目标检测算法。关于不同系列方法有什么特点,这里我们不进行一一介绍。
除去采用通用物体检测框架以外,还可以考虑人脸图像的特点,密集人脸,小人脸等不同场景,来对网络结果进行调整,常见的思路可以总结为:
加入人脸关键点等多个任务
采用级联的网络结构,从粗到细检测人脸
考虑多尺度,上下文等信息,比如:FPN的结构
优化分类网络的loss设计
考虑人脸特点的新的anchor策略
等等
推荐阅读博客:《人脸检测之(S3FD,SSH,HR,RSA,Face R-CNN,PyramidBox)》
链接地址:https://blog.csdn.net/wfei101/article/details/80932095
人脸关键点定位(Facial landmark localization): 在人脸检测的基础上,根据输入的人脸图像,自动定位出面部关键特征点,如眼睛、鼻尖、嘴角点、眉毛以及人脸各部件轮廓点等,输入为人脸外观图像,输出为人脸的特征点集合,见下图:
有了关键点以后,我们就能准确的定位到人脸的五官位置,这个时候很多基于五官的任务就可以展开,比如:
活体检测:睁闭眼,张闭嘴检测
人脸美妆
人脸贴图
人脸换脸(也可以使用GAN)
颜值评估
等等
关于关键点技术综述,这里推荐阅读:《人脸关键点对齐》
链接:https://www.jianshu.com/p/e4b9317a817f
目前,人脸关键点有:5点,21点,29点,34点,53点,68点,98点和215点。
数据集有:
关键点技术相关的除了人脸关键点以外,实际上还有一些类似的任务可以借鉴,比如:
人体关键点和服装关键点,分别用于姿态估计和流行趋势分析等任务。如下图所示:
对于人脸匹配/人脸识别/人脸检索/人脸验证这些问题, 算法实现的目的都是去如何衡量两个人脸之间相似度。
算法的输入是两个人脸特征人脸特征由前面的人脸提特征算法获得,输出是两个特征之间的相似度。
举例说明:人脸对比过程,输出结果为相似度96%
对于人脸特征的提取,目前主要用的方法就是深度学习的方法,通常的解决思路有两种:
单分支的图像分类方法,进行人脸特征提取
多分支的判别性方法,进行人脸特征提取
最后对于人脸特征向量相似度的衡量,可以采用欧氏距离或者余弦距离,或者采用rerank的策略进行一步提高相似性度量结果。
推荐阅读《face recognition[翻译][深度人脸识别:综述]》,链接地址:http://www.cnblogs.com/shouhuxianjian/p/9789243.html
《深度学习之视频人脸识别系列四:人脸表征-续》链接地址:https://cloud.tencent.com/developer/article/1344438
对于人脸匹配问题,实际上在工业场景中存在很多相关的任务,比如:行人ReID,用于智能安防领域内的行人跟踪等业务;车辆识别;图像检索等任务中。
人脸属性识别:自动估计人脸的属性,比如性别、年龄、表情、人种、是否佩戴眼镜、美丑等。
人脸属性可以用于对人脸数据进行信息结构化。通过人脸可以计算出人的一些属性,基于这些属性(标签)后续可以做很多其他的推荐任务等等
2017年12月,一个名为“DeepFakes”的用户在Reddit上发布了一个“假视频”,视频中的艺人其实是后期加上的,但是看起来几乎毫无破绽。他利用了深度学习和AI新技术,在xxxx中把演员的脸替换成某个艺人的脸,从而制作成了这个看上去以假乱真的视频。AI换脸技术也越来越成熟,如下图所示。
Ai换脸技术自诞生以来,好莱坞的一些数字特效公司就对它非常感兴趣,对于好莱坞制片方和制作公司来说,这项技术可以大大提高后期制作的效率,而且大量节约成本。当然,对于此项技术,目前同样存在技术滥用上的担忧,所以大家不要偷偷用它搞事情哦~
对于换脸技术,可以采用两种思路进行解决:1)基于关键点的方案;2)直接采用GAN,来进行生成。
关于GAN的相关内容,推荐阅读:https://github.com/hindupuravinash/the-gan-zoo
人脸数据资源库:https://blog.csdn.net/haoji007/article/details/52775598
参考文献:
【1】https://blog.csdn.net/haoji007/article/details/52775598
【2】https://cloud.tencent.com/developer/article/1344438
【3】https://blog.csdn.net/wfei101/article/details/80932095
【4】https://www.jianshu.com/p/e4b9317a817f
·································
欢迎关注课程:
Python3+TensorFlow 打造人脸识别智能小程序(新课限时优惠)