腾讯游戏开发精粹Ⅱ
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

4.6 应用

本节介绍语音驱动数字人面部动画技术在实际生产中的两个应用方向:与聊天机器人结合的一种人工智能应用可视化的方法和提高游戏动画制作效率的游戏开发动画工具。

4.6.1 一种人工智能应用可视化的方法

2011年10月,苹果公司发布搭载了智能语音助手软件Siri的iPhone 4S手机,语音助手开始进入大众视野。自此以后,国内外各大互联网公司纷纷开始进行语音助手的研发工作,并逐渐推出各自的产品。除Siri外,还有美国微软公司的Cortana小娜、亚马逊公司的Alexa、谷歌公司的谷歌助手、脸书公司的M等。与此同时,国内公司借助其在中文语音识别和自然语言理解技术上的优势,推出了技术成熟的语音助手产品。例如,腾讯公司的听听AI音箱、百度公司的小度智能音箱、搜狗公司的语音助手及科大讯飞公司的灵犀语音助手等。这些语音助手产品借助语音识别、自然语言理解和语音合成等人工智能技术为用户提供各种高效便捷的服务。随着计算机视觉、计算机图形学技术的快速发展和计算机硬件性能的大幅提升,依赖技术和硬件可以更快速地生成分辨率更好、形象更加生动的视觉形象。这就使得可视化技术与聊天机器人的结合成为可能。

从2018年至今,搜狗公司与新华社联手推出了多位虚拟新闻主持人,并亮相“两会”、世界人工智能大会等各种重要场合。该产品依赖自然语言处理和语音合成等人工智能技术,将新闻稿转化为虚拟主播的声音;同时,利用文字和声音等多模态信息合成对应的主播人脸口型动画,与主播图像结合,实时进行新闻播报,在大大提高新闻播报效率的同时,为观众带来了与真人不同的全新体验。2019年,百度公司与浦发银行联合推出了一位虚拟员工。这位虚拟员工基于人工智能、感知技术、数据驱动等技术,为金融服务构造了一个具有智能感知、自然交互和精准分析决策能力的数字人,开启了金融服务新模式。与此同时,阿里巴巴公司也推出了可以聊天的虚拟客服员工“俪知”,该虚拟机器人拥有语音识别、自然语言理解和语音合成的功能,依靠人工智能技术来驱动表情,为虚拟客服领域带来了新的技术与体验。

基于上述语音驱动数字人技术,又提出了一种比较通用的人工智能应用可视化的方案,并成功地将人工智能和实时渲染两种技术结合在一起,研发出高保真可交互虚拟人,具体方案如图4.19所示。

由图4.19可知,该方案包括服务器端和客户端两部分。服务器端包含了语音识别、自然语言处理、语音合成等一系列人工智能处理模块。借助这些技术,服务器端在接收到客户端上传的语音数据之后,将回答内容对应的合成语音返回客户端。客户端部署了语音驱动面部的功能模块,在接收到合成语音之后,先预测对应的数字人动画参数,再将这些参数传递给引擎,引擎进行实时高保真渲染,得到做出相应表情的数字人。至此,借助语音驱动数字人面部动画技术,实现了语音和引擎的实时连接,从而实现了人工智能技术和虚拟人的结合。这样的结合,一方面,在某种程度上赋予了虚拟人生命;另一方面,为人工智能应用提供了高保真、可定制的形象,提升了产品体验。

图4.19 高保真可交互虚拟人方案整体流程图

基于高保真可交互虚拟人方案和团队自研的数字人Matt,设计了一种基于语音驱动的多情绪、可交互高保真数字人——MattAI,MattAI在2019年SIGGRAPH Asia大会的Real Time Live环节进行了现场演示。MattAI成功展示了任意人、多情绪和多语言的语音驱动数字人,并引起现场观众的热烈讨论。图4.20所示为可交互高保真数字人现场演示示例。

图4.20 可交互高保真数字人现场演示示例

4.6.2 游戏开发动画工具

