掌桥专利:专业的专利平台
掌桥专利
首页

一种位姿生成方法、装置、计算机设备和存储介质

文献发布时间:2023-06-19 11:19:16


一种位姿生成方法、装置、计算机设备和存储介质

技术领域

本公开涉及计算机技术领域,具体而言,涉及一种位姿生成方法、装置、计算机设备和存储介质。

背景技术

人体姿态的预测和生成作为计算机视觉研究领域中的一个重要课题,具有广泛的应用。现有技术中,常见的方式大多是基于获取的人体初始姿态信息,生成一系列的预测人体姿态。

但是,在生成预测人体姿态的过程中,人体轨迹和人体轨迹上的各个人体姿态是一起生成的,这就导致在生成每个预测人体姿态时,需要同步处理的数据量过大,进而增加了数据处理难度。

发明内容

本公开实施例至少提供一种位姿生成方法、装置、计算机设备和存储介质。

第一方面,本公开实施例提供了一种位姿生成方法,包括:

基于场景图像,确定所述场景图像中目标对象的初始位姿信息和所述场景图像的场景信息;

基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息,以及所述目标对象的姿态序列;

基于所述路径信息和所述姿态序列,确定所述目标对象在所述场景图像所对应的场景中的目标运动轨迹。

通过分开生成路径信息和姿态序列的方式,能够实现对生成路径信息和生成姿态序列的过程的单独处理,相对同步生成路径信息和姿态序列,单独处理路径信息的数据量或单独处理姿态序列的数据量必定要小,同时将单独生成姿态序列、路径信息以及将两者进行融合以生成目标运动轨迹的方式,能够降低生成目标运动轨迹的数据处理难度。另外,路径信息和姿态序列都是基于场景信息生成的,能够减少生成的路径信息和姿态序列与场景信息对应的场景中的其他对象相矛盾(例如,路径信息对应的路径穿过墙壁,姿态序列中的某个姿态穿墙等)的情况的出现,相比较现有技术中在生成姿态信息时,不参考场景信息的方式,本公开同时提高了生成的路径信息和姿态序列与场景信息的兼容性,进而,能够实现生成的目标运动轨迹与场景信息对应的场景的兼容,提高了生成的目标运动轨迹的合理性和准确性。

在一种可能的实施方式中,所述基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息,以及所述目标对象的姿态序列,包括:

基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息;

基于所述路径信息、所述场景信息和所述初始位姿信息,生成所述目标对象在所述路径信息对应的各个位置点上的姿态,得到所述姿态序列。

基于初始位姿信息,能够确定目标对象的初始位置和初始姿态,利用场景信息指导路径信息的生成,能够提高路径信息上包括的每一个位置与场景信息对应的场景的兼容性,再利用场景信息和初始姿态指导在每一个位置上生成对应的姿态,既能够提高生成的姿态序列与路径信息的匹配度,又能够提高姿态序列与场景的兼容性。

在一种可能的实施方式中,所述基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息,包括:

获取符合预设过程的向量集合;

基于所述场景信息、所述向量集合和所述初始位姿信息,生成所述目标对象的路径信息。

利用符合预设过程的向量集合,例如符合高斯过程的噪声序列,能够确定初始位姿信息中的初始位置所在的目标像素点的周围像素点对该目标像素点的影响程度大小,然后,通过影响程度确定在初始位置处的下一方向和下一位置,能够提高确定的下一位置与场景信息对应的场景的兼容性,依次类推,能够确定一系列与场景信息对应的场景兼容的位置,即能够生成路径信息,提高了生成的路径信息的合理性,以及生成的路径信息与场景信息的兼容性。

在一种可能的实施方式中,所述获取符合预设过程的向量集合,包括:

基于所述初始位姿信息,确定所述初始位姿信息在所述场景图像中对应的目标像素点;

从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点;

针对筛选得到的每个像素点,基于所述像素点与所述目标像素点,确定符合预设过程的一个向量;

基于得到的所有向量,确定所述向量集合。

利用预设距离筛选出的像素点,能够生成目标像素点对应的具有不同方向的向量,基于不同方向的向量,能够选取到对路径信息影响最大的像素点,从而能够提高生成的路径信息的准确性。

在一种可能的实施方式中,所述基于所述场景信息、所述向量集合和所述初始位姿信息,生成所述目标对象的路径信息,包括:

基于所述目标像素点,确定所述向量集合中每个向量对所述路径信息的影响程度;

基于所述场景信息和所述影响程度,从所述向量集合中选取目标向量,并基于所述目标向量对应的像素点,确定所述初始姿态信息对应的位置点的下一个位置点;

将所述目标向量对应的像素点作为新的目标像素点,并返回所述从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点的步骤;

基于所述初始姿态信息对应的位置点,和确定的至少部分所述下一个位置点,生成所述目标对象的路径信息。

向量集合中每个向量对路径信息的影响程度,能够表征目标对象在目标像素点对应的位置点朝向该向量中筛选出的像素点所对应的位置点移动的概率,基于场景信息,能够确定向量集合中每个向量中筛选出的像素点所对应的位置点与场景信息对应的场景的兼容性,进而,基于影响程度和场景信息,能够准确地筛选影响程度较大且与场景信息对应的场景兼容性好的目标向量;通过每次确定的目标像素点及其对应的向量集合,能够准确地确定目标对象移动的位置点,进而,提高了生成的路径信息的合理性。

在一种可能的实施方式中,所述基于所述路径信息和所述姿态序列,确定所述目标对象在所述场景图像所对应的场景中的目标运动轨迹,包括:

基于所述姿态序列中每个姿态的位置信息,和所述路径信息中各个位置点的位置信息,建立所述姿态序列中的姿态与所述路径信息中位置点之间的映射关系;

基于所述路径信息、所述姿态序列和所述映射关系,生成所述目标运动轨迹。

基于建立的映射关系,能够准确地确定路径信息上的每一位置对应的姿态,进而,能够提高生成的目标运动轨迹上每一位置与姿态的匹配度,提高了生成的目标运动轨迹的合理性。

在一种可能的实施方式中,基于所述场景图像生成所述目标运动轨迹的步骤是由训练好的运动生成模型执行的;

所述位姿生成方法还包括训练所述运动生成模型的步骤:

获取样本场景图像和所述样本场景图像对应的样本运动信息,并将所述样本场景图像输入待训练的运动生成模型,所述待训练的运动生成模型对所述样本场景图像进行处理,输出预测运动信息;

基于所述样本运动信息和所述预测运动信息,构造目标损失函数;

