GAN学习历程之Semantic Image Synthesis with Spatially-Adaptive Normalizatio论文笔记

Semantic Image Synthesis with Spatially-Adaptive Normalization:

论文地址:https://arxiv.org/pdf/1903.07291.pdf
代码地址:https://github.com/NVlabs/SPADE (代码作者还未发布)
提出:
之前的方法都是直接把语义分割图作为深层网络的输入,因为规范层会“冲掉”语义信息,效果越来越差。
1. Introduction
为解决规范化层“冲掉”语义信息的问题,我们提出了spatially-adaptive normalization,这是一种有条件的归一化层,其可以使用输入的语义分割图通过空间自适应性和学习到的转换,调整激活函数并且也可以有效地在网络中传播语义信息。
2.SPADE
本文主要是把分割布局图转换为逼真的图片,论文作者主要是学习一种映射函数将输入的分割图转换成逼真的图片。
假设语义分割掩码m ∈ L^(H×W),L是一组语义标签的整数,H和W分别是图片的高和宽,m中的每个条目代表每个像素的语义标签。给定一个包含 N 个样本的 batch,h^i 表示深度卷积网络第 i 层的激活,C^i 表示该卷积层中的通道数,H^i 和 W^i 分别表示该层激活图的高和宽。
我们提出新的条件归一化方法称为空间自适应归一化(SPADE),和批归一化类似,SPADE的激活函数被逐通道归一化,并且根据学习到的scale和bias进行调整。当(n ∈ N, c ∈ C^i , y ∈ H^i , x ∈ W^i)时,激活值如下所示:
在这里插入图片描述
其中在这里插入图片描述代表归一化之前的激活,(SPADE的使用位置)在这里插入图片描述分别表示在通道c激活值的平均值和标准差。
GAN学习历程之Semantic Image Synthesis with Spatially-Adaptive Normalizatio论文笔记_第1张图片
在这里插入图片描述
分别表示归一化层学习到的参数。

GAN学习历程之Semantic Image Synthesis with Spatially-Adaptive Normalizatio论文笔记_第2张图片
在许多常见的归一化技术中例如批归一化,他们在实学习际归一化步骤之后学习仿射层。在SPADE中,仿射层是从语义分割图中学习得来。这个和有条件的归一化类似,除了现在所学得的仿射参数需要空间自适应,意味着我们将每个语义标签使用不同的scaling和bias。使用这一简单的方法,语义幸好可以语义信号可以作用于所有的层输出,不受丢失信息的归一化过程的影响。此外,由于语义信息是由SPADE层提供,因此随机latent vector可能作为网络的输入,来控制生成图像的风格。在SPADE中,掩码首先映射到一个嵌入空间,之后通过卷积运算生成调节参数γ 和 β。与已有的条件归一化方法不同,γ 和 β 不是向量,而是具有空间维度的张量。生成的 γ 和 β 经过乘法和加法后得到元素级的归一化激活值。
下图为论文附录中提供的SPADE结构,
GAN学习历程之Semantic Image Synthesis with Spatially-Adaptive Normalizatio论文笔记_第3张图片
SPADE使用最近邻下采样来调整语义分割图的大小,让它能够匹配对应特征图的分辨率。γ 和 β可以由有k个卷积滤波器的卷积层组成。
3.SPADE生成器
对于SPADE,不需要将分割图传递给生成器的第一层,因为学习到的调整参数已经编码了足够多的标签信息。因此我们抛弃了生成器的编码部分。新的生成器可以将任意的向量做为输入,使得多模型合成更加简单和自然。GAN学习历程之Semantic Image Synthesis with Spatially-Adaptive Normalizatio论文笔记_第4张图片
在SPADE生成器中,每个归一化层使用分割图来调整层激活。我们在上采样层采用一些残差块。所有归一化层的调整参数都是由SPADE学习而来,因为每个残差块操作不同的尺度,SPADE对语义掩码进行下采样以匹配空间分辨率。相比较于pix2pixHD的损失函数,我们用hinge loss函数替代了。
4.SPADE为什么效果这么好
一个简单的回答是SPADE会更好的保留语义信息。
5.实验
作者在生成器和判别器中使用谱归一化,生成器和判别器的学习率分别设置为0.0001和0.0004。我们使用ADAM设置β_1 = 0, β_2 = 0.999。所有实验都在具有 8 块 V100 GPU 的英伟达 DGX1 上进行。研究者使用同步均值和方差计算,即这些数据都是从所有 GPU 上收集的。
本研究中使用的数据集包括 COCO-Stuff 、ADE20K、ADE20K-outdoor、Cityscapes 和 Flickr Landscapes。我们采用平均IoU和像素准确率来衡量分割的准确性,使用FID来衡量合成结果的分布和真实图片的分布。

6.具体代码分析

试验结果:
coco-stuff数据集
cityscapes数据集
参考资料:

  • https://mp.weixin.qq.com/s?__biz=MzA3MzI4MjgzMw==&mid=2650758921&idx=2&sn=3364a02501acc7862774a98db5762de2&chksm=871a9b77b06d126128d23e45a5c778a1e3a5f1417e4d028fc87e294711ab9bf66065e2c12eef&scene=27#wechat_redirect
  • https://nvlabs.github.io/SPADE/
  • https://github.com/NVIDIA/pix2pixHD?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

你可能感兴趣的:(GAN)