关于短时傅立叶变换的问题
在MATLAB的时频工具箱有直接求信号的短时傅立叶变换的程序tfrstft,但是现在不明白的是为什么用这个命令得到的STFT的值是一个方阵,而不是一个时间对应一个STFT变换后的值呢?请高手们指点啊?!如果要用这个命令得到的结果来绘制时间频率图,或者频率振幅图应该怎么恙得到呢?谢谢 用tfrstft函数,可以得到时间和频率信息:=tfrstft(x); 用TFRSTFT得到的频率是归一化的,从-0.5到0.5,如何得到信号实际的频率呢?
还有TFRSTFT得到的值是怎么一回事?为什么是一个方阵而不是一列值呢?
请指点,谢谢 =tfrstft(x,1:N,M);
返回的tfr是M*N的,t是1:N,f是M*1的,是以采样频率fs归一化的,从-0.5到0.5
因此画图
mesh(t/fs,f*fs,abs(tfr));
即得时频幅值谱阵图 直接运行tfrstft(x,1:N,M);,不要带输出参数的话,该函数能自动绘出stft时频图 请问楼上的,不带输出参数的话,得到的频率值似乎也是归一化后的啊,怎么转换成实际的频率呢? 运行上述语句后,会出来一个菜单,其中有一个菜单命令“change the sampling frequency",点击后在matlab命令窗口输入你的采样频率即可
页:
[1]