首页> 中国专利> 三维头部模型重建方法

三维头部模型重建方法

摘要

本发明公开了一种三维头部模型重建方法,包括以下步骤:S1:输入人脸的正面和侧面图像;S2:提取图像面部和头发区域的特征点;S3:根据面部特征点形变生成三维头部模型;S4:根据图像生成无缝的全局头部纹理;S5:将所得纹理映射到形变三维头部模型上;S6:根据头发区域特征点,用昆氏曲面进行头发区域的拟合;S7:将昆氏曲面形变,并进行纹理贴图。本方法简便易行,计算复杂度低,在保证精度的前提下能很真实的重建三维头部模型。

著录项

  • 公开/公告号CN102663820A

    专利类型发明专利

  • 公开/公告日2012-09-12

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN201210133145.X

  • 发明设计人 林源;王生进;桂良琰;丁晓青;

    申请日2012-04-28

  • 分类号G06T17/00(20060101);

  • 代理机构11002 北京路浩知识产权代理有限公司;

  • 代理人王莹

  • 地址 100084 北京市海淀区清华园北京100084-82信箱

  • 入库时间 2023-12-18 06:28:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-10-22

    授权

    授权

  • 2012-11-07

    实质审查的生效 IPC(主分类):G06T17/00 申请日:20120428

    实质审查的生效

  • 2012-09-12

    公开

    公开

说明书

技术领域

本发明涉及图形图像处理与计算机视觉领域,特别涉及一种三维 头部模型重建方法。

背景技术

三维头部重建被广泛的应用于多个领域,包含公共安全、虚拟现 实、数字影视和日常生活等等。与二维图像相比而言,三维人脸数据 能提供准确的人脸描述。三维人脸获取方法共有四大类:

(1)通过三维扫描仪获取三维人脸形状。三维扫描仪能精准的 提取三维数据,有些扫描仪的精度可以达到0.5mm。但是扫描结果中 通常都有漏点和飞点,也就是被遮挡的点和扫描的噪声点。这些点的 去除需要用特定的三维数据编辑软件。缺点:整个处理过程很复杂, 专业人员需要花费几个小时才能完成三维数据漏点的弥补和飞点的 去除。除此之外,扫描仪的价格昂贵,这些都限制了利用三维扫描仪 获取普通用户的三维头部模型数据。

(2)基于立体视觉的三维人脸形状重建。此类方法通过目标人 的两张或者多张图像进行三维重建。首先对所有视图或者通过相机的 预先设定,或者通过特征点检测进行相机的自动定标,并进行特征点 匹配。缺点:不可避免的特征点匹配误差往往使得立体重建的结果有 很大的噪声。这些噪声只能通过后期的形状约束或者对拍摄图像环境 的限定来解决。

(3)基于统计模型的三维人脸形状重建。此类方法通过对构建 的三维数据库中的三维人脸样本进行统计学习,获得三维人脸样本的 形状和纹理分布来对输入图像中的人脸进行三维重建。一般来说,此 过程是一个优化问题,没有解析解。缺点:该过程容易陷于局部极值, 重建三维人脸时间较长,计算复杂度较高。

(4)对标准三维人脸模型进行形变实现三维人脸重建。此类方 法对输入图像进行特征点提取,通过调整标准三维人脸模型中的对应 特征点的位置,插值其他非特征点对标准三维人脸模型进行形变。缺 点:传统的基于形变标准三维人脸模型实现三维人脸重建的方法只考 虑面部重建,没有对发型的建模。有些能进行发型建模也是通过利用 带有头发形状的标准三维头部模型形变所得的结果,这样做的缺点在 于头发上的特征点的分布会影响到面部的形状,另外,基于侧面图像 进行三维人脸重建时对于侧面光头轮廓的定位不准确,对于侧面输入 图像中人脸的姿态适应性较差。

发明内容

(一)要解决的技术问题