语音驱动数字人技术可以被开发作为游戏开发中的动画生产工具。近年来,玩家对游戏内容和品质的要求越来越高,游戏内容和体量也越来越大。其中,以《刺客信条:奥德赛》和《塞尔达传说:旷野之息》为代表的高质量开放世界类型的游戏越来越受到玩家的青睐。随之而来,为了满足游戏体量和内容的制作需求,对游戏开发效率的要求也越来越高。

对于大部分游戏尤其是开放世界类型的游戏,角色是必不可少的游戏内容。其中,角色动画是非常重要的组成部分。高质量的角色动画,不仅代表着游戏开发团队的技术与艺术水平,还可以让玩家更好地沉浸到游戏当中,提升游戏体验。然而高质量的角色动画制作,需要非常有经验的模型师与动画师花费很多时间去精心制作。这对于角色动画需求量很大的游戏制作团队来说是无法接受的,会在很大程度上限制游戏开发进度。相应地,很多游戏制作团队开始借助与机器学习技术研发相关的制作工具,在满足游戏需求的同时,尽量提高开发效率。语音驱动面部动画工具就是其中一类。

首先来看目前已知的一些游戏项目中使用语音驱动面部动画工具的情况。在2019年的GDC上,《刺客信条:奥德赛》开发团队介绍了他们如何利用语音驱动面部动画工具生成角色动画资产。该工具主要在两方面帮助开发团队:①根据提前定义好的情绪和语言标签,将语音直接转化为动画数据,这些动画数据不仅包括面部,还包括身体运行等其他角色运动参数;②针对不同语言版本的游戏内容语言时长不一致的情况,开发团队通过拉伸或压缩语音数据,自动生成不同语言对应的动画参数。

《最终幻想7:重制版》制作团队在接受采访时,谈到他们开发了一个语音驱动工具,这个工具主要有两个作用:①给定语音和情绪标签,该工具生成动画参数和表情模板的混合参数,从而得到角色带表情的动画;②在面对游戏不同语言版本时,使用该工具直接生成不同语言对应的面部动画参数。

在2020年的SIGGRAPH大会上,一家来自加拿大的JALI Research公司分享了为《赛博朋克:2077》游戏项目开发的语音驱动工具。该公司在已有两篇学术论文的基础上,针对游戏开发的需求,引入了人工规则和美术师经验。除可以驱动角色的口型动画外,还可以同时进行眨眼及眼球和脖子运动的驱动,并支持通过手动设置标签来控制驱动生成动画的强度。除此之外,该工具支持大约10种语言的语音驱动。

可以看到,越来越多的游戏开发团队选择利用语音驱动工具制作角色动画资产,从而提高开发效率和节省开发成本。

作者所在的团队也对利用语音驱动高保真数字人面部动画技术来帮助游戏开发进行了探索和尝试。从4.4节语音驱动技术方案的分析当中可以看到,提出的语音驱动模型接收语音输入后,模型直接预测人脸角色绑定系统的控制器数值。虽然以上流程针对的是高保真数字人的动画与渲染管线,但从游戏开发角度来看,这个基于Blendshape的绑定系统是可以无缝接入游戏开发管线的,即语音驱动模型预测的控制器数值除可以直接进入虚幻引擎中进行实时驱动外,也可以和Maya环境下的人脸绑定对接,这样美术师就可以直接在语音驱动的基础上修改、制作动画数据,或者直接使用模型生成的结果,而丝毫不影响游戏开发流程和后续进入引擎的相关操作。因此语音驱动面部动画工具可以在很大程度上提高游戏角色动画的制作效率。

本章提出了如图4.21所示的语音驱动角色面部动画工具流程。

图4.21 语音驱动角色面部动画工具流程

同时开发了一个面向Maya软件的语音驱动角色面部动画工具,如图4.22所示。

图4.22 语音驱动角色面部动画工具图形界面

该工具使用过程如下。

(1)单击Select audio按钮(选择语音文件)。

(2)单击Upload按钮。

(3)选择播放帧率的按钮。

(4)单击Set anim按钮。

借助该工具,我们可以直接得到与语音时长一致、符合语音内容的人脸动画。