基于二维图像的三维人脸建模技术研究
人脸模型,省去了大量繁琐的建模工作。往往用第三方建模软件导出的人脸模型,有成千上万个数据点,虽然大量的数据增加了模型的精确度,然而过量的数据点导致人脸模型中三角面片数量的剧增,加深了模型结构拓扑关系的复杂程度,使实现人脸动画更加困难,从而限制了人脸建模的应用范围,而且这些都不利于模型调整和重构,限制了不同个性化人脸的设计需求。所以,必须选取几何结构简单、数量适中但又能恰当体现人脸细节的三维人脸模型。
本文从 Poser7.0中获取一个通用人脸模型[46]。从Poser7.0中导出的三维通用人脸模型文件格式为.vtx,命名为man.vtx。当然还有很多其它格式的导出文件,这些文件虽然描述的都是同一个对象,但文件内部数据的组织方式有很大区别。man.vtx中人脸模型包含三个组成部分,前两个组成部分分别是左眼球object1和右眼球object2,第三个组成部分是人头模型object3,对这三个组成部分分别进行数据信息的提取和保存,每一部分包括四个不同的数据段。
(1)顶点坐标数据段 记录三维网格模型上每个顶点的三维空间坐标。模型上顶点总数为4130。
(2)三角面片数据段 通用三维网格模型是由很多三角面片组成,每个三角面片都有三个顶点,三角片元数据包含了所有三角面片对应顶点的下标。在通用模型中三角面片总数为8176,其中头部的三角片总数为6928,左右眼球的三角片总数各为624。
(3)顶点法向量数据段 记录三维网格模型上每个顶点的法向量。
(4)网格顶点纹理坐标数据段 记录三维网格模型上每个顶点在二维纹理空间所对应的纹理坐标,为后面的纹理映射工作奠定了基础。
基于导出通用模型文件的数据分布情况,考虑到本文是针对人脸表面进行建模,保留了左右眼球,牙齿和舌头以及耳朵等细节特征,并且可以根据这些部位不同的特点对它们进行分别建模,从而可以提高建模质量和最终效果。这样可以使模型更加生动逼真,还可以提高特征点选择的精确度,从而为下一步的建模和人脸动画工作打下良好的基础。处理完毕的网格模型正侧面如图3-1,3-2所示。
17
河南工业大学硕士学位论文
图3-1 一般网格模型正面图像 图3-2 一般网格模型侧面图像
3.2 基于MPEG-4的人脸特征点定义
MPEG-4是由国际标准化组织(ISO)的运动图像专家组开发的,它是为技术的进步和演化提供标准,而不是为一个详细的应用提供标准。MPEG-4不仅建立了一个声音-图像场景模型,以此来表示具有具体行为和特征的声音-图像对象,而且也是第一个声音-图像表示方法标准。这种表示方法还可以在同一幅场景里面同时表示合成数据和自然数据[47]。
3.2.1 MPEG-4标准下的FDP参数
MPEG-4用FAP,FDP来描述人脸的表情和纹理以及几何结构,这些参数对人脸的表示和动画进行具体的定义。FAP(Facial Animation parameter)是MPEG一4标准中定义的一组人脸动画参数,它提供一些人脸动画的特征。FDP(Facial Definition Parameters)描述人脸的几何结构和纹理信息,它提供人脸各个器官的特征点信息。FAP建立在人脸的微小表情动作的基础上,并且非常接近于脸部的运动。MPEG-4标准中人脸特征点表示如图3-3所示。
根据FDP标准[48],为了能够为构建三维人脸模型提供参考空间,利用通用人脸模型标定63个特征点,FDP参数是用来表示为人头上的一些特征点的三维空间坐标。FDP为特征点的选取提供了很好的参考依据,这些特征点都是研究者经过大量的实验分析验证得到的,具有一定的参考价值。
18
基于二维图像的三维人脸建模技术研究
图3-3 MPEG-4的特征点选择图
3.2.2 本文选定的人脸特征点
人脸具有极其复杂的几何结构,要想构建一个精确的人脸模型,则应选取具有代表性的特征点,这些特征点能够唯一标识该对象,且具有不受其它因素影响的稳定性。由于目前还没有有效的自动标定人脸特征点的方法,自动提取实现也有一定的难度,因此,本文采用手工交互的方式在人脸的正、侧面照片上标注所定义的特征点。
由于MPEG-4中定义的人脸特征点参考标准主要是为人脸动画的实现提供参考依据,而在人脸建模时一些特征点是无关紧要的,当使用MPEG-4中定义的全部特征点时,点的分布不均,反而使得最终建模的结果不理想,同时也加大了计算量。为了避免发生这种现象,而且又尽量做到符合FDP特征点选择标准,本文选取的人脸特征点如图3-4,3-5所示。同时,在通用三维人脸网格模型上选择对应的特征点,并且保存网格模型上特征点的空间坐标位置,以后对任何对象进行三维人脸建模时,都可将该通用人脸模型和选取的特征点作为参考标准。因而,网格模型特征点的选择具有长远的意义。由于人脸两侧基本是对称的,正是因为这种对称性的存在,方便了我们的实际操作,在统计特
19
河南工业大学硕士学位论文
征点的坐标时,只需得出中央特征点和一侧特征点的坐标即可,另一侧的坐标可由空间对称性直接得到。我们认为左右两侧的特征点的个数和位置大致相同,其中眼睛上有4个,鼻子上有8个,眉毛上有3个,嘴巴上有5个,脸的外部轮廓上有16个,耳朵上有3个,后脑侧边缘轮廓有6个,面部有8个,共63个特征点。
图3-4 正面特征点定义 图3-5 侧面特征点定义
3.3 本章小结
本章详细描述了通用三维人脸网格模型从Poser 7.0中的导出过程,对导出的文件结构格式进行分析,对适用于实验的数据信息进行提取、记录和保存,为后面的实验做准备。然后简单介绍了MPEG-4中FDP特征点定义标准,根据人脸特征分布特点和构建特定三维人脸模型的过程为依据,在通用三维人脸网格模型上标定了63个更利于模型变换的人脸特征点,并把通用模型和特征数据保存下来;随后在照片上找到与通用人脸模型相对应的特征点,对照片中的特征点进行手工交互式提取。在分析MPEG-4的基础上,本文在提取的人脸正、侧面照片上手工标出了63个特征点,这些特征点能基本反映人脸几何形状和结构特点,为后面个性化人脸模型的构建奠定了基础。
20
基于二维图像的三维人脸建模技术研究
第四章 个性化三维人脸建模
有许多可行的方法可以构造出具有真实感的虚拟人脸,最经典的方法是用特定人脸的各个器官信息来修改一个一般模型。目前有不少方法是根据一个结构化的三维中性人脸模型,从二维照片中获取面部数据信息,据此合成三维信息修改中性模型得到个性化三维人脸。在整个过程中,个性化人脸信息的提取是非常重要的。同时,整个过程的关键核心技术是中性人脸模型到个性化人脸模型的变形,其直接影响着个性化人脸的最终结果。
本章的目的是利用人脸正侧面照片来构建具有真实感的三维人脸模型。在获取了三维通用人脸模型及人脸正侧面照片之后,就要通过提取照片上的深度及特征点信息变换三维通用人脸模型来获得对应的个性化人脸模型。二维人脸照片是在自然环境中通过相机拍摄的人脸图像,它只能反映人的面部器官在某个角度的二维分布信息,但我们想得到的是三维模型,所以个性化人脸模型的构建过程就是:首先提取二维人脸图像及通用人脸模型的特征点信息,并从二维照片中获取三维人脸信息,然后通过一种基于径向基函数插值处理变形使通用人脸模型与之匹配,最后用二次插值来局部平滑个性人脸模型,从而得到比较逼真的个性化人脸模型。
4.1 照片的预处理
由于各种因素的影响,在自然状态下获得原始图像,都存在一定程度的噪声干扰。噪声严重影响图像的质量,降低图像的清晰度,甚至掩盖了图像的本质特征,这些都对图像处理起到一定的干扰作用,所以在进行图像处理之前最重要的一个操作就是图像预处理。
4.1.1 人脸图像的规范化调整
彩色人脸图像包含诸如背景颜色,头发颜色等较多的色彩信息内容,不容易进行人脸定位,将其转换为灰度图像,可以有效区分皮肤区域和非皮肤区域,为下一步操作奠定坚实的基础。经过灰度化的人脸正侧面图像分别如图4-1,4-2所示。
21