本发明要解决的技术问题是提供一种三维头部模型重建方法,利 用一张正面和一张侧面人脸图像进行该目标人的真实感三维头部模 型重建。

(二)技术方案

本发明提供一种三维头部模型重建方法,包括以下步骤:S1:输 入人脸的正面和侧面图像;S2:提取图像面部和头发区域的特征点; S3:根据面部特征点形变生成三维头部模型;S4:根据图像生成无缝 的全局头部纹理;S5:将所得纹理映射到形变三维头部模型上;S6: 根据头发区域特征点,用昆氏曲面进行头发区域的拟合;S7:将昆氏 曲面形变,并进行纹理贴图。

更好地,所述S1包括如下步骤:S11:利用Adaboost检测器对 正面人脸图像和侧面人脸图像进行检测和分类;S12:利用Graph-cut 进行人脸区域和头发区域的分割。

更好地,所述S2包括如下步骤:S21:利用主动形状模型进行正 面和侧面人脸的特征点定位;S22:根据侧面特征点定位结果,计算 头顶,后脑勺和发际线三个特征点的位置;S23:将侧面图像进行仿 射变换,提取发型轮廓特征点。

更好地,所述S3包括如下步骤:S31:在标准三维头部模型上预 先定义三维特征点集;S32:对正面图像所得特征点进行基于部件的 插值获得相应的正面人脸特征轮廓,按照标准三维头部模型定义的特 征点的分布对插值结果进行重采样,完成三维头部模型特征点与正面 图像特征点的匹配;S33:利用径向基函数基于所得的正面特征点对 标准三维头部模型进行形变,获得形状模型M1;S34:利用S33中 的径向基函数基于所得的侧面特征点对标准三维头部模型进行形变, 获得形状模型M2;S35:从S33中的M1中提取x值,从S34中的 M2中提取z值,将M1和M2中对应点的y值求平均获得最终的三 维头部模型。

更好地,所述S4包括如下步骤:S41:在标准三维头部模型上规 定一系列图像融合边界点;S42:通过形状重建过程,获得所述图像 融合边界点在正面和侧面图像中的投影位置;S43:对侧面图像进行 分段仿射变换,使得形变后的侧面图像融合边界点投影位置与正面图 像中对应的图像融合边界点的投影位置重合;S44:给定图像融合边 界,利用多分辨率融合技术进行输入图像的无缝纹理融合,另一侧的 面部图像由输入侧面图像的水平镜像图像获得。

更好地,利用所得的投影位置和纹理融合图像,对三维头部模型 利用OpenGL进行纹理贴图。

更好地,所述S6包括如下步骤:S61:按照头发区域的特征点将 两幅输入图像中的发型轮廓进行分段,并用3阶Bezier曲线进行拟合; S62:对两幅输入图像中相应的3阶Bezier曲线发型轮廓进行匹配, 获得头发区域的三维发型轮廓;S63:按照昆氏曲面公式,利用上述 所得三维轮廓进行昆氏曲面重建。

更好地,所述S7包括如下步骤:S71:为昆氏曲面的边界点在分 割所得的发型轮廓上寻找对应点;S72:按照所述对应点的分布,基 于径向基函数将昆氏曲面进行形变,使所得发型形状更具有真实感; 73:将纹理图贴图到所得发型形状模型上。

更好地,在S21中所述的特征点定位时间需要200ms,正面图像 中自动定位88个特征点,侧面图像中自动定位39个特征点。

更好地,所述的侧面图像特征点的自动定位还包括头顶,后脑勺 和发际线3个点。

(三)有益效果

通过一张正面和一张侧面人脸图像面部和头发区域的特征点的 自动提取,对采用的标准三维头部模型进行形变,并利用重建好的三 维头部模型进行侧面图像的形变,采用多分辨率样条技术对正面和形 变后的侧面图像进行无缝纹理融合并进行贴图以获得目标人的三维 头部模型。在此基础上进行了发型区域的建模,使得重建三维头部模 型具有更强的真实感。本方法简便易行,计算复杂度低,在保证精度 的前提下能很真实的重建三维头部模型。

