ICCV2019 oral:Wavelet Domain Style Transfer for an Effective Perception-distortion Tradeoff in Single Image Super-Resolution
引言
基于低分辨率的图像恢复高分辨图像具有重要意义,近年来,利用深度学习做单张图像超分辨主要有两个大方向:1、减小失真度(distortion, 意味着高PSNR)的图像超分辨,这类方法主要最小化均方误差;2、提高感知质量(perception)的图像。这类方法主要利用GAN来做约束,使得生成的图像和真实的高分辨率图像尽可能符合相同分布。这两大方向存在一种tradeoff,因为通常低失真度(高PSNR)的图像往往感知质量不高,不符合人眼认知,而高感知质量(本文用NRQM指标度量,高NRQM)的图像,用PNSR指标衡量较低。如下图:

当前有工作考虑分别用两个网络训练生成低失真度和高感知质量的图像,再进行插值融合。然而图像的objective quality和perception quality由图像的不同部分影响,如果将目标图像作为整体优化,提高objective quality时,perception quality会下降,反之亦然。因此本文提出一种新的两图像(低失真度和高感知图像)融合策略。本文利用小波变换将图像分解成低频部分和高频部分,低频部分影响objective quality,高频部分影响perception quality.
Motivation(动机)
论文将利用CX算法得到的高分辨图像$A_p$(high perception quality)、EDSR算法得到的高分辨图像$A_o$(high objective quality)、GroundTruth进行Haar小波分解,得到一个低频子带和三个高频自带,并展示它们的直方图,发现$A_o$图像低频部分和GroundTruth对应的低频部分分布很接近,而$A_p$的三个高频子带的分布和GroundTruth对应的高频子带分布很接近。

算法:
将$A_o$分解为 $LL^{o}, LH^{o}, HL^{o}, HH^{o}$, $A_p$分解为$LL^{p}, LH^{p}, HL^{p}, HH^{p}$, 融合后的图像子带$LL^{r}$, $LH^{r}$, $HL^{r}$, $HH^{r}$.算法总体框架如下:

利用LSE网络,以$LL^{o}$作为输入恢复$LL^{r}$,利用WDST网络,以$LH^{o}$,$LH^{p}$,$LH^{r}$作为网络输入,其中$LH^{r}$作为可训练参数(具体细节后面再说)。$HL^{r}$,$HH^{r}$同理可得。
LSE网络如下:

WDST网络如下:

第一部分:重构$LL^{r}$
考虑GroundTruth的$LL^{gt}$子带和$LL^{o}$最相似,直接用$LL^{o}$恢复。利用VDSR网络思想,网络学习$LL^{gt}$和$LL^{o}$的残差。损失函数如下:

其中$LL^{r}$为$LL^{o}$和网络的输出。重构网络为LSE网络。
训练细节:
网络的训练以学习率1e-3,SGD优化算法(动量为0.9,衰减因子1e-4),梯度裁剪完成。
第二部分:重构$LH^{r}$, $HL^{r}$, $HH^{r}$
拿$LH^{r}$举例,用$LH^{o}$和$LH^{p}$融合得到$LH^{r}$.考虑到$LH^{p}$中的小波系数内容比$LH^{o}$的丰富,非0系数更多,期望将$LH^{p}$中的细节小波系数变换到$LH^{o}$中,因此将$LH^{p}$作为风格输入(style input),$LH^{o}$作为内容输入(content input)。不同于传统的风格迁移算法——输入是像素值,这里的输入小波系数,因此首先将小波系数归一化到0-1(值减去最小值,再除以最大值)
损失函数有三个:content loss($L_c$), style loss($L_s$)和$L_1$范数损失(保持重构小波系数的稀疏性)。如下:

其中



这里实际上是基于预训练的VGG作为WDST网络,只有一个参数是可训练的,那就是$LH^{r}$.
训练细节:用的L-BFGS优化算法.$\alpha=1e-3, \omega=0.2, \beta=1, \gamma=1e-5$
实验结果
定量结果(PSNR/NRQM):

定性结果:


对比实验:
1、考虑不同小波分解产生的影响:

根据实验可以看出,用不同小波分解对实验结果影响不大。
2、不同高频子带重构,对最终的影响

