一种基于单张图片的三维人脸重建方法技术

技术编号:19345981 阅读:47 留言:0更新日期:2018-11-07 15:20
本发明专利技术公开了一种基于单张图片的三维人脸重建方法,包括步骤:1)基于FLAME模型的脸部重建(脸部重建);2)FLAME网格脸部细节增强(细节增强);3)FLAME网格贴图补全(贴图补全)。主要流程:给定输入人脸图像,该算法首先使用从图像提取的人脸特征点并结合FLAME网格的三维特征点,建立特征点匹配能量,求解出人脸形状,接着借助图像中人脸区域的高频信息,引导人脸高度场的网格顶点移动,重建精细脸部细节,最后通过构造的FLAME反照率率参数化模型对人脸贴图进行补全,并去除光照信息。本发明专利技术解决的是针对单张图片的三维人脸重建问题,可以应用于人脸重建、人脸动画制作。

A 3D face reconstruction method based on single picture

The invention discloses a three-dimensional face reconstruction method based on a single picture, including steps: 1) face reconstruction based on FLAME model (face reconstruction); 2) face detail enhancement based on FLAME mesh (detail enhancement); 3) FLAME mesh mapping completion (mapping completion). Main flow: Given the input face image, the algorithm first uses the extracted facial feature points from the image combined with the three-dimensional feature points of FLAME mesh, establishes the matching energy of feature points, and solves the face shape. Then, with the help of the high-frequency information of the face area in the image, it guides the vertex movement of the face height field, and reconstructs the fine mesh. At last, the FLAME albedo parametric model is constructed to complete the face mapping and remove the illumination information. The invention solves the problem of three-dimensional face reconstruction for a single picture, and can be applied to face reconstruction and face animation production.