附图说明

图1是本发明三维头部模型重建方法的流程图;

图2是本发明三维头部模型重建方法的特征点检测所得结果示 例;

图3是本发明三维头部模型重建方法的标准头部模型形变所得结 果示例;

图4是本发明三维头部模型重建方法的标准头部模型圆柱展开并 划分纹理映射区域的结果示例;

图5是本发明三维头部模型重建方法的纹理重建所得结果示例;

图6是本发明三维头部模型重建方法的三维头部模型纹理贴图所 得结果示例;

图7是本发明三维头部模型重建方法的三维头部发型昆氏曲面所 得结果示例;

图8是本发明三维头部模型重建方法的三维头部发型形变所得结 果示例;

图9是本发明三维头部模型重建方法的真实感三维头部模型重建 所得最终结果示例。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细 描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

图1是本发明三维头部模型重建方法的流程图,如图1所示,本发 明包括以下步骤:

S1:输入人脸的正面和侧面图像;

S11:利用Adaboost检测器对正面人脸图像和侧面人脸图像进行 检测和分类:

人脸检测的目的是自动检测输入图像中的人脸位置,本发明利用 Adaboost对正面人脸图像和侧面人脸图像分别训练人脸检测器,自动 检测正面和侧面人脸区域。Adaboost是一种较为常用的人脸检测器。 它为每个训练样本设置一个权值,通过迭代过程不断的修改样本权 值,以此来达到正确分类样本的权重适当降低,而被错分的样本的权 重适当增加,从而使得较为难分的样本能更为正确的分类。

S12:利用Graph-cut进行人脸区域和头发区域的分割

在人脸检测区域的基础上向外扩充一定范围,在所得两个子图像 中利用Graph-cut进行人脸区域和头发区域的分割。Graph-cut是一种能 量函数最小化的优化算法,目前被广泛应用于图像分割领域。

S2:提取面部和头发区域的特征点;

S21:利用主动形状模型自动进行正面和侧面人脸的特征点定位。 主动形状模型是一种较为成熟的人脸特征点定位算法,具有准确、快 速的特点。对于640*480的人脸图像进行特征点定位所需时间大概为 200ms。

本发明在正面图像中自动定位88个特征点,侧面图像中自动定位 39个特征点。此外,在侧面图像中还需自动定位头顶,后脑勺和发际 线3点。

S22:根据侧面特征点定位结果,基于对训练库的主成分分析计 算侧面图像中头顶,后脑勺和发际线三个特征点的位置。此三点可以 从大体上描述所重建的三维头部模型的光头形状。提取过程如下:

(1)在训练数据库上标注此三点的位置。首先,在标准三维头 部模型上定义这三个特征点。其次,根据侧面39个特征点重建三维头 (详见步骤34),之后将其投影到训练图像上。最后,对于投影后的 上述三个特征点进行交互式的位置调整。基于此,完成此三点的标注。

(2)在训练数据库上建立关于此42个特征点的主成分分析模型, 获得平均形状模型和特征向量。

(3)对于输入的侧面图像,首先将检测到的39个特征点利用刚 性变换匹配到相应的39点平均形状模型的上,之后确定各特征分量所 需权值,基于此加权全部42点特征向量,进行与此前相反的刚性变换, 即可以获得该图像中头顶,后脑勺和后发际线点的位置。

该过程中步骤(1)和步骤(2)是离线完成的,针对不同的输入 图像仅需要进行一次。

S23:将侧面图像进行仿射变换,提取发型轮廓特点;

在此步骤中,将在正面图像和侧面图像中各自定义6个头发区域 的特征点,规则如下:

Pof和Pos是分别是正面图像和侧面图像中的最高点,将图像进行 适当的平移变换使得二者具有相同的y值。

