一文读懂《阿丽塔》背后的CG技术

2019-03-12 14:33 中华网

打印 放大 缩小

什么是CG技术?

以前,人们或许会说是“Avatar”;如今,人们也许会改口说是“Alita”了。

但不论是Avatar还是Alita,都只是CG技术的一种呈现。关于CG(Computer Graphics),如果简单来理解地话,其实就是通过计算机把虚拟世界在屏幕中展现出来的过程。

至于如果建造虚拟世界,我们就要先来看一个方程式:

看得懂的人,请给自己点个赞;看不懂的人,也没关系。因为只要换张图,你们也都懂了。

这个与初中物理“光的折射”看着很神似的图,就包含了CG技术的万千世界。

从现实到虚拟

建设一个虚拟世界,需要一个参照系,也就是真实世界。比如,现实中的皮球是圆形的,那虚拟世界中的皮球也应该是圆形的,而不是方形的。

但形状只是其中之一,现实中,物体的呈现还与环境光息息相关。不同的光打到同一物体上,人眼看到的物体形状可能就是不一样的。

将虚拟世界中的人、物体等,在计算机中建造出来的过程,就是CG技术的第一个重点——建模。

建模,说起来也简单,跟米开朗基罗雕大卫像差不多。不同的是,整个过程被放在了计算机中进行,而雕琢具体模型时,人需要通过计算机去一点一点地调。

要想让虚拟物体更接近真实物体,就需要有更多的原始素材。一开始,建模师是用一组相机全方位地拍物体,尽可能地了解光照下物体的各种细节,包括纹理、凹凸、几何形状等。

物体尚且如此,更不用说人了。以阿丽塔为例,仅脸部就包含肌肤纹理、肌肤表层、汗毛、油脂、头发等数不清的细节。这些单靠相机拍照去收集数据,可谓难上加难。一方面,因为相机本身的性能(分辨率、清晰度等)还有待提升,另一方面,相机只能收集二维数据,而重建人,需要更多三维数据。

于是乎,我们会发现,早期的电影CG特效中,“人”一看就是假的。

(电影史上第一个电脑生成的角色“彩色玻璃人”)

既然问题很明确,那就要解决呗。于是,三维扫描技术诞生了。依托三维扫描,人的各类信息可以被更好地获取,建模的第一道坎算是跨过去了。

不过,这时候建好的模型还是白模——完全不带纹理、汗毛、油脂等细节一个模型。有人是不是要说,这辛苦了半天,啥进展也没有啊?

别急,接下来就是CG技术的第二个重点——渲染,露脸了。渲染,就是求解上述方程式的过程。这与现实中的画画差不多,就是把人脸的各种细节给画上去。不同的是,画画是可以写意的,但渲染是要写实的。

细到一个毛孔不像,模型也只是模型,跟“真人”半毛钱关系也没有。这也是为什么阿丽塔会如此受大众欢迎,因为她突破了“恐怖谷效应”,成为了影史上第一个CGI 与真人结合的类人角色。

但渲染的水,其实很深。光线不同,人呈现出来的信息就不同;拍摄的角度不同,人呈现出来的信息也会不同;人在剧烈运动中,所呈现出来的信息和静止时也会不同……而要把这些不同全部综合起来,就需要靠算法。

目前来看,算法越先进,模型与真人也越像。不过,前提是收集到的信息足够多且是准确的,如果信息不准确,那结果可能就是相反的。

从虚拟到现实

真人模型建好了,也渲染好了,接下来就是CG技术第三个重点——动画,登场了。

说来也神奇,相比建模与渲染,动画反而是最早被大众所熟悉的。这,大概就要归功于我们从小耳濡目染的动画片了。不过,当时的动画其实是二维的,由原画师一帧一帧地画出来并组合到一起而成的。

虽然现在也有了三维动画,但与真人动画仍是不可比拟的。其中,一个最大的不同点就来源于动作捕捉设备。真人动画,是由真人穿上动作捕捉设备进行表演,并由设备设置不同的特征点,实时记录人动作的相关数据。

同时,现场还会有一组摄像机拍摄下真人表演的不同角度,记录各种细节。最后将所有信息都上传至计算机,借助编程或动画制作软件来生成一系列人物动画。

上面也谈到,模型与真人越像的前提是收集到的信息越多、越准确。这也意味着,动捕设备必须完全贴合人的形体,并精准地捕捉到人的所有动作细节。被CG技术掩盖了很久的硬件设备,终于C位出道了。

