GAN Inversion 是将一张真实(或退化)图像映射回 GAN 隐空间的过程。数学上,给定图像 ,寻找最优隐码 使得 与 在某种度量下最接近:
通常是像素级损失(L2)+ 感知损失(LPIPS)。求解路径分为四类。这一篇聚焦于三个在图像复原任务上的代表性工作。
PULSE(Z 空间优化)
PULSE(CVPR 2020)针对人脸超分辨率任务:给定低分辨率(LR)输入 ,在高分辨率 GAN 的 空间中搜索与 下采样后一致的隐码。
目标
在 空间梯度下降,每步更新 ,计算 后下采样与 LR 输入比较。PULSE 不在像素空间直接做超分,而是要求 GAN 生成的高分辨率图必须与低分辨率输入”一致”。
关键设计
- Z 空间而非 W 空间:因为需要足够的随机性来覆盖不同的高分辨率纹理细节。在 空间做优化容易收敛到过平滑的结果。
- 距离度量:L2 损失外还加入了 face ID 损失(保持人脸身份),避免生成的人脸与输入不是同一个人。
- 局限:逐张图梯度下降,优化一次需要数分钟。只工作在 Z 空间,编辑能力有限。
pSp(W+ 学习式编码器)
pSp(pixel2style2pixel, CVPR 2021)用前馈编码器替代逐张优化,在 空间一步推理出隐码。
架构
使用 ResNet-50 作为 backbone,从输入图像提取多尺度特征。特征经过多个映射头(map2style)分别预测 中对应层级的 。
pSp 的输出直接是一个 StyleGAN 生成器可用的 隐码,生成器冻结不更新。整个网络用大规模人脸数据(如 FFHQ)进行端到端训练。
应用方式
pSp 提出”先反演后编辑”范式:先用编码器将图像反演到 ,然后在 空间做预定义的语义编辑(如改变姿态、发型、表情),再通过生成器重建出编辑后的图像。这个范式将反演和编辑明确分离,编码器只需确保反演足够好,编辑在 空间独立进行。
局限
编码器一次性推理的速度远快于优化(毫秒级 vs 分钟级),但反演精度受限于编码器的泛化能力——训练集外的图像(极端姿态、遮挡、非人脸)可能映射到不准确的 。
GPEN(W+ + N 空间 + 生成器微调)
GPEN(Global and Progressive Enhancement Network, CVPR 2021)针对盲人脸复原问题:输入严重退化的人脸图像,输出高清人脸。
两项关键设计
W+ 空间 + N 空间联合使用:GPEN 使用编码器映射到 空间重建整体人脸结构;同时保留(或隐式恢复)生成器中每层的噪声图 来重建皮肤纹理。这种组合使 GPEN 在保持身份的同时恢复精细的皮肤细节。
联合微调生成器:pSp 冻结生成器;GPEN 在训练阶段同时对编码器和生成器做微调(fine-tune),使生成器适应退化图像的分布。这使得 GPEN 在面对极端退化(大面积模糊、大程度降采样)时仍然能生成合理的人脸。
方法演化关系
| 方法 | 隐空间 | 推理方式 | 生成器 | 任务 | 速度 |
|---|---|---|---|---|---|
| PULSE | Z | 逐张优化 | 冻结 | 人脸超分 | 慢(分钟级) |
| pSp | W+ | 编码器一步 | 冻结 | 反演 + 编辑 | 快(毫秒级) |
| GPEN | W+ + N | 编码器一步 | 微调 | 人脸复原 | 快(毫秒级) |