小波去噪和小波包去噪的对比
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题1:试生成一个含噪声信号,利用matlab中的小波去噪和小波包去噪函数去除噪声,比较两者的性能差异。
程序如下:
clc
clear all
load noisdopp
x=noisdopp;
subplot(311)
plot(x);
title('原始信号的波形图')
axis tight;
[thr,sorh,keepapp]=ddencmp('den','wv',x);
xwd=wden(x,'rigrsure','s','one',4,'sym4');
subplot(312)
plot(xwd)
title('小波降噪信号')
axis tight
[thr1,sorh1,keepapp1,crit]=ddencmp('den','wp',x);
xwpd=wpdencmp(x,'h',4,'sym4','sure',thr1,1);
subplot(313)
plot(xwpd)
title('小波包降噪信号')
axis tight
运行结果如下:
原始信号的波形图
小波降噪信号
小波包降噪信号
区别:小波变换在低信噪比情况下的去噪效果较好,小波包分解去噪后信号更加的平滑;小波分解主要是针对细节成分全置0或者给定软(硬)阈值去噪,容易丢失信号中的有用信息。
问题2:研究小波包分解树中各节点的重构系数,给出其频谱分布,讨论波包分解的频带划分
程序如下:
clc
clear all
load noisdopp;
s=noisdopp;
wpt=wpdec(s,3,'sym1');
plot(wpt);
r20=wprcoef(wpt,[2 0]);
subplot(621)
plot(r20)
title('r20')
subplot(623)
hua_fft(r20,10000,1)
title('r20的FFT')
r21=wprcoef(wpt,[2 1]);
subplot(622)
plot(r21)
title('r21')
subplot(624)
hua_fft(r21,10000,1)
title('r21的FFT')
r22=wprcoef(wpt,[2 2]);
subplot(625)
plot(r22)
title('r22')
subplot(627)
hua_fft(r22,10000,1)
title('r22的FFT')
r23=wprcoef(wpt,[2 3]);
subplot(626)
plot(r23)
title('r23')
subplot(628)
hua_fft(r23,10000,1)
title('r23的FFT')
r10=wprcoef(wpt,[1 0]);
subplot(629)
plot(r10)
title('r10')
subplot(6,2,11)
hua_fft(r10,10000,1) title('r10的FFT')
r11=wprcoef(wpt,[1 1]); subplot(6,2,10) plot(r11) title('r11')
subplot(6,2,12)
hua_fft(r11,10000,1) title('r11的FFT') 程序运行结果如下:
Tree Decomposition
(0,0)(1,0)(1,1)
(2,0)(2,1)(2,2)(2,3)
(3,0)(3,1)(3,2)(3,3)(3,4)(3,5)(3,6)(3,7)2004006008001000
-10
-8-6
-4-20
24
6810
data for node: (0) or (0,0).
问题3:生成最优树结构,给出其熵值
程序如下:
clc
clear all
load noisdopp;
x=noisdopp;
wpt=wpdec(x,3,'sym4');
wpt=wpsplt(wpt,[3 0]);
plot(wpt)
bt=besttree(wpt);
plot(bt)
ent=read(wpt,'ent',allnodes(wpt))
T=entrupd(bt,'shannon');
ent=read(wpt,'ent',allnodes(bt))
图1 小波包树
图2 最优小波包树