一种图像中人脸胖瘦的调整方法

文档序号:6401395阅读:2467来源:国知局
专利名称:一种图像中人脸胖瘦的调整方法
技术领域
本发明涉及计算机图形与图像处理领域,特别是涉及一种图像中人脸胖瘦的调整方法。
背景技术
毋庸置疑,人脸在给人的第一印象以及传达情感有着不可替代的作用。在人与人的社交活动中,人的外貌起到非常关键的作用。有多项研究表明人们很在乎自己的脸蛋是否漂亮。同时,人脸的胖瘦同美是关联一起的。从传统美学的观点来看,人脸的平均形象是多样统一的结果,因此过胖或者过瘦的形象是被认为为不和谐,不美的。大部分人希望呈现给别人看的脸蛋可以更漂亮,更具有吸引力。例如,女生会通过化妆来使自己更漂亮。由于摄像设备以及移动终端的快速发展,获取二维数字图像越来越简单。用户在使用自己的照片之前通常会使用图像编辑工具对照片进行一定的处理。例如流行的专业图像编辑软件Adobe Photoshop,用户通过它来修改人脸图像。Photoshop可以提供用户一些人像修饰的功能。然而现有的图像修饰工具主要用于低层次的编辑任务,因此往往局限于类似于如何去除瑕疵和皱纹的等局部修饰。如果需要修饰人脸的脸型,让脸部看起来瘦点或者丰满点则要求苛刻的专业技能才能让整个人脸看起来一致协调同时背景不会出现明显的变形。即使是熟练的用户对整个脸部进行修饰仍然需要相当大的时间和精力。一个成功的人脸轮廓胖瘦调整算法应该不仅能够反映令人信服的体重的变化,同时应该保持人脸的自然以及个性化。因此难点主要存在两个方面:如何反映体重在人脸上的变化以及如何保持人脸原来的个性化。要生成反映体重变化的人脸变形,必须考虑脸部的生理解剖结构。从解剖角度来看,人的头部是由头骨、肌肉、脂肪和皮肤组成的。头骨是决定人脸的整体轮廓的关键组成,而脂肪和皮肤则共同决定了人脸外观的个性细节特征。人脸轮廓胖瘦需要脸部肌肉和脂肪的参与,这在一定程度上增加了物理模拟人脸轮廓胖瘦的难度。如果物理建模不够精确,会导致胖瘦的变化在真实感的欠缺。但是目前仍没有一种数学模型可以准确表示人脸。此外,虽然三维动画领域以及图像处理的发展非常迅速,但是较少工作涉及到人脸轮廓胖瘦的变化。另外一方面,胖瘦调整的过程需要保持人脸原来的个性化和特征。人脸的五官结构非常相似,但是具有非常明显的个性因素,如性别、种族、五官形状、肤色以及纹理。这要求不管是图形还是图像变形过程中要尽可能少地引入失真,使得用户在胖瘦调整之后,仍能够识别以及认同算法结果。最早在人脸轮廓胖瘦调整上的工作是1999年由Blanz和Vetter提出的,参见V.Blanz,T.Vetter:A morphable model for the synthesis of 3D faces[C].1n SIGGRAPHProceedings,Orlando,FL,USA, 1999,pp.71-78。他们利用激光扫描仪建立了一个中型的人脸数据库,大概有200名人脸被录入。在此基础上Blanz等人提出了一个统计学人脸模型,作者认为人脸的胖瘦程度是个线性函数,通过调节系数就可以加强或者减弱这个人脸的胖瘦程度。然而,他们的算法是在顶点级别上的操作,会改变人脸五官等属性,事实上五官在胖瘦程度变化时改变程度比较小。之后,比利时的Udy Danino等人提出了一种基于图像空间的人脸轮廓胖瘦调整算法,参见 U.Danino, N.Kiryati, M.Furst:Algorithm for facial weight-change[C].Proceedings of International Conference on Electronics, Circuits and Systems,2004,pp.318-321。作者认为人脸的形状主要是由头骨和软组织的厚度决定的。该算法将人脸分为三个不同体重增加模式的区域,即脸颊,脖子,以及其余区域。作者认为人脸的胖瘦程度是个线性函数,通过改变系数,来调整人脸特征点,使用插值来生成轮廓区域之间的纹理。但这个算法要求人脸只能是正脸,应用场合非常受限。同时,因为变化的区域过于单一,不能很准确地模拟变胖变瘦的效果。

