面向影视动画的真实感三维人脸快速建模算法

时间:2022-06-28 04:16:28

面向影视动画的真实感三维人脸快速建模算法

摘要:针对影视动画领域,利用LS_5000型三维激光扫描仪,提出了一套真实感三维人脸快速建模算法。只需输入真实演员人脸的三维扫描点云和未定标的照片,以及极少的人工交互,即可生成虚拟演员真实感的三维人脸模型(包括几何模型、纹理模型和面向动画的可变模型)。实验结果表明,算法输出的模型简洁规范,可直接应用于实际的影视动画制作,提高了人脸模型建模效率。

关键词:三维人脸建模;网格简化;纹理映射;融合形态模型

中图分类号:TP391.41文献标识码:A

文章编号:1001-9081(2007)04-1013-04

0引言

现有获取三维人脸数据的方法一般分成两类:基于图像的方法和三维扫描的方法[2]。基于图像的建模方法可以直接从普通摄像机获取的图像信息恢复出人脸的三维信息,文献[3,4]利用多幅图像进行了三维人脸建模的研究:首先在照片上手工标记对应的特征点,通过这些特征点的信息使一个人脸基本网格变形得到与照片对应的三维人脸模型。基于图像的方法可将高分辨率的人脸照片变形拼接生成对应的三维人脸纹理图像,能较好地恢复人脸的纹理信息;但基于图像的方法一般需要人工交互标示特征点,得到的几何数据精度不高,噪声较大,很难满足影视动画制作的要求。

激光扫描通过三角测距原理获得物体表面顶点的三维坐标,是获取三维人脸数据最为快速准确的途径。文献[5]通过激光扫描仪建立了一个包括几何模型和纹理模型的三维人脸数据库,并利用形变模型进行三维人脸建模的研究。文献[6]利用CyberWare人脸专用扫描仪进行创建中国人三维人脸库的工作。激光扫描仪也能获取人脸表面的纹理信息,但一般分辨率较低,达不到影视动画中的要求。激光扫描获取的点云数据顶点数目过多,如何进行合理简化也是其在影视动画应用中的一个关键性问题。

为了真实地再现人脸丰富的表情和各种动作,研究者们进行了建立人脸可变模型的研究,提出了插值、参数化、肌肉模型和伪肌肉模型等多种技术[7]。基于插值的方法首先制作出人脸面部各关键动作和表情的模型集合,任意的人脸表情通过这些关键模型线性组合而成。插值方法给予动画师直观准确的控制,能生成逼真的人脸动画效果,在影视动画领域得到了广泛的应用。但插值方法初期手工建模十分繁琐,并且不具有可重复性,对于新的特定人脸都需要再建立一套目标网格集。

为了克服插值技术和参数化方法的缺点,基于物理的肌肉模型方法得到人们的广泛关注。肌肉模型通过建立数学模型来仿真人脸组织真实的受力运动情况,文献[8]建立了一个基于物理的皮肤和肌肉层的综合模型,人脸可变模型包含三层:具有非线性性质的生物组织层、皮肤下的肌肉层、肌肉层下不可穿透的骨骼层,肌肉的收缩最终引起皮肤的运动。这种模型接近人脸真实的生理结构,可以达到较好的效果;但是计算量大,并且动画师难以进行直观的控制。

针对现有人脸建模技术中的问题,面向影视动画领域,本文提出了一种三维人脸快速建模算法(见图1)。首先利用LS_5000型三维激光扫描仪扫描真实演员人脸,得到其三维人脸点云数据;利用一种基于基本网格变形的三维人脸简化方法,实现点云数据的简化和规范。同基于图像的方法相比,可以快速准确地得到人脸的几何数据。随后利用一种三维人脸纹理映射方法,根据真实演员人脸非定标的照片,向三维人脸网格增加真实的颜色纹理信息。同扫描仪硬件直接获取纹理相比,可以获得表现人脸表面丰富细节的高分辨率纹理图像。根据不同人脸表情肌肉运动模式的相似性,利用本文简化算法输出的人脸网格的规范性,实现了一种基于融合形态的三维人脸可变模型快速建模算法,可在影视动画制作中用之再现真实演员人脸丰富的表情和各种动作。

分区图片

1真实感三维人脸几何模型建模研究

