论文阅读之:Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network
Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network
2016.10.23
摘要:本文针对传统超分辨方法中存在的结果过于平滑的问题,提出了结合最新的对抗网络的方法,得到了不错的效果。并且针对此网络结构,构建了自己的感知损失函数。先上一张图,展示下强大的结果:
Contributions:
GANs 提供了强大的框架来产生高质量的 plausible-looking natural images。本文提供了一个 very deep ResNet architure,利用 GANs 的概念,来形成一个 perceptual loss function 来靠近 human perception 来做 photo-realistic SISR。
主要贡献在于:
1. 对于 image SR 来说,我们取得了新的顶尖效果,降低 4倍的分辨率,衡量标准为:PSNR 和 structure similarity (SSIM)。具体的来说,我们首先采用 fast feature learning in LR space and batch-normalization 来进行训练残差网络。
2. 提出了结合 content loss 和 adversarial loss 作为我们的 perceptual loss。
Method:
首先是几个概念:
super solved image $I_{SR}$: W * H * C ; low-resolution input image $I_{LR}$: rW * rH * C ; high-resolution image $I_{HR}$ : rW * rH * C.
我们的终极目标是:训练一个产生式函数 G 能够预测给定的输入图像 LR input image 的 HR 部分。我们达到这个目的,我们训练一个 generator network 作为一个 feed-forward CNN $G_{\theta_{G}}$ 参数为 $\theta_{G}$ , 此处的 $\theta_{G} = {W_{1:L} ; b_{1:L}}$ 表示一个 L 层 deep network 的 weights 和 biases,并且是通过优化一个 SR-specific loss function $l^{SR}$ 得到的。对于一个给定的 训练图像 $I^{HR_{n}}$ ,n = 1,...,N 对应的低分辨率图像为:$I^{LR}_n$ ,我们优化下面这个问题:
1. Adversarial Network Architecture
产生式对抗网络的训练学习目标是一个 minmax problem :
作者也将图像超分辨看作是这么一个过程。通过 generator 产生一张超分辨图像,使得 discriminator 难以区分。
上图就是本文所涉及的大致流程。
2. Perceptual Loss Function
本文所设计的感知损失函数 是本文算法性能的保证。
2.1. Content Loss
像素级 MSE Loss 的计算为:
这个是最经常使用的优化目标。但是,这种方式当取得较高的 PSNR的同时,MSE 优化问题导致缺乏 high-frequency content,这就会使得结果太过于平滑(overly smooth solutions)。如图2 所示:
我们对此做了改进,在 pre-trained 19-layer VGG network 的 ReLU activation layers 的基础上,定义了 VGG loss 。
我们用 $\phi_{i,j}$ 表示 VGG19 network 当中,第 i-th max pooling layer 后的 第 j-th 卷积得到的 feature map。然后定义 the VGG loss 作为重构图像 和 参考图像之间的欧氏距离 :
其中,$W_{i, j}$ and $H_{i, j}$ 表示了 VGG network 当中相应的 feature maps 的维度。
2.2. Adversarial Loss
在所有训练样本上,基于判别器的概率定义 generative loss :
此处,D 是重构图像是 natural HR image 的概率。
2.3. Regulatization Loss
我们进一步的采用 基于 total variation 的正则化项 来鼓励 spatially coherent solutions。正则化损失的定义为:
3. Experiments
总结 : 本文给出了一种比较直观的利用 产生式对抗网络的方法,结合 GANs 的比较好的应用到 Super-Resolution 上。
主要是利用了 GANs 可以创造新的图像的能力。
论文阅读之:Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network的更多相关文章
- 论文阅读:Single Image Dehazing via Conditional Generative Adversarial Network
Single Image Dehazing via Conditional Generative Adversarial Network Runde Li∗ Jinshan Pan∗ Zechao L ...
- ASRWGAN: Wasserstein Generative Adversarial Network for Audio Super Resolution
ASEGAN:WGAN音频超分辨率 这篇文章并不具有权威性,因为没有发表,说不定是外国的某个大学的毕业设计,或者课程结束后的作业.或者实验报告. CS230: Deep Learning, Sprin ...
- Speech Super Resolution Generative Adversarial Network
博客作者:凌逆战 博客地址:https://www.cnblogs.com/LXP-Never/p/10874993.html 论文作者:Sefik Emre Eskimez , Kazuhito K ...
- Face Aging with Conditional Generative Adversarial Network 论文笔记
Face Aging with Conditional Generative Adversarial Network 论文笔记 2017.02.28 Motivation: 本文是要根据最新的条件产 ...
- 【论文学习】A Fuzzy-Rule-Based Approach for Single Frame Super Resolution
加尔各答印度统计研究所,作者: Pulak Purkait (pulak_r@isical.ac.in) 2013 年 代码:CodeForge.cn http://www.codeforge.cn/ ...
- 《MIDINET: A CONVOLUTIONAL GENERATIVE ADVERSARIAL NETWORK FOR SYMBOLIC-DOMAIN MUSIC GENERATION》论文阅读笔记
出处 arXiv.org (引用量暂时只有3,too new)2017.7 SourceCode:https://github.com/RichardYang40148/MidiNet Abstrac ...
- CSAGAN:LinesToFacePhoto: Face Photo Generation from Lines with Conditional Self-Attention Generative Adversarial Network - 1 - 论文学习
ABSTRACT 在本文中,我们探讨了从线条生成逼真的人脸图像的任务.先前的基于条件生成对抗网络(cGANs)的方法已经证明,当条件图像和输出图像共享对齐良好的结构时,它们能够生成视觉上可信的图像.然 ...
- 生成对抗网络(Generative Adversarial Network)阅读笔记
笔记持续更新中,请大家耐心等待 首先需要大概了解什么是生成对抗网络,参考维基百科给出的定义(https://zh.wikipedia.org/wiki/生成对抗网络): 生成对抗网络(英语:Gener ...
- DeepPrivacy: A Generative Adversarial Network for Face Anonymization阅读笔记
DeepPrivacy: A Generative Adversarial Network for Face Anonymization ISVC 2019 https://arxiv.org/pdf ...
随机推荐
- fifter常见的运用场景
没配置过滤器 package servlet; import java.io.IOException; import javax.servlet.ServletException; import ja ...
- POM.xml 标签详解
pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述了项目:包括配置文件:开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url,项目的依赖性,以 ...
- C++ do{...}while(0)的好处
在开源软件里面经常可以看到这样的写法. #define X(a) do { f1(a); f2(a); } while(0) 1. 主要作用是放在宏定义里面,避免宏带来的语法问题. 比如 #defin ...
- Deep Learning 3_深度学习UFLDL教程:预处理之主成分分析与白化_总结(斯坦福大学深度学习教程)
1PCA ①PCA的作用:一是降维:二是可用于数据可视化: 注意:降维的原因是因为原始数据太大,希望提高训练速度但又不希望产生很大的误差. ② PCA的使用场合:一是希望提高训练速度:二是内存太小:三 ...
- 【转】浅析python 中__name__ = '__main__' 的作用
原文链接:http://www.jb51.net/article/51892.htm 举例说明解释的非常清楚,应该是看到的类似博文里面最简单的一篇: 这篇文章主要介绍了python 中__name__ ...
- javascript内置属性——arguments
arguments是javascript中的内置属性,可以直接调用函数的参数,作用类似Array,但本身并不是数组.这次发现它是为了实现封装函数,将不确定数量的数字乘积.比如function mult ...
- 用JDBC访问MySQL
/* 在数据库中创建一个Employee的类 create table Employee( id int primary key, name varchar(20), age int); */ imp ...
- MFC List Control 控件添加单元格编辑,实现可编辑重写
在实现随机生成四则运算的个人项目中,目前已经完成基本功能,想要把程序变成一个Windows界面的程序.原本以为学习过MFC,应该很快就能完成.但是由于以前用的都是VC6.0,这次用了VS2010,稍微 ...
- 使用NodeJS、GruntCLI遇到的问题
运行环境CMD NODEJS版本v0.8.4 node --version 需求:需要用到Grunt的JS编译功能,各位别笑我. 使用代理 npm config set proxy http://i ...
- SSM框架学习之高并发秒杀业务--笔记1-- 项目的创建和依赖
在慕课网上看了Java高并发秒杀API视屏后,觉得这个案例真的让我学到了很多,现在重新自己实现一遍,博客记下,顺便分析其中的要点. 第一步是项目的创建和依赖 利用Maven去创建工程然后导入Idea中 ...