当前位置: 首页 > 编程日记 > 正文

三十六亿的《哪吒》历时五年,如何用AI解决动画创作难题?

640?wx_fmt=jpeg


作者 | 神经小姐姐

来源 | HyperAI超神经( ID: HyperAI )

【导读】《哪吒之魔童降世》自 7 月 26 日上映以来,好评如潮,票房一路高歌猛进,目前已突破 36 亿。这款火爆的动画背后,是主创团队历时 5 年的细致打磨。而这漫长的制作过程中,人工智能技术在其中助推多个环节的进展,让《哪吒》更早地呈现在我们眼前。

哪吒又双叒叕破纪录了!

电影《哪吒之魔童降世》自 7 月 26 日上映以来,一直在刷新动画电影的票房纪录。截止目前,19 天里全网票房突破 36 亿,观影人数超过 1 亿!成为了首部观影人数破亿的动画电影。

640?wx_fmt=jpeg

哪吒之前,国内的动画电影票房最高记录是 15 亿

在票房疯长的背后,它在豆瓣的评分也维持在 8.6 分,不少人开始感慨:中国动画的里程碑来了。

这样一部改编自神话故事的电影,凭什么像国漫界的一匹黑马,收获如此高的票房呢?

640?wx_fmt=jpeg

我哪吒是靠颜值收获的这么一大波粉丝吗

除了颠覆的人物设置,全新的故事设定,为观众带来惊喜之外,精致的视觉效果,更是《哪吒》如此炸裂的关键。这些酷炫的视觉效果,让一个又丧又皮的「魔化」哪吒,成了这个夏天最「靓」的仔。


险些让哪吒难产的动画制作

观众被这个最「靓」的仔深深吸引之时,不会想到,他曾险些遭遇难产。

每部爆款电影的背后,都离不开主创团队的细心打磨,而繁琐的程序,往往让制作时间拉得很长,甚至会有作品熬不下去,中途夭折。

《哪吒》的制作过程也同样不易,但所幸,历时五年之久,最终总算是被「死磕」出来了。

这部时长 110 分钟的动画电影,共经历了 66 次剧本修改,有 20 多个专业外包团队,1600 多位动画制作人员参与制作,全片共有 1400 多个特效镜头。

640?wx_fmt=gif

电影里万龙甲由来片段

由此可见,一部优秀的动画,注定是一项浩大的工程。不少从业人员都吐槽过,动画制作完全是个「苦力活」。在导演的采访资料里,也爆出了因工作繁重,外包团队离职率陡增的情形。

大量人物形象制作,分镜动画绘制,以及特效的制作,都是费时耗力的过程。短短十几秒画面,可能就需要几个团队几个月的努力。

640?wx_fmt=gif

丑萌的哪吒魔化后帅炸

尽管团队投入大量精力,但仍然有很多问题不是能仅靠死磕就可以解决的。比如片中灵珠和魔丸结合时,导演本想营造时光倒退,万物归一的视觉效果。但该镜头在经过几个月的尝试后,终因达不到预期而被舍弃。

类似这样的制作难题,是限制动画发展的一大因素。倘若制作流程能够更加高效,或许就会涌现更多的优质电影。而这个方面,人工智能技术能给动画行业带来新的契机。

 

解放原画师:AI 线稿上色

动画的制作过程中,基本的环节就是完成画稿的绘制,而对这些画稿完成上色,则是一项浩大的工程。

640?wx_fmt=jpeg

值得一提的是,哪吒的形象前后设计了 100 多个版本

对于普通的 12 帧率动画,按 25 分钟计算,需要 18000 张图画。对于一个 10 人的团队来说,约需要 2 个月才能完成。

但基于 AI 的工具,效率会得到极大的提升。比如当下最优秀的技术,完成一集动画仅需 2.5 小时,效率提升达到了 2000 倍之多。

最近在 GitHub 上星数过万的 Style2paints,就是这样一个充满魔力的绘制工具。通过它,制作人员能够快速完成复杂的上色流程。

640?wx_fmt=jpeg

有四个步骤:从线稿开始,右上角上平面颜色 

左下角加入有梯度的颜色,右下角加入阴影

