Я читал во многих разных местах, что алгоритм FFT должен иметь размер входного массива, который имеет мощность в два, например 512 или 1024. Я также нашел много разных алгоритмов, которые вычисляют FFT, как Cooley-Tuckey и Bluestein (этот также работает с числами, которые следуют основным факторам, таким как 2,3,5,7).KissFFT и Power of Two
Ну, я использую KissFFT и вводя массив длиной 200. Почему он работает? Кто-нибудь знает, что происходит в этом случае? Усекает ли размер до 128 (2^7) или, может быть, использует другой алгоритм? Если он использует другой алгоритм, он все же дает правильный ответ, но требует больше времени для вычисления? (Время на самом деле не проблема для меня в этом случае.)
Когда я реализовывал FFT некоторое время назад, я изменял размер данных до 2^n (и заполнял «новые ячейки» нулями), и он работал так, что он мог быть реализован таким образом – fex