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

news2024/11/24 18:47:40

⭕⭕ 目 录 ⭕⭕

  • ✳️ 一、引言
  • ✳️ 二、基于单帧图像的超分辨率重构技术
    • ✳️ 2.1 最近邻域插值法
    • ✳️ 2.2 双线性插值法
    • ✳️ 2.3 双三次插值法(Keys’插值)
  • ✳️ 三、神经网络插值原理
    • ✳️ 3.1 训练阶段:
    • ✳️ 3.2 测试阶段
  • ✳️ 四、实验验证
    • ✳️ 4.1 基于神经网络双线性插值实验验证
    • ✳️ 4.2 基于神经网络Keys’插值(双三次Bicubic)实验验证
    • ✳️ 4.3 基于神经网络三次样条插值(Cubic spline interpolation)实验验证
  • ✳️ 五、参考文献
  • ✳️ 六、Matlab代码获取

✳️ 一、引言

由于多项式插值法重构得到的高分辨率图像会有边缘锯齿现象等现象, 于是研究者们提出了基于学习的超分辨率重构算法, 将目光转向图像外部的可用先验知识, 从内部有限的先验知识局限中走出来。 基于学习的超分辨率重构, 是在深度学习的基础上, 通过算法学习初始图像, 得到外部先验信息, 将大量图像的知识进行集中得到足够的先验信息, 以此作为算法的处理基础, 得到高分辨率图像。

学习重构法是将当前比较热门的机器学习思想引入图像重构, 通过算法模拟人类的认知过程, 归纳高、 低分辨率图像之间的映射关系, 经过训练得到该关系后, 低分辨率图像输入时就会通过该映射形成对应的高分辨率图像, 完成超分辨率重构。 所以, 基于学习的超分辨率重构技术就是训练得到高、 低分辨率图像之间的映射关系。

按照学习过程的程度不同, 可以将学习重构法分为浅度和深度学习重构法,浅度学习法最具代表性的算法是稀疏表示重构法, 深度学习法的代表算法是基于卷积神经网络的超分辨率重构算法。

稀疏表示最开始是在信号的表示、 压缩, 原始信号的逼真度评判与稀疏度表示。 在图像处理的发展中, 稀疏表示逐渐成为其中一种重要的技术, 被应用于图像压缩、 去噪、 复原等领域。 基于稀疏表示的超分辨率重构技术就是通过学习稀疏表示的先验知识, 计算估计出对应的高分辨率图像。 稀疏表示模型认为, 图像时可以被完整或有效近似表示成为一组原子的线性组合信号, 由稀疏系数和多个 n维度原子组成的字典表示, 故对于稀疏表示的超分辨率重构关键技术就在于稀疏系数的求解和字典的构建。

卷积神经网络最早被提出是 20 世纪中期的生物学, 后来逐渐被计算机视觉领域研究应用, 目前已广泛用于图像分类、 人物识别等方面。 卷积神经网络具有一些不同于其他网络结构的特殊之处: 局部感知、 权值共享及空间降采样。 基于卷积神经网络的超分辨率重构技术是直接建立高分辨率图像和原始低分辨率图像之间的映射, 通过中间网络的学习训练得到映射函数, 主要分为三个步骤: 提取图像块、 非线性映射、 图像重构。 在提取图像块的操作过程中, 网络需要通过卷积来提取输入的低分辨率图像, 并将得到的图像块以向量的形式表示; 第二步中网络通过卷积操作, 将提取得到的图像块向量映射成其他的高维向量, 这些向量与相应的高分辨率图像块对应; 最后, 网络通过卷积操作, 得到并组合高分辨率图像块, 完成超分辨率图像重构。

✳️ 二、基于单帧图像的超分辨率重构技术

基于单帧图像的超分辨率重构, 顾名思义是指对一张低分辨率图像进行处理得到其对应的高分辨率图像的技术。 因为该技术重构前后都只有一帧图像, 所以重构过程可使用的先验信息就相对很少, 则对应的约束条件也就越少, 所以单帧图像的超分辨率重构技术的先验知识引入主要为: 一是尽可能挖掘图像本身的内部信息, 找寻图像中相邻像素点的潜在关系, 得到原图像中没有的高频信息;另一种则是根据图像外部知识进行学习, 从而引入高频信息。 由此两种方法可以得到单帧图像的超分辨率重构技术主要有: 基于插值的单帧图像超分辨率重构和基于学习的单帧图像超分辨率重构。

✳️ 2.1 最近邻域插值法

