英语原文共 15 页
基于深度卷积网络的图像超分辨率
摘要:我们提出了一种单幅图像超分辨率的深度学习方法。我们的方法直接学习低/高分辨率图像之间的端到端映射。该映射表示为深度卷积神经网络(deep tional neural network,CNN),以低分辨率图像为输入,高分辨率图像为输出。我们进一步证明,传统的基于稀疏编码的超分辨率方法也可以看作是一个深度卷积网络。但是与传统的分别处理每个组件的方法不同,我们的方法联合优化所有层。我们的深度卷积神经网络有一个轻量级的结构,但展示了最先进的修复质量,并实现快速的实际在线使用。我们探索不同的网络结构和参数设置,以实现性能和速度之间的权衡。此外,我们将网络扩展到同时处理三个颜色通道,显示出更好的整体重建质量。
关键词:超分辨率;深度卷积神经网络;稀疏编码
1简介
单图像超分辨率(SR)[20]是计算机视觉中的一个经典问题,它的目标是从单幅低分辨率图像中恢复高分辨率图像。这个问题本质上是不适定的,因为任何给定的低分辨率像素都存在多种解决方案。换句话说,它是一个欠定逆问题,其解不是唯一的。通过使用强先验信息约束解的空间,通常可以缓解此类问题。为了学习先验,目前最先进的方法大多采用基于实例的[46]策略。这些方法要么利用相同图像的内部相似性[5]、[13]、[16]、[19]、[47],要么从外部的低分辨率和高分辨率范例对中学习映射函数[2]、[4]、[6]、[15]、[23]、[25]、[37]、[41]、[42]、[47]、[48]、[50]、[51]。基于外部示例的方法可以用于通用图像的超分辨率,也可以设计成适合领域特定任务的方法,即,人脸图像[30],[50],根据提供的训练样本(超分辨率)。
基于稀疏编码的方法[49],[50]是具有代表性的基于外部示例的SR方法之一。此方法涉及解决流程中的几个步骤。首先,从输入图像中密集裁剪重叠的图像块并进行预处理(例如,减去均值和归一化)。然后用低分辨率字典对这些图像块进行编码。将稀疏系数输入高分辨率字典,重建高分辨率图像块。将重叠的重建图像块进行聚合(例如加权平均),得到最终的输出。这个流程被大多数基于外部示例的方法所共享,这些方法特别注意学习和优化字典[2]、[49]、[50],或者构建高效的映射函数[25]、[41]、[42]、[47]。然而,流程中的其余步骤很少在统一的优化框架中进行优化或考虑。
在本文中,我们证明上述流程相当于一个深度卷积神经网络[27](详见3.2节)。基于此,我们想出了一个卷积神经网络,它可以直接学习低分辨率和高分辨率图像之间的端到端映射。我们的方法与现有的基于外部实例的方法有根本的不同,我们的方法没有明确地学习用于对图像块空间建模的字典[41]、[49]、[50]或复制下来用于对图像块空间建模[2]、[4]。这些都是通过隐藏层隐式实现的。此外,图像块的提取和聚集也被表示为卷积层,因此需要进行优化。在我们的方法中,整个SR过程都是通过学习得到的,几乎没有预处理/后处理。
我们命名该模型为超分辨率卷积神经网络(SRCNN)。被提出的SRCNN有一些吸引人的特性。首先,它的结构是故意设计简单。然而,相比之下最先进的基于实例的方法,有着更优越的准确性。图1显示了一个示例的比较。
图1所示。提出的超分辨率卷积神经网络(SRCNN)经过少量的训练迭代就超过了双三次插值的曲线,经过适度的训练就超过了基于稀疏编码的方法(SC)[50]。随着更多的训练迭代,性能可能会进一步提高。4.4.1节提供了更多的细节(Set5数据集的上标度系数为3)。该方法提供了具有视觉上吸引人的重建图像。
第二,通过适当数量的滤波器和层,我们的方法即使在CPU上也可以实现快速实用的实时使用。我们的方法比一些基于实例的方法更快,因为它是完全前馈的,不需要解决任何使用上的优化问题。第三,实验表明,当(i)有更大、更多样化的数据集时,以及(ii)使用更大、更深层次的模型时,网络的恢复质量可以进一步提高。相反,更大的数据集/模型会给现有的基于示例的方法带来挑战。此外,该网络可同时处理三通道彩色图像,提高了超分辨率性能。
总的来说,本研究的贡献主要是在三个方面:
1)我们提出了一种全卷积图像超分辨率神经网络。该网络直接学习低分辨率和高分辨率图像之间的端到端的映射,除了优化之外,几乎没有预处理和后处理。
2)我们建立了基于深度学习的SR方法与传统的基于稀疏编码的SR方法之间的关系。这种关系为网络结构的设计提供了指导。
3)我们证明了深度学习在经典的计算机视觉超分辨率问题中是有用的,并且可以达到良好的质量和速度。
这个工作的一个最初版本是在[11]之前提出的。目前的工作在几个重要的方面添加到最初的版本里。首先,我们通过在非线性映射层中引入更大的滤波器尺寸来改进SRCNN,并通过添加非线性映射层来探索更深层次的结构。其次,我们将SRCNN扩展到同时处理三个颜色通道(无论是YCbCr还是RGB颜色空间)。实验表明,与单通道网络相比,该网络的性能有明显提高。第三,在初始结果中加入了大量新的分析和直观的解释。我们还将原来的实验从Set5[2]和Set14[51]测试图像扩展到BSD200[32](200张测试图像)。此外,我们与许多最近发布的方法进行比较,并确认我们的模型仍然优于使用不同评估指标的现有方法。
2相关工作
2.1图像超分辨率
根据图像先验,单图像超分辨率算法可分为四类:预测模型法、基于边缘的方法、图像统计方法和基于图像块(或基于实例)的方法。这些方法在Yang等人的[46]工作中得到了深入的研究和评价。其中基于实例的方法[16]、[25]、[41]、[47]实现了最先进的性能。
内部基于样本的方法利用自相似特性,从输入图像中生成样本块。它首先在Glasner的工作[16]中被提出,并且几个改进的变体[13]、[45]被提出用来加速实现。基于外部示例的方法[2]、[4]、[6]、[15]、[37]、[41]、[48]、[49]、[50]、[51]从外部数据集学习低/高分辨率补丁之间的映射。这些研究的不同之处是如何学习一个简明字典或多重空间来关联低/高分辨率的图像块,以及如何在这样的空间中执行表示方案。Freeman等人在[14]的开创性工作中,将字典直接表示为低/高分辨率图像块对,在低分辨率空间中找到输入图像块的最近邻(nearest neighbour,NN),并将其对应的高分辨率图像块用于重建。Chang等人在[4]中引入了一种多重嵌入技术来替代最近邻策略。在Yang等人的[49],[50]的工作中,上述最近邻对应关系推进到一个更复杂的稀疏编码公式。提出了核回归[25]、简单函数[47]、随机森林[37]、锚定邻域回归[41]、[42]等映射函数,进一步提高了映射的精度和速度。基于稀疏编码的方法及它的几个改进[41]、[42]、[48]是当今最先进的SR方法之一。在这些方法中,图像块是优化的重点;将图像块提取和聚合步骤视为预处理/后处理,并分别处理。
绝大多数SR算法[2]、[4]、[15]、[41]、[48]、[49]、[50]、[51]专注于在灰度或单通道图像超分辨率上。对于彩色图像,上述方法首先将问题转化为不同的颜色空间(YCbCr或YUV),SR仅适用于亮度通道。也有人尝试同时超分辨率所有的通道。例如,Kim和Kwon[25]以及Dai等人[7]将他们的模型应用于RGB的每个通道,并将它们组合起来产生最终的结果。但是,他们都没有分析不同渠道的SR性能,以及恢复这三个渠道的必要性。
2.2卷积神经网络
卷积神经网络(CNN)可以追溯到几十年前的[27]和深度卷积神经网络最近显示出爆炸式的流行,部分原因是其在图像分类[18]、[26]方面的成功。它们也已经成功地应用于其他计算机视觉领域,如目标检测[34]、[40]、[52]、人脸识别[39]、行人检测[35]。在这个过程中有几个重要性因素的进步:(i)能够在现代强大的gpu上高效地实施训练[26],(ii)修正线性单元(ReLU)的提出[33]使收敛更快,同时还表现得高质量[26],和(iii)容易获得大量的数据(如ImageNet[9])去培训更大的模型。我们的方法也得益于这些进展。
2.3深度学习用在图像恢复
利用深度学习技术进行图像恢复的研究较少。多层感知器(multilayer perceptron,MLP)各层完全连通(与卷积不同),用于自然图像去噪[3]和去遮挡噪声[36]。与我们的工作更密切相关的是,卷积神经网络用于自然图像去噪[22]和去除遮挡图案(污垢/雨)[12]。这些恢复问题或多或少是由去噪驱动的。Cui等人提出在基于内部样本的[16]方法下,将自动编码器网络嵌入到其超分辨率流程中。深度模型不是专门设计为端到端解决方案的,因为级联的每一层都需要对自相似性搜索过程和自编码器进行独立的优化。相反,所提出的SRCNN优化了端到端映射。此外,SRCNN的速度更快。它不仅是一种定量上较优的方法,而且是一种操作上实用的方法。
3卷积神经网络用于超分辨率
3.1简洁陈述
考虑对单个低分辨率图像,我们首先使用双三次插值将其提升到所需的大小,这是我们执行的唯一预处理。让我们用Y表示插值的图像。我们的目标是从单个Y图像通过映射关系F(Y)尽可能相似地恢复到初始的高分辨率图像X。为了便于表示,我们仍然叫Y“低分辨率”的图像,虽然它与X有相同的大小。我们希望学习一个映射F,这个概念包含三个操作:
1)块提取和表示:该操作从低分辨率图像Y中提取(重叠)块,并将每个块表示为一个高维向量。这些向量由一组特征映射组成,特征映射的个数等于向量的维数。
2)非线性映射:这个操作非线性地将每个高维向量映射到另一个高维向量上。每个映射的向量在概念上都是高分辨率图像块的表示。这些向量组成了另一组特征映射。
3)重建:此操作聚合上述高分辨率块,逐块表示以生成最终的高分辨率图像。这幅图像应该类似于真实高分辨率图像X。
我们将展现所有这些操作组合形成一个卷积神经网络。图2描述了网络的概述。接下来我们详细介绍每个操作的定义。
3.1.1块提取和表示
在图像恢复(如一个受欢迎的策略。[1])人口中提取的块,然后由一组pre-trained基如PCA、DCT,哈雾等等代表他们。这个相当于卷积滤波器的图像由一组,这是一个基础。在我们的配方中,我们涉及这些基地的优化的优化网络。在形式上,第一层表示为一个操作:
和分别代表了过滤器和偏差,和“lowast;”表示卷积操作。这里,对应滤波器支持ctimes;times;,其中c是输入图像的通道数量,是一个滤波器的空间大小。直观地说,在图像上使用卷积,每个卷积核的大小是ctimes;times;。输出由特征映射组成。B1是一个维向量,它的每个元素都与一个滤波器相关联。我们在滤波器响应上使用线性整流函数。
3.双立方插值也是一种卷积运算,因此可以表示为卷积层。但是,此图层的输出大小大于输入大小,因此存在小数步幅。为了利用流行的优化实现,如cuda-convnet [26],我们将这个“层”排除在学习之外。
图2所示。给定低分辨率图像Y,RCNN的第一卷积层提取一组特征图。第二层将这些特征映射非线性地映射到高分辨率块表示。最后一层结合空间邻域内的预测以产生最终的高分辨率图像F(Y)。
3.1.2非线性映射
第一层为每个块提取维特征。在第二步操作中,我们将这些维向量中的每一个都映射为维向量。这相当于应用具有1times;1的小空间支持的滤波器。该解释仅对1times;1滤波器有效。但很容易推广到更大的滤波器,如3times;3或5times;5。在这种情况下,非线性映射不在输入图像的块上;相反,它位于特征映射的3times;3或5times;5“块”上。第二层的操作是:
W2包含大小为times;times;的滤波器,并且B2是维。每个输出的维向量概念上的表示是一个高分辨率的块,将用于重建。
可以添加更多卷积层以增加非线性。但这会增加模型的复杂性(一层的times;times;times;参数),因此需要更多的训练时间。我们将通过在4.3.3节中引入额外的非线性映射层来探索更深层的结构。
3.1.3重建
在传统方法中,经常对预测的重叠高分辨率块进行平均以产生最终的完整图像。平均可以被认为是一组特征映射上的预定义滤波器(其中每个位置是高分辨率块的“平均”矢量形式)。出于这一点,我们定义一个卷积层产生最终的高分辨率图片:
这里W3对应于尺寸为times;times;的c滤波器,并且B3是c维向量。
如果高分辨率块的表示位于图像域中(即,我们可以简单地重塑每个表示以形成色块),我们期望滤波器就像平均滤波器一样;如果高分辨率块的表示在某些其他域中(例如,根据某些基础的系数),我们预期W3的行为类似于首先将系数投影到图像域上然后求平均。无论哪种方式,W3都是一组线性滤波器。
有趣的是,虽然上述三种操作都是由不同的直觉驱动的,但它们都导致与卷积层相同的形式。我们将所有三个操作放在一起并形成卷积神经网络(图2)。在该模型中,所有的滤波权重和偏置被优化。尽管整体结构简洁,但我们的SRCNN模型是通过吸取超分辨率领域中显著进展[49],[50]里的经验而精心开发的。我们将在下一节详细介
资料编号:[3424]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。