为了建立真实的三维人脸模型,首先必须建立人脸真实的几何模型,即建立人脸的几何形状数据。我们采用山东大学图像处理实验室开发研制的LS_5000型三维激光旋转扫描仪(见图2)获取人脸表面的几何信息。由于三维激光扫描仪均匀采样获取数据,为了精确地获得人脸表面的几何信息,需要以极高的分辨率来扫描。LS_5000型三维激光扫描仪的扫描分辨率为700×360,扫描一次得到25.2万顶点的人脸点云数据(图2)。而在实际的影视动画应用中,为便于人机交互及后继处理,常用人脸网格模型的规模只有几百至几千点。如何对高密度点云数据简化,在充分保持原始数据所反应的人脸生理特征的前提下,大幅度减少网格顶点数目,成为三维激光扫描仪实用化的关键问题。

传统的三维网格简化方法,如边折叠算法[9],没有利用人脸这一生理器官的统计特性,要把几十万顶点有空洞毛刺的点云数据简化成几百点并保留人脸的主要生理特征,具有很大的难度。本文利用一种基本网格变形的三维人脸简化算法[10],首先构造一个750点的顶点分布和拓扑结构都非常适合人脸的基本网格:在眼睛、嘴唇等细节区域顶点分布较密,在面颊脑后等平坦区域顶点分布较疏;拓扑连接关系规范,且大体反应了人脸的生理结构(图3(b))。将此基本网格变形来逼近拟合扫描点云,充分利用人脸的先验知识,可以达到很好的简化效果。

图3说明了基于基本网格变形的三维人脸简化算法的基本流程:

1)首先人工选定原始扫描点云a(25.2万顶点)和基本网格b(750顶点)的13对特征点,应用最小二乘法求解仿射变换矩阵T,使得基本网格b向扫描点云a作初始脸型对齐,从而为下一步的迭代过程提供一个好的初值,得到网格c。

2)为使网格c能够进一步迭代变形逼近扫描点云a,定义能量函数:

其中v是需要优化的基本网格顶点位置,p是点云上的所有顶点向量。右边四项指标依次代表:距离约束――点云上所有顶点到基本网格表面距离的平方和;边长约束――基本网格所有边长的平方和;平滑约束――基本网格上所有顶点到其一阶邻域质心的距离平方和;特征点约束――变形后的基本网格到扫描点云的所有对应特征点距离的平方和。对网格c最小化上述指标E(v)进行总体迭代变形,使其总体逼近扫描点云a,得到网格d。

3)为了提高算法收敛速度,进一步针对眼睛、鼻子、嘴唇、耳朵等细节区域,分别最小化指标E(v),使网格d的局部特征进一步迭代逼近扫描点云,最终得到网格e。

如图3,在顶点数目达到336倍高压缩率的情况下,变形后的基本网格依然极好地保留了人脸的生理特征信息,并且简化网格拓扑连接规范,顶点分布合理,具有较好的光滑性,达到了实际应用的要求;算法自动化程度高,和手工制作相比,提高了三维人脸建模效率;最终算法输出的所有简化网格都具有相同的顶点数目与拓扑结构,所改变的只是网格顶点的坐标值,这也为本文后续的三维人脸纹理模型与可变模型快速建模算法的设计带来了极大的便利。

2三维人脸纹理模型快速建模算法

2.1算法概述和流程

在影视动画中建立的三维人脸模型往往要求细节精细,仅用上一节建立的几何模型造型是不行的。一个常用的方法是将二维图像映射到物体表面,反映出人脸表面的光照属性,表现肤色、皱纹和发色等细节信息。本文利用数码相机拍摄人脸照片,和基于扫描仪硬件直接获取纹理的方法相比,可以获得高分辨率的人脸纹理图像。所建立的纹理模型充分表现人脸表面丰富的细节信息,满足影视动画中的要求。

算法的具体流程是:1)将原始人脸基本网格投影到二维平面,实现独立于视点的参数化,任意的简化网格都认为和其拥有相同的参数化坐标;2)利用数码相机拍摄人脸照片,运用透视投影模型建立三维人脸简化网格和二维照片间的纹理映射关系;3)根据上述对应关系,对参数化平面进行纹理重采样,生成人脸网格的二维纹理贴图。将此二维彩色图像映射到三维人脸网格上,即生成了独立于视点的三维人脸纹理模型。

2.2人脸网格参数化

