在游戏中,亲手创造一个与众不同的角色,乐趣不言而喻。但有时往往是“游戏五分钟,捏脸两小时”。从主机、PC到手机游戏,随着硬件配置不断迭代,游戏在画面精细度和玩法操控度方面也越发强大,很多游戏开发商为了满足玩家们的个性化需求,都提供了一整套为游戏角色“捏脸”的系统,能让玩家根据自己的审美细化设定角色外观。
与此同时,游戏背后的计算机科学家们也一直在努力设计新的技术,使游戏体验更加沉浸化,以期达到引人入胜的效果,其中就包括自动创建接近真人的游戏角色的方法。不过,目前大多数现有的创建和定制游戏角色的方法都要求玩家手动调整角色的面部特征,以便重新创建自己的面部或捏成其他人的面部,一个玩家通常需要几个小时耐心去手动调整数百个参数(例如脸型、眼睛)来创建一个类似于指定肖像的角色。
最近,一些开发人员也尝试开发一些新方法,通过分析真实人物的面部图像,自动定制角色的面部,但这些方法实际效果通常不佳,要么过程复杂,要么对人脸形状和纹理的自由度有限。来自网易伏羲AI实验室和密歇根大学的研究人员最近发明了一种深度学习的方法,名为MeInGame,它可以通过分析一个人脸的单个肖像而自动生成游戏人物脸,这项技术在arXiv上预先发表的一篇论文中提出。
开发这项技术研究人员在论文中写道:“我们提出了一种自动创建人物面部的方法,可以从一张肖像中预测生成面部的形状和纹理,并可以集成到大多数现有的3D游戏中。”不少捏脸高手为了在游戏中捏出一个指定人物的脸可谓煞费苦心,甚至总结了一套复杂的教程和参数包,而今后,可能只需要输入一张人脸照片就能轻松搞定了。
让仿真人脸进入游戏世界,现有游戏中的人脸定制系统,很多是基于三维变形模型(3DMM)计算实现的,作为一种经典的三维人脸形状和反照率的统计模型,3DMM在人脸分析、模型拟合、图像合成等方面有着广泛的应用。
虽然基于3DMM的方法可以从单个图像中恢复出精确的三维人脸,但其网格的拓扑结构与大多数游戏中使用的网格不同,为了获得逼真的纹理,现有的方法需要大量的人脸纹理数据进行训练,而建立这样的数据集往往既费时又费力。
此外,这些数据集并不总是包含随机收集的真实图像,因此,在这些数据集上训练的模型在呈现新数据时,很难表现出一致的良好性能,进一步而言,这种在实验室条件下进行的方法在真实情况下可能无法很好地落地推广,尽管人们已提出了许多基于深度学习的三维人脸重建方法,目前在游戏中的应用仍然较少。
MeInGame的贡献在于:1、提出了一种低成本的三维人脸数据集生成方法。所创建的数据集在种族和性别上是平衡的,面部形状和纹理都是从原始图像中创建;2、提出了一种将重建的三维人脸形状转化为游戏网格的方法,可以直接在游戏环境中使用,该方法不依赖于网格连通性,计算效率高;3、为了消除光照和遮挡的影响,他们训练了一个神经网络,在一个通用的训练范式下,从“野生”人脸图像中预测一个完整的漫反射贴图。
在未来,这个研究小组设计的角色脸生成方法可以集成到许多3D视频游戏中,实现与真人非常相似的角色自动生成。MeInGame模型的代码和用于训练该模型的数据集已在线发布,游戏开发者可通过以下网址访问:https://github.com/FuxiCV/。
该方法不仅能应用于游戏,由于COVID-19的疫情影响,人们不得不保持社交距离,很多数会议活动都改为在线/虚拟会议,甚至在3D游戏中举办学术研讨会,随着越来越多的社交活动从面对面走向网络化,用户在虚拟环境中自动生成3D角色也会让社交的形式变得非常有趣。
对于MeInGame模型的特点,研究人员在论文中阐释说:“给定一张输入的人脸照片,我们首先基于3D变形人脸模型(3DMM)和卷积神经网络(CNNs)重建3D人脸,然后将3D人脸的形状转移到模板网格上。该网络以人脸照片和展开的粗UV纹理图为输入,预测光照系数和细化纹理图。”利用神经网络的强大功能,可以有效地去除输入中不需要的光照分量和遮挡。
由于典型游戏引擎的渲染过程是不可微的,他们还利用可微渲染方法将渲染输出中的梯度反向传播到训练过程中需要参数更新的各个模块。这样,所有的网络组件都能以端到端的方式顺利训练。为了减少训练数据的依赖性,除了可微绘制外,他们还设计了一种新的基于半监督学习的训练流水线,使用配对数据进行监督学习,使用未标记数据进行自我监督学习。因此,MeInGam网络能够以半监督的方式进行训练,减少对预定义纹理贴图的依赖。
最后,通过将生成的人脸网格和纹理加载到游戏环境中,就可以为玩家创建逼真的游戏角色。值得注意的是,研究人员将人脸形状和纹理的重建作为一个自我监督的人脸相似性度量问题。在可微绘制的基础上,设计了一个绘制循环,从与输入人脸照片相似的预测形状和纹理中强制进行二维人脸绘制。MeInGame方法由几个可训练的子网络组成。
首先,图像编码器以人脸图像为输入,产生潜在特征;其次,将图像特征展平并输入光照回归器,一个由几个完全连接的层组成的轻型网络,并预测光照系数(光照方向、环境光、漫反射和镜面反射颜色);然后,研究人员引入了一种纹理编码器,将输入图像和粗纹理映射的特征串接在一起,然后输入到纹理解码器中,产生精细的纹理映射。
最后,使用游戏网格、精细纹理贴图、姿势和照明系数,研究人员使用可微渲染器将面部网格渲染为2D图像,并强制该图像与输入的面部照片相似。
为了进一步改进结果,他们还引入了两个鉴别器,一个用于人脸图像,另一个用于生成人脸纹理图。此外,还创建了一个种族和性别平衡(RGB)数据集,并将其命名为“RGB 3D人脸数据集”,与其他需要多视点图像的方法不同,他们的方法只使用单视点图像即可,并且容易获取。
研究人员基于英特尔i7 CPU和英伟达1080Ti GPU上运行实验,使用PyTorch3D(v0.2.0)及其依赖项。给定一幅人像和粗纹理图,MeInGame网络只需要0.4s就可以生成一幅1024×1024精细纹理图。研究人员在实验中还进行了定性和定量比较,呈现效果不错。
他们将MeInGame方法与其他一些最先进的游戏角色自动创建方法/系统进行了比较,包括《一梦江湖》、Loomie、《逆水寒》和ZEPETO中的角色定制系统。
最终,MeInGame的结果在面部形状和外观方面都比其他结果更类似于输入图像,他们还将其与最先进的基于3DMM的方法进行了比较,尽管能从单个图像重建3D人脸,但突出的问题是,3DMM只模拟面部特征,不包括一个完整的头部模型以及纹理,使其难以直接用于游戏环境。此外,研究人员也邀请了30人进行评估。每个人分配了480组结果。
每组结果包括一幅肖像、MeInGame的结果和一个来自其他的结果,参与者被要求从两个结果中选择一个更好的,并将其与参考肖像进行比较,用户报告的分数也反映了MeInGame结果的质量。在总结中,研究人员提到了MeInGame方法仍然有的一些局限性。例如,当存在严重遮挡(例如帽子)时,该方法无法产生可靠的结果,因为渲染器无法对头部网格外的对象创建的阴影进行建模。
其次,同一个人在严重光照变化下的两幅肖像的结果也有差别,结果会受到不同颜色灯光的影响。话说回来,技术的落地应用,往往并不是技术本身的问题,有时候会牵扯到一些社会问题,比如个人隐私或者肖像权。
本文提出了一种新的游戏角色人脸自动生成方法,该方法可以轻松产生与输入照片在脸形和纹理方面相似的角色脸,考虑到建立同时具有形状和纹理的三维人脸数据集的成本很高,研究人员还提出了一种低成本的方法来生成所需的数据训练,于技术而言,该方法的性能要大大优于现有的方法,能为游戏互动增添不少乐趣。但是在游戏中随意创建一个其他真人的脸,越来越逼真,会不会牵扯到很多社会伦理问题?
这是AI技术自诞生以来就面临的阴暗面问题,此前,市面上有些AI换脸的技术就曾把一些明星、名人的脸无缝移植到一些不雅视频乃至无厘头作品中,造成的影响非常糟糕。所以技术虽好,如何去合法合规地运用,可能也是MeInGame在落地时需要考虑到的问题。