超酷的神经网络合成动物运动动画,解救动画师!(代码开源+视频)

简介: 针对四足动物的动画生成问题,爱丁堡大学的研究人员开发了一个被称为“模式自适应神经网络”的新神经网络架构,它可以从实际的运动数据学习,生成非常自然的动画。团队在今天开源了所有代码、数据和编译的demo。

创作四足动物动画是计算机动画行业一个特别困难的问题。四足动物动画在电脑游戏和电影中的应用很重要,同时也是机器人领域的一个具有挑战性的话题。传统方法制作四足动物动画时,动画师必须经过特殊培训,设计出各种复杂的动作,然后利用各种DCC软件进行动作捕捉。

204190d3d8082d60ad4defada159a564f7ed29de

针对四足动物的动画生成问题,来自爱丁堡大学HE ZHANG、SEBASTIAN STARKE、TAKU KOMURA和Adobe Research的JUN SAITO等人的团队开发了一个被称为“模式自适应神经网络”的新神经网络架构,它可以从实际的运动数据学习,生成自然的动画。系统不需要对相位或运动步态进行标记,而是从非结构化的运动捕获数据,以端到端的方式学习

整个研究使用 Unity3D / Tensorflow 完成,并且团队在今天开源了所有代码、数据和编译的demo。

视频介绍:

c8e6ddb925d8b22f73b7d99a4ac105266b653cd2

模式自适应神经网络

四足动物运动的多模态造成了动画制作的复杂性。四足动物有多种移动模式,例如步行、踱步、快走、慢跑、疾跑等,运动时其躯干和四肢的相位变化非常复杂。

c6d12d1351b7eff3e3f1dd1d9b5b2a724fdf151b

图:不同的四足运动模式。横条表示每条腿的站立相位。右侧的图像表示步态周期中脚接触的顺序。

目前还没有以数据驱动的方式系统地构建四足动物运动控制器的工作。除了上面提到的运动复杂性外,困难还来源于四足动物与人类不同,无法进行受控的数据采集。因此,捕获的数据往往不是结构化的。使用这些数据设计角色控制器时,工程师需要手动/半自动地提取步态周期和转换,再将它们拼接在一起,调整motion trees和有限状态机的参数。因此,传统的方法要么效率低,要么不精确。

3fe22bd4da62d733053e4c614f5fbf6bfc1a7e90

上图展示了基于动作捕捉实现的动画制作,但捕捉的动画是非结构化的,而且随机动作太过广泛。捕捉的数据不是很精准,动作存在很多噪波,细节的地方还需要后期修正。

3097031e1feeff59e976451a97d2fa94195f06ea

上图是通过标准神经网络生成的动画,但会产生失真和明显的滑步。

6f7c57781ff3639f57299d4e295fa9de34a2420c

上图的动画由相位函数神经网络(Phase-Functioned Neural Networks)的方式生成,优点是动作精准,但是当两个动作进行融合时动作显得僵硬,而且操控不是那么灵敏。

这个新研究提出了一种新的网络架构——模式自适应神经网络(Mode-Adaptive Neural Networks ,MANN),它可以从大量的非结构化四足动物运动捕获数据中学习运动控制器。

5332cd806c532b53c70705cd11bea4a4346bb223

MANN架构图示,由门控网络和运动预测网络组成。

这个系统由运动预测网络门控网络组成。在每一帧处,运动预测网络在给定的前一帧的状态和用户提供控制信号的情况下计算当前帧的角色状态。门控网络通过选择和混合所谓的专家权重(expert weights),动态地更新运动预测网络的权重,每个expert weight都专门针对特定的运动。

93652af90eca3d27445d2b690a760ee86359929b

MANN与以前方法的对比

这种架构提供了灵活性,使得系统能够在广泛的非周期动作和周期性的无标记步态类型中学习一致的特征。这个框架可以将开发人员从冗长而困难的相位标记工作中解放出来。特别是,我们的模型不需要单独的标签来区分不同的步态,这种区分即使对人类来说也很难,因此,可以在数据预处理过程避免步态错误。

