【C言語】離散逆フーリエ変換

C言語を用いて、離散逆フーリエ変換する方法について紹介します。

逆フーリエ変換(C言語)

逆フーリエ変換とはフーリエ変換した信号データを元に戻す作業です。

応用例としては、ノイズ除去などがあります。

例えば、音声信号をフーリエ変換します。

すると、どの周波数の信号がどのくらい大きさで混ざっているかがわかります。

ノイズは比較的高い周波数のものが多いので、フーリエ変換されたものの高周波成分を弱めてやります。

そして、それれをフーリエ逆変換すると、元の音声信号からノイズを低減したものが出来上がります。

今回はC言語を用いて離散逆フーリエ変換してみました。

用いた信号データ

fourier.csv

C言語で離散フーリエ変換

※上記事でフーリエ変換したデータ「fourier.csv」を使います

ソースコード

プログラムのソースコードは下記の通りです。

実行結果

プログラムの実行結果は下記の通りです。

逆フーリエ変換後のデータファイル(inv_fourier.csv)ファイルをExcelで開いてグラフ化しています。

元のノコギリ波に近い形をしています。

逆フーリエ

シェア&フォローお願いします!