【发布时间】:2011-07-24 21:29:06
【问题描述】:
我已阅读有关 fft 和分辨率的所有 wikipedia 文章和 stackoverflow 文章。但是,在学习如何获得高分辨率频率而又没有巨大的延迟问题方面,没有任何帮助。
如果我正确理解信号处理:
我的采样率为 44,100,我占用了 256 个块。那么使用 FFT 的频率分辨率将为 44,100/2/256 = 86.1 Hz。
我经常看到像 http://www.tunelab-world.com/ 和 http://www.spectraplus.com/ 这样的例子,它们能够确定低至 0.01 Hz 的频率。
如果我用上述方法做到这一点,我需要 4410,000 个 bin 才能获得这种分辨率。在 44,100 采样率下,从输入中填充数据需要 100 秒。
我知道我错过了什么,但我不知道是什么。
我怎样才能得到一个信号,然后以这种精度绘制图表或显示峰值的频率,而无需占用大量的 bin 或永远等待?
提前感谢您的帮助!
【问题讨论】:
-
什么是“实时”?你知道有海森堡测不准原理这样的东西吗?为什么需要 100 秒?
-
实际上,当您对实信号(无虚部)进行 256 个样本时,在 fft 之后,“有用的”箱从索引 0 变为 128(即 N /2 + 1)共有 129 个垃圾箱。剩下的只是第一个的镜像,中间的(索引 128)是“镜像”。
标签: resolution fft analyzer spectrum