杭州锐达数字技术有限公司
查看: 165|回复: 0

[编程技巧] 短时傅里叶变换运行出现错误,拜托大神帮忙调试下,多谢了

[复制链接]
发表于 2018-5-13 16:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?我要加入

x
clear;close all;clc;
load cengliu.txt;
y=load('cengliu.txt');
fs=2500;
ts=1/fs;
nfft=10240;
N=150000;
t=(0:N-1)/fs;
figure(1);
plot(t,y)
xlabel('时间 t');
ylabel('幅值 y');
title('时域波形');
%计算功率谱
nfft=10240;
dsp=abs(fft(y,nfft));
%绘制功率谱图
figure(2);
plot((0:nfft/2-1)/nfft*fs,dsp(1:nfft/2),'LineWidth',2);
xlabel('频率 f');
ylabel('功率谱 PSD');%计算短时傅里叶变化
%%窗函数
N = 65;
h=window(@hamming,N);
sig=hilbert(y);
[tfr,t,f]=tfrstft(sig',1:1024,1024,h);
%%绘制等高线图
figure(3);
%[tfr,t,f]=tfrstft(A);
[X,Y] = meshgrid(t,f);
%contour(X,Y,abs(tfr(1:1024,:)).^2);
contour(t/2500,f(1:1024),abs(tfr(1:1024),:));
% contour(t(1:128)/256*fs,abs(tfr(1:128,:)).^2)
%contour(X,Y,abs(tfr(1:150000,:)).^2);;
xlabel('时间 t');
ylabel('频率 f');
%axis([0 60 -0.1 0.1]);
%grid on

未定义变量 abs。

出错 Untitled1000 (line 32)
contour(t/2500,f(1:1024),abs(tfr(1:1024),:));

cengliu.txt

985.96 KB, 下载次数: 0

回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

快速回复 返回顶部 返回列表