【译】一种有关艺术风格迁移的神经网络算法

本文翻译自:A Neural Algorithm of Artistic Style,本篇论文能够说是图像风格迁移的鼻祖,因毕设须要翻译一篇外文文献因此选择了这篇,我的水平有限,若有翻译不当或者错误之处还望指出,谢谢🙏git

在艺术领域,尤为是绘画创做上,人们已经掌握了一种能够创造独一无二视觉体验的能力,那就是经过将一张图片的内容和风格之间构成某种复杂的关系。到目前为止,该过程的算法基础是未知的,而且不存在具备相似能力的人工系统。然而,受到一种名为深度神经网络的视觉模型的启发,在视觉感知的其余关键领域,例如物体和人脸识别,仿生学的效果已经能够接近人类的表现。这里咱们将会介绍一个基于深度神经网络的人工系统,它能够生成具备高感知品质的艺术图片。该系统使用神经表示来分离和重组任意图像的内容和风格,提供了一种建立艺术图像的神经算法。并且,按照要去表现最优的人工神经网络和生物视觉中找到相同.咱们的工做提供了人类是怎样创做和认知艺术图像的算法理解。此外,鉴于性能优化的人工神经网络与生物视觉之间惊人的类似性,咱们的工做为算法理解人类如何创造和感知艺术形象提供了一条前进的道路。算法

处理图像任务最有效的深度神经网络是卷积神经网络。卷积神经网络由小型计算单元层组成,之前馈方式分层处理视觉信息(图1)。每层单元能够理解为图像过滤器的集合(a collection of image filters),每一个图像过滤器从输入图像中提取特定特征。所以,一个给定层的输出包括所谓的特征映射(feature maps):它们是对输入的图像进行不一样类型的过滤获得的。spring

当卷积神经网络被训练用于物体识别时,会生成一个图像的表征(representations) ,随着处理层级的上升,物体的信息愈来愈明确。所以,随着神经网络中的层级一级一级地被处理,输入的图像会被转换成一种表征,与图片的像素细节相比,这种表征会愈来愈关注图片的实际内容。经过对某一层的提取出来的feaure map的重塑,咱们能够直接看到该层包含的图片信息。层级越高,那么获取的图像中物体内容就越高质量,而且没有确切的像素值的约束(层级越高,像素丢失越多)。相反,在低层级中重塑的话,其实像素丢失地不多。因此咱们参考的是神经网络高层的特征,用它来做为图片内容的表征。性能优化

为了获取输入图像的风格表征,咱们用一个特征空间去捕获纹理的信息。这个特征空间创建在每层神经网络的过滤响应之上(也就是上面提到的feature map)。在feature map的空间范围上(也就是同一层上的feature map),过滤响应各有不一样(feature map关注的特征不一样),而这个特征空间就是由这些差别构成。经过对每一层featute map两两求相关性,咱们会得到一个静态的,多尺度的图像表征,这也就捕获到了图像的纹理信息,但这纹理信息并不是全局的。网络

图1 :卷积神经网络 (CNN)。一张给定的输入图像,会在卷积神经网络的各层以一系列过滤后的图像表示。随着层级的一层一层处理,过滤后的图片会经过向下取样的方式不断减少(好比经过池化层)。这使得每层神经网络的神经元数量会逐步减小。**内容重构。**在只知道该层输出结果的状况下,经过重塑输入图像,咱们能够看到CNN不一样阶段的图像信息。咱们在原始的VGG-Network上的5个层级:conv1_1,conv1_2,conv1_3,conv1_4,conv1_5上重塑了输入的图像。 (输入的图像是上图中的一排房子,5个层级分别是a,b,c,d,e )咱们发如今较低层的图像重构(如abc)很是完美;在较高层(de),详细的像素信息丢失了。也就是说,在这个过程当中,咱们提取出了图片的内容,抛弃了像素。风格重构。在原始的CNN表征之上,咱们创建了一个新的特征空间(feature space),用于捕获输入图像的风格。风格的表征计算了在CNN的不一样层级间不用特征之间的类似性。经过在CNN隐层的不一样的子集上创建起来的风格的表征,咱们重构输入图像的风格。如此,便创造了与输入图像一致的风格而丢弃了全局的内容。框架

Tips:上述的子集为:less

‘conv1 1’ (a)jsp

‘conv1 1’ and ‘conv2 1’ (b)ide

‘conv1 1’, ‘conv2 1’ and ‘conv3 1’ (c)函数

‘conv1 1’, ‘conv2 1’, ‘conv3 1’ and ‘conv4 1’ (d)