动捕设备的出现,极大充实了CG人物动作库,为电影拍摄需要大量人物出现的宏大场景,节省了巨大成本。且随着这一设备不断普及和升级,相应的数据量也呈几何倍增长,为建模、渲染的进一步优化打下了更为扎实的基础。

但这些在人脸面前,则显得稍微有点小儿科。人脸的微表情实在太多,比如皱眉一个动作,就牵扯到眉毛、眼睛、鼻子、嘴巴、面部,乃至毛孔、肌肤纹理等等。这次,《阿丽塔》对人脸面部细节的精准捕捉、重建和展现,就极大刷新了人们对CG技术极限的认知。

当然,这也要归根于表演捕捉设备的不断升级,达到了人眼识别的界限,让3D模型真的像真人了。不过,这个像是有限度的,它除了受表演捕捉设备本身的影响外,还受到拍摄设备、演员表现等影响,更重要的是,还受到算法的影响。

算法的好坏,直接影响到计算力的好坏,影响到呈现出来画面的精准度,也影响着动画环节的连贯性。从这个层面来说,算法决定了一个虚拟人物的成败,更进一步说,可能也决定了一部电影的成败。

从现实到镜像

算法与设备,是一母同胞。

早期,算法的落地大多是依托于CPU实现的。一台电脑,大多也只有一个CPU。不过,随着CG技术不断被应用落地,采集的数据量也越来越大,要呈现出好的动画效果,单靠CPU已显得有点捉襟见肘了。

比如在《阿丽塔》中,要呈现一帧动画,平均就需要花费100个小时来渲染。而整部电影下来,总计需要花费4.32亿小时来进行渲染。这需要动用到最少3万台电脑。可以说,每一帧动画都在疯狂地烧钱,即便是在工业级操作已经很溜的好莱坞,也是很难承受的。

但卡梅隆已经将人们的审美拉到了这个高度,想要再下来,怕也是很难了。于是乎,GPU就隆重登场了。这个专门负责图形处理的显卡,曾因实时相应慢、稳定性不够等原因,不被重视了很长一段时间。不过,随着虚拟世界与现实世界日益交融,GPU因运算速度快、计算能力强等特点,一跃成为了虚拟世界的“主角”。

2017年,中国造出了世界首台超越早期经典计算机的单光子量子计算机。2018年,英伟达发布了全球首款支持8K屏、实时光线追踪的GPU。同年,一款拥有16颗Volta GPU、可提供高达2PFLOPS的深度学习计算能力的超级计算机也正式问世。

这些于电影界乃至普通大众而言,无疑都是重大利好。量子计算机极大代表运算能力的提升,可减少渲染环节的计算机数量;8K屏代表信息收集将更加精准,数据的获取将更高效;实时光线追踪代表渲染可以耗时更短,超级计算机代表制作团队可大量缩减。当技术的壁垒被一层一层攻克,CG技术也迎来了第四个重点——人机交互。

“阿丽塔”,正在走下影坛,走向普罗大众。近年来,从首个AI虚拟主播绊爱到首个AI合成主播“邱浩”,再到今年央视春晚的虚拟主持人团队、今年春节期间首次亮相的拜年“猪猪”,CG技术开始渐渐褪去“工业级”的面纱,显露出“民用级”的真身。

目前,在工业级CG制作团队之外,市场上已有了多家主打民用级CG技术的团队。比如旨在为用户打造PAI(个性化人工智能,即Personal AI)的人工智能初创公司ObEN,比如旨在让每个人都拥有实时互动、智能、个性化的3D技术内容提供商FaceUnity(杭州相芯科技有限公司)……它们的出现,让CG技术从大屏走向了小屏,为人机互动创造出更多的应用场景。

《失控》作者凯文·凯利曾说,在网络、社交媒体之后,我们正处于第三个平台——镜像世界的黎明,这个平台将使世界其他的地方数字化。而在镜像世界里,每样东西都会有一个“孪生兄弟”,也就是“数字双胞胎”。

尽管这个世界短期之内或许不会马上来到,但虚拟世界与现实世界的交融脚步却不会停止,人们建造虚拟世界的热情也不会停止。

阿丽塔之外,更多的阿丽塔正在大步走来。

责任编辑:陈群(QT0001)