DH3G游戏资讯网

各路 StyleGAN 大汇总,包括全景图生成、图像到图像翻译等

发表于:2024-04-28 作者:创始人
编辑最后更新 2024年04月28日,StyleGAN 在各种图像处理和编辑任务上,表现很惊艳。然而,"干一种活"就得换个体系重新"培训"一次,太麻烦。终于,有人细细研究了一下,发现:其实只通过预训练和潜空间上的一点小操作,就可以让 St

StyleGAN 在各种图像处理和编辑任务上,表现很惊艳。

然而,"干一种活"就得换个体系重新"培训"一次,太麻烦。

终于,有人细细研究了一下,发现:

其实只通过预训练和潜空间上的一点小操作,就可以让 StyleGAN 直接上手各种"活儿",包括全景图生成、从单张图像生成、特征插值、图像到图像翻译等等。

更厉害的是,它在这些"活儿"上的表现还完全不输每一位单项 SOTA 选手。

作者顺势做了个全面整理写成了一篇论文,相关讨论在 reddit 上直接收获了 700 + 的热度:

网友纷纷感叹:这总结真的是太酷了!

All You Need:预训练 + 一点空间操作

方法都非常简单,我们一个一个来。

前提:fi∈RB×C×H×W 表示 StyleGAN 第 i 层的中间特征(intermediate features)。

1、空间操作实现直观和逼真的图像

由于 StyleGAN 是全卷积的,我们可以调整 fi 的空间维度,从而在输出图像中引起相应的空间变化。

用简单的空间操作(如 padding 和 resize),可以生成更直观和真实的图像。

比如下图通过复制灌木和树丛来扩展背景,与导致纹理模糊等瑕疵的原始 resize 相比,在特征空间中可以保持更真实的纹理。

2、特征插值

对 StyleGAN 中间层进行拼贴可以实现图像信息混合,但要拼接的两张图差异太大时效果往往不好。

但采用特征插值就没问题。

具体操作方法:在每个 StyleGAN 层,分别使用不同的潜噪声生成 fAi 和 fBi。然后用下面这个公式将它俩进行平滑地混合,然后再传递到下一个卷积层进行同样的操作。

其中 α∈ [0, 1] B×C×H×W 是一个 mask,如果用于水平混合,则 mask 将从左到右变大。

和对应模型的定性和定量比较:

该特征插值法能够无缝地混合两幅图像,而 Suzuki 等人的结果存在明显的伪影。

用户研究中,与 Suzuki 等人相比,87.6% 的人也更喜欢该方法。

用户研究包含 40 人,每人需比较不同方法下的 25 对图像。

3、从单个图像生成

除了在不同图像之间进行特征插值,我们还可以在单个图像中应用它。

具体操作方法:在一些特征层中,选择相关的 patches,并将其与其他区域混合,在空间上进行复制。使用移位运算符 Shift(・):

这和 SinGAN 的功能相同,不过 SinGAN 涉及采样,而该方法只需要手动选择用于特征插值的 patches.

和 SinGAN 的定性和定量比较:

该方法生成的图像更加多样化和真实;SinGAN 则未能以"有意义"的方式改变教堂结构,并产生不够真实的云彩和风景。

用户研究中,83.3% 的人更喜欢该方法生成的新图像。

4、改进 GAN 反演

GAN 反演的目的是在 W + 空间中定位一个样式码(style code),通过该样式码合成与给定目标图像相似的图像。

Wulff 等人的模型认为,在简单的非线性变换下,W + 空间可以用高斯分布建模。然而,在属性转移设置中,需要反转源图像和参考图像,效果并不令人满意。

最近的研究表明,与 W + 相比,利用 σ 进行面部操作的性能更好。

但作者发现,没有任何变换的 σ 空间也可以建模为高斯分布。

然后在这个空间而不是在 GAN 反转期间,施加相同的高斯先验。

效果比较:

该方法在图像重建和可编辑性方面获得了显著改进。

5、图像到图像翻译

得益于上部分 σ 空间的效果,作者建议在图像到图像翻译时 freeze 产生 σ 的仿射变换层(affine transformation layer),这一简单的变化能够更好地保留图像翻译的语义(注意下图 d 中嘴的形状)。

此外,作者发现:

(1)可以在所有空间维度上使用常数 α 来执行连续翻译;

(2)通过选择要执行特征插值的区域来执行局部图像翻译;

(3)以及使用改进的 GAN 反演在真实人脸上执行人脸编辑和翻译;

这样获得的效果也更佳。

6、全景生成

作者通过"编织"两幅图像的混合(span)生成全景图,方法如图所示:

重复这个过程可以生成任意长度的全景图像。

而且该方法不仅限于一次混合两个图像、也不限于只在水平方向生成。

一些示例:

7、属性转移

为了使特征插值能够更好地用于任意人物姿势的图像的属性转移,作者选择在源图像和参考图像之间执行姿势对齐,具体就是对齐 W + 空间样式代码的前 2048 个维度。

然后就可以应用特征插值将所选特征进行源图到目标图的转移了。

与现有方法比较:

Collins 等人的方法没有准确地转移细节属性,Suzuki 等人在姿势不匹配时产生的图像不够真实。

而作者的方法既准确又真实。

用户根据真实感和准确性进行选择的结果也进一步验证了该方法的优越性。

ps. 此外还可以在任意区域执行转移,比如无缝融合两边眼睛明显不同的两半脸:

以上就是无需特定架构或训练范式、在 StyleGAN 模型潜空间中执行一些操作和微调,就能与其他图像处理任务达到同等或更佳性能的具体方法。

你觉得如何?还有什么需要补充的吗?欢迎在评论区留言。

论文地址:

https : //arxiv.org/abs/2111.01619

项目地址:

https://github.com/mchong6/SOAT

2022-05-06 14:15:21
0