A Style-Based Generator Architecture for Generative Adversarial Networks

Accept:CVPR2019
code:github上一搜一大把(官方非官方,tf或者pytorch)

Problem:

生成更加真实多样且高清的图像

Framework

48QdpT

  • 上图(a)为ProgressiveGAN(Progressive growing of GANs for improved quality, stability, and variation),作者就是在这篇的基础上进行改进;
  • 上图(b)为StyleGAN的框架。
  1. 隐空间变换
    首先通过8层的FC将随机采样的z改为了w,这样做的好处就是一般z都是从高斯分布进行采样,但是实际上高斯分布和真实数据的分布是不同的,因此将z变换到w空间能更好的对生成网络进行一个控制(个人觉得就是一个hard变为soft的过程,原先的先验采样z太hard了,如果转换到w空间,就能更好地拟合出真实样本的部分)
  2. 生成网络
    生成网络的输入不再是z,而是三部分,分别为上图(b)的Const 4×4×512,AdaIN变换的参数A(由w得到)以及随机噪声B。生成网络一共有9个块[4×4, 8×8, .., 1024×1024],每个块中有两层卷积(除了第一层),最后一层使用1×1卷积来转换通道数。

Style Mixing

481AII
采样两个z,z1和z2,再经过Mapping网络得到w1和w2

  1. (4×4-8×8)两个块使用SourceB的w,其余块使用SouceA的w

修改高级语义,比如姿势,发型,脸型和眼镜等,而像一些眼睛,头发光线等则保持不变

  1. (16×16-32×32)两个块使用SourceB的w,其余块使用SouceA的w

继承了B的较小比例的面部特征,比如发型,睁开/闭上的眼睛,而A的姿势,脸型和眼镜则保留下来

  1. (64×64-1024×1024)两个块使用SourceB的w,其余块使用SouceA的w

主要是一些颜色和细微结构的变化,整体的语义保持不变