• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:FFTがうまくできない)

FFTがうまくできない

このQ&Aのポイント
  • FFT(高速フーリエ変換)がうまく機能しない問題について
  • ローパスフィルタをプログラムで実現する際、FFT(高速フーリエ変換)を使用していますが、うまく機能しません。
  • 具体的には、FFTを使用して逆フーリエ変換を行い、元の波形に戻れるかを確認していますが、正しく戻りません。

質問者が選んだベストアンサー

  • ベストアンサー
  • f272
  • ベストアンサー率46% (8469/18132)
回答No.1

よく見てないけど,スケーリングするのを忘れてるような... if(abs(FFTBuffer[i]-data[i])>0.01) じゃなくて if(abs(FFTBuffer[i]*(2.0/bufferSize)-data[i])>0.01) で判定したらどうなる?

momiziiro
質問者

お礼

有り難うございます。 お礼遅くなってしまって申し訳ありません。 それで確かに誤差がなくなりました。

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

#1 で正解のようですね... って, ちゃんとコードに書いてあるし orz

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

せめて何がどう「うまくいかない」のかくらいは書いてくれないかなぁ? 「テーブル初期化」のところで何をやっているのかさっぱりわからん. あと, 「memset で初期化」はあんまりよくない.

momiziiro
質問者

お礼

memsetの部分はfor初期化にしました。 有り難うございます。 #3と併せてお礼させてください。

関連するQ&A