‘conv1 1’, ‘conv2 1’, ‘conv3 1’, ‘conv4 1’and ‘conv5 1’ (e)

因而,咱们也能够在CNN的各层中利用风格特征空间所捕获的信息来重构图像。事实上,重塑风格特征就是经过捕获图片的颜色、结构等等生产出输入的图像的纹理的版本。另外,随着层级的增长,图像结构的大小和复杂度也会增长。咱们将这多尺度的表征称为风格表征

本文关键的发现是对于内容和风格的表征在CNN中是能够分开的。也就是说,咱们能够独立地操做两个表征来产生新的、可感知的有意义的图像。为了展现这个发现,咱们生成了一些混合了不一样源图片的内容和风格表征的图片。确切的说,咱们将著名艺术画“星空”的风格,和一张德国拍的照片的内容混合起来了。

咱们寻找这样一张图片,它同时符合照片的内容表征,和艺术画的风格表征。原始照片的总体布局被保留了,而颜色和局部的结构却由艺术画提供。如此一来,原来的那张风景照旧像极了艺术做品。

图2:图中描述的是将照片内容与几种知名艺术品的风格相结合的图像。 经过找到同时匹配照片的内容表征和艺术品的风格表征的图像来建立新的图像。(译者注:下面都是图片的来源,这里就直接省略了)

正如概述所言,风格表征是一个多层次的表征,包含多层神经网络。在图2中展现的图片中,这个风格表征包括了整个神经网络结构的各个层次。风格也能够被定义为更为局部化,由于它只包含了少许的低层结构。这些结构能产生不一样的视觉效果(图3,along the rows)。若符合了较高层级中的风格表征,局部的图像结构会大规模地增长,从而使得图像在视觉上更平滑与连贯。所以,看起来美美的图片一般是来自于符合了较高层级的风格表征。

固然,图片内容和风格不能被彻底分离。当风格与内容来自不一样的两个图像时,这个被合成的新图像并不存在在同一时刻完美地符合了两个约束。可是,在图像合成中最小化的损失函数分别包括了内容与风格二者,它们被很好地分开了。因此,咱们能够平滑地将重点既放在内容上又放在风格上(能够从图3的一列中看出)。将重点过多地放在风格上会致使图像符合艺术画的外观,有效地给出了画的纹理,可是几乎看不到照片的内容了(图3 第一列)。而将重点过多地放在内容上,咱们能够清晰地看到照片,可是风格就不那么符合艺术画了。所以,咱们要不断协调图片的内容与风格,这样才能产生视觉上有感染力的图片。

在这里,咱们提出了一种人工神经系统,它实现了图像内容与风格的分离,从而容许以任何其余图像的风格重铸一个图像的内容。咱们经过创造新的艺术图像来展现这一点,这些图像将几种着名绘画的风格与任意选择的照片的内容相结合。特别地,咱们从在物体识别上训练的高性能深度神经网络的特征响应来获取图像的内容和样式的神经表征。

在以前的研究中,是经过评估复杂度小不少的感官输入来将内容与风格分离的。好比说经过不一样的手写字,人脸图,或者指纹。 而在咱们的展现中,咱们给出了一个有着著名艺术做品风格的照片。这个问题经常会更靠近与计算机视觉的一个分支–真实感渲染。理论上更接近于利用纹理转换来获取艺术风格的转换。可是,这些之前的方法主要依赖于非参数的技术而且直接对图像表征的像素进行操做。相反,经过在物体识别上训练深度神经网络,咱们在特征空间上进行相关操做,从而明确地表征了图像的高质量内容。

神经网络在物体识别中产生的特征先前就已经被用来作风格识别,为的是根据艺术做品的创做时期来为做品分类。分类器是在原始的网络上被训练的,也就是咱们如今叫的内容表征。咱们猜想静态特征空间的转换,好比咱们的风格表征也许能够在风格分类上有更好的表现。

一般来讲,咱们这种合成图像的方法提供了一个全新的迷人的工具用于学习艺术,风格和独立于内容的图像外观的感知与神经表征。总之,一个神经网络能够学习图像的表征,是的图像内容与风格的分离成为可能,是如此激动人心。若要给出解释的话,就是当学习物体识别到时候,神经网络对全部图像的变化都能保持不变从而保留了物体的特性。

方法(Methods)

本文展现的结果是基于VGG网络训练的。他是一种卷积神经网络,在常见的视觉对象识别基准任务上,其表现能够和人类的表现相媲美,所以广受好评并被多方介绍和使用。咱们使用由19层的VGG神经网络(16个卷积和5个池化层)提供的特征空间,而且没有使用到全链接层。这个模型是开源的,而且能够在caffe这个深度学习框架中使用。对于图像合成,咱们发现用均值池化层代替最大值池化层会提升梯度流,而且获得更加完美的结果。因此本案例中咱们用的是均值池化