Pif是正面图像内测发型轮廓的最高值,Pis是侧面图像上与Pif具 有相同y值的发型轮廓特征点。

Pios是侧面图像中人脸轮廓跟发型轮廓的交点。与之具有相同y值 的正面图像中两个发型轮廓点分别记为:P1s跟Pf3

侧面图像中与Pos具有相同x值的轮廓特征点记为Pops

与Pops具有相同y值的两个正面发型轮廓特征点记为P1s跟Pf4

P5s是侧面图像中最低点,P6s是头发后侧拐角点。

所得面部与发型特征点定位结果如图2所示。其中,两组发型轮 廓点将发型区域共分成前后左右四个子区域。每个子区域都会在第6 步中利用昆氏曲面进行拟合。

S3:根据面部特征点形变生成三维头部模型;

S31:在标准三维头部模型上预先定义一个三维特征点集;

S32:对正面图像所得特征点进行基于部件的插值获得相应的正 面人脸特征轮廓,按照标准三维头部模型定义的特征点的分布对插值 结果进行重采样,完成三维头部模型特征点与正面图像特征点的匹 配;

S33:利用径向基函数基于所得的正面特征点对标准三维头部模 型进行形变,获得形状模型M1;

S34:利用径向基函数基于所得的侧面特征点对标准三维头部模 型进行形变,获得形状模型M2;

下面以侧面图像进行标准头形变为例介绍形变方法。假设标准三 维头部模型上特征点集为{vfis,i∈[1,n]},N为特征点的个数,标准三维 头部模型上顶点Pj进行头部形变之后的位置由下式给出:

vpjs=Σi=1Nαiφ(pi-vfis)+as+bsx+cxy,j[1,M]---(1)

其中M为标准头的顶点个数,x=pj(3),y=pj(2)。φ(r)=exp(-k||r||) 为径向基函数,其中k与输入图像的大小有关。αi,i∈[1,N],as,bs,cs是形 变及仿射参数。

利用标准头上的三维特征点及其图像匹配点的分布,可以获得形 变和仿射参数,进而可利用(1)式获得该目标人的三维头部形状模型。

S35:从S33中的M1中提取x值,从S34中的M2中提取z值, 将M1和M2中对应点的y值求平均获得最终的三维头部模型,所得 结果见图3。

S4:根据图像生成无缝的全局头部纹理;

S41:在标准三维头部模型上规定一系列的图像融合边界点。在 标准头的圆柱投影的展开图中,连接特征形变点形成特征形变线,他 们将头部划分成左,中,右三个区域。记录每个三维顶点所在区域。 对于划分到左侧和右侧区域的三维点,采用侧面纹理信息进行贴图。 对应中间部分的三维点采用正面纹理信息进行贴图。标准三维头部模 型的展开图以及区域划分结果如图4所示。

S42:通过上述形状重建过程,获得这些图像融合边界点在正面 和侧面图像中的投影位置。

S43:对侧面图像进行分段仿射变换,使得形变后的侧面图像融 合边界点投影位置与正面图像中对应的图像融合边界点的投影位置 重合。以此同时,可以根据侧面图像的分段仿射变换,重新定位三维 头在形变后侧面上的投影位置。

S44:给定图像融合边界,利用多分辨率融合技术进行输入图像 的无缝纹理融合,另一侧的面部图像由输入侧面图像的水平镜像图像 获得,所得结果见图5。在此基础上,更新三维头上所有顶点在合成 纹理图上的纹理坐标。

S5:将所得的纹理映射到形变后的三维头部模型上。利用上一步 所得的投影位置和生成的纹理融合图像,对三维头利用OpenGL对进 行纹理贴图,所得结果见图6。OpenGL是一个开放的三维图形软件包, 它独立于窗口系统和操作系统,以它为基础开发的应用程序可以十分 方便地在各种平台间移植。

