因为最近需要研究一下超分辨重构问题,因此将相关工作进行整理,选取了部分论文进行介绍。如有错误,烦请留言指正。如有版权问题,也请联系博主。
已盘点文章
SRCNN(16,PAMI)
VDSR(16,CVPR)
LapSRN(17,CVPR)
SRGAN(17,CVPR oral)
EDSR(17,CVPR workshop)
RDN(18,CVPR)
RCAN(18,ECCV)
ESRGAN(18,ECCV workshop)
图像的超分辨重构技术(Super-Resolution)是指从一张或多张低分辨率的图像中,重构出相应的高分辨率图像。主要分为两类,一是从单张低分辨率图像中重建出高分辨率图像。二是从多张低分辨率图像中重建出高分辨率图像。基于深度学习的SR,主要是基于单张图像的重构方法。其应用领域非常广泛,涉及军事、医学、地理等。
超分辨重构和去噪、去网格、去模糊等问题是类似的。对于一张低分辨图像,可能会有多张高分辨图像与之对应,因此通常在求解高分辨率图像时会加一个先验信息进行规范化约束。在传统的方法中,通常会先学习这个先验信息。而基于深度学习的SR方法,则是通过神经网络直接进行从低分辨图像到高分辨图像的端到端的学习。
接下来开始介绍已有论文的方法。
1、SRCNN
首先贴出论文与代码地址http://mmlab.ie.cuhk.edu.hk/projects/SRCNN.html
SRCNN是一个非常简单的超分辨重构网络,仅有三层。处理流程是
1、得到一张低分辨图像。
2、将得到的低分辨图像使用bicubic算法放大为目标尺寸,作为图像输入。
3、接下来使用卷积生成超分辨图像,并与ground truth进行loss计算。
该网络结构十分简单,仅仅用了三个卷积层。作者将三层卷积的结构解释成与传统SR方法对应的三个步骤。即
- 提取图像特征
- 非线性映射
- 重构图像
作者在讨论网络结构时也做出了一些分析。首先是未使用池化层和全连接层。第二,卷积核大小和数量。大小越大,实验效果越好。数量越多,实验效果越好。第三,网络层数并非越深越好,是由于没有池化和全连接,对于初始参数和学习率非常敏感。
实验结论
1、由于SR问题,问题可能存在无穷多解。以MSE方法得到的是平均解,导致得到的算法结果有些区域看起过于模糊而缺乏应有的细节。因此PSNR值不是唯一的评价指标,可能出现指标数值评估低,但肉眼看着效果更好的现象。因此作者选择了多重指标。
2、RGB三通道进行联合训练效果是最好的。而YCbCr通道下,Cb、Cr通道对性能提升基本无帮助,只基于Y通道的训练效果更好。
2、VDSR
论文全名是Accurate Image Super-Resolution Using Very Deep Convolutional Networks.
代码地址是https://github.com/huangzehao/caffe-vdsr
在现在看来,SRCNN有几个非常显著的问题。
首先网络训练收敛非常慢,第二网络仅能用于单一尺度,第三非常依赖于小图像区域的上下文信息。
而VDSR则是针对这几点问题提出了解决方法。首先更深的网络可以使用较大的感受野,可以充分考虑图像的上下文信息,其次,使用了残差学习和极大的学习率,加速了网络收敛。