【超分辨率】Deep Back-Projection Networks For Super-Resolution

文章名称:《Deep Back-Projection Networks for Super-Resolution》
作者: Muhammad Haris, Greg Shakhnarovich and Norimichi Ukita

这篇文章是CVPR 2018年的文章,相较同时录用的《Residual Dense Network for Image Super-Resolution》,本文章的创意非常精彩,而非一味的搭积木。下面我将结合自己的理解和文章的大意阐述下对这篇文章的想法。

摘要

作者认为往期的deep super resolution networks通常是先学习一个特征,在通过network强大的non-linear mapping 将LR space 映射到 HR space。而本文认为这种操作可能对LR和HR图像之间的mutual dependencies挖掘的不是那么的有效。因此,作者构建了一个不断相互上采样及下采样阶段的网络进行误差反馈,有种类似于 迭代反投影 算法的味道,从而将效果达到了state-of-the-art.

Related work

目前为止,超分辨率网络大概有下面三种情形:

一、Predefined upsampling


这里写图片描述

这种算法需要进行预插值来使得输入及输出的size 统一。
这也起源于SRCNN (Dong et.al),Dong 认为将输入输出的feature maps 的size 设置成一致,将有利于进行非线性映射。否则的stride需要设置为分数stride,这将为带来很多不便之处。
然而这种操作往往会使得计算量的增大。

二、Single upsampling


这里写图片描述

观察到上面这种结构所带来的计算量的增加,single upsampling则直接对LR Image进行处理,而非pre-upsamplde 的 Bicubic输入图像。这将大大减少计算量。(下面两种典型算法)
第一种: deconvlution layer: 代表FSRCNN, Dong et,al
第二种: sub-pixel convolution layer: 代表:ESPCN, twitter

三、Progressive upsampling


这里写图片描述

这种结构结合上面的网络结构,能够在每个阶段progress 进行上采样,这种网络结构应对与upscaling factor 为x4,x8时,会带来很好的收益。
代表作: LapSRN

本文结构

本文提出了第四种架构:


这里写图片描述

便是通过不断的上下采样,进行error feedback来矫正reconstruction error。

1)、Projection units

up-projection unit:


这里写图片描述

算法描述如下:


这里写图片描述

对比一下Iterative Back-projection
Assume X为高分辨率图像, Y为低分辨率图像,D为降采样算子, H为模糊算子


X = argmin ||DHX-Y||^2
X(t+1) = X(t) - FTDT(DFX-Y)

在传统算法中,迭代反投影算法往往需要对H模糊算子进行估计。
上面两种算法基本一致。

up-projection unit:


这里写图片描述

算法描述如下:


这里写图片描述

2)、Dense Projection units

D-DBPN 通过结合DenseNetwork,进行特征公用:


这里写图片描述

本文实验设置

在本文网络结构中,作者声明了filter size 在projection unit is various with respect to the scaling factor。
For 2x enlargement, 作者使用了 6x6 的 convolution layer with 2 striding and 2padding。
For 4x enlargement, 作者使用了 8x8 的 convolution layer with 4striding and 2 padding。
For 8x enlargement, 作者使用了 12x12 的 convolution layer with 8 striding and 2 padding。

那么为什么这么设置呢?
我们知道 feature map在convolution layer后的size 和 conv的设置有关
Assume Input image is H x W , filter size: F, padding : F, stride S
则输出为:
H ’ = (H - F + 2P)/S+1
For 2x enlargement 代入上述参数可以发现:
H ’ = (H - 6 + 2*2)/2+1 = H/2

关于训练集

DIV2K, Flickr, and ImageNet dataset
我们可以看到其训练集相当的大,远远大于之前的291image

本文实验结果

1)、数值指标:
这里写图片描述

2)、视觉效果:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/shwan_ma/article/details/79611869
今日推荐