这是一篇来自CVPR2022关于GAN的新作:SemanticStyleGAN - Project Page
文章效果惊艳,引入了语义图进行解耦,很有新意。
目录
摘要
stylegan为下游生成任务提供了promising prior models,但是stylegan的the latent codes是全局的(如下图,stylegan中是latent z是经过Normalize 和FC 层得到的)。这并不能很好对生成图像进行 a fine-grained control。本文提出semanticstylegan是model local semantic parts separately,重点放在生成器的改进上(往下看,其实判别器也做了进步)。实现了符合latent z对应的structure and texture(文章实验部分对这里做了可视化,看着图感觉解的挺好)。后面就是吹自己做的好了
1、介绍
首先指出在gan的生成是从latent space中random code开始的,说出传统gan不可控。说stylegan的generated image is conditioned on a set of coarse-to-fine latent codes。但是这些latent code任然很混淆(确实)。
作者说了以下两种解决方式
1、by learning a linear boundary or a neural network in the latent space of StyleGAN
2、to train a new GAN model from scratch by introducing additional supervision or inductive biases.
紧接着指出,本文的解耦是从语义mask入手的。
2、相关工作
latent space
1、manipulate the latent space of a pre-trained GAN network:trains a attribute model
2、learn a GAN with more disentangled latent space using additional supervision
Compositional Image Synthesis
这段自己看原文吧
Layout-based Generators
1、a semantic segmentation mask
2、a sketch image
nips2021的editgan也是语义生成,可以对比一下。作者表明:we build a semantic-aware generator that directly associates different local areas with latent codes, these codes can then be used to edit both local structure and texture.
这篇文章确实不一样,别人解耦的属性都是直接喂入网络,这篇文章解耦后再输出feature map和pseudo-depth。
3、方法(看原文吧,xdm)
网络架构。我们来看看怎么得到feature map 和pseudo-depth两个参数
这里的自问自答挺有意思的:
问答2挺有意思的,使用了双分支判别器来监督image和mask
1、局部生成器
这里的render输出也是两个,image和对应的mask
局部生成器也就是上面的ppt内容,这里傅里叶p代表位置信息是引用自Fourier Features Let Networks Learn High Frequency Functions in Low Dimensional Domains
2、Fusion
1、首先通过pseudo-depth生成mask
2、作为网络R的输入。公式虽然是这样,但m微调了。这里为什么不用m直接作为f的融合,原文也说到了
3、Render
渲染器和stylegan的生成器结构类似,做了微调。原文有
还说明了Render除了输出RGB图像和输出mask
4、判别器
4、效果
这里说傅里叶操作特征融合:(Fourier feature是position encoding,训练的时候时候是固定的(可以看作是stylegan2中的constant input),但测试的时候可以改变对象的位置大小,stylegan3也用到了这种input)