CN116152404A - 动画重定向方法、装置、计算机设备及存储介质 - Google Patents
动画重定向方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN116152404A CN116152404A CN202310419613.8A CN202310419613A CN116152404A CN 116152404 A CN116152404 A CN 116152404A CN 202310419613 A CN202310419613 A CN 202310419613A CN 116152404 A CN116152404 A CN 116152404A
- Authority
- CN
- China
- Prior art keywords
- target
- bone
- sub
- skeleton
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 471
- 238000013508 migration Methods 0.000 claims abstract description 142
- 230000005012 migration Effects 0.000 claims abstract description 142
- 230000006978 adaptation Effects 0.000 claims abstract description 99
- 238000013507 mapping Methods 0.000 claims abstract description 81
- 230000001105 regulatory effect Effects 0.000 claims abstract description 18
- 230000015654 memory Effects 0.000 claims description 27
- 238000001514 detection method Methods 0.000 claims description 20
- 239000000758 substrate Substances 0.000 claims 2
- 230000008569 process Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 8
- 230000035515 penetration Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及三维动画技术领域,公开了动画重定向方法、装置、计算机设备及存储介质。动画重定向方法,包括:获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系;获取源骨骼在原动画中的运动数据;根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据;检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果;根据适配结果调节初始重定向数据,得到目标重定向数据。通过本发明,能够使目标骨骼按照目标重定向数据进行运动的运动状态更贴合源骨骼按照运动数据进行运动的运动状态,从而实现不同模型间三维动画数据的迁移复用。
Description
技术领域
本发明涉及三维动画领域,具体涉及动画重定向方法、装置、计算机设备及存储介质。
背景技术
三维动画在游戏、影视、虚拟现实、数字孪生等领域有着广泛的应用,三维动画的生产目前普遍需要大量艺术家和工程师的手工制作,或者借助动捕等手段去实现,生产过程耗费大量的人力和物力,且效率低。
相关技术中,三维动画是和模型强绑定的,不同拓扑结构的模型,其动画数据并不能直接复用,导致大量的不同模型的三维动画数据,但无法被新创建的模型使用。
因此,亟需一种能够实现针对不同模型间三维动画数据进行复用的动画重定向方法。
发明内容
有鉴于此,本发明实施例提供了一种动画重定向方法、装置、计算机设备及存储介质,以解决不同模型的三维动画数据无法进行复用的问题。
第一方面,本发明实施例提供了一种动画重定向方法,方法包括:
获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系;
获取源骨骼在原动画中的运动数据,所述原动画为所述源模型所在的动画;
根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据;
检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果;
根据适配结果调节初始重定向数据,得到目标重定向数据。
在该方式中,能够基于源骨骼与目标骨骼之间的骨骼映射关系,将源骨骼的运动数据进行针对性迁移,并对目标骨骼按照迁移后的运动数据(初始重定向数据)进行运动的适配情况进行检测,得到适配结果,以通过适配结果检测初始重定向数据的有效性。根据适配结果调节初始重定向数据,能够保障调节的有效性,进而使得到目标重定向数据更准确、更有效,使目标骨骼按照目标重定向数据进行运动的运动状态更贴合源骨骼按照运动数据进行运动的运动状态,从而实现不同模型间三维动画数据的迁移复用。
在一种可选的实施方式中,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据,包括:
根据运动数据,确定源骨骼中源根骨骼的子运动数据;
根据骨骼映射关系,将源根骨骼的子运动数据迁移至目标骨骼中的目标根骨骼,得到目标根骨骼的子运动数据,其中,目标根骨骼为目标骨骼中与源根骨骼对应的骨骼;
根据运动数据,确定源骨骼中源普通骨骼的子运动数据;
根据骨骼映射关系,将源普通骨骼的子运动数据迁移至目标骨骼中的目标普通骨骼,得到目标普通骨骼的子运动数据,其中,目标普通骨骼为目标骨骼中与源普通骨骼对应的骨骼;
将目标根骨骼的子运动数据和目标普通骨骼的子运动数据作为初始重定向数据。
在该方式中,可以使目标根骨骼和目标普通骨骼均得到对应的子运动数据,进而提高子运动数据迁移有效性。
在一种可选的实施方式中,根据骨骼映射关系,将源根骨骼的子运动数据迁移至目标骨骼中的目标根骨骼,得到目标根骨骼的子运动数据,包括:
根据源根骨骼的子运动数据,得到源根骨骼在世界坐标系下的第一相对运动数据;
将第一相对运动数据按照指定权重进行拷贝,得到第一拷贝结果;
根据骨骼映射关系,将第一拷贝结果赋值给目标骨骼中的目标根骨骼,得到目标根骨骼在世界坐标系下的子运动数据。
在该方式中,有助于降低迁移误差,提高运动数据迁移的有效性。
在一种可选的实施方式中,根据骨骼映射关系,将源普通骨骼的子运动数据迁移至目标骨骼中的目标普通骨骼,得到目标普通骨骼的子运动数据,包括:
根据源根骨骼的子运动数据,得到源普通骨骼在局部坐标系下的第二相对运动数据;
将第二相对运动数据按照指定权重进行拷贝,得到第二拷贝结果;
根据骨骼映射关系,将第二拷贝结果赋值给目标骨骼中的目标普通骨骼,得到目标普通骨骼在局部坐标系下的目标普通骨骼的子运动数据。
在该方式中,有助于降低迁移误差,提高运动数据迁移的有效性。
在一种可选的实施方式中,在获取源骨骼在原动画中的运动数据之前,方法还包括:
将源模型和目标模型调整在同一初始姿态下,并分别将源模型的旋转参数以及目标模型的旋转参数清零。
在该方式中,保障在迁移运动数据之前,源骨骼与目标骨骼的姿态和运动状态均相同。
在一种可选的实施方式中,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据,包括:
根据运动数据,分别确定源骨骼中每一个子源骨骼的子运动数据;
根据骨骼映射关系,分别确定每一个子源骨骼对应的子目标骨骼,子目标骨骼为目标骨骼包括的子骨骼;
分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据。
在该方式中,能够将源骨骼中各子源骨骼的子运动数据针对性的迁移至对应的子目标骨骼中,进而有助于提高初始重定向数据迁移的有效性,降低漏迁移的情况发生。
在一种可选的实施方式中,分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,目标骨骼的初始重定向数据,包括:
若一个子源骨骼与一个子目标骨骼对应,则将子源骨骼的子运动数据迁移至对应的子目标骨骼,得到对应的子目标骨骼的子初始重定向数据;
若多个子源骨骼与同一个子目标骨骼对应,则基于多个子源骨骼的子运动数据,确定待迁移的目标数据,并将目标数据迁移至与多个子源骨骼对应的子目标骨骼,得到子初始重定向数据。
在一种可选的实施方式中,分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,目标骨骼的初始重定向数据,包括:
若一个子源骨骼与一个子目标骨骼对应,则将子源骨骼的子运动数据迁移至对应的子目标骨骼,得到对应的子目标骨骼的子初始重定向数据;
若多个子源骨骼与同一个子目标骨骼对应,则基于多个子源骨骼的子运动数据,确定待迁移的目标数据,并将目标数据迁移至与多个子源骨骼对应的子目标骨骼,得到子初始重定向数据。
在一种可选的实施方式中,分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据,包括:
根据源模型的骨骼架构,从上到下遍历每一个子源骨骼,并分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据。
在该方式中,能够避免子运动数据漏迁移的情况发生。
在一种可选的实施方式中,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果,包括:
分别构建目标骨骼中多个待检测骨骼对应的碰撞体;
根据初始重定向数据中各待检测骨骼的子运动数据,确定各碰撞体的运动信息;
基于每两个碰撞体的运动信息,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在该方式中,通过适配情况检测,能够识别出迁移过程中出现穿模错误的骨骼,以便后续进行针对性处理,进而保障动画在目标模型适配的效果正确性。
在一种可选的实施方式中,多个待检测骨骼包括第一待检测骨骼和第二待检测骨骼,第一待检测骨骼对应的碰撞体为第一碰撞体,第二待检测骨骼对应的碰撞体为第二碰撞体;
基于每两个碰撞体的运动信息,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果,包括:
根据第一碰撞体的运动信息,得到第一碰撞体的第一法向集和第一顶点集,第一法向集包括多个第一法向,不同第一法向对应第一碰撞体不同面;
根据第二碰撞体的运动信息,得到第二碰撞体的第二法向集和第二顶点集,第二法向集包括多个第二法向,不同第二法向对应第二碰撞体不同面;
将第一法向集与第二法向集整合,得到方向集;
将第一顶点集分别投影至方向集中的每一个方向上,得到第一碰撞体在每一个方向上的第一覆盖区间;
将第二顶点集分别投影至方向集中的每一个方向上,得到第二碰撞体在每一个方向上的第二覆盖区间;
基于第一覆盖区间与第二覆盖区间在对应方向上的位置关系,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在一种可选的实施方式中,基于第一覆盖区间与第二覆盖区间在对应方向上的位置关系,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果,包括:
若第一覆盖区间与第二覆盖区间在对应方向上的位置关系为不相交,则确定对应方向为目标方向;
若方向集中存在至少一个目标方向,则确定第一碰撞体与第二碰撞体不会碰撞,适配结果为合适;
若方向集中不存在目标方向,则确定第一碰撞体与第二碰撞体会碰撞,适配结果为不合适。
在一种可选的实施方式中,根据适配结果调节初始重定向数据,得到目标重定向数据,包括:
若适配结果为合适,则将初始重定向数据作为目标重定向数据;
若适配结果为不合适,则确定目标骨骼中待调节对应子运动数据的待调节骨骼以及待调节骨骼对应的数据迁移权重;
获取指定权重调节量以及待调节骨骼对应待迁移的子运动数据;
根据指定调节条件对数据迁移权重进行调节,得到第一迁移权重;
将第一迁移权重作为新的数据迁移权重,并按照第一迁移权重将待迁移的子运动数据按照第一迁移权重重新迁移至待调节骨骼,得到待调节骨骼的子运动数据;
将初始重定向数据根据待调节骨骼的子运动数据进行更新,并按照更新后的初始重定向数据重新对目标骨骼进行适配检测,直至适配结果为合适;
指定调节条件包括按照指定系数或者指定差值降低数据迁移权重。
在该方式中,有助于提高运动数据的迁移成功率,使得到初始重定向数据与目标模型更适配。
在一种可选的实施方式中,在将初始重定向数据作为目标重定向数据之前,方法还包括:
根据目标骨骼的骨骼结构,确定待调节骨骼的父骨骼;
根据父骨骼对应的子运动数据,确定父骨骼的第一运动角度;
根据待调节骨骼的子运动数据,确定待调节骨骼的第二运动角度;
判断第一运动角度与第二运动角度之间的绝对差值是否小于指定阈值;
若绝对差值小于指定阈值,则将初始重定向数据作为目标重定向数据。
在该方式中,能够保障运动数据迁移后目标骨骼运动的协调自然。
在一种可选的实施方式中,方法还包括:
若绝对差值大于或者等于指定阈值,则按照指定调节条件重新调节第一迁移权重和第二迁移权重,直至绝对差值小于指定阈值;
根据待调节骨骼的最新数据迁移权重和父骨骼的最新数据迁移权重,确定目标迁移权重;
按照目标迁移权重重新确定待调节骨骼的子运动数据和父骨骼的子运动数据,以调节初始重定向数据,得到目标重定向数据。
在该方式中,按照目标迁移权重重新确定待调节骨骼的子运动数据和父骨骼的子运动数据,以调节初始重定向数据,得到目标重定向数据,从而使目标骨骼按照目标重定向数据进行运动时,能够保持动画动作协调、自然。
在一种可选的实施方式中,多个待检测骨骼为目标骨骼中的部分子目标骨骼或所有子目标骨骼。
在一种可选的实施方式中,源模型的拓扑结构与目标模型的拓扑结构不同。
在一种可选的实施方式中,骨骼映射关系包括以下任意一种或多种子骨骼映射关系:一个子源骨骼与一个子目标骨骼之间的第一骨骼映射关系,多个子源骨骼与一个子目标骨骼之间的第二骨骼映射关系,一个子源骨骼与多个子目标骨骼之间的第三骨骼映射关系。
在一种可选的实施方式中,所述获取所述源骨骼在原动画中的运动数据,包括:
根据所述原动画中每一帧动画的先后顺序,获取所述源骨骼在原动画中的运动数据;
所述方法还包括:
若所述目标骨骼得到所述原动画中每一帧动画对应的目标重定向数据,则确定所述原动画的运动数据完成重定向迁移。
在该方式中,通过将源骨骼在原动画各帧动画中的运动数据逐帧迁移至目标骨骼上,以使目标骨骼能够得到原动画中每一帧动画对应的目标重定向数据,进而使目标骨骼按照各目标重定向数据进行运动时,能够还原源骨骼在原动画中的运动状态,从而实现不同模型间三维动画数据的迁移复用。
第二方面,本发明实施例提供了一种动画重定向装置,装置包括:
第一获取模块,用于获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系;
第二获取模块,用于获取源骨骼在原动画中的运动数据,所述原动画为所述源模型所在的动画;
迁移模块,由于根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据;
检测模块,用于检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果;
调节模块,用于根据适配结果调节初始重定向数据,得到目标重定向数据。
第三方面,本发明实施例提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的动画重定向方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的动画重定向方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明一些实施例的动画重定向方法的流程示意图;
图2是根据本发明一些实施例的另一动画重定向方法的流程示意图;
图3是根据本发明一些实施例的又一动画重定向方法的流程示意图;
图4是根据本发明一些实施例的又一动画重定向方法的流程示意图;
图5是根据本发明实施例的结构体示意图;
图6是根据本发明实施例的碰撞检测示意图;
图7是根据本发明一些实施例的又一动画重定向方法的流程示意图;
图8是根据本发明实施例的动画重定向装置的结构框图;
图9是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种动画重定向方法,根据源模型的源骨骼与目标模型的目标骨骼之间的映射关系,将源骨骼在当前帧动画中的运动数据迁移至目标骨骼,得到初始重定向数据。检测目标骨骼按照初始重定向数据进行运动的适配情况,通过检测结果,对得到的初始重定向数据进行调节,得到目标重定向数据,以达到能够将源骨骼的动画数据在不同模型中进行复用的目的。
根据本发明实施例,提供了一种动画重定向方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种动画重定向方法,可用于计算机设备,如平板、电脑等,图1是根据本发明实施例的动画重定向方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系。
在本发明实施例中,源模型可以理解为是待进行动画迁移的模型。源模型对应的动画可以是人物、动物等具有运动数据的三维物体,在本发明中不进行限定。为便于进行针对性迁移,则获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系,以便后续能够进行针对性迁移。
在一些可选的实施方式中,可以通过指定软件工具,结合交互操作,建立源骨骼与目标骨骼之间的骨骼映射关系,进而以文件形式保存、记录,从而得到该骨骼映射关系。
在另一些可选的实施方式中,可以采用直接读取的方式,获取预先建立好的映射关系文件,通过解析该映射关系文件,得到源骨骼与目标骨骼之间的骨骼映射关系。
步骤S102,获取源骨骼在原动画中的运动数据。
在本发明实施例中,原动画为源模型所在的动画。其中,运动数据可以是源骨骼在该动画中的三维动画数据。
步骤S103,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据。
在本发明实施例中,为实现动画数据复用的目的,则根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据,以使目标骨骼能够根据得到的初始重定向数据还原源模型的运动状态。
步骤S104,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在本发明实施例中,为提高运动数据的迁移有效性,则检测目标骨骼按照初始重定向数据进行运动的适配情况,以根据得到的适配结果,确定目标模型是否能够还原源模型在当前帧动画中的运动,进而降低穿模的情况发生。
步骤S105,根据适配结果调节初始重定向数据,得到目标重定向数据。
在本发明实施例中,根据适配结果调节初始重定向数据,以提高适配性和迁移稳定性,进而使得到的目标重定向数据更准确、更有效。
本实施例提供的动画重定向方法,能够基于源骨骼与目标骨骼之间的骨骼映射关系,将源骨骼的运动数据进行针对性迁移,并对目标骨骼按照迁移后的运动数据(初始重定向数据)进行运动的适配情况进行检测,得到适配结果,以通过适配结果检测初始重定向数据的有效性。根据适配结果调节初始重定向数据,能够保障调节的有效性,进而使得到目标重定向数据更准确、更有效,使目标骨骼按照目标重定向数据进行运动的运动状态更贴合源骨骼按照运动数据进行运动的运动状态,从而实现不同模型间三维动画数据的迁移复用。
在一些可选的实施方式中,目标模型可以是与源模型拓扑结构相同的模型,进而在该种情况下,源骨骼与目标骨骼之间的骨骼映射关系可以为一一对应关系。目标模型也可以是与源模型拓扑结构不同的模型,进而在该种情况下,源骨骼与目标骨骼之间的骨骼映射关系可能存在多种子骨骼映射关系。
在另一些可选的实施方式中,骨骼映射关系包括以下任意一种或多种子骨骼映射关系:一个子源骨骼与一个子目标骨骼之间的第一骨骼映射关系,多个子源骨骼与一个子目标骨骼之间的第二骨骼映射关系,一个子源骨骼与多个子目标骨骼之间的第三骨骼映射关系。例如:以源模型和目标模型对应的动画均为人为例,若在源骨骼中,人的左胳膊由一个子源骨骼构成,在目标骨骼中,人的左胳膊由一个子目标骨骼构成,则针对人的左胳膊建立的子骨骼映射关系为第一骨骼映射关系。若在源骨骼中,人的左胳膊由多个子源骨骼构成,在目标骨骼中,人的左胳膊由一个子目标骨骼构成,则针对人的左胳膊建立的子骨骼映射关系为第二骨骼映射关系。若在源骨骼中,人的左胳膊由一个子源骨骼构成,在目标骨骼中,人的左胳膊由多个子目标骨骼构成,则针对人的左胳膊建立的子骨骼映射关系为第三骨骼映射关系。
在本实施例中提供了另一种动画重定向方法,可用于计算机设备,如平板、电脑等,图2是根据本发明实施例的动画重定向方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S202,获取源骨骼在原动画中的运动数据。详细请参见图1所示实施例的步骤S102,在此不再赘述。
步骤S203,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据。
具体地,上述步骤S203包括:
步骤S2031,根据运动数据,确定源骨骼中源根骨骼的子运动数据。
在本发明实施例中,源骨骼包括源根骨骼和源普通骨骼。其中,源根骨骼可以理解为是源骨骼中用于驱动源骨骼整体进行运动的骨骼。源普通骨骼可以理解为是源骨骼中用于驱动源骨骼局部进行运动的骨骼。因此,源骨骼的运动数据中包括源根骨骼的子运动数据和源普通骨骼的子运动数据。
为便于运动数据能够进行针对性迁移,则根据运动数据,确定源骨骼中源根骨骼的子运动数据。
步骤S2032,根据骨骼映射关系,将源根骨骼的子运动数据迁移至目标骨骼中的目标根骨骼,得到目标根骨骼的子运动数据。
在本发明实施例中,目标根骨骼为目标骨骼中用于驱动目标骨骼整体进行运动的骨骼。在骨骼映射关系中,目标根骨骼为目标骨骼中与源根骨骼对应的骨骼,因此,将源根骨骼的子运动数据迁移至目标骨骼中的目标根骨骼,以使目标根骨骼得到迁移后的目标根骨骼的子运动数据。
在一些可选的实施方式中,上述步骤S2032包括:
步骤a1,根据源根骨骼的子运动数据,得到源根骨骼在世界坐标系下的第一相对运动数据。
步骤a2,将第一相对运动数据按照指定权重进行拷贝,得到第一拷贝结果。
步骤a3,根据骨骼映射关系,将第一拷贝结果赋值给目标骨骼中的目标根骨骼,得到目标根骨骼在世界坐标系下的子运动数据。
具体地,源根骨骼是源骨骼中用于驱动源骨骼整体进行运动的子骨骼。在迁移源根骨骼的子运动数据的过程中,为提高迁移效率,则可以根据源根骨骼的子运动数据,得到源根骨骼在世界坐标系下的第一相对运动数据,进而将第一相对运动数据按照指定权重进行拷贝,得到第一拷贝结果。其中,世界坐标系为构建源模型以及目标模型时所确定的坐标系。由于源骨骼的拓扑结构和目标骨骼的拓扑结构可能不同,因此,在迁移第一相对运动数据时,按照指定权重进行拷贝,将得到的第一拷贝结果赋值给目标骨骼中的目标根骨骼,进而得到目标根骨骼在世界坐标系下的子运动数据,从而有助于降低迁移误差,提高运动数据迁移的有效性。指定权重的取值范围为[0,1]。在一例中,指定权重默认为1。在另一例中,不同源根骨骼对应的指定权重可以不同。
步骤S2033,根据运动数据,确定源骨骼中源普通骨骼的子运动数据。
同理,从运动数据中,确定源骨骼中源普通骨骼的子运动数据,以便运动数据能够进行针对性迁移。
步骤S2034,根据骨骼映射关系,将源普通骨骼的子运动数据迁移至目标骨骼中的目标普通骨骼,得到目标普通骨骼的子运动数据。
在一些可选的实施方式中,上述步骤S2024包括:
步骤b1,根据源根骨骼的子运动数据,得到源普通骨骼在局部坐标系下的第二相对运动数据。
步骤b2,将第二相对运动数据按照指定权重进行拷贝,得到第二拷贝结果。
步骤b3,根据骨骼映射关系,将第二拷贝结果赋值给目标骨骼中的目标普通骨骼,得到目标普通骨骼在局部坐标系下的目标普通骨骼的子运动数据。
具体地,源普通骨骼是源骨骼中用于驱动源骨骼局部进行运动的子骨骼。在迁移源普通骨骼的子运动数据的过程中,为提高迁移效率,则可以根据源普通骨骼的子运动数据,得到源普通骨骼在局部坐标系下的第一相对运动数据,进而将第二相对运动数据按照指定权重进行拷贝,得到第二拷贝结果。其中,局部坐标系为构建源模型以及目标模型时所确定的坐标系。在一例中,局部坐标系可以是本地坐标系。由于源骨骼的拓扑结构和目标骨骼的拓扑结构可能不同,因此,在迁移第二相对运动数据时,按照指定权重进行拷贝,将得到的第二拷贝结果赋值给目标骨骼中的目标普通骨骼,进而得到目标普通骨骼在世界坐标系下的子运动数据,从而有助于降低迁移误差,提高运动数据迁移的有效性。指定权重的取值范围为[0,1]。在一例中,指定权重默认为1。在另一例中,不同源普通骨骼对应的指定权重可以不同。在又一例中,拷贝第一相对运动数据所采用的指定权重和采用第二相对运动数据所采用的指定权重为相同权重。
步骤S2035,将目标根骨骼的子运动数据和目标普通骨骼的子运动数据作为初始重定向数据。
本实施例提供的初始重定向数据的得到过程,可以使目标根骨骼和目标普通骨骼均得到对应的子运动数据,进而提高子运动数据迁移有效性。
步骤S204,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。详细请参见图1所示实施例的步骤S104,在此不再赘述。
步骤S205,根据适配结果调节初始重定向数据,得到目标重定向数据。详细请参见图1所示实施例的步骤S105,在此不再赘述。
本实施例提供的动画重定向方法,能够根据源骨骼中骨骼类别(根骨骼和普通骨骼),将不同骨骼类别的子运动数据针对性的迁移至对应目标骨骼中,进而提高初始重定向数据迁移的有效性,降低误差。
在一些可选的实施方式中,在获取源骨骼在原动画中的运动数据之前,方法还包括:将源模型和目标模型调整在同一初始姿态下,并分别将源模型的旋转参数以及目标模型的旋转参数清零,以便后续进行运动数据迁移时,能够提高迁移效率。在一例中,初始姿态可以是T-pose或者A-pose,可以根据实际需求进行确定,在本发明中不进行限制。在另一例中,分别将源模型的旋转参数以及目标模型的旋转参数清零之后,还可以将源根骨骼的轴向旋转数值拷贝至目标根骨骼的轴向旋转数值,将源普通骨骼的轴向旋转数值拷贝至目标普通骨骼的轴向旋转数值,进而保障在迁移运动数据之前,源骨骼与目标骨骼的姿态和运动状态均相同。
在本实施例中提供了一种动画重定向方法,可用于上述的计算机设备,如平板、电脑等,图3是根据本发明实施例的动画重定向方法的流程图,如图3所示,该流程包括如下步骤:
步骤S301,获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S302,获取源骨骼在原动画中的运动数据。详细请参见图1所示实施例的步骤S102,在此不再赘述。
步骤S303,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据。
在一些可选的实施方式中,上述步骤S303包括:
步骤S3031,根据运动数据,分别确定源骨骼中每一个子源骨骼的子运动数据。
在本发明实施例中,源骨骼中包括多个子源骨骼。为便于将运动数据进行针对性迁移,则分别确定源骨骼中每一个子源骨骼的子运动数据。
步骤S3032,根据骨骼映射关系,分别确定每一个子源骨骼对应的子目标骨骼。
在本发明实施例中,目标骨骼中包括多个子目标骨骼。为便于将子源骨骼的子运动数据进行针对性迁移,则根据骨骼映射关系,分别确定每一个子源骨骼对应的子目标骨骼。
步骤S3033,分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据。
在一些可选的实施方式中,若一个子源骨骼与一个子目标骨骼对应,则将子源骨骼的子运动数据迁移至对应的子目标骨骼,得到对应的子目标骨骼的子初始重定向数据。若多个子源骨骼与同一个子目标骨骼对应,则基于多个子源骨骼的子运动数据,确定待迁移的目标数据,并将目标数据迁移至与多个子源骨骼对应的子目标骨骼,得到子初始重定向数据。
在另一些可选的实施方式中,可以采用以下任意一种方式确定目标数据:a:从多个子源骨骼的子运动数据中,任选一个子源骨骼的子运动数据作为待迁移的目标数据,进而将该目标数据迁移至与多个子源骨骼对应的子目标骨骼,从而有助于提高迁移效率。b:对多个子源骨骼的子运动数据进行加权平均处理,将处理后得到的数据作为目标数据。
在又一些可选的实施方式中,根据源模型的骨骼架构,从上到下遍历每一个子源骨骼,并分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据,进而能够避免子运动数据漏迁移的情况发生。
步骤S304,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。详细请参见图1所示实施例的步骤S104,在此不再赘述。
步骤S305,根据适配结果调节初始重定向数据,得到目标重定向数据。详细请参见图1所示实施例的步骤S105,在此不再赘述
本实施例提供的动画重定向方法,能够将源骨骼中各子源骨骼的子运动数据针对性的迁移至对应的子目标骨骼中,进而有助于提高初始重定向数据迁移的有效性,降低漏迁移的情况发生。
在本实施例中提供了一种动画重定向方法,可用于上述的计算机设备,如平板、电脑等,图4是根据本发明实施例的动画重定向方法的流程图,如图4所示,该流程包括如下步骤:
步骤S401,获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S402,获取源骨骼在原动画中的运动数据。详细请参见图1所示实施例的步骤S102,在此不再赘述。
步骤S403,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据。详细请参见图1所示实施例的步骤S103,在此不再赘述。
步骤S404,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在一些可选的实施方式中,上述步骤S404包括:
步骤S4041,分别构建目标骨骼中多个待检测骨骼对应的碰撞体。
在本发明实施例中,源骨骼的拓扑结构和目标骨骼的拓扑结构不同。将初始重定向数据迁移至目标骨骼中,可能会出现穿模等动作适配或者冲突的问题。为判断目标骨骼按照初始重定向数据进行运动时各子骨骼之间的空间位置关系,则分别构建目标骨骼中多个待检测骨骼对应的碰撞体,以对多个待检测骨骼进行碰撞检测。
在一些可选的实施方式中,多个待检测骨骼为目标骨骼中的部分子目标骨骼或所有子目标骨骼。碰撞体用于表示待检测骨骼在运动过程中所占的空间范围。碰撞体的形状可以是球形、圆柱形或者棱柱形,可以根据实际需求进行设定,在本发明中不进行限定。碰撞体基于遵循贴近模型和简单的原则进行构建。在构建碰撞体时,根据对应的待检测骨骼形状确定碰撞体的形状且形状简单,碰撞体的尺寸贴合待检测骨骼在运动过程中所占的尺寸。在一实施场景中,构建得到的结构体可以如图5所示。
步骤S4042,根据初始重定向数据中各待检测骨骼的子运动数据,确定各碰撞体的运动信息。
在本发明实施例中,碰撞体需要与对应的待检测骨骼进行关联绑定。根据初始重定向数据中各待检测骨骼的子运动数据,确定各碰撞体的运动信息,以使待检测骨骼旋转时,碰撞体可以跟随对应待检测骨骼进行同步旋转,并保持和对应待检测骨骼的相对位置关系不变。
步骤S4043,基于每两个碰撞体的运动信息,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在本发明实施例中,如果两个碰撞体在运动过程中发生碰撞,则说明目标骨骼根据得到初始重定向数据执行动作时存在适配冲突,进而会出现穿模问题。因此,基于每两个碰撞体的运动信息,可以确定两两碰撞体在运动的过程中是否会发生碰撞,进而可以确定目标骨骼按照初始重定向数据进行运动的适配情况,从而得到适配结果。
在一些可选的实施方式中,多个待检测骨骼包括第一待检测骨骼和第二待检测骨骼,第一待检测骨骼对应的碰撞体为第一碰撞体,第二待检测骨骼对应的碰撞体为第二碰撞体。上述步骤S4043包括:
步骤e1,根据第一碰撞体的运动信息,得到第一碰撞体的第一法向集和第一顶点集。第一法向集包括多个第一法向,不同第一法向对应第一碰撞体不同面。
步骤e2,根据第二碰撞体的运动信息,得到第二碰撞体的第二法向集和第二顶点集。第二法向集包括多个第二法向,不同第二法向对应第二碰撞体不同面
步骤e3,将第一法向集与第二法向集整合,得到方向集。
步骤e4,将第一顶点集分别投影至方向集中的每一个方向上,得到第一碰撞体在每一个方向上的第一覆盖区间。
步骤e5,将第二顶点集分别投影至方向集中的每一个方向上,得到第二碰撞体在每一个方向上的第二覆盖区间。
步骤e6,基于第一覆盖区间与第二覆盖区间在对应方向上的位置关系,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
具体地,根据第一碰撞体的运动信息,可以确定第一碰撞体每一个面的法向以及该第一碰撞体的各个顶点,进而得到第一碰撞体的第一法向集和第一顶点集。第一法向集包括多个第一法向,不同第一法向对应第一碰撞体不同面。根据第二碰撞体的运动信息,可以确定第二碰撞体每一个面的法向以及该第二碰撞体的各个顶点,进而得到第二碰撞体的第二法向集和第二顶点集。第二法向集包括多个第二法向,不同第二法向对应第二碰撞体不同面。为确定第一碰撞体和第二碰撞体之间是否发生碰撞,则根据第一碰撞体和第二碰撞体在任意方向上是否存在重叠进行判断。为确定第一碰撞体和第二碰撞体在运动过程中所涉及的所有方向,则将第一法向集与第二法向集整合,得到方向集。例如:若第一法向集为{N11,N12,…,N1n},第二法向集为{N21,N22,…,N2m},则将第一法向集与第二法向集整合后得到方向集为N={N11,N12,…,N1n,N21,N22,…,N2m}。
将第一顶点集分别投影至方向集中的每一个方向上,得到第一碰撞体在每一个方向上的第一覆盖区间。将第二顶点集分别投影至方向集中的每一个方向上,得到第二碰撞体在每一个方向上的第二覆盖区间。基于第一覆盖区间与第二覆盖区间在对应方向上的位置关系,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。例如:以方向集中任一方向Nij为例,第一碰撞体在该方向Nij上的第一覆盖区间为。第二碰撞体在该方向Nij上的第一覆盖区间为/>。通过判断/>与/>是否相交,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。即,若,则表征第一碰撞体和第二碰撞体在方向Nij上不会发生碰撞。
在一些可选的实施方式中,上述步骤e6包括:
步骤e61,若第一覆盖区间与第二覆盖区间在对应方向上的位置关系为不相交,则确定对应方向为目标方向。
步骤e62,若方向集中存在至少一个目标方向,则确定第一碰撞体与第二碰撞体不会碰撞,适配结果为合适。
步骤e63,若方向集中不存在目标方向,则确定第一碰撞体与第二碰撞体会碰撞,适配结果为不合适。
具体地,目标方向可以理解为是第一碰撞体和第二碰撞体在运动过程中不会发生碰撞的方向。因此,当方向集中存在至少一个目标方向,则表征第一碰撞体和第二碰撞体在运动过程中不会产生穿模冲突,因此,可以确定第一碰撞体与第二碰撞体不会碰撞,判断适配结果为合适。当方向集中不存在目标方向,则表征第一碰撞体和第二碰撞体在运动过程中会产生穿模冲突,因此,可以确定第一碰撞体与第二碰撞体会碰撞,因此,可以判断适配结果为不合适。
为便于理解,以图6为例,结合二维图像对上述步骤S4043进行说明:图中心的三角形为碰撞体a和四边形为碰撞体b。碰撞体a包括三个面的编号分别为:1、2、3。碰撞体b包括四个面的编号分别为:4、5、6、7。碰撞体a各个面对应的法向与各个面的编号相同。碰撞体b各个面对应的法向与各个面的编号相同。即,碰撞体a的面1与法向1对应、碰撞体a的面2与法向2对应,以此类推。将法向1至7整合到同一集合中,得到方向集{方向1、方向2、方向3、方向4、方向5、方向6、方向7}。将碰撞体a的各个顶点分别投影至方向1至7中,得到碰撞体a在各个方向上覆盖区间。同理,将碰撞体b的各个顶点分别投影至方向1至7中,得到碰撞体b在各个方向上覆盖区间。通过图示可知,在方向2和方向7上,碰撞体a的覆盖区间与碰撞体b的覆盖区间不相交,因此,可以确定碰撞体a与碰撞体b的适配结果为合适。
步骤S405,根据适配结果调节初始重定向数据,得到目标重定向数据。
在一些可选的实施方式中,上述步骤S405包括:
步骤f1,若适配结果为合适,则将初始重定向数据作为目标重定向数据。
步骤f2,若适配结果为不合适,则确定目标骨骼中待调节对应子运动数据的待调节骨骼以及待调节骨骼对应的数据迁移权重。
步骤f3,获取指定权重调节量以及待调节骨骼对应待迁移的子运动数据。
步骤f4,根据指定调节条件对数据迁移权重进行调节,得到第一迁移权重。
步骤f5,将第一迁移权重作为新的数据迁移权重,并按照第一迁移权重将待迁移的子运动数据按照第一迁移权重重新迁移至待调节骨骼,得到待调节骨骼的子运动数据。
步骤f6,将初始重定向数据根据待调节骨骼的子运动数据进行更新,并按照更新后的初始重定向数据重新对目标骨骼进行适配检测,直至适配结果为合适。
具体地,若适配结果为合适,则表征目标骨骼按照初始重定向数据进行运动时,不会发生穿模冲突。因此,可以直接将初始重定向数据作为目标重定向数据。若适配结果为不合适,则表征目标骨骼按照初始重定向数据进行运动时,会发生穿模冲突。因此,未避免该种情况发生,则确定目标骨骼中待调节对应子运动数据的待调节骨骼以及待调节骨骼对应的数据迁移权重,并获取指定权重调节量以及待调节骨骼对应待迁移的子运动数据,以通过调节数据迁移权重的方式,调节待调节骨骼的子运动数据。根据指定调节条件对数据迁移权重进行调节,得到第一迁移权重。将第一迁移权重作为新的数据迁移权重,并按照第一迁移权重将待迁移的子运动数据按照第一迁移权重重新迁移至待调节骨骼,得到待调节骨骼的子运动数据。将初始重定向数据根据待调节骨骼的子运动数据进行更新,并按照更新后的初始重定向数据重新对目标骨骼进行适配检测,直至适配结果为合适,进而有助于提高运动数据的迁移成功率,使得到初始重定向数据与目标模型更适配。
其中,指定调节条件包括按照指定系数或者指定差值降低数据迁移权重。例如:若指定调节条件为按照指定系数降低数据迁移权重,则每次降低数据迁移权重时,可以将乘以指定系数达到降低的目的。在一例中,以指定系数为0.9为例,第一迁移权重=数据迁移权重*0.9。若指定调节条件为按照指定差值降低数据迁移权重,则每次降低数据迁移权重时,可以减少指定差值达到降低的目的。在一例中,以指定差值为0.1为例,第一迁移权重=数据迁移权重-0.1。
在另一些可选的实施方式中,还包括执行如下步骤:
步骤g1,根据目标骨骼的骨骼结构,确定待调节骨骼的父骨骼。
步骤g2,根据父骨骼对应的子运动数据,确定父骨骼的第一运动角度。
步骤g3,根据待调节骨骼的子运动数据,确定待调节骨骼的第二运动角度。
步骤g4,判断第一运动角度与第二运动角度之间的绝对差值是否小于指定阈值。
步骤g5,若绝对差值小于指定阈值,则将初始重定向数据作为目标重定向数据。
具体地,为使运动数据迁移完成后,目标骨骼整体运动更协调、更自然,则根据目标骨骼的骨骼结构,确定待调节骨骼的父骨骼,以根据父骨骼的第一运动角度和待调节骨骼的第二运动角度之间的绝对差值,判断目标骨骼的整体动画动作是否协调自然。若绝对差值小于指定阈值,则可以确定目标骨骼按照初始重定向数据进行运动的整体动画动作是协调自然的,进而将初始重定向数据作为目标重定向数据。指定阈值可以理解为确定父子骨骼之间的运动是协调自然的最小角度值。
在又一些可选的实施方式中,还包括执行如下步骤:
步骤g6,若绝对差值大于或者等于指定阈值,则按照指定调节条件重新调节第一迁移权重和第二迁移权重,直至绝对差值小于指定阈值。
步骤g7,根据待调节骨骼的最新数据迁移权重和父骨骼的最新数据迁移权重,确定目标迁移权重。
步骤g8,按照目标迁移权重重新确定待调节骨骼的子运动数据和父骨骼的子运动数据,以调节初始重定向数据,得到目标重定向数据。
具体地,若绝对差值大于或者等于指定阈值,则表征待调节骨骼与父骨骼在进行运动时的动作不协调,因此,按照指定调节条件重新调节第一迁移权重和第二迁移权重,直至绝对差值小于指定阈值。为使相邻骨骼之间的运动数据能够保持平滑连续,则根据待调节骨骼的最新数据迁移权重和父骨骼的最新数据迁移权重,确定目标迁移权重。例如,可以采用求和平均的方式确定目标迁移权重,也可以采用加权平均的方式确定目标迁移权重。
进而按照目标迁移权重重新确定待调节骨骼的子运动数据和父骨骼的子运动数据,以调节初始重定向数据,得到目标重定向数据,从而使目标骨骼按照目标重定向数据进行运动时,能够保持动画动作协调、自然。
在本实施例中提供了另一种动画重定向方法,可用于计算机设备,如平板、电脑等,图7是根据本发明实施例的动画重定向方法的流程图,如图7所示,该流程包括如下步骤:
步骤S701,获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S702,获取源骨骼在原动画中的运动数据。
具体地,上述步骤S702包括:
步骤S7021,根据原动画中每一帧动画的先后顺序,获取源骨骼在原动画中的运动数据。
在本发明实施例中,原动画包括多帧动画。为保障源模型在原动画中的运动状态能够连贯的迁移到目标模型所在的目标骨骼上,则根据原动画中每一帧动画的先后顺序,获取源骨骼在原动画中的运动数据,以将源骨骼在各帧动画上的运动数据逐帧迁移至目标骨骼上。
步骤S703,根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据。详细请参见图1所示实施例的步骤S103,在此不再赘述。
步骤S704,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。详细请参见图1所示实施例的步骤S104,在此不再赘述。
步骤S705,根据适配结果调节初始重定向数据,得到目标重定向数据。详细请参见图1所示实施例的步骤S105,在此不再赘述。
步骤S706,若目标骨骼得到原动画中每一帧动画对应的目标重定向数据,则确定原动画的运动数据完成重定向迁移。
在本发明实施例中,当目标模型逐帧得到原动画中每一帧动画对应的目标重定向数据时,表征已将源骨骼在原动画各帧动画上的运动数据全部迁移至目标骨骼,进而可以确定源骨骼在原动画中的运动数据已迁移完毕。
因此,在迁移的过程中,若目标骨骼得到原动画中每一帧动画对应的目标重定向数据,则可以确定原动画的运动数据完成重定向迁移,进而可以结束迁移进程。
本实施例提供的动画重定向方法,通过将源骨骼在原动画各帧动画中的运动数据逐帧迁移至目标骨骼上,以使目标骨骼能够得到原动画中每一帧动画对应的目标重定向数据,进而使目标骨骼按照各目标重定向数据进行运动时,能够还原源骨骼在原动画中的运动状态,从而实现不同模型间三维动画数据的迁移复用。
在一实施场景中,为实现三维动画数据在不同模型之间的迁移复用和正确适配,则先获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系,进而将源骨骼的运动数据逐帧迁移至目标骨骼。在迁移过程中,根据目标模型在当前帧得到的初始重定向数据,对目标骨骼中的各待检测骨骼进行碰撞适配检测,确定各待检测骨骼的适配结果。若适配结果合格,则将初始重定向数据作为目标模型在当前帧的目标重定向数据。若适配结果不合格,则对待调节骨骼的子运动数据进行调节,直至适配结果合格。为保障调整后整体运动的动作协调自然,则在调节待调节骨骼的子运动数据的过程中,对待调节骨骼的父骨骼对应的子运动数据一并进行调节,直至父骨骼的第一运动角度与待调节骨骼的第二运动角度之间的绝对差值小于指定阈值,从而完成初始重定向数据的调节,得到目标重定向数据。若目标骨骼得到原动画中每一帧动画对应的目标重定向数据,则确定原动画的运动数据完成重定向迁移。
通过本实施例提供的动画重定向方法,通可实现相同或不同拓扑结构模型间的三维动画数据迁移复用,同时保障迁移后运动数据在目标模型的适配正确和动作自然。并且,通过适配情况检测,能够识别出迁移过程中出现穿模错误的骨骼,并进行针对性处理,进而保障动画在目标模型适配的效果正确性。利用多级父子骨骼在满足穿模约束下的运动拷贝权重进行加权融合,使连续的多级骨骼在进行数据拷贝时保持连续,进而能够保障迁移后运动的协调自然。
在本实施例中还提供了一种动画重定向装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种动画重定向装置,如图7所示,包括:
第一获取模块801,用于获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系;
第二获取模块802,用于获取源骨骼在原动画中的运动数据,原动画为所述源模型所在的动画;
迁移模块803,由于根据骨骼映射关系,将运动数据迁移至目标骨骼,得到目标骨骼的初始重定向数据;
检测模块804,用于检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果;
调节模块805,用于根据适配结果调节初始重定向数据,得到目标重定向数据。
在一些可选的实施方式中,迁移模块803包括:
第一确定单元,用于根据运动数据,确定源骨骼中源根骨骼的子运动数据;
第一迁移单元,用于根据骨骼映射关系,将源根骨骼的子运动数据迁移至目标骨骼中的目标根骨骼,得到目标根骨骼的子运动数据,其中,目标根骨骼为目标骨骼中与源根骨骼对应的骨骼;
第二确定单元,用于根据运动数据,确定源骨骼中源普通骨骼的子运动数据;
第二迁移单元,用于根据骨骼映射关系,将源普通骨骼的子运动数据迁移至目标骨骼中的目标普通骨骼,得到目标普通骨骼的子运动数据,其中,目标普通骨骼为目标骨骼中与源普通骨骼对应的骨骼;
第三确定单元,用于将目标根骨骼的子运动数据和目标普通骨骼的子运动数据作为初始重定向数据。
在一些可选的实施方式中,第一迁移单元包括:
第一确定子单元,用于根据源根骨骼的子运动数据,得到源根骨骼在世界坐标系下的第一相对运动数据;
第一拷贝子单元,用于将第一相对运动数据按照指定权重进行拷贝,得到第一拷贝结果;
第一执行子单元,用于根据骨骼映射关系,将第一拷贝结果赋值给目标骨骼中的目标根骨骼,得到目标根骨骼在世界坐标系下的子运动数据。
在一些可选的实施方式中,第二迁移单元包括:
第二确定子单元,用于根据源根骨骼的子运动数据,得到源普通骨骼在局部坐标系下的第二相对运动数据;
第二拷贝子单元,用于将第二相对运动数据按照指定权重进行拷贝,得到第二拷贝结果;
第二执行子单元,用于根据骨骼映射关系,将第二拷贝结果赋值给目标骨骼中的目标普通骨骼,得到目标普通骨骼在局部坐标系下的目标普通骨骼的子运动数据。
在一些可选的实施方式中,在获取源骨骼在原动画中的运动数据之前,装置还包括:
初始化单元,用于将源模型和目标模型调整在同一初始姿态下,并分别将源模型的旋转参数以及目标模型的旋转参数清零。
在一些可选的实施方式中,迁移模块803包括:
第四确定单元,用于根据运动数据,分别确定源骨骼中每一个子源骨骼的子运动数据;
第五确定单元,用于根据骨骼映射关系,分别确定每一个子源骨骼对应的子目标骨骼,子目标骨骼为目标骨骼包括的子骨骼;
第三迁移单元,用于分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据。
在一些可选的实施方式中,第三迁移单元包括:
第一迁移子单元,用于若一个子源骨骼与一个子目标骨骼对应,则将子源骨骼的子运动数据迁移至对应的子目标骨骼,得到对应的子目标骨骼的子初始重定向数据;
第二迁移子单元,用于若多个子源骨骼与同一个子目标骨骼对应,则基于多个子源骨骼的子运动数据,确定待迁移的目标数据,并将目标数据迁移至与多个子源骨骼对应的子目标骨骼,得到子初始重定向数据。
在一些可选的实施方式中,第二迁移子单元包括:
第三执行子单元,用于根据源模型的骨骼架构,从上到下遍历每一个子源骨骼,并分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到目标骨骼的初始重定向数据。
在一些可选的实施方式中,检测模块804包括:
构建单元,用于分别构建目标骨骼中多个待检测骨骼对应的碰撞体;
信息确定单元,用于根据初始重定向数据中各待检测骨骼的子运动数据,确定各碰撞体的运动信息;
适配检测单元,用于基于每两个碰撞体的运动信息,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在一些可选的实施方式中,多个待检测骨骼包括第一待检测骨骼和第二待检测骨骼,第一待检测骨骼对应的碰撞体为第一碰撞体,第二待检测骨骼对应的碰撞体为第二碰撞体;
适配检测单元包括:
第一处理子单元,用于根据第一碰撞体的运动信息,得到第一碰撞体的第一法向集和第一顶点集,第一法向集包括多个第一法向,不同第一法向对应第一碰撞体不同面;
第二处理子单元,用于根据第二碰撞体的运动信息,得到第二碰撞体的第二法向集和第二顶点集,第二法向集包括多个第二法向,不同第二法向对应第二碰撞体不同面;
整合单元,用于将第一法向集与第二法向集整合,得到方向集;
第三处理子单元,用于将第一顶点集分别投影至方向集中的每一个方向上,得到第一碰撞体在每一个方向上的第一覆盖区间;
第四处理子单元,用于将第二顶点集分别投影至方向集中的每一个方向上,得到第二碰撞体在每一个方向上的第二覆盖区间;
适配检测子单元,用于基于第一覆盖区间与第二覆盖区间在对应方向上的位置关系,检测目标骨骼按照初始重定向数据进行运动的适配情况,得到适配结果。
在一些可选的实施方式中,适配检测子单元包括:
第一判断单元,用于若第一覆盖区间与第二覆盖区间在对应方向上的位置关系为不相交,则确定对应方向为目标方向;
第二判断单元,用于若方向集中存在至少一个目标方向,则确定第一碰撞体与第二碰撞体不会碰撞,适配结果为合适;
第三判断单元,用于若方向集中不存在目标方向,则确定第一碰撞体与第二碰撞体会碰撞,适配结果为不合适。
在一些可选的实施方式中,调节模块包括:
第一调节单元,用于若适配结果为合适,则将初始重定向数据作为目标重定向数据;
第二调节单元,用于若适配结果为不合适,则确定目标骨骼中待调节对应子运动数据的待调节骨骼以及待调节骨骼对应的数据迁移权重;
调节量获取单元,用于获取指定权重调节量以及待调节骨骼对应待迁移的子运动数据;
第三调节单元,用于根据指定调节条件对数据迁移权重进行调节,得到第一迁移权重;
第一迁移单元,用于将第一迁移权重作为新的数据迁移权重,并按照第一迁移权重将待迁移的子运动数据按照第一迁移权重重新迁移至待调节骨骼,得到待调节骨骼的子运动数据;
检测单元,还用于将初始重定向数据根据待调节骨骼的子运动数据进行更新,并按照更新后的初始重定向数据重新对目标骨骼进行适配检测,直至适配结果为合适;
指定调节条件包括按照指定系数或者指定差值降低数据迁移权重。
在一些可选的实施方式中,在将初始重定向数据作为目标重定向数据之前,装置还包括:
骨骼确定模块,用于根据目标骨骼的骨骼结构,确定待调节骨骼的父骨骼;
第一角度确定模块,用于根据父骨骼对应的子运动数据,确定父骨骼的第一运动角度;
第二角度确定模块,用于根据待调节骨骼的子运动数据,确定待调节骨骼的第二运动角度;
判断模块,用于判断第一运动角度与第二运动角度之间的绝对差值是否小于指定阈值;
目标根骨骼的子运动数据确定模块,用于若绝对差值小于指定阈值,则将初始重定向数据作为目标重定向数据。
在一些可选的实施方式中,装置还包括:
权重调节模块,用于若绝对差值大于或者等于指定阈值,则按照指定调节条件重新调节第一迁移权重和第二迁移权重,直至绝对差值小于指定阈值;
权重确定模块,用于根据待调节骨骼的最新数据迁移权重和父骨骼的最新数据迁移权重,确定目标迁移权重;
目标普通骨骼的子运动数据确定模块,用于按照目标迁移权重重新确定待调节骨骼的子运动数据和父骨骼的子运动数据,以调节初始重定向数据,得到目标重定向数据。
在一些可选的实施方式中,多个待检测骨骼为目标骨骼中的部分子目标骨骼或所有子目标骨骼。
在一些可选的实施方式中,源模型的拓扑结构与目标模型的拓扑结构不同。
在一些可选的实施方式中,骨骼映射关系包括以下任意一种或多种子骨骼映射关系:一个子源骨骼与一个子目标骨骼之间的第一骨骼映射关系,多个子源骨骼与一个子目标骨骼之间的第二骨骼映射关系,一个子源骨骼与多个子目标骨骼之间的第三骨骼映射关系。
在一些可选的实施方式中,第二获取模块802包括:数据获取单元,用于根据原动画中每一帧动画的先后顺序,获取源骨骼在原动画中的运动数据;装置还包括:迁移确定模块,用于若目标模型逐帧得到所述原动画中每一帧动画对应的目标重定向数据,则确定原动画的运动数据完成重定向迁移。
本实施例中的动画重定向装置是以功能单元的形式来呈现,这里的单元是指ASIC电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本发明实施例还提供一种计算机设备,具有上述图8所示的动画重定向装置。
请参阅图9,图9是本发明可选实施例提供的一种计算机设备的结构示意图,如图9所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括输入装置30和输出装置40。处理器10、存储器20、输入装置30和输出装置40可以通过总线或者其他方式连接,图9中以通过总线连接为例。
输入装置30可接收输入的数字或字符信息,以及产生与该计算机设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等。输出装置40可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。上述显示设备包括但不限于液晶显示器,发光二极管,显示器和等离子体显示器。在一些可选的实施方式中,显示设备可以是触摸屏。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (21)
1.一种动画重定向方法,其特征在于,所述方法包括:
获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系;
获取所述源骨骼在原动画中的运动数据,所述原动画为所述源模型所在的动画;
根据所述骨骼映射关系,将所述运动数据迁移至所述目标骨骼,得到所述目标骨骼的初始重定向数据;
检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果;
根据所述适配结果调节所述初始重定向数据,得到目标重定向数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述骨骼映射关系,将所述运动数据迁移至所述目标骨骼,得到所述目标骨骼的初始重定向数据,包括:
根据所述运动数据,确定所述源骨骼中源根骨骼的子运动数据;
根据所述骨骼映射关系,将所述源根骨骼的子运动数据迁移至所述目标骨骼中的目标根骨骼,得到所述目标根骨骼的子运动数据,其中,所述目标根骨骼为所述目标骨骼中与所述源根骨骼对应的骨骼;
根据所述运动数据,确定所述源骨骼中源普通骨骼的子运动数据;
根据所述骨骼映射关系,将所述源普通骨骼的子运动数据迁移至所述目标骨骼中的目标普通骨骼,得到所述目标普通骨骼的子运动数据,其中,所述目标普通骨骼为所述目标骨骼中与所述源普通骨骼对应的骨骼;
将所述目标根骨骼的子运动数据和所述目标普通骨骼的子运动数据作为所述初始重定向数据。
3.根据权利要求2所述的方法,其特征在于,所述根据所述骨骼映射关系,将所述源根骨骼的子运动数据迁移至所述目标骨骼中的目标根骨骼,得到所述目标根骨骼的子运动数据,包括:
根据所述源根骨骼的子运动数据,得到所述源根骨骼在世界坐标系下的第一相对运动数据;
将所述第一相对运动数据按照指定权重进行拷贝,得到第一拷贝结果;
根据所述骨骼映射关系,将所述第一拷贝结果赋值给所述目标骨骼中的目标根骨骼,得到所述目标根骨骼在世界坐标系下的所述目标根骨骼的子运动数据。
4.根据权利要求2所述的方法,其特征在于,所述根据所述骨骼映射关系,将所述源普通骨骼的子运动数据迁移至所述目标骨骼中的目标普通骨骼,得到所述目标普通骨骼的子运动数据,包括:
根据所述源根骨骼的子运动数据,得到所述源普通骨骼在局部坐标系下的第二相对运动数据;
将所述第二相对运动数据按照指定权重进行拷贝,得到第二拷贝结果;
根据所述骨骼映射关系,将所述第二拷贝结果赋值给所述目标骨骼中的目标普通骨骼,得到所述目标普通骨骼在局部坐标系下的所述目标普通骨骼的子运动数据。
5.根据权利要求2至4中任一项所述的方法,其特征在于,在获取所述源骨骼在原动画中的运动数据之前,所述方法还包括:
将所述源模型和所述目标模型调整在同一初始姿态下,并分别将所述源模型的旋转参数以及所述目标模型的旋转参数清零。
6.根据权利要求1所述的方法,其特征在于,所述根据所述骨骼映射关系,将所述运动数据迁移至所述目标骨骼,得到所述目标骨骼的初始重定向数据,包括:
根据所述运动数据,分别确定所述源骨骼中每一个子源骨骼的子运动数据;
根据所述骨骼映射关系,分别确定每一个子源骨骼对应的子目标骨骼,所述子目标骨骼为所述目标骨骼包括的子骨骼;
分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到所述目标骨骼的初始重定向数据。
7.根据权利要求6所述的方法,其特征在于,所述分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,所述目标骨骼的初始重定向数据,包括:
若一个子源骨骼与一个子目标骨骼对应,则将所述子源骨骼的子运动数据迁移至对应的子目标骨骼,得到所述对应的子目标骨骼的子初始重定向数据;
若多个子源骨骼与同一个子目标骨骼对应,则基于所述多个子源骨骼的子运动数据,确定待迁移的目标数据,并将所述目标数据迁移至与所述多个子源骨骼对应的子目标骨骼,得到子初始重定向数据。
8.根据权利要求6或7所述的方法,其特征在于,所述分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到所述目标骨骼的初始重定向数据,包括:
根据所述源模型的骨骼架构,从上到下遍历每一个子源骨骼,并分别将每一个子源骨骼的子运动数据迁移至对应的子目标骨骼,得到所述目标骨骼的初始重定向数据。
9.根据权利要求1所述的方法,其特征在于,所述检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果,包括:
分别构建所述目标骨骼中多个待检测骨骼对应的碰撞体;
根据所述初始重定向数据中各所述待检测骨骼的子运动数据,确定各所述碰撞体的运动信息;
基于每两个碰撞体的运动信息,检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果。
10.根据权利要求9所述的方法,其特征在于,
所述多个待检测骨骼包括第一待检测骨骼和第二待检测骨骼,所述第一待检测骨骼对应的碰撞体为第一碰撞体,所述第二待检测骨骼对应的碰撞体为第二碰撞体;
所述基于每两个碰撞体的运动信息,检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果,包括:
根据所述第一碰撞体的运动信息,得到所述第一碰撞体的第一法向集和第一顶点集,所述第一法向集包括多个第一法向,不同第一法向对应所述第一碰撞体不同面;
根据所述第二碰撞体的运动信息,得到所述第二碰撞体的第二法向集和第二顶点集,所述第二法向集包括多个第二法向,不同第二法向对应所述第二碰撞体不同面;
将所述第一法向集与所述第二法向集整合,得到方向集;
将所述第一顶点集分别投影至所述方向集中的每一个方向上,得到所述第一碰撞体在每一个方向上的第一覆盖区间;
将所述第二顶点集分别投影至所述方向集中的每一个方向上,得到所述第二碰撞体在每一个方向上的第二覆盖区间;
基于所述第一覆盖区间与所述第二覆盖区间在对应方向上的位置关系,检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果。
11.根据权利要求10所述的方法,其特征在于,所述基于所述第一覆盖区间与所述第二覆盖区间在对应方向上的位置关系,检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果,包括:
若所述第一覆盖区间与所述第二覆盖区间在对应方向上的位置关系为不相交,则确定所述对应方向为目标方向;
若所述方向集中存在至少一个所述目标方向,则确定所述第一碰撞体与所述第二碰撞体不会碰撞,所述适配结果为合适;
若所述方向集中不存在所述目标方向,则确定所述第一碰撞体与所述第二碰撞体会碰撞,所述适配结果为不合适。
12.根据权利要求11所述的方法,其特征在于,所述根据所述适配结果调节所述初始重定向数据,得到目标重定向数据,包括:
若所述适配结果为合适,则将所述初始重定向数据作为所述目标重定向数据;
若所述适配结果为不合适,则确定所述目标骨骼中待调节对应子运动数据的待调节骨骼以及所述待调节骨骼对应的数据迁移权重;
获取指定权重调节量以及所述待调节骨骼对应待迁移的子运动数据;
根据指定调节条件对所述数据迁移权重进行调节,得到第一迁移权重;
将所述第一迁移权重作为新的数据迁移权重,并按照所述第一迁移权重将所述待迁移的子运动数据按照所述第一迁移权重重新迁移至所述待调节骨骼,得到所述待调节骨骼的子运动数据;
将所述初始重定向数据根据所述待调节骨骼的子运动数据进行更新,并按照更新后的初始重定向数据重新对所述目标骨骼进行适配检测,直至所述适配结果为合适;
所述指定调节条件包括按照指定系数或者指定差值降低所述数据迁移权重。
13.根据权利要求12所述的方法,其特征在于,在将所述初始重定向数据作为所述目标重定向数据之前,所述方法还包括:
根据所述目标骨骼的骨骼结构,确定所述待调节骨骼的父骨骼;
根据所述父骨骼对应的子运动数据,确定所述父骨骼的第一运动角度;
根据所述待调节骨骼的子运动数据,确定所述待调节骨骼的第二运动角度;
判断所述第一运动角度与所述第二运动角度之间的绝对差值是否小于指定阈值;
若所述绝对差值小于所述指定阈值,则将所述初始重定向数据作为所述目标重定向数据。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
若所述绝对差值大于或者等于所述指定阈值,则按照所述指定调节条件重新调节第一迁移权重和第二迁移权重,直至所述绝对差值小于所述指定阈值;
根据所述待调节骨骼的最新数据迁移权重和所述父骨骼的最新数据迁移权重,确定目标迁移权重;
按照所述目标迁移权重重新确定所述待调节骨骼的子运动数据和所述父骨骼的子运动数据,以调节所述初始重定向数据,得到目标重定向数据。
15.根据权利要求9至14中任一项所述的方法,其特征在于,所述多个待检测骨骼为所述目标骨骼中的部分子目标骨骼或所有子目标骨骼。
16.根据权利要求1所述的方法,其特征在于,所述源模型的拓扑结构与所述目标模型的拓扑结构不同。
17.根据权利要求16所述的方法,其特征在于,所述骨骼映射关系包括以下任意一种或多种子骨骼映射关系:一个子源骨骼与一个子目标骨骼之间的第一骨骼映射关系,多个子源骨骼与一个子目标骨骼之间的第二骨骼映射关系,一个子源骨骼与多个子目标骨骼之间的第三骨骼映射关系。
18.根据权利要求1所述的方法,其特征在于,
所述获取所述源骨骼在原动画中的运动数据,包括:
根据所述原动画中每一帧动画的先后顺序,获取所述源骨骼在原动画中的运动数据;
所述方法还包括:
若所述目标骨骼得到所述原动画中每一帧动画对应的目标重定向数据,则确定所述原动画的运动数据完成重定向迁移。
19.一种动画重定向装置,其特征在于,所述装置包括:
第一获取模块,用于获取源模型的源骨骼与目标模型的目标骨骼之间的骨骼映射关系;
第二获取模块,用于获取所述源骨骼在原动画中的运动数据,所述原动画为所述源模型所在的动画;
迁移模块,由于根据所述骨骼映射关系,将所述运动数据迁移至所述目标骨骼,得到所述目标骨骼的初始重定向数据;
检测模块,用于检测所述目标骨骼按照所述初始重定向数据进行运动的适配情况,得到适配结果;
调节模块,用于根据所述适配结果调节所述初始重定向数据,得到目标重定向数据。
20.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至18中任一项所述的动画重定向方法。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至18中任一项所述的动画重定向方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310419613.8A CN116152404B (zh) | 2023-04-19 | 2023-04-19 | 动画重定向方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310419613.8A CN116152404B (zh) | 2023-04-19 | 2023-04-19 | 动画重定向方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116152404A true CN116152404A (zh) | 2023-05-23 |
CN116152404B CN116152404B (zh) | 2023-07-14 |
Family
ID=86354674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310419613.8A Active CN116152404B (zh) | 2023-04-19 | 2023-04-19 | 动画重定向方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116152404B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009055707A1 (en) * | 2007-10-26 | 2009-04-30 | Honda Motor Co., Ltd. | Real-time self collision and obstacle avoidance |
CN103530897A (zh) * | 2013-09-30 | 2014-01-22 | 华为软件技术有限公司 | 运动重定向处理方法及装置 |
CN106215419A (zh) * | 2016-07-28 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 碰撞控制方法及装置 |
CN112258609A (zh) * | 2020-10-21 | 2021-01-22 | 北京爱奇艺科技有限公司 | 一种数据匹配方法、装置、电子设备及存储介质 |
CN112634419A (zh) * | 2020-12-31 | 2021-04-09 | 魔珐(上海)信息科技有限公司 | 一种运动重定向方法、装置、电子设备及存储介质 |
CN113313794A (zh) * | 2021-05-19 | 2021-08-27 | 深圳市慧鲤科技有限公司 | 动画迁移方法和装置、设备及存储介质 |
CN113368501A (zh) * | 2021-05-13 | 2021-09-10 | 网易(杭州)网络有限公司 | 骨骼动画处理方法及装置、电子设备、存储介质 |
CN115131478A (zh) * | 2022-07-15 | 2022-09-30 | 北京字跳网络技术有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN115526967A (zh) * | 2022-10-14 | 2022-12-27 | 网易(杭州)网络有限公司 | 虚拟模型的动画生成方法、装置、计算机设备及存储介质 |
CN115984433A (zh) * | 2022-12-28 | 2023-04-18 | 网易(杭州)网络有限公司 | 骨骼动画生成方法、装置、存储介质及电子设备 |
-
2023
- 2023-04-19 CN CN202310419613.8A patent/CN116152404B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009055707A1 (en) * | 2007-10-26 | 2009-04-30 | Honda Motor Co., Ltd. | Real-time self collision and obstacle avoidance |
CN103530897A (zh) * | 2013-09-30 | 2014-01-22 | 华为软件技术有限公司 | 运动重定向处理方法及装置 |
CN106215419A (zh) * | 2016-07-28 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 碰撞控制方法及装置 |
CN112258609A (zh) * | 2020-10-21 | 2021-01-22 | 北京爱奇艺科技有限公司 | 一种数据匹配方法、装置、电子设备及存储介质 |
CN112634419A (zh) * | 2020-12-31 | 2021-04-09 | 魔珐(上海)信息科技有限公司 | 一种运动重定向方法、装置、电子设备及存储介质 |
WO2022143178A1 (zh) * | 2020-12-31 | 2022-07-07 | 魔珐(上海)信息科技有限公司 | 一种运动重定向方法、装置、电子设备及存储介质 |
CN113368501A (zh) * | 2021-05-13 | 2021-09-10 | 网易(杭州)网络有限公司 | 骨骼动画处理方法及装置、电子设备、存储介质 |
CN113313794A (zh) * | 2021-05-19 | 2021-08-27 | 深圳市慧鲤科技有限公司 | 动画迁移方法和装置、设备及存储介质 |
CN115131478A (zh) * | 2022-07-15 | 2022-09-30 | 北京字跳网络技术有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN115526967A (zh) * | 2022-10-14 | 2022-12-27 | 网易(杭州)网络有限公司 | 虚拟模型的动画生成方法、装置、计算机设备及存储介质 |
CN115984433A (zh) * | 2022-12-28 | 2023-04-18 | 网易(杭州)网络有限公司 | 骨骼动画生成方法、装置、存储介质及电子设备 |
Non-Patent Citations (3)
Title |
---|
孙军;唐少敏;: "三维动画中运动重定向技术研究", 科技信息, no. 3 * |
胡夏;杨智为;刘晓平;: "基于Kinect的实时动画角色驱动方法", 合肥工业大学学报(自然科学版), no. 06 * |
陈雷;伊明;陈二雷;: "基于包围盒的碰撞检测算法研究", 电脑知识与技术(学术交流), no. 14 * |
Also Published As
Publication number | Publication date |
---|---|
CN116152404B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111801708B (zh) | 使用光线投射和实时深度进行遮挡渲染的方法 | |
CN110167756B (zh) | 用于通过增材制造构造实体物体的基于构建方向的划分 | |
CN110168614B (zh) | 用于生成混合现实中的动态虚拟内容的设备和方法 | |
CN113112579A (zh) | 渲染方法、装置、电子设备和计算机可读存储介质 | |
CN112090078B (zh) | 游戏角色移动控制方法、装置、设备和介质 | |
CN107464286B (zh) | 三维城市模型中的孔洞修复方法及装置、设备及可读介质 | |
US11816397B2 (en) | Generating designs for multi-family housing projects using rigid body simulations | |
US20140198103A1 (en) | Method for polygon reduction | |
CN111597987B (zh) | 用于生成信息的方法、装置、设备和存储介质 | |
US10943037B2 (en) | Generating a CAD model from a finite element mesh | |
CN116152404B (zh) | 动画重定向方法、装置、计算机设备及存储介质 | |
CN110378948B (zh) | 3d模型重建方法、装置及电子设备 | |
CN114627206A (zh) | 网格绘制方法、装置、电子设备及计算机可读存储介质 | |
CN117036606A (zh) | 一种三维模型生成方法、装置、电子设备及存储介质 | |
CN107393019B (zh) | 一种基于粒子的布料模拟方法与装置 | |
CN110148086A (zh) | 稀疏深度图的深度补齐方法、装置及三维重建方法、装置 | |
CN113076631A (zh) | 一种机器人模拟器生成方法、机器人模型仿真方法及装置 | |
CN117292349B (zh) | 确定路面高度的方法、装置、计算机设备及存储介质 | |
EP3869467A1 (en) | Photogrammetry to impostor representation | |
JP7368950B2 (ja) | 効率的な建物フットプリント特定のための方法及び装置 | |
CN117391932A (zh) | 屏幕模型合并方法、装置、电子设备及存储介质 | |
CN110795082A (zh) | 一种用于图像处理的软件开发方法 | |
Paz et al. | Adaptive reconstruction of implicit surfaces from depth images | |
CN114445566A (zh) | 一种三维重建中原始影像数据划分瓦片的方法 | |
CN118799196A (zh) | 点云融合方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |