转自:https://blog.csdn.net/qq_31339017/article/details/76177366

基于稀疏表示的图像超分辨率

摘要:本文提出了一种基于稀疏信号表示来实现单幅图像超分辨率重建的新方法。研究图像的统计数据表明,图像块可以表示为选择适当超完备字典的稀疏线性组合形式,通过这种观测报告的启发,我们寻求一种对低分辨率输入图像块的稀疏表示,然后用此稀疏表示的系数来生成高分辨率输出。压缩感知理论(Compressive
Sensing,CS)指出,一幅图像能够在非常苛刻的条件下由它的一组稀疏表示系数在超完备字典上得到精确重建。通过对低分辨率图像块字典和高分辨率图像块字典的联合训练,我们可以强化低分辨率和高分辨率图像块与之对应真实字典稀疏表示的相似性,从而低分辨率图像块的稀疏表示和高分辨率超完备字典一起作用可以重建出高分辨率图像块,然后由高分辨率图像块连接得到最终完整的高分辨率图像。学习字典对是块对更紧凑的表示,它只需对大量图像块对进行采样,相比传统方法,该方法的计算成本得到显著地降低。稀疏表示的有效性在图像超分辨率重建和人脸幻构(face
hallucination)的特殊情况下均得到了证明。在这两种情况下,我们的算法生成的高分辨率图像具有极大的竞争性,甚至在生成图像的质量上比其他类似的图像超分辨率(SR)方法更有优势。此外,我们这种方法的局部稀疏模型对噪声具有自适应鲁棒性,因此,该算法可以在一个更统一的框架下对有噪声输入的图像进行图像超分辨率处理。

关键词:人脸幻构,图像超分辨率,非负矩阵分解,稀疏编码,稀疏表示
一、前言
超分辨率图像重建是当前非常活跃的一个研究领域,它克服一些低成本成像传感器(例如,手机或监控摄像机)固有分辨率的限制,并且使高分辨率显示器(例如,高清液晶显示器)得到更好的利用。这样的分辨率增强技术也可能在医疗影像和卫星成像中被证明是必不可少的,因其从低质量图像中诊断或分析是非常困难的。传统方法生成超分辨率图像通常需要输入同一场景的多幅低分辨率图像,所以这些方法也需要对亚像素精度进行对准。图像超分辨率重建的过程可以看作是低分辨率图像融合恢复出原始高分辨率图像的逆问题,这一问题是以合理假设或先验知识将高分辨率图像映射成低分辨率图像的观测模型为基础的。SR重建的基本约束,就是对恢复的图像应用相同的生成模型后,本应该重新生成所观测的低分辨率图像,然而,超分辨率图像重建本身是一个病态问题(ill-posed problem),因其低分辨率图像数量不足,病态的登记和未知的模糊算子,以及重构约束的解不唯一,为了更进一步稳定这个病态问题反演的各种正则化方法也不断被提出。
然而,当所需的放大因子变大或可用的输入图像数量很少时,这些基于重建的SR算法性能将急剧降低。在这些情况下,结果可能是过于光滑,丢失重要的高频细节信息。另一类是基于插值的图像超分辨率方法,虽然简单的插值方法如双线性或双三次插值会产生带有振铃和锯齿伪影的过平滑图像,但是利用自然图像先验知识进行插值通常会产生更好的结果。Dai等人提出用背景/前景描述算子来表示局部图像块和重建两个图像块之间的尖锐不连续。Sun等人探索出了针对局部图像结构的梯度轮廓的研究方法并应用于图像超分辨率重建,这种方法在放大图像边缘信息的保留方面比较有效。然而,它们对于模拟实际图像的视觉复杂性却是有限的,对自然图像的精细纹理或渐变,这些方法往往会产生类似水彩画的假象。

