一种三维人脸模型自动调整方法与流程

文档序号:16978316发布日期:2019-02-26 19:14阅读:448来源:国知局
一种三维人脸模型自动调整方法与流程

本发明涉及计算机图形与图像处理领域,特别是一种涉及三维网格人脸的自动调整方法。



背景技术:

人们都希望拥有一个漂亮的脸蛋,整容也变得越来越流行。通过三维扫描仪获取三维的人脸模型,然后对扫描出的人脸模型进行模拟整容也成为一些美容机构的吸引客户的主要方式。但是通过手工对三维人脸模型进行整容需要大量的操作,不能够很快的给客户展示整容结果。

现有的三维人脸调整方法主要有两种观点。一种是观点是认为不存在唯一的美丽面部特征(例如嘴、鼻子、下巴),只有当面部特征和其余特征搭配的好才会具有吸引力,因此他们提出了一种对整形手术的规划系统,根据患者脸部特征自动提供推荐的整形方案,参见bottinoa,desimonem,laurentinia,etal.anew3-dtoolforplanningplasticsurgery.ieeetransactionsonbiomedicalengineering,2012,59(12):3439-3449。另一种观点是认为一个人是否漂亮是与对称性、古典主义准则和黄金分割率这三个因素密切相关,因此提出了一套能够调整三维人脸模型的系统,该系统会在保细节特征的情况下通过调整人脸的对称性和比例提升人脸的吸引力,参见liaoq,jinx,zengw.enhancingthesymmetryandproportionof3dfacegeometry.ieeetransactionsonvisualizationandcomputergraphics,2012,18(10):1704-1716。然而这两个方法都需要手动地在三维人脸模型上手动标注特征点,并无法直接地对通过三维扫描仪获取到的人脸模型进行调整。



技术实现要素:

针对现有技术上的不足,本发明提供了一种三维人脸模型自动调整方法,能够自动检测三维人脸模型中的特征点并对三维人脸模型进行美化调整。

为了达到上述目的,本发明采用以下技术方案:

一种三维人脸模型的自动调整方法,其特征在于:包括以下七个步骤:

(1)三维扫描仪获取三维人脸模型后,从三个角度获取三维人脸带纹理的投影图,方法如下:

先将三维扫描仪获取的三维人脸模型放置于指定的空间坐标系中,使z轴正方向与人脸的正面方向一致,y轴正方向与人脸的头顶方向一致,提取正方向人脸带纹理的投影图;将人脸以y轴为旋转轴,视线沿着y轴正方向顺时针旋转15度,提取右侧人脸带纹理的投影图;将人脸以y轴为旋转轴,视线沿着y轴正方向逆时针旋转30度,提取左侧人脸带纹理的投影图。

(2)利用openface的api对步骤(1)中获取的人脸投影图进行特征点检测,获取二维图像上眼睛、鼻子、嘴、眉毛和脸部轮廓的共68个特征点,方法如下:

使用openface的api对步骤(1)中获取的三个角度人脸投影图分别识别出人脸68个特征点,包括脸部轮廓17个,左眉毛5个,右眉毛5个,鼻梁4个,鼻孔底部5个,左眼6个,右眼6个,上嘴唇外缘7个,下嘴唇外缘5个,嘴唇内侧8个。其中左眉毛5个特征点、右眉毛5个特征点、鼻梁4个特征点、鼻孔底部5个特征点、左眼6个特征点、右眼6个特征点、上嘴唇外缘7个特征点、下嘴唇外缘5个特征点、嘴唇内侧8个特征点和下颌1个特征点从人脸正脸投影图获取,左侧脸颊的8个特征点从左侧人脸投影图获取,右侧脸颊的8个特征点从右侧人脸投影图获取。

(3)对步骤(2)中获取的二维图像中的特征点反投影到三维模型上,获取三维模型的特征点,方法如下。

根据眼睛、鼻子、嘴、眉毛、脸部轮廓特征点在二维投影中的位置,获取当前角度下投影到当前像素点对应的三维网格上的点,并计算在三维人脸上离该点最近的三维顶点,将这个顶点作为二维特征点对应的三维特征点。

