【蜂口 | AI人工智能】三维人脸重建——龙鹏 深度学习与人脸图像应用连载(十)

本次我们的分享是三维人脸重建问题,我们将从以下几个方面给大家进行分享:

首先,我们对三维人脸重建做一个通用的介绍,并对它的常见的方进行比较详细的介绍。

其次,我们对当前的三维人脸重建中最常用的一个模型,也就是3DMM模型给大家做个非常详细的介绍。在我们的传统方法和深度学习的方法中,都非常频繁地使用到了这个模型。

然后,我们会对三维人脸重建中面临的一些难点进行阐述。主要包括3D数据的获取以及模型精度的问题。

最后,我们将对三维人脸重建的应用进行展示,主要包括在表情驱动及人脸识别这两个方面。

下面开始正式的分享内容。

什么是三维人脸重建问题呢?我们看下面这张图:
在这里插入图片描述
这是一张二维的输入图片。当我们基于这样一张二维输入图片,得到了下边这样的一个三维的模型,也就是从2D的图片到3D的模型的转变,这就是一个所谓的三维人脸重建问题。
在这里插入图片描述
三维人脸重建问题,它实现了什么目标呢?

首先,它增加了维度。2D图像只包含二维的XY信息,而3D的人脸模型,它增加了一个深度的信息。实际上,通常使用XYZRGB等多维的向量来表示三维人脸的体像素。当包含了更复杂的光照模型之后,这个多维向量不仅仅包含XYZRGB可能还包含很多其他的一些细数。

其次,三维人脸图像相对于二维人脸图像有一个好处,就是三维人脸图像可以进行任意方向的投影,它投影可以得到任意角度的二维图片,得到这样的二维图片之后,它可以用于非常方便地解决二维图像难以解决的大姿态的人脸识别与关键点定位等问题。

那常见的三维人脸重建的方法主要包含三四个:

1)手工建模,也是最传统的方法。许多学过美工的同学应该知道,3DMAX Maya软件就是用于大型的3D模型的建模,它常用在电影和动漫的制作里面。比如说这下面这个图是咕噜咕噜,是《魔戒》里面的一个形象。
在这里插入图片描述
我们当年在看《魔戒》这样一个大场景制作的电影的时候是感觉到非常震撼的。因为在当年CG技术还没有这么发达,大家平常只接触到二维2D的电影的时候,《魔戒》的出现给我们带来了非常大的视觉冲击,它就是利用玛雅来进行咕噜咕噜等一些里面大型场景的制作。
在这里插入图片描述
上面这张图是我最喜欢的一部国产动漫《秦时明月》,它也是利用三维的手工建模的方法来对其中的每一个人物形象基于3D的建模,然后进行渲染。

手工建模的技术广泛应用于电影动漫行业,它的特点就是必须要专业人员来操作,所以它的精度非常高,但是它的成本也非常高。

2)基于仪器的技术,主要包括结构光和激光扫描仪。说到这里,大家可能应该就想到了接下来我要说的是什么:iPhoneX。
在这里插入图片描述
这就是iPhoneX的结构光的技术。iPhoneX是市面上第一款实现3D人脸识别的产品,它利用的就是结构光的技术来进行三维人脸的重建。有了iPhoneX的三维人脸重建之后,它可以用于三维人脸的识别,以及做一些3D表情的动画。

这门技术它是主动三维测量技术,它就是使用一些消费级的3D传感器,它的成本虽然低,但是入门的门槛非常高。

现在国际上拥有这样一个批量生产有能力的企业屈指可数,国外就包括苹果微软,以及英特尔。国内包含了一个创业公司叫做奥比中光,他已经成功地实现了手机3D摄像头模组的量化量产。

所以在可见的一两年之内,我们应该能看到安卓手机上也开始大量地使用3D人脸识别技术。

3)基于图像的技术。基于图像的技术所使用的方法非常多:

a)最开始使用的是立体视觉的技术。立体视觉适用于模仿人眼的方案。因为人眼包括左右眼,左右眼,通过观察2D图像的视差,从而能够感受到3D的一个深度。

b)Structure from motion方法。Structure from motion是基于视频来进行3D的重建,所以它是利用光流等方法来估计相机的一个运动。

c)Structure from shape。它是一个基于反射光照模型的方法,它可以基于多张图或者单张图来进行三维的重建。

d)3D MM模型。3D MM模型是一个比较低维的3D模型。我们后面会给大家做详细的介绍。

最后还包含一些其他的方法。

总之基于图像的方法,它的特点就是它的成本非常低,精度也是最低的,但是因为它是现在最灵活的一个方案,也是在学术界被研究最广泛的方案。

下面我们给大家介绍着重介绍一下3D MM模型,是一个在三维人脸重建领域里面非常著名的模型。

这个模型基于这样一个思想:它将任何一张脸表示为一些平均脸的信息叠加,他利用199个人建立了一组标准的正交基,每一个标准的正交基就是一个3D的模型,它包含了5万多个点。正交基它分两种:形状正交基和纹理正交基。
在这里插入图片描述
上面是我们的形状正交基,可以看到形状正交基,它表征的就是形状,我们可以通过形状的系数来控制脸型。
在这里插入图片描述
上面这是纹理正交基,它表征的就是图像的纹理颜色,我们可以利用这样一个纹理系数来进行不同的颜色的渲染。

