基于单张照片的三维人脸表情合成

2015-09-18 02:33新疆大学信息科学与工程学院乌鲁木齐830046
现代计算机 2015年14期
关键词:真实感人脸纹理

赵 欢,赵 晖(新疆大学信息科学与工程学院,乌鲁木齐830046)

基于单张照片的三维人脸表情合成

赵欢,赵晖
(新疆大学信息科学与工程学院,乌鲁木齐830046)

提出一种基于单张照片的真实感三维人脸表情合成方法,首先自动检测人脸和定位关键点;然后结合三维人脸模型实现人脸的重构;再根据肌肉模型的思想合成表情;最后合成模型的眼睛,增加表情真实感。该方法能够合成出逼真、自然的表情。

表情合成;三维人脸模型;纹理贴图

0 引言

随着科学技术的发展,三维人脸表情合成技术得到了长足发展,在国内外都取得了许多优秀的研究成果。根据数据形式的不同,人脸表情合成可分为二维表情合成[1]与三维表情合成[2~3]。在三维虚拟人脸建模中,根据建模方法的不同,又分为基于图像的建模方法[4]、基于三维扫描仪的建模方法[5]和基于建模软件的方法(3dsMax、Maya等)。再根据所采用的技术进行分类,人脸表情合成又可分为混合样本人脸表情合成、直接表情迁移方法和基于机器学习的真实感人脸表情合成等[6]。近年来,人脸表情合成技术已经广泛地应用到了电影特效、虚拟主持、网络会议等方面。本文提出一种基于单张人脸照片的简单三维表情合成系统,如今拍摄一张高质量的照片非常方便,因此它比多张照片的合成方法更具实用性。

1 三维人脸建模

人脸的结构很复杂,为了实现控制的动画,必须设计一个计算模型,把人脸的几何表示和它的变形联系起来。本文综合分析以上方法的优缺点及适用领域,结合自身项目的特点,采用基于图像的方法建立三维人脸模型。

对真实感人脸建模的要求包括以下4个方面:逼真性、实时性,尽可能多地自动完成建模过程以及对特定人脸的自适应性。基于图像的建模方法就是想把人脸建模过程以尽可能少的步骤完成,从而满足人脸的建模要求。

1.1一般人脸模型

本文选择由113个顶点和168个面片组成的Candide-3模型作为本文的参数化模型,其原因有两个:一是该模型容易控制,能够生成因肌肉伸缩引起的细微表情变化;二是该模型容易扩展。我们删除了一些不必要的顶点又增加了嘴部细节需要的顶点后,现在有110个顶点,如图1所示。

图1  Candide-3模型

1.2模型重构

我们首先用主动形状模型(Active Shape Model, ASM)[7]提取人脸照片上的关键特征点。得到的特征点二维坐标后,我们选取了Candide-3模型上的30个顶点作为关键点,对模型进行调整。为了尽量用最少的点表示人脸的特征,我们选取的关键点包括脸部轮廓、眼睛区域、嘴巴区域、鼻子等特征点。如上图红色原点标注所示。然后进行全局变换,也就是修改模型整体轮廓,使其与图像中人脸的脸型与五官的位置一致。本文在人脸图像上选取了四个基准点,分别位于两个外眼角、鼻根和下巴,如图2所示。

图2 脸部基准点

设图像中四个点的二维坐标分别为Dl(xl,yl),Dr(xr,yr),Dn(xn,yn),Dj(xj,yj),对应的三维人脸模型上的二维坐标分别DL(xL,yL),DR(xR,yR),DN(xN,yN),DJ(xJ,yJ),则人脸模型的缩放参数s的计算方法为:

模型的位移参数t的计算方法为:

接下来进行局部变换。由于模型的顶点编号是有规定顺序的,所以对于关键点的调整非常简单,将模型上对应点的位置变换到图像上对应特征点的坐标位置即可。

1.3建立三维人脸模型

