新闻  |   论坛  |   博客  |   在线研讨会
SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)…你都掌握了吗?一文总结超分辨率分析必备经典模型(三)-1
机器之心 | 2023-04-23 19:33:47    阅读:275   发布文章

本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 SOTA 的经典模型逐一详解。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。

本文将分 3 期进行连载,共介绍 16 超分辨率任务上曾取得 SOTA 的经典模型。


  • 第 1 期:SRCNN、DRCN、FSRCNN、ESPCN、SRGAN、RED

  • 第 2 期:VDSR、DRRN、LapSRN、RCAN、DSRN

  • 第 3 期:SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)


本期收录模型速览

模型SOTA!模型资源站收录情况模型来源论文
SFT-GANhttps://sota.jiqizhixin.com/project/sft-gan
收录实现数量:3
支持框架:PyTorch
Recovering Realistic Texture in Image Super-resolution by Deep Spatial Feature Transform
CSRCNNhttps://sota.jiqizhixin.com/project/csrcnn
收录实现数量:1
支持框架:PyTorch
Cascade Convolutional Neural Network for Image Super-Resolution
CSNLNhttps://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模型。


图片



1、 SFT-GAN

本文是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个模型实现。

图片

项目SOTA!平台项目详情页
SFT-GAN前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/sft-gan


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客