973 字
5 分钟
GAN隐空间:Z、W、W+、F与N
StyleGAN 的 Mapping Network 和层级化 Synthesis Network 创造了一个丰富的隐空间谱系。不同的空间适合不同的任务,理解它们的区别是掌握基于 GAN 的图像编辑和反演的前提。
Z 空间
是生成器的原始输入空间,服从各向同性的标准高斯分布 。维度通常为 512。
- 特点:分布固定,采样简单,但空间密度均匀——每个方向方差相同,语义方向不明确。
- 用途:训练时的采样来源。
- 局限:直接在这个空间上做反演和编辑非常困难,因为任何方向的变化都会耦合影响到所有生成属性。
W 空间
Mapping Network 的输出空间。由 MLP 将 映射到 ,分布由数据隐式定义,不再服从高斯分布。
- 特点:各向异性,不同方向对应不同的语义属性。解耦性比 好得多。
- 用途:Truncation Trick 在 上操作。GANSpace 和 SeFa 等方向探索方法在 上寻找语义编辑方向。
- 局限:只有一个 控制所有生成层,无法对不同层级的属性做独立调整。
W+ 空间
由 Image2StyleGAN(Abdul et al., 2019)提出。,每个 ,为 Synthesis Network 的每一层(共 18 层)分配一个独立的风格向量。
- 特点:自由度从 512 扩展到 ,表达能力远超 。每一层的风格向量独立控制对应分辨率级别的特征,实现了属性间的解耦编辑。
- 用途:GAN 反演的事实标准空间。pSp、GPEN 等几乎所有现代反演方法都输出到 。在 上做编辑可以精确定位到某一层级而保持其他层级不变。
- 问题:自由度增大带来了过度拟合的风险——反演可能把噪声也编入 导致重建完美但失去编辑能力(违反了”隐码在流形上”的先验假设)。
F 空间
生成器中间层的特征图空间。Synthesis Network 在每一层输出一组特征图 。
- 特点:保留了空间结构信息。位置 在 中对应图像空间的一个局部区域。
- 用途:局部编辑(只修改某个区域的 )、图像填充(补全被遮盖区域的 )。Image2StyleGAN++ 的局部风格迁移就是在 空间上操作的。
- 与 的关系: 是全局风格码(每层一个向量), 是空间特征图(每层一个张量)。两者可以组合使用来兼顾全局风格和局部编辑。
N 空间
随机噪声输入空间,由 Image2StyleGAN++(Abdul et al., 2020)引入。StyleGAN 的合成网络每层还会接收一个随机噪声图 (与特征图同尺寸的单通道噪声),用于生成随机细节(发丝、毛孔等)。
- 特点:控制生成结果中的随机变化,如皮肤纹理、头发丝位置。修改 空间只改变细节而不改变整体结构和颜色。
- 用途:跨图像风格迁移时保留原始图像的随机细节。GPEN 在盲人脸复原中也利用了 空间来恢复纹理级细节。
- 特点:不影响生成图像的身份和语义内容。
各空间对比总表
| 空间 | 维度 | 定义位置 | 解耦程度 | 表达能力 | 编辑精度 | 典型用途 |
|---|---|---|---|---|---|---|
| Z | 512 | Mapping 输入 | 低 | 低 | 粗 | 随机采样 |
| W | 512 | Mapping 输出 | 中 | 中 | 中 | 方向探索、截断 |
| W+ | 18×512 | 各层 AdaIN 输入 | 高 | 高 | 精细 | 反演、层级编辑 |
| F | 可变 | 生成器中间层 | — | 高 | 空间精确 | 局部编辑、填充 |
| N | 可变 | 噪声注入层 | — | 低 | 像素级 | 纹理细节迁移 |
:::tip TODO
在此处插入各隐空间在 StyleGAN 架构中的位置示意图
:::
GAN隐空间:Z、W、W+、F与N
https://biscuit0613.github.io/posts/cv/cv-gan-latentspace/