最近邻域插值法是多项式插值法中的一种,是对多项式中的零阶项进行插值, 插值过程就是简单的像素点复制,如图1所示,没有考虑各像素点之间的相互影响。 具体做法是:找到待插像素点所映射位置的最近像素点,复制该像素点灰度值到待插点出,重复操作所有的像素点,即可得到最后的结果。此方法得到的结果会产生边缘锯齿现象和马赛克效应,但是处理速度却是最快的。

在这里插入图片描述

图1 最近邻域插值法原理示意图[1]

✳️ 2.2 双线性插值法

双线性插值法同样是一种多项式插值法。 与最近邻域插值法不同的是, 双线性插值法考虑待插点周围像素的影响, 通过加权平均得到待插点的灰度值。 在插值过程中, 需要确定待插点映射位置最近的 4 个像素点, 分别计算该点与这四个点的距离值, 以此确定各自的权重, 即距离越近权重越大, 对待插点影响越大。假设待插值像素为 f (x, y), 像素点所在的位置为 (x, y), 与此像素点距离最近的 4个点分别是 f ( x k , y k ) f\left( {{x}_{k}},{{y}_{k}} \right) f(xk,yk) f ( x k + 1 , y k ) f\left( {{x}_{k+1}},{{y}_{k}} \right) f(xk+1,yk) f ( x k , y k + 1 ) f\left( {{x}_{k}},{{y}_{k+1}} \right) f(xk,yk+1) f ( x k + 1 , y k + 1 ) f\left( {{x}_{k+1}},{{y}_{k+1}} \right) f(xk+1,yk+1), x位于 xk 和 xk+1 之间, y位于 yk 和 yk+1之间。 其中, 像素之间的距离为 1, 而 x与 xk 之间的距离为 s1,y与 yk 的距离为 s2, 故双线性插值法的计算表达式可以表示为:
在这里插入图片描述

由于双线性插值法在插值过程中引入周围 4 个点的权重, 所以得到的结果图比最近邻域插值的直接复制结果更加平滑。 而且该方法的计算程度也比较低, 但是双线性插值法得到的图像边缘和细节的表现力相对较弱。

✳️ 2.3 双三次插值法(Keys’插值)

双三次插值法与最近邻域插值、 双线性插值同样为多项式插值法, 不同的是该方法是一种分段三次插值, 通过尽可能拟合sin x/x函数来靠近理想状态的滤波器,从而得到更理想的高分辨率图像插值结果。 双三次插值法和双线性插值法相似,引入周围像素的加权值, 但是双三次插值的加权平均是考虑周围 16 个像素点的影响, 以这 16 个点的加权平均值作为插值点的灰度值。 将原始低分辨率图像中的每个点做该处理后得到最终高分辨率结果。 使用的多项式插值函数为:

在这里插入图片描述

假设待插点的位置是 (x, y), x位于 xk 和 xk+1 之间, y 位于 yk 和 yk+1之间, 像素之间的距离为 1, 而 x与 xk 之间的距离为 s1, y与 yk 的距离为 s2, 故双三次插值法的计算表达式可以表示为:

在这里插入图片描述

其中

在这里插入图片描述

在这里插入图片描述

双三次插值函数与理想状态下的滤波器函数接近, 所以由此方法得到的重构结果不会产生边缘锯齿现象以及图像的马赛克效应, 在视觉上显得更为真实。

多项式插值超分辨率重构算法虽然简单易于实现, 但是在插值过程中并没有考虑被插值图像的局部特性, 只是简单的将待插值点周围的有限个像素点进行计算得到灰度值信息。 所以通过该方法得到的超分辨率图像结果存在一些问题,如模糊效应、 块效应、 混叠效应等。 为了避免诸如此类现象的发生, 研究者们进行了更多的尝试和研究, 提出更多有效的插值方法, 以及基于学习的超分辨率重构算法等等。

✳️ 三、神经网络插值原理

多项插值神经网络技术的实现步骤如下:

✳️ 3.1 训练阶段:

(1) 采用某多项式插值技术实现图像集的内插。

(2) 将所有已插值像素点按照向量形式排序估计(对于双线性插值选两个点,对于Keys’插值和三次样条插值选四个点)。

(3) 所有向量作为神经网络输入,其插值结果作为输出。

(4) 采用已有数据集对神经网络进行训练。

✳️ 3.2 测试阶段

(1) 将所有待插值像素点按照向量形式排序估计。

(2) 将得到的向量输入神经网络中,然后计算输出。