得到重建后的三维人脸几何模型后,这时的人脸模型是由三角面片构成的网格模型,缺乏真实感,需要用纹理映射技术恢复出面部的纹理信息。OpenGL为我们提供了强大的纹理贴图方法,下面主要介绍OpenGL中纹理贴图的原理与方法。OpenGL要求纹理图像必须满足的条件是:图片的高度和宽度必须是2的n次方大小,否则纹理图片无效。实现贴图的主要函数有如下几个:

(1)glGenTextures(1,&texture);//创建纹理

(2)glBindTexture(GLTEXTURE2D,texture);//绑定纹理

(3)glTexImage2D(GLTEXTURE2D,0,3,TexImage->sizeX,TexImage->sizeY,0,GLRGB,GLUNSIGNEDBYTE,TexImage->data);//生成纹理

(4)glTexEnvi(GLTEXTUREENV,GLTEXTUREENVMODE,TextureMode);//确贴图方式

(5)glTexParameteri(GLTEXTURE2D,GLTEXTUREMAGFILETER,MagFilter);//设置参数

(6)glTexCoord2f(0.0f,0.0f);//确定纹理坐标

本文中以人脸照片作为纹理,创建的投影矩阵为平行投影,当模型上的特征点与图像中的特征点匹配后,按上述方法对模型进行纹理映射即生成真实感人脸模型。

2 表情合成

人脸表情的合成方法主要有参数化方法、肌肉模型和表情映射。

MPEG-4标准的制定为参数化人脸模型提供了一个通用的平台,推动了真实感人脸表情合成技术的发展。MPEG-4人脸动画框架下的人脸定义参数FDP定义人脸的形状和纹理等特征,人脸动画参数FAP则用来描述人脸的各种基本动作以驱动模型生成人脸表情动画。在该标准里,通过84个特征点来控制模型,不论对于通用人脸动画还是特定人脸动画,都可以很好地描述。

为了提高逼真度,Waters[8]提出了一种基于肌肉物理特性的模型,可以根据脸部肌肉的动作来合成许多脸部组织的细微变形。该模型包含两类肌肉:一类是一端固定在骨骼上,另一端连接在肌肉上,可以拉伸的线性肌肉;另一类是绕着中心点放大或者缩小的括约肌。模型采用弹簧模型来模拟皮肤和肌肉的运动。这种模型要求掌握脸部肌肉的解剖结构、组织学、动力学等方面知识,该模型可以实现逼真的脸部变形。

表情映射方法的基本思路是:给定某个人的中性脸和带表情脸图像,标定对应的特征点构成形状向量,由表情脸的形状向量,减去中性脸形状向量,得差向量,并将它作用到另一个人的中性脸特征点上,再Mor-phing该中性脸得到新表情。这种方法可以基于任意一张中性脸,合成出样本表情。

2.1基于FACS的人脸表情合成

人脸表情编码系统FACS(Facial Action Coding System)是Ekman等人[9]于1978年提出的。他们对脸部肌肉运动及其对表情的控制做了深入研究,制定出了这个尽最大可能区分面部运动的综合系统,是迄今为止最详尽、最精细的面部动作测量技术。本文主要基于FACS的肌肉运动思想合成脸部表情。FACS通过分析人脸的生理结构定义了一组AU,不同的AU组合在一起可以产生不同的面部表情。例如:一个生气的表情,是由AU4皱眉,AU5上眼脸上升,AU7眼轮匝肌内圈收紧,和AU23嘴唇收紧组成的。表1中给出了六种基本表情涉及的AU。

表1 表情对应的AUs

2.2眼睛处理

在做出某些表情的时候,人们对眼睛部位的变化尤其敏感。使用原图像作为纹理时,眼睛睁大或者收缩时,都会引起变形扭曲,极不真实。所以本文单独合成了模型的眼睛,如图3(左)所示为合成的眼睛纹理图,图3(右)是合成新的眼球。该方法的特点是,生成简单,控制难。

