2012-02-28 14 views
0

私はiOSプラットフォームで周波数検出アルゴリズムを分析しようとしています。そこで、私はFFTとCoreAudio(example 1example 2)を使っていくつかの実装を見つけました。しかし、どちらの場合も、周波数にはいくつかの不正確さが存在します。iphoneで正しい周波数値を取得できません

  • (1)A4(440Hz)の場合は441.430664 Hzです。
  • (1)C6(1046.5Hz)は1518.09082Hzを示します。
  • (2)A4(440Hz)では440.72Hzです。
  • (2)C6(1046.5Hz)は1042.396606Hzである。

なぜこの問題が発生し、この問題を回避し、より正確な頻度で周波数を検出するのですか?

+0

入力信号のノイズ比は?周波数精度目標は何ですか? 440の結果は既に1%以内に正確です。 – hotpaw2

答えて

3

周波数領域における分解能は、FFTビンの数に反比例する。あなたのFFTの大きさは、周波数を微調整するために、より細かい解像度に隣接するビンの

  • 使用の大きさを得るために

    • 増加は周波数推定ではなく、FFTなどのための別の方法を使用し
    • を見積もる:あなたはどちらかする必要がありますパラメトリックモデル
  • +0

    私はSampleRate = 22050とFTTサイズ4098を使ってみました...しかし、これは助けになりませんでした。 –

    +2

    Fs = 22 kHz、FFTサイズN = 4096の場合、分解能は約5 Hzになります。これより細かい解像度が必要な場合は、Nを増やす必要があります。 –

    関連する問題