纹理贴图的生成方法和装置、电子设备和存储介质与流程

文档序号:30204075发布日期:2022-05-31 08:27阅读:96来源:国知局
纹理贴图的生成方法和装置、电子设备和存储介质与流程

1.本技术涉及图片处理领域,尤其涉及一种纹理贴图的生成方法和装置、电子设备和存储介质。


背景技术:

2.目前,在基于单张图片的三维头部重建任务中,往往利用生成对抗网络根据输入图片生成对应的纹理贴图,这种方式虽然可以保留输入人脸的个性化特征,但生成的图像较为模糊,未能准确表达出用户的三维形象。
3.因此,相关技术中存在生成的用户三维形象对应的贴图纹理较不清晰,不能体现用户的纹理真实状况的问题。


技术实现要素:

4.本技术提供了一种纹理贴图的生成方法和装置、电子设备和存储介质,以至少解决相关技术中存在生成的用户三维形象对应的贴图纹理较不清晰,不能体现用户的纹理真实状况的问题。
5.根据本技术实施例的一个方面,提供了一种纹理贴图的生成方法,该方法包括:
6.获取目标用户在多个角度下对应生成的色彩图和深度图;
7.利用所述色彩图和所述深度图对所述目标用户的三维头部形状进行重建,得到所述目标用户的目标三维头部形状;
8.利用所述目标三维头部形状和所述色彩图,生成纹理贴图。
9.根据本技术实施例的另一个方面,还提供了一种纹理贴图的生成装置,该装置包括:
10.获取单元,用于获取目标用户在多个角度下对应生成的色彩图和深度图;
11.第一得到单元,用于利用所述色彩图和所述深度图对所述目标用户的三维头部形状进行重建,得到所述目标用户的目标三维头部形状;
12.生成单元,用于利用所述目标三维头部形状和所述色彩图,生成纹理贴图。
13.可选地,第一得到单元包括:
14.第一得到模块,用于根据所述色彩图和所述深度图,得到所述目标用户的初始三维头部形状;
15.渲染模块,用于在目标角度下利用身份向量和表情向量渲染所述初始三维头部形状,得到渲染后的在所述目标角度下的参考深度图,其中,所述身份向量和所述表情向量用于描述所述目标用户的身份维度系数和表情维度系数;
16.第二得到模块,用于利用所述色彩图、所述深度图和所述参考深度图,得到所述目标三维头部形状。
17.可选地,第二得到模块包括:
18.确定子单元,用于利用所述色彩图、所述深度图以及所述参考深度图,确定误差
值;
19.比较子单元,用于将所述误差值与第一阈值进行比较,其中,所述第一阈值为停止所述误差值与所述第一阈值进行循环比较的临界值;
20.得到子单元,用于在所述误差值小于所述第一阈值的情况下,得到所述目标三维头部形状。
21.可选地,确定子单元包括:
22.检测子模块,用于检测所述色彩图上的关键点;
23.获取子模块,用于获取所述关键点在所述色彩图上的第一关键点坐标、获取所述关键点在所述目标三维头部形状对应的三维图像上的第二关键点坐标以及获取所述第二关键点坐标利用映射函数映射到二维图像上的第三关键点坐标;
24.确定子模块,用于根据深度误差权重、所述深度图、所述参考深度图、关键点误差权重、所述第一关键点坐标、所述第三关键点坐标、正则化项权重、所述身份向量以及所述表情向量,确定所述误差值,其中,所述深度误差权重用于调整由所述深度图和所述参考深度图所组成的深度误差函数的贡献值,所述关键点误差权重用于调整由所述第一关键点坐标和所述第三关键点坐标所组成的关键点误差函数的贡献值,所述正则化项权重用于调整由所述身份向量和所述表情向量所组成的正则化误差函数的贡献值。
25.可选地,生成单元包括:
26.获取模块,用于获取所述色彩图对应的二维图像;
27.映射模块,用于将所述目标三维头部形状对应的三维几何形状点映射到所述二维图像上,得到映射到所述二维图像上的点坐标;
28.采样模块,用于通过所述点坐标在所述二维图像上进行图像采样,得到对应的所述纹理贴图。
29.可选地,所述纹理贴图的数量为多个,该装置还包括:
30.融合单元,用于在所述利用所述目标三维头部形状和所述色彩图,生成纹理贴图之后,将多个所述纹理贴图进行融合,得到第一纹理贴图;
31.第二得到单元,用于对所述第一纹理贴图进行光照均衡和纹理细节优化的处理,得到处理后的纹理贴图。
32.可选地,第二得到单元包括:
33.第一输入模块,用于将所述第一纹理贴图输入第一模型,得到第二纹理贴图,其中,所述第一模型为利用脸部的光照均衡的纹理贴图样本数据和光照不均衡的纹理贴图样本数据进行训练得到的,用于生成光照均衡的纹理贴图;
34.第二输入模块,用于将所述第二纹理贴图输入第二模型,生成所述处理后的纹理贴图,其中,所述第二模型为利用纹理贴图清晰度低于第二阈值的样本数据和纹理贴图清晰度高于所述第二阈值的样本数据进行训练得到的,用于对贴图的纹理进行细节优化,所述第二阈值用于指示所述纹理贴图为清晰的最小值。
35.根据本技术实施例的又一个方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;其中,存储器,用于存储计算机程序;处理器,用于通过运行所述存储器上所存储的所述计算机程序来执行上述任一实施例中的方法步骤。
36.根据本技术实施例的又一个方面,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一实施例中的方法步骤。
37.在本技术实施例中,通过获取目标用户在多个角度下对应生成的色彩图和深度图;利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状;利用目标三维头部形状和色彩图,生成纹理贴图。由于本技术实施例利用在多个角度下得到的目标用户的色彩图(即rgb图)和深度图,将色彩图和深度图相结合进行三维头部形状的重建,生成目标用户的目标三维头部形状,然后利用该目标三维头部形状和目标用户的rgb图,得到纹理贴图。这样生成的纹理贴图既贴合目标用户的头部形状,且纹理质量清晰,解决了相关技术中存在生成的用户三维形象对应的贴图纹理较不清晰,不能体现用户的纹理真实状况的问题。
附图说明
38.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
39.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
40.图1是根据本发明实施例的一种可选的纹理贴图的生成方法的硬件环境的示意图;
41.图2是根据本技术实施例的一种可选的纹理贴图的生成方法的流程示意图;
42.图3是根据本技术实施例的一种可选的纹理贴图的生成方法的整体流程示意图;
43.图4是根据本技术实施例的一种可选的纹理贴图的生成装置的结构框图;
44.图5是根据本技术实施例的一种可选的电子设备的结构框图。
具体实施方式
45.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
46.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
47.根据本技术实施例的一个方面,提供了一种纹理贴图的生成方法。可选地,在本实
施例中,上述纹理贴图的生成方法可以应用于如图1所示的硬件环境中。如图1所示,终端102中可以包含有存储器104、处理器106和显示器108(可选部件)。终端102可以通过网络110与服务器112进行通信连接,该服务器112可用于为终端或终端上安装的客户端提供服务(如应用服务等),可在服务器112上或独立于服务器112设置数据库114,用于为服务器112提供数据存储服务。此外,服务器112中可以运行有处理引擎116,该处理引擎116可以用于执行由服务器112所执行的步骤。
48.可选地,终端102可以但不限于为可以计算数据的终端,如移动终端(例如手机、平板电脑)、笔记本电脑、pc(personal computer,个人计算机)机等终端上,上述网络可以包括但不限于无线网络或有线网络。其中,该无线网络包括:蓝牙、wifi(wireless fidelity,无线保真)及其他实现无线通信的网络。上述有线网络可以包括但不限于:广域网、城域网、局域网。上述服务器112可以包括但不限于任何可以进行计算的硬件设备。
49.此外,在本实施例中,上述纹理贴图的生成方法还可以但不限于应用于处理能力较强大的独立的处理设备中,而无需进行数据交互。例如,该处理设备可以但不限于为处理能力较强大的终端设备,即,上述纹理贴图的生成方法中的各个操作可以集成在一个独立的处理设备中。上述仅是一种示例,本实施例中对此不作任何限定。
50.可选地,在本实施例中,上述纹理贴图的生成方法可以由服务器112来执行,也可以由终端102来执行,还可以是由服务器112和终端102共同执行。其中,终端102执行本技术实施例的纹理贴图的生成方法也可以是由安装在其上的客户端来执行。
51.以运行在服务器为例,图2是根据本技术实施例的一种可选的纹理贴图的生成方法的流程示意图,如图2所示,该方法的流程可以包括以下步骤:
52.步骤s201,获取目标用户在多个角度下对应生成的色彩图和深度图。
53.可选地,本技术实施例通过摄像装备,比如智能手机、摄影相机等装备从多个角度拍摄目标用户,比如从上下左右正面5个角度各旋转30度去采集目标用户头部的图像,得到多个角度下生成的色彩图和深度图。其中,色彩图即为rgb图,用于表征出目标用户的肤色、眉毛等多彩颜色,深度图用于表征出目标用户的立体轮廓。
54.步骤s202,利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状。
55.可选地,在本技术实施例中,将色彩图和深度图进行结合,即可对目标用户的三维头部形状进行重建,重建后得到目标用户的目标三维头部形状。
56.另外,本技术实施例可以利用模型进行目标用户的三维头部形状的生成,比如可以采用基于pca的双线性三维可变形模型(3dmorphable model,3dmm)作为基底模型,也即将3dmm模型作为初始模型,其中,初始模型用于对目标用户的三维头部形状进行重建。此时先将得到的色彩图和深度图输入到初始模型中,得到输出的一个头形状态,然后通过从不同角度渲染该头形形状,不断对初始模型进行模型参数的调整,进而确定出确定模型,并以该确定模型作为最终能够输出符合目标用户三维头形的最终模型,利用确定模型,即可输出符合目标用户真实头形的三维头部形状作为目标三维头部形状。在这里,得到的目标三维头部形状个性化更高,更加精准,更符合目标用户的三维形象。
57.步骤s203,利用目标三维头部形状和色彩图,生成纹理贴图。
58.可选地,在得到目标三维头部形状之后,结合色彩图,利用映射函数将目标三维头
部形状和二维图像进行映射投影,进而生成纹理贴图。
59.在本技术实施例中,通过获取目标用户在多个角度下对应生成的色彩图和深度图;利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状;利用目标三维头部形状和色彩图,生成纹理贴图。由于本技术实施例利用在多个角度下得到的目标用户的色彩图(即rgb图)和深度图,将色彩图和深度图相结合进行三维头部形状的重建,生成目标用户的目标三维头部形状,然后利用该目标三维头部形状和目标用户的rgb图,得到纹理贴图。这样生成的纹理贴图既贴合目标用户的头部形状,且纹理质量清晰,解决了相关技术中存在生成的用户三维形象对应的贴图纹理较不清晰,不能体现用户的纹理真实状况的问题。
60.作为一种可选实施例,利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状包括:
61.根据色彩图和深度图,得到目标用户的初始三维头部形状;
62.在目标角度下利用身份向量和表情向量渲染初始三维头部形状,得到渲染后的在目标角度下的参考深度图,其中,身份向量和表情向量用于描述目标用户的身份维度系数和表情维度系数;
63.利用色彩图、深度图和参考深度图,得到目标三维头部形状。
64.可选地,在本技术实施例中以构建初始模型,对初始模型进行模型参数调整,以得到确定模型确定出目标三维头部形状为例,展开以下描述:可以将目标用户在多个角度下的色彩图和深度图输入初始模型中,得到目标用户的初始三维头部形状,然后预测3dmm的参数,重建出用户的三维头部模型。公式表述为公式(1):
[0065][0066]
其中,s重建出的用户三维头部形状,为3dmm的平均形状,b
id
,b
exp
分别为3dmm模型的身份pca基底和表情pca基底,ci,ce为所预测的3dmm身份维度系数和表情维度系数。此外在拟合3dmm参数过程中,还需要预测每个角度的姿态参数pi,i∈(1,2,3,4,5)。
[0067]
在这里采用梯度下降算法作为优化算法,要优化的模型参数为δ={ci,ce,pi},在算法的每次迭代时,首先使用参数ci,ce重建出用户的三维头部形状s,之后将其与每个角度的姿态参数一起输入到可微渲染器中,得到渲染的参考深度图,最后计算预测误差,并将误差反向传播到参数δ,并更新参数δ,进而最终得到确定模型。
[0068]
同时,在将误差反向传播到参数δ,并更新参数δ的过程中,需要提前设置第一阈值(比如0.1),将每次得到的误差值与该第一阈值进行数值大小的比较,其中,该第一阈值为停止误差值与第一阈值进行循环比较的临界值,在确定当前得到的误差值小于该第一阈值的情况下,即可停止更新参数δ,当前得到的3dmm模型即为确定模型,根据确定模型输出目标三维头部形状。
[0069]
在本技术实施例中,通过将渲染后的参考深度图与目标用户的深度图之间的误差值,不断优化调整模型参数,进行得到确定模型,这样利用确定模型输出的三维头部形状是比较贴合目标用户的实际头形的。
[0070]
作为一种可选实施例,利用色彩图、深度图以及参考深度图,确定误差值包括:
[0071]
检测色彩图上的关键点;
[0072]
获取关键点在色彩图上的第一关键点坐标、获取关键点在目标三维头部形状对应的三维图像上的第二关键点坐标以及获取第二关键点坐标利用映射函数映射到二维图像上的第三关键点坐标;
[0073]
根据深度误差权重、深度图、参考深度图、关键点误差权重、第一关键点坐标、第三关键点坐标、正则化项权重、身份向量以及表情向量,确定误差值,其中,深度误差权重用于调整由深度图和参考深度图所组成的深度误差函数的贡献值,关键点误差权重用于调整由第一关键点坐标和第三关键点坐标所组成的关键点误差函数的贡献值,正则化项权重用于调整由身份向量和表情向量所组成的正则化误差函数的贡献值。
[0074]
可选地,在本技术实施例中,确定误差值的方式具体阐述:
[0075]
把目标用户第i个角度的rgb图设为深度图设为渲染得到的深度图设为整体的误差函数可以定义为:
[0076]
τ=λ
dep
τ
dep