该研究的贡献可概括如下:

d47e62d2b349aca45e42305ed6714efbe5ed61d9 提出 第一个构建数据驱动的四足角色控制器的系统方法 ,它可以合成具有各种运动模式和动作转换的高质量动画。
d47e62d2b349aca45e42305ed6714efbe5ed61d9 提出 一种新颖的端到端神经网络架构 ,可以从非结构化的四足动物运动捕捉数据中学习,而无需提供相位和运动步态标签。

d47e62d2b349aca45e42305ed6714efbe5ed61d9通过与现有方法进行比较,对所提出的架构进行了全面评估。

数据准备和结果

研究人员使用狗的动作捕捉(Dog Motion Capture)作为训练数据。这些数据包含各种运动模式,例如步行、踱步、小跑、跑步等,以及其他类型的动作,例如坐、站、闲散,躺着和跳跃。通过镜像将数据规模加倍。

160b956d0d3af9667ca926f55db816316df63acf

值得一提的是,这个研究延续自去年该团队所做的“用于角色控制的 Phase-Functioned 神经网络”(PFNN)工作,当时在SIGGRAPH 2017大会演示,同样令人印象深刻。


原文发布时间为:2018-06-1

本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”。

原文链接:超酷的神经网络合成动物运动动画,解救动画师!(代码开源+视频)

相关文章
用MASM32按Time Protocol(RFC868)协议编写网络对时程序中的一些有用的函数代码
用MASM32按Time Protocol(RFC868)协议编写网络对时程序中的一些有用的函数代码
|
4天前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
23 5
|
1月前
|
机器学习/深度学习 网络架构 计算机视觉
目标检测笔记(一):不同模型的网络架构介绍和代码
这篇文章介绍了ShuffleNetV2网络架构及其代码实现,包括模型结构、代码细节和不同版本的模型。ShuffleNetV2是一个高效的卷积神经网络,适用于深度学习中的目标检测任务。
70 1
目标检测笔记(一):不同模型的网络架构介绍和代码
|
1月前
|
网络协议 物联网 虚拟化
|
4天前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
|
2月前
|
安全 C#
某网络硬盘网站被植入传播Trojan.DL.Inject.xz等的代码
某网络硬盘网站被植入传播Trojan.DL.Inject.xz等的代码
完成切换网络+修改网络连接图标提示的代码框架
完成切换网络+修改网络连接图标提示的代码框架
|
2月前
|
JSON 监控 编译器
|
3月前
|
开发者 图形学 API
从零起步,深度揭秘:运用Unity引擎及网络编程技术,一步步搭建属于你的实时多人在线对战游戏平台——详尽指南与实战代码解析,带你轻松掌握网络化游戏开发的核心要领与最佳实践路径
【8月更文挑战第31天】构建实时多人对战平台是技术与创意的结合。本文使用成熟的Unity游戏开发引擎,从零开始指导读者搭建简单的实时对战平台。内容涵盖网络架构设计、Unity网络API应用及客户端与服务器通信。首先,创建新项目并选择适合多人游戏的模板,使用推荐的网络传输层。接着,定义基本玩法,如2D多人射击游戏,创建角色预制件并添加Rigidbody2D组件。然后,引入网络身份组件以同步对象状态。通过示例代码展示玩家控制逻辑,包括移动和发射子弹功能。最后,设置服务器端逻辑,处理客户端连接和断开。本文帮助读者掌握构建Unity多人对战平台的核心知识,为进一步开发打下基础。
120 0
|
3月前
|
安全 开发者 数据安全/隐私保护
Xamarin 的安全性考虑与最佳实践:从数据加密到网络防护,全面解析构建安全移动应用的六大核心技术要点与实战代码示例
【8月更文挑战第31天】Xamarin 的安全性考虑与最佳实践对于构建安全可靠的跨平台移动应用至关重要。本文探讨了 Xamarin 开发中的关键安全因素,如数据加密、网络通信安全、权限管理等,并提供了 AES 加密算法的代码示例。
59 0

热门文章

最新文章