使用 GAN 创造奇幻生物

为数字视频游戏创作艺术作品需要高度的艺术创造力和技术知识,同时还需要游戏艺术家快速迭代创意并制作大量资产,而且往往面临紧迫的期限。如果艺术家拥有一支画笔,它的作用不像工具,而更像助手,那会怎样?充当这种画笔的机器学习模型可以减少创作高质量艺术作品所需的时间,而无需牺牲艺术选择,甚至可能增强创造力。

今天,我们介绍Chimera Painter,这是一个经过训练的机器学习 (ML) 模型,可以根据用户提供的生物轮廓自动创建完整的渲染图。Chimera Painter 是一个演示应用程序,当用户单击“变换”按钮时,它会为用身体部位标签(例如“翅膀”或“爪子”)分割的生物轮廓添加特征和纹理。下面是使用演示和预设生物轮廓之一的示例。

1729585689360.jpg

使用导入 Chimera Painter 或使用提供的工具生成的图像,艺术家可以迭代构建或修改生物轮廓,并使用 ML 模型生成逼真的表面纹理。在此示例中,艺术家 (Lee Dotson) 定制了 Chimera Painter 演示中预加载的生物设计之一。

在这篇文章中,我们描述了在 Chimera Painter 背后创建 ML 模型所面临的一些挑战,并演示了如何使用该工具创建可用于视频游戏的资产。

为新类型模型制作原型

在开发用于制作视频游戏生物图像的机器学习模型时,我们创建了一个数字卡牌游戏原型,其概念是将生物组合成新的混合生物,然后让它们相互战斗。在这个游戏中,玩家一开始会拥有现实世界中的动物卡牌(例如墨西哥钝口螈或鲸鱼),可以通过组合它们让它们变得更强大(制作可怕的墨西哥钝口螈-鲸鱼嵌合体)。这为展示图像生成模型提供了一个创造性的环境,因为可能的嵌合体数量需要一种快速设计大量艺术资产的方法,这些艺术资产可以自然组合,同时仍保留原始生物可识别的视觉特征。

由于我们的目标是在艺术家的指导下制作高质量的生物卡牌图像,我们尝试使用生成对抗网络(GAN),并根据艺术家的反馈来制作适合我们奇幻卡牌游戏原型的生物图像。GAN 将两个卷积神经网络配对:一个用于创建新图像的生成器网络和一个用于确定这些图像是否是来自训练数据集(在本例中为艺术家制作的图像)的鉴别器网络。我们使用了一种称为条件 GAN 的变体,其中生成器采用单独的输入来指导图像生成过程。有趣的是,我们的方法与其他通常专注于照片级真实感的 GAN 工作截然不同。

为了训练 GAN,我们创建了一个全彩色图像数据集,其中包含从 3D 生物模型改编而来的单物种生物轮廓。生物轮廓表征了每种生物的形状和大小,并提供了识别各个身体部位的分割图。经过模型训练后,该模型的任务是根据艺术家提供的轮廓生成多物种嵌合体。然后将性能最佳的模型整合到 Chimera Painter 中。下面我们展示了使用该模型生成的一些示例资产,包括单物种生物以及更复杂的多物种嵌合体。

1729585676159.jpg

生成的卡牌艺术融入卡牌游戏原型,展示了基本生物(底行)和多种生物的嵌合体,包括蚁狮-豪猪、墨西哥钝口螈-鲸鱼和蟹蚁蛾(顶行)。有关游戏本身的更多信息,请参阅Stadia Research 演示文稿。

学习生成具有结构的生物

使用 GAN 生成生物的一个问题是,在渲染图像中细微或低对比度的部分时,可能会失去解剖和空间连贯性,尽管这些部分对人类来说具有很高的感知重要性。这方面的例子包括眼睛、手指,甚至区分具有相似纹理的重叠身体部位(见下面的昵称 BoggleDog)。

1729585665026.jpg

GAN 生成的图像显示不匹配的身体部位。

生成嵌合体需要一个新的非摄影幻想风格数据集,该数据集应具有独特的特征,例如戏剧性的视角、构图和灯光。现有的插图存储库不适合用作训练 ML 模型的数据集,因为它们可能受到许可限制、风格冲突,或者根本就缺乏这项任务所需的多样性。