任何固定大小的神经网络都可用于所有插值算法。采用相应的训练算法来调整网络权重,主要目的是使期望输出与实际输出的方差和最小。神经网络中的每一个权重都附加一增量来加速训练过程。和误差反向传播(EBP)算法一样,神经网络训练过程会在超过迭代次数、达到最小误差或者达到训练周期数后结束。

✳️ 四、实验验证

✳️ 4.1 基于神经网络双线性插值实验验证

在模拟实验中,首先对原始图像进行降采样,然后加入高斯白噪声(AWGN)来模拟低分辨率图像降质模型,最后,对低分辨率图像进行双线性插值向量形式排序估计,并将其作为神经网络输入,其插值结果作为输出,得到超分辨重建结果如下图所示,此时,重构图像与原始图像之间的峰值信噪比为22.9996。

在这里插入图片描述

图2 基于神经网络双线性插值图像超分辨重构

✳️ 4.2 基于神经网络Keys’插值(双三次Bicubic)实验验证

对低分辨率图像进行双三次插值,获得向量形式排序估计,并将其作为神经网络输入,其插值结果作为输出,得到超分辨重建结果如下图所示,此时,重构图像与原始图像之间的峰值信噪比为23.1746。

在这里插入图片描述

图3 基于神经网络双三次插值图像超分辨重构

✳️ 4.3 基于神经网络三次样条插值(Cubic spline interpolation)实验验证

对低分辨率图像进行三次样条插值(Cubic spline interpolation),获得向量形式排序估计,并将其作为神经网络输入,其插值结果作为输出,得到超分辨重建结果如下图所示,此时,重构图像与原始图像之间的峰值信噪比为22.8858。

在这里插入图片描述

图4 基于神经网络三次样条插值图像超分辨重构

✳️ 五、参考文献

[1] 程杰. 基于扫描干涉的红外大视场表面形貌测量技术研究[D]: 合肥工业大学, 2021.
[2] M. Awad, S. E. El-Khamy and M. M. Abd Elnaby. 2009. Neural Modeling of Polynomial Image Interpolation. In Proceedings of International Conference on Computer Engineering and Systems, Cairo, 469–474.

✳️ 六、Matlab代码获取

上述实验均由Matlab代码开展,可私信博主获取。


博主简介:研究方向涉及智能图像处理、深度学习、卷积神经网络等领域,先后发表过多篇SCI论文,在科研方面经验丰富。任何与算法程序科研方面的问题,均可私信交流讨论


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/43196.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Hive、Impala、Hue集成LDAP

1.LDAP简介 轻型目录访问协议,是一个开放的,中立的,工业标准的应用协议,通过IP协议提供访问控制和维护分布式信息的目录信息。在hadoop生态圈中,LDAP主要是用来做账号管理的。 2.LDAP安装配置 2.1 安装LDAP&#xf…

基于PHP+MYSQL宠物领养系统的开发与设计

市面上的宠物之家网站大多只是给爱宠人士一个交流的平台,给爱宠人士一个学习宠物习性,宠物购买的一个集合性的平台。很少有宠物领养功能,然而现在社会上有着太多的流浪宠物需要得到人们的关爱,这是很多宠物之家网站没有做到的。宠物之家网站正是顺应了当下的宠物热潮,为广大消费…

LeetCode | 1851.包含每个查询的最小区间

LeetCode | 1851.包含每个查询的最小区间 给你一个二维整数数组 intervals ,其中 intervals[i] [lefti, righti] 表示第 i 个区间开始于 lefti 、结束于 righti(包含两侧取值,闭区间)。区间的 长度 定义为区间中包含的整数数目&…

基于java+ssm+shiro的出租房管理平台

✌博主介绍✌:一个致力于全战开发的代码热爱者 龙门客栈管理平台一、前言介绍:二、系统设计:2.1 系统整体架构:2.1.1 数据库表结构的介绍:2.1.2 系统功能设计:三、功能截图:3.1 登录注册:3.2 基…

使用react-grid-layout和echarts-for-react实现一个支持拖拽的自定义响应式dashboard页面

