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.本技术提供了一种图像生成方法。所述方法包括:
38.获取目标对象对应的目标动作参数和目标视角;
39.生成所述目标动作参数对应的目标纹理特征体素,基于所述目标视角对所述目标纹理特征体素进行特征解码,得到目标纹理坐标图像;
40.生成所述目标动作参数对应的目标神经纹理贴图,基于所述目标神经纹理贴图和所述目标视角,对所述目标纹理坐标图像进行图像转换,得到所述目标对象在所述目标动作参数和所述目标视角下对应的目标图像。
41.本技术还提供了一种图像生成装置。所述装置包括:
42.目标数据获取模块,用于获取目标对象对应的目标动作参数和目标视角;
43.目标纹理坐标图像确定模块,用于生成所述目标动作参数对应的目标纹理特征体素,基于所述目标视角对所述目标纹理特征体素进行特征解码,得到目标纹理坐标图像;
44.目标图像确定模块,用于生成所述目标动作参数对应的目标神经纹理贴图,基于所述目标神经纹理贴图和所述目标视角,对所述目标纹理坐标图像进行图像转换,得到所述目标对象在所述目标动作参数和所述目标视角下对应的目标图像。
45.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述图像生成方法所述的步骤。
46.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述图像生成方法所述的步骤。
47.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述图像生成方法所述的步骤。
48.上述图像生成方法、装置、计算机设备、存储介质和计算机程序产品,通过获取目标对象对应的目标动作参数和目标视角;生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像;生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像。这样,基于三维的纹理特征体素得到二维的纹理坐标图像,将目标视角和目标动作对应的图像平面中每个特征分别转换为其对应的纹理坐标,基于预测神经纹理贴图和目标视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目标对象在目标视角和目标动作下的彩色图像,这样从三维空间
转换到二维空间进行数据处理,可以有效降低数据处理压力,提高图像生成效率。
附图说明
49.图1为一个实施例中图像生成模型训练方法和图像生成方法的应用环境图;
50.图2为一个实施例中图像生成模型训练方法的流程示意图;
51.图3为一个实施例中图像生成方法的流程示意图;
52.图4为另一个实施例中图像生成方法的流程示意图;
53.图5为一个实施例中模型进行数据处理的流程示意图;
54.图6为一个实施例中本技术方法的应用效果的示意图;
55.图7为一个实施例中不同数据集上新视角合成的定性结果的示意图;
56.图8为一个实施例中不同数据集上新动作编辑的定性结果的示意图;
57.图9为一个实施例中形状编辑的定性结果的示意图;
58.图10为一个实施例中纹理编辑的定性结果的示意图;
59.图11为一个实施例中图像生成模型训练装置的结构框图;
60.图12为一个实施例中图像生成装置的结构框图;
61.图13为另一个实施例中图像生成装置的结构框图;
62.图14为一个实施例中计算机设备的内部结构图;
63.图15为一个实施例中计算机设备的内部结构图。
具体实施方式
64.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
65.本技术实施例提供的方案涉及人工智能的计算机视觉技术、机器学习等技术,具体通过如下实施例进行说明:
66.本技术实施例提供的图像生成模型训练方法和图像生成方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群或者云服务器来实现。
67.终端102和服务器104均可单独用于执行本技术实施例中提供的图像生成模型训练方法和图像生成方法。
68.例如,服务器获取目标对象对应的多个训练图像,训练图像存在对应的训练动作参数和训练视角,从多个训练图像中确定当前训练图像,将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型。服务器通过初始图像生成模型生成当前训练动作参数对应的预测纹理特征体素,基于当前训练视角对预测纹理特征体素进行特征解码,得到预测纹理坐标图像,生成当前训练动作参数对应的预测神经纹理贴图,基于预测
神经纹理贴图和当前训练视角,对预测纹理坐标图像进行图像转换,得到当前训练图像对应的预测图像,初始图像生成模型输出当前训练图像对应的预测图像。服务器基于当前训练图像和对应的预测图像生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型。服务器将下一训练图像作为当前训练图像,将中间图像生成模型作为初始图像生成模型,返回将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型的步骤执行,直至满足收敛条件,得到目标图像生成模型。
69.服务器获取目标对象对应的目标动作参数和目标视角,将目标动作参数和目标视角输入目标图像生成模型,得到目标对象在目标动作参数和目标视角下对应的目标图像。
70.服务器获取目标对象对应的目标动作参数和目标视角,生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像,生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像。
71.终端102和服务器104也可协同用于执行本技术实施例中提供的图像生成模型训练方法和图像生成方法。
72.例如,服务器从终端获取训练数据,基于训练数据对初始图像生成模型进行训练,得到目标图像生成模型。服务器将目标图像生成模型发送至终端,终端获取目标对象对应的目标动作参数和目标视角,将目标动作参数和目标视角输入目标图像生成模型,得到目标对象在目标动作参数和目标视角下对应的目标图像。
73.服务器从终端获取目标对象对应的目标动作参数和目标视角,服务器生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像,生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像。服务器将目标图像发送至终端,在终端展示目标图像。
74.在一个实施例中,如图2所示,提供了一种图像生成模型训练方法,以该方法应用于计算机设备来举例说明,该计算机设备可以是上述图1中的终端102或服务器104。参考图2,图像生成模型训练方法包括以下步骤:
75.步骤s202,获取目标对象对应的多个训练图像,训练图像存在对应的训练动作参数和训练视角。
76.其中,目标对象具体可以是独立的生命体或者物体,比如人、动物、植物、车辆等,也可以是特定部位,比如面部、手部等。训练图像是指用于模型训练的图像,训练图像中包含目标对象。动作参数用于描述图像中对象的动作姿态。训练动作参数是指训练图像中目标对象对应的动作参数。视角用于描述图像的拍摄角度、采集角度。训练视角是指训练图像对应的视角。可以理解,不同的训练图像可以是对摆着同一动作的目标对象从不同视角拍摄得到的图像,不同的训练图像也可以是对摆着不同动作的目标对象从同一视角拍摄得到的图像。也就是,不同训练图像对应的训练动作参数可以相同可以不同,不同训练图像对应的训练视角可以相同可以不同。
77.具体地,计算机设备可以在本地、或从其他终端、服务器获取目标对象对应的多个训练图像,获取各个训练图像分别对应的训练动作参数和训练视角。计算机设备可以基于
目标对象在同一训练动作参数、不同训练视角下对应的各个训练图像进行模型训练,训练得到的模型可以在该训练动作参数和任意视角下具有优异的表现,也可以预测目标对象在其他动作参数下对应的图像。计算机设备也可以基于目标对象在不同训练动作参数、不同训练视角下对应的各个训练图像进行模型训练,训练得到的模型可以在任意动作参数和任意视角下具有优异的表现。
78.步骤s204,从多个训练图像中确定当前训练图像,将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型。
79.其中,当前训练图像是指当前使用的训练图像。当前训练动作参数是指当前使用的训练图像所对应的训练动作参数,当前训练视角是指当前使用的训练图像所对应的训练视角。初始图像生成模型是指待训练的图像生成模型。图像生成模型的输入数据为动作参数和视角,输出数据为目标对象在该动作参数和该视角下对应的预测图像。
80.具体地,图像生成模型的训练样本包括多个训练图像,基于各个训练图像对图像生成模型进行迭代训练。在每轮训练时,将一张训练图像所对应的训练动作参数和训练视角输入模型,模型输出该训练图像对应的预测图像,基于训练图像和预测图像调整模型的模型参数。在下一轮训练时,将新的训练图像所对应的训练动作参数和训练视角输入上一轮训练中通过调整模型参数得到的新模型,新模型输出该训练图像对应的预测图像,基于训练图像和预测图像调整新模型的模型参数。如此迭代训练,直至满足收敛条件,得到目标图像生成模型。
81.因此,计算机设备可以首先从多个训练图像中随机选取训练图像作为当前训练图像,将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型,经过初始图像生成模型对当前训练动作参数和当前训练视角进行数据处理,输出当前训练图像对应的预测图像。
82.步骤s206,生成当前训练动作参数对应的预测纹理特征体素,基于当前训练视角对预测纹理特征体素进行特征解码,得到预测纹理坐标图像。
83.其中,与像素是数字数据于二维空间分割上的最小单位类似,体素是数字数据于三维空间分割上的最小单位,体素通常可以用立方体来表示。纹理特征体素是指编码有纹理相关信息的三维特征体素。纹理是对象三维表面的一种二维展开,包含了对象表面上的颜色信息。纹理特征体素又可以称为uv体素。
84.纹理坐标图像是指由对象对应的纹理坐标组成的图像。纹理坐标图像中没有对象的颜色信息,也就是,纹理坐标图像并不包含高频信息。对纹理特征体素进行特征解码可以得到纹理坐标。纹理坐标用于在纹理贴图中查找相应坐标对应的纹理数据,基于该纹理数据可以得到对象表面的纹理信息、颜色信息。纹理坐标图像又可以称为uv图像。
85.特征解码用于将纹理特征体素上编码有纹理坐标信息的特征向量解码出对应的纹理坐标。
86.具体地,计算机设备将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型后,在模型中,生成当前训练动作参数对应的预测纹理特征体素,具体可以生成当前训练动作参数对应的对象三维模型,在对象三维模型上附加编码有纹理相关信息的编码数据,基于携带编码数据的对象三维模型生成预测纹理特征体素。预测纹理特征体素上的特征向量没有编码颜色这样的高频信息。因为模型只需要输出目标对象在当前
训练动作参数和当前训练视角对应的彩色图像,所以在模型中基于当前训练视角对预测纹理特征体素进行特征解码,得到当前训练视角对应的预测纹理坐标图像。具体可以基于当前训练视角对预测纹理特征体素进行投影渲染得到当前训练视角对应的二维特征图,对二维特征图中特征进行解码处理得到预测纹理坐标图像。也可以对预测纹理特征体素进行空间渲染得到空间特征图,对空间特征图进行解码处理得到空间纹理坐标图像,基于当前训练视角对空间纹理坐标图像进行投影得到预测纹理坐标图像。
87.在一个实施例中,初始图像生成模型包括纹理特征体素生成网络,将当前训练动作参数输入纹理特征体素生成网络,纹理特征体素生成网络输出当前训练动作参数对应的预测纹理特征体素。进一步的,初始图像生成模型还可以包括特征解码网络,将当前训练视角和预测纹理特征体素输入特征解码网络,特征解码网络输出预测纹理坐标图像。
88.步骤s208,生成当前训练动作参数对应的预测神经纹理贴图,基于预测神经纹理贴图和当前训练视角,对预测纹理坐标图像进行图像转换,得到当前训练图像对应的预测图像。
89.其中,神经纹理贴图是一种可学习的纹理特征图。神经纹理贴图包括多个纹理坐标分别对应的纹理数据。
90.图像转换用于将纹理坐标图像转换为彩色图像,彩色图像可以直观反映出对象表面的纹理。预测图像可以认为是彩色图像、rgb图像。预测图像是指模型预测出的目标对象在当前训练动作参数和当前训练视角下对应的图像。
91.具体地,在模型中得到预测纹理坐标图像后,可以进一步生成当前训练动作参数对应的预测神经纹理贴图。与纹理特征体素和纹理坐标图像不同,神经纹理贴图中编码了颜色信息。因此,基于预测神经纹理贴图和当前训练视角对预测纹理坐标图像进行图像转换可以得到当前训练图像对应的预测图像,得到目标对象在当前训练动作参数和当前训练视角下对应的彩色图像。具体可以基于预测纹理坐标图像从预测神经纹理贴图查找对应的纹理数据,基于当前训练视角将查找到的纹理数据转换为对应视角下的纹理信息、颜色信息,从而最终得到当前训练图像对应的预测图像。
92.在一个实施例中,初始图像生成模型包括纹理贴图生成网络,将当前训练动作参数输入纹理贴图生成网络,纹理贴图生成网络输出当前训练动作参数对应的预测神经纹理贴图。进一步的,初始图像生成模型还可以包括图像转换网络,将预测纹理坐标图像、预测神经纹理贴图和当前训练视角输入图像转换网络,图像转换网络输出当前训练图像对应的预测图像。
93.步骤s210,基于当前训练图像和对应的预测图像生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型。
94.具体地,经过模型的数据处理得到当前训练图像对应的预测图像后,计算机设备可以基于当前训练图像和对应的预测图像生成训练损失,基于训练损失进行反向传播,调整初始图像生成模型的模型参数,得到中间图像生成模型。
95.在一个实施例中,训练损失包括图像损失、感知损失、语义损失、纹理损失和轮廓损失中的至少一种损失。其中,图像损失、感知损失、语义损失、纹理损失和轮廓损失的计算过程可以参照后续相关实施例的内容。
96.步骤s212,将下一训练图像作为当前训练图像,将中间图像生成模型作为初始图
像生成模型,返回将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型的步骤执行,直至满足收敛条件,得到目标图像生成模型;目标图像生成模型用于基于目标对象的目标动作参数和目标视角生成对应的目标图像。
97.具体地,得到中间图像生成模型后,计算机设备可以将下一训练图像作为新的当前训练图像,将中间图像生成模型作为新的初始图像生成模型,返回将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型的步骤执行,得到新的当前训练图像所对应的预测图像,基于新的当前训练图像和对应的预测图像调整新的初始图像生成模型的模型参数,得到新的中间图像生成模型,如此迭代训练,直至满足收敛条件,得到目标图像生成模型。
98.其中,收敛条件可以是用于模型训练的训练图像数量大于预设数量、训练损失小于预设损失等中的至少一种。例如,收敛条件为训练图像数量大于20,在基于第21个训练图像和对应的预测图像生成的训练损失调整模型参数后,得到的模型即为目标图像生成模型。
99.目标图像生成模型是指训练完成的图像生成模型。目标图像生成模型用于基于目标对象的目标动作参数和目标视角生成对应的目标图像,也就是,将目标对象的目标动作参数和目标视角输入目标图像生成模型,目标图像生成模型可以输出目标对象在目标动作参数和目标视角下对应的彩色图像。
100.可以理解,模型中包括两个分支,一个分支用于从三维空间中移除高频纹理,只编码平滑、低频信息,得到预测纹理坐标图像,另一个分支用于编码非平滑、高频信息,将高频纹理编码到神经纹理贴图中,从而基于神经纹理贴图可以将预测纹理坐标图像转换为预测图像、彩色图像。通过迭代训练,模型可以生成编码有准确纹理坐标的纹理特征体素,基于视角对预测纹理特征体素进行特征解码可以得到准确的纹理坐标图像。纹理坐标是平滑且与视角无关的信息,是低频信息。同时,通过迭代训练,模型可以生成准确的神经纹理贴图,与动作相关的神经纹理贴图编码了高度细节化的外观信息、纹理信息,用于将uv图像转换为rgb图片,基于神经纹理贴图和视角对纹理坐标图像进行图像转换可以得到准确的彩色图像。对于同一对象的不同动作,神经纹理贴图中编码的细节外观是空间对齐的。一个对象表面的纹理坐标不会随着时间而改变,这意味着在不同时刻下,纹理贴图上的一个区域、一个色块对应到三维对象表面上的是同一个点或区域。因此,即使模型的训练数据只包括稀疏的视角、若干个视角,最终训练得到的模型也可以预测任意视角、训练视角之外的新视角所对应的彩色图像。基于目标图像生成模型可以生成目标对象的自由视点视频。
101.上述图像生成模型训练方法中,将目标对象的某一训练图像所对应的训练动作参数和训练视角输入模型,模型预测目标对象在训练动作参数和训练视角下对应的彩色图像,基于目标对象在训练动作参数和训练视角下对应的真实图像(即训练图像)和预测图像生成训练损失来调整模型,可以让模型输出与真实图像近似的预测图像,通过迭代训练,最终训练得到的模型可以预测目标对象在任意动作参数和任意视角下对应的图像,通过模型来生成图像可以提高图像生成效率。进一步的,在模型的预测过程中,基于三维的纹理特征体素得到二维的纹理坐标图像,将某一视角对应的图像平面中每个特征分别转换为其对应的纹理坐标,基于预测神经纹理贴图和视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目
标对象在一定视角和一定动作下的彩色图像,这样从三维空间转换到二维空间进行数据处理,可以有效降低数据处理压力,进一步提高图像生成效率。
102.在一个实施例中,生成当前训练动作参数对应的预测纹理特征体素,包括:
103.生成当前训练动作参数对应的对象三维模型;对象三维模型携带几何编码数据;对对象三维模型进行卷积处理,得到预测纹理特征体素。
104.其中,对象三维模型是指目标对象对应的三维模型,例如,若目标对象为人体,对象三维模型可以是smpl模型、人体骨架等人体模型。几何编码数据是模型可学习的编码数据,是体素化和结构化的隐式编码,是不随时间变化的隐式编码。几何编码数据用于编码对象的几何信息,具有纹理坐标的几何信息。可以理解,初始的几何编码数据可以是随机初始化的,模型经过迭代训练,最终学习到的几何编码数据中成功隐含了目标对象的几何信息、纹理坐标信息。
105.具体地,模型获取到当前训练动作参数后,生成当前训练动作参数对应的对象三维模型,将几何编码数据锚定在对象三维模型上,将锚定了几何编码数据的对象三维模型进行卷积处理,得到预测纹理特征体素。
106.在一个实施例中,可以将体素化的不随时间变化的隐式编码附加在对象三维模型的顶点上,例如,若对象三维模型为smpl模型,可以将隐式编码附加在smpl模型的关节点上。
107.在一个实施例中,可以对对象三维模型进行三维稀疏卷积处理,通过三维稀疏卷积处理将锚定了隐式编码的对象三维模型编码为三维特征体素。三维稀疏卷积处理可以提高数据处理效率。
108.可以理解,对象三维模型可以认为是携带有不连续的几何编码数据,例如,只有三维模型的顶点上携带有编码数据,而通过卷积处理得到的预测纹理特征体素可以认为是携带有连续的几何编码数据,例如,三维模型的每个点上都携带有编码数据。
109.上述实施例中,可以通过对携带几何编码数据的对象三维模型进行卷积处理得到预测纹理特征体素。
110.在一个实施例中,基于当前训练视角对预测纹理特征体素进行特征解码,得到预测纹理坐标图像,包括:
111.基于当前训练视角对预测纹理特征体素进行渲染处理,得到预测二维特征图;对预测二维特征图进行解码处理,得到预测纹理坐标图像。
112.其中,渲染处理用于将三维特征体素渲染成二维特征图。渲染处理可以采用各种体素渲染技术,也可以采用自定义的渲染方式。解码处理用于从二维特征图的各个特征向量中解码出纹理坐标。
113.具体地,在对预测纹理特征体素进行特征解码时,可以先基于当前训练视角对预测纹理特征体素进行渲染处理,从当前训练视角的方向对预测纹理特征体素进行投影渲染,将三维空间上的特征向量转换为二维空间上的特征向量,得到预测二维特征图,再对预测二维特征图进行解码处理,从二维的特征向量中解码出纹理坐标,得到预测纹理坐标图像。
114.上述实施例中,通过渲染处理将三维特征体素转换为二维特征图,再对预测二维特征图进行解码处理可以快速得到纹理坐标图像。
115.在一个实施例中,基于当前训练视角对预测纹理特征体素进行渲染处理,得到预测二维特征图,包括:
116.基于当前训练视角对应的多个光线,对预测纹理特征体素进行采样处理,得到各个光线分别对应的多个采样点;对预测纹理特征体素中各个采样点对应的特征向量进行特征处理,得到各个采样点对应的预测密度;基于各个光线分别对应的各个采样点所对应的预测密度和特征向量生成预测二维特征图。
117.其中,光线上的每个点的密度可以理解为可微的不透明度,用于控制光线在该点积累的辐射。采样点的密度用于表示光线在该采样点处是否到达对象表面。采样点的密度越大,表明光线越容易终止,即采样点已到达对象表面,并且越不容易穿过对象表面。
118.具体地,从一个视角可以发出多个光线,可以通过可微的光线步进将纹理特征体素渲染为二维特征图。因此,在进行渲染处理时,可以基于当前训练视角对应的多个光线,对预测纹理特征体素进行采样处理,沿着光线在预测纹理特征体素的近边界和原边界之间采样多个点,从而得到各个光线分别对应的多个采样点。其中,当一个光线穿过预测纹理特征体素的包围盒的两个平面,可以得到两个交点,近的交点称为近边界,远的交点称为远边界。进一步的,在预测纹理特征体素中可以查询到各个采样点分别对应的特征向量,对预测纹理特征体素中各个采样点对应的特征向量进行特征处理,可以得到各个采样点分别对应的预测密度。最终,基于各个光线分别对应的各个采样点所对应的预测密度和特征向量可以生成各个光线对应的综合特征向量,将一个光线和对应的综合特征向量作为二维特征图中一个像素和对应的像素信息、特征信息,基于各个光线可以得到多个像素,由各个像素组成预测二维特征图。
119.在一个实施例中,对于每一个训练图像,提供一个由对象动作参数化的摆着动作的对象三维模型和一组锚定在其顶点上的隐层编码z,然后在生成的uv体素中的某一点x处查询特征向量f(x,z,θ
t
),再将查询得到的特征向量输入浅层的mlpm
σ
中以预测密度。预测密度的计算公式如下:
120.σ
t
(x)=m
σ
(f(x,z,θ
t
))
121.其中,mlp是多层感知器,也可以称为图像生成模型,m
σ
表示图像生成模型中的一种网络,用于预测采样点对应的密度。
122.上述实施例中,基于当前训练视角对应的多个光线,对预测纹理特征体素进行采样处理,得到各个光线分别对应的多个采样点,对预测纹理特征体素中各个采样点对应的特征向量进行特征处理,得到各个采样点对应的预测密度,基于各个光线分别对应的各个采样点所对应的预测密度和特征向量可以快速生成预测二维特征图。
123.在一个实施例中,基于各个光线分别对应的各个采样点所对应的预测密度和特征向量生成预测二维特征图,包括:
124.从各个光线中确定目标光线;从目标光线对应的各个采样点中确定目标采样点;基于目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量,得到目标采样点对应的纹理坐标子特征;将下一采样点作为目标采样点,返回基于目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量,得到目标采样点对应的纹理坐标子特征的步骤执行,直至得到目标光线对应的各个采样点的纹理坐标子特征;基于目标光线对应的各个采样点的纹理坐标子特征得到目标光线对应的纹理坐标特
征;将下一光线作为目标光线,返回从目标光线对应的各个采样点中确定目标采样点的步骤执行,直至得到各个光线对应的纹理坐标特征;基于各个光线对应的纹理坐标特征生成预测二维特征图。
125.具体地,在生成预测二维特征图时,基于同一光线对应的各个采样点所对应的预测密度和特征向量生成光线对应的纹理坐标特征,将光线和对应的纹理坐标特征作为特征图中的像素和对应的像素信息,基于各个像素和对应的像素信息得到预测二维特征图。
126.首先,从各个光线中随机选取一个光线作为目标光线,从目标光线对应的各个采样点中选取第一个采样点作为目标采样点,基于目标采样点对应的预测密度和特征向量生成目标光线的第一个采样点对应的纹理坐标子特征,此时,可以认为没有历史采样点。从目标光线对应的各个采样点中选取第二个采样点作为目标采样点,基于目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量生成目标光线的第二个采样点对应的纹理坐标子特征,此时,历史采样点为目标光线的第一个采样点。从目标光线对应的各个采样点中选取第三个采样点作为目标采样点,基于目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量生成目标光线的第三个采样点对应的纹理坐标子特征,此时,历史采样点为目标光线的第一个采样点和第二个采样点。以此类推,最终可以计算得到目标光线的各个采样点对应的纹理坐标子特征,融合目标光线对应的各个采样点的纹理坐标子特征可以得到目标光线对应的纹理坐标特征。其中,历史采样点是指已确定对应的纹理坐标子特征的采样点。在计算目标采样点对应的纹理坐标子特征时可以通过融合目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量得到。
127.接着,从各个光线中选取下一个光线作为目标光线,重复上述过程,得到新的目标光线对应的纹理坐标特征,以此类推,最终可以计算得到各个光线分别对应的纹理坐标特征。
128.最后,基于各个光线对应的纹理坐标特征生成各个光线对应的像素的特征信息,基于各个像素和对应的特征信息得到预测二维特征图。
129.在一个实施例中,沿光线r在基于uv体素获得的近边界和远边界之间采样ni个点对于第t个训练图像,预测二维特征图中光线r对应的像素处的特征信息的计算公式如下:
[0130][0131][0132]
其中,δi=||x
i 1-xi||2,表示相邻采样点之间的距离。σ
t
(xi)表示采样点xi对应的预测密度。ti表示光线r基于采样点xi之前各个采样点计算得到的累积透明度。f(xi,z,θ
t
)表示采样点xi对应的特征向量。表示光线r对应的纹理坐标特征,即预测二维特征图中光线r对应的像素的特征信息、像素信息。
[0133]
上述实施例中,先计算同一光线的各个采样点分别对应的纹理坐标子特征,再融合各个采样点分别对应的纹理坐标子特征得到光线对应的纹理坐标特征,最后基于各个光线对应的纹理坐标特征可以快速生成预测二维特征图。
[0134]
在一个实施例中,对预测二维特征图进行解码处理,得到预测纹理坐标图像,包括:
[0135]
对预测二维特征图中各个像素的特征信息进行解码处理,得到目标对象的多个对象部位对应的预测纹理坐标;基于各个对象部位对应的预测纹理坐标生成预测纹理坐标图像。
[0136]
其中,解码处理用于从特征信息中解码出纹理坐标。可以理解,目标对象可以认为是由多个对象部位组合而成,例如,若目标对象为人体,人体是由左手、右手、前胸、后背等人体部位组成,若目标对象为植物,植物是由根、茎、叶等部位组成。
[0137]
具体地,在进行解码处理时,可以对预测二维特征图中各个像素的特征信息进行解码处理,得到各个像素分别对应的对象部位和预测纹理坐标,从而得到目标对象的多个对象部位分别对应的预测纹理坐标。最后,基于各个对象部位对应的预测纹理坐标生成预测纹理坐标图像。
[0138]
在一个实施例中,对预测二维特征图中像素的特征信息进行解码处理还可以得到像素对应的对象部位的预测概率。对一个像素的特征信息进行解码处理,可以得到该像素在各个对象部位上的预测概率,可以将预测概率最大的对象部位作为该像素最终对应的对象部位。
[0139]
在一个实施例中,为了生成uv图像,利用mlpm
uv
将二维特征图中所有像素逐个解码为其相应的纹理坐标。纹理坐标可以表示为:
[0140][0141]
其中,p表示对应的对象部位,u和v表示对应的uv坐标,即纹理坐标。m
uv
表示图像生成模型中的一种网络,用于进行解码处理。
[0142]
上述实施例中,对预测二维特征图中各个像素的特征信息进行解码处理,得到目标对象的多个对象部位对应的预测纹理坐标,基于各个对象部位对应的预测纹理坐标可以快速生成预测纹理坐标图像。
[0143]
在一个实施例中,预测纹理坐标图像包括目标对象的多个对象部位对应的预测纹理坐标。基于预测神经纹理贴图和当前训练视角,对预测纹理坐标图像进行图像转换,得到当前训练图像对应的预测图像,包括:
[0144]
基于各个对象部位对应的预测纹理坐标,从预测神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据;基于各个对象部位对应的预测纹理数据得到各个对象部位对应的球谐系数;基于球谐系数和当前训练视角对各个对象部位进行颜色创建,得到当前训练图像对应的预测图像。
[0145]
其中,球谐系数用于重建对象部位在图像中的颜色。
[0146]
具体地,预测纹理坐标图像包括目标对象的多个对象部位对应的预测纹理坐标,神经纹理贴图包括多个纹理坐标分别对应的纹理数据。因此,在对预测纹理坐标图像进行图像转换时,可以基于各个对象部位对应的预测纹理坐标,从预测神经纹理贴图中查找对
应的纹理数据,得到各个对象部位分别对应的预测纹理数据,进而对各个对象部位分别对应的预测纹理数据进行数据处理得到各个对象部位分别对应的球谐系数。例如,可以将一个对象部位对应的预测纹理数据输入球谐系数计算网络,球谐系数计算网络输出该对象部位对应的球谐系数。最后,可以基于球谐系数和当前训练视角对各个对象部位进行颜色创建,重建各个对象部位对应的颜色信息,基于各个对象部位对应的颜色信息得到当前训练图像对应的预测图像。
[0147]
上述实施例中,基于各个对象部位对应的预测纹理坐标,从预测神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据,基于各个对象部位对应的预测纹理数据得到各个对象部位对应的球谐系数,基于球谐系数和当前训练视角对各个对象部位进行颜色创建,可以快速得到当前训练图像对应的预测图像。
[0148]
在一个实施例中,基于各个对象部位对应的预测纹理坐标,从预测神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据,包括:
[0149]
基于各个对象部位对应的预测纹理坐标,对所述预测神经纹理贴图进行插值处理,得到连续神经纹理贴图;基于各个对象部位对应的预测纹理坐标,从连续神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据。
[0150]
具体地,通过特征解码得到的各个对象部位对应的预测纹理坐标可以认为是连续的纹理坐标,但是预测神经纹理贴图通常分辨率是有限的,预测神经纹理贴图中包括有限数目的纹理坐标所对应的纹理数据。为了进一步提高预测图像的精度,可以基于连续的纹理坐标对预测神经纹理贴图中的纹理数据进行插值处理,将预测神经纹理贴图转换为更高分辨率的图像,得到连续神经纹理贴图。相比于预测神经纹理贴图,连续神经纹理贴图中包括更多数目的纹理坐标所对应的纹理数据。进而,通过连续的纹理坐标可以在连续神经纹理贴图中查找到更多的纹理数据,进而基于丰富的纹理数据可以重建出更精细的预测图像。
[0151]
因此,在查找纹理数据时,可以基于各个对象部位对应的预测纹理坐标对预测神经纹理贴图进行插值处理,用连续的uv坐标对预测神经纹理贴图上的任意一个位置做插值,以求任意位置上的纹理嵌入、纹理数据,从而得到连续神经纹理贴图,然后基于各个对象部位对应的预测纹理坐标,从连续神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据,如此得到的预测纹理数据包含更丰富的纹理信息,有助于提高预测图像的质量。
[0152]
其中,插值处理可以采用各种插值算法,例如,双线性插值。
[0153]
上述实施例中,通过插值处理可以提高神经纹理贴图的分辨率,基于预测纹理坐标可以从分辨率更高的神经纹理贴图中查找到更多的纹理数据,基于丰富的纹理数据可以生成高质量的预测图像。
[0154]
在一个实施例中,基于各个对象部位对应的预测纹理数据得到各个对象部位对应的球谐系数,包括:
[0155]
对各个对象部位对应的预测纹理坐标进行编码处理,得到各个对象部位对应的目标纹理坐标;对同一对象部位对应的预测纹理数据和目标纹理坐标进行特征处理,得到各个对象部位对应的球谐系数。
[0156]
其中,编码处理用于得到更高频的信息。例如,编码处理可以是傅里叶变换处理。
[0157]
具体地,球谐系数用于重建颜色,颜色是高频信息,而纹理坐标是低频信息。为了提高重建质量,先对各个对象部位对应的预测纹理坐标进行编码处理,将低频信息转换为高频信息,得到各个对象部位对应的目标纹理坐标,再对同一对象部位对应的预测纹理数据和目标纹理坐标进行特征处理,得到各个对象部位在每个颜色通道上的球谐系数。
[0158]
在一个实施例中,可以将一个对象部位对应的预测纹理数据和目标纹理坐标输入球谐系数计算网络,球谐系数计算网络输出该对象部位对应的球谐系数。这样,球谐系数计算网络的输入数据和输出数据都包括高频信息,相比于输入数据为低频信息但输出数据为高频信息,输入数据和输出数据都包括高频信息更有利于模型的学习,模型可以更容易学习到输入和输出之间的映射关系。
[0159]
上述实施例中,基于同一对象部位对应的预测纹理数据和目标纹理坐标进行特征处理,得到各个对象部位对应的球谐系数,可以提高球谐系数的准确性。
[0160]
在一个实施例中,基于球谐系数和当前训练视角对各个对象部位进行颜色创建,得到当前训练图像对应的预测图像,包括:
[0161]
将球谐系数和当前训练视角输入球谐模型,得到各个对象部位对应的初始颜色;对各个对象部位对应的初始颜色进行归一化处理,得到各个对象部位对应的目标颜色;基于各个对象部位对应的目标颜色得到预测图像。
[0162]
其中,球谐模型记录了任意视角下,各种球谐系数对应的颜色信息。将任意对象部位对应的球谐系数和当前训练视角输入球谐模型,球谐模型可以输出该对象部位对应的颜色信息。球谐模型又可以称为球谐函数。归一化处理可以采用各种归一化算法,例如,sigmoid函数。
[0163]
具体地,在进行颜色创建时,可以将一个对象部位对应的球谐系数和当前训练视角输入球谐模型,得到该对象部位对应的初始颜色,有多个对象部位就可以得到各个对象部位分别对应的初始颜色。可以直接基于各个对象部位对应的初始颜色得到预测图像。但是,为了进一步保障预测图像的颜色平滑,可以再对各个对象部位对应的初始颜色进行归一化处理,得到各个对象部位对应的目标颜色,最终基于各个对象部位对应的目标颜色得到预测图像。
[0164]
上述实施例中,先计算出初始颜色,再对初始颜色进行归一化处理得到目标颜色,基于目标颜色生成预测图像,可以提高预测图像的质量。
[0165]
在一个实施例中,为了对纹理中的动态细节进行建模,以动作参数θ
t
作为cnn生成器的输入,利用cnn生成器生成与动作相关的神经纹理贴图:
[0166][0167]
其中,表示神经纹理贴图,g表示cnn生成器,cnn生成器可以表示图像生成模型中的一种网络,用于生成神经纹理贴图。可以将对象表面细分为nk个部分。例如,nk=24,k是一个one-hot向量,用于表示第k个对象部位。从二维特征图中预测的对象部位可以被理解为该像素属于第k个对象部位的概率,其定义为从二维特征图中预测的坐标和对应于第k个对象部位的uv坐标。
[0168]
进一步的,在非整的uv坐标上对纹理嵌入以分段可微的方式进行采样,具体可以
采用双线性插值的方法。基于uv坐标从神经纹理贴图中查找对应的纹理数据、纹理嵌入:
[0169][0170]
为了建模目标对象在运动时的高频颜色,将位置编码γ()应用于uv坐标,然后将编码的uv坐标和采样得到的纹理嵌入一起输入mlpmc,来解码每个颜色通道的球谐系数η:
[0171][0172]
其中球谐函数(η0,η1,
…
,ηn)构成了在球面上定义的函数的正交基,第一个谐波系数η0编码了漫反射颜色,其余的谐波系数编码了镜面反射颜色。给定一个视角d,相机光线r投射在像平面上的像素与视角有关的颜色可以在所需视角上查询镜面球谐函数sh来确定:
[0173][0174]
其中s是sigmoid函数,用于归一化颜色。
[0175]
进一步的,通过对nk个对象部位的解码后的颜色进行加权组合,重建每个像素的颜色其中将对象部位类别作为权重:
[0176][0177]
最后,收集所有光线的结果,第t个训练图像的完整渲染图像为
[0178]
在一个实施例中,基于当前训练图像和对应的预测图像生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型,包括:
[0179]
基于当前训练图像和对应的预测图像生成第一损失;获取当前训练图像对应的参考纹理坐标图像,基于参考纹理坐标图像和预测纹理坐标图像生成第二损失;基于第一损失和第二损失生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型。
[0180]
具体地,参考纹理坐标图像是指比较准确、可靠的纹理坐标图像,用于作为预测纹理坐标图像的监督信号。当前训练图像是目标对象在当前训练动作参数和当前训练视角下对应的真实图像,用于作为对应的预测图像的监督信号。因此,计算机设备可以基于当前训练图像和对应的预测图像生成第一损失,基于参考纹理坐标图像和预测纹理坐标图像生成第二损失,例如,将当前训练图像和对应的预测图像之间的差异作为第一损失,将参考纹理坐标图像和预测纹理坐标图像之间的差异作为第二损失。计算机设备基于第一损失和第二损失生成训练损失,基于训练损失调整初始图像生成模型的模型参数,调整目标是使得预测图像和对应的训练图像越来越接近,预测纹理坐标图像和对应的预测纹理坐标图像越来越接近,即使得训练损失变小,将调整模型参数后的模型作为中间图像生成模型。
[0181]
在一个实施例中,可以将当前训练图像输入用于生成纹理坐标图像的成熟模型,
将模型输出的纹理坐标图像作为参考纹理坐标图像。
[0182]
上述实施例中,训练损失包括第一损失和第二损失,第一损失和第二损失是基于不同的信息生成的,是不同的损失,有助于提高模型的训练质量。
[0183]
在一个实施例中,基于当前训练图像和对应的预测图像生成第一损失,包括:
[0184]
基于当前训练图像和对应的预测图像之间的差异生成图像损失;分别对当前训练图像和对应的预测图像进行特征图提取,得到第一特征图和第二特征图,基于第一特征图和第二特征图之间的差异生成感知损失;基于图像损失和感知损失生成第一损失。
[0185]
具体地,第一损失是基于图像损失和感知损失生成的。图像损失是基于当前训练图像和对应的预测图像之间的原图信息差异生成的。计算机设备可以基于当前训练图像和对应的预测图像之间的差异生成图像损失,例如,计算当前训练图像和对应的预测图像之间对应像素的特征差值作为图像损失。感知损失是基于分别由当前训练图像和对应的预测图像得到的中间图像之间的差异生成的。计算机设备可以分别提取当前训练图像和预测图像的特征图,基于当前训练图像对应的第一特征图和预测图像对应的第二特征图之间的差异生成感知损失,例如,计算第一特征图和第二特征图之间对应像素的特征差值作为感知损失。最终,计算机设备可以融合图像损失和感知损失得到第一损失,例如,将图像损失和感知损失的总和作为第一损失。
[0186]
在一个实施例中,图像损失的计算公式如下:
[0187][0188]
其中,表示预测图像,i
t
表示当前训练图像。表示计算的l2范数。
[0189]
感知损失的计算公式如下:
[0190][0191]
其中,表示预测图像对应的特征图,即第二特征图,ψ(i
t
)表示当前训练图像对应的特征图,即第一特征图。表示计算的l1范数。
[0192]
在一个实施例中,可以利用预训练好的固定的vgg网络提取训练图像和预测图像的特征图。
[0193]
上述实施例中,训练损失包括图像损失和感知损失,图像损失和感知损失可以提高模型对于彩色图像的预测准确性,进而提高模型的训练质量。
[0194]
在一个实施例中,预测纹理坐标图像包括目标对象的多个对象部位对应的预测纹理坐标和预测概率,参考纹理坐标图像包括目标对象的多个对象部位对应的参考纹理坐标和参考概率。基于参考纹理坐标图像和预测纹理坐标图像生成第二损失,包括:
[0195]
基于参考纹理坐标图像和预测纹理坐标图像中同一对象部位对应的参考概率和预测概率生成语义损失;基于参考纹理坐标图像和预测纹理坐标图像中同一对象部位对应的参考纹理坐标和预测纹理坐标、参考纹理坐标图像中各个对象部位对应的参考概率生成纹理损失;基于语义损失和纹理损失生成第二损失。
[0196]
其中,预测纹理坐标图像包括目标对象的多个对象部位对应的预测纹理坐标和预测概率,参考纹理坐标图像包括目标对象的多个对象部位对应的参考纹理坐标和参考概
率。纹理损失又可以称为uv损失。
[0197]
具体地,第二损失是基于语义损失和纹理损失生成的。计算机设备可以基于参考纹理坐标图像和预测纹理坐标图像中同一对象部位对应的参考概率和预测概率生成语义损失,例如,基于同一对象部位对应的参考概率和预测概率之间的差值生成语义损失。计算机设备可以基于参考纹理坐标图像和预测纹理坐标图像中同一对象部位对应的参考纹理坐标和预测纹理坐标、参考纹理坐标图像中各个对象部位对应的参考概率生成纹理损失,例如,基于同一对象部位对应的参考纹理坐标和预测纹理坐标之间的差值、以及各个对象部位对应的参考概率生成纹理损失。最终,计算机设备可以融合语义损失和纹理损失得到第二损失,例如,将语义损失和纹理损失的总和作为第二损失。
[0198]
在一个实施例中,为了热启动uv体素,引导uv体素正确地初始化并正则化其解空间,可以利用了预训练好的densepose模型(姿态转换模型)。densepose模型建立了人体表面与图像之间的稠密对应关系,densepose模型用于生成输入图像对应的纹理坐标图像。因此,可以将当前训练图像输入densepose模型,生成denspose模型定义下的uv图像,将该uv图像作为参考uv图像,将参考uv图像作为伪监督,使用语义损失l
p
、基于参考uv图像和预测uv图像之间的纹理损失l
uv
作为指导,以规范化uv体素。
[0199][0200][0201]
其中,表示针对第t个训练图像,第k个对象部位对应的参考概率,表示针对第t个训练图像,第k个对象部位对应的预测概率。和表示针对第t个训练图像,第k个对象部位对应的预测纹理坐标,和表示针对第t个训练图像,第k个对象部位对应的参考纹理坐标。l
p
是一个多分类交叉熵损失,以鼓励模型渲染出的对象部位与densepose模型预测的对象部位的类别保持一致,l
uv
有助于鼓励模型渲染具有连续性的uv坐标。
[0202]
上述实施例中,训练损失包括语义损失和纹理损失,语义损失可以提高模型对于对象部位的预测准确性,纹理损失可以提高模型对于对象部位的uv坐标的预测准确性,进而提高模型的训练质量。
[0203]
在一个实施例中,训练损失还包括轮廓损失,轮廓损失是基于当前训练图像对应的对象掩膜图像和预测纹理特征体素生成的。
[0204]
其中,对象掩膜图像是由0和1组成的一个二进制图像。在对象掩膜图像中,目标对象所在图像区域对应的像素数据为0,其他图像区域对应的像素数据为1。
[0205]
具体地,训练损失还包括轮廓损失,轮廓损失是基于当前训练图像对应的对象掩膜图像和预测纹理特征体素生成的,轮廓损失可以促进uv体素对人体几何形状的建模更为精细。计算机设备可以基于预测纹理特征体素生成预测掩模图像,基于预测掩模图像和对象掩膜图像之间的差异生成轮廓损失。
[0206]
在一个实施例中,轮廓损失的计算公式如下:
[0207][0208][0209]
其中,s
t
表示第t个训练图像对应的对象掩膜图像。t
t
(r)表示光线r的累积透射率,是基于光线r对应的各个采样点之间的距离和预测密度生成的。在目标对象所在区域,累积透射率的期望值为0,在其他区域,累积透射率的期望值为1。
[0210]
上述实施例中,训练损失还包括轮廓损失,轮廓损失可以促进uv体素对人体几何形状的建模更为精细,进而提高模型的训练质量。
[0211]
在一个实施例中,如图3所示,提供了一种图像生成方法,以该方法应用于计算机设备来举例说明,该计算机设备可以是上述图1中的终端102或服务器104。参考图3,图像生成方法包括以下步骤:
[0212]
步骤s302,获取目标对象对应的目标动作参数和目标视角。
[0213]
步骤s304,将目标动作参数和目标视角输入目标图像生成模型,得到目标对象在目标动作参数和目标视角下对应的目标图像。
[0214]
其中,目标图像生成模型的训练过程如下:获取目标对象对应的多个训练图像,训练图像存在对应的训练动作参数和训练视角;从多个训练图像中确定当前训练图像,将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型;生成当前训练动作参数对应的预测纹理特征体素,基于当前训练视角对预测纹理特征体素进行特征解码,得到预测纹理坐标图像;生成当前训练动作参数对应的预测神经纹理贴图,基于预测神经纹理贴图和当前训练视角,对预测纹理坐标图像进行图像转换,得到当前训练图像对应的预测图像;基于当前训练图像和对应的预测图像生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型;将下一训练图像作为当前训练图像,将中间图像生成模型作为初始图像生成模型,返回将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型的步骤执行,直至满足收敛条件,得到目标图像生成模型。
[0215]
可以理解,目标图像生成模型的训练过程可以参照前述图像生成模型方法各个实施例的内容,此处不再赘述。
[0216]
具体地,计算机设备可以借助训练好的目标图像生成模型来生成自由视点视频。计算机设备可以获取目标对象对应的目标动作参数和目标视角,将目标动作参数和目标视角输入目标图像生成模型,模型输出目标对象在目标动作参数和目标视角下对应的目标图像。可以理解,目标视角可以是训练过程中使用的训练视角,也可以是新视角,例如,输入新的视角来生成目标对象在训练动作参数和新视角下的彩色图像。目标动作参数可以是训练过程中使用的训练动作参数,也可以是新的动作参数,例如,输入新的动作参数来对目标对象进行动作编辑。
[0217]
将目标动作参数和目标视角输入目标图像生成模型,目标图像生成模型可以生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解
码,得到目标纹理坐标图像,生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像,目标图像生成模型输出目标图像。
[0218]
上述图像生成方法,通过将目标对象对应的目标动作参数和目标视角输入训练好的目标图像生成模型,得到目标对象在目标动作参数和目标视角下对应的目标图像,通过模型来生成图像可以提高图像生成效率。进一步的,在训练模型输出预测图像时,基于三维的纹理特征体素得到二维的纹理坐标图像,将某一视角对应的图像平面中每个特征分别转换为其对应的纹理坐标,基于预测神经纹理贴图和视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目标对象在一定视角和一定动作下的彩色图像,这样从三维空间转换到二维空间进行数据处理,可以有效降低数据处理压力,进一步提高图像生成效率。
[0219]
在一个实施例中,所述方法还包括:
[0220]
获取形状参数,将形状参数、目标动作参数和目标视角输入目标图像生成模型;生成目标动作参数和形状参数对应的第一对象三维模型,基于第一对象三维模型得到第一纹理特征体素,基于目标视角对第一纹理特征体素进行特征解码,得到第一纹理坐标图像;生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对第一纹理坐标图像进行图像转换,得到目标对象在目标动作参数、目标视角和形状参数下对应的第一图像。
[0221]
其中,形状参数用于编辑目标对象的形状。形状参数可以是自定义的参数,也可以是随机生成的。
[0222]
具体地,可以通过形状参数来对目标对象进行形状编辑。计算机设备可以获取形状参数,将形状参数、目标动作参数和目标视角输入目标图像生成模型,目标图像生成模型可以输出目标对象在目标动作参数、目标视角和形状参数下对应的第一图像。形状编辑具体可以通过改变对象三维模型的形状参数来编辑目标对象的对象形状。在目标图像生成模型中,首先生成目标动作参数和形状参数对应的第一对象三维模型,基于第一对象三维模型得到第一纹理特征体素,基于目标视角对第一纹理特征体素进行特征解码,得到第一纹理坐标图像,同步生成目标动作参数对应的目标神经纹理贴图,最后基于目标神经纹理贴图和目标视角,对第一纹理坐标图像进行图像转换,得到第一图像。
[0223]
可以理解,模型内部的数据处理可以参照前述图像生成模型方法各个实施例的内容,此处不再赘述。
[0224]
上述实施例中,目标图像生成模型还可以处理形状编辑任务,应用能力较强。
[0225]
在一个实施例中,所述方法还包括:
[0226]
获取纹理样式,将纹理样式、目标动作参数和目标视角输入目标图像生成模型;生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像;生成目标动作参数对应的目标神经纹理贴图,基于纹理样式更新目标神经纹理贴图,得到更新神经纹理贴图,基于更新神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数、目标视角和纹理样式下对应的第二图像。
[0227]
其中,纹理样式用于编辑目标对象的纹理。纹理样式可以是自定义的样式,也可以
是随机生成的。
[0228]
具体地,可以通过纹理样式来对目标对象进行纹理编辑。计算机设备可以获取纹理样式,将纹理样式、目标动作参数和目标视角输入目标图像生成模型,目标图像生成模型可以输出目标对象在目标动作参数、目标视角和纹理样式下对应的第二图像。纹理编辑具体可以通过更新神经纹理贴图,在神经纹理贴图上绘制图形来编辑纹理。通过学习到的uv体素和神经纹理贴图之间的稠密的对应关系,模型可以利用人为提供的2d纹理来编辑3d布料。在目标图像生成模型中,首先生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像,同步生成目标动作参数对应的目标神经纹理贴图,并基于纹理样式更新目标神经纹理贴图,得到更新神经纹理贴图,最后基于更新神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到第二图像。
[0229]
可以理解,模型内部的数据处理可以参照前述图像生成模型方法各个相关实施例的内容,此处不再赘述。
[0230]
上述实施例中,目标图像生成模型还可以处理纹理编辑任务,应用能力较强。
[0231]
在一个实施例中,如图4所示,提供了一种图像生成方法,以该方法应用于计算机设备来举例说明,该计算机设备可以是上述图1中的终端102或服务器104。参考图4,图像生成方法包括以下步骤:
[0232]
步骤s402,获取目标对象对应的目标动作参数和目标视角。
[0233]
步骤s404,生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像。
[0234]
步骤s406,生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像。
[0235]
具体地,计算机设备可以基于图像生成算法来生成自由视点视频。计算机设备可以在本地、或从其他终端、服务器上获取目标对象对应的目标动作参数和目标视角,基于算法生成目标动作参数对应的目标纹理特征体素和目标动作参数对应的目标神经纹理贴图,再基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像,最后基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像。
[0236]
可以理解,生成目标纹理特征体素、对目标纹理特征体素进行特征解码、生成目标神经纹理贴图、对目标纹理坐标图像进行图像转换的具体过程都可以参照前述图像生成模型训练方法的各个相关实施例的内容,此处不再赘述。前述图像生成模型训练方法的各个相关实施例所述的方法不仅可以由一个模型实现,也可以由多个模型实现,例如,可以分别单独训练用于生成目标纹理特征体素和目标神经纹理贴图的模型,还可以设计相应算法或公式来实现。
[0237]
上述图像生成方法,通过获取目标对象对应的目标动作参数和目标视角;生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像;生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目
标视角下对应的目标图像。这样,基于三维的纹理特征体素得到二维的纹理坐标图像,将目标视角和目标动作对应的图像平面中每个特征分别转换为其对应的纹理坐标,基于预测神经纹理贴图和目标视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目标对象在目标视角和目标动作下的彩色图像,这样从三维空间转换到二维空间进行数据处理,可以有效降低数据处理压力,提高图像生成效率。
[0238]
在一个具体的实施例中,本技术的图像生成模型训练方法和图像生成方法可以应用于实时渲染表演者在运动时的自由视点视频,且支持对视频中的表演者进行动作编辑、身体形状编辑和衣服纹理编辑的操作。给定一位表演者的多视角视频,通过训练好的模型可以生成支持实时渲染的可编辑自由视点视频。
[0239]
参考图5,模型有两条主要分支:一个分支用于将体素化的不随时间变化的隐式编码附加在smpl模型的顶点上,三维稀疏卷积将隐式编码编码为一个3d特征体素,该体素通过可微的光线步进可以渲染出二维特征图,接着对uv图像进行逐像素解码可以得到纹理坐标图像(即uv图像);另一个分支用于生成一个与动作相关的神经纹理贴图,该神经纹理贴图中编码了高度细节化的外观信息,该神经纹理贴图用于将uv图像转换为最终的rgb图片。
[0240]
模型的输入数据为动作参数和视角,输出数据为预测图像。在模型中,生成仅对密度和纹理坐标(即uv坐标)而非人体外观进行编码的uv体素,通过射线投射将uv体素渲染和解码为uv图像。给定生成的uv图像,采用被编码为隐式神经表示的连续的纹理贴图来重建彩色图像,使用uv图像中的uv坐标从二维的神经纹理贴图中查询对应的rgb值以重建彩色图像。
[0241]
模型训练时的监督信号包括真值图像和参考uv图像。
[0242]
针对分支一:首先将不随时间变化的隐式编码锚定到一个摆着动作的smpl模型上,接着体素化smpl模型,并将其作为稀疏卷积的输入,利用三维稀疏卷积神经网络将体素化的隐式编码编码为一个三维特征体素,该体素称为uv体素。接着,在生成的uv体素中的某一点x处查询特征向量f(x,z,θ
t
),再将查询得到的特征向量输入浅层的mlpm
σ
中以预测密度:σ
t
(x)=m
σ
(f(x,z,θ
t
))。然后,通过射线投射将uv体素渲染成二维特征图,沿光线r在基于uv体素获得的近边界和远边界之间采样ni个点对于第t个训练图像,二维特征图中光线r对应的像素处的特征信息可以计算为:中光线r对应的像素处的特征信息可以计算为:最后,利用mlpm
uv
将二维特征图中所有像素逐个解码为其相应的纹理坐标。纹理坐标可以表示为:
[0243]
针对分支二:将动作参数θ
t
输入cnn生成器,利用cnn生成器生成与动作相关的神经纹理贴图:在神经纹理贴图非整的uv坐标上对纹理嵌入以分段可微的方式进行采样,基于解码得到的uv坐标从神经纹理贴图中查找对应的纹理数据、纹理嵌入:为了建模人体在运动时的高频颜色,将位置编码γ()应用于uv坐标,然后将编码的uv坐标和采样得到的纹理嵌入一起输入mlpmc,来解码每个颜色通
道的球谐系数η:给定一个视角d,相机光线r投射在像平面上的像素与视角有关的颜色可以在所需视角上查询镜面球谐函数sh来确定:通过对nk个对象部位的解码后的颜色进行加权组合,重建每个像素的颜色个对象部位的解码后的颜色进行加权组合,重建每个像素的颜色
[0244]
训练过程:结合图像损失、感知损失、语义损失、uv损失、轮廓损失来联合训练模型。目标损失函数为l=l
rgb
λ
vgg
l
vgg
λ
p
l
p
λ
uv
l
uv
λsls。其中,λ表示权重。
[0245]
本技术通过从三维体素中移除高频(即非平滑)人体纹理,并将它们编码到二维的神经纹理贴图来实现实时渲染表演者在自由视点下可编辑的视频。平滑的uv体素允许我们将三维卷积神经网络和多层感知器(mlp)设计成更小和更浅的结构,进而保证能在不丢失图像细节的情况下获得密度和纹理坐标。同时,对于uv图像上的每个像素,神经纹理贴图只需要被查询一次,以检索其rgb值,大大减少了对mlp的查询次数,实现了实时渲染。对于可编辑性,三维卷积神经网络和多层感知器可以轻松拟合一个反映输入的结构化和姿态化隐式编码与相对平滑的密度和纹理坐标之间的映射关系的函数,进而为模型提供了更好的泛化能力并支持各种编辑操作。
[0246]
进一步的,我们进行了大量的实验来证明本技术方法的有效性和效率。使用四个标准指标报告定量结果:psnr(峰值信噪比,是一种评价图像的客观标准)、ssim(结构相似性,是一种衡量两幅图像相似度指标)、lipis(感知度量,是一种评估两幅图像之间的差距的指标)和fps(每秒传输帧数)。定性实验说明了本技术方法在不同的任务中产生了逼真的图像,例如新视角合成,动作编辑,形状编辑和纹理编辑。
[0247]
数据集:我们在由校准并同步过的多视角视频组成的几种类型的数据集上进行实验。在cmu panoptic数据集上,我们选取了26个视角作为训练视角。在zju-mocap数据集上,我们考虑两种方案:在20个和4个视角上进行训练。在h36m数据集上,只有3个视角可用于训练。所有评估都是在其余视角(新视角)或视频序列的其余部分(新动作)上完成的。
[0248]
基线:为了验证本技术方法,将本技术方法与两种现有的自由视点视频合成技术dynerf和neuralbody进行了比较。为了表示得更加简洁,将dynerf、neuralbody和本技术方法分别用“dn”、“nb”、“uv”缩写代替。参考图6,和现有技术相比,本技术方法训练得到的模型能够以平均40fps的速度渲染出大小为900像素
×
500像素图像,并且在图像的真实感上具有相当的竞争力,并且还可以应用于动作编辑,纹理编辑和形状编辑。
[0249]
针对新视角合成:为了进行对比试验,在其余的测试视角上合成训练动作的渲染图像。图7是本技术方法与现有方法的对比实验的定性结果。表1是本技术方法与现有方法的对比实验的定量结果,表1表明在所有方法中本技术方法在lpips和fps两个指标上表现的最好,同时psnr和ssim也具有相当的竞争力。另外,凭借本技术的uv体素模型,实现了以40fps的速度渲染表演者运动时的自由视点视频。
[0250]
表1:新视角合成的定量结果
[0251][0252]
针对动作编辑:通过输入新的动作来对表演者进行动作编辑。由于dynerf不是为编辑任务而设计的,只将本技术方法与neuralbody进行比较。图8是本技术方法与现有方法的对比实验的定性结果。表2是本技术方法与现有方法的对比实验的定量结果,表2表明本技术方法在psnr和ssim指标上具有相当的竞争力,同时在lpips指标上的表现优于neuralbody。
[0253]
表2:新动作编辑的定量结果
[0254][0255]
定性结果显示在图6和图8中。对于复杂的新动作,neuralbody渲染出模糊和扭曲的结果。相比之下,本技术方法合成的图像具有更好的视觉质量和更合理的高清动态纹理。结果表明,较于直接建模一个以动作为控制条件的神经辐射场,在三维空间中使用平滑的uv体素并在二维中编码纹理,对新动作的合成任务具有更好的可控性。
[0256]
针对形状编辑:图9所示的是本技术方法与现有方法的对比实验的定性结果,实验证明了本技术方法能够通过改变smpl模型的形状参数来编辑重建的表演者的身体形状。
[0257]
在图6和图9中展示了形状编辑的定性结果。通过改变smpl参数,可以很容易地调整表演者的体型至更胖、更瘦或更大。在每一对结果中,neuralbody的结果显示在左侧,本技术方法的结果显示在右侧。可以看到,neuralbody无法推测出布料的合理变化,而本技术方法可以很好地泛化到新的身体形状,对于不同的形状本技术方法保留了更多的细节和一致性。
[0258]
纹理编辑:通过学习到的uv体素和神经纹理贴图的稠密的对应关系,本技术方法训练得到的模型可以利用用户提供的2d纹理来编辑3d布料。如图10所示,用户可以在纹理贴图上绘制图形来编辑纹理。从可视化的结果上看,丰富的纹理图案被很好地保留并能够迁移到不同动作下的正确语义区域上。事实证明,uv体素不仅成功地改变了纹理,而且还可以建模手动编辑部分的动态效果。
[0259]
我们针对zju数据集中的表演者313进行消融研究。如表3所示,我们通过分别去除语义和uv损失(无热启动损失)和感知损失(无vgg损失)来分析不同损失对所提出方法的影响。然后我们探索使用不同的视频帧数和训练视角个数对模型性能的影响,如表4所示。最后,我们还分析了每个模块的耗时。
[0260]
表3:使用不同配置训练的模型的结果
[0261][0262]
热启动损失的影响:我们使用语义损失和uv损失来热启动uv体素并限制其解空间。为了证明这一步对我们的框架的有效性,我们在完整模型的基础上通过去除热启动损失(无热启动损失)来对模型进行训练。如表3所示,它在渲染新视角时表现出更高的psnr,但在渲染新动作时在所有评价指标上都表现不佳。这表明,热启动损失通过约束渲染的uv坐标保证其连续性,使得我们的模型可以更好地泛化到不同的动作上。
[0263]
感知损失的影响:凭借着uv体素,我们的模型在训练期间可以一次渲染一整张图片,这一特性允许了我们能够使用感知损失。如表3所示,在使用完整模型的基础上但没有感知损失约束的消融实验(无vgg损失)在所有评价指标上的表现的性能都较低。这说明了感知损失有助于提高合成图像的视觉质量。
[0264]
相机个数和视频长度的影响:在表4中,我们展示了使用不同的相机视角个数和视频帧数来训练模型的结果。所有结果都在视频的前60帧的其余2个视角上进行评估。结果表明,尽管训练视角个数的增多提高了新视角合成的性能,但稀疏的4个视角已经足以让我们的模型重建表演者的运动。此外,对视频帧数的消融实验表明,在过多的帧上训练可能会降低性能,因为网络难以适应过长的视频。
[0265]
表4:视频帧数和训练视角个数的消融实验结果
[0266][0267]
时间消耗:我们还在zju mocap数据的表演者313上分析了我们框架中每个模块的时间消耗。从输入中获取uv体素平均需要37.25毫秒。然后模型花费7.24毫秒来解码出体素的密度,花费3.18毫秒将体素渲染成特征图像。接下来,只需1.96毫秒即可将特征转换为uv图像。最后,访问神经纹理贴图大约需要9.71毫秒。总而言之,我们可以在每帧22毫秒(45fps)内完成渲染自由视点视频的任务,因为可以预先生成uv体素。即使在新动作编辑任务上,我们的方法也能够达到每帧59毫秒(16fps)的渲染速度。
[0268]
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个
阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0269]
基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的图像生成模型训练方法的图像生成模型训练装置,实现上述所涉及的图像生成方法的图像生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图像生成模型训练装置、图像生成装置实施例中的具体限定可以参见上文中对于图像生成模型训练方法和图像生成方法的限定,在此不再赘述。
[0270]
在一个实施例中,如图11所示,提供了一种图像生成模型训练装置1100,包括:训练数据获取模块1102、训练数据输入模块1104、纹理坐标图像确定模块1106、纹理坐标图像转换模块1108、中间图像生成模型确定模块1110和目标图像生成模型确定模块1112,其中:
[0271]
训练数据获取模块1102,用于获取目标对象对应的多个训练图像,训练图像存在对应的训练动作参数和训练视角;
[0272]
训练数据输入模块1104,用于从多个训练图像中确定当前训练图像,将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型;
[0273]
纹理坐标图像确定模块1106,用于生成当前训练动作参数对应的预测纹理特征体素,基于当前训练视角对预测纹理特征体素进行特征解码,得到预测纹理坐标图像;
[0274]
纹理坐标图像转换模块1108,用于生成当前训练动作参数对应的预测神经纹理贴图,基于预测神经纹理贴图和当前训练视角,对预测纹理坐标图像进行图像转换,得到当前训练图像对应的预测图像;
[0275]
中间图像生成模型确定模块1110,用于基于当前训练图像和对应的预测图像生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型;
[0276]
目标图像生成模型确定模块1112,用于将下一训练图像作为当前训练图像,将中间图像生成模型作为初始图像生成模型,返回将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型的步骤执行,直至满足收敛条件,得到目标图像生成模型;目标图像生成模型用于基于目标对象的目标动作参数和目标视角生成对应的目标图像。
[0277]
上述图像生成模型训练装置,将目标对象的某一训练图像所对应的训练动作参数和训练视角输入模型,模型预测目标对象在训练动作参数和训练视角下对应的彩色图像。基于目标对象在训练动作参数和训练视角下对应的真实图像(即训练图像)和预测图像生成训练损失来调整模型,可以让模型输出与真实图像近似的预测图像,通过迭代训练,最终训练得到的模型可以预测目标对象在任意动作参数和任意视角下对应的图像,通过模型来生成图像可以提高图像生成效率。进一步的,在模型的预测过程中,基于三维的纹理特征体素得到二维的纹理坐标图像,将某一视角对应的图像平面中每个特征分别转换为其对应的纹理坐标,基于预测神经纹理贴图和视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目标对象在一定视角和一定动作下的彩色图像,这样从三维空间转换到二维空间进行数据处理,可以有效降低数据处理压力,进一步提高图像生成效率。
[0278]
在一个实施例中,纹理坐标图像确定模块包括:
[0279]
纹理特征体素确定单元,用于生成当前训练动作参数对应的对象三维模型;对象三维模型携带几何编码数据;对对象三维模型进行卷积处理,得到预测纹理特征体素。
[0280]
在一个实施例中,纹理坐标图像确定模块包括:
[0281]
渲染单元,用于基于当前训练视角对预测纹理特征体素进行渲染处理,得到预测二维特征图;
[0282]
解码单元,用于对预测二维特征图进行解码处理,得到预测纹理坐标图像。
[0283]
在一个实施例中,渲染单元还用于基于当前训练视角对应的多个光线,对预测纹理特征体素进行采样处理,得到各个光线分别对应的多个采样点;对预测纹理特征体素中各个采样点对应的特征向量进行特征处理,得到各个采样点对应的预测密度;基于各个光线分别对应的各个采样点所对应的预测密度和特征向量生成预测二维特征图。
[0284]
在一个实施例中,渲染单元还用于从各个光线中确定目标光线;从目标光线对应的各个采样点中确定目标采样点;基于目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量,得到目标采样点对应的纹理坐标子特征;将下一采样点作为目标采样点,返回基于目标采样点对应的预测密度和特征向量、历史采样点对应的预测密度和特征向量,得到目标采样点对应的纹理坐标子特征的步骤执行,直至得到目标光线对应的各个采样点的纹理坐标子特征;基于目标光线对应的各个采样点的纹理坐标子特征得到目标光线对应的纹理坐标特征;将下一光线作为目标光线,返回从目标光线对应的各个采样点中确定目标采样点的步骤执行,直至得到各个光线对应的纹理坐标特征;基于各个光线对应的纹理坐标特征生成预测二维特征图。
[0285]
在一个实施例中,解码单元还用于对预测二维特征图中各个像素的特征信息进行解码处理,得到目标对象的多个对象部位对应的预测纹理坐标;基于各个对象部位对应的预测纹理坐标生成预测纹理坐标图像。
[0286]
在一个实施例中,预测纹理坐标图像包括目标对象的多个对象部位对应的预测纹理坐标。纹理坐标图像转换模块包括:
[0287]
纹理数据确定单元,用于基于各个对象部位对应的预测纹理坐标,从预测神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据;
[0288]
球谐系数确定单元,用于基于各个对象部位对应的预测纹理数据得到各个对象部位对应的球谐系数;
[0289]
颜色创建单元,用于基于球谐系数和当前训练视角对各个对象部位进行颜色创建,得到当前训练图像对应的预测图像。
[0290]
在一个实施例中,纹理数据确定单元还用于基于各个对象部位对应的预测纹理坐标,对预测神经纹理贴图进行插值处理,得到连续神经纹理贴图;基于各个对象部位对应的预测纹理坐标,从连续神经纹理贴图中查找对应的纹理数据,得到各个对象部位对应的预测纹理数据。
[0291]
在一个实施例中,球谐系数确定单元还用于对各个对象部位对应的预测纹理坐标进行编码处理,得到各个对象部位对应的目标纹理坐标;对同一对象部位对应的预测纹理数据和目标纹理坐标进行特征处理,得到各个对象部位对应的球谐系数。
[0292]
在一个实施例中,颜色创建单元还用于将球谐系数和当前训练视角输入球谐模型,得到各个对象部位对应的初始颜色;对各个对象部位对应的初始颜色进行归一化处理,
得到各个对象部位对应的目标颜色;基于各个对象部位对应的目标颜色得到预测图像。
[0293]
在一个实施例中,中间图像生成模型确定模块包括:
[0294]
第一损失确定单元,用于基于当前训练图像和对应的预测图像生成第一损失;
[0295]
第二损失确定单元,用于获取当前训练图像对应的参考纹理坐标图像,基于参考纹理坐标图像和预测纹理坐标图像生成第二损失;
[0296]
训练损失确定单元,用于基于第一损失和第二损失生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型。
[0297]
在一个实施例中,第一损失确定单元还用于基于当前训练图像和对应的预测图像之间的差异生成图像损失;分别对当前训练图像和对应的预测图像进行特征图提取,得到第一特征图和第二特征图,基于第一特征图和第二特征图之间的差异生成感知损失;基于图像损失和感知损失生成第一损失。
[0298]
在一个实施例中,预测纹理坐标图像包括目标对象的多个对象部位对应的预测纹理坐标和预测概率,参考纹理坐标图像包括目标对象的多个对象部位对应的参考纹理坐标和参考概率。第二损失确定单元还用于基于参考纹理坐标图像和预测纹理坐标图像中同一对象部位对应的参考概率和预测概率生成语义损失;基于参考纹理坐标图像和预测纹理坐标图像中同一对象部位对应的参考纹理坐标和预测纹理坐标、参考纹理坐标图像中各个对象部位对应的参考概率生成纹理损失;基于语义损失和纹理损失生成第二损失。
[0299]
在一个实施例中,训练损失还包括轮廓损失,轮廓损失是基于当前训练图像对应的对象掩膜图像和预测纹理特征体素生成的。
[0300]
在一个实施例中,如图12所示,提供了一种图像生成装置1200,包括:数据获取模块1202和图像生成模块1204,其中:
[0301]
数据获取模块1202,用于获取目标对象对应的目标动作参数和目标视角;
[0302]
图像生成模块1204,用于将目标动作参数和目标视角输入目标图像生成模型,得到目标对象在目标动作参数和目标视角下对应的目标图像。
[0303]
目标图像生成模型的训练过程如下:获取目标对象对应的多个训练图像,训练图像存在对应的训练动作参数和训练视角;从多个训练图像中确定当前训练图像,将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型;生成当前训练动作参数对应的预测纹理特征体素,基于当前训练视角对预测纹理特征体素进行特征解码,得到预测纹理坐标图像;生成当前训练动作参数对应的预测神经纹理贴图,基于预测神经纹理贴图和当前训练视角,对预测纹理坐标图像进行图像转换,得到当前训练图像对应的预测图像;基于当前训练图像和对应的预测图像生成训练损失,基于训练损失调整初始图像生成模型的模型参数,得到中间图像生成模型;将下一训练图像作为当前训练图像,将中间图像生成模型作为初始图像生成模型,返回将当前训练图像对应的当前训练动作参数和当前训练视角输入初始图像生成模型的步骤执行,直至满足收敛条件,得到目标图像生成模型。
[0304]
上述图像生成装置,通过将目标对象对应的目标动作参数和目标视角输入训练好的目标图像生成模型,得到目标对象在目标动作参数和目标视角下对应的目标图像,通过模型来生成图像可以提高图像生成效率。进一步的,在训练模型输出预测图像时,基于三维的纹理特征体素得到二维的纹理坐标图像,将某一视角对应的图像平面中每个特征分别转
换为其对应的纹理坐标,基于预测神经纹理贴图和视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目标对象在一定视角和一定动作下的彩色图像,这样从三维空间转换到二维空间进行数据处理,可以有效降低数据处理压力,进一步提高图像生成效率。
[0305]
在一个实施例中,图像生成装置1200还包括:
[0306]
形状编辑模块,用于获取形状参数,将形状参数、目标动作参数和目标视角输入目标图像生成模型;生成目标动作参数和形状参数对应的第一对象三维模型,基于第一对象三维模型得到第一纹理特征体素,基于目标视角对第一纹理特征体素进行特征解码,得到第一纹理坐标图像;生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对第一纹理坐标图像进行图像转换,得到目标对象在目标动作参数、目标视角和形状参数下对应的第一图像。
[0307]
在一个实施例中,图像生成装置1200还包括:
[0308]
纹理编辑模块,用于获取纹理样式,将纹理样式、目标动作参数和目标视角输入目标图像生成模型;生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像;生成目标动作参数对应的目标神经纹理贴图,基于纹理样式更新目标神经纹理贴图,得到更新神经纹理贴图,基于更新神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数、目标视角和纹理样式下对应的第二图像。
[0309]
在一个实施例中,如图13所示,提供了一种图像生成装置1300,包括:目标数据获取模块1302、目标纹理坐标图像确定模块1304和目标图像确定模块1306,其中:
[0310]
目标数据获取模块1302,用于获取目标对象对应的目标动作参数和目标视角;
[0311]
目标纹理坐标图像确定模块1304,用于生成目标动作参数对应的目标纹理特征体素,基于目标视角对目标纹理特征体素进行特征解码,得到目标纹理坐标图像;
[0312]
目标图像确定模块1306,用于生成目标动作参数对应的目标神经纹理贴图,基于目标神经纹理贴图和目标视角,对目标纹理坐标图像进行图像转换,得到目标对象在目标动作参数和目标视角下对应的目标图像。
[0313]
上述图像生成装置,基于三维的纹理特征体素得到二维的纹理坐标图像,将目标视角和目标动作对应的图像平面中每个特征分别转换为其对应的纹理坐标,基于预测神经纹理贴图和目标视角对预测纹理坐标图像进行图像转换,根据纹理坐标从依赖于动作的神经纹理贴图中查询对应的纹理数据,从而将纹理坐标图像转换为目标对象在目标视角和目标动作下的彩色图像,这样从三维空间转换到二维空间进行数据处理,可以有效降低数据处理压力,提高图像生成效率。
[0314]
上述图像生成模型训练装置和图像生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0315]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括处理器、存储器、输入/输出接口(input/output,简称i/o)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口
通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储训练图像、目标图像生成模型等数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像生成模型训练方法或图像生成方法。
[0316]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图15所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种图像生成模型训练方法或图像生成方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0317]
本领域技术人员可以理解,图14、15中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0318]
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
[0319]
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0320]
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
[0321]
需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
[0322]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机
可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0323]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0324]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。