当前位置: 首页 > article >正文

图像处理01 小波变换

一.为什么需要离散小波变换

连续小波分解,通过改变分析窗口大小,在时域上移动窗口和基信号相乘,最后在全时域上整合。通过离散化连续小波分解可以得到伪离散小波分解, 这种离散化带有大量冗余信息且计算成本较高。

小波变换的公式如下:

​ ​​
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

​​

通过下面步骤即可得到不同尺度下的小波变换。

二.离散小波变换

我们将小波的尺度和平移参数以2的指数幂的形式进行变换,我们可以得到一串不同的小波。这些子小波的尺度参数以2的j次方的形式增长。当使用这一系列的子小波,对一个连续函数进行离散分析时,我们所获得的是一组小波分析的系数,这个分析过程称为**小波系列分解**。

而高尺度小波代表着低频信息,小尺度的小波代表着高频信息。

因此如下图所示,不同尺度的小波来实现频率上的覆盖。

在这里插入图片描述

因此我们可以理解,为什么离散小波变换可以等效为通过一个高通和低通滤波器。

在这里插入图片描述

更直观的可以用下面的图片来表示。

在这里插入图片描述

三.直观意义

当我们懂了上面的内容,再来看看小波变换的过程,是否能有了以下体会。

小波分解的多尺度可以类比为我们使用不同的“放大镜”去观察一个物体。想象一下你手里有一张非常复杂的画,画面上有大的物体,如山脉、树木,但也有非常细小的细节,如叶子上的纹理或昆虫的触角。
粗尺度(低分辨率) :当你使用低倍的放大镜(或者站得很远)去看这幅画时,你可以看到大的物体,如山脉和树木,但可能看不到细小的纹理或昆虫。在小波分解中,这就像我们查看信号的低频部分,捕获其主要的、宽泛的特征。
细尺度(高分辨率) :现在,如果你换一个高倍的放大镜(或者走近一些)去看同一幅画,你可能会失去对整体的感知,但可以清晰地看到叶子上的纹理或昆虫的触角等细节。在小波分解中,这就像我们查看信号的高频部分,捕获其细节和快速的变化。
小波分解的美妙之处在于,它同时提供了多个尺度的视角,让我们既可以看到信号的整体特征,又可以看到其细节。这就像我们可以同时拥有多个不同倍率的放大镜,让我们在需要的时候选择合适的一个来观察画面。

四.小波变换实现分解和重构。

如图a是带有噪声的信号,经过4层小波变换得到的变换后的先后如下。

在这里插入图片描述
代码如下所示:

%% 1.生成仿真信号
Fs = 1000; % 采样频率
t = 0:1/Fs:1-1/Fs; % 时间向量
% 创建一个合成信号:包含不同频率的正弦波、趋势和噪声
signal = cos(2*pi*10*t) + 0.5*sin(2*pi*50*t) + t + 0.5*randn(size(t));
figure('color','white')
subplot(3,2,1)
%%  2.绘制DWT分解图
subplot(6,1,1);
plot(signal)
ylabel(['a']);
[C,L] = wavedec(signal,4,waveletType);
for i=1:4
    a = wrcoef('a',C,L,waveletType,5-i);
    subplot(6,1,i+1);
    plot(a);
    ylabel(['a',num2str(5-i)]);
end


http://www.kler.cn/a/135788.html

相关文章:

  • openwrt 负载均衡方法 openwrt负载均衡本地源接口
  • 论文DiffBP: generative diffusion of 3D molecules for target protein binding
  • leetcode hot100 将有序数组转化为二叉搜索树
  • 小程序租赁系统开发指南与实现策略
  • 移动端网页兼容适配方案小结
  • 今日总结 2024-12-24
  • uni-app开发微信小程序 vue3写法添加pinia
  • 云桌面 node_modules 切换艰辛历程记录 rebuild失败记录
  • Positive Technologies 利用 PT Cloud Application Firewall 保护中小型企业的网络资源
  • (八)、基于 LangChain 实现大模型应用程序开发 | 基于知识库的个性化问答 (检索 Retrieval)
  • 实用篇-ES-RestClient查询文档
  • 使用Lychee搭建个人图片存储系统并进行远程访问设置实现公网访问本地私人图床
  • 拼图游游戏代码
  • Vatee万腾携手Wiki EXPO 2023悉尼峰会 共谱辉煌未来
  • Java code auditing
  • 力扣刷题-二叉树-完全二叉树的节点个数
  • Go 语言中的map和内存泄漏
  • 【GitLab】-HTTP 500 curl 22 The requested URL returned error: 500~SSH解决
  • 界面组件DevExpress Reporting v23.1亮点 - 全新升级报表查看器
  • 立哥先进技术-常用渗透测试工具
  • Workplace Search 的演变:使用 Elasticsearch 搜索你的私人数据
  • 细说MySQL数据类型
  • 安装R和Rstudio
  • 庖丁解牛:NIO核心概念与机制详解 06 _ 连网和异步 I/O
  • uniapp如何上传文件,使用API是什么
  • 贪吃蛇代码