Style2paints 由苏州大学和香港中文大学的研究者共同打造,最新版本已升级到 V4。它也被评为最好的线稿上色 AI 工具。

Style2paints 基于无监督的深度学习,通过风格迁移 GAN 技术,将线稿原画变成饱满的彩色图画。

整个过程分为两个阶段,第一阶段将草图渲染为粗略的彩色图画。为完善画面,第二阶段会识别其错误并进行细化,以获得最终结果。

而使用起来也很简单,只需画师完成线稿,然后通过鼠标点击,就能得到饱满的彩色画稿。对于要求高的画师,可能还需要些许的微调。

640?wx_fmt=jpeg

GitHub 上的操作指南

解放动画师:神经网络自动补帧

动画电影的制作中,有关键帧和中间帧之分,中间帧是串在两个关键帧之间的画面,起到衔接和让画面流畅的作用,但其制作却是动画中耗时严重的过程。

640?wx_fmt=jpeg

深色的三个动作是关键帧,浅色的是中间帧

如果给出一段视频的相邻的关键帧,让 AI 去补充出中间的画面,工作量就会大大减少。

谷歌 AI 前段时间公布的生成模型,就是按照这个思路,在一定程度上解决了问题。

640?wx_fmt=png

模型示意图

他们发布的这套 AI 系统,包含一个完全卷积模型,由 2D 卷积图像解码器,3D 卷积潜在表示生成器,和视频生成器组成。

通过将图像解码,除了将输入视频信息解码,还将目标视频的信息映射到潜在空间。而潜在表示生成器将两种信息合并,最后由视频生成器解码达到预测的中间帧。

AI 生成的视频帧序列,在风格上与给定的起始帧和结束帧保持一致,而且整体看起来很顺滑。令人惊喜的是,此方法可以较长的时间段内实现视频生成。

640?wx_fmt=gif

使用 Kinetics 数据集从静态图像创建出的视频


在他们的研究中,一些视频的生产效果喜人,但也有一些复杂的视频,出现了奇怪的画面,仍待改进。


解放导演:文本生成动画

当然最惊喜的功能,也许要数 AI 直接从剧本生成动画。那些无法做出来的场景效果, 也许在 AI 手中,会得到解答。

在前段时间,迪士尼和罗格斯大学的科学家发表了一篇论文,介绍了一款用文本描述生成动画场景的 AI 模型。

640?wx_fmt=png

要让 AI 实现从文本到视频的生成,需要其「理解」文本,然后生成对应的动画。为此他们采用了多个模块组件的神经网络。

这个模型包含三个部分,一是脚本解析模块,自动将剧本文本中的场景解析出来,然后是自然语言处理模块,能够提取出主要描述句子,并提炼出动作表示,最后是一个生成模块,将动作指令转化成动画序列。

640?wx_fmt=jpeg

模型的流程示意

研究人员,从可自由获取的电影剧本中,搜集了上千个剧本,从中选取了其中的 996 个,编写了场景描述语料库。 

这个语料库由 525,708 描述组成,包含 1,402,864 个句子,其中 920,817 个包含有至少一个动作。

建立起描述和视频的映射,从而通过输入剧本,能够生成简单的动画片段。在测试实验中,生成动画的合理性为 68 %。

虽然该系统还依赖于语料库,不能百分百完成文本到视频的生成,但在动画制作上带来了新的方向。

640?wx_fmt=jpeg

迪士尼还研究过自动生成与语音相匹配的动画口型

AI 颠覆动画的路还有多远

《哪吒》的火爆,让人们再次注意到了动画电影的潜力,而这部打破传统的电影,还在向着它的新纪录奔去。

虽然说 AI 技术在动画制作上有了一些良好的尝试,但这些技术只有更趋完善和成熟,才能真正被电影制作人所利用。

期待未来技术的发展,让我们不需要等待漫长的五年,就能看到更多《哪吒》这样的经典之作。

640?wx_fmt=gif

(*本文为 AI科技大本营转载文章,转载请联系作者)

原文链接:

https://mp.weixin.qq.com/s/6bI8tvRbzopGGBwayB1XBA