(4)使用pca脸部模型拟合原始的三维人脸模型,利用pca脸部模型特征点与步骤(3)中获取的三维特征点对应来增加拟合精度,得到初始对齐网格,方法如下:

这里采用pca(principalcomponentsanalysis)脸部模型方法(参见blanzv,vettert.amorphablemodelforthesynthesisof3dfaces.proceedingsofthe26thannualconferenceoncomputergraphicsandinteractivetechniques.acmpress/addison-wesleypublishingco.,1999,pp.187-194.),这里pca模型使用paysanp,knother,ambergb,etal.a3dfacemodelforposeandilluminationinvariantfacerecognition,advancedvideoandsignalbasedsurveillance,2009.avss'09.sixthieeeinternationalconferenceon.ieee,2009:296-301.提供的开源人脸数据库。

使用pca方法对200张3d扫描的人脸模型训练得到pca脸部模型;在pca脸部模型上标记好68个用于三维配准的特征点和55个用于人脸美化的特征点;用pca模型拟合原始的三维人脸模型(参见caoc,wengy,zhous,etal.facewarehouse:a3dfacialexpressiondatabaseforvisualcomputing.ieeetransactionsonvisualizationandcomputergraphics,2014,20(3):413-425.),并利用pca脸部模型的三维配准特征点与步骤(3)中获取的三维特征点对应来增加拟合精度。这里利用pca进行拟合的能量方程式设置如下:

其中:

表示原始人脸68个特征点到pca平均人脸上68个特征点的距离平方和,用来进行特征点对齐,为特征点的个数,表示第个特征点坐标,表示在步骤(3)中获取的对应于的脸部特征点的坐标。

表示原始人脸上的三维点到平均人脸上的对应点之间的距离平方和,表示对应点的个数,是原始人脸三维点的坐标,表示原始人脸上的三维点在平均人脸上的对应点。

表示tikhonov正则化能量项,是最后要求解的pca系数,是pca人脸第个特征向量对应的特征值。

求解能量方程得到拟合的pca系数。最后通过pca系数计算初始网格顶点坐标。初始网格顶点坐标计算公式如下:

其中:

表示平均人脸,表示pca人脸模型第个特征向量,这里是199。

(5)对步骤(4)中生成的初始对齐网格进行3d配准,通过求解能量方程得到最终对齐网格,方法如下:

为获取更高精度,对步骤(4)中生成的初始对齐网格进行3d配准得到最终对齐网格。3d配准设置的能量方程式如下:

其中:

表示最终网格上的点到原始网格上的对应点距离的平方和;

表示最终网格上的点到根据pca拟合出的人脸模型对应点的距离平方和,其中表示pca矩阵基底的第行,表示各个主元的权值,表示平均人脸的第个顶点的坐标;

表示最终网格上每条边到初始网格经过局部刚性变换后边的距离平方和,其中表示第个顶点的旋转矩阵。

求解能量方程式得到最终网格上的点

(6)对步骤(5)中得到的最终对齐网格重新计算纹理坐标,得到配准后的三维人脸模型,方法如下:

计算最终对齐网格上点到原始三维人脸点云的最近点;计算最终对齐网格上点到原始三维人脸点云的最近点的所有邻接面的距离,选取与该点距离最近的面,计算投影点;计算原始三维人脸上投影点的重心坐标,得到该点在原始三维人脸上的纹理坐标,作为最终对齐网格上点的纹理坐标。

(7)对步骤(6)中得到的配准后的三维人脸模型进行美化调整,得到调整后的三维人脸模型,方法如下:

将步骤(4)中在pca模型上标记好的55个特征点以向提供的顶点索引在最终对齐网格上标记,并将最终对齐网格划分为6个特征区域;对最终对齐网格的6个特征区域的初始特征点坐标进行局部性和全局性调整,得到对称调整后的三维特征点坐标;依据人脸的古典主义法则和黄金分割法则,将对称调整后的三维特征点坐标进行全局比例调整,得到比例调整后三维特征点坐标;根据侧脸美化法则,将比例调整后的三维特征点进行侧脸比例调整,得到侧脸调整后的三维特征点坐标;采用拉普拉斯变形方法,使用最终对齐网格三维特征点坐标和侧脸调整后的三维特征点坐标构造线性方程组并求解,得到调整后的三维人脸模型(参见liaoq,jinx,zengw.enhancingthesymmetryandproportionof3dfacegeometry.ieeetransactionsonvisualizationandcomputergraphics,2012,18(10):1704-1716)。

