求助:分段读信号的问题
读一个wav文件=wavread('E:\心音信号\正常信号\正常信号',20000);读后对normal进行多分辨率分析,得到重构信号a2,现在要对a2分段读取
for j=1:125
signal=a2(160*(j-1)+1:160*(j-1)+160);
end
这样写不行吗?为什么? 没有人告诉我吗?:@( 你把问题说清楚些把,把前面的程序给出,另外要把a2怎么分,分成几段 =wavread('E:\心音信号\正常信号\正常信号',20000);
y=decimate(normal,4);
=wavedec(y,4,'db3');
a2=wrcoef('a',c,l,'db3',2);
for j=1:30
signal=a2(160*(j-1)+1,160*(j-1)+160);
end
对a2分段,每段160个点 错误是 Index exceeds matrix dimensions. 你的a2是一个行向量或列向量吧,怎么会在signal=a2(160*(j-1)+1,160*(j-1)+160);语句中有两个索引值呢 for j=1:125
signal=a2(160*(j-1)+1:160*(j-1)+160);
end
这个是可以的,但是在你程序中却把冒号写成了逗号,显然错误
for j=1:30
signal=a2(160*(j-1)+1,160*(j-1)+160);
end
这样的问题建议楼主自己检查程序吧,仔细一点就不应该问这样的问题了 问题解决了。谢谢!
页:
[1]