参与:王灏、hustcxy、吴攀 最近,谷歌发布了一种把低分辨率图像复原为高分辨率图像的方法,参见机器之心文章《》。与最先进的方法相比,这篇论文提出了一种端到端的框架来完成超分辨率任务。它由两个卷积神经网络组成,一个是描述低分辨率图像骨架的优先网络(prior network),一个是用于优化细节特征的调节网络(conditioning network)。这种方法强调了细节特征恢复上的提升,并以概率范式(probabilistic paradigm)的形式提升了其理论。机器之心在本文中对相关研究《Pixel Recursive Super Resolution》的核心算法进行了分析解读,具体将从抽样策略、模型架构和方法分析方面进行叙述。 论文地址:https://arxiv.org/pdf/1702.00783.pdf 相关报道:https://news.ycombinator.com/item?id=13583476 引言&相关工作 超分辨率问题(Super Resolution Problem)的含义在于恢复图像的分辨率。可用的解决方案能够修复和补充细节补丁来重建高分辨率图像。然而,对于原始图像中不存在的缺失特征,则需要恢复模型来生成它们。因此,最佳的超分辨率恢复模型必须考虑对象、视点、照明和遮挡的复杂变化。它还应该能够画出锐利的边缘,并决定图像不同部分中的纹理、形状和图案呈现类型,因此产生逼真的高分辨率图像是非常困难的。 超分辨率问题在计算机视觉研究中具有悠久的历史。有多种可行的方法来恢复高分辨率图像。其中插值方法易于实现且广泛使用,它基本采用的是对所有合理的细节特征值取均值的策略。然而这类方法的缺点也很明显,因为线性模型不能正确表示输入信息和输出结果之间复杂的依赖关系,所以得到的图像往往是模糊的。 为了获得生动合理的图像细节,研究者已经提出了详细的去模糊(de-blurr)方法。该方法类似于词典构造(dictionary construction,一种相当简单而基本的方法),更进一步是可以在 CNN 中提取多个抽象(CNN 层中存在的特征)的滤波器核(filter kernel)的学习层,然后通过测量被插值的低分辨率图像和高分辨率图像间的像素损失来调整网络权重。基本上这种基于多层过滤器的方法的特征层越多,其表现就越好。因此,该 SRResNet 通过从许多 ResNet 模块中学习来实现预期的性能。这篇论文应用了类似的条件网络设计来更好地处理高频特征。 除了设计高频特征模拟外,下面提出的超分辨率网络模型称为 PixelCNN。PixelCNN 旨在生成低分辨率和高分辨率图像之间的先验知识(prior knowledge)。与另一种生成模型 GAN 相比,当训练样本缺乏分布的多样性时,它们都将受到影响。但超参数更改时,PixelCNN 有更高的稳健性。而 GAN 相当脆弱,只需要足够的重复学习就能愚弄一个不稳定的鉴别器,这样的策略是相当棘手的,于是谷歌超分辨率网络萌芽了。参考下图: 图 3:我们提出的超分辨率网络包含了一个调节网络(conditioning network)和一个优先网络(prior network)。其中调节网络是一个 CNN,其接收低分辨率图像作为输入,然后输出 logits——预测了每个高分辨率(HR)图像像素的条件对数概率(conditional log-probability)。而优先网络则是一个 PixelCNN,其基于之前的随机预测进行预测(用虚线表示)。该模型的概率分布的计算是在来自优先网络和调节网络的两个 logits 集之和上作为 softmax operator 而实现的。 端到端模型由两个网络组成:1. 使用 PixelCNN 的优先网络 2. 使用 ResNet 的 Res 块的调节网络。 方法和实验 在后面的章节中,该论文介绍了像素递归超分辨率(pixel recursive super resolution)框架的优势和像素独立超分辨率(pixel independent super resolution)的潜在问题,并在相应数据集上对这些理论进行了验证,比较了自定义度量。 为了说明部署递归超分辨率方法的必要性,本文首先阐述了像素独立超分辨率方法的理论>下一节将演示这样的理论会在条件图像建模中失败。不理想的实验结果促使谷歌的这个递归模型产生。 基本工作流程显示为: 为了模拟超分辨率问题,其概率目标(probabilistic goal)是学习一个参数模型: (责任编辑:本港台直播) |