|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
利用函数tfrstft()求傅里叶变换,用imagesc()来画图,为什么做出来的图是负值求解答。附上源程序:
figure
[x,fs]=wavread('1.wav');%fs为采样频率
sigLength=length(x);
X=hilbert(x);
h=window('hamming',63);
%[B,f,t]=specgram(x,256,22050,h,60);
[tfr,t,f]=tfrstft(X,1:sigLength,sigLength,h,61);
%[tfr,t,f]=tfrstft(x,(0:sigLength-1)/fs,sigLength);
t=(0:sigLength-1)/fs;
imagesc(t,fs*f,abs(tfr));
%contour(t,fs*f,abs(tfr));
%axis([0,0.1008,0,11000]);
axis xy;
title('短时傅里叶变换(STFT)时频图')
xlabel('时间 t/ms'); ylabel('频率 f/Hz');
colorbar;
图件:
|
|