人脸校正技术的研究与应用

作者: 朱翔昱

来源: 格致论道讲坛

发布日期: 2023-09-25 20:38:12

本文介绍了人脸识别技术中的一个细分方向——人脸校正,探讨了如何通过技术手段将侧脸图像转正,并应用于各种实际场景,如刑侦、虚拟试装、元宇宙等。文章详细描述了技术的发展历程、面临的挑战以及未来的应用前景。

当时我发现,在人脸识别领域我没什么可做的了,直到遇到这样一个需求。各位来宾,大家好!我是朱翔昱,来自中国科学院自动化研究所,今天很荣幸与大家分享我们的工作。相信大家平时都常用“人脸识别”功能,比如上下班打卡、电子支付,进出火车站等等。今天我想由小见大,给大家介绍人脸识别的一个细分方向,带大家了解人脸识别是如何一步步克服困难,走向大家生活的。

为什么要识别侧脸?时值2012年,我进入中国科学院自动化所,跟随人脸识别的资深专家李子青老师从事人脸识别的研究。当时人脸识别里正脸的识别率是很高的,但是一旦遇到侧脸,它的识别性能就会下降。然而海关里人来人往,你很难去限制这些人的行为,所以拍摄出来的照片大多数都是侧脸图像。那么,能不能想办法把这张侧脸图像转到正脸,再送去识别?这就是我开始接触人脸转正这个工作的契机。

我们先来看一下,人脸转正为什么很重要。首先,姿态是影响人脸识别的一个关键因素。大家想象一下,那些仅有数面之缘的陌生人,你还记得他的侧脸长什么样吗?进一步来说,我给你一张陌生人的侧脸图片,你能不能想象出他的身份证照长什么样?一般来说是很难的,除非经过专业训练。就像图中这个小孩的侧脸和正脸的外观变化是很大的,很难匹配到一起。

除了姿态之外,表情也是影响人脸识别一个很关键要素。有个生动的例子,就是《九品芝麻官》里周星驰靠这种搞怪的表情骗过了官差的“人脸识别系统”。我们就想到,如果能从一张人脸图像生成他正面的无表情图像,再送去识别,不就解决这个问题了吗?像上面这样,侧脸图像被校正成正脸,这时候就可以进行匹配了。

我们进一步分析,人脸的姿态和表情变化到底来源于什么?

人脸其实是个三维物体,我们在拍摄人脸图像的时候,人脸是可以旋转的,可以用正面、侧面、甚至下巴面对镜头。这种旋转行为就导致了人脸图片的姿态变化。下面这一行显示人的表情变化。也就是说,无论是姿态变化还是表情变化,都是在三维空间中发生的。人脸校正之所以困难,就是因为我们在拍摄人脸图像的时候,把人脸从三维结构变成了二维图像。在这个过程中,人脸的三维结构就丢失了。

那么反过来,如果我们能够生成一张图像对应的三维人脸结构,再基于这个三维结构进行姿态和表情的校正,这个工作就变得非常直接和可靠。分析到这里,我和李老师就确定了这个技术路线。重建一张三维人脸已完成:30%显然,这个过程包含了两个技术,第一个是三维重建,第二个是人脸校正。我们先来看第一个技术三维重建。三维重建是依赖于一些工具的,其中最关键就是三维人脸模型。

三维人脸模型是这么构建的:我们找来一个三维的扫描仪,然后再找来男男女女、老老少少200个人,尽可能覆盖更多的脸形变化。然后扫描出他们的三维人脸,再进行点对点的配准,再经过一些数理统计的办法,就能得到这个三维人脸模型。三维人脸模型其实是由一系列参数控制的,比如通过控制形状参数,可以改变脸形;通过控制表情参数可以控制人脸的行为;通过控制姿态参数,可以控制人脸的旋转。

也就是说,我给定姿态、形状和表情参数,我就能获得一个三维人脸。

