揭秘美图影像实验室MTlab的10000点人脸关键点技术

美图影像实验室(MTlab, Meitu Imaging & Vision Lab)推出“10000点3D人脸关键点技术”——利用深度学习技术实现10000点的人脸五官精细定位,支持全方位姿态、各种极端表情,且在移动端达到500fps 的超高运行速度,实现电影级别的面部表情捕捉。

一、导语

相信大家对前不久上映的电影《阿丽塔:战斗天使》还有着深刻的印象,这部电影展示了目前CG技术的顶级水准,涵盖了建模,动画,渲染,模拟等CG技术。一直以来,真实感人脸的渲染和细微表情的捕捉是非常难的,但阿丽塔做的足够真实,成功的改变了人们对CG技术生成人物一看就是假的刻板印象。人脸的微表情非常多,比如简单的皱眉动作,就牵扯到眉毛、眼睛、鼻子、嘴巴、面部,乃至毛孔、肌肤纹理等等。《阿丽塔》采用特殊面部捕捉仪器,对人脸面部细节进行精准捕捉、重建和展现,刷新了人们对CG技术极限的认知。

而如今,随着深度学习的发展,表情捕捉将不再需要笨重的设备和繁琐的流程。美图影像实验室MTlab 面部稠密人脸点关键技术(MT3DMM),可以完美替代专业的动作捕捉设备,在手机上就能实现精准的表情捕捉。采用深度学习方法,通过美图庞大的人脸数据进行训练,利用网络对图像进行深层次分析并理解面部特征,进行人脸的三维定位及跟踪,支持全方位姿态、各种极端表情。同时利用MTlab研发的AI前向引擎和模型量化技术,进一步提升了MT3DMM的性能和效果,在美图T9(骁龙660)手机上达到500fps的超实时性能。

二、简介

在计算机视觉领域,人脸关键点定位在视觉和图形中具有广泛的应用,包括面部跟踪、情感识别以及与多媒体相关的交互式图像视频编辑任务。目前行业内常用的是2D人脸关键点技术,例如MTlab自主研发的118点的2D人脸关键点定位技术已成功应用于美图的各个软硬件产品中。

然而,2D人脸点定位技术由于无法获取深度信息,不能分析用户的立体特征,比如苹果肌,法令纹等更加细致的用户信息,也无法分析出用户当前的姿态和表情。为了能够给用户的自拍添加动画效果,如面具、眼镜、3D帽子等物品,并且提供更加智能的AI美颜美型效果,需要一套特殊的感知技术,实时跟踪每个用户的微笑、眨眼等表面几何特征。因此美图影像实验室MTlab研发人员研发了10000点人脸关键点技术,将面部图像提升到三维立体空间,将用户的姿态、脸型以及表情分解开来,实时跟踪用户当前的姿态、表情、五官特征改变后的面部形态,调整后的图像更加自然美观。

三、基于3DMM的人脸关键点定位方法

1、三维形变模型(3DMM)

1999年,瑞士巴塞尔大学的科学家Blanz和Vetter1提出了一种十分具有创新性的方法——三维形变模型(3DMM)。三维形变模型建立在三维人脸数据库的基础上,以人脸形状和人脸纹理统计为约束,同时考虑了人脸的姿态和光照因素的影响,生成的人脸三维模型精度较高。3DMM

如上图所示3DMM的主要思想是:一张人脸模型可以由已有的脸部模型进行线性组合。也就是说,可以通过改变系数,在已有人脸基础上生成不同人脸。假设建立3D变形的人脸模型由m个人脸模型组成,其中每一个人脸模型都包含相应的脸型和纹理两种向量,这样在表示新的3D人脸模型时,就可以采用以下方式:

其中 表示平均脸部形状模型,表示shape的PCA部分, 表示对应脸型系数。

Blanz和Vetter提出的3DMM虽然解决了人脸变形模型的表达问题,但其在人脸表情表达上依然存在明显不足。2014年时,FacewareHouse2这篇论文提出并公开了一个人脸表情数据库,使得3DMM有了更强的表现力,人脸模型的线性表示可以扩充为:

在原来的脸型数据基础上,增加了表情 , 表示对应的表情系数,系数让实时表情Tracking成为了可能。

2、美图MT3DMM模型