图像超分辨率重建技术的第三类方法是基于机器学习的方法,这种方法主要利用低分辨率和高分辨率图像块的先验知识来进行SR重建。【9】提出了针对普通格式图像的基于实例学习的方法,该方法主要是通过置信传播的马尔科夫随机场(MRF)来预测低分辨率到高分辨率图像的重建过程;【10】使用初始简图增强模糊边缘、脊、角点,然而,这和先前方法一样需要巨大的数据库要求和成千上万的高分辨率和低分辨率图像块对,自言而然它的计算复杂度也就很高了;【11】采纳了流行学习局部线性嵌入的方法,推定高分辨率和低分辨率图像块空间存在相似的流行向量,该算法是将低分辨率图像块的局部几何空间映射投影到高分辨率图像块几何空间,从而生成一个线性邻域组合,利用这种方法,更多的图像块模式可以用一些更小的训练集来表示,然而,由于过拟合或欠拟合,K邻域重建方法经常会造成模糊效应。上文中提出了一种基于稀疏编码的自适应选择最相关重建邻域,有效避免了过拟合和欠拟合,但缺点是对大量采样图像块数据库的稀疏编码是比较耗时的。
尽管已经有了很多通用的图像超分辨率重建方法,但是针对特定的领域(比如人脸图像)需要采取特定的SR处理方法。人脸幻构的问题是由Baker和Kanade首次提出来的,然而,基于梯度金字塔的预测并没有直接对人脸先验知识进行建模,像素的单独预测也造成了间断点和假象。Liu等人提出了融合PCA主成分分析和局部图像块建模的“两步走”统计方法,虽然这种方法可以得到比较好的结果,但是整体PCA主成分分析模型得到的平均脸和概率局部图像块模型是很复杂和计算量很大的。WeiLiu等人提出了一种基于TensorPatches和剩余补偿的新方法,虽然该算法可以得到更多的脸部细节,但是它也会相应地产生更多的假象。
本文重点研究低分辨率图像的超分辨率重建问题,类似于上述基于学习的方法,我们也将依靠输入的图像块信息,不同的是,我们是首先对图像块对进行压缩表示,而不是直接处理低分辨率和高分辨率图像块对,这样显著地提高了算法速度。我们的方法主要是受到近期关于稀疏信号表示研究的启发,研究表明高分辨率信号可以由它们低维投影的线性关系重新恢复出来,尽管图像超分辨重建是一个不可能精确恢复的病态问题,但是依靠图像块的稀疏表示,这个逆问题的鲁棒性和有效性可以得到很大的改善。
1.基本思路

二、基于稀疏度的图像超分辨率重建
1.重建约束条件


(2)

2.稀疏先验知识

2.1基于稀疏表示的普通图像SR重建

2.1.1稀疏表示的局部模型

2.1.2全局重建的约束增强

2.1.3全局优化

2.2基于稀疏表示的人脸图像SR重建

人脸图像分辨率增强在监控方面需求较大,由于监控摄像头和感兴趣的目标物体(或人)一般距离较远,与上述普通图像的SR重建不同,人脸图像的结构更加规则,所以更容易处理。对于人脸SR,基本思想:首先利用人脸先验知识将输入低分辨率图像放大到合适的中等分辨率图像,然后利用局部稀疏先验模型来恢复细节。确切的说,过程应该分两步:
(1) 全局建模:利用重建约束恢复出中等分辨率人脸图像,但是这只能在人脸子空间中处理;
(2) 局部建模:利用局部稀疏模型恢复细节。
2.2.1非负矩阵分解(NMF)
人脸SR中最常用的子空间建模方法就是主成分分析(PCA),它主要是选取低维子空间,然而PCA是基于全局的方法,和中值一样会产生平滑脸,并且由于主成分表示会出现负系数,所以PCA重建过程往往也是很难描述的。
尽管人脸是包含无数方差的物体,但是它也是由几个相对独立的部分组成的,比如眼睛,眉毛,鼻子,嘴巴,脸颊和下巴。非负矩阵分解NMF把所给人脸图像信号表示成局部特征的一种相加组合,为了找到合适的基于部分的子空间,非负矩阵分解NMF转换成如下的优化问题:

2.2.2“两步”人脸SR重建