使用react-grid-layout和echarts-for-react实现一个支持拖拽的自定义响应式dashboard页面 需求概要 在前端工作中,我们会经常遇到自定义dashboard页这样的需求。然后我想做一个能够让用户可以在面板上自由的拖拽,固定(不允许拖拽&#xff0…

游戏源码编程软件,对于新手来说十分友好,纯中文的界面让所有功能都一目了然,操作相当简单

这是一款免费的图像化编程工具,使用者无需会任何编程语言即可通过拼接积木的形式搭建出属于自己的程序。 编程猫kitten使用教程: 1、打开软件,进入软件主界面,运行界面如下图。 2、点击文件,可选择打开、新建、打开本地作品等。 3、可在方框内输入作品名称,快速进行输入…

安静!听听AI眼中岛国老师的声音~

大家好,我是鸟哥。一个半路出家的程序员。 最近在折腾自己的微信机器人,除了自动回复,自动拉群等常规的功能外,我准备给它赋予一些AI功能,毕竟这两年人工智能火的一塌糊涂。例如前段时间风靡朋友圈的人物头像动漫化&am…

如何保存/同步多架构容器 Docker 镜像

前言 随着容器、芯片技术的进一步发展,以及绿色、节能、信创等方面的要求,多 CPU 架构的场景越来越常见。典型的应用场景包括: 信创:x86 服务器 鲲鹏 ARM 等信创服务器;个人电脑:苹果 Mac M1 Windows 电…

Triton Inference Server 环境配置

本人环境 Ubuntu18.04,3090显卡,显卡驱动版本510.85.02,cuda版本11.6,docker版本20.10.12(注意:docker一定要通过apt安装,用snap安装会报错) 安装步骤 1. 根据驱动版本和cuda版本下载对应版本的Triton D…

java计算机毕业设计ssm驾校预约考试管理系统a3cf7(附源码、数据库)

java计算机毕业设计ssm驾校预约考试管理系统a3cf7(附源码、数据库) 项目运行 环境配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#…

第四章. Pandas进阶—日期数据处理

第四章. Pandas进阶 4.7 日期数据处理 1.DataFrame的日期数据转换(to_datetime) 在日常工作中,常见的日期方式有很多种,例如’20221123’,‘2022.11.23’,‘2022/11/23’,‘23/11/2022’&#…

Deepwalk详解

算法思想 源于word2vec ,word2vec通过语料库中的句子序列来描述词与词之间的共现关系。进而学习到词语的向量表示,deepwalk则使用图中的节点与节点的共像现关系来学习节点的向量表示。这种借鉴的前提是点在图中的分布和词在句子中的分布都是幂律分布。 …

关于MuLoginWebGL介绍说明:

WebGL就是俗称的硬件显卡型号的意思,在MuLogin中我们提供了多个平台和品牌的显卡芯片指纹。 我们在做实验时,Chrome浏览器和Internet Explorer(Edge)测试取WebGL vendor 会有两种不同值 ,Chrome 取为 Google Inc. Int…

2023年湖北监理工程师考试科目有哪些?考试题型什么样子的?

2023年湖北监理工程师考试科目有哪些?考试题型什么样子的? 一、监理工程师考试科目: 监理工程师考试一共考四科 1. 《建设工程监理基本理论和相关法规》(客观题) 2. 《建设工程合同管理》(客观题) 3. 《建设工程目标控制》(客观题) 4. 《…

社交电商时代,切勿剑走偏锋,始终以产品为中心,模式为辅助

社交电商这个名词近期十分火,参与这个方式的人数以亿计,可以这样说“十亿人民九亿商,八亿人在做电商”。 我们感悟:“传统电商火热,社交电商更火”!那么什么是社交电商呢?社交电商概念&#xff…

必须了解的海外新闻稿写作要点 ️

随着经济全球化的发展,中国企业走向世界是必然的趋势。媒介易小编发现了全球的海外消费者一般了解一个品牌都是去搜索引擎搜索,所以确认海外媒体投放新闻稿是中国企业走向世界必经之路,是密不可分的哟。 新闻稿是公司或机构向媒体发送的手稿。…

Python学习基础笔记十四——函数参数

函数参数这块在前面的博客中没有展开,现在专门整理出来: 1、参数的数量: 1)没有参数:就是定义函数和调用函数的括号中都不写内容。 2)有一个参数:可以是任何数据类型。 3)有多个参…

学习python中的数据结构

数据结构 链表和数组 数组 Python的list是由数组来实现的 有序的元素序列, 在内存中表现为一块连续的内存区域; 链表 通过指针将无序的列表链接起来, 每个节点都存储着当前节点的值和下一个节点的内存地址 链表和数组有什么区别? 实现有序的方式是不一样的, 数组是连续的内…

[附源码]SSM计算机毕业设计网上鞋店管理系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Pan-cancer image-based detection of clinically actionable genetic alternations

目录 摘要 前言 结果 深度学习模型优化 从组织病理图像预测泛癌基因突变 摘要 肿瘤的分子突变可导致肿瘤细胞及其微环境的表型变化。常规组织病理切片可以反映出这种形态学改变。本研究表明深度学习方法能直接从常规病理图像中推断出广泛的基因突变、肿瘤分子亚型、基因表达…