为了能够更加精细地刻画不同人脸的3D形状,并且适用于更广泛的人种,MTlab的研发团队采用先进的3D扫描设备采集了1200个不同人物、每人18种表情的3D人脸数据,其中男女各半,多为中国人,年龄分布在12~60岁,模型总数超过20000个,基于这些数据,建立了基于深度神经网络的MT3DMM模型。相比于目前主流的3DMM模型,MT3DMM具有表情丰富,模型精度高,并且符合亚洲人脸分布的特点,是目前业界精度最高的3D人脸模型之一。

MT3DMM部分扫描模型3DMM模型,代表了一个平均脸,也同时包含了与该平均脸的偏差信息。例如,一个胖脸在一个瘦脸模型基础上,通过调整五官比例可以得到胖脸模型。利用这种相关性,计算机只需要利用用户的脸与平均人脸的偏差信息,就能够生成专属于用户的3D模型。不仅如此,这些偏差还包括大致的年龄、性别和脸部长度等参数。但是,这样也存在一个问题,世界上的人脸千变万化,要将所有人脸与平均人脸的偏差都存储下来,3DMM模型需要集成大量面部的信息,然而目前的开源模型在模仿不同年龄和种族人脸方面的能力十分有限。

如下图BFM1的人脸数据基本都是外国人脸,跟亚洲人脸的数据分布存在差异;Facewarehouse2的数据主要是亚洲人脸,但是用Kinect扫描的模型则存在精度较低的问题;SFM3开源的数据只包含了6种表情,并且模型的精度较低,无法满足我们的需求;LSFM4数据包含了较多的人脸数据,但是不包含表情,无法用于用户表情跟踪。DL3D/需要展示的视频/29AC7807-9C91-463B-ACFB-B0CFD4225604.pngBFM和SFM数据中的部分数据扫描出来的模型虽然是高精度的模型,但是不包含具体的语意信息。因此,MTlab的3D研发团队专门为此开发了一套自动注册算法,无需人工进行标定就可以对扫描模型进行精细化注册,如下图所示:注册流程 

模型生成结果

最终,MTlab将所有注册好的3D模型组合成MT3DMM数据库,用于10000点面部关键点定位。高精度的扫描模型也为开发其它功能提供了更多的可能。

3、数据制作

为了能够发挥深度学习的大数据优势,需要给神经网络提供大量的数据,MTlab研发人员设计了一套高复杂度的数据制作算法,同时配合高精度的MT3DMM模型制作出大量的训练数据。相比目前主流的训练数据制作方法,MTlab的训练数据可以有效的解耦脸型,表情以及姿态信息,在进行精确的稠密点人脸定位的同时,进行AR特效以及精准的人脸表情驱动。

从上面的公式可以将人脸重建的问题转化成求 , 系数的问题,将我们参数化的3D人脸模型 跟2D特征点 进行映射后,便可以用下面的公式对脸部进行拟合,具体求解过程如下:

这里 是三维模型投影到二维平面的点, 为正交投影矩阵, 为旋转矩阵, 为位移矩阵,这样我们就可以将三维求解问题转化成求解下面的能量方程

这里加了正则化部分,其中 是PCA系数(包括形状系数 以及表情系数 ), 表示对应的主成分偏差。

目前的3D重建算法大多都是将姿态,脸型以及表情参数一起优化,并不能将这三者独立开来,为了能够解耦姿态,表情,以及脸型之间的关系,MTlab的数据包含了一个人同一姿态下的不同表情,以及同一表情下不同姿态的数据集,采用Joint Optimization 策略来计算每个人的脸型,姿态以及表情参数,得到解耦后的参数数据可以真实反应出当前人脸的姿态信息,脸型信息以及表情信息,极大的丰富了应用场景。

4、神经网络训练

传统的3D人脸重建算法,不管是单图重建、多图重建还是视频序列帧重建,都需要通过凸优化算法优化出所需要的参数,为了能够让算法在移动端实时运行,MTlab研发人员采用深度神经网络进行End-to-End学习,通过神经网络强大的学习能力替代了凸优化过程的大量技术。通过研究分析目前移动端较快的网络(SqueezeNet5、Shufflenet v26、PeleeNet7、Mobilenetv28、IGCV39)的特性,MTlab研发人员提出了一种适合移动端网络,并且具备低功耗特性的ThunderNet,配合MTlab研发的AI前向引擎和模型量化技术,在美图T9上运行帧率达到500fps。MT3DMM神经网络训练的要点如下:MT3DMM 整体流程数据增益:为了适应In-the-wild图像,需要让算法对低分辨率、噪声、遮挡或包含运动和不同的光照场景下具有强鲁棒性,MTlab采用了海量的数据,并用算法扰动模拟了各种真实环境下的数据进行训练。