【技术实现步骤摘要】
一种基于单张图片的三维人脸重建方法
本专利技术涉及计算机图形学和三维动画制作的
,尤其是指一种基于单张图片的三维人脸重建方法。
技术介绍
人类既是各种活动的主体,又是很多应用的对象,因而虚拟现实应用大都不可避免以人为中心。人体表面形状及其运动的重建在这类应用中起到关键作用,从日常生活、游戏动画、教育培训到工业设计,构建高度真实的个性化虚拟人体静态模型和动态几何都日渐显示出其重要性。例如,在虚拟试衣中,除了身体形状和运动信息,试衣人的脸部表情、头发飘舞等,都会对体验效果产生影响。而在很多虚拟现实应用中,场景中的人物外观的逼真程度是衡量沉浸感强弱的一个重要指标。好在对某类物体进行三维建模时,有很多先验知识可以利用。比如人体一般都有相同的拓扑,人体形状都是在一个标准形状的基础上作一定范围变化等。这使得基于数据驱动的方法成为可能。另一方面,由于智能手机的日益普及,我们可以轻而易举地获取个人的自拍照片。此外,通过各大图像搜索引擎,我们能轻易获得大量明星、名人和普通百姓的照片。因此,通过图像的方式来构建个性化人物头部模型是一个经济实惠、方便快捷且极具吸引力的一种方式。人脸重建技术已经被研究超过了20年,研究人员从各个研究角度提出了许多优秀的三维参数化模型以及相关模型的重建算法。在数字几何处理中,一般用网格M=(V,E,F)来表示几何形状,其中V,E,F分别为顶点坐标、边和面的集合。记V={vi,i=1,...,nV},nV是顶点数,vi是顶点坐标。则构成3nV维空间中的点,如果所有人脸形状及姿态都用相同拓扑的网格来表示,则构成一个形状空间。形状空间只是的子空间。因此,可用个数远小于3nV的参数来描述人脸的形状及姿态,这就是所谓的参数化表示。FLAME是一种人脸表情参数化表示模型,其用CAESAR数据库的头部数据学习形状参数模型,用D3DFACS数据库中的三维模型序列学习表情模型参数。FLAME模型对于形状和表情的表达能力比3DMM,双线性参数化模型更强,可得到更准确的重建结果。FLAME模型相比上述模型,除了能对脸部建模外,其还包含了完整的人眼,颈部部分,可以构建一个更完整头部模型。本专利技术基于FLAME这个参数化模型来进行人脸重建。
技术实现思路
本专利技术针对目前人脸重建工作完整度不足的问题,提出了一种基于单张图片的三维人脸重建方法,可以根据人脸图像重建一个比较良好的人脸模型,具有较好的人脸细节,同时网格点数较少,有利于实时环境中的应用。为实现上述目的,本专利技术所提供的技术方案为:一种基于单张图片的三维人脸重建方法,包括以下步骤:1)脸部重建使用单张图片来重建人脸,其核心是求解参数化模型FLAME模型参数,让该参数下FLAME模型对应的网格的三维特征点与人脸图像中检测的二维特征点对齐;2)细节增强对步骤1)得到的人脸网格形状进行细节增强,其核心是使用图像中的高频信息引导网格顶点移动,目的是使人脸网格形状具有更丰富的细节,如皱纹,疙瘩等,并且这些细节符合输入的人脸图像;3)贴图补全对中生成的人脸贴图进行补全,其核心是使用反照率参数化模型来拟合人脸贴图,并根据光照方程去除光照信息,目的是获得更加完整的人脸反射率贴图,包含头部,颈部部分;在步骤1)中,所述的脸部重建,其过程为:在FLAME模型网格上设定68个特征点;由于FLAME模型网格点数不多,因此统一使用重心坐标来表示FLAME上的三维特征点;假设相机模型是一个沿z轴方向的投影,同时认为相机投影是弱透视投影,其投影矩阵写为然后使用匹配能量Elank将FLAME网格三维标记顶点与图像上检测到的二维标记点进行对齐:其中和分别是FLAME网格上第k个三维标记顶点的坐标和相应的第k个图像二维标记点的坐标,平移向量和旋转矩阵确定FLAME网格相对于相机的位置和姿态;β(i),θ(i),ψ(i)来自于FLAME模型的系数向量β,θ,ψ;β为形状向量,共300维;θ为姿态向量,共6维;ψ为表情向量,共100维;来自于标准差向量σβ,σθ,σψ,这些标准差向量的维度分别与β,θ,ψ对应;γ1,γ2,γ3为正的权重系数;式子(1)最后三项确保参数β(i),θ(i),ψ(i)有一个合理的变化范围;这种匹配能量最小化是通过坐标下降的方式对形状参数β,θ,ψ和摄像机参数Π,R,t进行优化;首先固定形状参数,把优化问题减少为:接下来固定相机和姿态,表情参数,求解形状参数,其中将优化转化为:这是一个非线性最小二乘问题,使用DOGLEG算法求解;接着固定相机参数和形状参数,表情参数,并使用类似(3)中的方式优化姿态参数,同理优化表情参数,迭代运行直到算法收敛。在步骤2)中,所述的细节增强,其过程为:对FLAME网格使用Loop细分进行处理,使其网格的点数达到约70000个;根据人脸的特征点选择一个正方形包围盒,使得这个包围盒能包住人脸,同时利用这个包围盒对原图片裁剪,把模型顶点和图片都放缩到统一的512×512的尺寸,这样能够减少图片中细节的丢失,同时也避免处理的数据过大;按照放缩后的图的分辨率,使用z-buffer光栅化算法把该网格渲染成一个高度场表面H,利用图片的连接关系将该高度场网格化;利用脸部分割图,提取出脸部区域对应的网格Mf以及相应的脸部边界区域Mb,网格顶点记为v;为了减少FLAME网格局部几何对脸部细节优化的影响,使用拉普拉斯平滑对Mf进行两次平滑操作;脸部的细节看作是图片中脸部区域的颜色的局部变化,因此把脸部的细节看作是图片的高频分量,根据这个高频分量来引导模型的顶点进行移动,从而得到脸部模型的细节;对于高度场网格Mf,其每个网格顶点vi都能够对应到图片区域,从而得到该顶点的颜色值c(vi)=(r(vi),g(vi),b(vi)),这是一个三维的分量,根据常用的RGB转灰度图经验公式,能够只计算它的强度值fI(vi)=0.299*r(vi)-0.587*g(vi)+0.114*b(vi);接着使用拉普拉斯平滑,它能够看作是一种低通滤波器,用于去掉高频分量;拉普拉斯平滑能够看作扩散流沿时间的积分,因此顶点强度值的低频信号能够看作是顶点强度值在初始时间t滑动时间h后的结果,故网格在顶点vi的强度采样值的低频信号为公式(4):其中μ为放缩因子;fI(vi,t)为时间t时的顶点颜色强度值;为时间t的偏导值;所有采样点构成低频向量fl(t+h)=(fl(v0,t+h),...,fl(vn,t+h))T,同理构成强度值向量fI(t),得到公式(5):其中L为余切拉普拉斯矩阵;由于使用显式积分的方式求解步长不易选择,因此使用隐式积分的方式:(I-hμL)fl(t+h)=fI(t)(6)故计算低频向量fl(t+h)如下:fl(t+h)=(I-hμL)-1fI(t).(7)hμ合并为一个,记为hμ,并设为2000;故高频向量fh(t)通过去掉低频向量获得:fh(t)=fI(t)-fl(t+h)(8)接下来,利用高频向量来引导每个顶点v沿法向进行移动,移动的值为d(v);其中<,>为点积操作;顶点的移动量与高频信号的变化应一致,故对顶点v的一邻域顶点vi的移动值求平均,推导出最终每个顶点的移动距离:其中w(v,vi)=exp(-||v-vi||),代表距离越近本文档来自技高网
...