利用所述目标损失函数,对所述待训练的运动生成模型进行训练,得到训练好的运动生成模型。

这样,利用目标损失函数对运动生成模型进行训练,能够保证训练得到的运动生成模型能够生成较为合理的预测运动信息,实现对目标对象的运动信息,例如目标运动轨迹的合理预测。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息和样本姿态序列;所述目标损失函数包括第一损失函数;所述预测运动信息包括预测运动轨迹;

所述基于所述样本运动信息和所述预测运动信息,构造目标损失函数,包括:

获取所述样本场景图像对应的样本场景信息;

基于所述样本路径信息和所述样本姿态序列,生成样本运动轨迹;

基于所述样本运动轨迹、所述预测运动轨迹和所述样本场景信息,构造所述第一损失函数。

由于预测运动轨迹是基于样本场景信息生成的,而样本运动轨迹是与样本场景信息相兼容的、且合理的运动轨迹信息,根据预测运动轨迹和样本运动轨迹和样本场景信息构造的关于运动轨迹的第一损失函数,能够提高确定第一损失函数的合理性,继而能够提高训练完成的运动生成模型所生成的目标运动轨迹的合理性。

在一种可能的实施方式中,所述基于所述样本运动轨迹、所述预测运动轨迹和所述样本场景信息,构造所述第一损失函数,包括:

确定所述样本运动轨迹对应的二维样本运动轨迹,以及所述预测运动轨迹对应的二维预测运动轨迹;

基于所述二维样本运动轨迹、所述二维预测运动轨迹和所述样本场景信息,构造所述第一损失函数。

这样,通过将样本运动轨迹和预测运动轨迹进行投影的方式,能够实现对样本运动轨迹和预测运动轨迹在二维场景中的合理性监督,因此,利用上述实施方式中构造的第一损失函数对运动生成模型进行训练,能够提高训练完成的运动生成模型对场景的兼容性,提高生成的预测运动信息的合理性和准确性。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息;所述目标损失函数包括第二损失函数;所述预测运动信息包括预测路径信息;

所述基于所述样本运动信息和所述预测运动信息,构造目标损失函数,包括:

基于样本路径信息和预测路径信息,构造所述第二损失函数。

这样,利用基于样本路径信息和预测路径信息之间的差异,构造的第二损失函数对运动生成模型进行训练,能够提高训练完成的运动生成模型所生成的预测路径信息的准确性。

在一种可能的实施方式中,所述样本运动信息包括样本姿态序列;所述目标损失函数包括第三损失函数;所述预测运动信息包括预测姿态序列;

所述基于所述样本运动信息和所述预测运动信息,构造目标损失函数,包括:

基于样本姿态序列和预测姿态序列,构造所述第三损失函数。

这样,利用基于样本姿态序列和预测姿态序列之间的差异,构造的第三损失函数对运动生成模型进行训练,能够提高训练完成的运动生成模型所生成的预测姿态序列的准确性。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息;所述目标损失函数包括第四损失函数;所述预测运动信息包括预测路径信息;

所述基于所述样本运动信息和所述预测运动信息,构造目标损失函数,包括:

获取所述样本场景图像对应的样本场景信息;

确定所述预测路径信息中各个位置点上的预测姿态,以及所述样本路径信息中各个位置点上的样本姿态;

基于所述预测姿态、所述样本姿态和所述样本场景信息,构造所述第四损失函数。

这样,利用预测姿态、样本姿态和样本场景信息,构造第四损失函数,能够提高第四损失函数与样本场景信息的兼容性,进而,利用第四损失函数对运动生成模型进行训练,能够实现训练得到的运动生成模型能够在每一个位置上生成与场景信息兼容的姿态。

在一种可能的实施方式中,所述基于所述预测姿态、所述样本姿态和所述样本场景信息,构造所述第四损失函数,包括:

针对所述样本路径信息中各个位置点,确定该位置点对应的样本姿态和该位置点对应的预测姿态;以及,基于所述样本场景信息,确定与该位置点匹配的多个目标场景信息;

基于每个位置点对应的预测姿态、样本姿态和多个目标场景信息,构造所述第四损失函数。

这里,确定的多个目标场景信息,能够增加用于训练的场景信息的数量,进而,能够提高确定的第四损失函数的合理性。

在一种可能的实施方式中,所述目标对象包括虚拟对象;

所述方法还包括:

基于所述目标运动轨迹,在游戏画面中显示所述虚拟对象的至少一条可选路径,以供所述虚拟游戏对象响应于接收到的指令进行选取。

根据虚拟对象的初始位姿信息和场景信息,能够在游戏画面中显示虚拟对象的至少一条可选路径,从而使虚拟对象能够基于接收的指令进行选取,从而能够增强游戏的画面感和趣味性。

在一种可能的实施方式中,所述目标对象包括目标人物;

所述方法还包括:

基于所述目标人物的目标运动轨迹,通过显示设备显示所述目标人物可选的运行路径。

通过显示设备显示目标人物可选的运行路径,能够提高目标人物的运行效率,增强目标人物和显示设备的交互效果。

第二方面,本公开实施例还提供一种位姿生成装置,包括:

第一确定模块,用于基于场景图像,确定所述场景图像中目标对象的初始位姿信息和所述场景图像的场景信息;

生成模块,用于基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息,以及所述目标对象的姿态序列;

第二确定模块,用于基于所述路径信息和所述姿态序列,确定所述目标对象在所述场景图像所对应的场景中的目标运动轨迹。

在一种可能的实施方式中,所述生成模块,用于基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息;

基于所述路径信息、所述场景信息和所述初始位姿信息,生成所述目标对象在所述路径信息对应的各个位置点上的姿态,得到所述姿态序列。

在一种可能的实施方式中,所述生成模块,用于获取符合预设过程的向量集合;

基于所述场景信息、所述向量集合和所述初始位姿信息,生成所述目标对象的路径信息。

在一种可能的实施方式中,所述生成模块,用于基于所述初始位姿信息,确定所述初始位姿信息在所述场景图像中对应的目标像素点;

从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点;

针对筛选得到的每个像素点,基于所述像素点与所述目标像素点,确定符合预设过程的一个向量;

基于得到的所有向量,确定所述向量集合。

在一种可能的实施方式中,所述生成模块,用于基于所述目标像素点,确定所述向量集合中每个向量对所述路径信息的影响程度;

基于所述场景信息和所述影响程度,从所述向量集合中选取目标向量,并基于所述目标向量对应的像素点,确定所述初始姿态信息对应的位置点的下一个位置点;