基于最大后验概率(MAP)

算法2(基于稀疏表示的人脸幻构)

三、学习字典对
3.1.单一字典训练


(17)

这是一个带有二次约束的二次规划问题,存在很多优化方案;

3.2. 联合字典训练
给定采样训练图像块对,其中是高分辨率图像块的样本集,是低分辨率图像块的样本集,我们的目的是为了实现对高分辨率和低分辨率图像块学习字典的稀疏表示,对高分辨率图像块的稀疏表示和低分辨率图像块的稀疏表示方法是一样的,同时由于图像SR重建本身是就是一个病态(ill-posed)问题,所以这在实际处理也是比较困难的,高分辨率和低分辨率图像块空间各自的稀疏编码问题分别是:

假如把这些组合起来,用相同的编码来表示高分辨率和低分辨率图像块,表达式可以转换为:

3.3 低分辨率图像块的特征表示
考虑到一阶和二阶导数的简单高效,本文主要使用一阶和二阶导数作为低分辨率图像块的特征,以下是用来提取导数的四个一维滤波器:


(26)

这四个滤波器处理每个图像块可以产生四个特征向量,通过连接组合作为低分辨率图像块的最终表示,我们的实现方法中,这四个滤波器并不是直接作用于采样的低分辨率图像块,而是作用于训练的图像,所以对每一幅低分辨率训练图像,可以得到四个渐变映射,然后从这些渐变映射每个位置提取四个图像块并将其连接成为特征向量。因此,每个低分辨率图像块的特征表示也将其领域信息编码进去,这将更好地预测最终SR重建图像的邻边信息。
实际中,我们发现从低分辨率图像的上采样图像中提取特征效果要好于原始图像。

四、实验结果
4.1 单幅图像的SR重建
4.1.1 普通图像的SR重建

4.1.2 脸部图像的SR重建

4.2 字典大小的影响

4.3 对噪声的鲁棒性

4.4 全局约束的影响

五、总结
本文提出了一种新颖的基于稀疏表示的单幅图像超分辨率重建算法,基本思想是通过对高分辨率超完备字典和低分辨率超完备字典进行联合训练以保证它们稀疏表示系数的一致性,这种方法使得局部和全局的相邻图像块之间的兼容性均得到了加强,实验结果表明这种基于图像块先验知识的稀疏表示对普通图像和人脸图像都有很好的效果。然而,对于图像超分辨重建,接下来的重点研究问题是对自然图像块确定最优的字典大小,并将其与压缩感知的理论更加紧密地联系起来,利用其找到合适的图像块大小和训练字典对的合适方法。
附:由于博客上传图片容量大小的限制,论文的部分实验结果图片本未放上来。

