Python言語とNumPyを用いて、高速フーリエ変換(FFT)でパワースペクトルを計算する方法をソースコード付きで解説します。
パワースペクトル解析
パワースペクトルとは、信号の振幅と周波数の関係を示す指標です。
フーリエ変換(Fourier Transform)によりパワースペクトルを求めることができます。
今回は、PythonモジュールNumPyのnumpy.fft.fftを用いて高速フーリエ変換を行い、周波数スケールで振幅と位相をグラフ表示してみました。
書式
F = numpy.fft.fft(f)
– | パラメータ |
---|---|
ndarray | 1次元のNumpy配列(ndarray) |
F | 返り値(フーリエ変換の結果:複素数) |
サンプルプログラムのソースコードです。
サンプルプログラム実行結果です。
404 NOT FOUND | Python入門速報
コメント
2番目と3番目のグラフがコードと違っています。
※大川 様
ご報告ありがとうございます。
コードを修正しました。
初学者です。
音声変換学習中につき当サイトにたどり着きました。
サンプルで用意されたデータを当方で用意した音声ファイルに置き換えることは可能でしょうか。
お時間ありましたらご回答宜しくお願い致します。