基于深度学习的中国传统特色图像的风格迁移创新实训第一周

 本次创新实训,我们的项目是基于深度学习的中国传统特色图像的风格迁移。

    项目目标:

  • 实现水墨画和剪纸等中国传统艺术形式的风格迁移算法。

  • 完成一个可供用户操作的系统,包括上传图片、压缩、预处理、风格迁移等模块。

    首先介绍一下风格迁移:每一幅画都有自己的风格,而用户又想将自己的东西变成与名画相同的风格,这就叫做风格迁移。以往的风格迁移是分析某一种风格的图像,给那一种风格建立一个数学或者统计模型,再改变要做迁移的图像让它能更好的符合建立的模型。采用这种方法,每个程序只能实现某一种风格或者某一个场景。因此这种传统的风格迁移的实际应用很有限。2015年德国人Gatys提出了基于卷积神经网络的图像风格迁移。利用神经网络,可以实现更多的图像风格迁移。

    基于此我们提出了中国传统特色图像的风格迁移。主要难点有以下方面:

  • 水墨画存在大量的留白空间。
  • 剪纸的纹理特征是线性的,无法直接通过神经网络学习出来。
  • 剪纸更加注重表达边缘信息。
  • 剪纸上有很多重复的pattern。

    在项目中我的工作是负责算法的实现和APP的构建。因为对神经网络还没有完全的掌握使用,因此还处于学习和查找资料阶段。

    初步想法是,针对水墨画风格,可以将原图进行分层处理,将大块连续部分进行留白处理。针对剪纸风格,先结合“卢雪剪纸集”对专门图像进行处理,先提取原图像的边缘信息,再建立一 一对应的剪纸和原图像训练集,进行学习。



本周的主要工作是研究了Gatys发表在CVPR 2016 上的文章Image Style Transfer Using Convolutional Neural Networks

风格迁移主要包括,内容重构、风格重构、风格迁移三个部分。

基于深度学习的中国传统特色图像的风格迁移创新实训第一周

内容重构

content reconstruction

给定一张图片和训练好的卷积网络,那么在每层可以得到多个feature map,个数取决于每层滤波器的个数。我们把个feature map向量化,得到大小为的向量。把每一层的个特征向量保存到矩阵中,其元素表示第层的第个滤波器在位置上的**响应。 
现在指定一层的特征表示,希望生成一张
的图片使其在该层的特征表示等于原特征表示
(内容匹配)。定义损失函数如下: 

                            基于深度学习的中国传统特色图像的风格迁移创新实训第一周

改变最初的随机图像,直到它在卷积神经网络的某一层产生与原始图像p相同的响应。论文里的最初图像选择了一张椒盐图像。之后,在网络中较低层的包含了原始图像精确的像素信息。而在高层的特征映射中只包含了像素的空间排列信息,而忽略了底层的纹理,颜色信息。

风格重构

style reconstruction


利用Gram矩阵表示特征map,公式如下:

                                               基于深度学习的中国传统特色图像的风格迁移创新实训第一周

每一层的损失函数如下:

基于深度学习的中国传统特色图像的风格迁移创新实训第一周

总的损失函数如下:

基于深度学习的中国传统特色图像的风格迁移创新实训第一周

通过梯度下降算法,希望椒盐噪声图像的风格和元图像的风格保持一致。即最小化原始图像到生成图像的Gram矩阵之间的均方距离。

风格迁移
Style transfer

在这张椒盐噪声的图片上,共同最小化内容表示和风格表示。损失函数如下:

基于深度学习的中国传统特色图像的风格迁移创新实训第一周

最后利用L-BFGS进行图片的合成得到最终的图片。

基于深度学习的中国传统特色图像的风格迁移创新实训第一周


但是这篇文章也存在一些问题:

因为文章中的算法是一遍训练一遍迁移的,因此没法做到实时性。这就是我们要解决的问题,初步思路是先进行预学习,将风格模型提前训练好。为每个风格训练一个网络。,这样使用时,只需输入内容图片,可实现实时性。