做边际谱怎么老出错
data1=data(1:10000,1);imf=emd(data1);
imf=imf(1:6,:);
=hhspectrum(imf);
=toimage(A,fa,tt,length(tt));
for k=1:size(E,1)
bjp(k)=sum(E(k,:))*1/fs;
end
f=(0:N-3)/N*(fs/2);
subplot(212)
plot(f,bjp);
xlabel('频率 / Hz');
ylabel('幅值');
??? Error using ==> accumarray
Out of memory. Type HELP MEMORY for your options.
Error in ==> toimage at 98
im = accumarray(,A(:),); 本帖最后由 haixiang008 于 2012-3-19 18:02 编辑
你的数据点过多,按照数据点设定的hilbert谱时频矩阵变量超出了matlab可用内存,你可以去掉toimage该条语句的输入变量tt,length(tt)这两项采用默认频率分辨率来解决该问题,或是降低数据采样点低于10000
页:
[1]