SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)…你都掌握了吗?一文总结超分辨率分析必备经典模型(三)(1)

简介: SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)…你都掌握了吗?一文总结超分辨率分析必备经典模型(三)

机器之心专栏

本专栏由机器之心SOTA!模型资源站出品,每周日于机器之心公众号持续更新。 本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 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)

您正在阅读的是其中的第 3 期。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。

第 1 期回顾:SRCNN、DRCN、FSRCNN、ESPCN、SRGAN、RED…你都掌握了吗?一文总结超分辨率分析必备经典模型(一)

第 2 期回顾:VDSR、DRRN、LapSRN、RCAN、DSRN…你都掌握了吗?一文总结超分辨率分析必备经典模型(二)


本期收录模型速览

模型 SOTA!模型资源站收录情况 模型来源论文
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模型。



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


相关文章
|
PyTorch 算法框架/工具
Bert模型之unable to parse config.json as a URL or as a local path错误解决方案
Bert模型之unable to parse config.json as a URL or as a local path错误解决方案
1292 0
Bert模型之unable to parse config.json as a URL or as a local path错误解决方案
|
机器学习/深度学习 编解码 算法
SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)…你都掌握了吗?一文总结超分辨率分析必备经典模型(三)(2)
SFT-GAN、CSRCNN、CSNLN、HAN+、Config (f)…你都掌握了吗?一文总结超分辨率分析必备经典模型(三)
321 0
|
存储 Java 数据安全/隐私保护
|
算法 安全 Java
微服务(四)-config配置中心的配置加解密
微服务(四)-config配置中心的配置加解密
|
JavaScript
Vue3基础(19)___vite.config.js中配置路径别名
本文介绍了如何在Vue 3的Vite配置文件`vite.config.js`中设置路径别名,以及如何在页面中使用这些别名导入模块。
757 0
Vue3基础(19)___vite.config.js中配置路径别名
|
移动开发 JavaScript 前端开发
UniApp H5 跨域代理配置并使用(配置manifest.json、vue.config.js)
这篇文章介绍了在UniApp H5项目中处理跨域问题的两种方法:通过修改manifest.json文件配置h5设置,或在项目根目录创建vue.config.js文件进行代理配置,并提供了具体的配置代码示例。
UniApp H5 跨域代理配置并使用(配置manifest.json、vue.config.js)
|
JSON 前端开发 JavaScript
vue.config.js配置详解
【8月更文挑战第16天】vue.config.js配置详解
925 1
vue.config.js配置详解
|
JavaScript 前端开发 应用服务中间件
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
839 0
|
前端开发 JavaScript
vite vue3 config配置
【10月更文挑战第5天】
762 0
|
存储 消息中间件 Java
Java一分钟之-Spring Cloud Config:外部化配置
【6月更文挑战第8天】Spring Cloud Config提供外部化配置,通过Config Server管理和版本控制微服务配置。本文涵盖Config Server与Client的配置、常见错误、多环境配置、实时更新及使用示例。注意配置服务器URL、环境变量设置、Bus配置以及安全问题。使用Config能提升系统灵活性和可维护性,但要留意日志以确保配置正确和安全。
330 10