网络结构:使用了MTlab自研的ThunderNet网络结构,在速度和精度上都超过了同规模的快速网络,包括SqueezeNet5、Shufflenet v26、PeleeNet7、Mobilenetv28、IGCV39,并具有低功耗的特点。

损失函数:Loss主要采用了参数Loss、KeyPoints Loss、3D Vertexes Loss 以及Texture Loss,并且用相应的权重去串联它们,从而使网络收敛达到最佳效果。实验发现,参数Loss可以获取更加准确的参数语意信息,KeyPoints Loss可以使最终的稠密人脸点贴合人脸五官信息,3D Vertexes Loss能更好地保留用户脸部3D几何信息,Texture Loss则可以帮助网络实现更好的收敛效果。

最终,在得到网络输出的参数后,MTlab用MT3DMM模型解码出相应的人脸3D模型,根据姿态以及投影矩阵就可以得到面部稠密人脸点。模型都是经过参数化后,每一个点都有其相对应的语意信息,可以通过修改3D模型对图像进行相应的编辑。美图手机上光效相机、个性化美颜档案、3D修容记忆、美颜立体提升、3D姿态调整、App萌拍动效、美妆相机万圣节妆容、彩妆、Avatar驱动等功能都采用了该项技术。

四、结论

目前图像和图形技术已经渗透到我们生活的方方面面,美图的MT3DMM稠密3D人脸点关键技术有众多应用场景,例如可以在VR游戏中构建玩家人脸的3D游戏角色并且驱动,也可以应用于虚拟试妆试戴和医疗美容领域 等 。美图影像实验室MTlab致力于计算机视觉、机器学习、增强现实、云计算等领域的算法研究、工程开发和产品化落地。除了MT3DMM,MTlab已通过美图AI开放平台(ai.meitu.com)对外开放了数十种计算机视觉相关技术,提供经市场验证的专业AI算法服务和解决方案。

五、参考文献

V. Blanz and T. Vetter. A morphable model for the synthesis of 3D faces. In Proceedings of the 26th annual conference on Computer graphics and interactive techniques, pages 187– 194, 1999.

Cao C, Weng Y, Zhou S, et al. Facewarehouse: A 3d facial expression database for visual computing[J]. IEEE Transactions on Visualization and Computer Graphics, 2014, 20(3): 413-425

Huber P, Hu G, Tena R, et al. A multiresolution 3d morphable face model and fitting framework[C]//Proceedings of the 11th International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications. 2016.

Booth J, Roussos A, Zafeiriou S, et al. A 3d morphable model learnt from 10,000 faces[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016: 5543-5552.

Iandola F N, Han S, Moskewicz M W, et al. SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and< 0.5 MB model size[J]. arXiv preprint arXiv:1602.07360, 2016.

Ma N, Zhang X, Zheng H T, et al. Shufflenet v2: Practical guidelines for efficient cnn architecture design[C]//Proceedings of the European Conference on Computer Vision (ECCV). 2018: 116-131.

Wang R J, Li X, Ling C X. Pelee: A real-time object detection system on mobile devices[C]//Advances in Neural Information Processing Systems. 2018: 1963-1972.

Sandler M, Howard A, Zhu M, et al. Mobilenetv2: Inverted residuals and linear bottlenecks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 4510-4520.

Sun K, Li M, Liu D, et al. Igcv3: Interleaved low-rank group convolutions for efficient deep neural networks[J]. arXiv preprint arXiv:1806.00178, 2018.

美图影像实验室MTlab
美图影像实验室MTlab

美图影像实验室(MTlab, Meitu Imaging & Vision Lab)是美图公司致力于计算机视觉、机器学习、增强现实、云计算等领域的算法研究、工程开发和产品化落地的团队。美图AI开放平台由MTlab提供技术支持和保障。

理论美图影像实验室
1
暂无评论
暂无评论~