精彩推荐



AI ProCon 2019 邀请到了亚马逊首席科学家@李沐,在大会的前一天(9.5)亲授「深度学习实训营」,通过动手实操,帮助开发者全面了解深度学习的基础知识和开发技巧。


抽奖送礼,领不领!

扫码添加小助手,回复:大会,加入福利群,参与抽奖送礼!

640?wx_fmt=jpeg

9大技术论坛、60+主题分享,百余家企业、千余名开发者共同相约 2019 AI ProCon!技术驱动产业,聚焦技术实践,倾听大牛分享,和万千开发者共成长。5折优惠票抢购中!


640?wx_fmt=png

推荐阅读

  • 最前沿:堪比E=mc2,Al-GA才是实现AGI的指标性方法论

  • 1万+字原创读书笔记,机器学习的知识点全在这篇文章里

  • 开源之战

  • 别再造假数据了,来试试Faker这个库吧!

  • 国外大神制作的超棒NumPy可视化教程

  • 突发!Python再次第一,Java和C下降,凭什么?

  • 白话中台战略:中台是个什么鬼?

  • 伟创力回应扣押华为物资;谷歌更新图片界面;Python 3.8.0b3 发布 | 极客头条

  • 沃尔玛也要发币了,Libra忙活半天为他人做了嫁衣?

640?wx_fmt=png

你点的每个“在看”,我都认真当成了喜欢

相关文章:

vb.net结构化异常处理和“邪用”

vb.net中的错误处理包括两种:非结构化异常处理技术和结构化异常处理。非结构化异常处理技术在vb 6.0中使用的比较普遍,即通过Err对象和ON Error、Go To、Resume等语句来实现。这种方式可以跟踪最近产生的异常和最近异常处理程序的位置。而结构化异常处理…

Ubuntu 14.04 64位机上不带CUDA支持的Caffe配置编译操作过程

Caffe是一个高效的深度学习框架。它既可以在CPU上执行也可以在GPU上执行。下面介绍在Ubuntu上不带CUDA的Caffe配置编译过程: 1. 安装BLAS:$ sudo apt-get install libatlas-base-dev 2. 安装依赖项:$ sudo apt-get install libprot…

NAT环境无法访问云端的深层次分析

这是一次我维护runningdoctor时候遇到的问题现象:1.用户无法打开web.runningdoctor.cn 2.监控状态无异常、无报警 3.tracert结果无异常、丢包率正常 4.用户无法访问的时候,我们能打开网站 5.多地代理访问网站,结果正常 6.有打开网站特别慢的时…

Magento(麦进斗)安装问题

安装到数据库那一步会跳出 lib\Zend\Db\Statement\Pdo.php on line 228 错误 解决方案: 在你的php模块里的php.ini文件添加(或者修改)max_execution_time1800 重启你的web服务器(apache,nginx),…

Linux Socket基础介绍

Linux Socket函数库是从Berkeley大学开发的BSD UNIX系统中移植过来的。BSD Socket接口是众多Unix系统中被广泛支持的TCP/IP通信接口,Linux下的Socket程序设计,除了微小的差别之外,也适用于大多数其它Unix系统。 Socket接口是TCP/IP网络的API…

免费公开课 | 基于定制数据流技术的AI计算加速

随着人工智能时代的来临,业内对于更高效率算力的需求也越来越紧迫,而传统的 CPU 计算能力弱,只适合软件编程,并不适合应用于人工神经网络算法的自主迭代运算。为了满足支撑深度学习的大规模并行计算的需求,人工智能芯片…

代替国足踢决赛?马宁当选卡日大战第四官员

卡塔尔杀进亚洲杯决赛。 图片来源:Osports全体育图片社 中新网1月30日电 日本与卡塔尔将会师本届亚洲杯的决赛。北京时间30日,亚足联官方已经公布了本次决赛的裁判组,中国裁判员马宁将担任第四官员。 来自乌兹别克斯坦的亚洲金哨伊尔马托夫将…

AI规模化落地,英特尔至强的七重助力

