博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
A Neural Algorithm of Artistic Style
阅读量:6719 次
发布时间:2019-06-25

本文共 1461 字,大约阅读时间需要 4 分钟。

本系列文章由
@yhl_leo
出品,转载请注明出处。
文章链接:


1. 资源

  • Paper:
  • TensorFlow version in GitHub:
  • Caffe version in GitHub:
  • Torch version in GitHub:
  • DeepPy version in GitHub:

2. 论文概述

architecture
图 1

这是2015年的一篇论文,作者首次提出使用卷积神经网络生成具有人工艺术风格的作品。作者认为,卷积神经网络中的卷积层可以理解为收集图像特定特征的滤波器集(filters),即生成了输入图像各种版本滤波结果,把普通影像重构成具有艺术风格的作品,既需要保持普通图像内容布局上保持不变,又要使其具有与参考艺术作品具有相同的风格,此分别为文中所述的content reconstructions 和 style reconstructions.

作者发现,较深层的卷积特征能获取图像高级(high-level)的、目标级的内容信息以及在原图像上的位置信息,但是却不能约束准确的像素重构,也就是详细的像素信息丢失(如图 1,content reconstructions 的 d,e);相反地,浅层的卷积特征却能很容易的生成准确的像素值(如图 1,content reconstructions 的 a,b,c),因此,作者使用较深层的卷积进行内容重构,实验中是在relu4_2上进行content representation.

在风格化的问题上,为了表示参考艺术作品的风格,作者使用特征空间获取纹理信息。这一特征空间基于卷积神经网络的各个卷积阶段得到的特征,它由不同卷积特征图之间的相关性构成。通过引入卷积层之间的相关性,作者获得了对原图稳定的,多尺度的表示,能够得到参考艺术作品的纹理信息(不包含全局的排布信息)。

因此,作者的思路非常简单,通过输入原图,在较深层的卷积层中得到的特征进行图像内容约束,使用参考艺术作品,在卷积不同阶段的卷积特征学习得到图像纹理,进行纹理约束,从而优化得到最终结果。


3. 论文细节

这里写图片描述
图 2

图 2展示了算法的约束简图,其中包含两个主要约束:content constrain 和 style constrain。

作者使用的是, 包含16个卷积层(分为5个卷积阶段),每个阶段末尾都有 pooling 层,全连接层被抛弃掉,另外Pooling阶段使用average pooling。

  • content loss:

    loss-content
    Fl,Pl 分别是 xx,pp图像在卷积层l上对应的卷积特征响应, FlRNl×Ml, Flij是卷积层l的第i个卷积在j位置上激活值,Plij。则,在该层上的梯度为:
    derivative-content

  • style loss:

    计算不同滤波响应之间的相关性,表示在 Gram 矩阵中:
    gram-matrix
    Al,Gl分别为 aa,xx 图像在卷积层l上对应的卷积特征响应,通过使得两者的差方和最小,作为约束调整图像风格:
    style-loss
    因此,风格的损失代价为:
    style-loss2
    即,使用多层的卷积特征,进行整体约束,(其中conv1_1, conv2_1, conv3_1, conv4_1conv5_1wl = 1/5, 其余层wl = 0)。梯度很容易求导为:
    dev

  • total loss:

    total
    其中 α/β 被设置为 1e−31e−4.


4. 实验结果

论文以及开源代码中具有实验结果,可自行查看或测试,这里不贴出。

转载于:https://www.cnblogs.com/hehehaha/p/6332106.html

你可能感兴趣的文章
js中的文档模式-document.compatMode
查看>>
使窗体拥有透明效果的API
查看>>
拦截器方法:自动加载类__autoload()
查看>>
C结构体工具DirectStruct(综合示例一)
查看>>
asm文件夹在那里
查看>>
kubernetes的架构设计
查看>>
Android 剪裁后 onActivityResult 不调用
查看>>
我们为何需要重构代码?
查看>>
APT攻击分析
查看>>
php--------删除一个路径下的所有文件夹和文件
查看>>
程序员的圣诞礼物:计算机寓言之秋
查看>>
Erlang shell 常用编辑指令
查看>>
Android上传文件到PC的简单实例
查看>>
Spring配置文件applicationContext.xml(2)配置详解
查看>>
Mysql 关键字及保留字
查看>>
Gearman及python客户端安装和简单试用
查看>>
何必那样拼命呢?能得到,得不到的,又怎样?!
查看>>
ubuntu 搜索域 访问域不成功的解决办法
查看>>
windows7下 python2.7 django1.62 安装
查看>>
Extjs改变行的的颜色
查看>>