将所述目标向量对应的像素点作为新的目标像素点,并返回所述从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点的步骤;

基于所述初始姿态信息对应的位置点,和确定的至少部分所述下一个位置点,生成所述目标对象的路径信息。

在一种可能的实施方式中,所述第二确定模块,用于基于所述姿态序列中每个姿态的位置信息,和所述路径信息中各个位置点的位置信息,建立所述姿态序列中的姿态与所述路径信息中位置点之间的映射关系;

基于所述路径信息、所述姿态序列和所述映射关系,生成所述目标运动轨迹。

在一种可能的实施方式中,基于所述场景图像生成所述目标运动轨迹的步骤是由训练好的运动生成模型执行的;

所述装置还包括训练所述运动生成模型的训练模块,所述训练模块,用于获取样本场景图像和所述样本场景图像对应的样本运动信息,并将所述样本场景图像输入待训练的运动生成模型,所述待训练的运动生成模型对所述样本场景图像进行处理,输出预测运动信息;

基于所述样本运动信息和所述预测运动信息,构造目标损失函数;

利用所述目标损失函数,对所述待训练的运动生成模型进行训练,得到训练好的运动生成模型。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息和样本姿态序列;所述目标损失函数包括第一损失函数;所述预测运动信息包括预测运动轨迹;

所述训练模块,用于获取所述样本场景图像对应的样本场景信息;

基于所述样本路径信息和所述样本姿态序列,生成样本运动轨迹;

基于所述样本运动轨迹、所述预测运动轨迹和所述样本场景信息,构造所述第一损失函数。

在一种可能的实施方式中,所述训练模块,用于确定所述样本运动轨迹对应的二维样本运动轨迹,以及所述预测运动轨迹对应的二维预测运动轨迹;

基于所述二维样本运动轨迹、所述二维预测运动轨迹和所述样本场景信息,构造所述第一损失函数。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息;所述目标损失函数包括第二损失函数;所述预测运动信息包括预测路径信息;

所述训练模块,用于基于样本路径信息和预测路径信息,构造所述第二损失函数。

在一种可能的实施方式中,所述样本运动信息包括样本姿态序列;所述目标损失函数包括第三损失函数;所述预测运动信息包括预测姿态序列;

所述训练模块,用于基于样本姿态序列和预测姿态序列,构造所述第三损失函数。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息;所述目标损失函数包括第四损失函数;所述预测运动信息包括预测路径信息;

所述训练模块,用于获取所述样本场景图像对应的样本场景信息;

确定所述预测路径信息中各个位置点上的预测姿态,以及所述样本路径信息中各个位置点上的样本姿态;

基于所述预测姿态、所述样本姿态和所述样本场景信息,构造所述第四损失函数。

在一种可能的实施方式中,所述训练模块,用于针对所述样本路径信息中各个位置点,确定该位置点对应的样本姿态和该位置点对应的预测姿态;以及,基于所述样本场景信息,确定与该位置点匹配的多个目标场景信息;

基于每个位置点对应的预测姿态、样本姿态和多个目标场景信息,构造所述第四损失函数。

在一种可能的实施方式中,所述目标对象包括虚拟对象;

所述装置还包括:第一显示模块,用于基于所述目标运动轨迹,在游戏画面中显示所述虚拟对象的至少一条可选路径,以供所述虚拟游戏对象响应于接收到的指令进行选取。

在一种可能的实施方式中,所述目标对象包括目标人物;

所述装置还包括:第二显示模块,用于基于所述目标人物的目标运动轨迹,通过显示设备显示所述目标人物可选的运行路径。

第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。

第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。

关于上述位姿生成装置、计算机设备、及计算机可读存储介质的效果描述参见上述位姿生成方法的说明,这里不再赘述。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开实施例所提供的一种位姿生成方法的流程图;

图2示出了本公开实施例所提供的一种生成目标对象的目标运动轨迹的示意图;

图3示出了本公开实施例所提供的一种训练运动生成模型的方法的流程图;

图4示出了本公开实施例所提供的一种构造目标损失函数的示意图;

图5示出了本公开实施例所提供的一种位姿生成装置的示意图;

图6示出了本公开实施例所提供的一种计算机设备结构示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

另外,本公开实施例中的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。

在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

经研究发现,人体姿态的预测和生成作为计算机视觉研究领域中的一个重要课题,具有广泛的应用。现有技术中,常见的方式大多是基于获取的人体初始姿态信息,生成一系列的预测人体姿态。但是,在生成预测人体姿态的过程中,人体轨迹和人体轨迹上的各个人体姿态是一起生成的,这就导致在生成每个预测人体姿态时,需要同步处理的数据量过大,进而增加了数据处理难度。

基于上述研究,本公开提供了一种位姿生成方案,能够实现对生成路径信息和生成姿态序列的过程的单独处理,相对同步生成路径信息和姿态序列,单独处理路径信息的数据量或单独处理姿态序列的数据量必定要小,同时将单独生成姿态序列、路径信息以及将两者进行融合以生成目标运动轨迹的方式,能够降低生成目标运动轨迹的数据处理难度。另外,路径信息和姿态序列都是基于场景信息生成的,能够减少生成的路径信息和姿态序列与场景信息对应的场景中的其他对象相矛盾(例如,路径信息对应的路径穿过墙壁,姿态序列中的某个姿态穿墙等)的情况的出现,相比较现有技术中在生成姿态信息时,不参考场景信息的方式,本公开同时提高了生成的路径信息和姿态序列与场景信息的兼容性,进而,能够实现生成的目标运动轨迹与场景信息对应的场景的兼容,提高了生成的目标运动轨迹的合理性和准确性。

针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种位姿生成方法进行详细介绍,本公开实施例所提供的位姿生成方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该位姿生成方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

下面以执行主体为计算机设备为例对本公开实施例提供的位姿生成方法加以说明。

参见图1所示,为本公开实施例提供的一种位姿生成方法的流程图,可以包括以下步骤:

S101:基于场景图像,确定场景图像中目标对象的初始位姿信息和场景图像的场景信息。

这里,场景图像可以是摄像装置拍摄的包括不同场景的图像,每一个场景图像中可以包括不同的对象,对象可以是场景中的诸如建筑、陈列品等物体,诸如人物、动物等生物,诸如地面等能够反映拍摄场地的背景,等等。例如,场景可以为包括沙发、桌椅和楼梯等对象的室内场景,也可以为包括道路、树木和房屋等对象的室外场景等;场景图像中还可以包括目标对象,其中,目标对象可以为人、宠物等能够在场景下自由移动的生物,另外,目标对象可以包括一个或多个。

