MATLAB的FFT变化总结

来源:互联网 发布:阿里云服务器开发端口 编辑:程序博客网 时间:2024/05/18 15:29

1、FFT输出意义

FFT(x)变化不指定向频域变化时的采样点个数,如果时域数据点的个数为n,此时得到的是n个点的复数。

FFT(x,N)指定向频域变化时的采样点个数N,此时得到的是N个点的复数。

每个点横坐标对应一个频率,纵坐标对应幅度特性(反应相加时占的比例)。另外,该值*2/n可以得到真实值。

FFT最终得到的复数具有对称的性质,除去第一个直流分量,并且关于Nyquist频率对称。

注:Nyquist频率为采样频率的一半,该频域必须大于信号最高频率,才能满足采样定理,在频域变化后避免高频混叠到低频,使得信号得以重建。

2、采样点数N的选取

第一、n的数量保证足够多,才能更好的选取N:

N>n时候,时域数据点不够会在后面补上零,补零会造成新的频率产生,让主峰值减小,但n很大时不影响观察;

n<N时候,数据需要截断,但是频谱分辨率会很高(n足够大);

如果n本身比较小,N再怎么选频谱分辨率都不高,不能很好的看不出信息。

第二,FFT计算时采用了二分的思想,采样点数为2次幂时,计算更快更准确。(可去了解基2的Cooley-Tukey FFT算法)

第三,选取采样点数大于时域数据点数,尽可能满足采样定理。

所以,最佳的N至少选取为大于时域数据点的2的幂,即 N=2^nextpow(n),甚至更大。

FFS的分辨率(即频率间隔)=采样频率Fs/N,因此N向上取的越大,分辨率越高。

 

大神的参考链接:

http://blog.163.com/fei_lai_feng/blog/static/9289962200971751114547/

 

0 0
原创粉丝点击