本博客是作者阅读论文《U-GAT-IT: Unsupervised ganerative attentional networks with adaptive layer-instance normalization for image-to-image translation》的笔记。该论文的相关情况如下:
相关项 | 具体信息 |
---|---|
发表刊物 | ICLR 2020(CCF A类会议) |
论文作者 | Junho Kim , Minjae Kim, Hyeonwoo Kang, Kwanghee Lee |
作者单位 | 韩国NAVER公司,NCSOFT平台和波音韩国工程技术中心 |
论文链接 | https://openreview.net/pdf?id=BJlZ5ySKPH |
论文源码 | https://github.com/taki0112/UGATIT https://github.com/znxlwm/UGATIT-pytorch |
摘要
本文提出了一种新的无监督的图像到图像的转换方法,该方法以端到端的方式结合了一个新的注意力模块CAM和一个新的可学习的归一化函数AdaLIN。 (1)注意力模块依据辅助分类器获得的注意力图,引导本文模型关注和区分source domain和target domain中更重要的区域。与以前基于注意力的方法不能处理图像之间的几何变化不同,本文模型可以转换需要整体变化的图像和较大形状变化的图像。 (2)归一化函数AdaLIN(Adaptive layer Instance Normalization)有助于本文的注意力模块引导模型在不同数据集上通过学习到的参数灵活控制图像形状和纹理的变化。 实验结果表明,与现有的具有固定网络结构和超参数的先进模型相比,该方法具有优越性。
1、简介
1.1 先前的方法在不同领域之间性能表现存在差异
尽管图像到图像转换领域已经取得了巨大的进步,但是随着不同领域之间在形状和纹理上存在巨大差异,以前的方法也表现出一定的问题。例如,在映射局部纹理的风格转换任务(例如photo2vangogh和photo2portrait)的成功方法,在具有较大形状变化的图像转换任务(例如selfie2anime和cat2dog)中就效果较差。(先前方法存在的问题)
2017年Liu等人的UNIT模型和2018年Huang 等人MUNIT模型对图像进行裁剪和对齐等预处理步骤,从而限制数据分布的复杂性来尽可能避免这些问题;2018年DRIT不能在同一套网络结构和超参数下,既保持图像的形状(例如马-斑马),又改变图像的形状(例如猫狗),需要针对特定的数据集调整网络结构或超参数设置。(现有改进方法存在的问题)
1.2 本文的主要贡献
在此基础上,本文提出了一种新的无监督图像到图像的转换方法,它以端到端方式包含了一个新的注意力模块和一个新的可学习的归一化函数。
本文模型根据辅助分类器获得的注意力图像来区分source domain和target domain,从而引导图像转换任务去关注更重要的区域,忽略次要区域。这些注意力映射被嵌入到生成器和鉴别器中,以关注语义上重要的区域,从而促进形状转换。在生成器中,注意力映射将焦点引导到两个区域之间的特定区分区域,而在鉴别器中,注意力映射通过聚焦目标区域的真假图像的差异来帮助微调。
除了注意力机制外,本文还发现,对于不同形状和纹理变化的数据集,归一化函数的选择对转换任务结果的质量有显著影响。受2018年Nam & Kim等人的批实例归一化(Batch-Instance Normalization, BIN)的启发,本文提出了==自适应层实例归一化==(Adaptive Layer Instance Normalization, AdaLIN),其参数是在训练时从数据集中通过自适应选择==实例归一化==(IN)和==层归一化==(LN)之间的适当比例来学习。AdaLIN功能帮助本文的注意力引导模型灵活控制形状和纹理的变化量。因此,本文的模型在不修改模型结构和超参数的情况下,不仅可以完成需要整体变化的图像转换任务,而且可以完成需要大形状变化的图像转换任务。
实验展示了与现有的先进模型相比,本文所提出的方法在风格转移和对象变形方面的优势。提出工作的主要贡献可概括如下:
1、本文提出了一种新的无监督图像到图像的转换方法,该方法采用了新的注意力模块和新的归一化函数AdaLIN。 2、注意力模块通过辅助分类器获得的注意力图来区分源域和目标域,帮助模型知道在哪里进行集中转换。 3、AdaLIN功能帮助本文的基于注意力引导的模型在不修改模型架构或超参数的情况下,灵活控制形状和纹理的变化量。
2、相关工作
2.1 生成性对抗网络
2014年的Goodfello等人在ANIPS上《 Generative adversarial nets》提成了生成性对抗网络(GAN),GAN在训练中时,生成器的目标是生成真实的图像来欺骗鉴别器,而鉴别器试图将生成的图像与真实图像区分开来。GAN网络经成功应用到了许多领域,例如:
图像生成的相关研究 | |
---|---|
2017年的ICML,Arjovsky等人 | 《Wasserstein generative adversarial networks》 |
2017年的,Berthelot等人 | 《Began: Boundary equilibrium generative adversarial networks》 |
2018年的ICLR,Karras等人 | 《Progressive growing of gans for improved quality, stability,and variation》 |
2017年的ICLR,Zhao等人 | 《Energy-based generative adversarial networks》 |
2017年的ICCV,Mao等人 | 《Least squares generative adversarial networks》 |
图像修复的相关研究 | |
2014年的CVPR,Pathak等人 | 《Context encoders: Feature learning by inpainting》 |
2017年的TOG,Iizuka等人 | 《Globally and locally consistent image completion》 |
图像超分辨率的相关研究 | |
2016年的TPAMI,Dong等人 | 《Image super-resolution using deep convolutional networks》 |
2016年的CVPR,Kim等人; | 《Accurate image super-resolution using very deep convolutional networks》 |
图像着色的相关研究 | |
2016年的ECCV,Zhang等人; | 《Colorful image colorization》 |
2017年的TOG,Zhang等人; | 《Real-time user-guided image colorization with learned deep priors》 |
图像风格转换的相关研究 | |
2016年的CVPR,Gatys等人 | 《Image style transfer using convolutional neural networks》 |
2017年,Huang & Belongie,ICCV | 《Arbitrary style transfer in real-time with adaptive instance normalization》 |
这些研究有的在训练流程上做了优化,例如Karras等人(2018);Wang等人(2018),有的在目标函数上做了优化,例如Arjovsky等人.(2017);Berthelot等人.(2017);Mao等人(2017);Zhao等人.(2017)。
2.2 图像到图像转换
图像到图像转换旨在学习一个可以映射两个不同领域图像的函数模型,这一主题受到了机器学习和计算机视觉领域研究人员的广泛关注,因为它具有广泛的应用。近年来使用paired样本的监督学习的研究工作,也有使用unpaired样本的非监督学习的研究工作:2017年的CVPR,Isola等人 | CGAN | 《Image-to-image translation with conditional adversarial networks》 | 提出了一个基于条件GAN的图像到图像转换统一框架,PatchGAN |
2017年的ICCV,Zhu等 | CycleGAN(本文实验基线) | 《Unpaired image-to-image translation using cycle-consistent adversarial networks》 | 首次提出了循环一致性损失,以实施一对一映射 |
2017年的ANIPS,Liu等人 | UNIT(本文实验基线) | 《Unsupervised image-to-image translation networks》 | 假设一个共享的潜在空间来处理无监督的图像翻译。然而,只有当两个域具有相似的模式时,这种方法才能很好地执行。 |
2018年的CVPR,Wang等人 | 《High-resolution image synthesis and semantic manipulation with conditional gans》 | 提出了pix2pix的高分辨率版本 | |
2018年的ECCV,Huang等人 | MUNIT(本文实验基线) | 《Multimodal unsupervised image-to-image translation》 | 通过将图像分解为域不变的内容代码和捕获特定于域的属性的样式代码,可以扩展到多对多映射。MUNIT综合分离的内容和风格生成最终图像,其中图像质量通过使用自适应实例归一化AdamIN得到改善。 |
2018年的CVPR,Choi等人 | 《Stargan: Unified generative adversarial networks for multi-domain image-to-image translation》 | ||
2018年ECCV,Lee 等人 | DRIT(本文实验基线) | 《Diverse image-to-image translation via disentangled representations》 | 将图像分解为内容和风格,从而实现多对多映射。唯一的区别是,使用权重共享和内容鉴别器(作为辅助分类器)在两个域之间共享内容空间。 |
2018年ANIPS,Mejjati等人 | AGGAN(本文实验基线) | 《Unsupervised attention-guided image-to-image translation》 | 通过使用注意力机制区分前、后和背景,提高了图像转换的性能。然而,AGGA中的注意模块无法帮助变换图像中对象的形状。 |
2018年CVPR,Chen等人 | CartoonGAN(本文实验基线) | 《Cartoongan: Generative adversarial networks for photo cartoonization》 | 在动画风格翻译方面表现良好,但它只改变图像中线条的颜色、色调和厚度。因此,它不适合图像中的形状变化。 |
3、类别激活图
2016年Zhou等人的《Learning deep features for discriminative localization》提出了在一个CNN中使用全局平均池化操作来得到类别激活图(CAM),一个特定类别对应的CAM显示了其CNN决定该类别的鉴别图像区域。在这项工作中,本文的模型通过使用CAM方法来区分两个领域的图像是否发生剧烈变化。但是,与之相比本文不仅使用了全局平均池,还使用了全局最大池来改善结果。
4、归一化层
2016年Gatys等人CVPR的《Image style transfer using convolutional neural networks》)使用Gram矩阵影响图像风格;2017年Huang&Belongie等人的《Arbitrary style transfer in real-time with adaptive instance normalization》证明了图像不同通道层之间的均值和方差直接影响了图像的风格。而本文的实验也发现,归一化函数(normalization)的选择对图像转换任务结果的质量有显著影响。
最早的里程碑式的操作是2015年 《Batch normalization: Accelerating deep network training by reducing internal covariate shift》等人提出的批量标准化(BN),BN的出现几乎替代了Dropout的使用,在很多领域都成为了标配,此后,涌现了更多基于BN的变体,例如LN,IN,GN等。
在图像到图像转换的领域,最常见的是使用实例归一化(IN),其通过直接标准化图像不同通道之间的特征统计数据,达到了消除样式变化的效果,在该领域比BN或LN更常用,所以紧接着,基于IN的各种版本出现了:
2017年Huang&Belongie等人的自适应实例标准化(AdaIN),2017年的Dumoulin等人的条件实例标准化(CIN),2018年Nam&Kim的批量实例标准化(BIN)也先后诞生。
受BIN的启发,本文使用一种自适应层实例规范化(AdaLIN)函数,用于自适应地选择IN和LN之间的适当比率。通过AdaLIN,本文的注意力模块可以在不同数据集上灵活地引导模型学习。
年份会议 | 主要贡献 | 论文题目 | 相关特点 |
---|---|---|---|
2015年 ICML | 批量标准化(BN) | 《Batch normalization: Accelerating deep network training by reducing internal covariate shift》 | 一般添加在激活层之前,其作用是加快模型训练时的收敛速度,使得模型训练过程更加稳定,同时可能提升精度,避免梯度爆炸或者梯度消失,并且起到一定的正则化作用,几乎代替了Dropout,其核心公式计算一个批次所有样本的均值和方差。在目标检测领域已经成为标配,但是BN不适合RNN等动态网络,在BatchSize较小时效果不好 |
2016年 | 层标准化(LN) | 《Layer Normalization》 | LN解决了BN不适合RNN等动态网络和较小BatchSize的问题,但是在BN和LN都能使用的场景中,BN的效果一般优于LN,原因是基于不同数据,BN同一特征得到的归一化特征更不容易损失信息。LN在分类问题上的表现可能比较差一点,其核心公式计算一个样本所有通道的内容。该论文没有发表 |
2016年 | 实例标准化(IN) | 《Instance Normalization: The Missing Ingredient for Fast Stylization》 | 其核心公式计算一个样本的一个通道的内容,所以适合用于对单个像素信息比较敏感的图像风格迁移任务,在GAN中使用比较多,在图像样式转换中比BN和LN更常用,该论文没有发表,但是经过了无数研究实验验证有效 |
2018年ECCV | 组标准化(GN) | 《Group normalization》 | GN称其解决了BN式归一化对batch size依赖的影响,用于物体检测和语义分割等batch size很小的任务场景中。 |
2017年ICLR | 条件实例标准化模块(CIN) | 《A learned representation for artistic style》 | 其在训练中学习不同的仿射变换参数 和 ,对于同一张content image,同一个迁移网络,使用相同的卷积层参数,使用不同的 和 对,可以得到不同风格的迁移结果。 |
2017年ICCV | 自适应实例标准化模块(AdaIN) | 《Arbitrary style transfer in real-time with adaptive instance normalization》 | 将内容图像(content image)特征的均值和方差对齐到风格图像(style image)的均值和方差,其论文证明了图像特征图的均值和方差就代表着图像的风格,在之前的BN,IN,CIN中,网络会学习仿射变换参数 和 ,作者提出的AdaIN则无需学习这两个参数,直接用style image的特征的均值和标准差代替这两个参数, |
2019年ANIPS | 批量实例标准化模块(BIN) | 《Batch-instance normalization for adaptively style-invariant neural networks》 | |
2020年ICLR | 自适应层实例标准化模块(AdaLIN) | 《U-GAT-IT: Unsupervised ganerative attentional networks with adaptive layer-instance normalization for image-to-image translation》 | 用于自适应地选择IN和LN之间的适当比率。 |
3、方法
3.1 模型
本文的模型U-GAT-IT是基于CycyleGAN,所以具有两个生成器(Gs→t和Gt→s)和两个鉴别器(Ds和Dt)组成,注意力模块整合到生成器和鉴别器中,AdamLIN模块只存在于生成器中;其中鉴别器中的注意力模块负责引导生成器聚焦对于生成真实图像至关重要的区域,生成器中的注意力模块关注与target domain不同的区域。
本模型的目标是训练一个生成器$G_{s \rightarrow t}$,它将一张来自source domain的图像$X_{s}$映射到target domain中的$X_{t}$,其中$X_{s}$和$X_{t}$是从每个domain中抽取的一组unpaired样本。
2.1.1 生成器
(1)生成器的公式描述:
设$x \in\left{X_{s}, X_{t}\right}$表示一个来自源域(source domain)和目标域(target domain)的样本,本文的生成器模型$G_{s \rightarrow t}$由编码器$E_{s}$、解码器$G_{t}$和辅助分类器$\eta_{s}$组成。$\eta_{s}(x)$表示$x$来自$X_{s}$的概率。
A 编码器
编码器$E_{s}$负责下采样,输入size=[1,3,256,256]的$x$,输出size=[1,256,64,64]的特征图$E_{s}(x)$,设$E_{s}^{k}(x)$为表示编码器输出的第k个激活过的特征图,$E_{s}^{k_{i j}}(x)$是第k个特征图在坐标(i, j)处的值。
B 辅助分类器
本文计划为每张特征图分配一个注意力权重$w_{s}^{k}$,其表示这张特征图的关注程度,即经过分配注意力后,我们得到一组具有特定注意力的特征图: \(a_{s}(x)=w_{s} * E_{s}(x)=\left\{w_{s}^{k} * E_{s}^{k}(x) \mid 1 \leq k \leq n\right\}\) 其中$n$是编码器的特征图的数量。
然后,本文的转换模型$G_{s \rightarrow t}$等于$G_{t}\left(a_{s}(x)\right)$。
(1)如何得到每张特征图的注意力权重呢?
受CAM (Zhou等人.(2016))的启发,本文利用全局平均池化和全局最大池化来训练辅助分类器学习源域的第k个特征图$w_{s}^{k}$的权重,例如:$\eta_{s}(x)=\sigma\left(\Sigma_{k} w_{s}^{k} \Sigma_{i j} E_{s}^{k_{i j}}(x)\right)$。
C 解码器
解码器中残差块的作用是嵌入特征,上采样卷积块的作用是将嵌入的特征生成目标域图像。
(2)如何使用含有注意力权重的特征图呢?
2017年ICCV上Huang & Belongie等人的《Arbitrary style transfer in real-time with adaptive instance normalization》(AdaIN)、2018年Nam& Kim等人的《Batch-instance normalization for adaptively style-invariant neural networks》(BIN)等研究工作曾在归一化层中使用仿射变换参数并结合归一化函数,受此启发,本文将注意力图输入到一个全连接层来动态计算得到两个仿射变换参数$\gamma$和$\beta$,然后使用$\gamma$和$\beta$得到一种AdaLIN残差块: \(\begin{array}{c} \operatorname{AdaLIN}(a, \gamma, \beta)=\gamma \cdot\left(\rho \cdot \hat{a_{I}}+(1-\rho) \cdot \hat{a_{L}}\right)+\beta, \\ \hat{a_{I}}=\frac{a-\mu_{I}}{\sqrt{\sigma_{I}^{2}+\epsilon}}, \hat{a_{L}}=\frac{a-\mu_{L}}{\sqrt{\sigma_{L}^{2}+\epsilon}}, \\ \rho \leftarrow \operatorname{clip}_{[0,1]}(\rho-\tau \Delta \rho) \end{array}\)
其中$\mu_{I}、 \mu_{L} $和$\sigma_{I}, \sigma_{L}$分别表示channel-wise的均值、layer-wise的均值和channel-wise的标准差、layer-wise的标准差;$\gamma,\beta$为输入的全连接层生成的参数,τ为学习速率,$\Delta \rho$为优化器确定的更新向量的参数(如梯度)。$\rho$的值被限制在[0,1]的范围内,只需在参数更新步骤上加上界限。Generator调整值,使$\rho$值在instance normalization很重要的任务中接近1,而$\rho$值在LN很重要的任务中接近0。$\rho$值在解码器的==残差块==中初始化为1,在解码器的==上采样块==中初始化为0。
将内容特征转化为风格特征的最优方法是应用增白和着色变换(white and Coloring Transform, WCT) (Li等人. (2017b)),但由于计算协方差矩阵和逆矩阵,其计算成本较高。尽管,AdaIN (Huang & Belongie(2017))的速度比WCT要快得多,但由于假设特征通道之间不相关,因此不如WCT最优。因此,转换的特性包含内容的更多的模式。另一方面,LN (Ba 等人.(2016))并没有假设通道之间不相关,有时它不能很好地保持原始领域的内容结构,因为它只考虑特征图的全局统计信息。为了克服这个问题,本文提出了归一化技术AdaLIN结合AdaIN和LN的优势,有选择地保留或改变内容信息,有助于解决广泛的图像到图像的转换问题。
如果参数ρ的学习值更接近1,这意味着对应的层更依赖于IN而不是LN。同样地,如果已知的ρ值更接近于0,这意味着对应的层更依赖于LN而不是IN。
(2)生成器的计算图:
(3)生成器的网络架构细节:
2.1.2 鉴别器
(1)鉴别器的公式描述:
设$x\in\left{X_{t}, G_{s \rightarrow t}\left(X_{s}\right)\right}$表示一组来自目标域和转换后的源域的样本。与其他转换模型相似,鉴别器$D_{t}$是一个多尺度模型,它由一个编码器$E_{D_{t}}$,一个分类器$C_{D_{t}}$,辅助分类器$\eta_{D_{t}}$组成。与其他转换模型不同的是,$\eta_{D_{t}}(x)$和$D_{t}(x)$都被训练用来区分$x$是否来自于$X_{t}$或$G_{s \rightarrow t}\left(X_{s}\right)$。给定一个样本x, $D_{t}(x)$利用注意力特征图$a_{D_{t}}(x)=w_{D_{t}} * E_{D_{t}}(x)$利用$w_{D_{t}}$对$\eta_{D_{t}}(x)$训练的编码特征图$E_{D_{t}}(x)$进行赋值。然后,我们的鉴别器$D_{t}(x)$等于$C_{D_{t}}\left(a_{D_{t}}(x)\right)$。
(2)鉴别器的网络架构:
鉴别器中使用光谱归一化(SN,Miyato等人(2018))作为归一化层用于鉴别器。本文采用了两种不同尺度的PatchGAN(Isola等人(2017))作为鉴别器网络,用于区分局部(70 x 70)和全局(286 x 286)图像块的真假。对于激活函数,本文在生成器中使用ReLU,在鉴别器中使用斜率为0.2的leaky-ReLU。
局部鉴别器的网络架构细节:
全局鉴别器的网络架构细节:
2.2、 损失函数
本文模型的全部目标包括四个损失函数。这里用的不是hourglass GAN目标,我们使用最小二乘GAN (Mao等人.(2017))目标进行稳定训练。
(1)对抗性损失
对抗性损失是经典GAN网络的损失函数,其目的是将预测图像的分布匹配到目标图像的分布上 \(L_{l s g a n}^{s \rightarrow t}=\left(\mathbb{E}_{x \sim X_{t}}\left[\left(D_{t}(x)\right)^{2}\right]+\mathbb{E}_{x \sim X_{s}}\left[\left(1-D_{t}\left(G_{s \rightarrow t}(x)\right)\right)^{2}\right]\right)\)
(2)循环一致性损失
仅有对抗性损失无法保证x输入G(x)时图像的内容不变,例如从斑马x得到伪造马G(x)以后,再次将伪造马G(x)送入生成器F获得重构斑马F(G(x)),这时需要约束重构斑马F(G(x))=x,所以继续使用CycleGAN提出的循环一致性,即给定一个图像$x$∈$X_{s}$,在$x$从$x$到$X_{t}$和从$X_{t}$到$X_{s}$,图像应该被成功地翻译回原来的domain: \(\left.L_{\text {cycle }}^{s \rightarrow t}=\left.\mathbb{E}_{x \sim X_{s}}\left[\mid x-G_{t \rightarrow s}\left(G_{s \rightarrow t}(x)\right)\right)\right|_{1}\right]\)
(3)内容一致性损失
这也是cycleGAN中的损失函数,为了保证输入图像和输出图像的颜色分布相似,本文对生成器应用了一个内容一致性约束。给定一个图像$x$∈$X_{t}$, $x$使用$G_{s \rightarrow t}$平移后,图像内容尽可能不变: \(L_{i d e n t i t y}^{s \rightarrow t}=\mathbb{E}_{x \sim X_{t}}\left[\left|x-G_{s \rightarrow t}(x)\right|_{1}\right]L_{i d e n t i t y}^{s \rightarrow t}=\mathbb{E}_{x \sim X_{t}}\left[\left|x-G_{s \rightarrow t}(x)\right|_{1}\right]\)
(4)CAM分类损失
利用辅助分类器$\eta_{s}$和$\eta_{D_{t}}$的信息进行分析,给定一个像$x \in\left{X_{s},X_{t}\right}$。$G_{s \rightarrow t}$和$D_{t}$知道它们需要改进的地方,或者是在当前状态下两个域之间的最大差异是什么: \(\begin{array}{l} L_{\text {cam }}^{s \rightarrow t}=-\left(\mathbb{E}_{x \sim X_{s}}\left[\log \left(\eta_{s}(x)\right)\right]+\mathbb{E}_{x \sim X_{t}}\left[\log \left(1-\eta_{s}(x)\right)\right]\right) \\ L_{c a m}^{D_{t}}=\mathbb{E}_{x \sim X_{t}}\left[\left(\eta_{D_{t}}(x)\right)^{2}\right]+\mathbb{E}_{x \sim X_{s}}\left[\left(1-\eta_{D_{t}}\left(G_{s \rightarrow t}(x)\right)^{2}\right]\right. \end{array}\)
(5)最终目标函数
最后,本文共同训练编码器、解码器、鉴别器和辅助分类器来优化最终目标: \(\min _{G_{s \rightarrow t}, G_{t \rightarrow s}, \eta_{s}, \eta_{t}} \max _{D_{s}, D_{t}, \eta_{D_{s}}, \eta_{D_{t}}} \lambda_{1} L_{l \text { sgan }}+\lambda_{2} L_{\text {cycle }}+\lambda_{3} L_{\text {identity }}+\lambda_{4} L_{\text {cam }}\) 其中$\lambda_{1}=1, \lambda_{2}=10, \lambda_{3}=10, \lambda_{4}=1000$。这里,$L_{l \text { sgan }}=L_{l \text { sgan }}^{s \rightarrow t}+L_{\text {lsgan }}^{t \rightarrow s}$和其他损失以类似的方式定义($L_{\text {cycle }}, L_{\text {identity }} \text {, and } L_{\text {cam }}$)。
4、实验
4.1、基线模型
在实验部分,本文方法对比的基线如下,所有的基线方法都是由作者代码给出。
提出年份 | 模型名称 | 相关论文 | 主要工作 |
---|---|---|---|
2017年ICCV | CycleGAN | 《Unpaired image-to-image translation using cycle-consistent adversarial networks》 | |
2017年ANIPS | UNIT | 《Unsupervised image-to-image translation networks》 | |
2018年ECCV | MUNIT | 《Multimodal unsupervised image-toimage translation》 | |
2018年ECCV | DRIT | 《Diverse image-to-image translation via disentangled representations》 | |
2018年ANIPS | AGGAN | 《Unsupervised attention-guided image-to-image translation》 | |
2018年CVPR | CartoonGAN | 《Cartoongan: Generative adversarial networks for photo cartoonization》 |
4.2、数据集
本文使用5种未配对的图像数据集评估了每种方法的性能,其中包括四个代表性的图像转换数据集和一个新创建的数据集,该数据集包含真实照片和动画作品,例如selfie2anime。所有图像的大小被调整为256 x 256来进行训练。
数据集名称 | 实验设置 | 图像预处理 |
---|---|---|
selfie2anime | 该数据集由作者新创建,其中每张图片都是256*256,训练集为3400,测试集为100. | 自拍数据集:从包含46836张带有36种不同属性注释的原始自拍数据集中只挑选女性照片作为训练数据和测试数据。 动画数据集:首先从anime-Planet(http://www.anime-planet.com/ )检索了69926幅动画角色图像,然后使用动画人脸检测器(https://github.com/nagadomi/lbpcascade_animeface)提取了27023张人脸图像,在手动选择女性角色图像并删除单色图像后,再使用基于CNN的图像超分辨率算法(https://github.com/nagadomi/waifu2x)将所有动画人脸图像的大小调整为256 x 256。 |
horse2zebra | 训练数据集由1067张horse(马)和1334张zebra(斑马)组成;测试数据集由120张horse(马)和140张zebra(斑马)组成。 | 该数据集曾用于2017年CycleGAN的训练, |
photo2vangogh | 训练数据集由6287张photo和400张vangogh(梵高风格)组成;测试数据集由751张photo和400张vangogh(梵高风格)。 | 该数据集曾用于2017年CycleGAN的训练,请注意,梵高风格400张的训练数据和测试数据是相同的数据。 |
cat2dog | 训练数据集由871张cat和1364张dog组成;测试数据集由随机挑选的120张cat和140张dog组成。 | 该数据集曾用于2018年DRIT的训练。原文此处出现了印刷错误:( |
photo2portrait | 训练数据集由6452张photo和1811张portrait组成;测试数据集由随机挑选的751张photo和400张portrait组成。 | 该数据集曾用于2018年DRIT的训练。 |
4.3 实验结果
本文首先分析了注意力模块和AdaLIN在该模型中的作用;然后,本文模型与前一节中列出的其他非监督模型的性能进行比较。为了评估转换后图像的视觉质量,本文进行了一项用户研究,用户被要求从五种不同的方法生成的图像中选择最好的图像。
训练细节
本文所有模型均采用如下相同的参数:
数据增强手段:以0.5的概率水平翻转图像,将其大小调整为286 x 286,并将其随机剪切为256 x 256。
数据读取参数:batch_size都设置为1。
优化器参数:Adam(Kingma&Ba(2015)),β1=0.5,β2=0.999,先使用固定学习率0.0001进行500000次迭代再线性衰减到1000000次迭代。
网络初始化手段:使用0.0001的weight衰减率,从零中心正态分布初始化权重,标准偏差为0.02。
使用的评价指标
为了进行定量评估,本文使用最近提出的KID,它计算真实图像和生成图像特征表示之间的平方最大平均差异。特征表示从Inception网络中提取(Szegedy等人.(2016))。与Frchet Inception Distance (Heusel et al.(2017))相比,KID有一个无偏估计,这使得它更可靠,特别是当测试图像比Inception特征的维数少的时候。KID越低,表明真实图像和生成图像之间的视觉相似性越高(Mejjati et al.(2018))。因此,如果转换得好,KID在几个数据集中会有一个很小的值。
4.3.1 CAM模块的消融实验(定性分析)
该部分展示了生成器和鉴别器的消融实验结果。模型的预测图片显示如下
(a)输入图像,(b)生成器的注意力图,(c-d)鉴别器的局部注意力图和全局注意力图。(e)本文方法用CAM的结果,(f)本文方法没用CAM的结果。
作者对实验结果的描述:
图2 (b)所示,生成器的注意力特征图帮助聚焦于源图像中与目标域区分度更高的区域,如眼睛和嘴巴。
图2 (c)和(d)所示,通过可视化判别器的局部注意力图和全局注意力图,可以看到鉴别器注意力图集中的区域都是注意力起作用的部分,这可以说明鉴别器判断的主要依据区域可以让生成器在训练中更加注重其优化。
图2 (e)所示,用注意力模块的本文方法的结果,验证了在图像转换任务中利用注意力特征图的有利效果。
图2 (f)所示,没有使用注意力模块,可以看到眼睛没有对齐,或者转换结果根本就没有完成。
4.3.2 adaLIN模块的对比实验(定性分析)
根据本文的架构描述,本文在生成器的的编码器使用的是IN,在解码器使用的是AdaLIN和LIN。在编码器中不适用AdaLIN的原因:
生成器的编码器之后使用了辅助分类器,而IN在分类任务中效果更好(2018年Wu&He在ECCV发表的《 Group normalization》),所以本文在编码器部分使用IN,AdaLIN只在解码器部分使用。
本节展示了解码器中使用不同归一化层的效果,如图所示:(a)输入图像,(b)本文结果,(c)只使用IN的带CAM的解码器的结果,(d)只使用LN的带CAM的解码器的结果 (e)仅使用AdaIN的带CAM的解码器的结果,(f)仅使用GN的带CAM的解码器的结果。
图3 (c)所示,解码器中的卷积块和上采样卷积块只使用IN的结果,由于在残差块中使用通道方向的归一化特征,源域的特征(如颧骨周围的耳环和阴影)得到了很好的保存;然而,由于上采样卷积块的IN不能捕获全局样式,因此转换到目标域样式的量有些不足。
图3 (d)所示,LN的效果虽然好,在上采样卷积中使用的LN特征,可以充分转移为目标图像的风格,但在残差块中使用LN,会降低原来图像的几何特征。
(c)和(d)的两种极端情况说明,在解码器的残差块使用IN比LN更好,在上采样层使用LN比IN更好。
4.3.3 消融实验的定量分析
本文通过使用KID进行消融实验,展示了注意力模块和AdaLIN在selfie2anime的数据集中的表现。
N:组归一化,G_CAM:用CAM的生成器, D_CAM:有CAM的鉴别器,W/表示with,W/O表示without
本文的模型实现了最低的KID值。即使将注意力模块和AdaLIN分开使用,也可以看到本文模型比其他模型表现得更好。然而,当一起使用时,性能甚至更好。
4.3.4、不同模型结果的用户调查
为了比较不同模型的结果好坏,本文也进行了一项用户感知调查。向135名参与者展示了不同方法的转换结果,包括提出的方法,并要求他们选择最佳的转换后的图像。本文只告知目标域的名称给参与者。但是,为了保证正确的判断,为肖像和梵高数据集提供了一些目标域的示例图像作为最小信息。
从上表可以看出,除photo2vangogh外,本文所提出的方法在人类感知研究方面的得分显著高于其他方法。
下图给出每种方法的直观转换结果:
(a) 输入图像,(b)U-GAT-IT,(c)CycleGAN,(d)UNIT,(e)MUNIT,(f)DRIT,(g)AGGAN
4.3.5、不同模型结果的定量实验
从下表可以看出,除了photo2vangogh和photo2portrait等风格转换任务外,本文所提方法的KID得分最低。然而,这与最低分没有太大的差别。
此外,不像UNIT和MUNIT,我们可以看到源→目标,目标→源的转换都是稳定的。
U-GAT-IT比最近的基于注意力的方法AGGAN显示出更低的KID。对于dog2cat、anime2selfie等形状变化的变换的任务,AGGAN的性能很差,它的注意力模块不是区分背景和前景,而是区分两个域。
CartoonGAN只将图像的整体颜色变为为动画风格,但与自拍照相比,动画最大的特点是眼睛,并没有改变。因此,卡通漫画的KID较高。
5、结论
本文提出了无监督图像到图像的转换方法(U-GAT-IT),使用注意力模块和AdaLIN,可以用具有固定结构和超参数的网络使各种数据集产生更视觉悦目的结果。实验结果显示本文方法效果很不错。此外,本文认为本文提出的自适应层-实例归一化(AdaLIN)对于转换包含不同数量几何和样式变化的各种数据集是必不可少的。