参数化会引起面积上或者角度上的失真[11],由于人头接近于一个圆柱体,在实际的影视动画制作中,一般采用柱面投影的方法。其原理是在人脸模型的套上一个三维圆柱面,从圆柱的轴心投射一条经过网格P(x,y,z)点的射线,射线和圆柱面相交的坐标为(θ,h),则(θ,h)便是P点的圆柱投影坐标。

为人脸网格最低点的z值,H为网格的高度。

进一步将圆柱面展开为矩形平面,中间映射空间[0,2π]×[0,H]和纹理空间[0,1]×[0,1]的之间变换可以表示为:

由于人脸网格的复杂性,简单柱面投影得到的参数化网格仍然需要耗费人力进行手工调整,最终参数化的效果参见图4(a)。利用简化算法输出的所有网格都具有相同的拓扑结构,对于任意真实人脸得到的简化网格,都采用同一的参数化纹理坐标。在具体算法实现时,仅需对原始的基本网格作参数化,这就极大地降低了算法的复杂度。

2.3纹理映射

在这一步,我们建立人脸照片和三维人脸网格间的纹理映射关系,即确定三维网格上各顶点和二维照片像素间的对应关系。考虑人脸照片的成像过程,将人脸照片看成三维人脸网格经过坐标变换到摄像机坐标系后在视平面上的投影,确定纹理映射即可看作摄像机定标的问题。为了简化处理,本文采用线性的透视投影模型[12]来描述纹理映射。

2.4纹理重采样

利用上述建立的参数化和纹理映射关系,对参数化平面进行纹理重采样,生成人脸网格的二维纹理贴图。如图4,对于二维参数化平面上的任一点(u,v),由参数化对应关系,三维人脸简化网格上有唯一的顶点(x,y,z)和它对应:

3基于融合形态方法的可变模型快速建模算法

3.1影视动画中的融合形态模型

图6即为本文中使用的原始基本网格的融合形态模型效果。融合形态方法能够生成逼真的人脸动画效果,在影视动画领域得到了广泛的应用。但融合形态模型初期手工建模十分繁琐[5],且不具有可重复性,对于新的特定人脸都需要再建立一套目标网格集。

3.2融合形态模型快速建模算法

针对上述问题,联系到基于物理的肌肉模型方法[8],考虑到不同人脸在做同一表情动作时,他们的肌肉运动模式都是相似的,因而其面部皮肤顶点相对于中性脸位移的大小方向都应该是较接近的。基于人脸表情运动具有较大共性的这一假设,利用本文中简化算法输出的人脸网格的规范性(具有相同的拓扑结构和顶点数目,且具有较好的对应关系),我们提出了一种特定人脸融合形态模型的快速建模算法。

图7为利用此算法生成的和图6对应的本文作者的融合形态模型效果,并且已经运用第2节的方法加入了纹理信息,达到了逼真的效果。和实际操作中繁复的手工建立目标网格模型方法相比,极大地提高了影视动画中虚拟演员真实感三维人脸建模的制作效率。

4结语

本文提出了一套完整的虚拟演员真实感三维人脸快速建模方法,实验表明,算法输出的三维人脸几何模型逼近真实人脸的形状,纹理模型细腻地再现了人脸表面丰富的颜色纹理信息,可变模型可以逼真地重现人脸真实的表情动作,生成的真实感三维人脸模型达到了影视动画应用的要求。本算法自动化程度高,仅需要在三维人脸点云和人脸照片上标示13对特征点;充分利用了不同人脸模型的共性,实现速度快。且算法输出的模型简洁规范,能够直接应用于实际的影视动画制作中,极大地提高了三维人脸建模的制作效率。

在目前工作的基础上,进一步的研究工作主要存在以下方向:1)由于三维扫描仪只能扫描人脸表面的曲面,可以进一步研究人脸眼球、口腔等内部器官的建模;考虑如何更好地处理耳朵遮挡引起的数据空缺的问题;2)进行三维人脸网格和二维人脸照片特征点的机器识别研究,进一步提高算法的自动化程度;3)在确立二维人脸照片和三维人脸网格间的纹理映射关系时,改进算法使其对特征点的选取误差有更高的鲁棒性;4)建立更真实的人脸表情运动模型,当特定人脸和原始基本网格差别较大时,可以更准确地生成三维人脸融合形态可变模型。

本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

上一篇:基于格的跨域认证联盟协议 下一篇:基于四边形网格的可调细分曲面造型方法