(转)小波的分解和重构

56 篇文章 20 订阅

转:天津大学 小波分析 宗婧 1015202078

原理可参考:https://wenku.baidu.com/view/73439a6d5901020207409cd5.html

1、单层小波分解

%1. 单层小波分解 
 %读入信号 
 load leleccum; s=leleccum(1:4000); 
 %通过db4小波基进行离散小波变换 
 [cA1,cD1]=dwt(s,'db4'); 
 figure(1);
 subplot(311);plot(s); title('Original signal'); 
 subplot(323); plot(cA1); title('Approx.coef.for db4'); 
 subplot(324); plot(cD1); title('Detail coef.for db4'); 

%上图我们可以看到经过db4小波一层分解之后的高频信息和低频信息。 

2、 单尺度一维小波的重构

 %用小波函数db4进行信号重构 
 ss=idwt(cA1,cD1,'db4'); 
 err=norm(s-ss); 
 figure(2),plot(ss); 
 %1 天津大学 小波分析 宗婧 1015202078 重构完成后的误差为3.53e-10。 重构完成后的函数与分解前的函数相同,仅仅存在很小很小可以忽略为0 的误差。 

3、 多层小波分解

上文是使用单层小波分解,下面使用wavedec 函数进行多层小波分解,并显示分解后的低 频高频信息。

 %通过db4小波基进行三尺度小波分解 
 [c,l]=wavedec(s,3,'db4'); 
 a1=appcoef(c,l,'db4',1); 
 %提取尺度1的低频系数 
 a2=appcoef(c,l,'db4',2); 
 %提取尺度2的低频系数 
 a3=appcoef(c,l,'db4',3); 
 %提取尺度3的低频系数 
 figure(3); 
 subplot(321);plot(a1);title('尺度1的低频系数'); 
 subplot(323);plot(a2);title('尺度2的低频系数'); 
 subplot(325):plot(a3):title('尺度3的低频系数'); 
 d1=detcoef(c,l,1);
 d2=detcoef(c,l,2);
 d3=detcoef(c,l,3); 
 figure(3);
 subplot(322);plot(d1);title('尺度1的高频系数'); 
 figure(3);subplot(324);plot(d2);title('尺度2的高频系数'); 
 figure(3);subplot(326);plot(d2);title('尺度3的高频系数'); 

4、多层小波重构

上文中,使用wavedec 函数对小波进行了db4,三尺度分解,现在,使用waverec 将原信号重构,(包括低频和高频)。

c1=[a3,d3,d2,d1];
 s1=waverec(c1,l,'db4'); 
 figure(4); plot(s1); title('重构信号'); 
 err2=norm(s-s1); 
 %重构后误差为1.09E-09 (2 )高频置零后重建 当然,如果认为高频信息是不需要的时候,我们可以将高频信息置零后重构低频信息。 
 d3=zeros(1,length(d3));
 d2=zeros(1,length(d2));
 d1=zeros(1,length(d1));
 c1=[a3,d3,d2,d1];
 s1=waverec(c1,l,'db4');
 figure(4);
 subplot(211),plot(s);title('原始信号');
 subplot(212),plot(s1),title('重构信号');

上图重构信号对1、2、3层的高频信号进行了过滤。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值