CN112370779A - 服饰变化方法、装置、电子设备和存储介质 - Google Patents
服饰变化方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112370779A CN112370779A CN202011360596.8A CN202011360596A CN112370779A CN 112370779 A CN112370779 A CN 112370779A CN 202011360596 A CN202011360596 A CN 202011360596A CN 112370779 A CN112370779 A CN 112370779A
- Authority
- CN
- China
- Prior art keywords
- clothing
- target object
- historical
- stress information
- animation
- 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
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例公开了一种服饰变化方法、装置、电子设备和存储介质。该方法包括:获取目标对象的服饰的受力信息;将所述受力信息输入到训练好的服饰变化计算模型中,得到所述目标对象的服饰摆动动画;其中,所述服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画训练得到的;对所述服饰摆动动画设置状态机层,确定所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层;基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。以实现通过离线方式实现服饰随腿部动作变化而变化的效果。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种服饰变化方法、装置、电子设备和存储介质。
背景技术
随着电竞行业的迅速发展,在游戏中,游戏人物生动形象,其在游戏场景中的行走、跳跃等动作与现实中的人很一致,这样让玩家很有体验感。游戏人物在遇到障碍物时,会有抬腿等的动作,其身上的衣服也会随着游戏人物的动物而在高度、角度等方面有变化。
目前,通常是在游戏中添加逆向运动力学算法,当游戏人物腿部抬起高度随着其所处地形有变化时,利用游戏引擎中的布料系统实时解算算法来实时解算游戏人物腿抬起的高度、方向和角度等,然后实时解算游戏人物的服饰所处的位置、方向和角度。或者是在游戏中给游戏人物的骨骼添加碰撞,利用骨骼与服饰的接触,基于逆向运动力学计算得到游戏人物的服饰所处的位置、方向和角度。
上述计算游戏人物的服饰随游戏人物的腿部动作而变化的方式,对系统性能消耗过大,目前很多游戏的处理系统都无法承担,而且在服饰布料或碰撞解算精度不高,造成腿从服饰中穿插出去,即腿上无服饰覆盖的现象。
发明内容
本发明实施例提供一种服饰变化方法、装置、电子设备和存储介质,以实现通过离线方式实现服饰随腿部动作变化而变化的效果。
第一方面,本发明实施例提供了一种服饰变化方法,该方法包括:
获取目标对象的服饰的受力信息;
将所述受力信息输入到训练好的服饰变化计算模型中,得到所述目标对象的服饰摆动动画;其中,所述服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画训练得到的;
对所述服饰摆动动画设置状态机层,确定所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层;
基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
第二方面,本发明实施例还提供了一种服饰变化装置,该装置包括:
服饰受力信息获取模块,用于获取目标对象的服饰的受力信息;
服饰摆动动画确定模块,用于将所述受力信息输入到训练好的服饰变化计算模型中,得到所述目标对象的服饰摆动动画;其中,所述服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画训练得到的;
服饰摆动动画状态机层确定模块,用于对所述服饰摆动动画设置状态机层,确定所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层;
变化动画确定模块,用于基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
第三方面,本发明实施例还提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例中任一所述的服饰变化方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本发明实施例中任一所述的服饰变化方法。
本发明实施例的技术方案,通过将获取的目标对象的服饰的受力信息输入到训练好的服饰变化计算模型中,得到目标对象的服饰摆动动画,这样利用训练好的服饰变化计算模型,根据获取的目标对象的服饰的受力信息,可快速、精确的得到目标对象的服饰摆动动画,提高了得到目标对象的服饰摆动动画的效率。对服饰摆动动画设置状态机层,确定目标对象的服饰在受力信息下的服饰摆动动画状态机层;基于目标对象的服饰在受力信息下的服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画,这样通过在实际场景中,在目标对象的服饰的受力信息下添加对应的服饰摆动动画状态机层,可完美的匹配目标对象的服饰的受力信息,其避免服饰穿插的情况,且这样通过离线的方式,实现了目标对象的服饰随肢体动作的变化而变化的效果,大大减低了系统的性能消耗,避免了现有技术中需直接在实际场景中实时计算目标对象的服饰随肢体动作的变化而变化的动画的情况。
附图说明
图1是本发明实施例一中的服饰变化方法的流程图;
图2是本发明实施例一中的对服饰摆动动画添加状态机层的示意图;
图3是本发明实施例二中的服饰变化方法的流程图;
图4是本发明实施例三中的服饰变化方法的流程图;
图5是本发明实施例三中的目标对象的肢体动作示意图;
图6是本发明实施例四中的服饰变化方法的流程图;
图7是本发明实施例五中的服饰变化装置的结构示意图;
图8是本发明实施例六中的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的服饰变化方法的流程图,本实施例可适用于目标对象的服饰随肢体动作的变化而变化的情况,该方法可以由服饰变化装置来执行,该服饰变化装置可以由软件和/或硬件来实现,该服饰变化装置可以配置在电子计算设备上,具体包括如下步骤:
S110、获取目标对象的服饰的受力信息。
示例性的,目标对象可以是游戏中具有服饰的对象,例如可以是游戏中的游戏人物,还可以是游戏中的宠物等。
目标对象的服饰的受力信息可以是当前目标对象的服饰被施加的力。
具体的,目标对象的服饰的受力信息可以是目标对象的肢体动作所给予目标对象的服饰的,因为,目标对象的肢体在动作时,目标对象的服饰会随着目标对象的肢体的动作而动作,即目标对象的服饰的受力信息是目标对象的肢体动作所给予的。
S120、将受力信息输入到训练好的服饰变化计算模型中,得到目标对象的服饰摆动动画;其中,服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画训练得到的。
示例性的,服饰变化计算模型可以是基于目标对象的服饰的受力信息,得到目标对象的服饰摆动动画的模型。例如,可以是基于深度学习的神经网络模型等。
服饰摆动动画可以是在目标对象的服饰的受力信息下,目标对象的服饰摆动的动画。
历史受力信息可以是目标对象的服饰的之前的受力信息。
历史服饰摆动动画可以是根据目标对象的服饰的历史受力信息,所得到的目标对象的服饰的摆动动画。
获取目标对象的服饰的受力信息后,将受力信息输入到训练好的服饰变化计算模型中后,即可直接得到目标对象的服饰摆动动画。
这样利用训练好的服饰变化计算模型,根据获取的目标对象的服饰的受力信息,可快速、精确的得到目标对象的服饰摆动动画,提高了得到目标对象的服饰摆动动画的效率。
需要说明的是,在得到运动信息下的服饰摆动动画后,可以将该服饰摆动动画导出,形成离线文件,以供后续使用。
S130、对服饰摆动动画设置状态机层,确定目标对象的服饰在受力信息下的服饰摆动动画状态机层。
示例性的,服饰摆动动画状态机层可以是对确定的服饰摆动动画设置状态机层后,形成的目标对象的服饰在受力信息下的服饰摆动动画的状态机层。
在形成离线文件后,将该离线文件导入引擎中,对服饰摆动动画设置状态机层,即可得到目标对象在运动信息下的服饰摆动动画状态机层。图2为在引擎中对服饰摆动动画添加状态机层的示意图。
这里可以理解为:将离线文件导入引擎中,该离线文件为运动信息下的服饰摆动动画,对服饰摆动动画添加状态机层,即可形成目标对象的在运动信息下的服饰摆动动画状态机层。
这样即可得到的离线的服饰摆动动画状态机层,以便后续基于该离线的服饰摆动动画状态机层,得到目标对象的服饰随着肢体动作的变化而变化的动画效果。
S140、基于目标对象的服饰在受力信息下的服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画。
示例性的,根据确定的目标对象的服饰在受力信息下的服饰摆动动画状态机层,将其导入到与模拟场景相同的实际场景中,获取在实际场景中,目标对象的服饰的受力信息,由于实际场景与模拟场景相同,因此,获取的在实际场景中的目标对象的服饰的受力信息,与在模拟场景中的目标对象的服饰的受力信息是一致的。
获取到在实际场景中目标对象的服饰的受力信息后,将与实际场景中目标对象的服饰的受力信息对应的目标对象的运动信息,与实际场景中目标对象的服饰的受力信息对应的服饰摆动动画状态机层相匹配,这样就会得到目标对象的服饰在该受力信息下的动画。
需要说明的是,由于目标对象的服饰与目标对象的肢体相接触,因此,目标对象的服饰的受力信息是由于目标对象的肢体的运动所产生的,即目标对象的服饰的受力信息与目标对象的肢体动作的运动信息相对应。
这样通过在实际场景中,在目标对象的服饰的受力信息下添加对应的服饰摆动动画状态机层,可完美的匹配目标对象的服饰的受力信息,其避免服饰穿插的情况,且这样通过离线的方式,实现了目标对象的服饰随肢体动作的变化而变化的效果,大大减低了系统的性能消耗,避免了现有技术中需直接在实际场景中实时计算目标对象的服饰随肢体动作的变化而变化的动画的情况。
本发明实施例的技术方案,通过将获取的目标对象的服饰的受力信息输入到训练好的服饰变化计算模型中,得到目标对象的服饰摆动动画,这样利用训练好的服饰变化计算模型,根据获取的目标对象的服饰的受力信息,可快速、精确的得到目标对象的服饰摆动动画,提高了得到目标对象的服饰摆动动画的效率。对服饰摆动动画设置状态机层,确定目标对象的服饰在受力信息下的服饰摆动动画状态机层;基于目标对象的服饰在受力信息下的服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画,这样通过在实际场景中,在目标对象的服饰的受力信息下添加对应的服饰摆动动画状态机层,可完美的匹配目标对象的服饰的受力信息,其避免服饰穿插的情况,且这样通过离线的方式,实现了目标对象的服饰随肢体动作的变化而变化的效果,大大减低了系统的性能消耗,避免了现有技术中需直接在实际场景中实时计算目标对象的服饰随肢体动作的变化而变化的动画的情况。
实施例二
图3为本发明实施例二提供的服饰变化方法的流程图,本发明实施例与上述实施例中各个可选方案可以结合。在本发明实施例中,可选的,所述服饰变化计算模型的训练方法,包括:获取目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画;将目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,得到与目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息;基于与目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画;基于历史计算服饰摆动动画,以及与历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定服饰变化计算模型的损失函数;当损失函数小于预设损失阈值时,确定服饰变化计算模型训练完成。
如图3所示,本发明实施例的方法具体包括如下步骤:
S210、获取目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画。
示例性的,在对服饰变化计算模型进行训练时,需获取目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画。
这里的目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画,可以是采集的目标对象的服饰的之前的受力信息,以及根据目标对象的服饰的之前的受力信息所确定的目标对象的服饰摆动动画。
S220、将目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,得到与目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息。
示例性的,目标对象的服饰的历史状态信息可以是目标对象的服饰在历史受力信息下的状态信息。
可选的,所述目标对象的服饰的历史状态信息:所述目标对象的服饰关键位置在所述历史受力信息下的高度、方向和角度。
这里的目标对象的服饰的关键位置例如可以是:以服饰为裙子为例,若运动信息仅为腿部的动作,则目标对象的服饰的关键位置可以是裙子的底边。若运动信息为胳膊的动作(例如,目标对象拉弓箭等),因为胳膊抬起时,裙子的底部、胳肢窝处和腰线部位都会向上提升,因此,这里的服饰的关键位置可以是裙子的底部,以及裙子的胳肢窝处,以及裙子的腰线部位。
将获取的目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,服饰变化计算模型根据目标对象的服饰的历史受力信息,基于预设计算算法,可确定目标对象的服饰在目标对象的服饰的历史受力信息下的状态信息。
这样以便后续可基于确定的目标对象的服饰在目标对象的服饰的历史受力信息下的状态信息,得到目标对象的服饰在目标对象的服饰的历史受力信息下的服饰摆动动画。
S230、基于与目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画。
示例性的,历史计算服饰摆动动画可以是基于待训练的服饰变化计算模型,根据目标对象的服饰在历史受力信息下的历史状态信息,得到的在目标对象的服饰的历史受力信息下的服饰摆动动画。
服饰变化计算模型可根据与目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画。
S240、基于历史计算服饰摆动动画,以及与历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定服饰变化计算模型的损失函数;当损失函数小于预设损失阈值时,确定服饰变化计算模型训练完成。
示例性的,预设损失阈值可以是预先设置的服饰变化计算模型的损失函数的阈值,当服饰变化计算模型的损失函数小于该阈值时,则证明服饰变化计算模型训练完成。
当待训练的服饰变化计算模型输出与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画时,将历史计算服饰摆动动画与历史服饰摆动动画进行比较,得到待训练的服饰变化计算模型的损失函数,当待训练的服饰变化计算模型的损失函数小于预设损失阈值时,则证明服饰变化计算模型训练完成。
这样即可得到训练好的服饰变化计算模型,以便后续可利用训练好的服饰变化计算模型,得到目标对象的服饰的受力信息下的服饰摆动动画。
S250、获取目标对象的服饰的受力信息。
S260、将受力信息输入到训练好的服饰变化计算模型中,得到目标对象的服饰摆动动画;其中,服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画训练得到的。
S270、对服饰摆动动画设置状态机层,确定目标对象的服饰在受力信息下的服饰摆动动画状态机层。
S280、基于目标对象的服饰在受力信息下的服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画。
本发明实施例的技术方案,通过将获取的目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画,输入到待训练的服饰变化计算模型中,得到与目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息;基于与目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画;基于历史计算服饰摆动动画,以及与历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定服饰变化计算模型的损失函数;当损失函数小于预设损失阈值时,确定服饰变化计算模型训练完成,这样即可得到训练好的服饰变化计算模型,以便后续可利用训练好的服饰变化计算模型,得到目标对象的服饰的受力信息下的服饰摆动动画。
实施例三
图4为本发明实施例三提供的服饰变化方法的流程图,本发明实施例与上述实施例中各个可选方案可以结合。在本发明实施例中,可选的,在所述获取目标对象的服饰的历史受力信息之前,所述方法还包括:基于目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到目标对象的肢体的运动信息;基于运动信息,以及反向运动力学算法,确定目标对象的服饰在运动信息下的历史受力信息。
如图4所示,本发明实施例的方法具体包括如下步骤:
S300、基于目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到目标对象的肢体的运动信息。
示例性的,当前运动状态可以是目标对象在历史模拟运动中,当前所处于的运动状态,例如可以是目标对象在历史模拟运动中,此时正在处于跨越一个障碍物的状态。
当前运动状态时的肢体动作可以是目标对象在历史模拟运动中,在当前所处于的运动状态下的肢体动作,例如可以目标对象在历史模拟运动中的腿部动作和/或手臂动作等。
具体的,参考图5所述的目标对象的肢体动作示意图,以目标对象此时正在处于跨越一个障碍物的状态,此时目标对象的左腿和右腿均处于障碍物上,此时的腿部动作即为当前运动状态时的肢体动作。
目标对象的肢体的运动信息可以是目标对象的肢体的状态信息。
可选的,目标对象的肢体的运动信息可以但不限于包括:目标对象的肢体的高度、角度和方向。
参考图5,目标对象的左腿和右腿均处于障碍物上,但两条腿的高度、方向和角度等不同。此时目标对象的两条腿的高度、方向和角度即为目标对象的肢体的运动信息。
S301、基于运动信息,以及反向运动力学算法,确定目标对象的服饰在运动信息下的历史受力信息。
示例性的,由于目标对象的肢体与目标对象的服饰是直接接触的,因此,当目标对象的肢体动作时,会带动目标对象的服饰进行动作,即目标对象的服饰会受到目标对象的肢体给予的力而动作。
当基于目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到目标对象的肢体的运动信息后,基于目标对象的肢体的运动信息,利用反向运动力学算法,即可计算得到目标对象的肢体给予服饰的受力信息,即可得到目标对象的服饰在运动信息下的历史受力信息。
这样基于目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到的目标对象的肢体的运动信息,来确定目标对象的服饰在运动信息下的历史受力信息,这样根据模拟实际场景来得到服饰在运动信息下的历史受力信息,这样得到的目标对象的服饰在运动信息下的历史受力信息更加精确,以便后续利用该历史受力信息对服饰变化计算模型进行更加精确的训练,以得到质量、计算精度更好的服饰变化计算模型。
S302、获取目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画。
S303、将目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,得到与目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息。
S304、基于与目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画。
S305、基于历史计算服饰摆动动画,以及与历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定服饰变化计算模型的损失函数;当损失函数小于预设损失阈值时,确定服饰变化计算模型训练完成。
S306、获取目标对象的服饰的受力信息。
S307、将受力信息输入到训练好的服饰变化计算模型中,得到目标对象的服饰摆动动画;其中,服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画训练得到的。
S308、对服饰摆动动画设置状态机层,确定目标对象的服饰在受力信息下的服饰摆动动画状态机层。
S309、基于目标对象的服饰在受力信息下的服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画。
本发明实施例的技术方案,通过基于目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到的目标对象的肢体的运动信息,来确定目标对象的服饰在运动信息下的历史受力信息,这样根据模拟实际场景来得到服饰在运动信息下的历史受力信息,这样得到的目标对象的服饰在运动信息下的历史受力信息更加精确,以便后续利用该历史受力信息对服饰变化计算模型进行更加精确的训练,以得到质量、计算精度更好的服饰变化计算模型。
实施例四
图6为本发明实施例四提供的服饰变化方法的流程图,本发明实施例与上述实施例中各个可选方案可以结合。在本发明实施例中,可选的,所述基于目标对象的服饰在受力信息下的服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画,包括:获取与模拟场景相同的实际场景中目标对象的服饰的受力信息所对应的目标对象的运动信息,对目标对象在实际场景中的运动信息添加状态机层,形成目标对象状态机层;基于目标对象在实际场景中的受力信息,确定目标对象在实际场景中的受力信息下的目标服饰摆动动画状态机层;基于目标对象状态机层和目标服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画。
如图6所示,本发明实施例的方法具体包括如下步骤:
S400、基于目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到目标对象的肢体的运动信息。
S401、基于运动信息,以及反向运动力学算法,确定目标对象的服饰在运动信息下的历史受力信息。
S402、获取目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画。
S403、将目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,得到与目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息。
S404、基于与目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画。
S405、基于历史计算服饰摆动动画,以及与历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定服饰变化计算模型的损失函数;当损失函数小于预设损失阈值时,确定服饰变化计算模型训练完成。
S406、获取目标对象的服饰的受力信息。
S407、将受力信息输入到训练好的服饰变化计算模型中,得到目标对象的服饰摆动动画;其中,服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与历史受力信息对应的目标对象的历史服饰摆动动画训练得到的。
S408、对服饰摆动动画设置状态机层,确定目标对象在所述运动信息下的服饰摆动动画状态机层。
S409、获取与模拟场景相同的实际场景中目标对象的服饰的受力信息所对应的目标对象的运动信息,对目标对象在实际场景中的运动信息添加状态机层,形成目标对象状态机层。
示例性的,目标对象状态机层可以是对目标对象在实际场景中的运动信息添加状态机层后形成的状态机层。
当得到了在模拟场景中的目标对象的服饰在受力信息下的服饰摆动动画状态机层后,获取与模拟场景相同的实际场景中目标对象的服饰的受力信息所对应的目标对象的运动信息,对目标对象在实际场景中的运动信息添加状态机层,形成目标对象状态机层。
由于在模拟时,模拟场景与实际场景是一致的,因此,在实际场景中的获取的目标对象的服饰的受力信息与模拟场景中的目标对象的服饰的受力信息也是一致的。
当获取到在实际场景中目标对象的服饰的受力信息后,由于目标对象的服饰的受力信息与目标对象的肢体的运动信息有关,即可得到目标对象在实际场景中的肢体的运动信息,这样即可获取到与模拟场景相同的实际场景中目标对象的服饰的受力信息所对应的目标对象的运动信息。
S410、基于目标对象在实际场景中的受力信息,确定目标对象在实际场景中的受力信息下的目标服饰摆动动画状态机层。
示例性的,目标服饰摆动动画状态机层可以是根据目标对象在实际场景中的当前服饰的受力信息,确定的目标对象在实际场景中的当前服饰的受力信息下的当前的服饰摆动动画状态机层。
根据目标对象在实际场景中的当前服饰的受力信息,可知目标对象在实际场景中的当前肢体的运动信息。
根据目标对象的服饰在实际场景中的受力信息,可确定目标对象的服饰在实际场景中的受力信息下的目标服饰摆动动画状态机层,该目标服饰摆动动画状态机层即为与目标对象的服饰的受力信息对应的运动信息的目标服饰摆动动画状态机层。
具体的,例如此时目标对象在实际场景中的运动信息如图5所示为跨越一个障碍物,此时,目标对象的两条腿在障碍物上,此时两条腿会给服饰一个受力,服饰接收到受力信息后,根据该受力信息,则可根据在模拟时得到的与该实际场景的受力信息对应的在模拟时确定的该受力信息的服饰摆动动画状态机层,将该根据在模拟时得到的与该场景受力信息对应的服饰摆动动画状态机层,作为目标对象在实际场景中在图5的运动信息下的目标服饰摆动动画状态机层。即为找到模拟时得到的当前的受力信息下所对应的运动信息下所对应的服饰摆动动画状态机层。
S411、基于目标对象状态机层和目标服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画。
示例性的,当确定目标对象状态机层和目标服饰摆动动画状态机层后,根据目标对象状态机层和目标服饰摆动动画状态机层,确定目标对象的服饰在该受力信息下的动画。
可选的,基于目标对象状态机层和目标服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画,具体可以是:将目标对象状态机层和目标服饰摆动动画状态机层进行叠加,形成目标对象的服饰在受力信息下的动画。
示例性的,当确定目标对象状态机层和目标服饰摆动动画状态机层后,将目标服饰摆动动画状态机层叠加到目标对象状态机层上,具体的可以是利用代码逻辑将目标服饰摆动动画状态机层叠加到目标对象状态机层上,这样两个状态机层相叠加,即可形成目标对象的服饰在受力信息下的动画,将目标对象的服饰的各受力信息下的动画进行排列,具体的可以是按目标对象的运动信息的时间先后顺序进行排列,即可形成目标对象的服饰随目标对象的肢体动作的变化而变化的动画的效果。
这样根据获取的离线的服饰摆动动画状态机层,将确定的目标服饰摆动动画状态机层叠加到目标对象状态机层上,形成目标对象的服饰在受力信息下的动画,通过离线的方式,实现了目标对象的服饰在受力信息下的动画,大大减低了系统的性能消耗,避免了现有技术中需直接在实际场景中实时计算目标对象的服饰在受力信息下的动画的情况。
本发明实施例的技术方案,通过获取与模拟场景相同的实际场景中目标对象的服饰的受力信息所对应的目标对象的运动信息,对目标对象在实际场景中的运动信息添加状态机层,形成目标对象状态机层;基于目标对象在实际场景中的受力信息,确定目标对象在实际场景中的受力信息下的目标服饰摆动动画状态机层;基于目标对象状态机层和目标服饰摆动动画状态机层,确定目标对象的服饰在受力信息下的动画,这样根据获取的离线的服饰摆动动画状态机层,将确定的目标服饰摆动动画状态机层叠加到目标对象状态机层上,形成目标对象的服饰在受力信息下的动画,通过离线的方式,实现了目标对象的服饰在受力信息下的动画,大大减低了系统的性能消耗,避免了现有技术中需直接在实际场景中实时计算目标对象的服饰在受力信息下的动画的情况。
实施例五
图7为本发明实施例五提供的服饰变化装置的结构示意图,如图7所示,该装置包括:服饰受力信息获取模块31、服饰摆动动画确定模块32、服饰摆动动画状态机层确定模块33和变化动画确定模块34。
其中,服饰受力信息获取模块31,用于获取目标对象的服饰的受力信息;
服饰摆动动画确定模块32,用于将所述受力信息输入到训练好的服饰变化计算模型中,得到所述目标对象的服饰摆动动画;其中,所述服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画训练得到的;
服饰摆动动画状态机层确定模块33,用于对所述服饰摆动动画设置状态机层,确定所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层;
变化动画确定模块34,用于基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
在上述实施例的技术方案的基础上,该装置还包括:
历史信息获取模块,用于获取目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画;
历史状态信息确定模块,用于将所述目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,得到与所述目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息;
历史计算服饰摆动动画确定模块,用于基于与所述目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与所述目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画;
模型训练完成确定模块,用于基于所述历史计算服饰摆动动画,以及与所述历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定所述服饰变化计算模型的损失函数;当所述损失函数小于预设损失阈值时,确定所述服饰变化计算模型训练完成。
可选的,所述目标对象的服饰的历史状态信息:所述目标对象的服饰关键位置在所述历史受力信息下的高度、方向和角度。
在上述实施例的技术方案的基础上,该装置还包括:
肢体运动信息获取模块,用于基于所述目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到所述目标对象的肢体的运动信息;
历史受力信息确定模块,用于基于所述运动信息,以及反向运动力学算法,确定所述目标对象的服饰在所述运动信息下的历史受力信息。
可选的,所述目标对象的肢体的运动信息至少包括:所述目标对象的肢体的高度、角度和方向。
在上述实施例的技术方案的基础上,变化动画确定模块34包括:
目标对象状态机层确定单元,用于获取与模拟场景相同的实际场景中所述目标对象的服饰的受力信息所对应的目标对象的运动信息,对所述目标对象在实际场景中的运动信息添加状态机层,形成目标对象状态机层;
目标服饰摆动动画状态机层确定单元,用于基于所述目标对象在实际场景中的受力信息,确定所述目标对象在实际场景中的受力信息下的目标服饰摆动动画状态机层;
变化动画确定单元,用于基于所述目标对象状态机层和所述目标服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
在上述实施例的技术方案的基础上,变化动画确定单元具体用于:
将所述目标对象状态机层和所述目标服饰摆动动画状态机层进行叠加,形成所述目标对象的服饰在所述受力信息下的。
本发明实施例所提供的服饰变化装置可执行本发明任意实施例所提供的服饰变化方法,具备执行方法相应的功能模块和有益效果。
实施例六
图8为本发明实施例六提供的一种电子设备的结构示意图,如图8所示,该电子设备包括处理器70、存储器71、输入装置72和输出装置73;电子设备中处理器70的数量可以是一个或多个,图8中以一个处理器70为例;电子设备中的处理器70、存储器71、输入装置72和输出装置73可以通过总线或其他方式连接,图8中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的服饰变化方法对应的程序指令/模块(例如,服饰受力信息获取模块31、服饰摆动动画确定模块32、服饰摆动动画状态机层确定模块33和变化动画确定模块34)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的服饰变化方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置72可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置73可包括显示屏等显示设备。
实施例七
本发明实施例七还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种服饰变化方法。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的服饰变化方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述服饰变化装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种服饰变化方法,其特征在于,包括:
获取目标对象的服饰的受力信息;
将所述受力信息输入到训练好的服饰变化计算模型中,得到所述目标对象的服饰摆动动画;其中,所述服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画训练得到的;
对所述服饰摆动动画设置状态机层,确定所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层;
基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
2.根据权利要求1所述的方法,其特征在于,所述服饰变化计算模型的训练方法,包括:
获取目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画;
将所述目标对象的服饰的历史受力信息输入到待训练的服饰变化计算模型中,得到与所述目标对象的服饰的历史受力信息所对应的目标对象的服饰的历史状态信息;
基于与所述目标对象的服饰的历史受力信息所对应的目标对象的历史状态信息,得到与所述目标对象的服饰的历史受力信息所对应的历史计算服饰摆动动画;
基于所述历史计算服饰摆动动画,以及与所述历史受力信息对应的目标对象的服饰的历史服饰摆动动画,确定所述服饰变化计算模型的损失函数;
当所述损失函数小于预设损失阈值时,确定所述服饰变化计算模型训练完成。
3.根据权利要求2所述的方法,其特征在于,所述目标对象的服饰的历史状态信息:所述目标对象的服饰关键位置在所述历史受力信息下的高度、方向和角度。
4.根据权利要求1所述的方法,其特征在于,在所述获取目标对象的服饰的历史受力信息之前,所述方法还包括:
基于所述目标对象在历史模拟运动中在当前运动状态时的肢体动作,得到所述目标对象的肢体的运动信息;
基于所述运动信息,以及反向运动力学算法,确定所述目标对象的服饰在所述运动信息下的历史受力信息。
5.根据权利要求1所述的方法,其特征在于,所述目标对象的肢体的运动信息至少包括:所述目标对象的肢体的高度、角度和方向。
6.根据权利要求1所述的方法,其特征在于,所述基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画,包括:
获取与模拟场景相同的实际场景中所述目标对象的服饰的受力信息所对应的目标对象的运动信息,对所述目标对象在实际场景中的运动信息添加状态机层,形成目标对象状态机层;
基于所述目标对象在实际场景中的受力信息,确定所述目标对象在实际场景中的受力信息下的目标服饰摆动动画状态机层;
基于所述目标对象状态机层和所述目标服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
7.根据权利要求6所述的方法,其特征在于,所述基于所述目标对象状态机层和所述目标服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画,包括:
将所述目标对象状态机层和所述目标服饰摆动动画状态机层进行叠加,形成所述目标对象的服饰在所述受力信息下的动画。
8.一种服饰变化装置,其特征在于,包括:
服饰受力信息获取模块,用于获取目标对象的服饰的受力信息;
服饰摆动动画确定模块,用于将所述受力信息输入到训练好的服饰变化计算模型中,得到所述目标对象的服饰摆动动画;其中,所述服饰变化计算模型是基于目标对象的服饰的历史受力信息,以及与所述历史受力信息对应的目标对象的历史服饰摆动动画训练得到的;
服饰摆动动画状态机层确定模块,用于对所述服饰摆动动画设置状态机层,确定所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层;
变化动画确定模块,用于基于所述目标对象的服饰在所述受力信息下的服饰摆动动画状态机层,确定所述目标对象的服饰在所述受力信息下的动画。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的服饰变化方法。
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的服饰变化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011360596.8A CN112370779B (zh) | 2020-11-27 | 2020-11-27 | 服饰变化方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011360596.8A CN112370779B (zh) | 2020-11-27 | 2020-11-27 | 服饰变化方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112370779A true CN112370779A (zh) | 2021-02-19 |
CN112370779B CN112370779B (zh) | 2022-10-14 |
Family
ID=74588442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011360596.8A Active CN112370779B (zh) | 2020-11-27 | 2020-11-27 | 服饰变化方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112370779B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110273457A1 (en) * | 2010-05-04 | 2011-11-10 | Edilson De Aguiar | Stable spaces for rendering character garments in real-time |
CN103530903A (zh) * | 2013-10-28 | 2014-01-22 | 智慧城市系统服务(中国)有限公司 | 一种虚拟试衣间的实现方法及实现系统 |
CN107578323A (zh) * | 2017-10-10 | 2018-01-12 | 中国科学院合肥物质科学研究院 | 三维真实人体在线虚拟试衣系统 |
CN108961365A (zh) * | 2017-05-19 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 三维虚拟对象摆动方法、装置、存储介质和计算机设备 |
CN109865291A (zh) * | 2019-01-25 | 2019-06-11 | 网易(杭州)网络有限公司 | 一种游戏中的动画处理方法及装置 |
US10482646B1 (en) * | 2016-07-21 | 2019-11-19 | Pixar | Directable cloth animation |
CN111429543A (zh) * | 2020-02-28 | 2020-07-17 | 苏州叠纸网络科技股份有限公司 | 一种素材生成方法、装置、电子设备及介质 |
CN111589143A (zh) * | 2020-05-15 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 动画播放方法、装置、设备及存储介质 |
-
2020
- 2020-11-27 CN CN202011360596.8A patent/CN112370779B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110273457A1 (en) * | 2010-05-04 | 2011-11-10 | Edilson De Aguiar | Stable spaces for rendering character garments in real-time |
CN103530903A (zh) * | 2013-10-28 | 2014-01-22 | 智慧城市系统服务(中国)有限公司 | 一种虚拟试衣间的实现方法及实现系统 |
US10482646B1 (en) * | 2016-07-21 | 2019-11-19 | Pixar | Directable cloth animation |
CN108961365A (zh) * | 2017-05-19 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 三维虚拟对象摆动方法、装置、存储介质和计算机设备 |
CN107578323A (zh) * | 2017-10-10 | 2018-01-12 | 中国科学院合肥物质科学研究院 | 三维真实人体在线虚拟试衣系统 |
CN109865291A (zh) * | 2019-01-25 | 2019-06-11 | 网易(杭州)网络有限公司 | 一种游戏中的动画处理方法及装置 |
CN111429543A (zh) * | 2020-02-28 | 2020-07-17 | 苏州叠纸网络科技股份有限公司 | 一种素材生成方法、装置、电子设备及介质 |
CN111589143A (zh) * | 2020-05-15 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 动画播放方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112370779B (zh) | 2022-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111488824B (zh) | 运动提示方法、装置、电子设备和存储介质 | |
CN110827383B (zh) | 三维模型的姿态模拟方法、装置、存储介质和电子设备 | |
CN111260762B (zh) | 一种动画实现方法、装置、电子设备和存储介质 | |
CN109483573A (zh) | 机器学习装置、机器人系统以及机器学习方法 | |
CN109816758B (zh) | 一种基于神经网络的二维角色动画生成方法和装置 | |
CN109191593A (zh) | 虚拟三维模型的运动控制方法、装置及设备 | |
CN108096833B (zh) | 基于级联神经网络的体感游戏控制方法及装置、计算设备 | |
CN109993308A (zh) | 基于云平台共享学习系统及方法、共享平台及方法、介质 | |
KR100659888B1 (ko) | 이동 단말기의 3차원 영상 처리방법 | |
US20170221251A1 (en) | Animating a virtual object in a virtual world | |
CN112847336B (zh) | 动作学习方法、装置、存储介质及电子设备 | |
CN110251942A (zh) | 控制游戏场景中虚拟角色的方法及装置 | |
CN116362133A (zh) | 一种基于骨架的预测目标姿势下布料静态变形的双相流网络方法 | |
CN112370779B (zh) | 服饰变化方法、装置、电子设备和存储介质 | |
CN114510173A (zh) | 基于增强现实的施工作业方法及装置 | |
CN116468831B (zh) | 模型处理方法、装置、设备及存储介质 | |
CN115797517B (zh) | 虚拟模型的数据处理方法、装置、设备和介质 | |
CN111639615B (zh) | 一种虚拟建筑物的触发控制方法及装置 | |
CN116309999A (zh) | 一种3d虚拟形象的驱动方法、装置、电子设备及存储介质 | |
CN112316422B (zh) | 服饰变化方法、装置、电子设备和存储介质 | |
CN115861496A (zh) | 基于动捕系统的电力场景虚拟人体驱动方法及装置 | |
CN112402957A (zh) | 服饰变化方法、装置、电子设备和存储介质 | |
CN116069157A (zh) | 虚拟对象显示方法、装置、电子设备及可读介质 | |
CN110930488B (zh) | 鱼体行为模拟方法、装置、设备及存储介质 | |
CN113362431A (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 |