「周波数分解能」の意味をしっかりと理解していないのに、次の問題に取り組んでいます:

サンプリング周期Ts = 1/2000の連続時間信号をサンプリングし、結果の離散時間信号に長さ1000のウィンドウを使用するとします。 2000ポイントのDFTを使用して変換すると、周波数分解能はどうなりますか?

誰かがこれを理解するのを手伝ってくれますか?

コメント

  • 補間を使用した潜在的なプロット解像度、S / Nを指定したピーク位置推定解像度、結果ビン分離、または分離基準を使用したピーク分離解像度が必要ですか?これらはすべて、同じ長さのDFTに対して異なる周波数分解能を生成します。
  • @ hotpaw2このまたは別の有益な質問でこれらの分解能について話していただければ幸いです。

回答

編集:

以下の "周波数分解能" の定義が完全に正しいことに気づきました。間違っています(OPの質問も同様です)。 周波数分解能は、周波数空間でのウィンドウ関数の大きさがディラックのデルタ関数にどれほど似ているかです。これは、ウィンドウと時間領域の信号の積が周波数領域で畳み込みになるためです(ディラックのデルタ関数との畳み込みは、完全な周波数分解能を与えるサンプリングです)メインローブが太く(分散によって定量化)、サイドローブが高いほど、周波数分解能が悪くなります。さらに、時間分解能は、時間領域でのウィンドウ関数の分散で定量化できます。


周波数分解能はビン分解能/幅ではありません。下のグラフでは、ビンの幅が狭くなっているにもかかわらず、ローブが近づかない(周波数分解能)ことに注意してください。

クレジット:Dan Boschen

周波数分解能は、矩形関数(つまり、sinc関数)のフーリエ変換のプロパティです。

フーリエ変換を使用するには、関数をウィンドウ処理する必要があります(理論的に使用する場合でも)。結果として、関数 $ f(t)ではなく、常に $ f(t)w(t)$ を使用しています。 )$ 自体(ここで $ w(t)$ は矩形関数です)。畳み込み定理によれば、ウィンドウ関数のフーリエ変換は常に $ \ hat {f} $ $$の畳み込みです。 hat {w} = $ sinc。特に、 $ f $ が正弦波の場合、 $ \ hat {f} $ はディラックのデルタ関数になります。畳み込みは、sinc関数のサンプリングにすぎません。したがって、ウィンドウ処理時に定期的に周波数が完全に失われます。この損失の周期性は、 周波数分解能 です。

ウィンドウ関数では、DTFTはCTFTの周期的な近似であるため、これらのプロパティも取得します。

DFTにゼロを埋めない場合(つまり、のみ)、混乱が生じます。サンプル $ f(t)w(t)$ ここで、 $ w(t)= 1 $ )、ビンの幅は周波数分解能と同じです。

ただし、ゼロを埋めることもできます(つまり、サンプル $ f(t)w(t)$ ここで、 $ w(t)= 0 $ )であり、これにより、DTFは<のDTFTをより適切に補間します。 span class = "math-container"> $ f(t)w(t)$ 。最初のグラフを参照してください。


長方形関数のフーリエ変換がsinc関数である理由を確認するには、このビデオをご覧くださいそして正弦関数の巻き上げを検討します(ただし、かなり複雑です)


OPの例に答えるには、ビンの解像度は $$ \ fracです。 {F_s} {N} = \ frac {2000} {2000} = 1 $$ ここで、 $ F_s = 2000 $ Hzはサンプリングレートであり、 $ N $ DFTサイズ。

周波数分解能は、ウィンドウでサンプリングした場合のビン分解能です(ゼロパディングなし)。

$$ \ frac {F_s} {M} = \ frac {1} {T} = 2 $$ ここで、 $ M $ はウィンドウ内のサンプル数、 $ T $ はサンプルの期間、 $ F_s = M / T $

コメント

  • いい答えのトム。また、明確でない場合は、'実際には長方形のウィンドウを使用しないことがよくありますが、他のウィンドウは、劣化を犠牲にしてサイドローブを大幅に減少させる(ダイナミックレンジを改善する)のに役立ちます。さらに周波数分解能。これと一般的なDFTのアプリケーションに関する私のお気に入りの古典的な論文の1つは、fredharrisによるものです。 'まだ見ていない場合は、'本当に楽しんでいただけると思います: web.mit.edu/xiphmont/Public/windows.pdf
  • @TomHuntingtonいいですね、残念ながら' 2回賛成できません!
  • @TomHuntingtonWikipediaはどうやら'私の公式やテクニックについて知らないようです。ビン内の解決にはまだ問題がありますが(ノイズと方程式の感度のため)、近くの周波数は反復的な推定と削除によって解決できます。大きいトーンを削除すると、小さいトーンが推定されます。小さいトーンを削除すると、大きいトーンが読みやすくなります。など、複数のトーンでも。どんな種類のウィンドウでも計算が複雑になります。
  • 振幅がほぼ等しいが周波数が非常に近い2つの正弦波がある場合は、時間領域でうなり現象を使用できます。信号の見かけの周波数(ゼロ交差による)は2つの周波数の平均であり、エンベロープの周波数(フルサイクル、たとえば2つのローブを使用する場合)は周波数の差の半分です。
  • また、解像度は、測定するものすべての精度を定義します。正確さについては何も述べていません。

回答

達成しようとしていることに少し依存します。

$ N $ の長さのFFTを実行する場合 $ F_s $ の場合、多くの人があなたの周波数分解能は $ \ frac {F_s} {N} $ だと言うでしょう。それが正しいかどうかは、周波数分解能をどの程度正確に定義し、それを使って何を計画しているかによって異なります。

実際に起こっていることは、サンプリングを使用して周波数領域関数をサンプリングすることです。 $ \ frac {F_s} {N} $ の間隔。 FFTサイズを選択するとすぐに、両方のドメインでサンプリングが行われ、サンプリング間隔は $ \ frac {1} {F_s} $ 時間と $ \ frac {F_s} {N} $ の周波数。

周波数領域のサンプリングには、時間領域のサンプリングと同じプロパティ、要件、問題がすべてあります。エイリアシングを取得し、補間することができ、他のドメインに周期性があると想定されます。

サンプリング定理を適用するだけで、信号を完全に特性化するために必要な周波数分解能は、単に時間領域での長さ。これは、LTIシステムのインパルス応答など、本質的に時間制限のある信号に適しています。

ただし、長い連続信号には実用的ではありません。この場合、アプリケーションに「十分」な周波数分解能を選択する必要があります。これは、要件と目的によって異なります。特定のアプリケーション。

回答

サンプリングは $ {T} _ {s}によって与えられます= \ frac {1} {2000} $ [Sec]。
ウィンドウの長さは1000サンプルです。
ウィンドウの長さはデータの長さと等しくなければならないため、データの長さは1000サンプルであると推測されます。つまり、サンプリング時間は $ 0.5 $ [Sec]です。

DFTのビン解像度は、サンプリング間隔と次の数の間の比率です。 DFTサンプル。この場合は2000です。したがって、ビンの解像度は $ \ frac {1} {4000} $ [Hz]です。

回答

FFTのビン幅、または私が言いたい表現の解像度はFs / Nです。ここで、NはFFTのサイズです。実際の解像度は、使用するウィンドウとウィンドウの長さによって異なります。

例:長方形のウィンドウは最大の解像度を提供しますが、ダイナミックレンジは小さくなります。他のより滑らかなウィンドウは、よりダイナミックレンジまたは下側のサイドローブで解像度が低くなります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です