zhnn520 发表于 2009-5-28 10:00

小波分解程序有一处错误,请大家帮忙看看,谢谢!

load wd8;
data1=data(:,4);
data1=data1-mean(data1);         %隔直流
s1=data1;
N=1024;
fs=1280;       %采样频率
Y=fft(data1(1:N));
pyy=Y.*conj(Y)/N;
w='db3';
=wavedec(s1,6,w);
for i=1:6
    A(i,:)=wrcoef('a',c,l,w,i);
    D(i,:)=wrcoef('d',c,l,w,i);
end
figure(1);
f=fs*(0:N/2-1)/N;
plot(f,pyy(1:N/2));
title('wd8信号的傅里叶变换系数','fontsize',18);
figure(2);
t=1:1000;                %为什么此处改为t=(1:N)/fs,就不能出来小波分解的系数图了???
subplot(7,2,1);plot(t,s1(t),'r');
title('Orig.signal and approx. 1 to6.');
subplot(7,2,2);plot(t,s1(t),'r');
title('Orig.signal and details 1 to6.');
for i=1:6
    subplot(7,2,2*i+1);plot(t,A(6-i+1,t),'b');
    subplot(7,2,2*i+2);plot(t,D(6-i+1,t),'g');
end


,在此程序中,fft没有问题,频率坐标也对应,上面t定义为1:1000时,可以正常画图,但是坐标和时间不对应啊,那样只代表两个采样点,其时间并不是1秒,请大家帮忙解释一下,急求,谢谢各位了!
页: [1]
查看完整版本: 小波分解程序有一处错误,请大家帮忙看看,谢谢!