原论文地址:https://arxiv.org/pdf/1603.05631.pdf(需要翻墙)

一. 基本概念

$S^2-GAN $ 在摘要部分中提到:

However,these approaches ignore the most basic principle of image formation: images are product of: (a) Structure: the underlying 3D model; (b) Style: the texture mapped onto structure.

然而,这些方法忽略图像形成的最基本的原理。图像是按照以下方式产生的:(a)结构:3D模型;(b)样式:纹理到结构的映射。

作者对原始GAN的修改在于创建出两个GAN模型

  1. 结构GAN:产生一个面法线图
  2. 样式GAN:取面法线图作为输入,并产生2D图像

这两个GAN首先被分别训练,然后通过共同学习合并在一起。

原文中提到,这样做的好处为:

  1. 首先,以样式和结构为条件简化了整个生成过程,能生成更逼真的高分辨率图像,使学习过程更加鲁棒和稳定。
  2. 其次,$S^2-GAN$ 相比其他GAN更可解释。人们甚至可以找到错误的原因,并且通过与上下文相比,理解在什么地方面法线图的生成是失败的。
  3. 第三,实验结果表明, $S^2-GAN $ 可以学会无人监督的RGBD表示。这可能是许多机器人和图形应用的关键。
  4. 最后,样式-GAN也可以看作是一个具有学习任何给定3D输入能力的渲染引擎,它能够呈现相应的图像。基于它也能够建立应用程序,可以修改输入图像的基本三维结构并呈现一个全新的形象。

二. 图像方面的原始GAN

在形式上采用批量梯度下降的方式优化这两个网络,批的大小为 $M$ 。给定样本 $X = (X_1 , . . . , X_M )$ 和一系列从均匀分布中采样的$ Z = (z_1 , . . . , z_M)$ 。

判别器D 的损失函数如下所示:

生成器G 的损失函数如下所示:

三. 结构GAN

输入到网络$ G $ 将 $\hat{z}$ 从均匀分布取样,并输出是表面法线图。使用100维向量来表示 $ \hat{z}$,并输出尺寸 72×72×3 的图像。网络架构如下:

四. 样式GAN

给定RGB图像和表面法线图,作者同时训练另一个GAN,以基于面法线来生成图像,称这种网络为样式GAN。

当训练判别器时,只考虑真正的RGB图像及其对应的表面法线作为正例。在给定更多的表面法线的情况下,样式GAN可以产生更高分辨率 (128×128×3) 的图像。

原本 原始公式1 中判别器的损失被重写为:

原本 原始公式2 中生成器的损失被重写为:

作者采用相同的迭代训练的方案,使用生成器 $G$ 去生成图像。

五. 像素级约束下的多任务学习

六. 使用结构-样式对抗网络的联合学习

将结构GAN和样式GAN分别训练后,将所有网络进行合并,共同训练他们。

值得注意的是,在被发送到样式GAN之前所,生成的法线图首先被传递到具有双线性插值的上采样层。因为作者不使用ground truth的表面法线贴图来生成图像,作者删除样式GAN的FCN约束。样式GAN的判别器使用生成的法线和图像作为负样本,使用Ground Truth法线和真实图像作为正样本。

对于结构-GAN,生成器网络不仅从结构GAN的判别器接收梯度,而且还从样式-GAN的生成器接受梯度。通过这种方式,网络被训练以产生逼真的、能够帮助生成更好的RGB图像的表面法线

其中$ Z = ( \hat{z} _ 1 , . . . , \hat{z} _ M ) $, $ Z = ( \widetilde{z} _ 1 , . . . , \widetilde{z} _ M ) $表示两套从均匀分布中抽取的样本,分别用于结构GAN和风格GAN。 公式中的第一项表示结构-GAN的判别器的对抗损失,公式的第二项让样式GAN的损失也被传递下去。此处设定系数 λ = 0.1,λ=0.1,λ=0.1 并在实验中用比样式GAN更小的学习率去学习结构GAN,这样就可以防止通过样式GAN生成RGB图像的任务过渡拟合于所产生的法线。

最后修改:2021 年 04 月 27 日 07 : 09 PM