【技术保护点】
1.一种基于单张图片的三维人脸重建方法,其特征在于,包括以下步骤:1)脸部重建使用单张图片来重建人脸,其核心是求解参数化模型FLAME模型参数,让该参数下FLAME模型对应的网格的三维特征点与人脸图像中检测的二维特征点对齐;2)细节增强对步骤1)得到的人脸网格形状进行细节增强,其核心是使用图像中的高频信息引导网格顶点移动,目的是使人脸网格形状具有更丰富的细节,包括皱纹、疙瘩,并且这些细节符合输入的人脸图像;3)贴图补全对生成的人脸贴图进行补全,其核心是使用反照率参数化模型来拟合人脸贴图,并根据光照方程去除光照信息,目的是获得更加完整的人脸反射率贴图,包含头部、颈部部分。

【技术特征摘要】
1.一种基于单张图片的三维人脸重建方法,其特征在于,包括以下步骤:1)脸部重建使用单张图片来重建人脸,其核心是求解参数化模型FLAME模型参数,让该参数下FLAME模型对应的网格的三维特征点与人脸图像中检测的二维特征点对齐;2)细节增强对步骤1)得到的人脸网格形状进行细节增强,其核心是使用图像中的高频信息引导网格顶点移动,目的是使人脸网格形状具有更丰富的细节,包括皱纹、疙瘩,并且这些细节符合输入的人脸图像;3)贴图补全对生成的人脸贴图进行补全,其核心是使用反照率参数化模型来拟合人脸贴图,并根据光照方程去除光照信息,目的是获得更加完整的人脸反射率贴图,包含头部、颈部部分。2.根据权利要求1所述的一种基于单张图片的三维人脸重建方法,其特征在于:在步骤1)中,所述的脸部重建,其过程为:首先,在FLAME模型网格上设定68个特征点;由于FLAME模型网格点数不多,因此统一使用重心坐标来表示FLAME上的三维特征点;假设相机模型是一个沿z轴方向的投影,同时认为相机投影是弱透视投影,其投影矩阵写为然后使用匹配能量Elank将FLAME网格三维标记顶点与图像上检测到的二维标记点进行对齐:其中和分别是FLAME网格上第k个三维标记顶点的坐标和相应的第k个图像二维标记点的坐标,平移向量和旋转矩阵确定FLAME网格相对于相机的位置和姿态;β(i),θ(i),ψ(i)来自于FLAME模型的系数向量β,θ,ψ;β为形状向量,共300维;θ为姿态向量,共6维;ψ为表情向量,共100维;来自于标准差向量σβ,σθ,σψ,这些标准差向量的维度分别与β,θ,ψ对应;γ1,γ2,γ3为正的权重系数;式子(1)最后三项确保参数β(i),θ(i),ψ(i)有一个合理的变化范围;这种匹配能量最小化是通过坐标下降的方式对形状参数β,θ,ψ和摄像机参数Π,R,t进行优化;首先固定形状参数,把优化问题减少为:接下来固定相机和姿态,表情参数,求解形状参数,其中将优化转化为:这是一个非线性最小二乘问题,使用DOGLEG算法求解;接着固定相机参数和形状参数,表情参数,并使用类似(3)中的方式优化姿态参数,同理优化表情参数,迭代运行直到算法收敛。3.根据权利要求1所述的一种基于单张图片的三维人脸重建方法,其特征在于:在步骤2)中,所述的细节增强,其过程为:对FLAME网格使用Loop细分进行处理,使其网格的点数达到约70000个;根据人脸的特征点选择一个正方形包围盒,使得这个包围盒能包住人脸,同时利用这个包围盒对原图片裁剪,把模型顶点和图片都放缩到统一的512×512的尺寸,这样能够减少图片中细节的丢失,同时也避免处理的数据过大;按照放缩后的图的分辨率,使用z-buffer光栅化算法把该网格渲染成一个高度场表面H,利用图片的连接关系将该高度场网格化;利用脸部分割图,提取出脸部区域对应的网格Mf以及相应的脸部边界区域Mb,网格顶点记为v;为了减少FLAME网格局部几何对脸部细节优化的影响,使用拉普拉斯平滑对Mf进行两次平滑操作;脸部的细节看作是图片中脸部区域的颜色的局部变化,因此把脸部的细节看作是图片的高频分量,根据这个高频分量来引导模型的顶点进行移动,从而得到脸部模型的细节;对于高度场网格Mf,其每个网格顶点vi都能够对应到图片区域,从而得到该顶点的颜色值c(vi)=(r(vi),g(vi),b(vi)),这是一个三维的分量,根据常用的RGB转灰度图经验公式,能够只计算它的强度值fI(vi)=0.299*r(vi)-0.587*g(vi)+0.114*b(vi);接着使用拉普拉斯平滑,它能够看作是一种低通滤波器,用于去掉高频分量;拉普拉斯平滑能够看作扩散流沿时间的积分,因此顶点强度值的低频信号能够看作是顶点强度值在初始时间t滑动时间h后的结果,故网格在顶点vi的强度采样值的低频信号为公式(4):其中μ为放缩因子;fI(vi,t)为时间t时的顶点颜色强度值;为时间t的偏导值;所有采样点构成低频向量fl(t+h)=(fl(v0,t+h),...,fl(vn,t+h))T,同理构成强度值向量fI(t),得到公式(5):其中L为余切拉普拉斯矩阵;由于使用显式积分的方式求解步长不易选择,因此使用隐式积分的方式:(I-hμL)fl(t+h)=fI(t)(6)故计算低频向量fl(t+h)如下:fl(t+h)=(I-hμL)-1fI(t).(7)hμ合并为一个,记为hμ,并设为2000;故高频向量fh(t)通过去掉低频向量获得:fh(t)=fI(t)-fl(t+h)(8)接下来,利用高频向量来引导每个顶点v沿法向进行移动,移动的值为d(v);其中<,>为点积操作;顶点的移动量与高频信号的变化应一致,故对顶点v的一邻域顶点vi的移动值求平均,推导出最终每个顶点的移动距离:其中w(v,vi)=exp(-||v-vi||),代表距离越近的顶点的权重越大;N(v)表示顶点v的相邻顶点;fh(v)表示顶点v在高频向量fh(t)中对应位置的值;于是得到新的顶点值如下:每个顶点,都计算出它们的移动距离d(v),然后按照公式(11)沿法向进行移动;对于移动后的结果,使用拉普拉斯平滑对结果进行后处理,最终得到一个具有几何细节的网格,其几何细节符合输入的图片;根据这个细节网格,为原FLAME网格计算法线贴图,计算后对边缘进行高斯平滑;使用这个法线贴图,就能够使用FLAME网格实时渲染出包含细节的效果。4.根据权利要求1所述的一种基于单张图片的三维人脸重建方法,其特征在于:在步骤3)中,所述的贴图补全,其过程为:a)构建FLAME网格的反照率参数化表示需借助BFM反照率参数化模型,其共包含199个PCA基,每个基mBFM×3维mBFM为BFM网格的顶点数,储存的是每个顶点的RGB值,值在0-1之间;mBFM为53490,因而把颜色值存储在顶点上不会导致...

【专利技术属性】
技术研发人员:李桂清何华赟
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1