【论文阅读】CartoonGAN: Generative Adversarial Networks for Photo Cartoonization
CartoonGAN: CGAN用于Photo Cartoonization
-
Abstract
-
Introduction
-
RelatedWork
-
- Nonphotorealistic rendering (NPR)
- Stylization with neural networks
- Image synthesis with GANs
- Network architectures
-
CartoonGAN
-
Architecture of CartoonGAN
-
Loss mechanism
-
- Adversarial loss is represented by L_{adv}(G;D)*
-
-
Content-based loss is defined as L_{con}(G;D)*
- Initialization phase
-
-
实验研究
-
数据集
- 与现有先进方法的对比分析
- 对损失函数各组件作用机制的探讨
-
Conclusion and Future Work
-
论文地址
-
代码
-
Abstract
在本文中致力于开发一种将现实世界中的照片转换为具有卡通风格图像的方法。这一方法在计算机视觉领域不仅有重要学术价值而且研究难度较大。该方案借鉴了机器学习技术。近期的研究主要通过艺术化的绘画风格对图像进行样式化处理。但由于以下问题存在现有的方法难以实现令人满意的卡通效果:
- 卡通风格表现在其鲜明的艺术表现力中,并且表现出显著的简化与抽象特性;
- 卡通图像展现出清晰明了的轮廓线、柔和而流畅的阴影区域以及基本而简练的设计元素;这种方法论上的挑战主要源于现有技术中使用的基于纹理描述符所导致的信息损失。
我们在本文中开发了CartoonGAN模型,并将其设计为专门用于卡通化的生成对抗网络(GAN)框架。通过大量测试样本的数据验证,在测试集中展现出比现有方法更好的性能水平。为了进一步提升图像质量,在模型中实现了两个新型的损失函数开发。
- 语义信息丢失的现象表现为VGG网络在高级特征图中引入稀疏正则化技术,从而有效应对图像与插画之间样式差异的挑战;
- 通过保持清晰边界来增强抗噪声能力的一种机制.
为了进一步优化网络性能,在初始化阶段引入了一种新的策略
Introduction

