显式控制GAN生成的合成图像
近年来,生成对抗网络(GAN)展现了从零开始合成逼真视觉图像的卓越能力。但控制GAN输出的特定特征(如光照条件、视角、人物表情等)一直存在困难。大多数方法依赖于对GAN参数空间的试错探索。近期一种控制合成人脸的方法涉及使用图形软件生成3D原型,这个过程繁琐且控制有限,仅适用于单一图像类别。
在今年的国际计算机视觉大会(ICCV)上,我们提出了一种新的GAN控制方法,允许通过数值指定图像参数(如视角或人物年龄),并适用于多种图像类别。该方法在多项控制精度指标上超越了先前方法,在用户研究中也获得认可:用户认为通过本方法生成的图像比两种主流前辈方法更真实,优势比例达2:1。
潜在空间
GAN的训练设置包含两个机器学习模型:生成器和判别器。生成器学习生成能够欺骗判别器的图像,而判别器学习区分合成图像与真实图像。训练过程中,模型学习一组图像参数的概率分布(在StyleGAN系列模型中为512个参数)。该分布描述了真实图像中参数值的出现范围。合成新图像即是从该分布中随机选取点并传递给生成器。
图像参数定义了一个潜在空间(在StyleGAN中为512维)。图像属性的变化(如相机角度高低、人脸年轻与年老、左右光照等)可能沿着空间的特定轴分布。但由于生成器是黑盒神经网络,空间结构未知。
先前关于可控GAN的研究涉及探索空间以学习其结构。但该结构可能不规则,导致学习一个属性对其他属性了解甚少,且属性可能纠缠,改变一个同时改变其他。近期研究采用更原则性的方法,其中生成器的输入指定人脸图像的属性,生成器根据其输出与具有相同属性的3D图形模型的匹配程度进行评估。
然而,该方法存在一些局限性:仅适用于人脸;可能产生看起来合成的输出图像,因为生成器学习匹配合成训练目标的属性;且难以用图形模型捕捉更整体的属性(如年龄)。
可控GAN
在本文中,我们提出了一种控制GAN的方法,仅需数值输入,可修改广泛的图像属性,并适用于多种图像类别。
首先,我们使用对比学习来构建潜在空间,使我们感兴趣的属性沿不同维度分布(即不纠缠)。然后我们学习一组可以单独修改这些属性的控制器。
开始时,我们选择一组希望控制的图像属性,并构建一个表示空间,其中空间的每个维度对应一个属性(上图中的Z)。然后我们选择该空间中的点对,这些点在一个维度上具有相同值,但在其他维度上具有不同值。
训练期间,我们将这些点对通过一组全连接神经网络层,这些层学习将构建空间中的点映射到学习到的潜在空间中的点(图中的W)。学习空间中的点将作为我们生成器的控制器。
然后,除了标准的对抗损失(如果生成器未能欺骗判别器则受到惩罚),我们还计算一组额外的损失,每个属性一个。这些损失基于现成的模型,计算图像属性(年龄、表情、光照方向等)。损失迫使共享属性的图像在潜在空间中更接近,同时迫使不共享属性的图像分开。
一旦训练了生成器,我们随机选择潜在空间中的点,生成相应图像,并测量其属性。然后我们训练一组新的控制器,以测量的属性作为输入,输出潜在空间中的对应点。当这些控制器训练完成后,我们就有了一种将特定属性测量映射到潜在空间点的方法。
评估
为评估我们的方法,我们将其与两种先前使用3D图形模型训练人脸生成器的方法进行了比较。我们发现,使用本方法生成的人脸比早期方法生成的人脸更匹配输入参数。
我们还要求人类受试者对本方法及两种基线方法生成的图像的真实性进行评分。在67%的情况下,受试者认为我们的图像比任一种基线更自然。两种基线中较好的一种得分为22%。
最后,我们询问人类受试者是否同意我们生成的人脸表现出我们控制的属性。对于其中五个属性,同意率从87%到98%不等。在第六个属性——抬高的相机角度——上,同意率仅为约66%,但在低角度时,效果可能过于细微难以 discern。
在这些评估中,我们必然仅限于生成人脸,因为这是唯一有强基线可用的领域。但我们也尝试了狗脸图像和合成绘画,先前的方法均无法处理这些类别。结果可见下图:
(图像位置)
研究领域
- 计算机视觉
- 机器学习
标签
- 生成对抗网络(GAN)
- 合成数据生成
- ICCV
相关出版物
- GAN-control: Explicitly controllable GANs
相关代码/数据集
- GAN-control: Explicitly controllable GANs