"); //-->
本文将分 3 期进行连载,共介绍 16 个在超分辨率任务上曾取得 SOTA 的经典模型。
第 1 期:SRCNN、DRCN、FSRCNN、ESPCN、SRGAN、RED
第 2 期:VDSR、DRRN、LapSRN、RCAN、DSRN
第 3 期:SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)
SFT-GAN | https://sota.jiqizhixin.com/project/sft-gan 收录实现数量:3 支持框架:PyTorch | Recovering Realistic Texture in Image Super-resolution by Deep Spatial Feature Transform |
CSRCNN | https://sota.jiqizhixin.com/project/csrcnn 收录实现数量:1 支持框架:PyTorch | Cascade Convolutional Neural Network for Image Super-Resolution |
CSNLN | https://sota.jiqizhixin.com/project/csnln 收录实现数量:2 支持框架:PyTorch | Image Super-Resolution with Cross-Scale Non-Local Attention and Exhaustive Self-Exemplars Mining |
HAN+ | https://sota.jiqizhixin.com/project/han-4 收录实现数量:2 支持框架:PyTorch | Single Image Super-Resolution via a Holistic Attention Network |
Config (f) | https://sota.jiqizhixin.com/project/config-f 收录实现数量:1 支持框架:TensorFlow | One-to-many Approach for Improving Super-Resolution |
图像超分辨率(Super Resolution,SR)是指从低分辨率(Low Resolution,LR)图像中恢复高分辨率(High Resolution, HR)图像的过程,是计算机视觉和图像处理中一类重要的图像处理技术。SR在现实世界中有着广泛的应用,如医疗成像、监控和安全等。除了提高图像感知质量外,SR还有助于改善其他计算机视觉任务。一般来说,超分辨率分析是非常具有挑战性的,而且本身就是一个难题,因为总是有多个HR图像对应于一个LR图像。在已有文献中,研究人员提出了各种经典的SR方法,包括基于预测的方法、基于边缘的方法、统计方法、基于patch的方法和稀疏表示方法等。
近年来,随着深度学习技术的快速发展,基于深度学习的SR模型得到了快速发展,并在SR的各种基准上取得了最先进的性能。各种各样的深度学习方法已经被应用于SR任务,从早期的基于卷积神经网络(CNN)的方法到最近使用的生成对抗网络的SR方法。一般来说,使用深度学习技术的SR方法在以下主要方面有所不同:不同类型的网络架构、不同类型的损失函数、不同类型的学习原理和策略等。
超分辨率分析可以分为视频超分辨率VSR(Video Super Resolution) 和单帧超分辨率SISR(Single Image Super Resolution),本文重点关注单帧超分辨率分析方法。本文聚焦于深度学习技术,回顾SISR中必备的TOP模型。
本文是cvpr2018的图像超分辨率论文,引入了图像的分割掩码作为超分辨率的先验特征条件,即SFT layers。具体的,文章提出了使用先验类别信息来解决超分辨率纹理不真实的问题,就是在超分辨率的合成中使用语义图,语义图的生成使用了图像分割网络。文章探讨了不同分辨率下的语义分割的误差,比较后发现其实高低分辨率图像对于分割的精度影响不大。整个模型的架构如图1。
图1 SFT layer可以方便地应用于现有的SR网络。所有的SFT layer共享一个条件网络。条件网络的作用是从先验中产生中间条件,并将条件广播给所有的SFT layers,以便进一步产生调制参数
如图1,模型有两个输入,一个是低分辨率图像,另一个是分割语义图,分割语义图经过condition network 生成conditions feature map ,值得注意的是整个网络每一层的conditions feature map 都是共享的,而SFT layer是不共享的。这就相当于每隔一个卷积层就有一个conditions 的SFT layer。
SRGAN总体公式如下:
模型可分为生成和鉴别两部分。其中,生成器Gθ由两部分组成:条件网络和SR网络。条件网络将分割概率图作为输入,然后由四个卷积层处理。它生成所有SFT层共享的中间条件。为了避免一个图像中不同分类区域的干扰,通过对所有卷积层使用1×1的核来限制条件网络的感受野。SR网络由16个残差块构建,具有所提出的SFT层,其以共享条件作为输入并学习(γ,β)以通过应用仿射变换来调制特征图。引入Skip connection用于简化深度CNN的训练。通过使用最近邻上采样后跟一个卷积层来上采样特征。上采样操作在网络的后半部分中执行,因此大多数计算在LR空间中完成。
对于鉴别器Dη,应用VGG来逐渐减小空间维度。鉴别器不仅可以区分输入是真的还是假的,还可以预测输入属于哪个类别。
SFT layer 是一个小型的network 用于生成不同层的condition 信息。SFT layer 有两个输入,一个是condition network 的输出conditions,另一个则是上一层的输出F。conditions 计算出γ, β ,继而计算出整个SFT layer的输出,而整个SFT layer又作为下一层的输入。
最后,有两个目标函数,一个是vgg感知loss ,另一个是鉴别器的loss:
当前SOTA!平台收录SFT-GAN共3个模型实现。
SFT-GAN | 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/sft-gan |
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。