SR综述

Deep Learning for Image Super-resolution: A Survey

监督式SR

SR框架

在这里插入图片描述

图二 监督式SR的常用框架结构
先上采样SR
后上采样SR
  • 目的:解决先上采样SR存在的计算效率问题,以及更多的利用DL的能力。
  • 做法:在取代先上采样操作,在低维空间进行mapping操作,然后在最后放置一个端到端可学习的上采样层。
  • 好处:具有巨大计算量的利用非线性卷积进行特征提取的过程只在低维空间发生,分辨率只在最后才扩增,所以对时间的消耗以及对空间的占用都会减小,也会加快训练与推理过程。
  • 同类间区别:主要是区别在可学习的上采样层,CNN结构,学习策略。
  • 缺点:上采样操作只进行一次,在大的缩放因子情况下,学习难度增加;每一种缩放因子就需要对应一种订制的SR,无法适配到多缩放因子(多比例,multi-scale)。
渐进式上采样SR
  • 做法:基于一种叠加CNN的思想,渐进的重建HR图像。在每一阶段,图像上采样到高分辨率,并且使用CNN进行优化。
  • 好处:是将一个任务分解成了多个小task,这不仅降低了学习难度,同时在大缩放因子下表现的更好,也可以适用于多缩放因子,还不带来过多的cost。同时由于这种多阶段的设计,可以整合不同的专用学习策略,用以降低学习难度以及提高最终的结果。
  • 缺点:多阶段模型设计的复杂性,训练难度增加
迭代式上-下采样SR
  • 目的:更好的捕获LR图像和HR图像之间的相互依赖关系
  • 做法:一种称为back-projection的迭代过程被纳入到SR中用来缩小LR-HR之间的关系。迭代的使用这种过程来进行微调,也就是先计算重建的错误,然后用它来调节HR图像的亮度。这种思想被用来构建了DBPN(deep back-projection networks),结合着上-下采样层,可以交替的在上采样层和下采样层之间互相连通,最终使用中间的HR图像的特征图的串联得到最后的结果。
  • 好处:可以获得LR-HR图像之间深层次的关系,并以此获得更好的重建结果
  • 缺点:对back-projection的设计标准并不明确,结构很复杂,需要手动设计。有很大的探索与改进空间。

上采样方法

除了在哪里放置上采样之外,如何进行上采样也很重要。

基于插值的上采样

fig-3-interpolation-based

图三 基于插值的上采样方法。灰色方格是像素点的坐标系,蓝色是初始的像素点,黄色是插值的像素点,绿色是最终的像素点。

图像插值其实就是图像缩放,常见的插值方法有最近邻插值,双线性插值,双三次插值,Sinc and Lanczos重采样等。
1. 最近邻插值
选择距离需要被插值的位置的最近的像素点的值
2. 双线性插值
首先在一个方向轴进行线性插值,然后再另一个轴执行同样操作。虽然每一步都是线性的,但综合来看是一个涉及 2×22×2 的区域,效果更加平滑,但是速度慢点,这种方法也广泛用于构建SR数据集(也就是从HR到LR的生产)以及应用于先上采样SR框架。

总的来说,基于插值的方法都是在原内容上进行的,没有带来更多的信息。同时也有一些隐藏的影响,比如说计算复杂度,噪声的倍增,模糊的结果等。

基于学习的上采样

为了能实现一种可学习的端到端的上采样操作,加入了反卷积层与亚像素层(subpixel layer)
1. 反卷积层

图四 反卷积层

反卷积就是常规卷积的对立。也就是根据卷积操作输出的feature map来预测输入。它通过对图像插入0值以及卷积来提高分辨率。为了简洁说明,图4展示了如何使用 3×33×3 个。
因为反卷积可以以一种端到端的方式扩大图像分辨率同时还保持着与vanilla convolution相兼容的连通模式,所以它在SR中广泛使用。但他很容易在每个轴上造成不平整的叠加(uneven overlapping),两轴相乘的结果就会造成一种在数量级上有差异的独特的像西洋跳棋盘一样的模式。
2. 亚像素层

图五 亚像素层(sub-pixel layer)

也是一种端到端可学习的层。通过卷积生成大量的通道,然后reshape他们,以此来达到上采样。像Fig5一样。过程为:先利用常规卷积对输入通道生成 s2s2 个元素。
亚像素层相对于反卷积层最大的优势就是感受野变大了。这样可以提供更多的上下文信息。但是也存在着反卷积层的不平整的问题,在边界处也会出现问题。(感觉是因为边界处的卷积都只涉及到了同一个像素点,所以卷积出来的效果也是一样)

这两种层在后上采样SR中应用非常广泛。通常用在最后对低维图像进行处理得到HR图像。

网络设计

图6 各类网络设计策略

目前对于学习网络的设计已经是深度学习中很重要的一件事了。在SR领域中,研究人员也尝试了非常多的网络设计策略(比如残差学习,密集连接等)。

残差学习

在何凯明大佬提出学习残差而不是整个彻底的映射之前,SR已经开始广泛的利用残差了。如Fig6.可以看出残差学习可以分为两类:全局式,局部式。
1. 全局式
因为SR任务是一种从一张图到另一张相似图的转变任务,所以没必要全学,只需要学习残差特征即可,这就是全局式的残差学习。这样就避免了复杂的转换,取而代之的是用残差特征去恢复一些细节。因为残差在很多地方是接近于0的,所以这种方式可以降低学习难度。这种方式广泛应用于先上采样SR。
2. 全局式
很像Resnet,可以减轻网络深度过深带来的退化问题。进而提高学习能力,也是广泛应用于SR领域。

以上两种方式都是通过捷径连接和元素级操作实现的。他们之间的不同在于:前一个(全局式)直接把输入图像连接到了输出图像,而后一个(局部式)是将多个不同深度的连接在层与层之间。

循环学习

为了增加感受野以获取更高级的特征,同时又不会过多的增加参数,就使用了循环学习。就是把想用的模块以循环的方式使用多次。比如像图6中的b一样。

DRCN只用了单层的卷积层作为循环单元,就达到了 41×4141×41 大小的卷积核将其压缩为单通道。在这之后,低维的feature map经过双线性插值被上采样到与原图feature map大小一致。通过使用不同的M值,模块可以有效的结合起全局和局部的上下文信息。

小波变换

小波变换是一种高度有效的图像表达方式。它可以把图像分解为定义纹理细节的高频波和包含全局拓扑信息的低频波。Bae等人首次将小波变换与基于SR模型的深度学习结合起来,将插值的LR波的波段作为输入,然后预测对应的HR波段的残差,小波变换被用于拆分LR输入,反小波变换被用于重建HR图像。DWSR和Wavelet-SRNet同样在波域中来进行SR但是有了更加复杂的结构。与以上工作对每个波段单独处理不同的是,MWCNN采用了多层次的小波变换,然后把他们组合起来作为单CNN的输入,这样可以获得他们之间的依赖关系。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值