深度学习应用到图像超分辨率重建

超分辨率技术(Super-Resolution)是指从观测到的低分辨率图像重建出相应的高分辨率图像,在监控设备、卫星图像和医学影像等领域都有重要的应用价值。SR可分为两类:从多张低分辨率图像重建出高分辨率图像和从单张低分辨率图像重建出高分辨率图像。基于深度学习的SR,主要是基于单张低分辨率的重建方法,即Single Image Super-Resolution (SISR)。

1. 单张图像超分辨率重建(SISR)的数学描述

SISR的数学描述可以用一下数学公式进行描述:

(1) H X + N = D B X + N

其中 Y R n 表示低分辨率图像LR, X R m 表示的是高分辨率图像HR, Y R m × n 表示的是观测矩阵,一般情况下m> n,N是额外的噪声。图像超分辨率(SR)重建目的就是从LR中获取HR图像,一般使用最小均方误差进行重建。
(2) X ^ = a r g m i n X Y H X 2 2

在一个无监督的情况下,上述方程可能具有不稳定的解,所以往往需要加入一些正则化项。但是在有监督的情况下,上述方程可以变成:
(3) X ^ = a r g m i n X X H 1 Y 2 2

在这种情况之下 H 1 可以看作是一个上采样操作, S : R n R m 。给一个训练集合 X i 为HR图像,所对应的 Y i 为LR图像,总共有K个样本。重建操作算子可以用以下公式进行表达:
(4) F ^ = a r g m i n F i = 1 K X i F ( S Y i ) 2 2 = a r g m i n F i = 1 K X i F ( Z i ) 2 2

这里 Z R m 表示对Y进行内插生成的LR图像(ILR),F是生成的ILR图像域到HR域的一个映射算子。
由于ILR图像和HR图像在很多区域具有很强的相似性,所以在这里我们利用残差的思想,学习ILR图像到HR-ILR差异之间的映射关系,最后的方程描述如下:
(5) F ^ = a r g m i n F i = 1 K ( X i F ( Z i ) ) Z i 2 2

下图是重建的一般方法:
这里写图片描述

2. SISR常见的一些算法

因为本文针对的是利用深度学习进行图像超分辨率重建,所以一些传统的方法这里也就不介绍了,这里着重介绍一些深度学习方法。SRCNN算是将深度学习运用到超分辨重建的开山之作,后面自己也看了FSRCNN、ESPCN、VDSR、DRCN、 DRRN、 LapSRN、SRDenseNet、SRGAN(SRResNet)、EnhanceNet、EDSR等方法,这里这些方法读者可以去参考这篇博客《从SRCNN到EDSR,总结深度学习端到端超分辨率方法发展历程》[1],上面这些SR方法一部分是利用新的网络进行改进,比如利用了ResNet、GAN、Recursion、DenseNet;或者是提出或者改进一些新的损失函数,比如L2损失、L1损失、Charbonnier损失(一种L1损失的变种)、感受损失、对抗损失、纹理损失等等。这篇文章是作者2017.12提出来的,但是深度学习网络发展层出不穷,往往这个月的state-of-art的效果到了下个月甚至是下周就会被超越,下面可以提供了一个github[2]网站,上面会更新一些最新的图像超分辨率文章和代码。另外也提供一个比较新的图像超分辨率重建综述性文章《Super-Resolution via Deep Learning》[3]

3. 展望

上面的一些图像超分辨率重建仅仅是2017年或者之前的文章,而不是最新的文章,之后的打算是会对CVPR2018[4]、ICLR2018[5]以及Arxiv Sanity Preserver[6]上面一些应用到图像超分辨率重建的文章进行解读,因为做科研实时需要跟进一些新的进展。

参考文献

  1. 从SRCNN到EDSR,总结深度学习端到端超分辨率方法发展历程
  2. Single-Image-Super-Resolution
  3. Super-Resolution via Deep Learning
  4. CVPR 2018 open access
  5. ICLR 2018 Conference Track
  6. Arxiv Sanity Preserver

猜你喜欢

转载自blog.csdn.net/alxe_made/article/details/80684337
今日推荐