其中,目标对象在场景图像中对应的场景中具有初始位姿信息,初始位姿信息包括目标对象在场景中的位置和在此位置上的姿态信息,能够反映目标对象的状态,例如,正在行走、跑步、睡觉等。

场景信息可以是深度信息,包括场景中各对象的深度信息,比如,场景中所有物体和/或人体的深度信息。例如,场景中人物的位置、姿态等的深度信息,物品的类别、大小、位置、形状等的深度信息,能够反映场景中每一个物体和/或人体在相机坐标系下的深度特征。

具体实施时,在获取场景图像之后,可以将其输入到训练好的深度信息提取网络中,深度信息提取网络对场景图像进行场景编码,获取场景图像对应的场景深度图,进而,可以基于场景深度图,确定场景图像中所包括的场景信息和目标对象的初始位姿信息。

S102:基于场景信息和初始位姿信息,生成目标对象的路径信息,以及目标对象的姿态序列。

这里,在获取场景信息和初始位姿信息之后,可以以初始位姿信息指示的在场景信息对应的场景中的位置作为目标对象起始的位置点,以场景信息所包括的不同对象的深度信息作为确定目标对象的路径信息的监督信息,生成与场景信息匹配或是适应于当前场景的路径信息。其中,监督信息可以避免生成的路径上的位置点与场景信息所包括的不同对象对应的位置点相矛盾(例如,路径信息对应的路径穿过墙壁)的情况,从而,可以生成与场景信息对应的场景相兼容的路径信息,即生成的路径信息对应的路径可以与场景所包括诸如每一个物体和/或人体等对象相兼容。也就意味着,在生成的路径信息中,不会出现某一位置与某一物体和/或人体出现重合的情况,或者,不会出现路径信息对应的路径穿过墙体或地板的情况。这样,能够生成合理的路径信息。

然后,在生成路径信息之后,可以将初始位姿信息对应的姿态信息作为初始姿态,然后利用路径信息和场景信息,从初始姿态开始,引导包括若干个姿态的姿态序列的生成,生成的姿态序列中的两个相邻的姿态之间具有动作上的关联性。以目标对象的姿态序列为下楼梯的姿态序列为例,姿态序列中的目标对象在楼梯上的两个相邻的姿态中,在前生成的姿态可以为目标对象的左脚在第4层台阶上,右脚在第5层台阶上的姿态,在后生成的姿态可以为目标对象的右脚在第3层台阶上,左脚在第4层台阶上的姿态。根据场景信息和路径信息,即可生成上述具有关联性的相邻的姿态。

具体实施时,可以利用路径信息引导姿态序列生成,在生成姿态序列中的每一个姿态的过程中,考虑每一个姿态与场景信息对应的场景的兼容性,即在生成姿态序列的过程中,不会出现目标对象的某一姿态与场景中的某一物体和/或人体相矛盾的情况,例如,以目标对象为人为例,不会出现目标对象的腰部一半的位置位于桌子的边角位置,这样,能够实现生成的每一个目标对象的姿态都与场景信息相兼容,即不会在同一位置出现多个物体或是多个人体,或是不会在同一位置出现一个物体和至少一个人体,又或是不会在同一位置出现一个人体和多个物体等。进而,能够实现生成的姿态序列与场景信息相兼容,提高了生成的姿态序列的合理性。

如果目标对象包括多个,本公开实施例所提供的位姿生成方法对应的执行主体可以同时生成多个目标对象的路径信息和姿态序列,且多个目标对象的路径信息和姿态序列之间不会存在冲突。

另外,针对一个目标对象(即任一个目标对象或是特定的一个目标对象),可以同时生成与场景信息相兼容的多条路径信息及其对应的姿态序列,并且不同的路径信息及其对应的姿态序列可以对应于一个目标位置,即可以根据初始位姿信息和目标位置,生成若干条不同的前往目标位置的合理的路径信息和姿态序列,其中,目标位置可以是预设位置,在不存在预设位置的情况下,可以生成若干条不同的可扩展的路径信息。

另外,如果生成的路径信息中包括场景中的物体的位置点,则可以在该位置点处生成与该物体相兼容的合理姿态,例如,路径信息中包括场景中的沙发对应的位置点,则可以生成合理的人物落座于沙发上的姿态,和/或,人物从落座于沙发的状态到起身离开沙发的姿态,当然,也可以适当调整路径信息对应的位置点,从而使人物在执行行走/跑步等动作时,避开沙发所在的位置点,生成人物靠近沙发行走/跑步的姿态等。这样,能够进一步提高生成的姿态序列的合理性。

在另一些实施例中,也可以先基于初始姿态信息生成与场景信息兼容的姿态序列,然后再利用姿态序列引导生成与场景信息兼容的路径信息,这里不进行限定。

在该实施例中,路径信息和姿态序列可以是由训练好的运动生成模型确定的,运动生成模型中包括路径信息生成器和姿态序列生成器,其中,路径信息生成器用于生成路径信息,姿态序列生成器用于生成姿态序列,具体实施时,在获取场景信息和初始位姿信息之后,可以将场景深度和初始位姿信息输入到训练好的运动生成模型中,然后该运动生成模型可以基于获取的场景信息和初始位姿信息,输出目标对象对应的一条或多条路径信息,以及与生成的路径信息对应的姿态序列,另外,获取的场景信息可以包括场景深度图。

S103:基于路径信息和姿态序列,确定目标对象在场景图像所对应的场景中的目标运动轨迹。

这里,目标运动轨迹包括目标对象在场景中的移动路径和在移动的过程中的姿态,利用目标运动轨迹能够反映目标对象在场景中的具体活动过程。

在生成路径信息及其对应的姿态序列之后,可以将路径信息和姿态序列进行合成,确定目标对象的目标运动轨迹信息,具体实施时,可以包括以下方式:

方式一、生成的姿态序列可以是按照姿态序列包括的每个姿态的生成时间顺序排列得到的,然后可以将姿态序列包括的每个姿态按照排列顺序与路径信息中的每一个位置点相加,得到目标对象在每个位置点处的位姿信息,然后将确定的每一个位置点的位姿信息的位姿顺序相连,得到目标运动轨迹。

