【超分辨率】—图像超分辨率(Super-Resolution)技术研究
一、相关概念
1.分辨率
图像分辨率指图像中存储的信息量,是每英寸图像内有多少个像素点,分辨率的单位为PPI(Pixels Per Inch),通常叫做像素每英寸。一般情况下,图像分辨率越高,图像中包含的细节就越多,信息量也越大。图像分辨率分为空间分辨率和时间分辨率。通常,分辨率被表示成每一个方向上的像素数量,例如64*64的二维图像。但分辨率的高低其实并不等同于像素数量的多少,例如一个通过插值放大了5倍的图像并不表示它包含的细节增加了多少。图像超分辨率重建关注的是恢复图像中丢失的细节,即高频信息。 在大量的电子图像应用领域,人们经常期望得到高分辨率(简称HR)图像。但由于设备、传感器等原因,我们得到的图像往往是低分辨率图像(LR)。增加空间分辨率最直接的解决方法就是通过传感器制造技术减少像素尺寸(例如增加每单元面积的像素数量);另外一个增加空间分辨率的方法是增加芯片的尺寸,从而增加图像的容量。因为很难提高大容量的偶合转换率,所以这种方法一般不认为是有效的,因此,引出了图像超分辨率技术。
2.图像超分辨率
图像超分辨率(Image Super Resolution)是指由一幅低分辨率图像或图像序列恢复出高分辨率图像。图像超分辨率技术分为超分辨率复原和超分辨率重建。目前, 图像超分辨率研究可分为 3个主要范畴: 基于插值、 基于重建和基于学习的方法。
超分辨率(Super-Resolution)即通过硬件或软件的方法提高原有图像的分辨率,通过一系列低分辨率的图像来得到一幅高分辨率的图像过程就是超分辨率重建。超分辨率重建的核心思想就是用时间带宽(获取同一场景的多帧图像序列)换取空间分辨率,实现时间分辨率向空间分辨率的转换。
3.与其他图像处理技术的关系
图像修复技术 VS 图像超分辨率技术: 图像修复的目标是恢复一个被模糊或者噪声破坏的图像,但是它不改变图像的尺寸。事实上图像修复和SR复原在理论是完全相关的,超分辨率技术可以看作是第二代图像修复技术,主要区别是图像修复技术在处理后图像中的像素数并不增加。
图像插值 VS 图像超分辨率:图像插值,即增加单幅图像的尺寸。一般的插值并不能恢复LR采样过程中丢失的高频信息,但是图像超分辨率可以,因此图像插值方法不能被认作是SR技术。
图像锐化 VS 图像超分辨率: 图像锐化可以提升高频信息,但仅增强已有的高频成分;超分辨率技术能估计出原始图像中没有表现出来的高分辨率细节。
图像拼接 VS 图像超分辨率: 图像拼接虽然将多幅图像结合成更大的图像,包含了更多的像素,但没有提供更多的细节信息,所以不能算是超分辨率技术。
4.超分辨率技术分类
A.按领域分类
(1)基于频域的方法
主要是傅里叶变换及其逆变换。由于图像细节是通过高频信息反映出来的,所以消除低分辨率图像里的频谱混叠就可以获得更多被掩盖掉的高频信息,从而增加图像细节,提高图像的分辨率。
优点:原理清晰,理论推导方便,计算复杂度较低;
缺点:只适用于空间不变噪声的情况,只能处理图像中仅有整体运动而没有局部运动的情况,难于在处理过程中利用先验信息。
(2)基于空域的方法
空域的方法常利用图像局部的信息进行,增加像素的数量和紧密程度,从而增加图像细节,提高图像的分辨率。
优点:种类多,可将各种退化因素综合考虑,灵活性强;
缺点:设计复杂,计算复杂度较高。
B.根据所用低分辨率图像的数量分类
(1)基于单幅图像的超分辨率(SISR)
输出是单幅图像。 包含:图像放大(图像尺寸或像素的增加)、超分辨率复原(利用点扩散函数和目标的先验知识,在图像系统的衍射极限之外复原图像信息)。
(2)基于多幅图像的超分辨率(MISR)
输出的可以是单幅图像也可以是一个图像系列(常为视频)。其基本前提是通过同一场景可以获取多幅LR细节图像,每一幅LR图像都会为HR图像的复原提供一些不同的信息,如果能够合成这些HR图像,那么SR图像复原是可以实现的。
C.根据技术本身的特点分类
(1)基于重建的超分辨率
基于重建的超分辨率复原方法是对图像的获取过程建立观测模型,然后通过求解观测模型的逆问题来实现超分辨率重建。观测模型描述了成像系统从高分辨率场景 (图像)获取低分辨率观测图像的过程。
从本质上讲,利用单幅或多幅LR观测图像获取HR观测图像是求解观测问题的逆问题,它是一个病态反问题。
关键步骤:配准、重建。 配准是将多幅同一场景的LR图像在空间上进行亚像素精度对齐, 得到高低分辨率图像彼此之间的运动偏移量, 构建观测模型中的空间运动参数。重建是采用不同的先验约束条件 (平滑性、非负性和能量有限性等) 和最优化求解方法进行HR图像的求解。
典型方法:非均匀插值法、迭代反投影法、最大后验概率法(目前实际应用和科学研究中运用最多的一种方法)、凸集投影法。
(2)基于学习的超分辨率
借助预先的训练学习(从数据库)来寻找或建立低分辨率图像与其对应的高分辨率图像之间的映射关系,提取高频信息,从而在给定低分辨率图像的情况下,通过优化方法获得相应的高分辨率图像。
浅层学习:特征提取–>学习–>重建
深度学习:特征提取–>非线性映射–>图像重建
二、基于深度学习的超分辨率重建方法整理
1、SRCNN
Super-Resolution Convolutional Neural Network(PAMI 2016, 代码)
该方法对于一个低分辨率图像,先使用双三次(bicubic)插值将其放大到目标大小,再通过三层卷积网络做非线性映射,得到的结果作为高分辨率图像输出。
PS:推荐使用https://paperswithcode.com/sota了解计算机视觉领域state-of-the-art的方法(SR篇参考如下图):
引用与推荐:
https://github.com/idealo/image-super-resolution
CVPR 2019 | 旷视提出超分辨率新方法 Meta-SR:单一模型实现任意缩放因子
https://www.jianshu.com/u/714ef2c2b866(她有好几篇分析相关paper的文章)
ESRGAN:基于GAN的增强超分辨率方法(附代码解析)(机器之心的PaperWeekly系列都是精品)
从网络设计到实际应用,深度学习图像超分辨率综述(2019.2 最新的综述)
Zoom to Learn, Learn to Zoom(CVPR2019,改进了原始数据集,https://github.com/ceciliavision/zoom-learn-zoom)
【超分辨率】—图像超分辨率(Super-Resolution)技术研究的更多相关文章
- Google Pixel 超分辨率--Super Resolution Zoom
Google Pixel 超分辨率--Super Resolution Zoom Google 的Super Res Zoom技术,主要用于在zoom时增强画面细节以及提升在夜景下的效果. 文章的主要 ...
- 使用深度学习的超分辨率介绍 An Introduction to Super Resolution using Deep Learning
使用深度学习的超分辨率介绍 关于使用深度学习进行超分辨率的各种组件,损失函数和度量的详细讨论. 介绍 超分辨率是从给定的低分辨率(LR)图像恢复高分辨率(HR)图像的过程.由于较小的空间分辨率(即尺寸 ...
- JPEG压缩图像超分辨率重建算法
压缩图像超分辨率重建算法学习 超分辨率重建是由一幅或多幅的低分辨率图像重构高分辨率图像,如由4幅1m分辨率的遥感图像重构分辨率0.25m分辨率图像.在军用/民用上都有非常大应用. 眼下的超分辨率重建方 ...
- 基于稀疏表示的图像超分辨率《Image Super-Resolution Via Sparse Representation》
由于最近正在做图像超分辨重建方面的研究,有幸看到了杨建超老师和马毅老师等大牛于2010年发表的一篇关于图像超分辨率的经典论文<ImageSuper-Resolution Via Sparse R ...
- 图像超分辨率算法:CVPR2020
图像超分辨率算法:CVPR2020 Unpaired Image Super-Resolution using Pseudo-Supervision 论文地址: http://openaccess.t ...
- HMS Core机器学习服务图像超分能力,基于深度学习提升新闻阅读体验
在移动端阅读资讯时,人们对高分辨率.高质量的图像要求越来越高.但受限于网络流量.存储.图片源等诸多因素,用户无法便捷获得高质量图片.移动端显示设备的高分辨率图片获得问题亟待解决.不久前,HMS Cor ...
- 体验SRCNN和FSRCNN两种图像超分网络应用
摘要:图像超分即超分辨率,将图像从模糊的状态变清晰. 本文分享自华为云社区<图像超分实验:SRCNN/FSRCNN>,作者:zstar. 图像超分即超分辨率,将图像从模糊的状态变清晰.本文 ...
- ACNet:用于图像超分的非对称卷积网络
编辑:Happy 首发:AIWalker Paper:https://arxiv.org/abs/2103.13634 Code:https://github.com/hellloxiaotian/A ...
- ASRWGAN: Wasserstein Generative Adversarial Network for Audio Super Resolution
ASEGAN:WGAN音频超分辨率 这篇文章并不具有权威性,因为没有发表,说不定是外国的某个大学的毕业设计,或者课程结束后的作业.或者实验报告. CS230: Deep Learning, Sprin ...
随机推荐
- Django REST framework解析器和渲染器
解析器 解析器的作用 解析器的作用就是服务端接收客户端传过来的数据,把数据解析成自己可以处理的数据.本质就是对请求体中的数据进行解析. 在了解解析器之前,我们要先知道Accept以及ContentTy ...
- C# 中文序列按笔画排序
问题:给定一串含中文的序列,按首字符的笔画数排序 因为默认是按拼音来排序的, 借助Globalization命名空间,包含定义区域性相关信息的类,这些信息包括语言,国家/地区,正在使用的日历,日期.货 ...
- printf的使用和test的使用
1.printf的使用 printf的转义序列 序列 说明 \a 警告字符,通常为ASCII的BEL字符 \b 后退 \c 抑制(不显示)输出结果中任何结尾的换行字符(只在%b格式指示符控制下的参数字 ...
- 【微信小程序】如何获取用户绑定手机号
用户调用wx.login()方法,获取登录用户凭证code wx.login({ success: function(res) { console.log('loginCode', res.code) ...
- react 通过 xlink 方式引用 iconfont
项目中采用 xlink 的方式引用 iconfont 文件,在正常的 html 文件中可以正常引用,但是在 react 下确不可以运行. 经过查找,发现需要更改如下 引入的属性默认为 xlink-hr ...
- linux shell下面的几种proxy方式
设置ALL_PROXY环境变量 export ALL_PROXY=socks5://127.0.0.1:1080 支持socks5 http https 取消 export ALL_PROXY=&qu ...
- JS 中的prototype、__proto__与constructor
我们需要牢记两点: ①__proto__和constructor属性是对象所独有的: ② prototype属性是函数所独有的,因为函数也是一种对象,所以函数也拥有__proto__和construc ...
- vue中如何动态添加readonly属性
动态绑定input的readonly属性 1 <inpu :readonly="status ? false : 'readonly'"> status 为 false ...
- springboot websocket 简单入门
在没有WebSocket时,大多时候我们在处理服务端主动给浏览器推送消息都是非常麻烦,且有很多弊端,如: 1.Ajax轮循 优点:客户端很容易实现良好的错误处理系统和超时管理,实现成本与Ajax轮询的 ...
- T-MAX组--项目冲刺(第二天)
THE SECOND DAY 项目相关 作业相关 具体描述 所属班级 2019秋福大软件工程实践Z班 作业要求 团队作业第五次-项目冲刺 作业正文 T-MAX组--项目冲刺(第二天) 团队名称 T-M ...