题目
Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network
摘要
近年来,基于深度神经网络的几种模型在单幅图像超分辨率重建精度和计算性能方面都取得了很大的成功。在这些方法中,通常在重建之前,使用单个滤波器(通常为双三次插值)将低分辨率(LR)输入图像放大到高分辨率(HR)空间。这意味着在HR空间中执行超分辨率(SR)操作。我们证明,这是次优的,并且增加了计算复杂度。在本文中,我们提出了第一种能够在单个K2 GPU上实时1080p视频SR的卷积神经网络(CNN)。为此,我们提出了一种新的CNN体系结构,在LR空间中提取特征映射。此外,我们引入了一个有效的亚像素卷积层,它学习一组尺度扩展滤波器,以便将最终的LR特征映射放大到HR输出中。通过这样做,我们有效地将SR传递途径中的手工双三次滤波器替换为针对每个特征图专门训练的更复杂的放大滤波器,同时还降低了整个SR操作的计算复杂度。我们使用来自公开可用的数据集的图像和视频来评估所提出的方法,并显示出其性能明显更好(+0.15dB用于图像,+0.39dB用于视频),并且比先前基于CNN的方法快一个数量级。
介绍
从它低分辨率(LR)对应部分恢复高分辨率(HR)图像或视频是数字图像处理领域非常感兴趣的课题。这项被称为超分辨率(SR)的任务在许多领域有直接的应用,如HDTV[15]、医学成像[28,33]、卫星成像[38]、人脸识别[17]和监视[53]。全局SR问题假设LR数据是HR数据的低通滤波(模糊)、下采样和噪声版本。由于不可逆低通滤波和子采样过程中出现的高频信息丢失,这是一个高度不适定(病态)的问题。此外,SR操作实际上是从LR到HR空间的一对多映射,该映射可以有多个解,其中确定正确的解是非平凡的(重要的)。许多SR技术的基础的一个关键假设是许多高频数据是冗余的,因此可以从低频分量中精确地重构。因此,SR是一个推理问题,因此依赖于我们所讨论的图像的统计模型。
许多方法假设多个图像可用作具有不同视角的同一场景的LR实例,即具有独特的先验仿射变换。这些可归类为多图像SR方法,并通过用附加信息约束不适定问题并尝试反转下采样过程来利用显式冗余。然而,这些方法通常需要计算复杂的图像配准和融合阶段,其精度直接影响结果的质量。另一种方法是单图像超分辨率(SISR)技术。这些技术试图学习自然数据中存在的隐式冗余,以便从单个LR实例中恢复丢失的HR信息。这通常以图像的局部空间相关性和视频中的附加时间相关性的形式出现。在这种情况,需要重构约束形式的先验信息来限制重构的解空间。
方法
SISR的任务是从给定一张由相应原始HR图像的缩放得到的LR图像来估计HR图像。下采样操作是确定性的且是已知的:为了从产生,我们首先使用高斯滤波器卷积,从而模拟相机的点扩展函数,然后将图像下采样r倍。一般来说,和都有C个颜色通道,因此它们分别表示为大小为H×W×C和rH×rW×C的真值张量。
为了解决SISR问题,在[7]中提出的SRCNN从的放大和内插版本中恢复,而不是从中恢复。为了恢复,使用了3层卷积网络。在本节中,我们提出了一种新颖的网络体系结构,如图1所示,以避免在将馈入网络之前对其进行升级。在我们的体系结构中,我们首先将l层卷积神经网络直接应用于LR图像,然后将亚像素卷积层应用于LR特征映射的放大以产生I SR。
[7] C. Dong, C. C. Loy, K. He, and X. Tang. Image super-resolution using deep convolutional networks. IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI), 2015.
对于一个有L层组成的网络,首先L-1层可以如下描述:
其中分别是学习网络的权值和偏差,是一个大小为的2D卷积张量,其中是l层的特征数量,,是l层的卷积大小。是长度为的向量偏置。非线性函数(或激活函数)应用为智能元素并且固定。最后一层将LR特征图转换为HR图像。
反卷积层
添加反卷积层是从最大值池化max-pooling 和其他图像下采样down-sampling层恢复分辨率的通俗选择。这种方法已经成功地用于可视化层激活以及使用来自网络的高级特征生成语义分割。要证明SRCNN中使用的双三次插值是反卷积层的特殊情况,这一点是微不足道的,正如[24,7]中已经提出的。[50]中提出的反卷积层可以被看作每个输入像素乘以具有步长r的滤波器元件,并且在得到的输出窗口上求和,也称为后向卷积[24]。然而,卷积之后的任何约简(求和)都是昂贵的。
[24] J. Long, E. Shelhamer, and T. Darrell. Fully convolutional networks
for semantic segmentation. arXiv preprint arXiv:1411.4038, 2014.
高效的亚像素卷积层
另一种提升LR图像的方法是,如[24]所述,在LR空间中以的分数步长进行卷积,这可以通过内插、穿孔[27]或反池化[49]从LR空间解集到HR空间,然后在HR空间中以1步长进行卷积来实现。由于在HR空间中发生卷积,这些实现将计算成本增加倍。
[27] C. Osendorfer, H. Soyer, and P. van der Smagt. Image super-resolution with fast approximate convolutional sparse coding. In Neural Information Processing, pages 250–257. Springer, 2014.
[49] M. D. Zeiler and R. Fergus. Visualizing and understanding convolutional networks. In Computer Vision–ECCV 2014, pages 818–833. Springer, 2014.
或者,在LR 空间步长为的卷积中,使用具有权重间隔的大小为的滤波器,将激活卷积中的不同部分。处在像素之间的权重不被激活,不需要计算。激活模式的数目正好是。每个激活模式,根据其位置,最多激活权重。这些图案在滤波器卷积期间根据不同的子像素位置在图像上周期性地激活:,,其中x,y是HR空间中的输出像素坐标。本文提出了一种在时实现上述操作的有效方法:
其中PS是一个周期混排算子,它把张量的元素后移到形状的张量。该操作的效果如图1所示。从数学上讲,这种操作可以用以下方法来描述:
卷积算子具有形状。注意,我们不在最后一层上对卷积的输出应用非线性。很容易看出,当和时,它等价于具有滤波器的LR空间中的亚像素卷积。我们将我们的新层称为亚像素卷积层,我们的网络称为有效亚像素卷积神经网络(ESPCN)。最后一层直接从LR特征映射生成一个HR图像,每个特征映射使用一个放大滤波器,如图4所示。
给定一个训练集由HR图像实例,我们生成相应的LR图像,并且计算重建的像素级均方误差(MSE)作为目标函数以训练网络:
值得注意的是,与HR空间中的缩减或卷积相比,上述周期性混排的实现可以非常快,因为每个操作是独立的,因此在一个周期内可微不足道的并行化。因此,与前向通道中的反卷积层相比,我们提出的层在倍,与卷积之前使用各种形式的放大实现的情况相比快倍。