方式二、可以先确定路径信息中的每一个位置点对应的位置信息,然后再确定姿态序列中每一个姿态的位置信息,这里,位置信息可以是场景图像中的像素点信息,进而,可以将位置信息一样的路径信息中的位置点和姿态相加,确定目标对象在每个位置点处的位姿信息,然后将确定的每一个位置点的位姿信息的位姿顺序相连,可以得到目标运动轨迹。具体实施时,目标运动轨迹可以是由训练好的运动生成模型、在确定目标对象的路径信息和姿态序列之后生成的。

在目标对象包括多个的情况下,针对每一个目标对象,都可以基于上述过程,分别确定每一个目标对象的目标运动轨迹,具体实施时,可以同时确定每一个目标对象的目标运动轨迹。同样的,如果针对同一目标对象,生成的路径信息和姿态序列包括多组的情况下,同样可以同时确定该目标对象的多条目标运动轨迹。

在另一种实施例中,如果是先生成目标对象的姿态序列,再生成姿态序列对应的路径信息的方式,可以先确定姿态序列中每一个姿态的位置信息,然后再确定路径信息中每一个位置点的位置信息,进而,可以将相同位置信息的姿态序列中的姿态和路径信息中位置点相加,确定目标对象在每个姿态的位置信息对应的位置点处的位姿,然后将确定的每一个位姿相连,得到目标运动轨迹。

另外,本公开实施例所提供的位姿生成方法可以应用在游戏中的目标对象的位姿生成或VR/AR中目标对象的位姿生成等场景中。

在一种实施例中,所述目标对象包括虚拟对象;

所述方法还包括:

基于所述目标运动轨迹,在游戏画面中显示所述虚拟对象的至少一条可选路径,以供所述虚拟游戏对象响应于接收到的指令进行选取。

目标对象可以包括游戏中的虚拟对象,当确定虚拟对象在游戏中的初始位姿信息之后,可以根据该游戏对应的游戏场景信息和该初始位姿信息,生成虚拟对象的至少一个目标运动轨迹。然后可以在游戏画面中,将各目标运动轨迹转化为虚拟对象可以选择的可选路径,并显示在游戏画面中供正在体验该游戏的用户选择。这里,显示在游戏画面中的多条可选路径可以是由用户指定了目的地后提供的包含目的地的可选路径,也可以是未指定目的地的可选路径,这里不进行限定。

然后可以基于用户的选择,生成控制虚拟对象的指令并指示虚拟对象响应于该指令,在游戏画面中选择该指令对应的可选路径,并在该路径上行走或者奔跑。

或者,可以基于正在体验游戏的用户输入的目的地,结合出发点,虚拟对象可以从生成的多条可选的多条路径,自动选择一条包括目的地的路径行走/奔跑等,以在游戏场景中抵达用户输入的目的地。

这样,根据虚拟对象的初始位姿信息和场景信息,能够在游戏画面中显示虚拟对象的至少一条可选路径,从而使虚拟对象能够基于接收的指令进行选取,从而能够增强游戏的画面感和趣味性。

在另一种实施例中,目标对象包括目标人物;

所述方法还包括:

基于所述目标人物的目标运动轨迹,通过显示设备显示所述目标人物可选的运行路径。

这里,显示设备可以是VR/AR设备,目标对象可以包括使用显示设备的目标人物,在生成目标人物的目标运动轨迹后,可以将目标运动轨迹转化为在显示设备中显示的目标人物可选的至少一条可选路径,然后可以基于目标人物的选择,按照目标人物选择的路径行走/奔跑。

这样,通过显示设备显示目标人物可选的运行路径,能够提高目标人物的运行效率,增强目标人物和显示设备的交互效果。

在一种可能的实施方式中,可以按照以下步骤生成目标对象的路径信息和姿态序列:

步骤一、基于场景信息和初始位姿信息,生成目标对象的路径信息;

步骤二、基于路径信息、场景信息和初始位姿信息,生成目标对象在路径信息对应的各个位置点上的姿态,得到姿态序列。

这里,路径信息可以由位于场景中的多个位置点连接组成,其中,起始位置可以是初始位姿信息对应的位置点,且在该实施例中,上述步骤的执行主体可以是训练好的运动生成模型,其中,运动生成模型可以以程序的形式嵌入到计算机设备中。

具体实施时,在将获取的场景信息和初始位姿信息输入到训练好的运动生成模型之后,运动生成模型可以确定初始位姿信息对应的位置点和初始姿态,然后基于获取的场景信息,先确定目标对象在初始位姿信息对应的位置点起的下一个位置点,再确定该位置点的下一个位置点,依次类推,可以确定从初始位姿信息对应的位置点起的一系列位置点,其中,在确定每一个位置点的过程中,运动生成模型会判断该位置点是否与场景信息对应的场景兼容,在确定兼容的情况下,确定该位置点合理,否则将重新确定位置点,这样,能够提高确定的每一个位置点的合理性,之后,可以将一系列的位置点连接,确定场景下的路径信息。

在一种实施例中,初始位姿信息也可以是直接输入到运动生成模型的,不需要利用深度信息提取网络提取,这里不进行限定。

进一步的,在确定路径信息之后,可以基于确定的每一个位置点和初始姿态,确定在每一个位置点处的姿态。具体实施时,根据初始姿态,针对初始位姿信息对应的位置点的下一个位置点,可以基于该位置点在场景中的具体位置,生成该位置点处的与初始姿态具有动作连续性的移动姿态,例如,在初始位姿信息对应的位置点的下一个位置点为场景中的第一阶楼梯时,生成的姿态可以为与初始姿态具有动作连续性的上楼梯姿态,或者,在下一个位置点为场景中沙发时,生成的姿态可以为与初始姿态具有动作连续性的坐沙发的姿态;之后,可以确定此位置点的下一位置点的姿态,基于此,可以确定在每一个位置点的姿态,进而,可以生成目标对象在路径信息对应的各个位置点上的姿态,得到所述姿态序列。

在一种实施例中,针对步骤一,在获取初始位姿信息和场景信息之后,可以先获取符合预设过程的向量集合,然后再基于场景信息、向量集合和初始位姿信息,生成目标对象的路径信息。

具体实施时,可以按照以下步骤获取符合预设过程的向量集合:

步骤一、基于所述初始位姿信息,确定所述初始位姿信息在所述场景图像中对应的目标像素点;

步骤二、从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点;

步骤三、针对筛选得到的每个像素点,基于所述像素点与所述目标像素点,确定符合预设过程的一个向量;

步骤四、基于得到的所有向量,确定所述向量集合。

