一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种虚拟对象生成方法、装置、设备及存储介质与流程

2022-09-03 21:59:36 来源:中国专利 TAG:


1.本公开涉及人工智能技术领域,尤其涉及增强现实、虚拟现实、计算机视觉和深度学习等技术领域,可应用于元宇宙等场景,具体涉及一种虚拟对象生成方法、装置、设备及存储介质。


背景技术:

2.随着人工智能技术的不断发展,虚拟空间产品的出现为人们生活增添了色彩。其中,创建三维虚拟对象,例如虚拟数字人,是创建虚拟空间的重要部分,如何让所创建的三维虚拟对象运动更为逼真,对创建虚拟空间而言至关重要。


技术实现要素:

3.本公开提供了一种虚拟对象生成方法、装置、设备及存储介质。
4.根据本公开的一方面,提供了一种虚拟对象生成方法,该方法包括:
5.获取目标对象的运动视频帧序列;
6.生成所述运动视频帧序列中候选视频帧的三维参数化模型和三维个性化模型;
7.将所述候选视频帧的三维参数化模型的三维关节点信息映射到所述候选视频帧的三维个性化模型中,得到所述候选视频帧对应的可驱动个性化三维模型;
8.根据所述候选视频帧对应的可驱动个性化三维模型,确定所述目标对象的可驱动三维虚拟对象。
9.根据本公开的另一方面,提供了一种电子设备,该电子设备包括:
10.至少一个处理器;以及
11.与所述至少一个处理器通信连接的存储器;其中,
12.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任一实施例所述虚拟对象生成方法。
13.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行本公开任一实施例所述的虚拟对象生成方法。
14.根据本公开的技术,能够使所生成的可驱动三维虚拟对象更为逼真。
15.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
16.附图用于更好地理解本方案,不构成对本公开的限定。其中:
17.图1是根据本公开实施例提供的一种虚拟对象生成方法的流程图;
18.图2是根据本公开实施例提供的另一种虚拟对象生成方法的流程图;
19.图3是根据本公开实施例提供的又一种虚拟对象生成方法的流程图;
20.图4是根据本公开实施例提供的一种虚拟对象生成装置的结构示意图;
21.图5是用来实现本公开实施例的虚拟对象生成方法的电子设备的框图。
具体实施方式
22.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
23.需要说明的是,本公开的技术方案中,所涉及的目标对象的运动视频帧序列等的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
24.图1是根据本公开实施例提供的一种虚拟对象生成方法的流程图,该方法适用于如何生成可驱动的三维虚拟对象的情况,尤其适用于虚拟对象生成过程中骨骼绑定的相关场景中。具体可适用于元宇宙风格化虚拟对象的生成交互场景,以及终端其他虚拟空间产品中虚拟对象的生成交互场景等。
25.其中,虚拟对象即为活动在虚拟空间中的对象,比如虚拟数字人;虚拟空间可以是元宇宙或包含可移动界面的游戏等娱乐产品为用户所提供的仿真实世界的虚拟活动空间。例如,对于元宇宙产品,其虚拟空间可以是与现实世界映射且可与用户交互的虚拟世界。
26.该方法可以由虚拟对象生成装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成于承载虚拟对象生成功能的电子设备中。如图1所示,本实施例的虚拟对象生成方法可以包括:
27.s101,获取目标对象的运动视频帧序列。
28.本实施例中,目标对象即为需要进行虚拟对象生成的任一真实对象;真实对象即为真实世界中所存在的对象,包括但不限于人和其他非人活体(比如狗、猫等)。
29.需要说明的是,为了能够细粒度的了解目标对象的运动情况,以使所生成的目标对象对应的可驱动三维虚拟对象更为逼真,本实施例获取针对该目标对象的运动视频帧序列。所谓运动视频帧序列即为符合运动学标准的视频数据。进一步的,运动视频帧序列中的每一视频帧均为目标对象的运动图像。
30.可选的,获取目标对象的运动视频帧序列的方式有多种,本实施例对此不做限定。例如,一种方式可以是,需求方在具有虚拟对象生成需求时,根据运动指引信息,生成一个针对目标对象的运动视频帧序列,并进行上传;进而本实施例可以获取需求方所上传的目标对象的运动视频帧序列。又一种方式可以是,在检测到当前时间满足需求方所设置的虚拟对象生成时间时,从需求方所提供的地址中获取原始视频数据,并根据运动学标准,对所获取的原始视频数据进行处理,以得到目标对象的运动视频帧序列。
31.s102,生成运动视频帧序列中候选视频帧的三维参数化模型和三维个性化模型。
32.本实施例中,可以将运动视频帧序列中的每一视频帧均作为一个候选视频帧。对于每一候选视频帧,均会生成一个三维参数化模型和一个三维个性化模型。
33.其中,三维参数化模型也可称为三维骨骼模型,具有姿态参数和体型参数;其中,
体型参数用于决定所生成的三维模型的形态,即高、矮、肥、廋等;姿态参数用于控制所生成的三维模型的姿势,由三维模型上的三维关节点决定;进一步的,三维参数化模型上的点和三维关节点具有绑定关系。也就是说,三维参数化模型是一个可驱动的三维模型。进一步的,本实施例中的三维参数化模型没有携带纹理特征,即不能表达衣服、毛发等细节特征。
34.可选的,本实施例中的三维参数化模型优选为蒙皮模型。具体的,对于每一候选视频帧,可以将该候选视频帧输入至已训练好的smpl(skinned multi person linear,蒙皮多人线性)模型,可获得该候选视频帧对应的蒙皮模型。
35.三维个性化模型是一种非参数化的、携带纹理的三维模型。进一步的,三维个性化模型不具有姿态参数和体型相关参数,即三维个性化模型上的点并没有和任何三维关节点绑定。也即是说,本实施例中的三维个性化模型是一个不可驱动的三维模型。
36.可选的,对于每一候选视频帧,可以采用visual hull方法,构建该候选视频帧对应的三维个性化模型。
37.s103,将候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,得到候选视频帧对应的可驱动个性化三维模型。
38.本实施例中,三维参数化模型的三维关节点信息包括三维关节点的语义信息,三维关节点的位置信息,以及三维关节点与顶点之间的绑定权重等;其中,三维关节点的语义信息即为为三维关节点所赋予的语义上的名称,比如手腕关节点;三维关节点与顶点之间的绑定权重即为三维参数化模型上三角面片的顶点与三维关节点之间的绑定关系。
39.可选的,对于每一候选视频帧,可以将该候选视频帧的三维参数化模型与三维个性化模型进行匹配。进一步的,为了能够更好的进行匹配操作,本实施例中,可以将该候选视频的三维参数化模型和三维个性化模型均投影至同一二维空间,在二维空间中进行两者的匹配。
40.之后根据匹配结果,将候选视频帧的三维参数化模型的三维关节点信息映射到该候选视频帧的三维个性化模型中,至此可使得该视频帧对应的三维个性化模型上的顶点与三维关节点具有了绑定关系,本实施例将此时的三维个性化模型作为可驱动个性化三维模型。
41.s104,根据候选视频帧对应的可驱动个性化三维模型,确定目标对象的可驱动三维虚拟对象。
42.本实施例中,可驱动三维虚拟对象即为最终所生成的目标对象在虚拟空间中的映射对象,具体为可驱动的、个性化的三维虚拟对象。
43.可选的,在获得运动视频帧序列中每一候选视频帧对应的可驱动个性化三维模型之后,可以结合目标对象的运行情况,对各候选视频帧对应的可驱动个性化模型进行统计分析,来生成目标对象的可驱动三维虚拟对象。例如,可以将各候选视频帧对应的可驱动个性化模型输入至运动分析模型,由运动分析模型输出目标对象的可驱动三维虚拟对象。
44.进一步的,在确定目标对象可驱动三维虚拟对象之后,可以向需求方展示目标对象的可确定三维虚拟对象。
45.在一可实施方式中,可以根据展示参数,输出目标对象的可驱动三维虚拟对象。其中,展示参数可以包括但不限于展示空间的大小、颜色和亮度等。
46.具体的,可以根据需求方配置的展示参数,确定目标展示空间,并在目标展示空
间,展示目标对象的可驱动三维虚拟对象。
47.本公开实施例提供的技术方案,通过将所生成的运动视频帧序列中候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,可得到候选视频帧对应的可驱动个性化三维模型;之后,根据候选视频帧对应的可驱动个性化三维模型,来确定目标对象的可驱动三维虚拟对象。上述方案,通过引入目标对象运动变化的一系列候选视频帧即运动视频帧序列,结合三维参数化模型和三维个性化模型,使得最终所生成的可驱动三维虚拟对象更为逼真。进一步的,本方案对于具有虚拟对象生成需求的一方而言,无需具备骨骼绑定等方面的专业知识,只需提供运动视频帧序列即可自动生成可驱动三维虚拟对象,即降低了在虚拟对象生成过程中骨骼绑定门槛和成本,提高了效率。此外,本方案不仅可适用于人的虚拟对象生成场景,还可适用于其他非人活体的虚拟对象生成场景,即本方案具有较强的适配性。
48.由于在实际场景中需求方所提供的视频数据可能存在场景特别大等问题,因此需要进行预处理。示例性的,在上述实施例的基础上,获取目标对象的运动视频帧序列的一种可选方式是,对原始视频数据进行对象检测、对象裁剪或对象追踪中的至少一项,得到目标对象的运动视频帧序列。其中,所谓原始视频帧数据即为需求方所提供的视频数据。
49.例如,在原始视频数据存在场景大、对象小的情况下,可以对原始视频数据进行对象检测和对象裁剪,以从原始视频数据中获取目标对象的运动视频帧序列;可选的,为使得相邻视频帧之间过度更平滑,还可以进行对象追踪(即tracking)。
50.又如,如果原始视频数据中场景和对象之间的比例适中,可以对于原始视频数据进行对象检测和/或对象追踪,以确保原始视频数据中只包括目标对象。
51.又如,在原始视频数据包括目标对象外,还包括其他对象的情况下,此时如果原始视频数据中对目标对象进行了标注,那么可以对原始视频数据进行对象追踪和对象裁剪,以从原始视频数据中获取目标对象的运动视频帧序列;如果原始视频数据中未对目标对象进行标注,那么可以对原始视频数据进行对象检测、对象追踪和对象裁剪,以从原始视频数据中获取目标对象的运动视频帧序列。具体可以是,按照视频帧采集顺序,对原始视频数据进行对象检测;在从原始视频数据中首次检测到目标对象后,进行对象追踪和对象裁剪,以从原始视频数据中获取目标对象的运动视频帧序列。
52.又如,在一些示例中,也可以只对原始视频数据进行对象裁剪,以从原始视频数据中获取目标对象的运动视频帧序列。例如,原始视频数据中存在某些视频帧尺寸过大现象,此时可以对这些尺寸过大的视频帧进行对象裁剪操作,以与其他视频帧的尺寸对齐,从而获取获得目标对象的运动视频帧序列。
53.此外,还可以先对原始视频数据进行清晰度处理,在对清晰度处理后的原始视频数据进行对象检测、对象裁剪或对象追踪中的至少一项,以获得目标对象的运动视频帧序列。
54.可以理解的是,本实施例对原始视频数据进行对象检测、对象裁剪和对象追踪等预处理,保证了最终所获取的运动视频帧序列的质量,为后续生成高质量的可驱动三维虚拟对象奠定了基础。
55.示例性的,在原始视频数据中包含多个对象的情况下,获取目标对象的运动视频帧序列的一种可选方式是:根据对原始视频数据中候选对象的选择操作,确定目标对象;从
原始视频数据中提取目标对象的运动视频帧序列。
56.具体可以是,遍历原始视频数据,以获取原始视频数据中所有的对象,并将所获取的每一对象均作为候选对象;向需求方展示候选对象,并根据需求方对候选对象的选择操作,确定目标对象;之后,可以从原始视频数据中提取目标对象的运动视频帧序列。例如,可以对原始视频数据进行对象检测、对象裁剪或对象追踪中的至少一项,以从原始视频数据中提取到目标对象的运动视频帧系列。
57.可以理解的是,本实施例引入与需求方交互过程,保证了所确定的目标对象与需求方的实际需求相符,提升了方案的灵活度,以及需求方的体验。
58.图2是根据本公开实施例提供的另一种虚拟对象生成方法的流程图,本实施例在上述实施例的基础上,进一步对“生成运动视频帧序列中候选视频帧的三维参数化模型”,进行详细解释说明。如图2所示,本实施例的虚拟对象生成方法可以包括:
59.s201,获取目标对象的运动视频帧序列。
60.s202,生成运动视频帧序列中候选视频帧的待调参数化模型。
61.本实施例中,对于每一候选视频帧,可以将该候选视频帧输入至已训练好的smpl模型,可获得该候选视频帧对应的待调参数化模型。其中,待调参数化模型也具有姿态参数和体型参数。
62.s203,基于候选视频帧的待调参数化模型中的待调体型参数,确定目标体型参数。
63.本实施例中,将每一候选视频帧的待调参数化模型中的体型参数均作为待调体型参数。目标体型参数即为对待调体型参数进行调整的基准。
64.一种可选方式是,根据候选视频帧的待调参数化模型中的待调体型参数,确定平均体型参数;将平均体型参数,作为目标体型参数。具体可以是,对各候选视频的待调参数化模型中的待调体型参数进行平均,以得到平均体型参数;将平均体型参数,作为目标体型参数。
65.又一种可选方式是,从候选视频帧中选择任一视频帧,并将该视频帧的待调参数化模型中的待调体型参数,作为目标体型参数。或者,根据需求方对候选视频帧的选择操作,确定目标视频帧;并将目标视频帧的待调参数化模型中的待调体型参数,作为目标体型参数。
66.s204,根据目标体型参数,对候选视频帧的待调参数化模型中的待调体型参数进行调整,得到候选视频帧的三维参数化模型。
67.可选的,在确定目标体型参数之后,可以将每一候选视频帧的待调参数化模型中的待调体型参数均调整为目标体型参数,得到每一候选视频帧的三维参数化模型。
68.可以理解的是,本实施例中各候选视频帧的三维参数化模型中的体型参数相同,即各候选视频帧的三维参数化模型所呈现出的形态相同。进一步的,对于每一候选视频帧,该候选视频帧的待调参数化模型与该候选视频帧的三维参数化模型相比,两者的姿态参数相同,体型参数不同或相同。
69.s205,生成运动视频帧序列中候选视频帧的三维个性化模型。
70.s206,将候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,得到候选视频帧对应的可驱动个性化三维模型。
71.s207,根据候选视频帧对应的可驱动个性化三维模型,确定目标对象的可驱动三
维虚拟对象。
72.本公开实施例提供的技术方案,通过基于运动视频帧序列中候选视频帧的待调参数化模型的待调体型参数,确定目标体型参数,并基于目标体型参数可得到候选视频帧的三维参数化模型;之后将所生成的候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,可得到候选视频帧对应的可驱动个性化三维模型,进而根据候选视频帧对应的可驱动个性化三维模型,来确定目标对象的可驱动三维虚拟对象。上述方案,通过引入确定目标体型参数的过程,一方面可避免不同体型参数对后续虚拟对象生成过程中的骨骼绑定造成干扰,另一方面可降低虚拟对象生成过程的复杂度。
73.示例性的,在上述任一实施例的基础上,生成运动视频帧序列中候选视频帧的三维个性化模型一种可选方式是,提取运动视频帧序列的候选视频帧中目标对象的二维轮廓信息;根据候选视频帧中目标对象的二维轮廓信息,构建候选视频帧对应的三维个性化模型。
74.具体的,对于运动视频帧序列中的每一候选视频帧,可以使用分割算法(比如人体分割算法),对该候选视频帧中的目标对象进行轮廓检测,得到该候选视频帧中目标对象的二维轮廓信息;之后,可以使用visual hull方法,基于该候选视频帧中目标对象的二维轮廓信息,来构建该候选视频帧对应的三维个性化模型。
75.其中,使用visual hull方法,基于该候选视频帧中目标对象的二维轮廓信息,来构建该候选视频帧对应的三维个性化模型具体可以是,先使用visual hull方法,基于该候选视频帧中目标对象的二维轮廓信息,构建该候选视频帧对应的一个无纹理的三维模型;之后,可以基于该无纹理的三维模型与纹理坐标贴图(即uv贴图)之间的映射关系,将该候选视频帧中目标对象的二维轮廓信息的rgb值,赋值给无该无纹理的三维模型,可得到该候选视频帧对应的三维个性化模型。
76.可以理解的是,本实施例提供了一种生成三维个性化模型的可选方式,为后续生成可驱动三维虚拟对象提供了数据支撑。
77.图3是根据本公开实施例提供的又一种虚拟对象生成方法的流程图,本实施例在上述实施例的基础上,进一步对“根据候选视频帧对应的可驱动个性化三维模型,确定目标对象的可驱动三维虚拟对象”,进行详细解释说明。如图3所示,本实施例的虚拟对象生成方法可以包括:
78.s301,获取目标对象的运动视频帧序列。
79.s302,生成运动视频帧序列中候选视频帧的三维参数化模型和三维个性化模型。
80.s303,将候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,得到候选视频帧对应的可驱动个性化三维模型。
81.s304,从候选视频帧对应的可驱动个性化三维模型中选择目标视频帧对应的可驱动个性化三维模型,以及其他视频帧对应的可驱动个性化三维模型。
82.可选的,为了使最终生成的可驱动三维虚拟对象鲁棒性好,本实施例可以根据模型姿态,从候选视频帧对应的可驱动个性化三维模型中选择肢体尽量展开且不遮挡,或者肢体遮挡最少的可驱动个性化三维模型,即目标视频帧对应的可驱动个性化三维模型。例如,目标对象为人,此时可以从候选视频帧对应的可驱动个性化三维模型中选择最符合人体t-pose(即t型姿态)的可驱动个性化三维模型,即目标视频帧对应的可驱动个性化模型。
83.进一步的,可以将运动视频帧序列中除目标视频帧之外的候选视频帧作为其他视频帧,即从候选视频帧对应的可驱动个性化三维模型中选择出目标视频帧对应的可驱动个性化三维模型的同时,也可以从候选视频帧对应的可驱动个性化三维模型中选择出其他视频帧对应的可驱动个性化三维模型。
84.s305,采用其他视频帧对应的可驱动个性化三维模型,对目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间的绑定权重进行调整,得到目标对象的可驱动三维虚拟对象。
85.本实施例中,将目标视频帧对应的三维参数化模型上的三维关节点信息赋值给目标视频帧对应的三维个性化模型,使得目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间具有初始的绑定权重。
86.由于在实际场景中目标视频帧对应的可驱动个性化三维模型可能存在某一或某些肢体遮挡等现象,因此为进一步提升模型鲁棒性,本实施例采用其他视频帧对应的可驱动个性化三维模型,来调整目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间初始的绑定权重。
87.例如,可以是将其他视频帧对应的可驱动个性化三维模型,以及目标视频帧对应的可驱动个性化三维模型,一并输入至运动分析模型中,由运动分析模型输出目标视频帧对应的可驱动个性化三维模型上顶点与三维关节点之间更新后的绑定权重。
88.之后,采用更新后的绑定权重,对目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间初始的绑定权重进行调整,并将绑定权重调整后的可驱动个性化三维模型,作为目标对象的可驱动三维虚拟对象。
89.本公开实施例提供的技术方案,通过将所生成的运动视频帧序列中候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,可得到候选视频帧对应的可驱动个性化三维模型;之后,采用候选视频帧中其他视频帧对应的可驱动个性化三维模型,来调整候选视频帧中目标视频帧对应的可驱动个性化三维模型上顶点与三维关节点之间的绑定权重,以获得目标对象的可驱动三维虚拟对象。上述方案,通过基于其他视频帧中目标对象的运动变化,来调整目标视频帧对应的可驱动个性化三维模型上顶点与三维关节点之间的绑定权重,使得最终所生成的可驱动三维虚拟对象更加鲁棒。
90.示例性的,在上述实施例的基础上,采用其他视频帧对应的可驱动个性化三维模型,对目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间的绑定权重进行调整,得到目标对象的可驱动三维虚拟对象一种可选方式:确定其他视频帧对应的可驱动个性化三维模型的三维关节点,与目标视频帧对应的可驱动个性化三维模型的三维关节点之间的相对旋转角度;将相对旋转角度和目标视频帧对应的可驱动个性化三维模型作为网络输入,其他视频帧对应的可驱动个性化三维模型作为标签数据,调整目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间的绑定权重,得到目标对象的可驱动三维虚拟对象。
91.本实施例中,可驱动个性化三维模型中的姿态参数,可以用一个向量来表示。比如目标对象为人,一个人可具有24个三维关节点,进而姿态参数可以是一个1*72的向量,其中的每一个值都代表着某个具体的三维关节点绕着一条旋转轴的旋转角度。
92.因此,对于任一其他视频帧,可以根据该其他视频帧对应的可驱动个性化三维模
型的姿态参数,以及目标视频帧对应的可驱动个性化三维模型中的姿态参数,来确定该其他视频帧对应的可驱动个性化三维模型中三维关节点,相对于目标视频帧对应的可驱动个性化三维模型中三维关节点之间的相对旋转角度。
93.例如,对于该其他视频帧对应的可驱动个性化三维模型中的每一个三维关节点(比如手腕关节点),从该其他视频帧对应的可驱动个性化三维模型的姿态参数中提取该三维关节点(比如手腕关节点)的相关旋转角度数据;同时,从目标视频帧对应的可驱动个性化三维模型的姿态参数中也提取相同三维关节点(比如手腕关节点)的相关旋转角度数据;之后,将所提取的两个相关旋转角度数据做差值运算,即可得到该其他视频帧对应的可驱动个性化三维模型中的该三维关节点(比如手腕关节点),相对于目标视频帧对应的可驱动个性化三维模型中相同三维关节点(比如手腕关节点)之间的相对旋转角度。
94.可选的,目标对象在不同候选视频帧中的不同运动情况,在三维模型上表现为不同的姿态参数。也就是说,不同的候选视频帧对应的可驱动个性化三维模型的姿态参数不同。
95.为使得最终所生成的可驱动三维虚拟对象更为逼真,本实施例中将相对旋转角度和目标视频帧对应的可驱动个性化三维模型作为网络输入,其他视频帧对应的可驱动个性三维模型作为标签数据,调整目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间的绑定权重,得到目标对象的可驱动三维虚拟对象。
96.即引入目标视频帧对应的可驱动个性化三维模型,学习其他视频帧对应的可驱动个性化三维模型的姿态,并在学习的过程中不断调整目标视频帧对应的可驱动个性化三维模型上顶点与三维关节点之间的绑定权重,并在网络学习结束后,网络输出调整后的顶点与三维关节点之间的绑定权重。进而采用调整后的顶点与三维关节点之间的绑定权重,对目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间初始的绑定权重进行调整,并将绑定权重调整后的可驱动个性化三维模型,作为目标对象的可驱动三维虚拟对象。
97.需要说明的是,本实施例对具有运动变化的视频数据,进行细粒度运动学习,使得最终得到的绑定权重更符合真实情况,进而使得最终生成的可驱动三维虚拟对象更为逼真。
98.图4是根据本公开实施例提供的一种虚拟对象生成装置的结构示意图。本公开实施例适用于如何生成可驱动的三维虚拟对象的情况。该装置可以采用软件和/或硬件来实现,该装置可以实现本公开任意实施例所述的虚拟对象生成方法。如图4所示,该虚拟对象生成装置400包括:
99.视频帧序列获取模块401,用于获取目标对象的运动视频帧序列;
100.模型生成模块402,用于生成运动视频帧序列中候选视频帧的三维参数化模型和三维个性化模型;
101.可驱动模型确定模块403,用于将候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,得到候选视频帧对应的可驱动个性化三维模型;
102.虚拟对象生成模块404,用于根据候选视频帧对应的可驱动个性化三维模型,确定目标对象的可驱动三维虚拟对象。
103.本公开实施例提供的技术方案,通过将所生成的运动视频帧序列中候选视频帧的三维参数化模型的三维关节点信息映射到候选视频帧的三维个性化模型中,可得到候选视频帧对应的可驱动个性化三维模型;之后,根据候选视频帧对应的可驱动个性化三维模型,来确定目标对象的可驱动三维虚拟对象。上述方案,通过引入目标对象运动变化的一系列候选视频帧即运动视频帧序列,结合三维参数化模型和三维个性化模型,使得最终所生成的可驱动三维虚拟对象更为逼真。进一步的,本方案对于具有虚拟对象生成需求的一方而言,无需具备骨骼绑定等方面的专业知识,只需提供运动视频帧序列即可自动生成可驱动三维虚拟对象,即降低了在虚拟对象生成过程中骨骼绑定门槛和成本,提高了效率。此外,本方案不仅可适用于人的虚拟对象生成场景,还可适用于其他非人活体的虚拟对象生成场景,即本方案具有较强的适配性。
104.示例性的,虚拟对象生成模块404包括:
105.模型选择单元,用于从候选视频帧对应的可驱动个性化三维模型中选择目标视频帧对应的可驱动个性化三维模型,以及其他视频帧对应的可驱动个性化三维模型;
106.虚拟对象生成单元,用于采用其他视频帧对应的可驱动个性化三维模型,对目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间的绑定权重进行调整,得到目标对象的可驱动三维虚拟对象。
107.示例性的,虚拟对象生成单元具体用于:
108.确定其他视频帧对应的可驱动个性化三维模型的三维关节点,与目标视频帧对应的可驱动个性化三维模型的三维关节点之间的相对旋转角度;
109.将相对旋转角度和目标视频帧对应的可驱动个性化三维模型作为网络输入,其他视频帧对应的可驱动个性化三维模型作为标签数据,调整目标视频帧对应的可驱动个性化三维模型上的顶点与三维关节点之间的绑定权重,得到目标对象的可驱动三维虚拟对象。
110.示例性的,模型生成模块402包括参数化模型生成单元,参数化模型生成单元包括:
111.待调模型生成子单元,用于生成运动视频帧序列中候选视频帧的待调参数化模型;
112.目标参数确定子单元,用于基于候选视频帧的待调参数化模型中的待调体型参数,确定目标体型参数;
113.参数化模型生成子单元,用于根据目标体型参数,对候选视频帧的待调参数化模型中的待调体型参数进行调整,得到候选视频帧的三维参数化模型。
114.示例性的,目标参数确定子单元具体用于:
115.根据候选视频帧的待调参数化模型中的待调体型参数,确定平均体型参数;
116.将平均体型参数,作为目标体型参数。
117.示例性的,模型生成模块402包括个性化模型生成单元,个性化模型生成单元用于:
118.提取运动视频帧序列的候选视频帧中目标对象的二维轮廓信息;
119.根据候选视频帧中目标对象的二维轮廓信息,构建候选视频帧对应的三维个性化模型。
120.示例性的,视频帧序列获取模块具体用于:
121.对原始视频数据进行对象检测、对象裁剪或对象追踪中的至少一项,得到目标对象的运动视频帧序列。
122.示例性的,视频帧序列获取模块402具体用于:
123.根据对原始视频数据中候选对象的选择操作,确定目标对象;
124.从原始视频数据中提取目标对象的运动视频帧序列。
125.示例性的,上述装置还包括:
126.输出模块,用于根据展示参数,输出目标对象的可驱动三维虚拟对象。
127.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
128.图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
129.如图5所示,电子设备500包括计算单元501,其可以根据存储在只读存储器(rom)502中的计算机程序或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序,来执行各种适当的动作和处理。在ram 503中,还可存储电子设备500操作所需的各种程序和数据。计算单元501、rom 502以及ram 503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。
130.电子设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许电子设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
131.计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如虚拟对象生成方法。例如,在一些实施例中,虚拟对象生成方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom 502和/或通信单元509而被载入和/或安装到电子设备500上。当计算机程序加载到ram 503并由计算单元501执行时,可以执行上文描述的虚拟对象生成方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行虚拟对象生成方法。
132.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理
器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
133.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
134.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
135.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
136.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
137.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
138.人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
139.云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟
资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
140.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
141.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献