人脸识别如何运作?一文了解背后原理

2020-06-09 11:49:59

次阅读


目前,AI技术处理的数据类型主要可分为文字、语音、图像和视频等类别,其中图片与视频的信息维度与蕴含数据量更大,因而视觉AI技术具有更加丰富的应用场景和商业化价值。


据《2018年全球人脸识别设备市场研究报告》显示,随着越来越多的行业和公司接受人脸识别技术的潜力,2025年全球市场规模将达到71.1亿美元,而2017年仅10.7亿美元,年复合增长率达26.8%。

 

而据Gen Market Insights研究显示,中国正成为面部识别技术领域最大的消费者和提供商。到2023年,中国将占全球面部识别市场份额的44.59%。

从人工智能技术应用曲线来看,人脸识别技术正处于爆发阶段,应用价值逐步呈现。人脸识别在LFW、MegaFace、FRVT三大测试中,识别准确率已经达到了99%以上,超越了人类的肉眼识别能力。随着技术的不断提升,人脸识别将应用于更多细分场景。

 

本篇文章将为大家简单梳理人脸识别功能的技术原理及应用特点。

人脸识别大致经历了早期几何特征的算法、基于人工特征 分类器的思路、基于深度学习算法的三个阶段。早期识别率停留在40%——50%左右,难以实现商业落地。目前,基于深度学习的人脸识别功能,已经将识别率大幅度提升至人类水平,在部分参数上甚至犹有过之,使人脸识别功能商用成为可能。

 


人脸识别算法的第一步是采集并处理人脸数据,然后基于深度学习卷积网络,训练出特定人脸的特征模型。

 

在人脸识别过程中,对于前端在各种环境下采集到的人脸图像,先采用光线规整、图像增强、关键点分析、人脸对齐等手段,先进行人脸图像预处理,在检测出人脸后,以预先训练好的人脸特征模型进行特征值的提取与比对,即可知道待识别对象与目标对象是否为同一个人。


此外,在人脸识别过程中还可以加入活体检测环节,以增强人脸识别的应用安全性。近期曾发生过某男子扼杀女友后用尸体面部进行网贷的案例,最终因尸体面部无法通过活体检测而被报警抓获。

 

简单来说,人脸识别的过程是人脸数据采集-模型训练-图片拍摄-预处理/活体检测-特征采集与比对-输出结果

在实际场景下,考虑到用户体验,一般都是在非限制条件下拍摄的人脸。在这种环境下拍摄到的人脸存在着各种大角度、暗光、强光、背光、遮挡、模糊、噪点等等问题,这些低质量的图像很大程度上会影响人脸算法的识别准确率。

 

为了解决这个问题,除提升算法的鲁棒性外,还可以提升图像采集的质量,除这两点以外,还需要对采集到的人脸图像进行预处理,通过图像增强算法提升图片质量。

 

针对低质量的图像,一般可采用暗光增强、去噪、去除运动模糊等方式进行图像增强。

 

亮度过低的图像在进行增强后,可以看到更多的细节;低分辨率的面部图像,可以在局部区域来增加亮度与对比度以提升面部图像的真实度。图像增强技术是面部识别功能的核心,涉及算法较多,目前市场上很多算法厂家都难以做到优秀的提升效果。

 

除了图像增强,人脸对齐也是人脸识别中的关键环节。即通过人脸关键点,对面部图像做对齐校准。

 

所谓关键点,通常是眼角的位置、鼻子的位置、脸的轮廓点等等。如果图像识别时获取的人脸比较歪,就需要根据关键点,使用仿射变换将人脸统一“摆正”,尽量消除姿势不同带来的误差。

 

关键点的提取在大角度、复杂光照、遮挡等复杂条件下有较大的难度,同时对稳定性、速度要求也非常高。在这项技术上,虹软达到了业界一流水准,目前全球TOP5安卓智能手机品牌的主要机型都在使用虹软的美颜人脸关键点技术,这也是虹软深耕计算机视觉领域二十余年的成果。

对采集到图像做了预处理,检测到人脸后,即可做特征值的提取与比对。但在人脸识别商业化落地中,还有一个重要环节——活体检测,即验证用户是否为真实活体且本人在操作。

 

活体检测可有效抵御照片、视频、面具等常见的攻击手段,帮助用户甄别欺诈行为,保障用户的利益。从实现方式可分为RGB单目活体检测、IR活体检测以及采用深度信息的活体检测。

 

RGB单目活体检测采用普通RGB摄像头,通过分析采集到人像的破绽如摩尔纹、成像畸变、反射率等特征进行分析。

近红外活体检测,则基于红外成像原理,可以排除一部分平面类攻击。

 

深度信息活体检测则通过3D结构光或TOF,获取3D人脸信息以进行是否活体的有效判断。

 

从防攻击有效性看,3D结构光>近红外>RGB单目,而从成本上看,RGB单目>近红外>3D结构光。

 

通过交互方式区分,可分为配合式和静默式。配合式需要结合摇头、眨眼、唇语等方式配合活体的检测,静默式无需主动配合检测,相比配合式算法层面要求更高,体验更好。

评价算法关键有两个指标即FAR(认假率或误识率,把某人误识为其他人)与FRR(拒真率,本人注册在底库中,但比对相似度达不到预定值),这两个是最主要的指标。当然也还有识别速度、活体攻击成功率、人脸检测成功率等参考指标。

理论上来说,同一个算法下,FAR和FRR都越低越好,但两个指标是负相关,一个指标的降低意味着另一个指标的升高,所以两者需要达到适中的平衡。

 

人脸识别算法一般会设定一个阈值作为评判通过与否的标准,该阈值一般是用分数或者百分比来衡量。当人脸比对的相似度值大于此阈值时,则比对通过,否则比对失败。

 

每个阈值都可以统计对应的FAR与FRR,不同阈值的FAR/FRR值可绘成ROC曲线(Receiver Operating Curve),我们可以通过ROC曲线选定一个合理的阈值点,一般会选取FAR/FRR走势趋于均衡的交叉点,此时效果最好。