事实上网络的每一层都定义了一个非线性的过滤器组,它的复杂性随着在网络中所在层的位置而增长。所以一个给定的输入图片 \vec{x} ,在CNN的每层都会被过滤器编码。一个有N_l个不一样的过滤器的隐藏层有N_l个feature map(每一个神经元输出一个feature map)。每一个feature map的大小是M_lM_l是feature map高乘以宽的大小。因此一个层 l 的输出能够存储为矩阵:F^{l} \in \mathcal{R}^{N_{l} \times M_{l}},其中 F_{i j}^{l} 表示在 l 层的位置 j 上的第 i 个过滤器的激活结果。为了可视化不一样层级中的图像信息,咱们在一个白噪声上使用梯度降低来找到另外一个图像,它与原始图像的特征输出结果相符合(白噪声上的图像其实就是定义一个随机的新图,而后经过梯度降低不断迭代,不断更新这个新图)。因此让 \vec{p} \text { and } \vec{x} 做为原始图像和后来产生的图像,P^{l} \text { and } F^{l} 是他们在层 l 各自的特征表征。而后咱们定义两个特征表征之间的平方偏差损失。

\mathcal{L}_{\text {content}}(\vec{p}, \vec{x}, l)=\frac{1}{2} \sum_{i, j}\left(F_{i j}^{l}-P_{i j}^{l}\right)^{2}

这个损失函数的导数是:(针对F求导)

