摘要
我们提出了一种单图像超分辨率(SR)的深度学习方法。我们的方法直接学习低/高分辨率图像之间的端到端映射。映射表示为深卷积神经网络(CNN),该网络将低分辨率图像作为输入,并输出高分辨率图像。我们进一步表明,传统的基于稀疏编码的SR方法也可以看作是一个深卷积网络。但与分别处理每个组件的传统方法不同,我们的方法联合优化了所有层。我们的deep CNN具有轻量级结构,同时展示了最先进的恢复质量,并实现了快速实用的在线使用。

Learning a Deep Convolutional Network for Image Super-Resolution 超分辨开山之作_神经网络


总的来说,这项工作的贡献主要体现在三个方面:

1.我们提出了一种用于图像超分辨率的卷积神经网络。这个网络直接学习低分辨率和高分辨率之间的端到端映射图像,除了优化之外,几乎没有任何前/后处理。

2.我们建立了基于深度学习的SR方法与传统的基于稀疏编码的SR方法之间的关系。这种关系为网络结构的设计提供了指导。

3.我们证明了深度学习在经典的计算机视觉中是有用,对于超分辨率问题,并能达到良好的质量和速度。

主要流程

考虑单个低分辨率图像。我们首先使用双三次插值将分辨率提升到所需的尺寸,这是我们执行的唯一预处理。将插值图像表示为Y。我们的目标是从Y中恢复图像F(Y),该图像尽可能类似于地面真实高分辨率图像X。为了便于表示,我们仍然将Y称为“低分辨率”图像,尽管其大小与X相同。我们希望学习映射F,其概念上包括在三项:

1.块提取和表示:此操作从低分辨率图像Y中提取(重叠)块,并将每个面片表示为一种高维向量。这些向量包括一组特征图,这个数等于向量的维数。

**2.非线性映射:**此操作非线性映射每个高维向量到另一个高维向量。每个映射向量在概念上是一个高分辨率块的表示。这些向量包含另一组特征映射。

**3.重建:**此操作聚合上述高分辨率块表示,以生成最终的高分辨率图像。该图像计算与真实图X相似。

Learning a Deep Convolutional Network for Image Super-Resolution 超分辨开山之作_计算机视觉_02


Loss损失函数

这是通过最小化重建图像F(Y)和相应的真实高分辨率图像X之间的损失来实现的。给定一组高分辨率图像及其相应的低分辨率图像,我们使用均方误差(MSE)作为损失函数:

Learning a Deep Convolutional Network for Image Super-Resolution 超分辨开山之作_稀疏编码_03


实验结合及相关参数指标在英特尔CPU 3.10 GHz和16 GB内存电脑上,我们的方法平均每张图像需要0.39秒。

Learning a Deep Convolutional Network for Image Super-Resolution 超分辨开山之作_计算机视觉_04

更多计算机视觉与图形学相关资料,请关注微信公众号:计算机视觉与图形学实战

Learning a Deep Convolutional Network for Image Super-Resolution 超分辨开山之作_pytorch_05