【M波段2D双树(希尔伯特)小波多分量图像去噪】基于定向M波段双树(希尔伯特)小波对多分量/彩色图像进行降噪研究(Matlab代码实现)

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

本文实现了一个参数非线性估计器,该估计器推广了几种小波收缩去噪方法。它致力于加性高斯噪声,采用多元统计方法考虑不同小波子带之间存在的空间和分量间相关性,使用斯坦无偏风险估计器(SURE)原理推导出最佳参数。小波选择是一个稍微冗余的多波段几何双小波框架。多光谱遥感影像实验优于传统的小波去噪技术(包括曲线)。

基于定向M波段双树(希尔伯特)小波对多分量/彩色图像进行降噪是一种高级的图像去噪方法。它结合了多分量图像处理和小波变换,并利用定向M波段双树小波的特性来保留图像的纹理细节和边缘信息,同时抑制图像中的噪声。

基于定向M波段双树(希尔伯特)小波的图像去噪过程按照以下步骤进行:

1. 分解图像:
   将多分量/彩色图像分解为不同频带的小波系数。这里采用定向M波段双树小波,可以在不同尺度和方向上捕捉图像的特征。

2. 降噪处理:
   对每个小波频带的系数进行降噪处理。采用适当的阈值方法对小波系数进行阈值处理,将噪声系数置零或进行柔和的修正,以保留有用的图像信息。

3. 重构图像:
   对降噪后的小波系数进行逆变换,将其合并重构为降噪后的图像。利用双树结构和希尔伯特变换,可以确保重构图像具有较好的平滑性和细节保留性。

4. 结果评估:
   对降噪后的图像进行质量评估,比较与原始图像的差异,常用的评估指标包括峰值信噪比(PSNR)、结构相似性指标(SSIM)等。

通过基于定向M波段双树(希尔伯特)小波的图像降噪方法,可以在去除图像噪声的同时,保持图像的细节和纹理信息,提高图像质量。然而,方法的实施过程相对复杂,需要对小波变换的理论和算法有较深的理解,并根据具体问题选择合适的参数和阈值方法。因此,在实际应用中需要进行实验和调整,以获得最佳的去噪效果。

📚2 运行结果

 

 

 

部分代码:

%decomposition
[wp,wm,H1,H2,HH1,HH2,G,Gh]=dualtreeM2D_freq(x,m,rm);

%plots of the coefficients
plot_dualtree_Mband2D(wp)
plot_dualtree_Mband2D(wm)

%reconstruction
xrec = idualtreeM2D_freq(wp,wm,rm,H1,H2,HH1,HH2,G,Gh);

disp('Original image norm:');
norm(x,'fro').^2
disp('Reconstructed image norm:');
norm(xrec,'fro').^2
disp('Norm of the difference between the original image and the reconstructed one:');
norm(x-xrec,'fro').^2

figure
imagesc(x)
title('Original image')
colormap(gray(256))

figure
imagesc(xrec)
title('Reconstructed image')
colormap(gray(256))

figure
imagesc(x-xrec)
title('Original image minus reconstructed image')
colormap(gray(256))
colorbar

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

* several dual-tree M-band wavelet transforms from: Image analysis using a dual-tree M-band wavelet transform, IEEE TRANSACTIONS ON IMAGE PROCESSING, 2006, Image analysis using a dual-tree M-band wavelet transform | IEEE Journals & Magazine | IEEE Xplore
* a neighborhood choice from: Noise covariance properties in dual-tree wavelet decompositions, IEEE TRANSACTIONS ON INFORMATION THEORY, 2007, Noise Covariance Properties in Dual-Tree Wavelet Decompositions | IEEE Journals & Magazine | IEEE Xplore
* the non-linear Stein estimator: A nonlinear Stein-based estimator for multichannel image denoising, IEEE TRANSACTIONS ON SIGNAL PROCESSING, 2008, A Nonlinear Stein-Based Estimator for Multichannel Image Denoising | IEEE Journals & Magazine | IEEE Xplore
* relative merits of different directional 2D wavelets are detailed in: A Panorama on Multiscale Geometric Representations, Intertwining Spatial, Directional and Frequency Selectivity, SIGNAL PROCESSING, 2011, Redirecting

🌈4 Matlab代码实现

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

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

相关文章

Python pypinyin module 的应用

安装pypinyin module 这个模块主要处理中文拼音可以用来做很多很有趣的事情 如何使用help 函数 将help 函数的输出保存到文件中去 一眼会 import sys import pypinyinwith open(帮助文档.txt,w) as f:sys.stdout f help(pypinyin) 如何查找模块中内置的函数 类 函数 la…

springboot+vue农产品特产商城销售平台_50kf2 多商家

随着我国经济的高速发展与人们生活水平的日益提高,人们对生活质量的追求也多种多样。尤其在人们生活节奏不断加快的当下,人们更趋向于足不出户解决生活上的问题,南阳特产销售平台展现了其蓬勃生命力和广阔的前景。与此同时,为解决…

2023年测试岗,手动测试vs自动化测试,“我“该如何抉择...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 在软件测试行业中…

OpenCL编程指南-9.1命令、队列、事件

概述 命令队列是OpenCL的核心。平台定义了一个上下文,其中包含一个或多个计算设备。每个计算设备可以有一个或多个命令队列。提交到这些队列的命令将完成OpenCL程序的具体工作。 在一个简单的OpenCL程序中,提交到一个命令队列的命令会按顺序执行。一个…