这里,预设过程可以是高斯过程,向量集合可以包括多个基于场景图像中的像素点确定的向量。符合高斯过程的向量集合可以是直接输入的,也可以是运动生成模型确定的,这里不进行限定。

下面以符合高斯过程的向量集合是运动生成模型确定的为例,对生成目标对象的路径信息的过程进行说明:

场景图像中的每个像素点对应于真实场景中的一个位置点,因此,基于确定的初始位置点,可以确定初始位置点对应的目标像素点,然后可以从场景图像中筛选与该目标像素点具有预设距离的多个像素点,然后可以基于目标像素点和筛选出的具有预设距离的多个像素点中的每个像素点,确定符合高斯过程的多个向量,多个向量组合一个向量集合,其中,预设距离可以是目标对象的运动步长,确定的每个向量由目标像素点和筛选出的一个像素点组成。

上述筛选出的像素点对目标对象的运行轨迹有一定的影响程度,即筛选出的像素点所对应的向量对目标对象的运行轨迹一定的影响程度,不同的向量对目标对象的运行轨迹有不同的影响程度。影响程度可以用于表征目标对象在目标像素点对应的位置点朝向对应的向量中筛选出的像素点所对应的位置点移动的概率,示例性地,影响程度越高,概率越高。之后,可以基于影响程度和场景信息,从向量集合中筛选出目标向量。筛选得到目标向量对目标对象的运动轨迹影响较大,并且与场景信息兼容性较好。之后,将目标向量中包括的筛选出的像素点对应的位置点作为目标对象移动的下一个位置点,例如,如果影响程度最高的像素点对应的位置点与场景信息兼容性较差,而影响程度次高的像素点对应的位置点与场景信息兼容性最好,则将该影响程度次高的像素点对应的位置点作为目标对象移动的下一个位置点。然后,可以将上述目标对象移动的下一个位置点所对应像素点作为新的目标像素点,重复上述过程确定目标对象移动的下一个新的位置点,依次类推,基于确定的各个所述下一个位置点以及初始位置点可以确定目标对象的路径信息。并且,在基于路径信息和场景信息生成姿态序列的过程中,也可以利用符合预设过程的向量集合进行确定,这里不再赘述。

另外,如果需要生成目标对象的多条路径信息,可以在目标像素点对应的向量集合中,选取多个向量,然后分别确定每一个向量中的针对目标像素点的下一像素点,进而,可以分别确定每一个下一像素点的下一像素点,最后,可以生成多条路径信息。

在一种实施例中,基于路径信息和所述姿态序列,确定目标对象在所述场景图像所对应的场景中的目标运动轨迹,包括:

基于姿态序列中每个姿态的位置信息,和路径信息中各个位置点的位置信息,建立姿态序列中的姿态与路径信息中位置点之间的映射关系;

基于路径信息、姿态序列和映射关系,生成目标运动轨迹。

这里,姿态序列中的每一个姿态存在一个对应的姿态位置点,每一个姿态位置点在场景图像中存在对应的像素点,并且每一个姿态位置点都对应于一个路径信息的位置点,每一个路径信息的位置点在场景图像中也存在对应的像素点,因此,在生成路径信息和姿态序列之后,可以基于每一个姿态位置点对应的像素点和路径信息的各个位置点对应的像素点,建立姿态序列中的姿态与路径信息中位置点之间的映射关系,进而,可以根据该映射关系,将姿态序列中的每个姿态的信息与路径信息中的对应位置点的信息相加,生成目标运动轨迹。

如图2所示,为本公开实施例所提供的一种生成目标对象的目标运动轨迹的示意图,其中,A表示场景图像,B表示深度信息提取网络对A进行场景编码后,输出的场景深度图。

另外,由于本公开实施例中基于场景图像生成目标运动轨迹的步骤是由训练好的运动生成模型执行的,所以本公开实施例提供的位姿生成方法还包括训练运动生成模型的步骤,如图3所示,为本公开实施例所提供的一种训练运动生成模型的方法的流程图,可以包括以下步骤:

S301:获取样本场景图像和样本场景图像对应的样本运动信息,并将样本场景图像输入待训练的运动生成模型,待训练的运动生成模型对样本场景图像进行处理,输出预测运动信息。

S302:基于样本运动信息和预测运动信息,构造目标损失函数。

S303:利用目标损失函数,对待训练的运动生成模型进行训练,得到训练好的运动生成模型。

这里,训练好的运动生成模型是通过对待训练的运动生成模型进行多次训练,在训练结果收敛于预设值的情况下确定的,样本场景图像是由摄像装置拍摄的,具体实施时,样本场景图像可以包括若干个,以增加用于训练的样本的数量,这样,基于大量的样本场景图像,可以提高训练好的运动生成模型的预测精度。样本运动信息是在样本场景图像对应的场景中的合理运动信息,可以是预先获取的。目标损失函数可以用于对待训练的运动生成模型进行训练。

在获取样本场景图像之后,可以将其输入到待训练的运动生成模型中,

待训练的运动生成模型可以对其进行处理,确定样本场景图像中的样本对象的初始位姿信息,然后,可以基于样本场景图像和初始位姿信息,对样本对象的运动信息进行预测,输出预测运动信息。具体实施时,样本运动信息可以包括多个,输出预测运动信息也同时存在多个,这样,基于大量的样本运动信息,可以提高训练好的运动生成模型的预测精度。

进而,可以基于获取的样本运动信息和预测运动信息,确定样本运动信息和预测运动信息之间的损失信息,并基于该损失信息构造目标损失函数,然后,利用目标损失函数对待训练的运动生成模型进行训练,得到训练好的运动生成模型。

在一种实施例中,样本运动信息包括样本路径信息和样本姿态序列;目标损失函数包括第一损失函数;预测运动信息包括预测运动轨迹,针对S302,可以按照以下步骤确定目标损失函数:

步骤一、获取样本场景图像对应的样本场景信息;

步骤二、基于样本路径信息和样本姿态序列,生成样本运动轨迹;

步骤三、基于样本运动轨迹、预测运动轨迹和样本场景信息,构造第一损失函数。

具体实施时,待训练的运动生成模型可以包括深度信息提取网络,用于获取样本场景图像中的样本场景信息,或者,待训练的运动生成模型中存在预先存储的样本场景图像的样本场景信息,在获取样本场景图像之后,可以直接确定样本场景信息,或者,样本场景信息可以是直接输入到待训练的运动生成模型的,这里不进行限定。