发明内容
本发明提供了一种图像中人脸胖瘦的调整方法,该调整方法基于原始图像进行,既能保持面部细节特征又能对图像中的人脸进行胖瘦调整。一种图像中人脸胖瘦的调整方法,包括以下步骤:(I)建立三维人脸模型;(2)在步骤(I)建立的三维人脸模型上获取人脸的54个特征点;(3)根据人脸特征点软组织厚度关于年龄和体重的线性回归方程以及用户输入的胖瘦调整参数对步骤(2)获取的54个特征点进行位置调整;(4)采用拉普拉斯变形算法,将步骤(3)得到的位置调整后的54个特征点作为约束点集合,与三维人脸模型中的人脸顶点建立满秩线性系统,进行线性方程组求解,得到调整后的三维人脸模型;(5)对原始图像进行三角网格参数化;(6)采用步骤(4)获得的调整后的三维人脸模型驱动原始图像三角网格顶点位置的变化,经过纹理映射得到调整后的图像。其中,步骤(I)可采用激光扫描仪或深度相机等硬件装置获取人脸的几何以及纹理数据,直接获取三维人脸模型;或者采用自适应方法,通过对标准模型进行调整,从单张或多张图像中重建三维人脸模型,参见V.Blanz, T.Vetter:A morphable model for thesynthesis of3D faces[C].1n SIGGRAPH Proceedings, Orlando, FL,USA,1999,pp.71-78。步骤(2)中,在步骤(I)建立的三维人脸模型上获取人脸的54个特征点的具体方法如下:导入三维人脸模型之后,为模型建立一个左手坐标系,其中,X坐标轴方向向右,y坐标轴方向向上,之后,根据导入三维人脸模型的不同,采取两种不同的人脸特征点选取方法。如果是采用激光扫描仪或深度相机等硬件装置直接获取的三维人脸模型,则利用人机交互技术,手工地在导入的三维人脸模型上指定54个特征点。其中52个特征点的空间坐标位置分布可参见 S.D.Greef, P.Claes, D.Vandermeulen, ff.Mollemans, P.Suetens,G.Willems:Large-scale in-vivo Caucasian facial soft tissue thickness databasefor craniofacial reconstruction[J].Forensic science international,2006,159(I):126。为了防止眉骨部位有失真,本发明增加了位于人脸眉骨处的特征点53和特征点54,其软组织厚度同指定的特征点11相近。如果是采用自适应方法由图像重建的三维人脸模型,则可以根据预先在标准模型上选定的特征点索引直接获得人脸的54个特征点。步骤(3)中,根据人脸特征点软组织厚度关于年龄和体重的线性回归方程以及用户输入的胖瘦调整参数对步骤(2)获取的54个特征点进行位置调整的具体方法如下:对人脸软组织统计数据进行处理,可推导出一个人脸特征点软组织厚度关于年龄和体重的线性回归方程:Y = bQ+t^Xage+t^XBMI其中,Y为特征点软组织的厚度,age为年龄参数,BMI为体重参数,方程的系数bQ,b1; b2对于每个特征点有对应的值。由此可以得到当BMI指数增加或者减少时,每个特征点在法向方向的变化程度。具体实现中,根据经验值我们设置为每次调整一个单位BMI指数,每个特征点软组织的厚度变化为对应的指数除以100。在现实中,由于人脸头颅的限制,人是不可能无限制瘦下去的,因此我们对人脸变瘦的最大程度做了如下猜测:maxDegree = O^b1 X agepeak+b2 X BMIpeak)/b2
其中,maxDegree表示变瘦的最大程度,Bgepeak及BMIpeak分别为年龄参数及体重参数所能取到的最大值。当人脸达到特征点软组织厚度最厚时,我们认为这是人脸变化程度的极值,这个假设基于我们所使用的数据是在一定范围采集的,因此应该对实际人脸的变化范围做了限定。所述的步骤(4)的具体过程为:首先,求出原始三维人脸模型的三角网格的拉普拉斯算子,并建立具有微分坐标的矩阵方程,这样,将三维人脸的顶点从笛卡尔坐标系变换到拉普拉斯坐标系;之后,将经步骤(3)位置调整后的三维人脸上的54个特征点作为约束点集合,与三维人脸模型中的人脸顶点建立满秩线性系统,调整后的54个特征点的位置将被添加到拉普拉斯算子矩阵的额外行中;最后,采用最小二乘法来进行满秩线性系统求解,可采用SUPERLU来加速求解过程,得到编辑后网格的笛卡尔坐标,即得到调整后的三维人脸模型;步骤(5),对原始图像进行三角网格参数化具体过程为:首先,对原始图像使用Canny算子识别出轮廓线,使用不同的阈值对人脸和背景部分分别进行采样,在较为一致、特征较少的区域,也增加一些辅助点作为提取出的特征点,保证特征点的分布较为均匀,由于人的脸部较为精细,可对人脸部分取点较密集,得到图像特征点;然后,使用graph cut算法识别出人脸轮廓线,在轮廓线上均匀采样得到人脸轮廓特征点;最后,根据得到的图像特征点和人脸轮廓特征点,对图像采用约束Delaunay三角化算法,生成一个基于特征点的三角网格。步骤(6)的具体步骤如下:(6.1)将原始图像中位于人脸内部及轮廓线上的特征点对应到由原始图像生成的三维人脸模型上;(6.2)由调整之后的三维人脸模型得到对应特征点调整后的位置,按照原始图像中人脸的角度,姿势和大小进行正交投影,得到调整后的特征点在原始图像中的位置;(6.3)根据调整前后特征点的位置,构建背景重定向的能量方程,并求解;(6.4)根据求解结果,调整原始图像三角网格顶点位置;(6.5)经过纹理映射,得到调整后的图像。步骤(6)将调整后的三维人脸模型驱动图像中人脸及背景进行调整转化为一个求新图像的优化问题。新图像不仅与原始图像的拓扑结构相同,而且新图像脸部以及边界要刚性地满足新调整后的人脸。为了减少全局失真,网格参数化方法通常采取基于扭曲(stretch-based)的方法,参见 K.Zhou, J.Snyder, B.Guo, and H.-Y.Shum.1so-charts:stretchdriven meshparameterization using spectral analysis[J].1n ACM Symp.Geometry Processing,2004,pp.45-54,此方法基于以下的观察:从离散计算几何的角度来看,一个网格可以由它所有的边长长度决定。因此,我们可以通过求解一个基于拉伸的优化系统来获取目标新图像。新图像需要满足图像边缘约束,即原始图像的边界应该保持不变。因此,将四个边界的特征点限制在他们所在的边界上,图像上下左右边缘的特征点可以左右移动,但是不能上下移动,即I坐标固定,X可变;同理,左右边缘的特征点可以上下移动,但是不能左右移动,即X坐标固定,y可变,此外,图像的四个边界点保持不变。新图像也需要满足脸部特征点约束,即人脸经过胖瘦调整之后,在图像中所占的比例会发生变化。如变胖之后,在图像中所占的比例增大,反之,则减小。在本方法中需要保证目标图像中人脸以及轮廓的特征点满足求出的新位置。最后,新图像还需要满足背景网格边长约束。既然一个边长是由边长的两个顶点所决定的,那么可以通过确定这两个顶点的变化趋势来求得理想边长的长度,也就是说,边长的变化尺度是同它顶点的变化一致的。这里我们把边长的尺度变化方向分为X方向与y方向。由于脸部的变胖或变瘦会对背景网格变长进行相应的挤压或者拉伸,故可以计算得到理想边长长度,构建能量方程。这里我们使用多维度的牛顿方法来最小化上述能量方程。每次迭代的时候使用mult1-grid solver来把约束带入求解,得到特征点在调整后图像中的位置,最后,经过纹理映射得到调整后的图像。mult1-grid solver方法参见W.Press, S.Teukolsky,W.Vetterling, and B.Flannery.Numerical recipes in C:The art of scientificcomputing[M].Cambridge University Press,1992。与现有技术相比,本发明具有以下有益效果:(I)本发明采用保细节特征的拉普拉斯变形技术,调整人脸胖瘦的同时保留住了人脸上的大部分细节特征信息,在此基础上还将修改之后的三维人脸模型轮廓的变化映射到原始图像上,并对原始图像的背景进行三角网格参数化,通过求解能量方程,调整背景三角网格的位置,使变化后的背景和调整胖瘦之后的人脸融为一体;(2)采用本发明提出的调整方法可以快速地建立一个具有真实感的个性化人脸模型,能够得到一个调整过胖瘦的具有原始模型面部特征的人脸,并将调整后的人脸模型自然的嵌入到原图像中,该调整方法算法明确,界面友好,结果鲁棒,可用于计算机动画,医学领域,刑事侦探,数字娱乐等领域。