有了这两个标准的正交基之后,我们就可以把3D的人脸模型拆分为形状和纹理,分别是平均形状加上正交基的一些组合,以及平均纹理加上纹理正交基的组合。
在这里插入图片描述
关于更具体的信息,大家可以去下面这个网站去获取:

https://faces.dmi.unibas.ch/bfm/main.php?nav=1-1-0&id=details
那么3D MM模型,它要解决的核心问题就是如何恢复出我们这里的形状系数和纹理系数。
在这里插入图片描述
上面这幅图是一个比较早期的方案。这个方案的特点就是:首先我们建立了一个3D的数据库,就是我们前面所说的199个人建立的一个标准的数据集;然后我们输进了一种二维图像;再利用人脸检测、关键点检测获得它的一些关键点;获得68个关键点之后,因为这些关键点在三维的模型中也有它对应的关键点,所以我们可以从三维往二维图像进行投影;然后计算这个投影与我们获取到的二维关键点的一个误差,用最小二乘误差来求它的投影误差,从而优化我们前面的形状系数和纹理系数。

关于如何迭代的求取形状系数和纹理系数,大家可以去这样一篇文章中进行详细的解读:

Blanz V, Vetter T. A morphable model for the synthesis of 3D faces[C]//Proceedings of the 26th annual conference on Computer graphics and interactive techniques. ACM Press/Addison-Wesley Publishing Co., 1999: 187-194.
前面我们说的是用传统方法来解决这样一个系数问题,它是一个基于优化的方法,他可以获得解析解。
在这里插入图片描述
现在我们也可以利用深度学习的方法来直接回归这样的一个系数。上面这张图阐释的是一个深度学习的方案,这个深度学的方案不仅是基于一张图,而是基于多张图。基于这些图,每张图都首先重建一个3D MM模型,然后我们获得3D MM模型系数的一个平均值,获得平均值之后,我们再与它的增值去进行误差的比对,然后再进行反向的传播。

基于深度学习的方案的好处就是直接利用深度学习模型,回归出了相应的系数。在我们使用模型的时候非常方便,不需要去求解复杂的方程。

关于更多的细节,大家可以去相应的文章中进行读取。

三维人脸重建是一个比较困难的问题,它有以下几个难点:

首先,3D MM等模型维度太低导致图像细节难以恢复。我们前面说的3D MM模型是一个利用199个人脸,即199个3D模型构成了一个空间,每一个模型都只包含了5万多个点。实际上这5万多个点仍然是一个比较低维的表示。对于一个三维人脸来说,它的模型仍然非常低,我们在求解系数的时候也会用到PCA降维等方法,所以它天然就有一个缺陷,就是它的图像细节是难以恢复的,它难以恢复人脸中的细节,包括皱纹啊胡子等等。所以现在基于深度学习的最新的方案,已经开始放弃这样一个低维模型。

其次,数据标注成本特别高。因为如果我们要标注这样一个三维人脸,我们必须使用到昂贵的器械,包括一些激光扫描仪、结构光等等,这个数据标注成本比二维图像的数据标注成本要高很多。所以替代的方案是全世界尝试用一些仿真的数据,或者使用inverse rendering这种不需要标注数据的方案。

最后,3D人脸重建也容易受到干扰。这些干扰主要来自于遮挡和光照等等。

下面展示了一个比较有希望的方案。这个方案不需要标注数据,它也是个inverse rendering方法。
在这里插入图片描述
我们可以看到,首先利用深度学习,利用一个DEEP Encode来回归出它的系数,

然后我们基于前面的模型回归出一个三维的模型。得到三维模型之后,我们再往二维空间进行投影,最后在二维空间计算出像素的loss。这是一个不需要使用昂贵的标注数据的方案。

最后我们对三维人脸重建的应用做一个简单的展示,主要包含在两个方面:

首先,大姿态的人脸识别和关键点的检测。因为三维人脸重建中,当我们重建出它的模型之后,我们可以对这个三维人脸模型进行旋转等等操作,从而可以得到二维图像中被遮挡的一些区域。所以对于大姿态的人脸识别和关键点检测,三维人脸模型是有它的优势的。

其次,卡通画和表情驱动。这个我们从iPhoneX的卡通表情,就可以看出来它是一个应用的场景。下面我们用动画来进行一个展示。可以看到iPhoneX的一个表情的驱动是非常非常真实的。
在这里插入图片描述
下面这是一个大姿态的人脸关键点检测问题的展示。因为目前大致的人的关键点以及有遮挡的人脸关键点,仍然是困扰二维图像的一个非常大的课题。
在这里插入图片描述
我们往后期待三维人脸重建问题能够缓解甚至解决这样的一个问题。

感谢您的阅读,更多精彩尽在蜂口小程序~了解一下?
获取免费内容,欢迎V信fengkou-IT勾搭~

猜你喜欢

转载自blog.csdn.net/qq_43019117/article/details/83306021