落英缤纷 发表于 2009-5-27 23:45

matlab关于小波分解之后横坐标与原信号不一致怎么办

clear all
clc
A=1;m=0.38;B=0.98;C=1;fr=120;fz=3000;fk=80;
w0=2*pi*fr;
w1=2*pi*fz;
w2=2*pi*fk;
t=1/16384;
t1=0:t:0.0625;
x1=A*(1+m*cos(w0.*t1)).*cos(w1.*t1+B.*sin(w0*t1));
x2=sin(w2*t1);
x3=C*randn(size(t1));
x=x1+x2+x3;
=xcorr(x,'unbiased');
subplot(5,1,1);
plot(lag*t,cory);
axis();
xlabel('时间 t/s');
ylabel('振幅 cm');
=wavedec(cory,3,'db4');
a3=wrcoef('a',c,l,'db4',3);
d3=wrcoef('d',c,l,'db4',3);
d2=wrcoef('d',c,l,'db4',2);
d1=wrcoef('d',c,l,'db4',1);

subplot(5,1,2);
plot(d1,'LineWidth',2);
ylabel('d1');
subplot(5,1,3);
plot(d2,'LineWidth',2);
ylabel('d2');
subplot(5,1,4);
plot(d3,'LineWidth',2);
ylabel('d3');
xlabel('时间 t/s');
subplot(5,1,5);
plot(a3,'LineWidth',2);
ylabel('a3');
xlabel('时间 t/s');
==============================================
这个程序是要用小波分析对原信号进行三层的分解,但是执行了之后,原信号的横坐标是(0,0.06)
而在分解之后的信号d1,d2,d3的横坐标却是,...
是设置参数的时候错了吗..如果我想把所有波形的横坐标都统一为原信号的横坐标,即(0,0.06)应该怎么样修改程序????
搜索更多相关主题的

qqvirile 发表于 2009-5-28 16:17

回复 楼主 落英缤纷 的帖子

楼主采样的点数是16384*0.0625=1024点
help xcorr
C = XCORR(A,B), where A and B are length M vectors (M>1), returns
    the length 2*M-1
所以cory是2048点的
小波变换后系数也是2048点的

落英缤纷 发表于 2009-5-28 16:21

回复 沙发 qqvirile 的帖子

那是不是说小波变换后的横坐标是采样点数?
如果横坐标要换成时间轴的话,就要除以2倍的采样频率??
是这样吗?
页: [1]
查看完整版本: matlab关于小波分解之后横坐标与原信号不一致怎么办