与其说它们是艺术品,不如说是将现实世界中的对象进行了艺术化的再创造。
在艺术领域中对图像进行风格化处理已有广泛的研究。传统的做法是根据特定样式设计专用算法。然而,在模仿单个艺术家的细致风格方面仍需付出巨大努力。近期,在机器学习驱动下的样式迁移技术已经引起了广泛关注,在这一技术下可以通过提供的示例来实现图像风格化处理。特别地,在循环生成对抗网络(CycleGAN)框架下通过采用未配对的图像与风格化图像实现了高质量的样式转换功能
基于学习的技术虽已在风格迁移方面取得了显著成效, 但目前开发出的方法尚无法有效生成高质量的 cartoonized images.主要原因包括以下几个方面:
首先这些方法未加入诸如笔画这样的纹理细节 并将卡通图像从真实图像的高度简化并提炼而成;
其次由于艺术家之间风格各异 在生成的艺术作品中仍能呈现出一致的特点——清晰的边界 柔和的阴影以及较为简单的纹理;与之相比存在显著差异。
最后总结其核心特征是生成的艺术形象较为相近
我们的方法基于一组照片和一组 cartoon 图像进行训练。在便于获得 training data 的同时能够生成高质量的结果, 我们避免使用成对的 training images。从 computer vision 算法角度来看, cartoon stylization 的目标是将真实图片转换为具有 cartoon 风格的图片, 同时保持内容不变。为此, 我们采用了基于 GAN 设计的独特架构, 并结合了两个高效的 loss functions。
本文的主要贡献是:
- 我们开发了一种基于GAN的独特算法,在仅依赖单幅图像的前提下实现了从真实的照片到卡通画的过程建模,并在此过程中达到了高效且高质量的目标结果。我们的系统不仅能够生成高保真度的手绘风格图像,并且其性能超越当前同类算法所提供的解决方案。特别地,在模仿同一艺术家的独特风格方面表现尤为出色;
- 在所提出的框架下设计了两种新型损失函数方案,在生成模块中我们巧妙地利用深度特征提取边缘信息并通过l1稀疏正则化这一有效约束手段来解决不同风格转换问题;而在判别器模块中我们创新性地提出了具有边界增强特性的对抗性损失设计原则以保持模型对清晰边缘细节的关注;
- 通过预处理阶段优化模型初始参数设置以提升收敛效果,并在此基础上实现了对目标空间关系关系的有效融合与建模;
RelatedWork
Nonphotorealistic rendering (NPR)
已有诸多自动或半自动型的NPR算法被开发出来用于模仿特定的艺术风格如卡通等
Stylization with neural networks
不同于基于成对需要样式/非样式图像的传统样式转移方法,最近的研究表明,在风格迁移领域中具有重要价值的是一类能够直接从单幅图像中提取对象语义特征的技术。研究表明,在风格迁移任务中具备提取对象语义特征的能力对于提升表现具有重要意义。因此开发出了更为强大的样式迁移技术,在无需依赖于配对的训练图像数据的情况下即可实现有效的风格转换效果。Gatys et al.提出的方法
Image synthesis with GANs
Pix2Pix,CycleGAN
Network architectures
大量研究表明,
尽管深度神经网络一定程度上能提升表示复杂函数的能力,
然而由于梯度消失而导致难以训练。
最近提出的残差块架构显著简化了训练过程。
该架构引入了"恒等捷径连接",
从而有效缓解了训练过程中逐渐消逝的梯度问题。
基于残差块设计的模型在生成任务中展现出卓越的优势。
通过批归一化来减轻深度CNN的训练负担,在消除内部协变量偏移的同时也减少了模型在接近极小值时出现振荡的现象。此外,在现代深度神经网络中,Leaky ReLU(LReLU)作为一种被广泛采用的激活函数,在提升模型性能方面发挥了重要作用;当神经元处于休眠状态时仍能保持微弱梯度传输的能力。我们将这些技术整合到我们的卡通化深度架构中以实现更好的性能提升。
CartoonGAN
GAN框架包含两个卷积神经网络(CNN)。一个是生成器G,在经过特定训练后能够模仿并产生与真实数据相似的行为或结果。另一个是判别器D,在接收输入时会分析并判断这些输入图像是来自真实数据集还是被生成的数据样本。
我们建立了学习流程,并在真实场景的基础上将照片转译为卡通形象作为一项功能,并将其定义为将流形P映射到流形C的过程。通过训练数据集构建这一映射关系

与现有的GAN架构相似,在当前的研究背景下

CartoonGAN architecture

在CartoonGAN架构中,生成器网络G负责将输入图像转换为具有卡通风格的图像。训练完成后,在此架构下生成的结果呈现出强烈的卡通化风格。生成器网络G的设计起始于一种平滑且均匀的卷积处理机制,并随后采用了两组向下采样模块。这些模块通过有效的空间压缩和特征提取过程,在这一阶段中提取出的关键特征有助于后续更精细的操作。接着通过八组结构相同的残差模块构建内容表征与流形特征。最后通过上采样层逐步恢复细节与纹理信息。
与生成器网络相辅的是一个专门用于鉴别输入图片是否属于真实卡通范畴的判别器网络D。因为识别卡通图片仅涉及相对简单的特征提取任务,相较于全面分析整个图片的传统判别方式,我们选择了采用参数简洁、专注于局部区域的小块卷积层作为其核心架构。其主要依据在于对图像是局部区域特性的捕捉,因此整个结构相对简捷。在经过较为平滑过渡的部分之后,该网络采用两个跨步卷积模块来进一步降噪并提取关键特征
Loss function

该损失函数由两部分组成:对抗项损失与内容分支损失。引入权重参数w以平衡两者的关系。当权重参数w增大时,则会使得生成图像能够更好地继承输入图像中丰富的细节特征,并且生成具有更为显著纹理特化的样式化图像效果。在实际实验结果中,在所有测试案例中将该权重赋值10,则能够在图像样式与细节特征之间实现良好的平衡效果。
Adversarial loss L_{adv}(G;D)

