Perceptual Losses for Real-Time Style Transfer and Super-Resolution and Super-Resolution 论文笔记

ECCV 2016

摘要: 许多经典问题可以看做是 图像转换问题(image transformation tasks)。本文所提出的方法来解决的图像转换问题,是以监督训练的方式,训练一个前向传播的网络,利用的就是图像像素级之间的误差。这种方法在测试的时候非常有效,因为仅仅需要一次前向传播即可。但是,像素级的误差 没有捕获 输出和 gt 图像之间的 感知区别(perceptual differences)。

  与此同时,最近的工作表明,高质量的图像可以通过 perceptual loss function 来生成,不依赖于像素之间的差别,而是 高层图像特征之间的差别。图像正是基于这种特征之间的 loss 进行训练的。这种方法可以产生高质量的图像,但是速度却很慢,因为需要解决一个优化问题。

  本文中,我们将两者的优势进行结合,训练一个前向传播的网络进行图像转换的任务,但是不用 pixel-level loss function,而采用 perceptual loss function。在训练的过程中,感知误差 衡量了图像之间的相似性,在测试的时候可以实时的进行转换。

网络的训练:

  网络主要由两个部分构成:一个是 image transformation network 一个是 loss network 用来定义 loss function。图像转换网络 是一个残差网络,它将输入图像转换为输出图像 y^。每个损失函数计算一个 scalar value 衡量输出图像和目标图像之间的不同。图像转换网络 是通过 SGD 进行训练的,利用加权的损失函数,如下所示:

  

  为了解决 per-pixel losses 的缺陷,并且允许我们的 loss function 可以更好的衡量 感知和语义的区别,我们从最近的通过优化来产生图像得到了启发。关键点在于:这些方法用到的网络已经是学习到编码感知和语义信息,这些网络都是在分类的数据集上进行训练后的。我们所以就用这些网络来固定的作为 loss network 来定义我们的损失函数。

  刚开始看那个流程图的时候,比较糊涂的是两个 target,$y_c$ 和 $y_s$ 。其实是这样子的:

  对于每一个图像 x ,我们有一个 content target $y_c$ 和 一个 style target $y_s$。

  

  对于 style transfer 来说,the content target $y_c$ 是输入图像 x,the output image y^ 应该 结合 the content x = $y_c$ 和 $y_s$ 的 style 。

  

  对于 超分辨来说,输入图像 x 是一个低分辨率的图像,the content target $y_c$ 是一个 gt 高分辨率的图像,style reconstruction loss 没有用到。对于一种超分辨的因子,我们就训练一种网络。


  实验结果:

  

Perceptual Losses for Real-Time Style Transfer and Super-Resolution and Super-Resolution 论文笔记的更多相关文章

  1. 《Perceptual Losses for Real-Time Style Transfer and Super-Resolution》论文笔记

    参考 http://blog.csdn.net/u011534057/article/details/55052304 代码 https://github.com/yusuketomoto/chain ...

  2. (转) Supercharging Style Transfer

      Supercharging Style Transfer Wednesday, October 26, 2016 Posted by Vincent Dumoulin*, Jonathon Shl ...

  3. fast neural style transfer图像风格迁移基于tensorflow实现

    引自:深度学习实践:使用Tensorflow实现快速风格迁移 一.风格迁移简介 风格迁移(Style Transfer)是深度学习众多应用中非常有趣的一种,如图,我们可以使用这种方法把一张图片的风格“ ...

  4. 神经风格转换Neural Style Transfer a review

    原文:http://mp.weixin.qq.com/s/t_jknoYuyAM9fu6CI8OdNw 作者:Yongcheng Jing 等 机器之心编译 风格迁移是近来人工智能领域内的一个热门研究 ...

  5. Image Style Transfer:多风格 TensorFlow 实现

    ·其实这是一个选修课的present,整理一下作为一篇博客,希望对你有用.讲解风格迁移的博客蛮多的,我就不过多的赘述了.讲一点几个关键的地方吧,当然最后的代码和ppt也希望对你有用. 1.引入: 风格 ...

  6. 项目总结四:神经风格迁移项目(Art generation with Neural Style Transfer)

    1.项目介绍 神经风格转换 (NST) 是深部学习中最有趣的技术之一.它合并两个图像, 即 内容图像 C(content image) 和 样式图像S(style image), 以生成图像 G(ge ...

  7. DeepLearning.ai-Week4-Deep Learning & Art: Neural Style Transfer

    1 - Task Implement the neural style transfer algorithm Generate novel artistic images using your alg ...

  8. 课程四(Convolutional Neural Networks),第四 周(Special applications: Face recognition & Neural style transfer) —— 2.Programming assignments:Art generation with Neural Style Transfer

    Deep Learning & Art: Neural Style Transfer Welcome to the second assignment of this week. In thi ...

  9. Art: Neural Style Transfer

    Andrew Ng deeplearning courese-4:Convolutional Neural Network Convolutional Neural Networks: Step by ...

随机推荐

  1. 【Hadoop学习之一】Hadoop介绍

    一.概念 Hadoop是一个能够对大量数据进行分布式处理的软件框架,充分利用集群的威力进行高速运算和存储. 二.主要模块Hadoop Common:支持其他Hadoop模块的常用实用程序.Hadoop ...

  2. JAVA中异常状况总结

    之前在<会当凌绝顶>这本书中学到过对于异常处理的知识,当时也是根据书上的代码,自己进行编写大概知道是怎么回事儿,王老师给我们上了一节课之后,发现异常处理可以发挥很大的作用.  通过在网络上 ...

  3. QPointer,QSharedPointer,QWeakPointer的区别

    QPointer,QSharedPointer,QWeakPointer的区别与使用例子(QSharedPointer类似Delphi里的引用计数,是强引用,而QWeakPointer是弱引用,不影响 ...

  4. js/jquery对特殊字符进行转义防止js注入使用示例

      /** JQuery Html Encoding.Decoding * 原理是利用JQuery自带的html()和text()函数可以转义Html字符 * 虚拟一个Div通过赋值和取值来得到想要的 ...

  5. sparkStreaming插入mysql 必须考虑到实时更新老的key

    原先使用批次提交更新 但数据库无变化,不得不一条一条的插入 公司数据量不大  还未做数据量大的测试 但实时更新是可以的 关键sql : insert into area_user_amt (date, ...

  6. MyEclipse配置默认自带的Java代码格式化

    1.配置注释一大段代码块后,格式化代码,已经注释的代码仍然保持原样 (1)首先,Window -> Prefrences -> Java -> Code Style -> Fo ...

  7. python字符格式化

    使用%格式化字符串 字符串格式化使用格式化操作符即百分号. 在%号的左侧放置一个字符串(格式化字符串),而右侧则放置希望格式化的值. In [17]: name = "wxz" I ...

  8. Python调用大漠插件

    Python版本要用32位的?我去官网下载,太慢了,就在腾讯软件里面下载了一个,结果实验成功 import win32com.client dm = win32com.client.Dispatch( ...

  9. mysql备份与还原-mysqldump备份、mysql与source还原

    以下都以在linux操作系统上的mysql为例 mysqldump备份 mysqldump实际就是将数据库中的数据转化为建库.建表和插入记录的sql语句 1.备份一个数据库 [或其中几个表],不指定表 ...

  10. jQuery操作下拉框的text值和val值

    jQuery操作下拉框的text值和val值 1,JS源码 <select name="select1" id="select1" style=" ...