2009-08-06 22 views
5

速度を問題とすると、別の言語を選択するほうが良いかもしれませんが、Pythonで1D高速フーリエ変換(FFT)を実行するために選択したライブラリ/モジュール/実装は何ですか?高速フーリエ変換(FFT)に推奨されるPythonモジュールは何ですか?

+2

Pythonパッケージは、一般的に、純粋なPythonのではなく、根本的なコンパイル言語でそれらを実装することはありません。つまり、他のものと同じくらい速くなります。 – tom10

答えて

3

私はFFTWライブラリー(「最速フーリエ西に変換」)を使用することをお勧めします。 FFTW download pageにはPythonラッパーが存在すると書かれていますが、リンクが壊れています。 Google検索でPython FFTWが表示され、FFTW3にPythonバインディングが提供されています。

8

私は私はそれが存在するが、最速の実装ですが、確かに、それは「市場」で最高の科学的なモジュールの一つだかどうかわからない、numpyのライブラリをお勧めします。あなたが実際に動作することをPythonバインディングを見つけることができるかどうか

5

FFTWはおそらく、最速の実装になります。使用する

最も簡単な方法は、しかし、確かにscipy.fftです。加えて、あなたはnumpy/scipyのすべての力をそれに合わせて得ます。

私はおもちゃのプロジェクト(基本的な音楽の視覚化)のためにそれを使用しましたが、私の知る限り覚えているとして、60fpsので44khzで沼地標準的なオーディオを処理するのに十分な速さでした。 Pythonの速度は、変換のスピードには反映されませんので、FFTを行う

関連する問題