当前位置: 首页 > 科技观察

谷歌像素递归超分辨率研究:如何消除低分辨率图像马赛克?

时间:2023-03-21 00:26:40 科技观察

最近,谷歌发布了一种将低分辨率图像恢复为高分辨率图像的方法。与最先进的方法相比,本文提出了一个端到端的框架来完成超分辨率任务。它由两个卷积神经网络、一个描述低分辨率图像骨架的先验网络和一个优化细节特征的调节网络组成。这种方法强调细节特征恢复的改进,并以概率范式的形式推进其理论。在这篇文章中,机器之心对相关研究的核心算法进行了分析和解读《Pixel Recursive Super Resolution》,具体从采样策略、模型架构和方法分析等方面进行了分析和解读。论文地址:https://arxiv.org/pdf/1702.00783.pdfIntroduction&relatedwork超分辨率问题(SuperResolutionProblem)的含义是恢复图像的分辨率。可用的解决方案能够修复和补充细节补丁以重建高分辨率图像。但是,对于原始图像中不存在的缺失特征,需要恢复模型来生成它们。因此,最先进的超分辨率恢复模型必须考虑对象、视点、光照和遮挡的复杂变化。它还应该能够绘制锐利的边缘,并确定图像不同部分的纹理类型、形状和图案,因此制作逼真的高分辨率图像非常困难。超分辨率问题在计算机视觉研究中有着悠久的历史。有多种可能的方法来恢复高分辨率图像。其中,插值法实现简单,应用广泛,基本采用对所有合理的细节特征值取均值的策略。但是,这类方法的缺点也很明显,因为线性模型不能正确表示输入信息和输出结果之间复杂的依赖关系,所以得到的图像往往是模糊的。为了获得生动合理的图像细节,研究人员提出了详细的去模糊(de-blurr)方法。这种方法类似于字典构造(一种相当简单和基本的方法),而且它可以提取CNN中多个抽象(CNN层中存在的特征)过滤核学习层,然后通过测量之间的像素损失来调整网络权重插值的低分辨率图像和高分辨率图像。基本上,这种基于多层过滤器的方法具有的特征层越多,它的性能就越好。因此,这个SRResNet通过从许多ResNet模块中学习来达到预期的性能。本文采用类似的条件网络设计来更好地处理高频特征。除了设计高频特征模拟之外,下面提出的超分辨率网络模型称为PixelCNN。PixelCNN旨在生成低分辨率和高分辨率图像之间的先验知识。与另一种生成模型GAN相比,当训练样本缺乏分布多样性时,它们都会受到影响。但是PixelCNN对超参数的变化更加鲁棒。然而,GAN是相当脆弱的,它只需要足够多的重复学习就可以骗过一个不稳定的判别器。这样的策略相当棘手,于是谷歌的超分辨率网络萌芽了。参考下图:图3:我们提出的超分辨率网络由调节网络和先验网络组成。调节网络是一个CNN,它将低分辨率图像作为输入并输出对数——预测每个高分辨率(HR)图像像素的条件对数概率。优先级网络是PixelCNN,它根据先前的随机预测(用虚线表示)进行预测。模型概率分布的计算是作为softmax算子实现的,对来自优先化网络和调节网络的两组logits的总和进行计算。端到端模型由两个网络组成:1.使用PixelCNN的优先级网络2.使用ResNet的Res块的调节网络。方法与实验在接下来的章节中,论文介绍了像素递归超分辨率(pixelrecursivesuperresolution)框架的优势和像素独立超分辨率(pixelindependentsuperresolution)的潜在问题,并在相应的数据集上进行了介绍。这些理论经过测试并与自定义指标进行了比较。为了说明部署递归超分辨率方法的必要性,本文首先介绍了与像素无关的超分辨率方法的理论>下一节证明了此类理论在条件图像建模中的失败。不理想的实验结果促使谷歌提出递归模型。基本工作流程如下所示:为了对超分辨率问题进行建模,其概率目标是学习参数模型:其中x和y分别表示低分辨率和高分辨率图像。一旦我们获得了像素值的调整概率,就可以以高分辨率重建整个图像。我们可以将上述设置应用于数据集,用y*表示真实的高分辨率图像,它可以在数学上表示为目标函数。优化目标是最大化条件对数似然目标,具体如下:关键因素是构建最合适的输出像素值分布。这使我们能够获得具有清晰细节的最生动的高分辨率图像。进行像素无关超分辨率的一种简单方法是假设每个预测像素值y有条件地独立于其他值,因此总概率p(y|x)是每个独立估计的乘积。假设给定的RGB图像有三个颜色通道,每个通道有M个像素。两边同时取对数:如果我们假设估计输出值y是连续的,则在高斯分布模型下,公式(2)可以重构为:其中y_i表示通过卷积神经网络得到的非线性映射输出网络模型,并表示第i个输出像素的估计均值。表示方差,一般是已知的而不是学习的,所以唯一要学习的是均值和估计值之间的L2范数。然后,最大化对数似然(在(1)中表示)可以转化为最小化y和C之间的MSE(均方误差)。最后,CNN能够学习一组高斯参数以获得最佳均值C.对于连续值,我们使用高斯模型,对于离散值,我们使用多项分布来模拟分布(数据集记为D),那么预测概率可以描述为:因此我们的目标是学习从预测模型中得到***的softmax权重是三个通道下K个可能的离散像素值的softmax权重。然而,该论文声称上述独立模型无法处理多模态情况,因此它在某些特定任务(如着色、超分辨率)中的表现不如支持多模态的方法。其次它遵循了MNIST角数据集的实验演示(只有在左上角或右下角定位对象时数字才相同)。图2:上图:图片表示在玩具数据集中创建输入-输出对的一种方法****。底部:在此数据集上训练的几种算法的预测示例。与像素无关的L2回归和交叉熵模型没有表现出多模态预测。当存在多个样本时,PixelCNN输出以每个角的50%概率随机化。参考MNIST实验图,不同方法下的数生成结果不同。像素交叉熵方法可以捕获脆弱的图像,但无法捕获随机双峰性,因此数字对象出现在两个角落。L2回归方法也会发生类似的情况。这最终会在一张高分辨率输出图像中给出两个模糊的数字。只有PixelCNN可以捕获位置信息和清晰的图像信息,这进一步证明了在所提出的模型中使用PixelCNN的优越性。pixel-recursivesuper-resolutionpixel-independentsuper-resolutionmethods在被指出有局限性后,逐渐给出了解释。新理论的目标仍然是最大化给定样本x的对数似然。递归模型部分假设输出像素之间的条件依赖性。***,为了逼近这个联合分布,这个递归方法使用链式法则分解它的条件分布:其中每个输出有条件地依赖于输入和之前的输出像素:然后嵌入CNN的像素递归超分辨率框架(参考之前的架构)可以表述如下:输入x,let表示调节网络,得到一个对数向量,即第i个输出像素的K个可能值的对数。类似地,令表示先前的网络,产生一个由第i个输出像素的对数值组成的向量。该方法联合优化两个网络,更新并通过随机梯度上升获得最高对数似然。即,为了优化(6)中模型预测和离散地面真实标签之间的交叉熵损失,则其成本函数为:其中lse(·)是softmax分母的对数和的指数运算符(log-sum-expoperator),1[k]表示将K维一热指标向量的第k维设置为1。但是,在实验中使用成本函数时,训练的模型往往会忽略调节网络。因此,该范式包含了一个新的损失项,用于衡量调节网络中预测值与真实值之间的交叉熵,表示为:从而得到新的公式:除了定义训练范式外,为了控制样本分布的密度,我们引入了额外的温度参数(temperatureparameter),从而得到贪心解码机制(greedydecodingmechanism):总是选择概率最大的像素值和合适softmax中的样本.因此,将分布P调整为:完成所有理论准备后,本文进入实施阶段。实验在TensorFlow框架下使用8个带有SGD更新的GPU完成。对于调节网络,我们构建了一个前馈卷积神经网络。它使用从一系列ResNet块和转置卷积层获得的8×8RGB图像,同时保持每层32个通道。最后一层使用1×1卷积将通道增加到256×3,并使用得到的结果通过softmax算子预测超过256个可能的子像素值的多项式分布。对于现有网络,通常是PixelCNN,实验中使用了20个门控PixelCNN层,每层32个通道。结果与评估为了验证所提出框架的性能,本文选择了两类对象:人脸和卧室场景。所有训练图像均来自CelebA数据集和LSUN卧室数据集。为了满足网络输入的要求,作者还对每个数据集进行了必要的预处理:裁剪来自CelebA数据集的名人面孔和来自LSUN卧室数据集的中心图像。此外,他们还通过双三次插值将从两个数据集获得的图像调整大小为32×32,然后调整为8×8,以形成训练和评估阶段的输出和输入对。训练后,将循环模型与两个基准网络进行比较:像素独立的L2回归(“回归”)和最近邻搜索(“NN”)。视觉效果如下图所示:观察不同方法之间的结果,可以看出NN方法可以给出清晰的图像,但与真实情况差距还是比较大的。回归模型给出了一个粗略的草图,像素递归超分辨率率方法的性能似乎介于两种基线方法之间。它捕获了一些细节,但并不比其他方法好多少。此外,在不同的温度参数下,结果略有不同,如下图所示:情况。除了传统的测量之外,该结果还涉及到人体识别的研究。表1:顶部:在裁剪后的CelebA测试数据集上从8×8放大到32×32后的测试结果。底部:LSUN卧室。pSNR、SSIM和MS-SSIM测量样本和地面实况之间的图像相似性。一致性表示输入低分辨率图像和下采样样本之间[0,1]尺度上的均方误差(MSE)。%Fooled表示算法样本在众包研究中愚弄人类的常见程度;50%表示最大混乱。从结果表中可以看出,递归模型在pSNR和SSIM测量上表现不佳。虽然文章还引用了另外两个测量来验证。然而,目前在添加合成信息时似乎缺乏很强的说服力,或者可能需要进一步的工作来测试验证。该模型在逃过人眼的百分比方面优于其他方法,因此可以说生成的图像更加逼真。总之,逐像素递归超分辨率方法提出了一个创新的框架来平衡粗略的骨架和细节捕捉。但我个人认为结果并不能有力地表明该模型在恢复低分辨率图像方面真的有效。虽然不同的分辨率设置使方法难以比较,但它确实为人类判断提供了良好的性能。因此,它在未来可能会有很好的工业应用。【本文为栏目组织机器之心原创文章,微信公众号“机器之心(id:almosthuman2014)”】点此查看作者更多好文