基于最大熵图像插值Maximum Entropy插值算法的图像超分辨重构研究-附Matlab代码
创始人
2024-03-18 03:34:26
0次

⭕⭕ 目 录 ⭕⭕

  • ✳️ 一、引言
  • ✳️ 二、图像复原基本原理
  • ✳️ 三、最大熵图像插值原理
  • ✳️ 四、实验验证
  • ✳️ 五、参考文献
  • ✳️ 六、Matlab程序获取与验证

✳️ 一、引言

图像是一种表达信息的形式,其中,数字图像反馈的信息更加丰富。 在获取图像的过程中,图像的形成、传输、存储、处理过程受到外界干扰或成像设备自身的局限等多种因素,导致获取的图像质量不高,使图像分辨率下降,这种情况称为降质或退化,具体表现为图像模糊、有噪声、分辨率下降、图像失真、振铃波纹、边缘信息丢失或产生马赛克等质量下降等现象,这给处理图像和后续应用带来很大影响。 由于造成图像质量下降的因素有很多,例如:空气流动造成摄影设备晃动、摄影设备移动中模糊,设备像素不高、光学系统差别、成像设备局限性以及频谱混叠等,因此,图像质量下降的原因没有办法从根本上解决。

✳️ 二、图像复原基本原理

图像复原是利用对退化图像的先验知识以及对其退化过程的研究,来尽量重建或复原退化的图像,得到原图像的最佳估计图像。 因此,图像复原可以看成是沿着图像降质过程反方向处理的逆过程,是对图像降质过程加以分析和估计,建立相应的图像退化的数学模型,尽量消除退化过程造成的失真情况,以此方式获得未经退化的原始图像或原始图像的最优估计,从而达到提高图像质量的目的。

图像复原是根据图像的退化成因,通过图像处理技术尽量地去除或减少在获得观测图像过程中产生的降质影响,因为使图像降质的原因很多,不便一一建模分析,所以通常用统一基础数学模型对图像的模糊过程进行描述。在图像复原过程中,高分辨率图像可以用f(n1, n2)表示,其中n1,n2=0,1,2,…,N-1。相应的低分辨率图像则为g(m1, m 2),其中m1,m2=0,1,2,…,M-1。 其中M=N/R,R是f(n1, n2)和 g(m1, m 2)采样率。 在不考虑模糊噪声的情况下,高分辨率图像和低分辨率图像的关系可用以下模型表示:

在这里插入图片描述
其中,f为按照字典序排列的未知高分辨率图像向量,g为按照字典序排列的拍摄时所获取的已降质的低分辨率图像向量,v则是相应的噪声值向量。 根据字典序准则,向量g和向量v分别为 M2×1{{M}^{2}}\times 1M2×1维的矩阵,f为 N2×1{{N}^{2}}\times 1N2×1维矩阵。矩阵D在此则表示在高分辨率图像和低分辨率图像的转换过程中的降采样及滤波矩阵,为 M2×N2{{M}^{2}}\times {{N}^{2}}M2×N2矩阵

✳️ 三、最大熵图像插值原理

假设所求高分辨率图像(HR)的采样具有单位能量,其可被视为在所求HR图像第i个元素上出现众多光子的概率。所求HR图像被视为各像素的总光量。因此,所求HR图像的熵定义如下[1]:

在这里插入图片描述

其中,fi为采样信号。上述方程可以写成向量形式,即

在这里插入图片描述
图像插值收到以下约束:

在这里插入图片描述
要最大化熵,必须最小化如下的代价函数

在这里插入图片描述式中:λ为拉格朗日乘数。

上述方程两边对f求导,并使其为零,有

在这里插入图片描述

因此求解的高分辨率图像:

在这里插入图片描述
即:

在这里插入图片描述

将上式进行泰勒级数展开,仅保留前两项,由于 为极小量,可得

在这里插入图片描述
可得:

在这里插入图片描述

其中,

在这里插入图片描述

✳️ 四、实验验证

在模拟实验中,首先对原始图像进行降采样,然后加入高斯白噪声(AWGN)来模拟低分辨率图像降质模型,最后,对低分辨率图像进行双线性插值重构原始图像,结果如图1所示,此时,重构图像与原始图像之间的峰值信噪比为22.3812。

在这里插入图片描述

图1 最大熵值图像插值重构结果

✳️ 五、参考文献

[1] S. E. El-Khamy, M. M. Hadhoud, M. I. Dessouky et al. 2005. Efficient Implementation of Image Interpolation as an Inverse Problem, J. Digital Signal Proc., 15, 137–152

✳️ 六、Matlab程序获取与验证

上述演示实例由Matlab代码实现,获取该Matlab代码前开展针对性验证实验,请私信博主。


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


相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...