与现有技术相比,本发明的有益效果为:

本发明提出一种全新的对人脸三维模型的自动调整方法,采用对三维脸部进行投影,通过对投影图进行脸部特征点识别再反投影回三维空间找到三维空间配准特征点,通过pca和三维配准将平均人脸模型拟合为原始人脸模型,通过在平均人脸上标记美容需要用到的特征点,用现有方法进行脸部美容调整。在保持人脸细节的前提下对人脸实施了一键美容。本发明方法明确,界面友好,结果鲁棒,且该方法可以用于虚拟人脸整容、计算机动画和计算机游戏等领域。

附图说明

图1为本发明的技术方案流程图;

图2为本发明三维人脸模型的配准特征点分布图;

图3为本发明三维人脸模型的正脸美化特征点分布图;

图4为本发明三维人脸模型的侧脸美化特征点分布图。

具体实施方式

下面结合附图对本发明一种三维人脸模型自动调整方法实施例子进行详细说明。

如图1所示,一种三维人脸模型自动调整方法,包括三维扫描仪获取三维人脸模型,从三个角度获取带纹理投影图、提取二维投影图中人脸的68个特征点、将二维特征点反投影获取三维特征点、使用pca方法拟合原始人脸模型得到初始对齐网格、对初始对齐网格进行3d配准得到最终对齐网格、对最终对齐网格重新计算纹理坐标得到配准后的三维人脸模型、对配准后的模型进行美化调整得到美化后的三维人脸模型七个步骤。

现具体介绍本方法的七个步骤:

1)通过三维扫描仪扫描得到的三维人脸模型,建立xyz屏幕空间坐标系,其中x方向指向屏幕右侧,y方向指向屏幕上测,z方向从屏幕里指向屏幕外。将三维人脸模型放置于该空间坐标系中,使z轴正方向与三维人脸模型的正面方向一致,y轴正方向与三维人脸模型的头顶方向一致,使得能看到人脸正投影的图像,提取正方向人脸带纹理的投影图;将三维人脸模型以y轴为旋转轴,沿着y轴正方向顺时针旋转15度,提取右侧人脸带纹理的投影图;将三维人脸模型以y轴为旋转轴,沿着y轴正方向逆时针旋转30度,提取左侧人脸带纹理的投影图。

2)使用openface的api对步骤(1)中获取的三个角度人脸投影图分别识别出人脸68个特征点,特征点分布如图2所示,包括脸部轮廓17个,左眉毛5个,右眉毛5个,鼻梁4个,鼻孔底部5个,左眼6个,右眼6个,上嘴唇外缘7个,下嘴唇外缘5个,嘴唇内侧8个。

其中左眉毛5个特征点(编号23-27)、右眉毛5个特征点(编号18-22)、鼻梁4个特征点(编号28-31)、鼻孔底部5个特征点(编号32-36)、左眼6个特征点(编号43-48)、右眼6个特征点(编号37-42)、上嘴唇外缘7个特征点(编号49-55)、下嘴唇外缘5个特征点(编号56-60)、嘴唇内侧8个特征点(编号61-68)和下颌1个特征点(编号9)从人脸正脸投影图获取,左侧脸颊的8个特征点(编号10-17)从左侧人脸投影图获取,右侧脸颊的8个特征点(编号1-8)从右侧人脸投影图获取。

3)获取正脸投影图识别出的编号为(9,18-68)的像素点二维坐标,如步骤(1)中所述将人脸转为正向,获取每个特征点二维坐标(,)对应的深度,则特征点的在屏幕坐标系中坐标为p(,,),根据当前透视矩阵,计算出p点在物体坐标系下的坐标q(,,),遍历三维模型上的所有点,找到与q最近的点,作为该特征点对应的三维坐标。获取右脸投影图识别出编号为(1-8)的像素点二维坐标,如步骤(1)中所述将人脸转向右侧,用与正脸相同的方法计算出特征点对应的三维坐标。获取左脸投影图识别出编号为(10-17)的像素点二维坐标,如步骤(1)中所述将人脸转向左侧,用与正脸相同的方法计算出特征点对应的三维坐标。