为了解决这个问题,我们开发了一种新的由艺术家主导的半自动化方法,用于从 3D 生物模型创建 ML 训练数据集,这使我们能够大规模工作并根据需要快速迭代。在此过程中,艺术家将创建或获取一组 3D 生物模型,每个生物类型(如鬣狗或狮子)一个。然后,艺术家使用虚幻引擎制作两组纹理叠加在 3D 模型上- 一组具有全彩纹理(左图,下图),另一组具有每个身体部位(例如头部、耳朵、颈部等)的纯色,称为“分割图”(右图,下图)。在训练时将第二组身体部位片段提供给模型,以确保 GAN 了解各种生物的身体部位特定结构、形状、纹理和比例。

1729585651400.jpg

示例数据集训练图像及其配对分割图。

3D 生物模型全部放置在一个简单的 3D 场景中,同样使用虚幻引擎。然后,一组自动化脚本将获取这个 3D 场景,并为每个 3D 生物模型插入不同的姿势、视点和缩放级别,从而创建全彩色图像和分割图,这些图像和分割图构成了 GAN 的训练数据集。使用这种方法,我们为每个 3D 生物模型生成了 10,000 多张图像 + 分割图对,与手动创建此类数据(每张图像大约需要 20 分钟)相比,为艺术家节省了数百万小时的时间。

微调

GAN 有许多不同的超参数可以调整,从而导致输出图像的质量不同。为了更好地了解模型的哪些版本比其他版本更好,我们为艺术家提供了由这些模型生成的不同生物类型的样本,并要求他们从中筛选出几个最佳样本。我们收集了关于这些样本中期望特征的反馈,例如深度感、生物纹理的风格以及面部和眼睛的真实感。这些信息既用于训练模型的新版本,也用于在模型生成数十万张生物图像后从每个生物类别(例如瞪羚、猞猁、大猩猩等)中选择最佳图像。

我们通过关注感知损失来调整 GAN 以完成这项任务。此损失函数组件(也用于Stadia 的 Style Transfer ML )使用从单独的卷积神经网络 (CNN) 中提取的特征来计算两幅图像之间的差异,该神经网络之前已在ImageNet数据集的数百万张照片上进行训练。这些特征是从 CNN 的不同层中提取的,并对每个层应用权重,这会影响它们对最终损失值的贡献。我们发现这些权重对于确定最终生成的图像的外观至关重要。以下是使用不同感知损失权重训练的 GAN 的一些示例。

1729585636469.jpg

使用不同的感知损失权重生成的恐龙蝙蝠嵌合体。

上述图像中的部分差异是由于数据集包含每种生物的多种纹理(例如,蝙蝠的红色或灰色版本)。但是,忽略颜色,许多差异与感知损失值的变化直接相关。特别是,我们发现某些值会带来更清晰的面部特征(例如,右下角与右上角)或“平滑”与“图案化”(右上角与左下角),从而使生成的生物感觉更真实。

以下是使用不同感知损失权重训练的 GAN 生成的一些生物,展示了模型可以处理的输出和姿势的一小部分样本。

1729585625502.jpg

使用不同模型生成的生物。

1729585613003.jpg

使用条件 GAN 生成的嵌合体(确切地说是 Dino-Bat-Hyena)。GAN 的输出(左)和后处理/合成卡(右)。

Chimera Painter

训练好的 GAN 现已在Chimera Painter 演示中使用,艺术家可以迭代地使用模型,而不必从头开始绘制几十种类似的生物。艺术家可以选择一个起点,然后调整生物部位的形状、类型或位置,从而快速探索并创建大量图像。该演示还允许上传在外部程序(如 Photoshop)中创建的生物轮廓。只需下载其中一个预设生物轮廓即可获得每个生物部位所需的颜色,并将其用作在 Chimera Painter 之外绘制生物部位的模板,然后使用演示中的“加载”按钮使用此轮廓充实你的创作。

我们希望这些 GAN 模型和 Chimera Painter 演示工具能够启发其他人以不同的方式思考他们的艺术流程。当使用机器学习作为画笔时,人们可以创作什么?

致谢

该项目与许多人合作完成。感谢 Ryan Poplin、Lee Dotson、Trung Le、Monica Dinculescu、Marc Destefano、Aaron Cammarata、Maggie Oh、Richard Wu、Ji Hun Kim、Erin Hoffman-John 和 Colin Boswell。感谢所有投入大量时间提供艺术指导、技术反馈和绘制奇妙生物的人。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论