Anderson 视角

编排面部合成与语义分割

mm
将 Unite.AI 添加到您在 Google 上的首选来源

使用生成对抗网络(GAN)创造人脸的问题在于,驱动假图像的真实世界数据带来了不受欢迎且不可分割的附件,例如头发(和/或面部),背景和各种面部家具,例如眼镜,帽子和耳环;这些个性外围方面不可避免地与“融合”的身份联系在一起。

在最常见的GAN架构中,这些元素没有自己的专用空间,而是紧密地与面部或周围环境相关联。

通常也不可能指示或影响GAN生成的面部“子部分”的外观,例如缩小眼睛,延长鼻子或更改头发颜色,就像警察素描艺术家一样。

然而,图像合成研究领域正在努力解决这个问题:

新研究将面部的各个部分分成不同的区域,每个区域都有自己的生成器,与其他生成器协同工作以生成图像。在中间行,我们看到编排的特征图逐步构建面部的其他区域。来源:https://arxiv.org/pdf/2112.02236.pdf

新研究将面部的各个部分分成不同的区域,每个区域都有自己的生成器,与其他生成器协同工作以生成图像。在中间行,我们看到编排的特征图逐步构建面部的其他区域。 来源:https://arxiv.org/pdf/2112.02236.pdf

在一篇新论文中,来自中国科技巨头字节跳动美国分公司的研究人员使用语义分割将面部的组成部分分成离散的部分,每个部分都分配了自己的生成器,因此可以实现更高程度的解耦。或者,至少是感知解耦。

这篇论文的标题是SemanticStyleGAN:学习可控图像合成和编辑的组合生成先验,并附有一个媒体丰富的项目页面,展示了当面部和头部元素以这种方式隔离时可以实现的各种细粒度转换的多个示例。

面部纹理,发型和颜色,眼形和颜色,以及其他方面的GAN生成特征现在可以解耦,尽管分离的质量和仪器的程度可能会因情况而异。来源:https://semanticstylegan.github.io/

面部纹理,发型和颜色,眼形和颜色,以及其他方面的GAN生成特征现在可以解耦,尽管分离的质量和仪器的程度可能会因情况而异。 来源:https://semanticstylegan.github.io/

不可控的潜在空间

训练用于生成面部的生成对抗网络(例如,StyleGan2生成器,它驱动着流行的网站thispersondoesnotexist.com)会在分析了数千张真实面部后,形成复杂的“特征”(不在面部意义上)之间的关系,以便学习如何生成真实的人脸。

这些秘密过程是“潜在代码”,集体地成为潜在空间。它们难以分析,因此难以实现。

上周,一个新的图像合成项目出现,试图在训练过程中“绘制”这个几乎神秘的空间,然后使用这些地图来交互式地导航它,各种其他解决方案也被提出,以便更深入地控制GAN合成内容。

已经取得了一些进展,出现了多种GAN架构,试图以某种方式“进入”潜在空间并从那里控制面部生成。这些努力包括InterFaceGANStyleFlowGANSpaceStyleRig,以及其他在不断生产的新论文中提供的内容。

它们都有一个共同点,即解耦的程度有限;用于各种方面(例如“头发”或“表情”)的巧妙GUI滑块往往会将背景和/或其他元素拖入转换过程中,并且没有一个(包括这里讨论的论文)解决了时间神经头发的问题。

分而治之的潜在空间

无论如何,字节跳动的研究采取了不同的方法:不是试图揭开单个GAN在整个生成面部图像上运行的奥秘,SemanticStyleGAN制定了一个基于布局的方法,其中面部是由单独的生成器过程“组成”的。

为了实现这种面部特征的区分,SemanticStyleGAN使用Fourier特征来生成语义分割图(面部拓扑的粗略彩色区别,如下图右下角所示),以隔离将接受个别专用关注的面部区域。

新方法的架构,将面部插入一个中间层的语义分割,有效地将框架转换为图像不同方面的多个生成器的编排器。

新方法的架构,将面部插入一个中间层的语义分割,有效地将框架转换为图像不同方面的多个生成器的编排器。

分割图是针对GAN判别器用于评估模型改进的假图像以及用于训练的(非假)源图像生成的。

在该过程开始时,一个多层感知器(MLP)最初将随机选择的潜在代码映射,这些代码将用于控制将生成面部图像部分的多个生成器的权重。

每个生成器从上游输入的Fourier特征创建特征图和模拟深度图,该输出是分割掩码的基础。

下游渲染网络仅由前面的特征图条件化,现在知道如何从早期特征图生成更高分辨率的分割掩码,从而促进图像的最终生成。

最后,一个分叉的判别器监督RGB图像(对于我们来说,它是最终结果)和允许它们分离的分割掩码的连接分布。

使用SemanticStyleGAN,没有不受欢迎的视觉干扰,当“调整”面部特征时,因为每个面部特征都在编排框架内单独训练。

替换背景

由于该项目的目的是更好地控制生成的环境,因此渲染/组合过程包括在真实图像上训练的背景生成器。

一个令人信服的原因是,SemanticStyleGAN中的背景不会被拖入面部操作中,因为它们位于更远的层上,并且是完整的,尽管部分被叠加的面部遮挡。

一个令人信服的原因是,SemanticStyleGAN中的背景不会被拖入面部操作中,因为它们位于更远的层上,并且是完整的,尽管部分被叠加的面部遮挡。

由于分割图将导致没有背景的面部,因此这些“插入”背景不仅提供上下文,还配置为适合叠加面部的照明。

训练和数据

“真实”模型是在初始28,000张图像的CelebAMask-HQ上训练的,图像被调整为256×256像素以适应训练空间(即可用的VRAM,它决定了每次迭代的最大批次大小)。

训练了多个模型,并在开发过程中和各种消融测试中尝试了多种工具、数据集和架构。该项目的最大生产模型具有512×512分辨率,训练了2.5天,使用八个NVIDIA Tesla V100 GPU。在训练后,在没有并行化的情况下,单个GPU上的单个图像生成需要0.137秒。

在项目页面上展示的卡通/动漫风格实验(见上述链接)源自各种流行的面部数据集,包括ToonifyMetFacesBitmoji

暂时解决方案?

作者认为,没有理由为什么SemanticStyleGAN不能应用于其他领域,例如风景,汽车,教堂和所有其他“默认”测试领域,这些领域通常在新架构早期被提交。

然而,该论文承认,随着域的类别数量增加(例如“汽车”“街灯”“行人”“建筑物”“汽车”等),这种零碎的方法可能会变得不可行,除非进行进一步的优化工作。例如,CityScapes城市数据集有30个类别,分为8个类别

很难说,直接征服潜在空间的当前兴趣是否像炼金术一样注定失败;或者潜在代码最终是否可以被解读和控制——这可能会使这种更“外部复杂”的方法变得多余。

机器学习作家,人类图像合成领域专家。曾任Metaphysic.ai研究内容负责人,直至其解散并并入DNEG的Brahma.ai。
Portfolio site:martinanderson.ai
Contact:[email protected]