4)将200张三维人脸模型作为训练集,数据来源参见paysanp,knother,ambergb,etal.a3dfacemodelforposeandilluminationinvariantfacerecognition,advancedvideoandsignalbasedsurveillance,2009.avss'09.sixthieeeinternationalconferenceon.ieee,2009:296-301.。对每张人脸建立pca向量,对200个pca向量求平均值得到平均人脸的pca向量。在平均人脸上标记好68个配准特征点(如图2)和55个美化特征点(如图3、图4)。

68个配准特征点分布与步骤(2)中相同,55个美化特征点分布如下:第零初始特征点位于前额发缘中点,第一、三初始特征点分别位于左右眉毛上边缘区域的最高点,第二初始特征点位于左右两边眉毛的中间,第四、九初始特征点分别位于左右耳朵外缘的最高点,第五、八初始特征点分别位于靠近左右眉毛外的区域并位于头部的外轮廓线上,第六、七初始特征点分别位于左右眉毛下边缘的最低点,第十、十三初始特征点分别位于右左眼的外边缘,第十一、十二初始特征点分别位于右左眼的内边缘,第十四、十五初始特征点分别位于左右眼睛下边缘的最低点,第十六、二十初始特征点分别位于左右耳朵外缘的最低点,第十七、十九初始特征点分别位于鼻子左右侧的最边缘点,第十八初始特征点位于鼻子的中点,第二十一、二十二初始特征点分别位于左右嘴唇最高点,第二十二初始特征点位于上嘴唇的中点,第二十四、二十六初始特征点分别位于闭合嘴唇的最左点和最右点,第二十七初始特征点位于下嘴唇的下边缘点,第二十八初始特征点位于下巴的最底端,第二十九、三十初始特征点分别位于左右两边颧骨的最外边缘,第三十一初始特征点到第三十七初始特征点,第三十八初始特征点到第五十三初使特征点平均分布于人脸的外轮廓,第五十四初始特征点位于下嘴唇与下颌之间的凹陷部位,可参见文献liaoq,jinx,zengw.enhancingthesymmetryandproportionof3dfacegeometry.ieeetransactionsonvisualizationandcomputergraphics,2012,18(10):1704-1716。

求取原始模型与平均人脸的对应点集合:找平均人脸上的三维点p到原始人脸三维点的最近点q。找原始人脸三维点q到平均人脸的的最近点p1,如果p1与p是同一个,则将p,q当做一个有效对应。

设置pca拟合的能量方程式:

其中:

为特征点的个数,这里为68;

表示第个特征点坐标;

表示在步骤(3)中获取的对应于的脸部特征点的坐标;

表示对应点的个数;

是原始人脸三维点的坐标;

是原始人脸的三位点在平均人脸上的对应点;

是pca系数;

是pca人脸第个特征向量对应的特征值。

利用最小线性二乘法求解能量方程组,得到pca系数,接下来通过方程求得初始网格顶点坐标

5)为了使步骤(4)中的初始对齐网格更加贴近原始的三维人脸模型,对步骤(4)中生成的初始对齐网格进行3d配准,设置能量方程式如下:

其中:

表示最终对齐网格上的顶点个数;

表示最终对齐网格上顶点的坐标;

表示与对应的初始网格上的坐标;

表示pca矩阵基底的第行;

是pca系数;

表示平均人脸的第个顶点的坐标;

表示第个顶点的旋转矩阵;

利用最小线性二乘法求解能量方程组,得到最终对齐网格上顶点的坐标

6)对于最终对其网格上的点,遍历原始三维网格,找到与最接近的点,然后将投影到所有邻接面上,找到投影距离最短的面,并计算出投影点;计算投影点在当前面上的重心坐标,进而计算出在原始三维人脸上相应的纹理坐标,作为的纹理坐标。由此得到配准后的三维人脸模型。

7)将pca方法中的平均三维人脸模型的55个美化特征点作为配准后的三维人脸模型的美化特征点,对三维人脸模型进行调整(参见liaoq,jinx,zengw.enhancingthesymmetryandproportionof3dfacegeometry.ieeetransactionsonvisualizationandcomputergraphics,2012,18(10):1704-1716)。

根据美化特征点分布,将人脸划分为六个区域:眉毛区域由特征点对1和3、6和7组成;眼睛区域由特征点对10和13,11和12,14和15组成;鼻子区域由特征点对17和19组成;嘴唇区域由特征点对21和23,24和26组成;耳朵区域由特征点对4和9,16和20,36和37组成;脸颊区域由特征点对29和30组成。采用反射变换对每个特征点对进行坐标变换使得每个区域上的特征点局部对称,计算出对称轴,对于各个区域进行旋转变换使得各个区域关于全局对称轴对称。将特征点0,2,18,22,25,27,28,31,32,33,34,35平移到全局对称轴上。

执行以下美化步骤,使得美化后人脸接近古典主义和黄金分割比率的美丽标准:

第一步:固定特征点0和特征点28,并得到人脸的长度

第二步:令,其中分别表示前额长度,鼻子长度和除前额、鼻子后的脸剩余长度。显然,。可以由第0,28个特征点和修改后的法则来确定特征点18和31的位置。当特征点18和31发生变化时,必须根据这两点的变化情况来调整特征点集合和特征点集合的位置。

第三步:另,其中分别表示鼻子的长度,耳朵的长度。那么。不改变特征点4和9的位置,特征点16的新位置为,特征点20的新位置是。再使用下列公式来相应的等比例调整特征点36和37的位置:

第四步:令,其中分别表示脸长和脸宽,是黄金分割率。因此,通过特征点0和28可以计算出特征点29和30两点的新的位置:。特征点集合的变化应与特征点29和30的变化一致。再以如下公式对左脸外轮廓特征点集合进行相应调整:。同样的,必须以如下公式对右脸外轮廓特征点集合进行相应调整:

第五步:令,其中分别表示脸宽,鼻宽,=4。因此,特征点17和19的新位置可以表示成:

第六步:令,其中分别表示眼间距和鼻宽,。因此,特征点11和12的新位置可以表示成。与上述的第四步一样,如果改变了特征点11和12的位置,就必须对特征点集合作相应的调整。

第七步:令,其中分别表示眼间距,右(左)眼裂宽度,。因此,特征点13和10的新位置可以表示成。然后,根据下列两个公式等比例的调整特征点14和15的位置:

第八步:令,其中分别表示嘴宽和鼻宽,是黄金分割率。因此,特征点24和26的新位置就可以表示成。然后根据下列两个公式等比例的调整特征点21和23的位置:

第九步:令,其中,分别表示嘴唇到下巴的距离和鼻宽,是黄金分割率。因此,特征点22的新位置可以表示成。与上述的第四步一样,如果改变了特征点22的位置,就必须对特征点集合作相应的调整。

上述九个步骤中所涉及的式子中,分别表示第个特征点变化前后的位置坐标,x和y分别表示了模型空间坐标的x值和y值。经过以上9步的比例美化操作,可以得到54个特征点的变化量。最后,54个特征点的新位置可以按照以下公式来计算:

其中,取黄金分割率的倒数。

第十步:将三维人脸模型上的11个特征点2,17,18,22,27,31,32,33,34,35,36作为决定侧脸是否漂亮的关键特征点。固定住特征点2和36的坐标位置,根据国际美容学关于侧脸美容的19条标准,通过使下列方程值最小来得到特征点集合满足条件的最小位移:

其中,是国际美容学的第条侧脸美学标准,比如说,第一条侧脸美学标准可以表示成:

分别表示第条侧脸美学标准中角度值的平均值与标准差。是一个新的能量方程,目的是让特征点集合中特征点的位移量最小,如下表示:

其中,其中,分别表示特征点集合中侧脸美化前与侧脸美化后的特征点,分别表示这些特征点位移量的平均值与标准差,根据脸部模型的大小调整。

第十一步:以55个初始特征点作为三维人脸模型的控制点,将该55个特征点拉动到经过优化后的新的55个特征点位置,通过求解最小二乘线性方程组来对整个模型进行拉普拉斯变换,得到保留住大部分细节特征的美化后的三维人脸模型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1