S6:根据头发区域的特征点,用昆氏曲面进行头发区域的拟合;

S61:按照头发区域的特征点将两幅输入图像中的发型轮廓进行 分段,并用3阶Bezier曲线进行拟合,也就是说,利用分段后相邻的两 个间隔点作为3阶Bezier曲线最外侧的两个控制点,之后利用最小二乘 法(最小二乘法是一种数学优化技术。它通过最小化误差的平方和寻 找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数 据,并使得这些求得的数据与实际数据之间误差的平方和为最小)确 定该曲线另外两个控制点的位置。Bezier曲线(贝塞尔曲线)是电脑 图形学中相当重要的参数曲线。3阶贝塞尔曲线的四个控制点P0、P1、 P2、P3在平面或在三维空间中定义了3阶贝塞尔曲线。曲线起始于P0走向P1,并从P2的方向来到P3。一般不会经过P1或P2;这两个点只是 在那里提供方向资讯。P0和P1之间的间距,决定了曲线在转而趋进P3之前,走向P2方向的“长度有多长”。

S62:对两幅输入图像中的相应的3阶Bezier曲线发型轮廓进行匹 配(前期工作已经保证了两幅图像中相同物理点y值相同,因此可以 利用y值进行相应发型轮廓线的匹配),获得头发区域的三维发型轮 廓。

S63:按照昆氏曲面公式,利用上述所得三维轮廓进行昆氏曲面 重建。具体地说,三维轮廓线将发型区域共分成前后左右四个子区域, 每个发型子区域都利用一个昆氏曲面进行重建。昆氏曲面以上述步骤 获得的首尾相接的四条轮廓线为边界,以相邻轮廓线的交点为顶点, 即可利用其表达式获得该曲面。此曲面是一个参数曲面,可以通过对 其边界点个数的控制,在该曲面上采样出不同密度的三维点集。将全 部四个子区域的三维点组合后,利用德劳内三角剖分建立该点集内部 点与点之间的连接关系,获得一个三维三角网格,以此表示最初的三 维发型模型。此步骤所得结果见图7。

S7:将昆氏曲面形变,并进行纹理贴图。一般来说,昆氏曲面都 较为光滑,对于发型的表达能力有限,本发明在此基础上对此曲面进 行形变,使得其与输入图像中的发型尽量一致。

S71:为昆氏曲面的边界点在分割所得的发型轮廓上找对应点。 选取对应点有两个准则:保持原有拓扑结构和尽量贴近真实发型。

S72:按照对应点的分布,与三维头部形变模型相似,基于径向 基函数将昆氏曲面进行形变,使得所得发型形状更具有真实感。将所 有获得的对应点都作为形变函数的特征点对,在此基础上按照(1)式 对昆氏曲面其他非特征点位置进行插值,以获得更为逼真的头发区域 形状模型,所得结果见图8。

S73:将纹理图贴图到所得发型形状模型上。最终的三维头重建 结果如图9所示。

本发明的三维头部模型重建方法的特点为:1、对发型和光头模 型的独立建模,2、对侧面图像中光头轮廓特征点的鲁邦定位,3、以 重建所得的三维头部模型为桥梁融合正面和侧面输入图像,以获得全 头无缝纹理融合结果。

在发型建模中利用四个相接的昆式曲面做初步建模,之后利用头 发轮廓进行形状的再次调整,使得重建的发型更真实。将发型和光头 模型相匹配即可获得最终的三维头部模型。侧面光头轮廓特征点的定 位采用了基于数据库的主成分分析算法,使得定位结果对输入图像中 的姿态具有更强的适应性。三维头部模型的纹理重建以重建所得的三 维头部模型为桥梁,匹配正面和形变后的侧面输入图像,之后进行全 头无缝纹理融合。

以上实施方式仅用于说明本发明,而并非对本发明的限制,有关 技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下, 还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明 的范畴,本发明的专利保护范围应由权利要求限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号