3 实验分析

3.1三维人脸建模结果

采用ASM方法定位人脸关键特征点的结果如图4所示。在建立三维人脸模型时,我们先进行几何模型变换,再进行纹理贴图。为了合成像照片一样真实的三维人脸,我们为原有模型增加了背景网格,贴图后从正面看,几乎与照片没有差异,如图5所示。

图3 眼睛纹理(左)、合成眼球(右)

图4 定位关键点结果

图5 三维人脸建模结果

图6 表情合成效果

32表情合成结果

本文在Visual C++和OpenGL平台上实现真实感人脸表情动画。我们分别合成了基本六种表情和一些独立的AU动作,如图6所示,从左至右分别为高兴、生气、厌恶、悲伤、害怕、惊讶的表情。

4 结语

实验结果可以看出,本文提出的基于单张照片的三维表情合成方法,基于FACS肌肉模型的思想,合成出的表情真实、自然,效果还是比较令人满意的。我们今后工作的重点是考虑加入更多的表情动作和提高方法的自动化程度,致力于合成出更加丰富的三维人脸表情动画。

[1]Zhang Qing-shan,Zi-cheng Liu,et al.Geometry-Driven Photorealistic Facial Expression Synthesis[J].IEEE Transactions on Visualization and Computer Graphics,2006,12(1):48~60

[2]黄晓钦,林裕旭等.非线性联合学习的三维人脸表情合成方法[J].计算机辅助设计与图形学学报.2011,23(2):363-370

[3]Xianmei Wan,Xiaogang Jin.Data-Driven Facial Expression Synthesis Via Laplacian Deformation.Multimedia Tools and Applications [J],2012,58(1):109~123

[4]Narendra Patel,Mukesh Zaveri.3D Facial Model Reconstruction,Expressions Synthesis and Animation Using Single Frontal Face Image[J].Signal,Image and Video Processing,2013,7(5):889~897

[5]万贤美.真实感人脸表情合成的关键技术研究[D].浙江:浙江大学,2012

[6]万贤美.真实感3D人脸表情合成技术研究进展[J].计算机辅助设计与图形学学报.2014,26(2):167~178

[7]李皓,谢琛,唐朝京.改进的多模版ASM人脸面部特征定位算法[J].计算机应辅助设计与图形学学报,2010,22(10):1762~1768

[8]WATERS K.A Muscle Model for Animating Three-Dimensional Facial Expressions[J].Computer Graphics,1987,21(4):17~22

[9]P.Ekman,W.V.Friesen.Facial Action Coding System[M].Consulting Psychologists Press,PaloAlto,CA,1978

Facial Expression;3D Face Model;Texture Mapping

Three Dimensional Facial Expression Synthesis Based on a Single Photo

ZHAO Huan,ZHAO Hui
(School of Information Science and Engineering,Xinjiang University,Urumqi 830046)

Presents a 3D facial expression synthesis method based on a single photo,first by automatic face detection and positioning key point,then by reconstruction and combined the face with the 3D face model,then according the idea of muscle model synthesis the expression,finally,synthetic model eyes,increased expression of sense of reality.The method can synthesize realistic and natural expression.

1007-1423(2015)14-0066-04

10.3969/j.issn.1007-1423.2015.14.016

赵欢(1991-),女,新疆昌吉人,硕士研究生,研究方向为图像处理

赵晖(1972-),女,新疆乌鲁木齐人,博士,教授,研究方向为人工智能、情感计算、语音及数字图像处理

2015-04-07

2015-04-29

猜你喜欢
真实感人脸纹理
有特点的人脸
一起学画人脸
基于BM3D的复杂纹理区域图像去噪
使用纹理叠加添加艺术画特效
三国漫——人脸解锁
回归真实感
TEXTURE ON TEXTURE质地上的纹理
细推物理重体验 表现人物贵专精
消除凹凸纹理有妙招!
南丰蜜桔造型