人脸模型的生成方法、装置、设备及存储介质与流程

文档序号:32525099发布日期:2022-12-13 20:49阅读:69来源:国知局
人脸模型的生成方法、装置、设备及存储介质与流程

1.本公开实施例涉及计算机技术领域,尤其涉及一种人脸模型的生成方法、装置、设备及存储介质。


背景技术:

2.随着计算机技术的发展,与3d人脸相关的产品例如3d面部扫描仪、3d人脸识别门禁等应运而生,促进了人脸研究从2d空间到3d空间的转变。
3.但是,与3d人脸相关的产品在研发过程中,往往会用到3d人脸数据进行测试或训练,这很容易引发隐私泄露、侵犯肖像权等一系列问题。


技术实现要素:

4.为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种人脸模型的生成方法、装置、设备及存储介质。
5.本公开实施例的第一方面提供了一种人脸模型的生成方法,该方法包括:
6.获取目标用户的真实人脸模型、以及获取模板人脸模型;
7.基于真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型;
8.利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型;
9.将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。
10.本公开实施例的第二方面提供了一种人脸模型的生成装置,该装置包括:
11.第一获取模块,用于获取目标用户的真实人脸模型、以及获取模板人脸模型;
12.人脸注册模块,用于基于真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型;
13.纹理映射模块,用于利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型;
14.纹理替换模块,用于将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。
15.本公开实施例的第三方面提供了一种电子设备,该服务器包括:处理器和存储器,其中,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,所述处理器执行上述第一方面的方法。
16.本公开实施例的第四方面提供了一种计算机可读存储介质,该存储介质中存储有计算机程序,当该计算机程序被处理器执行时,可以实现上述第一方面的方法。
17.本公开实施例提供的技术方案与现有技术相比具有如下优点:
18.本公开实施例,能够获取目标用户的真实人脸模型、以及获取模板人脸模型,基于
真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型,并利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型,从而将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。采用上述技术方案,可以将真实人脸模型的纹理进行替换以与纹理映射后的模板人脸模型的纹理一致,并将纹理替换后的真实人脸模型作为目标人脸模型,从而达到通过修改真实人脸模型的纹理得到人造的人脸的目的,如此,既可避免直接使用真实的人脸模型带来的隐私泄露、侵犯肖像权等一系列问题,又可以满足医疗、工业、商业等领域中对人脸模型的使用需求。
附图说明
19.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
20.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
21.图1是本公开实施例提供的一种人脸模型的生成方法的流程图;
22.图2是本公开实施例提供的一种真实人脸模型的示意图;
23.图3是公开实施例提供的一种模板人脸模型的示意图;
24.图4是本公开实施例提供的一种注册后的模板人脸模型示意图;
25.图5是本公开实施例提供的一种纹理展开图的结构示意图;
26.图6是公开实施提供的一种获取目标纹理展开图的逻辑示意图;
27.图7是本公开实施例提供的一种对注册后的模板人脸模型进行纹理映射的逻辑示意图;
28.图8是本公开实施例提供的一种真实人脸模型和纹理映射后的模板人脸模型的示意图;
29.图9是本公开实施例提供的一种人脸模型的生成装置的结构示意图;
30.图10是本公开实施例中的一种电子设备的结构示意图。
具体实施方式
31.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
32.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
33.图1是本公开实施例提供的一种人脸模型的生成方法的流程图,该方法可以由一种电子设备来执行。该电子设备可以示例性的理解为诸如手机、平板电脑、笔记本电脑、台式机、智能电视等具有页面展示功能的设备。如图1所示,本实施例提供的方法包括如下步骤:
34.s110、获取目标用户的真实人脸模型、以及获取模板人脸模型。
35.具体地,真实人脸模型为对目标用户的真实人脸进行三维(3dimension,3d)扫描后的得到的三维人脸模型,因此,真实人脸模型为用户的真实的人脸模型。
36.具体地,模板人脸模型为参与后续目标人脸模型生成流程所使用的三维人脸模型。模板人脸模型可以为与目标用户不同的用户的真实人脸模型、多个样本人脸模型的平均人脸模型、或者设计人员设计出的虚拟人脸模型等,此处不作限定。
37.具体地,真实人脸模型和模板人脸模型的具体表现形式例如可以包括3d网格模型等,但并不限于此。
38.下面以真实人脸模型和模板人脸模型为3d网格模型为例进行详细说明。3d网格模型通常包括多个顶点,多个顶点之间相互连接,形成用于构成三维人脸模型的表面的多个网格(面片),因此,真实人脸模型可以包括多个第二三维顶点,模板人脸模型可以包括多个第一三维顶点。
39.在一些实施例中,s110可以包括:从本地读取或从其它电子设备或从云端接收目标用户的真实人脸模型和模板人脸模型。但并不限于此。
40.获取目标用户的真实人脸模型和获取模板人脸模型可以同时或不同时进行。真实人脸模型和模板人脸模型可以从同一地方获取,也可以从不同地方获取。
41.s120、基于真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型。
42.具体地,人脸注册处理即对模板人脸模型中的多个网格进行变形(也即对第一三维顶点的位置进行移动),以使变形后的模板人脸模型(也即注册后的模板人脸模型)与真实人脸模型贴合。
43.可以理解的是,由于注册后的模板人脸模型与真实人脸模型贴合,因此针对真实人脸模型上的每个第二三维顶点,可以获知在注册后的模板人脸模型与真实人脸模型重叠的情况下,该第二三维顶点垂直投影到注册后的模板人脸模型的表面上时,投影点的具体位置、以及投影点所在面片对应的多个第一三维顶点,其中,投影点的具体位置可以通过投影点所在面片对应的多个第一三维顶点插值得到。可见,通过人脸注册处理可以获知真实人脸模型上的第二三维顶点和注册后的模板人脸模型上的第一三维顶点之间的对应关系。
44.还可以理解的是,人脸模型的特征通常包括形状和纹理,其中,形状包括脸型和表情,脸型包括用于表征人脸胖瘦、五官形状、五官空间位置排布比例等的信息,表情用于表征情绪信息,纹理包括用于表征人脸肤色、人脸肤质、眉毛形状、是否有双眼皮、是否有眼镜及眼镜的颜色形状等的信息。由于注册后的模板人脸模型与真实人脸模型贴合,因此,注册后的模板人脸模型与真实人脸模型具有相同的脸型和表情(即具有相同的形状)。
45.具体地,预设的人脸注册算法可以包括非刚性最近点迭代算法(non-rigid iterative closest point,nicp)、点分布模型算法(point distribution models、pdms)、或高斯过程可变模型算法(gaussian process morphable models,gpmms)等,但并不限于此。
46.示例性的,图2是本公开实施例提供的一种真实人脸模型的示意图。图3是公开实施例提供的一种模板人脸模型的示意图。图4是本公开实施例提供的一种注册后的模板人脸模型示意图。参见图2至图4,基于图2所示的真实人脸模型,采用预设的人脸注册算法对
图3所示的模板人脸模型进行人脸注册处理,可得到图4所示的注册后的模板人脸模型。
47.s130、利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型。
48.具体地,目标纹理展开图为用于对注册后的模板人脸模型进行纹理映射的纹理展开图,其中,纹理展开图可以理解为3d模型对应的纹理图在2d上展开的结果。示例性的,图5是本公开实施例提供的一种纹理展开图的结构示意图,如图5所示的纹理展开图就是将一个3d人脸模型对应的纹理图进行纹理展开的结果。
49.具体地,纹理映射处理即将目标纹理展开图上的纹理颜色映射到注册后的模板人脸模型上,以使注册后的模板人脸模型具有纹理这一特征。
50.本领域技术人员可采用任意可能的纹理映射算法对注册后的模板人脸模型进行纹理映射处理,此处不作限定。
51.s140、将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。
52.具体地,对真实人脸模型上的纹理颜色进行去纹理处理,得到去纹理后的真实人脸模型;将纹理映射后的模板人脸模型上的纹理颜色迁移至去纹理后的真实人脸模型上,以使纹理迁移后的真实人脸模型(也即目标人脸模型)的纹理与纹理映射后的模板人脸模型上的纹理一致。如此,可实现对真实人脸模型的纹理的修改。
53.本领域技术人员可采用任意可能的纹理迁移技术将纹理映射后的模板人脸模型上的纹理颜色迁移至去纹理后的真实人脸模型上,此处不作限定。例如,可以采用人脸注册技术等,但并不限于此。
54.可以理解的是,目标人脸模型与真实人脸模型的纹理不同,因此,目标人脸模型并非真实的人脸模型,而是人造的人脸模型,可合法应用在医疗、工业或商业等领域中,从而实现脱敏的效果,在存储或者通过网络向其他设备传输这些3d人脸模型时,可以避免文件中的用户敏感信息泄露。并且,由于本公开实施例全程自动化对真实人脸模型的纹理进行修改,无需人工参与,因此可提高效率、节省人工成本。并且,由于目标人脸模型与真实人脸模型之间脸型以及表情相同,仅是纹理不同,因此,可使目标人脸模型这一人造的人脸模型更像真实的人脸模型,即更逼真,保留一部分真实人脸的特征,如此,可为三维人脸动画、正畸、修复、整容、微笑设计、人脸识别等领域中与3d人脸模型相关的产品提供人造的3d人脸模型。这些3d人脸模型可以用于模型训练或者测试,而且由于这些3d人脸模型更逼真,保留一部分真实人脸的特征,更具有训练或测试的价值,提高模型训练或者测试的准确性。
55.另外利用这一方法,还可以扩大训练或测试样本库。
56.本公开实施例,能够获取目标用户的真实人脸模型、以及获取模板人脸模型,基于真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型,并利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型,从而将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。采用上述技术方案,可以将真实人脸模型的纹理进行替换以与纹理映射后的模板人脸模型的纹理一致,并将纹理替换后的真实人脸模型作为目标人脸模型,从而达到通过修改真实人脸模型的纹理得到人造的人脸的目的,如此,既可避免直接使用真实的人脸模型带来的隐私泄露、侵犯肖像权等一系列问题,又可以
满足医疗、工业、商业等领域中对人脸模型的使用需求。
57.在本公开另一种实施方式中,获取模板人脸模型,包括:s111、获取多个样本用户的多个样本人脸模型;s112、对多个样本人脸模型进行处理,得到模板人脸模型。
58.具体地,样本人脸模型为对样本用户的真实人脸进行3d扫描后的得到的三维人脸模型。
59.样本人脸模型的具体表现形式例如可以包括3d网格模型等,但并不限于此。
60.具体地,可以对多个样本人脸模型进行平均处理得到平均人脸模型,并将平均人脸模型作为模板人脸模型。
61.可以采用任意可能的人脸平均处理算法计算多个样本人脸模型的平均人脸模型。例如,可以采用三维可变形人脸模型(3d morphable models,3dmm)算法计算多个样本人脸模型的平均人脸模型,但并不限于此。
62.可以理解的是,通过对多个样本人脸模型进行平均处理,得到模板人脸模型,可使模板人脸模型的获取方式简单,并且可使模板人脸模型更像真实的人脸模型,即更逼真。
63.在本公开再一种实施方式中,利用目标纹理展开图,对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型,包括:
64.s131、获取目标纹理展开图,其中,目标纹理展开图中包括多个纹理坐标。
65.在一些实施例中,目标纹理展开图为设计人员设计出的虚拟的纹理展开图。
66.在另一些实施例中,s131可以包括:从人脸纹理数据库中的多个纹理系数中随机选取出一个纹理系数作为目标纹理系数;采用三维可变形人脸模型算法,生成目标纹理系数对应的目标纹理展开图。
67.具体地,目标纹理系数为用于生成目标纹理展开图的纹理系数,其中,纹理系数用于表征人脸模型的纹理。
68.具体地,人脸纹理数据库中包括多个纹理系数。
69.人脸纹理数据库的具体构建方法有多种,下面将就典型示例进行说明,但并不构成对本技术的限定。
70.可选地,可以采用3dmm算法构建人脸纹理数据库,此时,人脸纹理数据库的构建过程如下:针对多个样本人脸模型中的每个样本人脸模型,采用三维可变形人脸模型算法确定用于表征样本人脸模型的样本纹理函数;抽取样本纹理函数中的纹理系数,从而得到多个样本人脸模型对应的多个样本纹理系数;确定多个样本纹理系数所服从的概率分布,并将概率分布作为人脸纹理数据库。
71.具体地,样板人脸模型的数量本领域技术人员可根据实际情况设置,此处不作限定,例如大于等于200,但并不限于此。
72.具体地,样本纹理函数为表示样本人脸模型的纹理的纹理函数。
73.具体地,3dmm,即三维可变形人脸模型,是一个通用的三维人脸模型,它将任意一张3d人脸模型的纹理采用纹理函数表示,其中,纹理函数如公式(1)所示:
74.t
model
=t