可以看出三个高频子带都有贡献,相比于$LH, HL$,$HH$的贡献最小,因为$HH$为对角方向信息,不如$LH, HL$他们携带的信息多。
相关链接
ICCV2019 oral:Wavelet Domain Style Transfer for an Effective Perception-distortion Tradeoff in Single Image Super-Resolution的更多相关文章
- Image Style Transfer:多风格 TensorFlow 实现
·其实这是一个选修课的present,整理一下作为一篇博客,希望对你有用.讲解风格迁移的博客蛮多的,我就不过多的赘述了.讲一点几个关键的地方吧,当然最后的代码和ppt也希望对你有用. 1.引入: 风格 ...
- 项目总结四:神经风格迁移项目(Art generation with Neural Style Transfer)
1.项目介绍 神经风格转换 (NST) 是深部学习中最有趣的技术之一.它合并两个图像, 即 内容图像 C(content image) 和 样式图像S(style image), 以生成图像 G(ge ...
- 课程四(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 ...
- pytorch实现style transfer
说是实现,其实并不是我自己实现的 亮出代码:https://github.com/yunjey/pytorch-tutorial/tree/master/tutorials/03-advanced/n ...
- DeepLearning.ai-Week4-Deep Learning & Art: Neural Style Transfer
1 - Task Implement the neural style transfer algorithm Generate novel artistic images using your alg ...
- Perceptual Losses for Real-Time Style Transfer and Super-Resolution and Super-Resolution 论文笔记
Perceptual Losses for Real-Time Style Transfer and Super-Resolution and Super-Resolution 论文笔记 ECCV 2 ...
- fast neural style transfer图像风格迁移基于tensorflow实现
引自:深度学习实践:使用Tensorflow实现快速风格迁移 一.风格迁移简介 风格迁移(Style Transfer)是深度学习众多应用中非常有趣的一种,如图,我们可以使用这种方法把一张图片的风格“ ...
- 《Perceptual Losses for Real-Time Style Transfer and Super-Resolution》论文笔记
参考 http://blog.csdn.net/u011534057/article/details/55052304 代码 https://github.com/yusuketomoto/chain ...
- [C4W4] Convolutional Neural Networks - Special applications: Face recognition & Neural style transfer
第四周:Special applications: Face recognition & Neural style transfer 什么是人脸识别?(What is face recogni ...
随机推荐
- django入门与实践(续)
完善博客 博客页面设计 页面概要 1.博客主页面 主页面内容 文章标题列表,超链接 发表博客按钮(超链接) 列表编写思路 取出数据库中所有文章对象 将文章对象们打包成列表,传递到前端 前端页面把文章以 ...
- css的div动态水平垂直居中
div动态水平垂直居中,思路如下: (1)先定位.如果相对于距离最近的父元素,用absolute:如果相对于body,用fixed. (2)然后,top和left都设为50%. (3)要居中的di ...
- MySQL起别名
好处: 便于理解 连接查询的时候,如果要查询的字段有重名的情况,使用别名可以区分开来 注意: 如果别名中有特殊符号 # 空格 ... ,需要用 "双引号" 把别名引起来单引号也行, ...
- sql sever登录问题
重启电脑后会发现连不上数据库了 按下win+r:输入cmd.连接你的ip,(telnet 127.0.0.1 xxxx)发现连接不上 正在连接127.0.0.1..无法打开到主机的连接. 在端口 14 ...
- vue引用fastClick后,ios输入框聚焦不灵敏问题
fastClick.prototype.focus = function (targetElement) { targetElement.focus() }
- ASP.NET Core 使用过滤器移除重复代码
USING ACTIONFILTERS TO REMOVE DUPLICATED CODE ASP.NET Core 的过滤器可以让我们在请求管道的特定状态之前或之后运行一些代码.因此如果我们的 ac ...
- 关于Excel,你一定用的到的36个Python函数
从Excel到Python:最常用的36个Pandas函数关于Excel,你一定用的到的36个Python函数 本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据清洗 ...
- vue 项目太大, 导致 javascript heap out of memory
原因: node 环境, 对单个进程的内存是有限制的, 但是现在前端项目太大, 所以我们需要根据当前机器环境, 手动加大node的内存限制 安装包 npm i increase-memory-limi ...
- Bugku-CTF之江湖魔头(学会如来神掌应该就能打败他了吧)
Day39 江湖魔头 200 http://123.206.31.85:1616/ 学会如来神掌应该就能打败他了吧
- Django之form表单操作
小白必会三板斧 from django.shortcuts import render,HttpResponse,redirect HttpRespone:返回字符串 render:返回html页面 ...