待训练的运动生成模型可以基于样本路径信息和样本姿态序列,确定样本映射关系,然后基于样本映射关系,生成样本运动轨迹,进而,可以基于样本场景信息,确定样本运动轨迹和预测运动轨迹之间的损失信息,构造用于训练待训练的运动生成模型的第一损失函数。

在一种实施例中,第一损失函数可以是关于样本运动轨迹和预测运动轨迹在二维图像坐标系中的损失函数,具体实施时,样本运动轨迹和预测运动轨迹都是基于三维的样本场景图像生成的三维运动轨迹,样本对象的三维运动轨迹可能会存在与样本场景信息对应的三维场景信息不兼容的问题,例如,样本对象出现穿墙、撞地板或在空中漂浮的问题,且在三维场景信息中无法判别。

但是,在样本场景信息对应的二维场景信息中,可以基于样本对象在二维场景的比例,判断出样本对象是否存在上述问题,这里,样本场景信息对应的二维场景信息和三维场景信息可以是直接输入的,也可以是,待训练的运动生成模型基于获取的样本场景信息确定的,这里不进行限定。在确定样本运动轨迹和预测运动轨迹之后,可以将其投影到二维图像坐标系,得到样本运动轨迹对应的二维样本运动轨迹,以及预测运动轨迹对应的二维预测运动轨迹,其中,二维样本运动轨迹是样本对象在二维场景信息对应的二维场景中的真实合理的人体动作,进而,可以基于二维场景信息对应的二维场景,确定样本对象的二维预测运动轨迹与真实的样本运动轨迹之间的损失信息,并利用样本场景信息和损失信息,构造监督预测运动轨迹的第一损失函数。具体实施时,第一损失函数可以利用预设的投影鉴别器构造。

这样,通过将样本运动轨迹和预测运动轨迹进行投影的方式,能够实现对样本运动轨迹和预测运动轨迹在二维场景中的合理性监督,因此,利用上述实施方式中构造的第一损失函数对运动生成模型进行训练,能够提高训练完成的运动生成模型对场景的兼容性,提高生成的预测运动信息的合理性和准确性。

在一种可能的实施方式中,样本运动信息包括样本路径信息;目标损失函数包括第二损失函数;预测运动信息包括预测路径信息,其中,样本路径信息是在样本场景信息对应的样本场景中的合理路径信息,第二损失函数是关于预测样本对象的路径信息的损失函数。

在获取样本路径信息之后,基于待训练的运动生成模型输出的预测路径信息,可以确定样本路径信息和预测路径信息之间的损失信息,进而,可以构造关于路径信息的第二损失函数。具体实施时,第二损失函数可以利用预设的轨迹鉴别器构造。

这样,利用基于样本路径信息和预测路径信息之间的差异,构造的第二损失函数对运动生成模型进行训练,能够提高训练完成的运动生成模型所生成的预测路径信息的准确性。

在一种可能的实施方式中,样本运动信息包括样本姿态序列;目标损失函数包括第三损失函数;预测运动信息包括预测姿态序列,其中,样本姿态序列是在样本场景信息对应的样本场景中的合理姿态序列,第三损失函数是关于预测样本对象的姿态序列的损失函数。

在获取样本姿态序列之后,基于待训练的运动生成模型输出的预测姿态序列,可以确定样本姿态序列和预测姿态序列之间的损失信息,进而,可以构造关于姿态序列的第三损失函数。具体实施时,第三损失函数可以利用预设的姿态鉴别器构造。

这样,利用基于样本姿态序列和预测姿态序列之间的差异,构造的第三损失函数对运动生成模型进行训练,能够提高训练完成的运动生成模型所生成的预测姿态序列的准确性。

在一种实施例中,样本运动信息包括样本路径信息;目标损失函数包括第四损失函数;预测运动信息包括预测路径信息,其中,样本路径信息是在样本场景信息对应的样本场景中的合理路径信息,第四损失函数是关于预测样本对象在路径信息上的预测姿态的损失函数。

这里,为了进一步提高预测姿态序列中每一个姿态与场景信息对应的场景的局部结构的兼容性,本公开实施例还构造了关于每一个预测姿态的第四损失函数。

具体实施时,在获取样本场景图像之后,可以确定其对应的样本场景信息,并生成由多个位置点组成的预测路径信息,然后在基于预测路径信息和样本场景信息,生成预测姿态序列的每一个预测姿态的过程中,针对样本路径信息中各个位置点,确定该位置点对应的样本姿态和该位置点对应的预测姿态,并可以基于该位置点,从样本场景信息中获取该位置点预设范围内的目标场景信息,其中,目标场景信息用于反映该位置点预设范围内的局部场景结构,然后可以利用空间变换网络,基于目标场景信息和样本场景信息,确定该位置点对应的多个目标场景信息,进一步的,可以确定每一个位置点对应的多个目标场景信息、样本姿态和预测姿态,之后,可以基于每个位置点对应的预测姿态、样本姿态和多个目标场景信息,构造第四损失函数。并且,具体实施时,目标场景信息可以包括目标场景信息图,这里,确定的多个目标场景信息,能够增加用于训练的场景信息的数量,进而,能够提高确定的第四损失函数的合理性。

然后利用第四损失函数对待训练的运动生成模型进行训练,得到训练好的运动生成模型,进而,在利用该训练好的运动生成模型生成预测姿态序列中的每一个预测姿态时,能够实现每一个预测姿态与该预测姿态对应的位置点的局部场景结构相兼容,不会出现例如人体腰部一半的位置位于桌子的边角中的预测姿态。这样,能够提高生成的每一个预测姿态的合理性。具体实施时,第四损失函数可以利用预设的场景上下文鉴别器构造。

另外,目标损失函数可以包括第一损失函数、第二损失函数、第三损失函数、第四损失函数中的一种或多种,也可以是基于第一损失函数、第二损失函数、第三损失函数、第四损失函数中的一种或多种确定的,这里不进行限定。如图4所示,为本公开实施例所提供的一种构造目标损失函数的示意图,其中,目标损失函数是基于确定的第一损失函数、第二损失函数、第三损失函数和第四损失函数得到的,C表示样本场景图像,D表示样本场景深度图,E表示场景上下文鉴别器,F表示轨迹鉴别器,G表示投影鉴别器,H表示姿态鉴别器,3D-2D投影表示从三维空间向二维平面进行投影。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一发明构思,本公开实施例中还提供了与位姿生成方法对应的位姿生成装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述位姿生成方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

如图5所示,为本公开实施例提供的一种位姿生成装置的示意图,包括:

第一确定模块501,用于基于场景图像,确定所述场景图像中目标对象的初始位姿信息和所述场景图像的场景信息;

生成模块502,用于基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息,以及所述目标对象的姿态序列;

第二确定模块503,用于基于所述路径信息和所述姿态序列,确定所述目标对象在所述场景图像所对应的场景中的目标运动轨迹。

在一种可能的实施方式中,所述生成模块502,用于基于所述场景信息和所述初始位姿信息,生成所述目标对象的路径信息;

基于所述路径信息、所述场景信息和所述初始位姿信息,生成所述目标对象在所述路径信息对应的各个位置点上的姿态,得到所述姿态序列。

在一种可能的实施方式中,所述生成模块502,用于获取符合预设过程的向量集合;

基于所述场景信息、所述向量集合和所述初始位姿信息,生成所述目标对象的路径信息。

在一种可能的实施方式中,所述生成模块502,用于基于所述初始位姿信息,确定所述初始位姿信息在所述场景图像中对应的目标像素点;

从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点;

针对筛选得到的每个像素点,基于所述像素点与所述目标像素点,确定符合预设过程的一个向量;

基于得到的所有向量,确定所述向量集合。

在一种可能的实施方式中,所述生成模块502,用于基于所述目标像素点,确定所述向量集合中每个向量对所述路径信息的影响程度;

基于所述场景信息和所述影响程度,从所述向量集合中选取目标向量,并基于所述目标向量对应的像素点,确定所述初始姿态信息对应的位置点的下一个位置点;

将所述目标向量对应的像素点作为新的目标像素点,并返回所述从所述场景图像中筛选与所述目标像素点具有预设距离的多个像素点的步骤;

基于所述初始姿态信息对应的位置点,和确定的至少部分所述下一个位置点,生成所述目标对象的路径信息。

在一种可能的实施方式中,所述第二确定模块503,用于基于所述姿态序列中每个姿态的位置信息,和所述路径信息中各个位置点的位置信息,建立所述姿态序列中的姿态与所述路径信息中位置点之间的映射关系;

基于所述路径信息、所述姿态序列和所述映射关系,生成所述目标运动轨迹。

在一种可能的实施方式中,基于所述场景图像生成所述目标运动轨迹的步骤是由训练好的运动生成模型执行的;

所述装置还包括训练所述运动生成模型的训练模块504,所述训练模块504,用于获取样本场景图像和所述样本场景图像对应的样本运动信息,并将所述样本场景图像输入待训练的运动生成模型,所述待训练的运动生成模型对所述样本场景图像进行处理,输出预测运动信息;

基于所述样本运动信息和所述预测运动信息,构造目标损失函数;

利用所述目标损失函数,对所述待训练的运动生成模型进行训练,得到训练好的运动生成模型。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息和样本姿态序列;所述目标损失函数包括第一损失函数;所述预测运动信息包括预测运动轨迹;

所述训练模块504,用于获取所述样本场景图像对应的样本场景信息;

基于所述样本路径信息和所述样本姿态序列,生成样本运动轨迹;

基于所述样本运动轨迹、所述预测运动轨迹和所述样本场景信息,构造所述第一损失函数。

在一种可能的实施方式中,所述训练模块504,用于确定所述样本运动轨迹对应的二维样本运动轨迹,以及所述预测运动轨迹对应的二维预测运动轨迹;

基于所述二维样本运动轨迹、所述二维预测运动轨迹和所述样本场景信息,构造所述第一损失函数。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息;所述目标损失函数包括第二损失函数;所述预测运动信息包括预测路径信息;

所述训练模块504,用于基于样本路径信息和预测路径信息,构造所述第二损失函数。

在一种可能的实施方式中,所述样本运动信息包括样本姿态序列;所述目标损失函数包括第三损失函数;所述预测运动信息包括预测姿态序列;

所述训练模块504,用于基于样本姿态序列和预测姿态序列,构造所述第三损失函数。

在一种可能的实施方式中,所述样本运动信息包括样本路径信息;所述目标损失函数包括第四损失函数;所述预测运动信息包括预测路径信息;

所述训练模块504,用于获取所述样本场景图像对应的样本场景信息;

确定所述预测路径信息中各个位置点上的预测姿态,以及所述样本路径信息中各个位置点上的样本姿态;

基于所述预测姿态、所述样本姿态和所述样本场景信息,构造所述第四损失函数。

在一种可能的实施方式中,所述训练模块504,用于针对所述样本路径信息中各个位置点,确定该位置点对应的样本姿态和该位置点对应的预测姿态;以及,基于所述样本场景信息,确定与该位置点匹配的多个目标场景信息;

基于每个位置点对应的预测姿态、样本姿态和多个目标场景信息,构造所述第四损失函数。

在一种可能的实施方式中,所述目标对象包括虚拟对象;

所述装置还包括:第一显示模块505,用于基于所述目标运动轨迹,在游戏画面中显示所述虚拟对象的至少一条可选路径,以供所述虚拟游戏对象响应于接收到的指令进行选取。

在一种可能的实施方式中,所述目标对象包括目标人物;

所述装置还包括:第二显示模块506,用于基于所述目标人物的目标运动轨迹,通过显示设备显示所述目标人物可选的运行路径。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

本公开实施例还提供了一种计算机设备,如图6所示,为本公开实施例提供的一种计算机设备结构示意图,包括:

处理器61和存储器62;所述存储器62存储有处理器61可执行的机器可读指令,处理器61用于执行存储器62中存储的机器可读指令,所述机器可读指令被处理器61执行时,处理器61执行下述步骤:S101:基于场景图像,确定场景图像中目标对象的初始位姿信息和场景图像的场景信息;S102:基于场景信息和初始位姿信息,生成目标对象的路径信息,以及目标对象的姿态序列以及S103:基于路径信息和姿态序列,确定目标对象在场景图像所对应的场景中的目标运动轨迹。

上述存储器62包括内存621和外部存储器622;这里的内存621也称内存储器,用于暂时存放处理器61中的运算数据,以及与硬盘等外部存储器622交换的数据,处理器61通过内存621与外部存储器622进行数据交换。

上述指令的具体执行过程可以参考本公开实施例中所述的位姿生成方法的步骤,此处不再赘述。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的位姿生成方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例所提供的位姿生成方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的位姿生成方法的步骤,具体可参见上述方法实施例,在此不再赘述。

该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 一种位姿生成方法、装置、计算机设备和存储介质
  • 位姿数据处理方法、装置、地图生成设备和存储介质
技术分类

06120112879410