fft之后怎么看某条谱线的频率?一个n点的有限序列做fft得到相应的n序列输出频率谱图像但是横坐标是0~n-1怎么看某条谱线对应的频谱?
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 05:43:46
fft之后怎么看某条谱线的频率?一个n点的有限序列做fft得到相应的n序列输出频率谱图像但是横坐标是0~n-1怎么看某条谱线对应的频谱?
fft之后怎么看某条谱线的频率?
一个n点的有限序列
做fft
得到相应的n序列
输出频率谱图像
但是横坐标是0~n-1
怎么看某条谱线对应的频谱?
fft之后怎么看某条谱线的频率?一个n点的有限序列做fft得到相应的n序列输出频率谱图像但是横坐标是0~n-1怎么看某条谱线对应的频谱?
首先,你必须理解FFT的意义.
做n个点的FFT,表示你在时域上对原来的信号取了n个点来做频谱分析,也表示在频域上你会看到n个点上的信号幅度和相位,换句话说,就是将数字频率omega(范围是0 - 2*pi)分成n份,而整个数字频率omega的范围覆盖了从0 - fs的模拟频率范围.这里的fs是你的采样频率.而我们通常只关心 0 - pi 中的频谱,因为根据奈科斯特定律,只有f=fs/2范围内的信号才是被采样到的有效信号.那么,在omega的范围内,你得到的频谱肯定是关于n/2对称的.
举例说,如果你现在做了16个点的FFT分析,你原来的模拟信号的最高频率f=32kHz,采样频率是64kHz,n的范围是0,1,2...15.这时,64kHz的模拟频率被分成了16分,每一份是4kHz,这个叫频率分辨率.那么在横坐标中,n=1时对应的f是4kHz,n=2对应的是8kHz,n=15时对应的是60kHz,你的频谱是关于n=8对称的.你只需要关心n=0到7以内的频谱就足够了,因为,原来信号的最高模拟频率是32kHz.
这里可以有两个结论.第一,你必须知道原来信号的采样频率fs是多少,才可以知道每个n对应的实际频率是多少.第二,你对64kHz做了16个点FFT之后,因为频率分辨率是4kHz,如果原来的信号在5kHz或者63kHz有分量,你在频谱上是看不见的,这就表示你越想频谱画得逼真,就必须取越多的点数来做FFT,n就越大,你在时域上就必须取更长的信号样本来做分析.但是无论如何,由于离散采样的原理,你不可能完全准确地画出原来连续时间信号的真实频谱,只能无限接近(就是n无限大的时候),这个就叫做频率泄露.在采样频率fs不变得情况下,频率泄漏可以通过取更多的点来改善,也可以通过做FFT前加窗来改善,这就是另外一个话题了.
希望我的分析对你有帮助吧.