+tβ
ꢀꢀ
公式(1)
75.其中,t

为多个样本人脸模型的平均纹理,t为多个样本人脸模型的主成分方向构成的矩阵,β为控制纹理颜色的纹理系数,t
model
表示最终生成的纹理,其中,t

和t可以通过3dmm算法对多个样本人脸模型进行分析得到(即已知)。
76.具体地,针对每个样本人脸模型,将该样本人脸模型的纹理带入公式(1)中的t
model
,即可得到该样本人脸模型的纹理对应的纹理系数(即样本纹理系数),从而得到多个样本人脸模型对应的多个样本纹理系数。
77.进一步地,可以采用任意可能的算法计算多个样本纹理系数所服从的概率分布,该概率分布即可作为人脸纹理数据库。如此,每次生成人脸模型时只需要从该概率分布中随机采样一个纹理系数作为目标纹理系数即可。
78.可以理解的是,通过从该概率分布中随机采样一个纹理系数作为目标纹理系数,可使该目标纹理系数与真实的人脸模型的纹理系数属于同一概率分布,从而使得后续基于目标纹理系数编辑处理得到的编辑后的模板人脸模型更像真实的人脸模型,进而使得与编辑后的模板人脸模型具有相同纹理的目标人脸模型更像真实的人脸模型,即可得到更逼真的目标人脸模型。
79.当然,本领域技术人员还可以采用生成式对抗网络(generative adversarial network,gan)技术、或变分自动编码器(variational auto-encoder,vae)技术等深度学习3d几何生成技术构建人脸脸型数据库,但并不限于此。
80.示例性的,图6是公开实施提供的一种获取目标纹理展开图的逻辑示意图。参见图6,从人脸纹理数据库610中随机选取出目标纹理系数,并将目标纹理系数带入公式(1)中,得到目标纹理展开图620。
81.可以理解的是,通过将目标纹理系数带入纹理函数中得到目标展开图,可使目标展开图的获取方式简单,易于实现,有利于提高目标人脸模型的生成效率。
82.s132、将注册后的模板人脸模型映射到参数化空间,得到对应的模板人脸展开图,其中,模板人脸展开图中包括多个二维顶点,注册后的模板人脸模型上包括多个第一三维顶点,多个二维顶点和多个第一三维顶点一一对应。
83.具体地,映射到参数化空间即将注册后的模板人脸模型上的网格在二维上展开,展开结果即为模板人脸展开图。
84.本领域技术人员可采用任意可能的参数化算法将注册后的模板人脸模型映射到参数化空间,此处不作限定,例如,可以采用保角参数化、固定边界参数化等,但并不限于此。
85.示例性的,图7是本公开实施例提供的一种对注册后的模板人脸模型进行纹理映射的逻辑示意图。参见图7,将注册后的模板人脸模型710映射到参数化空间,得到对应的模板人脸展开图720,模板人脸展开图中包括多个网格,该多个网格对应多个二维顶点,注册后的模板人脸模型710上包括多个网格(图7中未示出),该多个网格对应多个第一三维顶点,多个二维顶点和多个第一三维顶点一一对应。
86.s133、针对每个第一三维顶点,将第一三维顶点对应的二维顶点的纹理坐标作为第一三维顶点的纹理坐标,从而得到第一三维顶点和纹理坐标的映射关系。
87.具体地,在目标纹理展开图和模板人脸展开图的尺寸相同的情况下,将目标纹理展开图和模板人脸展开图重叠,此时,针对每个二维顶点,将该二维顶点垂直投影至目标纹理展开图上,投影点的坐标即为该二维顶点的纹理坐标,如此,可得到二维顶点和纹理坐标的映射关系。由于多个二维顶点和多个第一三维顶点一一对应,因此,针对每个第一三维顶点,将该第一三维顶点对应的二维顶点的纹理坐标作为该第一三维顶点的纹理坐标,即可
得到第一三维顶点和纹理坐标的映射关系。
88.示例性的,继续参见图7,注册后的模板人脸模型710上矩形框中圈出的网格在二维上的展开结果,即为模板人脸展开图720上的矩形框中圈出的网格,而模板人脸展开图720上的矩形框中圈出的网格上的二维顶点与目标纹理展开图730上的矩形框中圈出部分中的纹理坐标对应,因此,注册后的模板人脸模型710上矩形框中圈出的网格上的三维坐标与目标纹理展开图730上的矩形框中圈出部分中的纹理坐标对应。
89.s134、基于第一三维顶点和纹理坐标的映射关系,将目标纹理展开图上的纹理颜色映射到注册后的模板人脸模型上,得到纹理映射后的模板人脸模型。
90.示例性的,继续参见图7,基于第一三维顶点和纹理坐标的映射关系,将目标纹理展开图730上的矩形框中圈出部分的纹理颜色映射到注册后的模板人脸模型710上矩形框中圈出部分,以实现对注册后的模板人脸模型710上矩形框中圈出部分的纹理映射,对于其它部分同理,此处不再赘述。
91.可以理解的是,通过将注册后的模板人脸模型映射到参数化空间,可便于获取注册后的模板人脸模型上的第一三维顶点和目标纹理展开图中纹理坐标的映射关系,从而有利于提高对注册后的模板人脸模型进行纹理映射的效率,进而提高目标人脸模型的生成效率。
92.在本公开再一种实施方式中,将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型,包括:
93.s141、针对真实人脸模型上的每个第二三维顶点,基于纹理映射后的模板人脸模型上与第二三维顶点对应的多个第一三维顶点的纹理坐标,确定第二三维顶点的纹理坐标,从而得到第二三维顶点和纹理坐标的映射关系。
94.具体地,如前文所述,通过人脸注册处理可以获知真实人脸模型上的第二三维顶点和注册后的模板人脸模型上的第一三维顶点之间的对应关系(称之为第一对应关系),而纹理映射处理是对纹理的添加,第一三维顶点的位置并未发生变化,因此,真实人脸模型上的第二三维顶点和纹理映射后的模板人脸模型上的第一三维顶点之间的对应关系(称之为第二对应关系)与第一对应关系相同,第二对应关系记载了每个第二三维顶点对应的多个第一三维顶点。
95.示例性的,图8是本公开实施例提供的一种真实人脸模型和纹理映射后的模板人脸模型的示意图,其中,颜色较深的网格为真实人脸模型上的网格,颜色较浅的网格为纹理映射后的模板人脸模型上的网格,真实人脸模型上的第二三维顶点p与纹理映射后的模板人脸模型上的三个第一三维顶点对应,该三个第一三维顶点分别为t1、t2以及t3,此时,可以基于t1的纹理坐标、t2的纹理坐标以及t3的纹理坐标确定p的纹理坐标。
96.在一些实施例中,s141可以包括:将与第二三维顶点对应的多个第一三维顶点的纹理坐标进行处理,得到第二三维顶点的纹理坐标。
97.具体地,可以将与第二三维顶点对应的多个第一三维顶点的纹理坐标进行平均处理,得到第二三维顶点的纹理坐标。
98.示例性的,继续参见图8,若t1的纹理坐标为(u1,v1)、t2的纹理坐标为(u2,v2)以及t3的纹理坐标为(u3,v3),则对(u1,v1)、(u2,v2)以及(u3,v3)求取平均值,得到p的纹理坐标((u1+u2+u3)/3,(v1+v2+v3)/3)。
99.可以理解的是,通过平均处理得到第二三维顶点的纹理坐标,使得第二三维顶点的纹理坐标的获取方式简单,易于实现,有利于提高第二三维顶点的纹理坐标的获取效率。
100.在另一些实施例中,s141可以包括:确定与第二三维顶点对应的多个第一三维顶点的纹理坐标对应的多个权重值;基于多个权重值,将与第二三维顶点对应的多个第一三维顶点的纹理坐标进行权重加和处理,得到第二三维顶点的纹理坐标。
101.具体地,在纹理映射后的模板人脸模型与真实人脸模型重叠的情况下,针对每个第二三维顶点,该第二三维顶点垂直投影到纹理映射后的模板人脸模型的表面上时,投影点位于其对应的多个第一三维顶点组成的网格内,计算该第二三维顶点的投影点在对应的网格(面片)内的重心坐标,重心坐标中的多个分量可作为该第二三维顶点对应的多个第一三维顶点的纹理坐标对应的多个权重值,然后根据重心坐标插值得出该第二三维顶点的纹理坐标,如此,可得到第二三维顶点和纹理坐标的映射关系。
102.示例性的,继续参见图8,若p在t1、t2以及t3组成三角面片内的重心坐标为(o1,o2,o3),t1的纹理坐标为(u1,v1)且对应的权重为o1、t2的纹理坐标为(u2,v2)且对应的权重为o2、t3的纹理坐标为(u3,v3)且对应的权重为o3,则对(u1,v1)、(u2,v2)以及(u3,v3)进行权重加和处理,得到p的纹理坐标(u1*o1+u2*o2+u3*o3,v1*o1+v2*o2+v3*o3)。
103.可以理解的是,通过将与第二三维顶点对应的多个第一三维顶点的纹理坐标进行权重加和处理,得到第二三维顶点的纹理坐标,可使第二三维顶点的纹理坐标更准确,从而提高向去纹理后的真实人脸模型进行纹理迁移的精度,进而有利于使得目标人脸模型的纹理更像真实的人脸模型上的纹理,即更逼真。
104.s142、对真实人脸模型进行去纹理处理,得到去纹理后的真实人脸模型。
105.s143、基于第二三维顶点和纹理坐标的映射关系,将目标纹理展开图上的纹理颜色映射到注册后的模板人脸模型上,得到纹理映射后的模板人脸模型。
106.可以理解的是,通过将去纹理后的真实人脸模型映射到参数化空间,可便于获取去纹理后的真实人脸模型上的第二三维顶点和目标纹理展开图中纹理坐标的映射关系,从而有利于提高对去纹理后的真实人脸模型进行纹理映射的效率,进而提高目标人脸模型的生成效率。
107.图9是本公开实施例提供的一种人脸模型的生成装置的结构示意图,该人脸模型的生成装置可以被理解为上述电子设备或者上述电子设备中的部分功能模块。如图9所示,该人脸模型的生成装置900包括:
108.第一获取模块910,用于获取目标用户的真实人脸模型、以及获取模板人脸模型;
109.人脸注册模块920,用于基于真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型;
110.纹理映射模块930,用于利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型;
111.纹理替换模块940,用于将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。
112.在本公开另一种实施方式中,第一获取模块910可以包括用于获取模板人脸模型的第一获取子模块,第一获取子模块可以包括:
113.第一获取单元,用于获取多个样本用户的多个样本人脸模型;
114.第一处理单元,用于对多个样本人脸模型进行处理,得到模板人脸模型。
115.在本公开又一种实施方式中,纹理映射模块930可以包括:
116.第二获取子模块,用于获取目标纹理展开图,其中,目标纹理展开图中包括多个纹理坐标;
117.参数化子模块,用于将注册后的模板人脸模型映射到参数化空间,得到对应的模板人脸展开图,其中,模板人脸展开图中包括多个二维顶点,注册后的模板人脸模型上包括多个第一三维顶点,多个二维顶点和多个第一三维顶点一一对应;
118.第一确定子模块,用于针对每个第一三维顶点,将第一三维顶点对应的二维顶点的纹理坐标作为第一三维顶点的纹理坐标,从而得到第一三维顶点和纹理坐标的映射关系;
119.第一映射子模块,用于基于第一三维顶点和纹理坐标的映射关系,将目标纹理展开图上的纹理颜色映射到注册后的模板人脸模型上,得到纹理映射后的模板人脸模型。
120.在本公开再一种实施方式中,第二获取子模块可以包括:
121.选取单元,用于从人脸纹理数据库中的多个纹理系数中随机选取出一个纹理系数作为目标纹理系数;
122.生成单元,用于采用三维可变形人脸模型算法,生成目标纹理系数对应的目标纹理展开图。
123.在本公开再一种实施方式中,该装置还包括用于构建人脸纹理数据库的构建模块,构建模块可以包括:
124.第二确定子模块,用于针对多个样本人脸模型中的每个样本人脸模型,采用三维可变形人脸模型算法确定用于表征样本人脸模型的样本纹理函数;
125.第三确定子模块,用于抽取样本纹理函数中的纹理系数,从而得到多个样本人脸模型对应的多个样本纹理系数;
126.第四确定子模块,用于确定多个样本纹理系数所服从的概率分布,并将概率分布作为人脸纹理数据库。
127.在本公开再一种实施方式中,纹理替换模块940可以包括:
128.第五确定子模块,用于针对真实人脸模型上的每个第二三维顶点,基于纹理映射后的模板人脸模型上与第二三维顶点对应的多个第一三维顶点的纹理坐标,确定第二三维顶点的纹理坐标,从而得到第二三维顶点和纹理坐标的映射关系;
129.去纹理子模块,用于对真实人脸模型进行去纹理处理,得到去纹理后的真实人脸模型;
130.第二映射子模块,用于基于第二三维顶点和纹理坐标的映射关系,将目标纹理展开图上的纹理颜色映射到注册后的模板人脸模型上,得到纹理映射后的模板人脸模型。
131.在本公开再一种实施方式中,第五确定子模块可以包括:
132.第二处理单元,用于将与第二三维顶点对应的多个第一三维顶点的纹理坐标进行处理,得到第二三维顶点的纹理坐标。
133.在本公开再一种实施方式中,第五确定子模块可以包括:
134.确定单元,用于确定与第二三维顶点对应的多个第一三维顶点的纹理坐标对应的多个权重值;
135.权重加和单元,用于基于多个权重值,将与第二三维顶点对应的多个第一三维顶点的纹理坐标进行权重加和处理,得到第二三维顶点的纹理坐标。
136.本实施例提供的装置能够执行上述任一实施例的方法,其执行方式和有益效果类似,在这里不再赘述。
137.本公开实施例还提供了一种电子设备,该电子设备包括:存储器,存储器中存储有计算机程序;处理器,用于执行所述计算机程序,当所述计算机程序被所述处理器执行时可以实现上述任一实施例的方法。
138.示例的,图10是本公开实施例中的一种电子设备的结构示意图。下面具体参考图10,其示出了适于用来实现本公开实施例中的电子设备1000的结构示意图。本公开实施例中的电子设备1000可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图10示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
139.如图10所示,电子设备1000可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(rom)1002中的程序或者从存储装置1008加载到随机访问存储器(ram)1003中的程序而执行各种适当的动作和处理。在ram 1003中,还存储有电子设备1000操作所需的各种程序和数据。处理装置1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口1005也连接至总线1004。
140.通常,以下装置可以连接至i/o接口1005:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许电子设备1000与其他设备进行无线或有线通信以交换数据。虽然图10示出了具有各种装置的电子设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
141.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从rom 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开实施例的方法中限定的上述功能。
142.需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其
中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
143.在一些实施方式中,客户端、服务器可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
144.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
145.上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
146.获取目标用户的真实人脸模型、以及获取模板人脸模型;
147.基于真实人脸模型,采用预设的人脸注册算法对模板人脸模型进行人脸注册处理,得到注册后的模板人脸模型;
148.利用目标纹理展开图对注册后的模板人脸模型进行纹理映射处理,得到纹理映射后的模板人脸模型;
149.将真实人脸模型上的纹理颜色替换为纹理映射后的模板人脸模型上的纹理颜色,得到目标人脸模型。
150.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
151.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
152.描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
153.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
154.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
155.本公开实施例还提供一种计算机可读存储介质,所述存储介质中存储有计算机程序,当所述计算机程序被处理器执行时可以实现上述任一实施例的方法,其执行方式和有益效果类似,在这里不再赘述。
156.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
157.以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1