当今时代,各行各业与人工智能(AI)加速融合,通过智能化创新来寻求业务转型升级。与为数不多的顶级AI研发公司相比,大多数传统行业或企业有着更丰富的 AI 应用场景,推动着规模化的AI应用落地,其AI…

Linux进程编程基础介绍

Linux系统是一个多进程的系统,它的进程之间具有并行性、互不干扰等特点。也就是说,每个进程都是一个独立的运行单位,拥有各自的权利和责任。其中,各个进程都运行在独立的虚拟地址空间,因此,即使一个进程发生…

关于互联网技术基层绩效管理的一些思考

起因是一篇内部的文章,那记录也就留在内部吧,磨炼了的价值观在自己心里就好。 类似的还有 1. 罗振宇不发年终奖:https://xueqiu.com/7118120763/119669075 2. 有赞白鸦强行一波996:https://baijiahao.baidu.com/s?id1623959680…

波纹管 编织管

为什么80%的码农都做不了架构师?>>> 波纹管 编织管 http://wenku.baidu.com/view/4272a9feaef8941ea76e057e.html 转载于:https://my.oschina.net/tadcat/blog/151049

Git基础(常用命令)介绍

版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统. 关于版本控制分为三种:本地版本控制系统,如rcs;集中化的版本控制系统,如CVS、SVN;分布式版本控制系统,如Git。 Git基础要点 G…

MIT开发新加密货币,用户所需数据比比特币减少99%

MIT的研究人员开发了一种新的加密货币,大大减少了用户加入网络和验证交易所需的数据,与当今流行的加密货币相比,最高可达99%。这意味着网络更具扩展性。 像比特币之类流行的加密货币都是构建于区块链上的网络,而区块链是按照一系列…

深入了解AI加速芯片的定制数据流架构与编译器 | 公开课

随着人工智能时代的来临,业内对于更高效率算力的需求也越来越紧迫,而传统的 CPU 计算能力弱,只适合软件编程,并不适合应用于人工神经网络算法的自主迭代运算。为了满足支撑深度学习的大规模并行计算的需求,人工智能芯片…

《GPU高性能编程CUDA实战》中代码整理

CUDA架构专门为GPU计算设计了一种全新的模块,目的是减轻早期GPU计算中存在的一些限制,而正是这些限制使得之前的GPU在通用计算中没有得到广泛的应用。使用CUDA C来编写代码的前提条件包括:(1)、支持CUDA的图形处理器,即由NVIDIA推…

​50年来最具影响力的十大编程语言!

作者 | javinpaul译者 | 馨怡责编 | 屠敏出品 | CSDN(ID:CSDNnews)【导语】“适者生存”的自然法则在应用竞争激烈的编程语言界同样适用,而在数百种编程语言中,相对而言,哪些最具影响力?哪些才是…

【基础篇】DatePickerDialog日期控件的基本使用(一)

项目步骤&#xff1a; 1.首先在Main.xml布局文件中添加一个Button标签&#xff0c;用来点击显示日期控件&#xff0c;Main.xml内容如下&#xff1a; <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android" xmlns:tools"http://sch…

PoPo数据可视化第9期

PoPo数据可视化 聚焦于Web数据可视化与可视化交互领域&#xff0c;发现可视化领域有意思的内容。不想错过可视化领域的精彩内容, 就快快关注吧 :)2018 in the Ito Design Lab&#xff08;视频内容请关注微信公众号浏览&#xff09;1900~2018年城市温度异常变化可视化Temperatur…

面向可解释的NLP:北大、哈工大等提出文本分类的生成性解释框架

作者 | Hui Liu, Qingyu Yin, William Yang Wang 译者 | Rachel编辑 | Jane出品 | AI科技大本营&#xff08;ID: rgznai100&#xff09;【导语】北大、哈工大和加州大学圣巴巴拉分校在 ACL 2019 的一篇论文中联合提出了一个全新的生成性解释框架&#xff0c;该框架能够对分类策…

pyramid参数

2019独角兽企业重金招聘Python工程师标准>>> 普通参数permission: 该view的访问权限&#xff0c;这个后续会具体介绍。attr: Pyramid默认调用的是view类的__call__函数&#xff0c;如果需要指定调用其他方法&#xff0c;通过attr指定。如attrindex。renderer: 指定构…

