⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mallat1.m

📁 mallat 算法 可以给一些小波变换的人提供帮助。也可以给压缩的人提供帮助
💻 M
字号:
%%%%%%%mallat algorithm%%%%%
clc;
clear;
%%%%original signal%%%%
f=100;%%frequence
ts=1/800;%%抽样间隔
N=1:100;%%点数
s=sin(2*ts*pi*f.*N);%%源信号

figure(1)
plot(s);%%%源信号s
title('原信号');
grid on;
%%%%小波滤波器%%%%
ld=wfilters('db1','l');%%低通
hd=wfilters('db1','h');%%高通

figure(2)
stem(ld,'r');%%%低通
grid on;
figure(3)
stem(hd,'b')%%%高通
grid on;
%%%%%
tem=conv(s,ld);%%低通和原信号卷积
ca1=dyaddown(tem);%%抽样
figure(4)
plot(ca1);
grid on;

tem=conv(s,hd);%%高通和原信号卷积
cb1=dyaddown(tem);%%抽样
figure(5)
plot(cb1);
grid on;
%%%%%%%%
[ca3,cb3]=dwt(s,'db1');%%小波变换
%%%%%%%%
[lr,hr]=wfilters('db1','r');%%重构滤波器

figure(6)
stem(lr);
figure(7)
stem(hr);

tem=dyadup(cb1);%%插值
tem=conv(tem,hr);%%卷积
d1=wkeep(tem,100);%%去掉两头的分量
%%%%%%%%%
tem=dyadup(ca1);%%插值
tem=conv(tem,lr);%%卷积
a1=wkeep(tem,100);%%去掉两头的分量

a=a1+d1;%%%重构原信号
%%%%%%%%%
a3=idwt(ca3,cb3,'db1',100);%%%小波逆变换
%%%%%%%%%
figure(8)
plot(a,'.b');
hold on;
plot(s,'r');
grid on;
title('重构信号和原信号的比较');

figure(9)
plot(a3,'.b');
hold on;
plot(s,'r');
grid on;
title('重构信号和原信号的比较');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -