当前位置:   article > 正文

AI终于能生成流畅3D动作片了,不同动作过渡衔接不出bug,准确识别文本指令丨开源...

根据视频 生成3d动画
萧箫 发自 凹非寺
量子位 | 公众号 QbitAI

让3D动画小人做一套丝滑的动作,需要手动渲染多久?

7b5eeff561504080e909e816480f8a65.gif

现在交给AI,输入几句话就能搞定(不同颜色代表不同动作):

看向地面并抓住高尔夫球杆,挥动球杆,小跑一段,蹲下。

6223e5236feb47d28caae6e0fa63ca9b.gif

此前,AI控制的3D人体模型基本只能“每次做一个动作”或“每次完成一条指令”,难以连续完成指令。

aaf2592c265ac22d7722866775874ece.png

现在,无需剪辑或编辑,只需按顺序输入几条命令,3D人物就能自动完成每一套动作,全程丝滑无bug。

这只新AI的名字叫TEACH,来自马普所和古斯塔夫·艾菲尔大学。

a08bf67105efd4f6fb2d8e79b20ef0b4.png

网友们脑洞大开:

这样以后拍3D动画电影,是不是只用剧本就能搞定了?

603caf8a79be9842de64d48b12cf46d2.png

显然,游戏和仿真行业可以考虑一下了。

65375c07fd157365c77b78d60a052132.png

那么,这样的3D人物动作神器是怎么来的呢?

编码器“记住”前一个动作

TEACH的架构,基于团队不久前提出的另一个3D人体运动生成框架TEMOS

TEMOS基于Transformer架构设计,利用人体真实运动数据进行训练。

它在训练时会采用两个编码器,分别是动作编码器(Motion Encoder)和文本编码器(Text Encoder),同时通过动作解码器(Motion Decoder)输出。

但在使用时,原本的动作编码器就会被“扔掉”、只保留文本编码器,这样模型直接输入文本后,就能输出对应的动作。

7c64acce76e079f9dcbd48a1e585b4da.png

与其他输入单一文本、输出确定性动作的AI不同,TEMOS能通过单一文本,生成多种不同的人体运动

例如“人绕圈”和“站着走几步路停下来”这种单一指令,就能生成好几种不同的运动方式:

0eabc9b08cdea368b3d835ed6ae57870.png

转圈方式、走路步幅都不一样

TEACH的架构正是基于TEMOS设计,动作编码器直接就从TEMOS那儿搬了过来。

但TEACH重新设计了文本编码器,其中包括一个名叫Past Encoder的编码器,它会在生成每一个动作时,提供前一个动作的上下文,以增加动作与动作之间的连贯性。

fe7b9bff21754b37dc2e4ac44b7ab16d.png

如果是一系列指令中的第一个动作,就禁用Past Encoder,毕竟没有前一个动作可以学了。

TEACH在BABEL数据集上进行训练,这是一个时长43小时的动捕数据集,包含过渡动作、整体抽象动作、以及每一帧的具体动作。

f523154cf0f982058ee99ca91d19d4b1.png

在训练时,BABEL的这一系列动捕数据会被切分成很多个子集,每个子集中包含一些过渡动作,让TEACH能学会过渡并输出。

至于为什么不用另一个数据集KIT进行训练,作者们也给出了自己的看法。

例如在动词类型上,BABEL出现要比KIT更具体,相比之下KIT更喜欢用do/perform这种“模糊的”词汇。

83d4b76a1becabcba74575f2727a4bf3.png

研究人员将TEACH与TEMOS就连续动作生成效果进行了对比。

比TEMOS效果更好

先来看看TEACH生成一系列动作的效果,连续不重样:

9983ac83659231a0a4e00776e6a8bfd0.png

随后,研究人员将TEMOS与TEACH进行了对比。

他们使用两种方法对TEMOS模型进行了训练,并分别将它们称之为Independent和Joint,区别在于训练用的数据上。

其中,Independent直接用单个动作训练,在生成时将前后两个动作用对齐、球面线性插值等方式融合在一起;Joint直接用动作对和分隔开的语言标签作为输入。

Slerp是一种线性插值运算,主要用于在两个表示旋转的四元数之间平滑插值,让变换过程看起来更流畅。

2fef1a5c935ba7276552a2f61712ca33.png

以生成“挥挥右手,举起左手”连续两个动作为例。

Independent的表现效果最差,人物当场坐下了;Joint效果好一点,但人物并没有举起左手;效果最好的是TEACH,在挥动右手后又举起了左手,最后才放下。

7de77252bcdc136941e0d1a2457a66f2.png

在BABEL数据集上测试表明,TEACH的生成误差是最低的,除此之外Independent和Joint的表现都不太好。

a8c0b4ff86288e58bc6882bfc61cfdf5.png

研究人员还测了测使用上一个动作的最佳帧数,发现当使用前一个动作的5帧时,生成的过渡动作效果最好。

ad668c0b0c280724c3b0509013c0e868.png

作者介绍

00a08499ef7fd2a2ed30265683c2bc9c.png

Nikos Athanasiou,马普所在读研究生,研究方向是多模态AI,喜欢探索人类行动和语言背后的关系。

5fb738c39c39eafe022ed5cea621b7d0.png

Mathis Petrovich,在古斯塔夫·艾菲尔大学(Université Gustave Eiffel)读博,同时也在马普所工作,研究方向是基于标签或文字说明产生真实的、多样化人体运动。

5e4fc5b279b0191963ba4efdc77ae8cc.png

Michael J. Black,马克思·普朗克智能系统研究所主任,如今谷歌学术上论文引用次数达到62000+次。

429c81e724b467e37306fcd45766c139.png

Gul Varol,古斯塔夫·艾菲尔大学助理教授,研究方向是计算机视觉、视频特征学习、人体运动分析等。

目前TEACH已经开源,感兴趣的小伙伴们可以戳下方地址体验了~

GitHub地址:
https://github.com/athn-nik/teach

论文地址:
https://arxiv.org/abs/2209.04066

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/308019
推荐阅读
相关标签
  

闽ICP备14008679号