基于这个三维人脸模型,我们就想出来第一个办法——分析合成法。这个方法就是通过模拟一张人脸图像的生成过程,再使生成图像去逼近目标人脸,完成三维重建。我们来看一下这个流程。这是我们的三维人脸模型,加上姿态、形状、纹理、光照参数,就生成了一个人脸图像。然后我们搜索这些参数,使得生成的图像跟目标图像尽可能相似。一旦他俩长得一样,我们就认为三维人脸重建就成功了。

这个视频就显示了如何通过三维人脸模型进行三维人脸重建。这也是我们组第一个三维人脸重建的结果,当时用到了各种人脸识别系统中,取得了不错的效果。然而,很快李老师又来找上我说,系统性能是不错,但是速度实在是太慢了。它是通过不断地迭代慢慢地去搜索,然后重建一张三维人脸。重建一张人脸图像的过程通常需要一分钟,这在很多识别系统尤其是实时人脸系统识别里很难接受的。

那么接下来,我就去想怎么把这个速度给提升上来。

恰好那时候人工神经网络开始流行。所谓人工神经网络是你通过训练它,让它看懂一张图像。应用在这个任务里,就是你通过训练一个神经网络,让它看懂图像中的人脸,然后把图像中人脸的姿态形状和表情参数返回给我,我去做三维重建。我很快就在神经网络上尝试了一下,可是发现这个重建结构整体偏差是很大的。我就去分析这个原因,把神经网络输出的200个参数逐个分析了一下,发现了问题所在。

三维人脸姿态、形状和表情这三组参数,它们的重要性是完全不一样的。其中姿态参数最关键,只要姿态参数偏上一点,整个人脸就偏掉了,其次是表情参数,最后才是形状参数。如果不加区分把这些参数都送给神经网络学习,神经网络就会浪费资源在那些不重要的参数上,也就是说它不会抓住重点。所以我们经过一系列的研究,提出来一系列的学习策略,让神经网络自己能够知道哪些参数最重要,哪些参数次重要。

它在学习的时候就会先学重要参数,再学不重要参数。

最终,我们就实现了基于神经网络的三维人脸重建办法。最重要的一个特性就是在速度上有了重大的进化,从原来的分析合成法一分钟一张的速度,进化到了现在每秒钟一百张的速度,这个速度快到甚至可以在手机端进行实时的重建。即便是在这种飞速变化的人脸上,三维重建也能够准确地去捕捉到人脸的细微动作。

并且进一步在这种大姿态上它也能够稳定地重建,比如说是完全的侧脸以及超大的俯仰角,它都可以稳定重建。到此,我们就实现了整个流程中的第一步——三维人脸重建。

如何把侧面转正已完成:50%接下来,我们要考虑如何使用这个重建的三维人脸去把一张图像转正。要把一张人脸转正,需要先把这张图像背后的三维世界重建出来。人脸内部我们可以使用刚才重建的三维人脸获得,那么在外部我们就只能粗略估计它的深度信息,这个信息不需要很准确,有就行。这样就把整张图像变成了一个三维物体。

左图是二维的图像,到右边就把整张图像变成了一个三维物体。

它既然是个三维物体,显然可以在三维空间中旋转。我们把图像在三维空间中旋转到正面,然后再把表情给校正到位,重新成像,就得到了一个初步的校正结果,就是左下角这张图像。整个人脸的结构都已经转过来了,可是图像有一个缺陷,它有一个黑边。这个黑边怎么产生的呢?因为原图本来是一个侧脸,有半边脸是看不见的,一旦把它转到正脸以后,看不见的半边脸就暴露出来。

这部分在原图中是没有像素的,所以它只能空着,就形成了一个黑边。显然需要去填充它,生成一张更完整的图像。

那如何填充这个黑边呢?大家会很自然地想,人脸不是对称的,可以用左半边脸的纹理去填充右半边脸纹理。但是很遗憾,虽然人脸本身是对称的,但是加上光照就不一定是对称的。想象一下,假设一束光从人脸一侧打过来,人脸会变成一半明一半暗的状态,也就是俗称的“阴阳脸”。

在室外环境下,光照就会更加复杂,我们就更无法使用对称性的假设。如果直接进行对称性的填充,只能得到一个非常不自然的结果,就像图中她的右半边脸有不自然的发黑现象,这显然是我们不想看到的。

经过上面分析,我们就想,能不能把人脸的光照和人脸本身分解开,然后再单独对人脸进行填充?基于这个想法,我们就提出一个光照模型。

我们通过分析人脸的明暗变化,就可以把人脸光照那一部分给分解出来,然后再用原图减去这个光照的部分,就得到一个跟光照无关的、面部细节的部分,这一部分是满足对称性的要求的。由于面部细节是对称的,所以我们就用对称性对它进行一个填充,然后再加回到刚才我们估计的光照部分,就得到最终的校正结果。大家看这个校正结果,黑边去除了,这就是一个非常高保真的校正结果。

到此我们就可以回顾一下整个人脸转正的流程。

首先根据一张输入图像,我们重建它的三维人脸;其次,将整张图像变成一个三维物体,在三维空间中对它进行转正;然后,把表情校正,重新成像;再把暴露出来的这半边脸给填充好,就得到了最终的校正结果。通过人脸校正,我们就提升了人脸识别系统对带姿态人脸的一个校正识别能力。其实人脸校正不光可以给人脸识别系统等机器看,还可以给人看。

举个例子,在刑侦领域经常只能获得一张嫌疑人侧脸低质量的图像,这时候如果使用我们这个系统,就可以尝试把正脸恢复出来,然后再去交给警官进行比对和侦查,提升刑侦的效率。

让人脸识别更人性化已完成:80%其实,人脸校正背后蕴含的技术还有更广阔的应用范围。比如这个三维人脸重建的虚拟试装。大家可能在手机端试用过这类面部产品的虚拟试用功能。它背后的逻辑就是通过手机采集到的人脸图像,把三维人脸给恢复出来,然后在三维人脸上化妆或者穿戴配饰,再重新成像返回给客户,就可以让客户体验到产品的虚拟效果。

还有现在非常火的元宇宙,虚拟主播、虚拟带货背后也依赖三维重建。

它把重建出来的三维人脸的表情和姿态系数映射到一个数字人身上,就实现了数字人的驱动。也就是说你做什么动作,这个数字人就做什么动作,来完成虚拟的交互。有些应用也对三维人脸重建提出了更高层次的需求,比如为用户定制个性化的虚拟形象。这就要求神经网络能够准确地捕捉人脸面部细节,让重建出来的三维人脸一看就是你。这属于一个新兴的方向,称之为精细三维人脸重建。

理解人脸的三维结构,不仅对前面所说的身份识别、虚拟现实、增强现实的应用很关键,在安全领域上也非常关键。比如这个视频是一种对人脸识别的攻击性行为,通过把其他人的照片打印出来放给人脸识别系统看,让系统误以为这个照片上的人脸就在它面前,从而通行放过。这就产生了一个非常大的安全隐患。如果我们能够理解、发现人脸的三维结构,就可以很自然地区分真实人脸和一些伪造的东西。

比如照片是平面的,显然就是假的,而人脸有特定的三维结构,是真的,这时候它才放行。这个领域称为人脸防伪,也是现在人脸识别研究的一个前沿方向,用于保证人脸识别系统的安全性。

伴随着解决一个个像人脸校正这样的小问题,人脸识别不断提升自身的性能,最终走进大家的生活中。但是我相信,人脸的潜力远不止于此,人脸作为人类社会生活中至关重要的对象,除了包含身份信息以外,还包含有更深层次的信息,比如社会学上的情感信息,甚至更深层次的健康信息。在未来,我们通过更深入地理解人脸,就可以理解人类的深层次需求,使得人工智能系统更加人性化。谢谢大家!

UUID: f9c3cb66-19b9-4d61-b8a2-9dfdf1401fef

原始文件名: /home/andie/dev/tudou/annot/AI语料库-20240917-V2/AI语料库/格致论道讲坛公众号-pdf2txt/2023/格致论道讲坛_2023-09-25_当时我发现,在人脸识别领域我没什么可做的了,直到遇到这样一个需求朱翔昱.txt

是否为广告: 否

处理费用: 0.0109 元