Linux下常用的C/C++开源Socket库

1. Linux Socket Programming In C : http://tldp.org/LDP/LG/issue74/tougher.html 2. ACE: http://www.cs.wustl.edu/~schmidt/ACE.html ACE采用ACE_OS适配层屏蔽各种不同的、复杂繁琐的操作系统API。 ACE是一个大型的中间件产品&#xff0c;代码20万行左右&…

前端技术选型的遗憾和经验教训

我是Max&#xff0c;Spectrum的技术联合创始人。Spectrum 是一个面向大型在线社区的开源聊天应用程序&#xff0c;最近被GitHub收购。我们是一个三人团队&#xff0c;主要拥有前端和设计背景&#xff0c;我们在这个项目上工作了近两年时间。 事后看来&#xff0c;以下是我做出的…

时间序列的建模新思路:清华、李飞飞团队等提出强记忆力E3D-LSTM网络

作者 | Yunbo Wang,、Lu Jiang、 Ming-Hsuan Yang、Li-Jia Li、Mingsheng Long、Li Fei-Fei译者 | 凯隐编辑 | Jane出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;【导读】如何对时间序列进行时空建模及特征抽取&#xff0c;是RGB视频预测分类&#xff0…

了解node.js

转载自http://debuggable.com/posts/understanding-node-js:4bd98440-45e4-4a9a-8ef7-0f7ecbdd56cb 当我向人们介绍node.js时&#xff0c;通常会得到两种反应&#xff0c;一种人马上就能了解&#xff0c;另一种则是非常困惑。 如果你是第二种人&#xff0c;请看一下我对node的解…

VS2013中Image Watch插件的使用(OpenCV)

之前在vs2010中写OpenCV程序时经常用NativeViewer&#xff0c;安装此插件后&#xff0c;在调试代码时&#xff0c;对于cv::Mat变量&#xff0c;CV_TYPE类型为CV_8UC1或CV_8UC3&#xff0c;可以随时查看显示结果。其操作步骤为&#xff1a;1. 从http://sourceforge.net/p…

【spring boot2】第8篇:spring boot 中的 servlet 容器及如何使用war包部署

嵌入式 servlet 容器 在 spring boot 之前的web开发&#xff0c;我们都是把我们的应用部署到 Tomcat 等servelt容器&#xff0c;这些容器一般都会在我们的应用服务器上安装好环境&#xff0c;但是 spring boot 中并不需要外部应用服务器安装这些servlet容器&#xff0c;spring …

让织梦内容页arclist标签的当前文章标题加亮显示

很多人在用织梦做站的时候&#xff0c;会用到在当前栏目页面&#xff0c;给当前栏目标题使用指定样式如标题加亮&#xff0c;或者放个背景图。这是一个很常用和实用的功能&#xff0c;比如在导航页面&#xff0c;标识当前在浏览哪个栏目。如下图&#xff1a; 但是有些时候&…

RHEL6入门系列之九,常用命令2

今天还是继续来学习Linux的基本命令。4、touch命令——建立空文件touch命令用于建立空文件。[rootlocalhost ~]# mkdir /root/test ‘创建目录/root/test[rootlocalhost ~]# touch /root/test/test1.txt ‘在目录/root/test中创建空文件test1.txt[rootlocalhos…

为什么华为200万招聘AI博士,马斯克却推出脑机接口对抗AI?

作者 | 伍杏玲来源 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;7 月&#xff0c;华为一则薪资通知刷爆朋友圈&#xff1a;华为给8位博士应届生给予 89.6 万至 201 万的年薪。其中薪资最高的两位博士均研究人工智能相关专业。7 月还有一件大事&#xff1a;马斯克发布…

Artistic Style在windows下的使用(C/C++)

ArtisticStyle是一个开源的源代码格式化工具。主页地址为&#xff1a;http://astyle.sourceforge.net/&#xff0c;它可以应用在C、C、Objective-C、C#、Java等程序语言中。http://astyle.sourceforge.net/astyle.html中为对使用它的详细介绍。从http://sourceforge.net/projec…