windows下mysql的下载与安装

文章目录 1 下载2 安装目录下新建data文件夹和my.ini3 安装4设置密码与远程连接5 配置环境变量6 navicate连接成功 1 下载 官网地址 https://www.mysql.com/点击下载 社区下载 社区服务 选择版本下载 2 安装目录下新建data文件夹和my.ini my.ini 内容如下 [mysql] # 设置my…

【C#学习笔记】内存管理

文章目录 分配内存释放内存GC标记清除算法分代算法 .NET的GC机制有这样两个问题: 官方文档 自动内存管理 自动内存管理是CLR在托管执行过程中提供的服务之一。 公共语言运行时的垃圾回收器为应用程序管理内存的分配和释放。 对开发人员而言,这就意味着…

二次开发了个寂寞之HttpRunnerManager接口测试管理平台

文章目录 一、背景1、二次开发1.1、首页1.2、项目列表1.3、用例列表1.4、新增用例1.5、测试套件1.6、查看报告 二、总结 一、背景 自入职起,就在公司内部引入开源接口测试平台,选一个大家勉强看得懂源码的开源项目,方便后续的二次开发&#x…

【每日一题】—— C. Mocha and Hiking(Codeforces Round 738 (Div. 2))

🌏博客主页:PH_modest的博客主页 🚩当前专栏:每日一题 💌其他专栏: 🔴 每日反刍 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮,缓称…

Kotlin~Visitor访问者模式

概念 将数据结构和操作分离,使操作集合可以独立于数据结构变化。 角色介绍 Visitor:抽象访问者,为对象结构每个具体元素类声明一个访问操作。Element:抽象元素,定义一个accept方法ConcreteElement:具体元…

docker 资源限制

目录 1、CPU使用率 2、CPU共享比例 3、CPU周期限制 4、CPU核心限制 5、CPU 配额控制参数的混合案例 6、内存限制 7、Block IO 的限制 8、限制bps 和iops docker资源限制 Docker容器技术底层是通过Cgroup(Control Group 控制组)实现容器对物理资…

Android 性能调优之bitmap的优化

背景 Android开发中,加载图片过多、过大很容易引起OutOfMemoryError异常,即我们常见的内存溢出。因为Android对单个应用施加内存限制,默认分配的内存只有几M(具体视不同系统而定)。而载入的图片如果是JPG之类的压缩格…

【unity】Pico VR 开发笔记(视角移动)

【unity】Pico VR 开发笔记(视角移动) 视角移动是简单的基础功能,这里区别于头显定位获得的小范围位移,是长距离不影响安全边界的位移方式。的常见的位移方式有两种,其一是触发后瞬间传送到指定位置,其次是…

IDEA用Gradle构建项目时,lombok插件无效的解决办法

Lombok 可用来帮助开发人员消除 Java 的重复代码,尤其是对于简单的 Java 对象(POJO),比如说getter/setter/toString等方法的编写。它通过注解实现这一目的。 正确使用姿势 一、安装Lombok插件 菜单栏File -> Settings ->…

死锁的发生原因和怎么避免

项目场景: 提示:这里简述项目相关背景: 例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大) 问题描述 死锁,简单来说就是两个或者两个以上的线程在…

翻转卡片游戏(力扣)

题目 在桌子上有 n 张卡片,每张卡片的正面和背面都写着一个正数(正面与背面上的数有可能不一样)。 我们可以先翻转任意张卡片,然后选择其中一张卡片。 如果选中的那张卡片背面的数字 x 与任意一张卡片的正面的数字都不同&#…

【C语言进阶】数据的存储----整型篇

​ 🍁 博客主页:江池俊的博客 💫收录专栏:C语言——探索高效编程的基石 💻 其他专栏:数据结构探索 ​💡代码仓库:江池俊的代码仓库 🎪 社区:GeekHub 🍁 如果觉…

Liunx环境下git的详细使用(gitee版)

Liunx环境下git的详细使用(gitee版) 1.git是什么2.git操作2.1在gitee创建一个仓库2.2.gitignore2.3.git 3.git三板斧3.1add3.2 commit3.3push 4.git其他命令4.1查看当前仓库状态4.2查看提交日志4.3修改git里面文件名称4.4删除文件4.5修改远端仓库内容 1.…

postgresql表膨胀处理之pgcompacttable部署及使用

环境: 1)redhat-release:CentOS Linux release 7.6.1810 (Core) 2)database version:postgresql 14.6 一、添加pgstattuple pgcompacttable工具使用过程中需要依赖pgstattuple,因此需先添加pgstattuple…

【SEO基础】百度权重是什么意思及网站关键词应该怎么选?

百度权重是什么意思及网站关键词应该怎么选? 正文共:3253字 20图 预计阅读时间:9分钟 ​ 1.什么是网站权重? 这段时间和一些朋友聊到网站权重以及关键词,发现蛮多人对于这两个概念的认知还是存在一些错误的&#xf…

数组的使用(逆序、冒泡)

内存连续数据类型相同从0开始索引 找出数组中的最大值 #include <iostream> #include <stdlib.h> //随机数所在文件 using namespace std;int main() {int arr[5]{104,134,145,129,89};//初始化没有填的为0 int max0;for(int i0;i<5;i){if(arr[i]>max){ma…