fft补零的作用
https://baijiahao.baidu.com/s?id=1657341609787471945&wfr=spider&for=pc

如果,直接对这1000个数据点其做快速傅里叶变换,将得到频谱图,只有一个谱峰,在1MHz的地方,由于频谱点稀疏,在1MHz附近根本无法将1 MHz 和1.05 MHz 的两个频率分开,这是因为频率分辨率不够,采样率100MHz,FFT点数1000个点,频率分辨率100kHz,所以无法区分50kHz.

那么对数据补零,增加FFT点数,比如补6000个零,得到7000个FFT点,可以看点信号频谱变得平滑了,但是仍然无法区分1MHz和1.5MHz。

这里就要引出一个波形分辨率的概率,虽然补零了,提高了频谱分辨率,但是无法提高波形分辨率。

所以要想提高波形分辨率,必须提高信号数据本身的长度,采样7000个信号数据做FFT


这是因为在1.05MHz那个地方不是刚好有个频点,也就是出现了所谓的频谱泄漏,还是数据长度不够,但这时是可以通过补零来达到目的。补零1000个点,做8000点的FFT。

图中会有一些旁瓣出现,这是因为补零影响了原始信号,如果,直接采8000个点原始数据,那么有:

【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步