基于稀疏表示的图像超分辨相关推荐

  1. 【项目实战课】基于Pytorch的SRGAN图像超分辨实战

    欢迎大家来到我们的项目实战课,本期内容是<基于Pytorch的SRGAN图像超分辨实战>.所谓项目实战课,就是以简单的原理回顾+详细的项目实战的模式,针对具体的某一个主题,进行代码级的实战 ...

  2. code epi 光场_一种基于EPI的光场图像超分辨的方法与流程

    本发明属于计算机数字图像处理技术领域,具体涉及一种基于epi的光场图像超分辨的方法. 背景技术: 在实际生活中,我们身边的物体和场景都是三维的.传统的相机只能采集到空间光线的强度信息,丢失了光线的方向 ...

  3. 【阿里云课程】如何基于GAN完成人脸图像超分辨任务

    大家好,继续更新有三AI与阿里天池联合推出的深度学习系列课程,本次更新内容为实践课中的一节,这也是本课程系列最后的一个实践课,介绍如下: GAN超分辨实践 本次课程是阿里天池联合有三AI推出的深度学习 ...

  4. 基于神经网络多项式插值的图像超分辨重构研究-附Matlab代码

    ⭕⭕ 目 录 ⭕⭕ ✳️ 一.引言 ✳️ 二.基于单帧图像的超分辨率重构技术 ✳️ 2.1 最近邻域插值法 ✳️ 2.2 双线性插值法 ✳️ 2.3 双三次插值法(Keys'插值) ✳️ 三.神经网络 ...

  5. FusionNet:基于稀疏雷达点云和RGB图像的深度图补全

    作者:Tom Hardy Date:2020-02-09 来源:FusionNet:基于稀疏雷达点云和RGB图像的深度图补全

  6. CVPR 2019 论文解读 | 基于多级神经纹理迁移的图像超分辨方法 (Adobe Research)

    基于多级神经纹理迁移的图像超分辨方法 超分辨(Super-Resolution)图像恢复旨在从低分辨模糊图像中恢复出高分辨的清晰图像,是计算机视觉中的一个重要任务,在工业界有非常强的应用前景.CVPR ...

  7. 【图像融合】基于稀疏表示多光谱图像融合含Matlab源码

    1 简介 高分辨率的多光谱图像应用广泛,比如变化监测,目标识别,场景解译.通常,商用光学卫星能够同时提供高空间分辨率的全色图像和低分辨率的多光谱图像.物理条件的限制使得单一传感器无法获得高质量的多光谱 ...

  8. 【每周CV论文】初学深度学习图像超分辨应该要读的文章

    欢迎来到<每周CV论文>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的. 图像超分辨是一个非常实际应用价值的方向,今天给大 ...

  9. 学习笔记之——基于深度学习的图像超分辨率重建

    最近开展图像超分辨率( Image Super Resolution)方面的研究,做了一些列的调研,并结合本人的理解总结成本博文~(本博文仅用于本人的学习笔记,不做商业用途) 本博文涉及的paper已 ...

  10. 分辨率极限-时间分辨率+空间分辨率和图像超分辨重建技术

    计算机视觉工作者们,总是希望能"看清"繁华世界的每个像素点,但是却发现分辨率的极限,是他们绕不过去的坎.今天就来和大家聊一聊分辨率以及超分辨图像重建 参考:https://mp.w ...

最新文章

  1. 使用curl下载上传ftp
  2. [树形dp] Jzoj P1046 寻宝之旅
  3. .Net中的AOP系列之《AOP实现类型》
  4. 深圳店匠笔试题-4.01
  5. 推荐系统——Wide Deep
  6. java查看 被应用_java – 如何查看应用程序正在使用的当前堆大小?
  7. 【flink】Flink 1.12.2 源码浅析 : yarn-per-job模式解析 yarn 提交过程解析
  8. 法语:世界上最有辨识度的语言
  9. 【2021团体程序设计天梯赛】L1部分(PTA,L1-073到L1-080)题解代码
  10. Python数据结构与算法(3.1)——栈
  11. AngularJS学习之旅—AngularJS 事件(十四)
  12. Java图书管理系统(代码及详解)
  13. Inverse design of 3d molecular structures with conditional generative neural networks(2022论文阅读)
  14. NX二次开发(Python)-UIStyler-选择体和按钮操作
  15. 现代软件工程第三章练习与讨论(补)
  16. linux设置用户密码
  17. -ile “……的“ 形容词后缀
  18. html语言中的双冒号,css单冒号和双冒号用法和区别
  19. ASR系统第二讲 语音识别基础
  20. docker-compose up:ERROR: Encountered errors while bringing up the project.錯誤及解決方式

热门文章

  1. 用USBOOT软件修复U盘
  2. R:导入其他样式数据的方法
  3. 一枚php大马放送~
  4. 《计算机网络 自顶向下方法》(第7版)答案(第四章)
  5. ETL调度工具 Taskctl 作业(组)节点类型概述
  6. 在Linux系统中重现黑客帝国经典画面
  7. windows反馈中心服务器,Windows 管理中心入门
  8. Ultra Edit中编辑并一键运行Ansys命令流
  9. 计算机用户名改成英文,win10如何把用户名改成英文
  10. matlab cftool 最小二乘,【转】最小二乘法与matlab拟合工具箱cftool