【发布时间】:2014-10-28 17:19:52
【问题描述】:
我在很多不同的地方读到过,FFT 算法需要输入数组大小为 2 的幂,例如 512 或 1024。我还发现了许多不同的计算 FFT 的算法,例如 Cooley- Tuckey 和 Bluestein(这个也适用于像 2、3、5、7 这样的素数因子)。
好吧,我正在使用 KissFFT 并输入一个长度为 200 的数组。为什么它可以工作?有人知道在这种情况下发生了什么吗?是将大小截断为 128 (2^7),还是使用其他算法?如果它使用另一种算法,它是否仍然给出正确的答案,但需要更长的时间来计算? (在这种情况下,时间对我来说实际上不是问题。)
【问题讨论】:
-
当我前段时间实现 FFT 时,我一直在将数据长度调整为 2^n(并用零填充“新单元格”)并且它工作正常,因此可以以这种方式实现