清华大学提出基于生成对抗神经网络的自然图像多风格卡通化方法并开源代码

近日,清华大学刘永进教授课题组在 IEEE Transactions on Visualization and Computer Graphics 上发表论文,提出基于生成对抗神经网络的自然图像多风格卡通化方法,代码在 Github 上开源。

清华大学提出基于生成对抗神经网络的自然图像多风格卡通化方法并开源代码_第1张图片

论文标题:

GAN-based Multi-Style Photo Cartoonization

论文链接:

https://doi.org/10.1109/TVCG.2021.3067201

代码链接:

https://github.com/syz825211943/Multi-Style-Photo-Cartoonization

卡通画是日常生活中喜闻乐见的一种艺术形式,不管是在影视作品还是在日常生活中都非常常见。很多卡通画都是根据自然场景由艺术家精心绘制而成,耗时耗力;而一些现存的卡通画生成算法也仅针对于单一卡通风格设计,无法获得风格各异的卡通画结果。论文提出了一种基于生成对抗神经网络的自然图像多风格卡通化方法,使用非成对数据集学习不同风格的卡通风格图片绘制方式,帮助人们生成具有不同风格的卡通图片,定格生活中的精彩瞬间。

干货推荐

  • 浙大博士导师深度整理:Tensorflow 和 Pytorch 的笔记(包含经典项目实战)
  • 值得收藏,这份机器学习算法资料着实太香
  • 比 PyTorch 的官方文档还香啊,吃透PyTorch中文版来了
  • 赶快收藏,PyTorch 常用代码段PDF合辑版来了

论文首先针对多风格卡通图像转换任务精心设计了网络结构,如图 1 所示。Multi-Style CartoonGAN 的生成网络由一个公用的编码器和多个解码器组成,其中编码器用于提取输入图片的内容,多个解码器分别对应于多种卡通风格并进行学习;判别网络也包括多个判别器,与多个解码器一一对应,用于判断输入图像是真实的卡通图像还是生成网络生成的卡通图像;最后增加一个辅助分类器,帮助网络更好的学习到不同风格之间的区别。

清华大学提出基于生成对抗神经网络的自然图像多风格卡通化方法并开源代码_第2张图片

▲ Multi-Style CartoonGAN的网络结构示意图

论文在标准的对抗损失的基础上,增加了边缘模糊的对抗损失,突出卡通画具有清晰边缘的特点。同时,论文提出使用多层次的内容约束,对不同分辨率下的输入图像与输出图像计算 L1 距离作为内容约束以适应不同卡通风格平滑程度不同这一特点——这不仅保证了结果图像与输入图像语义内容上的一致性,也保留了不同风格的绘制特点。最后增加了风格损失,对不同卡通图像分类后计算损失,扩大不同风格之间的区别。通过同时优化这三项损失,使得生成网络最终可以得到保留输入图片语义信息的多风格卡通图像转换结果。

针对于对抗神经网络非线性程度高,难以收敛的问题,我们使用初始化过程帮助网络训练收敛,在初始化阶段我们仅使用层次化的内容约束对网络进行训练,在网络能够基本重构出输入图片信息之后再进行正式训练。此外,针对于 Multi-Style CartoonGAN 网络的设计,我们在理论上证明了网络设计的合理性与可实践性。

实验证明,论文提出的多风格卡通化方法可以同时学习到多个卡通风格的绘制方式,在保留输入图片内容信息的基础上完成不同卡通风格的转换。图 2 给出了 Multi-Style CartoonGAN 与多种单风格转换方法的对比结果,图中 Gatys (image 1) 为标准的 NST 结果,我们将与输入图像内容相近的图片作为风格图像进行学习;Gatys (collection) 为改进的 NST 结果,使用训练集内的所有卡通图像计算平均风格特征进行风格迁移; 是使用了身份损失的 CycleGAN 版本;UNIT,GDWCT 是另外两种代表性的单风格转换算法。

▲ 图2. Multi-Style CartoonGAN与NST,CycleGAN,UNIT与GDWCT的对比结果。第一列为输入的自然图像,后六列为对比算法以及Multi-Style CartoonGAN的对比结果。图中前两行由宫崎骏《千与千寻》风格训练集中的图片训练得到;中间两行由新海诚风格训练集中的图片训练得到;最后两行由法国动画《悠长假日》风格训练集中的图片训练得到。

尽管这些单风格算法都需要训练多次才能得到多个卡通风格的转换结果,但是效果仍然不如 Multi-Style CartoonGAN,而我们的算法只需要训练一次就可得到多种卡通风格转换结果。图 3 展示了 Multi-Style CartoonGAN 与单风格的卡通图像生成算法 CartoonGAN 相比的结果,我们利用了多风格卡通画的结构优势也得到了更为理想的结果——内容保持更好,线条更明显,色块更平滑。

▲ 图3. Multi-Style CartoonGAN与单风格CartoonGAN的比较结果。第一列为输入的自然图像,图中第二、三列由宫崎骏《千与千寻》风格训练集中的图片训练得到;第四、五列由新海诚风格训练集中的图片训练得到;最后两列由法国动画《悠长假日》风格训练集中的图片训练得到。

最后与多风格风格转换算法 (MUNIT,ComboGAN) 相比,我们的结果也具有更理想的卡通特征与质量,结果见图 4。

▲ 图4:Multi-Style CartoonGAN与MUNIT,ComboGAN的比较结果。第一列为输入的自然图像,后三列为对比算法以及Multi-Style CartoonGAN的对比结果。图中第一行由宫崎骏《千与千寻》风格训练集中的图片训练得到;中间一行由新海诚风格训练集中的图片训练得到;最后一行由法国动画《悠长假日》风格训练集中的图片训练得到。

技术交流

目前已开通了技术交流群,群友已超过1000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

  • 方式①、发送如下图片至微信,长按识别,后台回复:加群
  • 方式②、微信搜索公众号:机器学习社区,后台回复:加群
  • 方式③、可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。
    在这里插入图片描述

你可能感兴趣的:(机器学习,神经网络,pytorch,深度学习)