在传统的GAN架构中,判别器D的主要职责是鉴别输入图片是否来自生成器或者真实数据源。然而我们发现仅依靠判别器D来区分生成图片与真实卡通图片不足以实现将普通照片转为卡通的效果。原因在于清晰明了的边缘特征作为卡通图片的核心属性但这些特征在整个画面中的占比通常较少。因此即便没有清晰重建边缘却能保持阴影正确度的输出结果可能会让判别器产生误判。
为了使判别器对边缘特别关注。同时将经过边缘平滑处理的卡通图像输入到判别器D中,请参考图示。
Content loss L_{con}(G;D)
除了正确实现流形间的转换之外,在卡通样式化过程中还必须同时解决的关键问题是确保生成图像能够完整传达输入图像所含有的语义信息。通过预训练的VGG网络模型获取了更为深层的图像特征。

不同于其他现有图像生成方法[6,19]
Initialization phase

由于GAN模型具有高度非线性特征以及随机初始化能力,在实际应用中容易陷入局部最优解。基于此观察结果,在现有收敛速度较低的问题背景下提出了一种新的初始化策略。值得注意的是,在对抗生成网络(GAN)的学习框架中,默认情况下生成器网络G旨在通过卡通风格重建输入图像的主要语义信息。然而,在传统的初始化阶段中,默认情况下仅利用语义内容损失L_{con}(G;D)来进行预训练工作。如图所示,在这一特定的初始化训练阶段中进行了10个周期的重建图像展示实例分析,并验证了该方法的有效性。实验结果表明,在这种简单的初始化策略下能够显著提升CartoonGAN模型的整体性能表现
Experiments

由于我们的方法无需配对图像样本,则可直接生成高质量的卡通形象。这些高质量的艺术作品均源自于 easy-to-obtain 的卡通视频序列。每个艺术家都有独特的绘画风格,则可通过CartoonGAN进行学习模仿。如上图所示,则展示了CartoonGAN模仿不同艺术风格所取得的部分成果。
Data
训练数据集涵盖真实照片与卡通图像两类样本信息,测试数据集则仅包含真实照片这一类别。对所有训练图像进行尺寸优化处理,并统一裁剪至256×256像素尺寸。
在创建真实场景的卡通图像时,则各有独特的艺术风格存在。 为了获取一组具有相同艺术风格的卡通形象,则可利用来自同一动画片的关键帧数据作为训练样本集。
Comparison with state of the art
我们首先对CartoonGAN与基于CNN的样式化领域中较新提出的两种方法进行了对比分析,并具体分析了其中一种为NST(Neural Style Transfer),另一种则是CycleGAN

Roles of components in loss function

为了探究CartoonGAN各模块的作用机制,在本研究中我们设计并实施了一项消融研究。通过上图所示的结果展示可以看到,在本次实验中全部数据均采用Makoto Shinkai风格的数据集进行了训练学习。由此可见,在CartoonGAN模型中各个模块均发挥了各自的关键作用
Conclusion and Future Work
在本文中
- 新型抗性损失在增强边界面清晰度方面表现突出。
- 在VGG网络架构中引入了一种用于抑制高级特征图中内容丢失的稀疏正则化技术,在此过程中实现了对平滑阴影区域的有效重建。
- 我们成功开发出了一种简便且高效的初始化方案,在提升模型收敛速度方面表现出色。
未来的工作中基于其重要性 我们致力于探索如何通过局部面部特征来提升人脸卡通风格的研究。尽管我们在损失函数方面进行了开发 以克服卡通风格特有的局限性 但对于其他图像合成任务 我们将专注于进一步研究。此外 我们还计划在训练阶段引入顺序约束 以便使该方法适用于视频生成。
论文地址
CartoonGAN采用生成对抗网络(GAN)实现照片卡通化
代码
可访问PyTorch项目中的CartoonGAN开源代码仓库。
可访问基于TensorFlow开发的CartoonGan开源代码仓库。
