关于小波wdcbm命令的的理解?有不明之处
有个问题高手们能帮我解答一下吗?谢谢了!
%读入信号noisbump
load noisbump;
x=noisbump;
%用sm6小波对小波做5层分解
wname='sym6';
lev=5;
[c,l]=wavedec(x,lev,wname);
length(l)
%选择参数a=2
alpha=2;
%使用Bige-Massart策略确定降噪的阈值
%选择参数a=2
[thr2,nkeep]=wdcbm(c,l,alpha)
%重建降噪信号
%用缺省的阈值确定的时候使用硬阈值对系数进行处理
[xd2,cxd,lxd,perf0,perfl2]=wdencmp('lvd',c,l,wname,lev,thr2,'h');
%求得缺省的阈值
%重建降噪信号
xd3=wdencmp('gbl',c,l,wname,lev,thr,'s',1);
subplot(211);plot(x);title('原始信号','fontsize',18);
subplot(212);plot(xd2);title('使用Bige-Massart阈值降噪后的信号','fontsize',18);
这是我的一个wdcbm的程序,用的是Birge—Massat阈值处理的方法。但是数据不太符合,不知为什么。nkeep中存着每层的个数,但是不符呀,1024的数据分解第一层低频系数应该是512,也就是m,根据方法第一层的nkeep应该是14但为什么是1,后面四层都不符合,不知为什么,帮帮忙!谢了
wang_qiang_0101@163.com