图1为本发明的技术方案流程图;图2为本发明实施例中三维人脸模型的正面人脸的特征点分布图;图3为本发明实施例中三维人脸模型的侧脸的特征点分布图;图4为本发明实施例中初始人脸示意图与调整后的人脸示意图的对比图。
具体实施例方式下面结合附图及具体实施例对本发明进行详细说明。如图1所示,本发明的图像中人脸胖瘦的调整方法包括以下步骤:(I)建立三维人脸模型三维人脸模型的建立可以采用激光扫描仪、深度相机等硬件装置获取人脸的几何以及纹理数据,直接获取三维人脸模型;或者从单张或多张图像中重建三维人脸模型使用Blanz和Vetter提出的自适应方法,通过对标准模型进行调整,从图像中重建三维人脸模型。(2)在步骤⑴建立的三维人脸模型上获取人脸的54个特征点对于通过激光扫描仪、深度相机等硬件装置获取得到的三维人脸模型,将待处理的三维人脸模型放于指定的空间坐标系中,并交互地对三维人脸模型的位置进行稍微调整,使z轴正方向与人脸的正面方向一致,y轴正方向与人脸的头顶方向一致。利用人机交互技术,手工地在三维人脸模型上指定54个特征点,其中,正面人脸特征点的分布可见图2,侧脸特征点的分布可见图3。54个特征点的位置分布如下:第一特征点位于额头正中人脸中线上;第二特征点位于左右眼眶上缘与人脸中线的交点;第三特征点位于左右两边眉毛的中间;第四特征点位于鼻子软骨上缘;第五特征点位于鼻子的中点;第六特征点位于上嘴唇的中点;第七特征点位于下嘴唇的中点;第八特征点位于下巴凹陷处正中点;第九特征点位于侧脸下巴最突出点;第十特征点位于下巴下端边缘;第十一、三十二特征点分别位于右左瞳孔正上方,额头上侧;第十二、三十三特征点分别位于右左瞳孔正上方眉毛上边缘;
第十三、三十四特征点分别位于右左额骨,上颌骨和眼眶上泪骨的连接处;第十四、三十五特征点分别位于右左鼻梁边缘,垂直方向正对眼角内缘;第十五、三十六特征点分别位于右左瞳孔正下方眼眶下缘;第十六、三十七特征点分别位于右左瞳孔正下方颧骨下缘;第十七、三十八特征点分别位于右左鼻子下端侧面的边缘点;第十八、三十九特征点分别位于接近人中的右左突起上;第十九、四十特征点分别位于右左口角边缘与人中平行;第二十、四十一特征点分别位于垂直于右左口角边缘,下巴嘴唇褶皱上;第二十一、四十二特征点分别位于右左侧面人脸下巴最突出处;第二十二、四十三特征点分别位于右左侧面眼眶边缘,平行于眼眶中心;第二十三、四十四特征点分别位于右左颧弓根部,耳朵之前;第二十四、四十五特征点分别位于右左正脸侧缘颧骨最突出处;第二十五、四十六特征点分别位于右左颧骨突起正中间,眼眶后缘;第二十六、四十七特征点分别位于右左脸颊区域与鼻子底部齐平;第二十七、四 十八特征点分别位于右左咬肌正中;第二十八、四十九特征点分别位于右左咬肌边缘,垂直于嘴角;第二十九、五十特征点分别位于右左第二白齿之下;第三十、五十一特征点分别位于右左下颚骨转角处;第三^^一、五十二特征点分别位于右左下颚骨下缘,垂直方向上和第二白齿对齐;第五十三、五十四特征点分别位于右左太阳穴。对于由图像重建的三维人脸模型,则根据预先在标准模型上选定的特征点索引直接导入。(3)根据人脸特征点软组织厚度关于年龄和体重的线性回归方程以及用户输入的胖瘦调整参数对步骤(2)获取的54个特征点进行位置调整根据年龄跟体重对人脸软组织厚度的相关统计数据进行了处理,推导出一个人脸特征点软组织厚度关于年龄和体重的线性回归方程:Y = h0+h1 X age+b2 X BMI其中,Y为特征点软组织的厚度,age为年龄参数,BMI为体重参数。方程的系数b0, b1; b2对于每个特征点有对应的值,具体见下表:表lb。、bp b2对于每个特征点的对应值
权利要求
1.一种图像中人脸胖瘦的调整方法,其特征在于,包括以下步骤: (1)建立三维人脸模型; (2)在步骤(I)建立的三维人脸模型上获取人脸的54个特征点; (3)根据人脸特征点软组织厚度关于年龄和体重的线性回归方程以及用户输入的胖瘦调整参数对步骤(2)获取的54个特征点进行位置调整; (4)采用拉普拉斯变形算法,将步骤(3)得到的位置调整后的54个特征点作为约束点集合,与三维人脸模型中的人脸顶点建立满秩线性系统,进行线性方程组求解,得到调整后的三维人脸模型; (5)对原始图像进行三角网格参数化; (6)采用步骤(4)获得的调整后的三维人脸模型驱动原始图像三角网格顶点位置的变化,经过纹理映射得到调整后的图像。
2.如权利要求1所述的图像中人脸胖瘦的调整方法,其特征在于,步骤(I)为采用激光扫描仪或深度相机直接获取三维人脸模型。
3.如权利要求1所述的图像中人脸胖瘦的调整方法,其特征在于,步骤(I)为采用自适应方法,从单张或多张图像中重建三维人脸模型。
4.如权利要求1所述的 图像中人脸胖瘦的调整方法,其特征在于,步骤(2)中人脸的54个特征点分散在眉毛特征区域、眼睛特征区域、鼻子特征区域、嘴唇特征区域、耳朵特征区域和脸颊特征区域。
5.如权利要求1所述的图像中人脸胖瘦的调整方法,其特征在于,步骤(3)中所述线性回归方程如下: Y = h0+h1 X age+b2 X BMI 其中,Y为特征点软组织的厚度,age为年龄参数,BMI为体重参数,方程的系数Idci, b1;b2对于每个特征点均有对应的值。
6.如权利要求1所述的图像中人脸胖瘦的调整方法,其特征在于,步骤(4)中所述线性方程组采用最小二乘法求解。
7.如权利要求1所述的图像中人脸胖瘦的调整方法,其特征在于,步骤(5)包括以下步骤: (5.1)对原始图像使用Canny算子检测边缘,对背景和人脸部分采用不同的阈值对Canny算子检测出来的边缘进行采样,得到图像特征点; (5.2)使用graph cut方法识别出人脸轮廓线,在轮廓线上均匀采样得到人脸轮廓特征点; (5.3)根据步骤(5.1)与步骤(5.2)得到的图像特征点和人脸轮廓特征点,对原始图像采用约束Delaunay三角化算法,生成一个基于以上特征点的三角网格。
8.如权利要求1所述的图像中人脸胖瘦的调整方法,其特征在于,步骤(6)包括以下步骤: (6.1)将原始图像中位于人脸内部及轮廓线上的特征点对应到由原始图像生成的三维人脸模型上; (6.2)由调整之后的三维人脸模型得到对应特征点调整后的位置,按照原始图像中人脸的角度,姿势和大小进行正交投影,得到调整后的特征点在原始图像中的位置;(6.3)根据调整前后特征点的位置,构建背景重定向的能量方程,并求解;(6.4)根据求解结果,调整原始图像三角网格顶点位置;(6.5)经过纹理映射, 得到调整后的图像。
全文摘要
本发明公开了一种图像中人脸胖瘦的调整方法,包括以下步骤先建立三维人脸模型;在建立的三维人脸模型上获取人脸的54个特征点;根据人脸特征点软组织厚度关于年龄和体重的线性回归方程以及用户输入的胖瘦调整参数对获取的54个特征点进行位置调整;采用拉普拉斯变形算法,将位置调整后的54个特征点作为约束点集合,与三维人脸模型中的人脸顶点建立满秩线性系统,进行线性方程组求解,得到调整后的三维人脸模型;再对原始图像进行三角网格参数化;最后采用调整后的三维人脸模型驱动原始图像三角网格顶点位置的变化,经过纹理映射得到调整后的图像。本发明采用保细节特征的拉普拉斯变形技术,调整人脸胖瘦的同时保留了人脸上的大部分细节特征信息。
文档编号G06T15/00GK103208133SQ20131011274
公开日2013年7月17日 申请日期2013年4月2日 优先权日2013年4月2日
发明者曾文婷, 赵海明, 金小刚 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1