使用fftMatlab中的函数进行傅里叶变换时,可以指定FFT点的个数,nfft,命令写成fft(x,nfft)。在这种情况下,频率向量是多少?
傅里叶变换如何用相同nfft但在更窄的频率范围内计算?如何计算频率向量?
使用fftMatlab中的函数进行傅里叶变换时,可以指定FFT点的个数,nfft,命令写成fft(x,nfft)。在这种情况下,频率向量是多少?
傅里叶变换如何用相同nfft但在更窄的频率范围内计算?如何计算频率向量?
如果您的采样频率为,并且您使用个样本计算 FFT,则 FFT 计算到个频率的信号频谱,包括在内。在 Matlab 符号中,这将被写为:
freq_vector = (-N/2:N/2-1)./(f_s/N);
(请注意,您必须移动 FFT 操作返回的频谱以对应于该向量;在 Matlab 中,您将使用fftshift。)
我不知道任何可以让您限制频率范围的 FFT 算法。我建议使用Goertzel 算法来查找您感兴趣的特定频率的频谱。您也可以在执行 FFT 之前使用带通滤波器来消除不需要的频率。