lan
τ
lan

reg
τ
reg
ꢀꢀ
(2)
[0077]
其中,λ
dep
为深度误差权重,τ
dep
为深度误差函数,τ
dep
定义各个角度的深度图和渲染深度图的l2距离均值:
[0078][0079]
λ
lan
为关键点误差权重,τ
lan
为关键点误差函数,τ
lan
定义为各个角度rgb图上所检测到的关键点(即第一关键点坐标)与其在目标三维头部形状s上对应关键点(即第二关键点坐标)的二维映射的l2距离均值:
[0080][0081]
这里的ψ为关键点检测神经网络,用于检测rgb图像上的关键点坐标,s
lan
为三维形状s的子集,s
lan
中每个点的索引含义与中一致,例如第一个点都表示眼角。π为映射函数,将目标三维头部形状上的点投影到二维平面上。也即,可以以眼角作为关键点,将该关键点在目标三维头部形状上的第二关键坐标点投射到二维平面上,得到第三关键点坐标。
[0082]
λ
reg
为正则化项权重,τ
reg
为正则化误差函数,τ
reg
定位为ci和ce的l2范数和:
[0083][0084]
ωi和ωe都是权重值,用于调整ci和ce的数值大小,保证ci和ce贡献值均衡。
[0085]
另外,上述的λ
dep
、λ
lan
、λ
reg
的作用也都是为了调整其乘积函数的贡献值的,达到均衡的目的。
[0086]
最后参照公式(2),将上述得到的τ
dep
函数得到的数值与λ
dep
深度误差权重之积、τ
lan
函数得到的数值与λ
lan
关键点误差权重之积、以及τ
reg
函数得到的数值与λ
reg
正则化项权重之积再全部求和,最终得到误差值。
[0087]
在本技术实施例中,通过计算任一角度下的色彩图、深度图,将其与渲染得到的参数深度图进性误差值的计算,以不断调整模型参数,以获取准确的三维头部形状输出模型。
[0088]
作为一种可选实施例,利用目标三维头部形状和色彩图,生成纹理贴图包括:
[0089]
获取色彩图对应的二维图像;
[0090]
将目标三维头部形状对应的三维几何形状点映射到二维图像上,得到映射到二维图像上的点坐标;
[0091]
通过点坐标在二维图像上进行图像采样,得到对应的纹理贴图。
[0092]
可选地,纹理采样是三维重建中常用的一种纹理贴图获取方式,在本技术实施例中,在重建出目标三维头部形状后,可以通过姿态系数和相机系数将目标三维头部形状上的点映射回二维图像平面上,公式描述为:
[0093]v2d
=π(s)
ꢀꢀ
(6)
[0094]
与上述实施例相同,π为映射函数,将目标三维头部形状上的点投影到二维平面上。v
2d
为得到目标三维头部形状的点在二维图像平面上的点坐标。之后通过这些点坐标在图像上采样,就可以得到纹理贴图,公式描述为:
[0095]
t=f(v
2d
)
ꢀꢀ
(7)
[0096]
得到的纹理贴图。需要说明的是,在本技术实施例中,得到的纹理贴图的数量为多个,其是来自多个角度得到的纹理贴图。
[0097]
作为一种可选实施例,纹理贴图的数量为多个,在利用目标三维头部形状和色彩图,生成纹理贴图之后,方法还包括:
[0098]
将多个纹理贴图进行融合,得到第一纹理贴图;
[0099]
对第一纹理贴图进行光照均衡和纹理细节优化的处理,得到处理后的纹理贴图。
[0100]
可选地,在获取到生成的与目标用户的目标三维头部形状相匹配的纹理贴图之后,为了得到更清晰,质量更高的纹理贴图,这时可以对纹理贴图进行光照均衡化处理和纹理细节优化处理,进而得到处理后的纹理贴图。
[0101]
对于得到的多个角度的纹理贴图,采用图像金字塔融合的方式将其融合到预制的贴图模板上,这是因为单个角度的纹理贴图只包含不全的脸部区域,融合多个视角的纹理贴图可以得到完成的脸部贴图,与模板融合可以补全脸部之外的贴图区域(例如,脖子,耳朵等),得到第一纹理贴图。
[0102]
然后基于该第一纹理贴图进行光照均衡和纹理细节优化的处理,得到处理后的纹理贴图。可参见3,其包含:多视角数据采集模块,多视角头部重建模块,多视角纹理贴图融合模块,贴图光照均衡化模块,贴图细节优化模块。
[0103]
在本技术实施例中,通过对得到的多个纹理贴图进行融合、光照均衡化、纹理细节优化的方式,得到的处理后的纹理贴图去除了贴图中的不均匀光照,避免这些不均匀光照对后续应用造成不良影响,同时增加贴图的皮肤纹理细节,提升贴图的分辨率。
[0104]
作为一种可选实施例,对第一纹理贴图进行光照均衡和纹理细节优化的处理,得到处理后的纹理贴图包括:
[0105]
将第一纹理贴图输入第一模型,得到第二纹理贴图,其中,第一模型为利用脸部的光照均衡的纹理贴图样本数据和光照不均衡的纹理贴图样本数据进行训练得到的,用于生成光照均衡的纹理贴图;
[0106]
将第二纹理贴图输入第二模型,生成处理后的纹理贴图,其中,第二模型为利用纹理贴图清晰度低于第二阈值的样本数据和纹理贴图清晰度高于第二阈值的样本数据进行训练得到的,用于对贴图的纹理进行细节优化,第二阈值用于指示纹理贴图为清晰的最小
值。
[0107]
可选地,在本技术实施例中,设有两个模型,一个是第一模型,也可以是贴图光照均衡化模型,还有一个是第二模型,也可以是贴图细节优化模型。在本技术实施例中,在对融合多个纹理贴图后得到的第一纹理贴图进行光照均衡和纹理细节优化的处理,其中,光照均衡化处理具体为:基于生成对抗神经网络的照均衡化神经网络,用于去除贴图中的不均衡光照。
[0108]
首先利用目前已有的脸部重照明方法,生成了一批光照均衡化神经网络训练数据集,数据集中每一对数据包含一张光照均衡的纹理贴图和一张对应包含不均衡光照的纹理贴图。
[0109]
之后利用这些数据对光照均衡化神经网络进行训练,该光照均衡化神经网络包含生成器和判别器两部分,生成器由两个编码器结构和一个解码器结构组成,其采用u-net结构,图像编码器用于提取正面角度的rgb图像上的特征信息,贴图编码器用于提取纹理贴图上的特征信息。判别器采用patch-gan结构,其只在训练时使用,在应用时会去除掉,仅保留生成器。
[0110]
将训练好的模型作为第一模型,将第一纹理贴图输入第一模型,得到第二纹理贴图。
[0111]
纹理细节优化处理具体为:基于内部m张高质量纹理贴图(比如800张)为基础,采用贴图颜色贴图、贴图区域替换等方式进一步将训练数据扩充到了n张(比如2000张)左右。之后对这些高质量纹理贴图进行降采样,同时加入一些随机的不均衡光照,并输入到第一模型中,将最终得到的数据视为低质量纹理贴图,并与高质量纹理贴图成对组合,构成贴图细节优化神经网络训练数据集。其中,低质量的纹理贴图的清晰度低于第二阈值,高质量的纹理贴图的清晰度高于第二阈值,第二阈值用于指示纹理贴图为清晰的最小值。
[0112]
采用这一数据集对贴图细节优化神经网络进行训练,这里贴图细节优化神经网络直接采用了pixel2pixelhd生成对抗网络,该网络具有生成的图像分辨率高,细节更加丰富,真实度更高的优点。
[0113]
将训练好的贴图细节优化神经网络模型作为第二模型,将第二纹理贴图输入第二模型中,生成处理后的纹理贴图。
[0114]
在本技术实施例中,利用第一模型和第二模型得到的处理后的纹理贴图分辨率高,细节更加丰富,真实度更高。同时,由于得到的目标贴图质量较高,这样可以丰富用户在虚拟世界中娱乐体验,提高商业价值。
[0115]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
[0116]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储
介质(如rom(read-only memory,只读存储器)/ram(random access memory,随机存取存储器)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
[0117]
根据本技术实施例的另一个方面,还提供了一种用于实施上述纹理贴图的生成方法的纹理贴图的生成装置。图4是根据本技术实施例的一种可选的纹理贴图的生成装置的结构框图,如图4所示,该装置可以包括:
[0118]
获取单元401,用于获取目标用户在多个角度下对应生成的色彩图和深度图;
[0119]
第一得到单元402,与获取单元401相连,用于利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状;
[0120]
生成单元403,与第一得到单元402相连,用于利用目标三维头部形状和色彩图,生成纹理贴图。
[0121]
需要说明的是,该实施例中的获取单元401可以用于执行上述步骤s201,该实施例中的第一得到单元402可以用于执行上述步骤s202,该实施例中的生成单元403可以用于执行上述步骤s203。
[0122]
通过上述模块,利用在多个角度下得到的目标用户的色彩图(即rgb图)和深度图,将色彩图和深度图相结合进行三维头部形状的重建,生成目标用户的目标三维头部形状,然后利用该目标三维头部形状和目标用户的rgb图,得到纹理贴图,基于纹理贴图作进一步的细化处理,最终确定出目标纹理贴图。这样生成的目标纹理贴图既贴合目标用户的头部形状,且纹理质量清晰,解决了相关技术中存在生成的用户三维形象对应的贴图纹理较不清晰,不能体现用户的纹理真实状况的问题。
[0123]
作为一种可选的实施例,第一得到单元包括:
[0124]
第一得到模块,用于根据色彩图和深度图,得到目标用户的初始三维头部形状;
[0125]
渲染模块,用于在目标角度下利用身份向量和表情向量渲染初始三维头部形状,得到渲染后的在目标角度下的参考深度图,其中,身份向量和表情向量用于描述目标用户的身份维度系数和表情维度系数;
[0126]
第二得到模块,用于利用色彩图、深度图和参考深度图,得到目标三维头部形状。
[0127]
作为一种可选的实施例,第二得到模块包括:
[0128]
确定子单元,用于利用色彩图、深度图以及参考深度图,确定误差值;
[0129]
比较子单元,用于将误差值与第一阈值进行比较,其中,第一阈值为停止误差值与第一阈值进行循环比较的临界值;
[0130]
得到子单元,用于在误差值小于第一阈值的情况下,得到目标三维头部形状。
[0131]
作为一种可选的实施例,确定子单元包括:
[0132]
检测子模块,用于检测色彩图上的关键点;
[0133]
获取子模块,用于获取关键点在色彩图上的第一关键点坐标、获取关键点在目标三维头部形状对应的三维图像上的第二关键点坐标以及获取第二关键点坐标利用映射函数映射到二维图像上的第三关键点坐标;
[0134]
确定子模块,用于根据深度误差权重、深度图、参考深度图、关键点误差权重、第一关键点坐标、第三关键点坐标、正则化项权重、身份向量以及表情向量,确定误差值,其中,深度误差权重用于调整由深度图和参考深度图所组成的深度误差函数的贡献值,关键点误
差权重用于调整由第一关键点坐标和第三关键点坐标所组成的关键点误差函数的贡献值,正则化项权重用于调整由身份向量和表情向量所组成的正则化误差函数的贡献值。
[0135]
作为一种可选的实施例,生成单元包括:
[0136]
获取模块,用于获取色彩图对应的二维图像;
[0137]
映射模块,用于将目标三维头部形状对应的三维几何形状点映射到二维图像上,得到映射到二维图像上的点坐标;
[0138]
采样模块,用于通过点坐标在二维图像上进行图像采样,得到对应的纹理贴图。
[0139]
作为一种可选的实施例,纹理贴图的数量为多个,该装置还包括:
[0140]
融合单元,用于在利用目标三维头部形状和色彩图,生成纹理贴图之后,将多个纹理贴图进行融合,得到第一纹理贴图;
[0141]
第二得到单元,用于对第一纹理贴图进行光照均衡和纹理细节优化的处理,得到处理后的纹理贴图。
[0142]
作为一种可选的实施例,第二得到单元包括:
[0143]
第一输入模块,用于将第一纹理贴图输入第一模型,得到第二纹理贴图,其中,第一模型为利用脸部的光照均衡的纹理贴图样本数据和光照不均衡的纹理贴图样本数据进行训练得到的,用于生成光照均衡的纹理贴图;
[0144]
第二输入模块,用于将第二纹理贴图输入第二模型,生成处理后的纹理贴图,其中,第二模型为利用纹理贴图清晰度低于第二阈值的样本数据和纹理贴图清晰度高于第二阈值的样本数据进行训练得到的,用于对贴图的纹理进行细节优化,第二阈值用于指示纹理贴图为清晰的最小值。
[0145]
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
[0146]
根据本技术实施例的又一个方面,还提供了一种用于实施上述纹理贴图的生成方法的电子设备,该电子设备可以是服务器、终端、或者其组合。
[0147]
图5是根据本技术实施例的一种可选的电子设备的结构框图,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501、通信接口502和存储器503通过通信总线504完成相互间的通信,其中,
[0148]
存储器503,用于存储计算机程序;
[0149]
处理器501,用于执行存储器503上所存放的计算机程序时,实现如下步骤:
[0150]
获取目标用户在多个角度下对应生成的色彩图和深度图;
[0151]
利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状;
[0152]
利用目标三维头部形状和色彩图,生成纹理贴图。
[0153]
可选地,在本实施例中,上述的通信总线可以是pci(peripheral component interconnect,外设部件互连标准)总线、或eisa(extended industry standard architecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总
线。
[0154]
通信接口用于上述电子设备与其他设备之间的通信。
[0155]
存储器可以包括ram,也可以包括非易失性存储器(non-volatile memory),例如,至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0156]
作为一种示例,如图5所示,上述存储器503中可以但不限于包括上述纹理贴图的生成装置中的获取单元401、第一得到单元402、生成单元403。此外,还可以包括但不限于上述纹理贴图的生成装置中的其他模块单元,本示例中不再赘述。
[0157]
上述处理器可以是通用处理器,可以包含但不限于:cpu(central processing unit,中央处理器)、np(network processor,网络处理器)等;还可以是dsp(digital signal processing,数字信号处理器)、asic(application specific integrated circuit,专用集成电路)、fpga(field-programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0158]
此外,上述电子设备还包括:显示器,用于显示纹理贴图的生成结果。
[0159]
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
[0160]
本领域普通技术人员可以理解,图5所示的结构仅为示意,实施上述纹理贴图的生成方法的设备可以是终端设备,该终端设备可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图5其并不对上述电子设备的结构造成限定。例如,终端设备还可包括比图5中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图5所示的不同的配置。
[0161]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、rom、ram、磁盘或光盘等。
[0162]
根据本技术实施例的又一个方面,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行纹理贴图的生成方法的程序代码。
[0163]
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
[0164]
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
[0165]
获取目标用户在多个角度下对应生成的色彩图和深度图;
[0166]
利用色彩图和深度图对目标用户的三维头部形状进行重建,得到目标用户的目标三维头部形状;
[0167]
利用目标三维头部形状和色彩图,生成纹理贴图。
[0168]
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例中对此不再赘述。
[0169]
可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、rom、ram、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0170]
根据本技术实施例的又一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中;计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算
机指令,使得该计算机设备执行上述任一个实施例中的纹理贴图的生成方法步骤。
[0171]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0172]
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例纹理贴图的生成方法的全部或部分步骤。
[0173]
在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0174]
在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0175]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例中所提供的方案的目的。
[0176]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0177]
以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1