\frac{\partial \mathcal{L}_{\text {content}}}{\partial F_{i j}^{l}}=\left\{\begin{array}{ll}{\left(F^{l}-P^{l}\right)_{i j}} & {\text { if } F_{i j}^{l}>0} \\ {0} & {\text { if } F_{i j}^{l}<0}\end{array}\right.

以上公式中,图像 \vec{x} 的梯度能够经过标准偏差的后向计算传播。所以咱们能够改变初始的随机图像 \vec{x} ,直到它产生了在CNN中与原始图像 \vec{p} 同样的输出结果。在图1中的5个内容重构来自于原始VGG的‘conv1 1’ (a), ‘conv2 1’ (b), ‘conv3 1’ (c), ‘conv4 1’ (d) and ‘conv5 1’(e)

另外,咱们经过计算不一样过滤器输出结果之间的差别,来计算类似度。咱们指望得到输入图片空间上的衍生。这些特征的类似性用 G^{l} \in \mathcal{R}^{N_{l} \times N_{l}} 表示。其中 G_{i j}^{l} 来源于层 l 中矢量的feature map ij

G_{i j}^{l}=\sum_{k} F_{i k}^{l} F_{j k}^{l}

Tips:解释一下上面讲的,就是将艺术画也放进CNN中,好比输出也是14x14x256的一个矩阵,而后将256个14x14的 feature map 两两求类似性,这里是两两相乘,因而会得带256x256的一个特征空间矩阵,G就是这个特征空间

为了生成符合给定艺术做品风格的纹理,咱们对一个带有白噪声的图像(也就是咱们定义的随机的新图)作梯度降低,从而去寻找另外一个图像,使得这个图像符合艺术画的风格表征。而这个梯度降低的过程是经过使得原始图像(艺术画)的Gram矩阵和被生成的图像(新图)的Gram矩阵的距离的均方偏差最小化获得的。所以,令 \vec{a} \text { and } \vec{x} 分别做为原始艺术图像与被生成的图像,A^{l} \text { and } G^{l} 分别做为层 l 的两个风格表征。层 l 对于总损失的贡献是:

E_{l}=\frac{1}{4 N_{l}^{2} M_{l}^{2}} \sum_{i, j}\left(G_{i j}^{l}-A_{i j}^{l}\right)^{2}

而总损失用公式表达为:

\mathcal{L}_{s t y l e}(\vec{a}, \vec{x})=\sum_{l=0}^{L} w_{l} E_{l}

其中 w_l 表示每一层对于总损失的贡献的权重因子。E_t的导数能够这样计算:

\frac{\partial E_{l}}{\partial F_{i j}^{l}}=\left\{\begin{array}{ll}{\frac{1}{N_{l}^{2} M_{l}^{2}}\left(\left(F^{l}\right)^{\mathrm{T}}\left(G^{l}-A^{l}\right)\right)_{j i}} & {\text { if } F_{i j}^{l}>0} \\ {0} & {\text { if } F_{i j}^{l}<0}\end{array}\right.

E_l 在低层级的梯度能够很方便地经过标准偏差后向传播计算出来。在图1中5个风格的重塑能够经过知足一下这些层的风格表征来生成: ‘conv1 1’ (a), ‘conv2 1’ (b), ‘conv3 1’ (c), ‘conv4 1’ (d) and ‘conv5 1’(e)

为了生成混合了照片内容和艺术画风格的新图像,咱们须要最小化风格损失与内容损失。因此令\vec{p} 表示内容图片, \vec{a}表示风格图片,那么咱们须要最小化的损失函数是:

\mathcal{L}_{\text {total}}(\vec{p}, \vec{a}, \vec{x})=\alpha \mathcal{L}_{\text {content}}(\vec{p}, \vec{x})+\beta \mathcal{L}_{\text {style}}(\vec{a}, \vec{x})

α和β分别是内容和风格在图像重构中的权重因子。对于在图像2中展现的图片,咱们在’conv4_2‘层匹配到了内容表征,在‘conv1 1’, ‘conv2 1’, ‘conv3 1’, ‘conv4 1’ 和 ‘conv5 1’层匹配到了样式表征(在这些层,w_l=1/5,在其余层w_l=0)。在图2的BCD中,α/β的比值为1 \times 10^{-3},在图二的E,F中,这个比值为1 \times 10^{-4},图3展现了一个结果:即沿着列不断调整内容和风格的损失,相对应的风格表征在下面几个层所发生的变化。这几个层分别是:‘conv1 1’ (A), ‘conv1 1’ and ‘conv2 1’ (B), ‘conv1 1’, ‘conv2 1’ and ‘conv3 1’ (C),‘conv1 1’, ‘conv2 1’, ‘conv3 1’ and ‘conv4 1’ (D), ‘conv1 1’, ‘conv2 1’, ‘conv3 1’, ‘conv4 1’ 和 ‘conv5 1’ (E)。因子 w_l 老是等于1除以具备非零损失权值 w_l 的活动层数。

(参考)Tips:α+β=1。若是α比较大,那么输出后的新图会更多地倾向于内容上的吻合,若是β较大,那么输出的新图会更倾向于与风格的吻合。这两个参数是一个trade-off,能够根据本身需求去调整最好的平衡。论文的做者给出了它调整参数的不一样结果,如图3,从左到右四列分别是α/β = 10^-5, 10^-4,10^-3, 10^-2.也就是α愈来愈大,的确图像也愈来愈清晰地呈现出了照片的内容。

图3:Wassily Kandinsky 的做品 Composition VII 的风格的详细结果。 这些行显示了匹配CNN图层增长子集的样式表示的结果(详见Methods)。咱们发现,当包含来自网络较高层的样式特征时,由风格表征捕获的局部图像结构在尺寸和复杂性上增长。这能够解释为是因为沿成网络处理的结构感觉域的大小和特征复杂性增长。每一列展现了内容和样式重建之间取不一样权重的结果。每列上方的数字表示强调匹配照片内容和艺术品风格之间的比率α/β(详见Methods)。

鸣谢 这项工做由德国国家学术基金会(L.A.G.),伯恩斯坦计算神经科学中心(FKZ 01GQ1002)和德国国际神经科学研究中心(EXC307)(M.B.,A.S.E, L.A.G)资助。

References and Notes

  1. Krizhevsky, A., Sutskever, I. & Hinton, G. E. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems, 1097–1105(2012). URL papers.nips.cc/paper/4824-….
  2. Taigman, Y., Yang, M., Ranzato, M. & Wolf, L. Deepface: Closing the gap to human-level performance in face verification. In Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on, 1701–1708 (IEEE, 2014). URL ieeexplore.ieee.org/xpls/abs_al….
  3. G ̈uc ̧l ̈u, U. & Gerven, M. A. J. v. Deep Neural Networks Reveal a Gradient in the Complexity of Neural Representations across the Ventral Stream. The Journal of Neuroscience 35, 10005–10014 (2015). URL www.jneurosci.org/content/35/….
  4. Yamins, D. L. K. et al. Performance-optimized hierarchical models predict neural responses in higher visual cortex. Proceedings of the National Academy of Sciences 201403112 (2014). URL www.pnas.org/content/ear….
  5. Cadieu, C. F. et al. Deep Neural Networks Rival the Representation of Primate IT Cortex for Core Visual Object Recognition. PLoS Comput Biol 10, e1003963 (2014). URL dx.doi.org/10.1371/jou….
  6. K ̈ummerer, M., Theis, L. & Bethge, M. Deep Gaze I: Boosting Saliency Prediction with Feature Maps Trained on ImageNet. In ICLR Workshop (2015). URL /media/publications/1411.1045v4.pdf.
  7. Khaligh-Razavi, S.-M. & Kriegeskorte, N. Deep Supervised, but Not Unsupervised, Models May Explain IT Cortical Representation. PLoS Comput Biol 10, e1003915 (2014). URL dx.doi.org/10.1371/jou….
  8. Gatys, L. A., Ecker, A. S. & Bethge, M. Texture synthesis and the controlled generation of natural stimuli using convolutional neural networks. arXiv:1505.07376 [cs, q-bio] (2015). URL arxiv.org/abs/1505.07…. ArXiv: 1505.07376.
  9. Mahendran, A. & Vedaldi, A. Understanding Deep Image Representations by Inverting Them. arXiv:1412.0035 [cs] (2014). URL arxiv.org/abs/1412.00…. ArXiv: 1412.0035.
  10. Heeger, D. J. & Bergen, J. R. Pyramid-based Texture Analysis/Synthesis. In Proceedings of the 22Nd Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH ’95, 229–238 (ACM, New York, NY, USA, 1995). URL doi.acm.org/10.1145/218….
  11. Portilla, J. & Simoncelli, E. P.A Parametric Texture Model Based on Joint Statistics of Complex Wavelet Coefficients. International Journal of Computer Vision 40, 49–70 (2000). URL link.springer.com/article/10.….
  12. Tenenbaum, J. B. & Freeman, W. T. Separating style and content with bilinear models. Neural computation 12, 1247–1283 (2000). URL www.mitpressjournals.org/doi/abs/10.….
  13. Elgammal, A. & Lee, C.-S. Separating style and content on a nonlinear manifold. In Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the 2004 IEEE Computer Society Conference on, vol. 1, I–478 (IEEE, 2004). URL ieeexplore.ieee.org/xpls/abs_al….
  14. Kyprianidis, J. E., Collomosse, J., Wang, T. & Isenberg, T. State of the ”Art”: A Taxonomy of Artistic Stylization Techniques for Images and Video. Visualization and Computer 14Graphics, IEEE Transactions on 19, 866–885 (2013). URL ieeexplore.ieee.org/xpls/abs_al….
  15. Hertzmann, A., Jacobs, C. E., Oliver, N., Curless, B. & Salesin, D. H. Image analogies. In Proceedings of the 28th annual conference on Computer graphics and interactive techniques, 327–340 (ACM, 2001). URL dl.acm.org/citation.cf….
  16. Ashikhmin, N. Fast texture transfer. IEEE Computer Graphics and Applications 23, 38–43(2003).
  17. Efros, A. A. & Freeman, W. T. Image quilting for texture synthesis and transfer. In Proceedings of the 28th annual conference on Computer graphics and interactive techniques, 341–346 (ACM, 2001). URL dl.acm.org/citation.cf….
  18. Lee, H., Seo, S., Ryoo, S. & Yoon, K. Directional Texture Transfer. In Proceedings of the 8th International Symposium on Non-Photorealistic Animation and Rendering, NPAR ’10, 43–48 (ACM, New York, NY, USA, 2010). URL doi.acm.org/10.1145/180….
  19. Xie, X., Tian, F. & Seah, H. S. Feature Guided Texture Synthesis (FGTS) for Artistic Style Transfer. In Proceedings of the 2Nd International Conference on Digital Interactive Media in Entertainment and Arts, DIMEA ’07, 44–49 (ACM, New York, NY, USA, 2007). URL doi.acm.org/10.1145/130….
  20. Karayev, S. et al. Recognizing image style. arXiv preprint arXiv:1311.3715 (2013). URL arxiv.org/abs/1311.37….
  21. Adelson, E. H. & Bergen, J. R. Spatiotemporal energy models for the perception of motion. JOSA A 2, 284–299 (1985). URL www.opticsinfobase.org/josaa/fullt….
  22. Simonyan, K. & Zisserman, A. Very Deep Convolutional Networks for Large-Scale Image Recognition. arXiv:1409.1556 [cs] (2014). URL arxiv.org/abs/1409.15…. ArXiv: 1409.1556.
  23. Russakovsky, O. et al. ImageNet Large Scale Visual Recognition Challenge. arXiv:1409.0575 [cs] (2014). URL arxiv.org/abs/1409.05…. ArXiv:1409.0575.
  24. Jia, Y. et al. Caffe: Convolutional architecture for fast feature embedding. In Proceedings of the ACM International Conference on Multimedia, 675–678 (ACM, 2014). URL dl.acm.org/citation.cf….
相关文章
相关标签/搜索