信号小波包分解各频带能量比问题
用matlab对信号进行傅里叶变换并进行5层小波包分解,用wenergy()得到的各频段能量比为啥与信号的频谱图上该频率的幅值不是对应的呢,比如频谱在150kHZ上幅值很大,有尖峰,可是为什么在频段125~140.625140.625~156.25156.25 ~171.875 的能量比都很小。求各位高手指点啊 楼主,我也碰到这样的问题,发现好像图形对的起来,但是图谱就对不起来了。望高手路过 回复 3 # wingxy_123 的帖子图形对的起来是指什么图形啊 {:{19}:}有没有高手帮忙解答一下啊 额,我的问题解决了,是采样频率的问题,你对比一下fft幅值谱与小波包能量谱。我的发现少了一块所以对不起来了 我检查了好多遍了。。。可能当局者迷吧。。。这是我的程序,希望大家帮我纠纠错。
clear;
fs=1000000;
fid=fopen('2012-06-12-10-55-59-1.txt','r');
N=200000;
x=fscanf(fid,'%f',N);
fclose(fid);
figure(1);
subplot(3,1,1);
plot(x);
ylabel('幅值 A');
xlabel('样本序号 n');
nfft=length(x);
y1=abs(fft(x,nfft));
y=y1/N*2;
f=(0:nfft-1)*fs/nfft/1000;
subplot(3,1,2);
plot(f,y);
axis();
ylabel('幅值 A');
xlabel('频率 f/kHz');
%------------------------------------------------------
wpt=wpdec(x,5,'db10','shannon');
E = wenergy(wpt);
e=;
subplot(3,1,3);
bar(E(e),'group');
E(e) 楼主,你在写毕业论文吧,能不能加个qq,或者msn啥的聊,这样实在太慢了 回复 8 # wingxy_123 的帖子
加了你Q:@) 恩恩,加了 那个e向量是什么?是表示数据的列吗 楼主的结果呢?为什么用wenergy求出的能量比例,与自己用范数、求和、相除计算得到的不一样? hiddenyang 发表于 2012-10-14 09:34 static/image/common/back.gif
楼主的结果呢?为什么用wenergy求出的能量比例,与自己用范数、求和、相除计算得到的不一样?
wenergy是采用小波系数平方,然后求和,并进行归一化得到的 happy 发表于 2012-10-18 11:46 static/image/common/back.gif
wenergy是采用小波系数平方,然后求和,并进行归一化得到的
那么,应该采用哪一个?wenergy? 学习过一段时间,程序没错,但是好像频段的选择是个问题
页:
[1]
2