1

信号処理を始めたばかりで、DFT/FFT 作業を行う必要があります。

2Hz と 5Hz の 2 つの周波数を持つ信号を取得すると、x(t)=sin(2*2pi*t)+sin(5*2pi*t) となります。100Hz で 5 秒間サンプリングします (つまり、私の DFT サイズは 500 です)。

私の入力は実数値であるため、対称 DFT が得られるので、後半を破棄し、sqrt(re^2+c^2) を実行して DFT 値を大きさに変換できます。

私のビン幅は 100/500 = 0.2Hz なので、次のようになります。ここに画像の説明を入力

予想通り、2Hz と 5Hz にピークがあります。

私の質問は、なぜマグニチュードが異なるのですか?

関連して、2Hz と 5Hz に 2 つの完全なスパイクがないのはなぜですか。つまり、グラフの 1.5 と 2.5 などにゼロ以外の値があります。これはスペクトルの漏れですか?

4

1 に答える 1

2

500 個のデータ ポイントが 512 ポイントの FFT として処理されていることを期待しています (ほとんどの FFT ライブラリは任意のサイズの入力をサポートしていないため、通常、次に高い 2 のべき乗までゼロ パディングされます)。その場合、スペクトル漏れの影響が見られます。FFT の前にウィンドウ関数を適用すると、これが修正されます。ピークの両側に「スカート」がまだ表示されることに注意してください。これは、有限のサンプリング ウィンドウによって導入される不確実性によるものです。

于 2012-12-13T14:43:48.393 に答える