Зачем делить результат NumPy БПФ на N? - PullRequest
0 голосов
/ 02 августа 2020

Во многих учебных пособиях / блогах я видел вывод np.fft.fft(signal), разделенного на количество точек выборки N.

Я понимаю, что в некоторых реализациях преобразование масштабируется / нормализуется некоторыми коэффициент как умножение на N. Однако я просто прочитал документы, и по умолчанию вывод fft.fft() немасштабирован. Тем не менее, я все еще вижу вывод, разделенный на N везде.

Почему это?

Я заметил, что, масштабируя вывод на 1/N, я возвращаюсь правильные амплитуды составляющих волновых сигналов. Очевидно, это необходимо, но я хотел бы понять, что такое чистый вывод по сравнению с масштабированным выводом.

1 Ответ

1 голос
/ 02 августа 2020

Чтобы ДПФ было обратимым (x == IDFT(DFT(x))), вам нужно где-то разделить на N. При обработке сигналов эта нормализация обычно выполняется путем обратного преобразования. Например, Википедия показывает это так . В других областях это чаще делается при прямом преобразовании. В физике я видел, как половина нормализации (1/sqrt(N)) применялась к каждому преобразованию, что делало их симметричными c.

Когда прямое преобразование нормализуется, то возвращаемые им значения не зависят от длины сигнала (для Например, нулевая частота - это среднее значение всех значений сигнала). Таким образом, это более полезный вариант при изучении мощности сигнала.

Вариант, в котором нормализация применяется в обратном преобразовании (как обычно реализуется в программном обеспечении обработки сигналов, таком как np.fft.fft() и fft MATLAB). , то вычислить свертку умножением в частотной области проще всего: можно напрямую написать g = IDFT(DFT(f)*DFT(h)). Если нормализация применяется в другом месте, ее необходимо частично отменить, чтобы получить правильно масштабированный результат.

Другое программное обеспечение, например, библиотека FFTW, вообще не нормализует преобразование, оставляя это на усмотрение пользователя. Это позволяет избежать ненужных умножений, если пользователю нужен другой вариант нормализации, отличный от того, который выбирает библиотека.

...