STFTでの窓関数の選択はどの程度重要ですか?


8

時間-周波数分析を使用してもつれを解こうとしている周期的な信号の合計があります。ウィンドウの長さと形によって、結果が大きく異なるようです。自動化された、うまくいけば逐次アルゴリズムを開発して仕事をしたいので、これは問題です。


2
関連:dsp.stackexchange.com/q/208/77(私はそれがだまされていると言うまでさえ行きます)
Lorem Ipsum

その質問は表示されませんでした。以下の私の答えを補足する良い追加の詳細については、そこにyodaの答えを示します。
Jason R

1
大きく異なる結果のうち、正しいと思うのはどれですか。また、その理由は何ですか。
hotpaw2 2012年

回答:


4

ウィンドウ関数には、2つの周波数領域プロパティの間に固有のトレードオフがあります。

  • メインローブの幅:先細りのウィンドウ関数は、周波数ドメインに「スミア」を引き起こします。これは、窓関数の周波数応答の中央ローブの幅によって視覚化されます。メインローブが広いほど、周波数が近い2つのトーンを解決するのが難しくなります(メインローブの幅よりも互いに近い場合、それらは一緒に汚れる傾向があります)。したがって、理想的には、非常に狭いメインローブを持つウィンドウ関数が必要になります。

  • 最大サイドローブの高さ:多くのウィンドウ関数には、特定のウィンドウ固有の速度で減衰する繰り返しサイドローブに囲まれた単一のメインローブで構成される周波数応答があります。これらのサイドローブの高さにより、周波数は分離されているが、振幅が大きく異なる2つのトーンを解決することが困難な場合があります。したがって、理想的には、サイドローブが非常に低いウィンドウ関数が必要になります。

問題:ウィンドウ関数のメインローブの幅を小さくすると、サイドローブが大きくなり、逆も同様です。したがって、関心のある信号間で予想される周波数と振幅の距離に基づいて、ウィンドウを選択するときに、アプリケーション固有のバランスをとる必要があります。システムの特定のパラメータを指定すると、要件を(できれば)満たすウィンドウを選択できます。

ウィンドウの長さを選択する限り(DFTの長さを選択することと同じです)、アプリケーションが課す可能性のある制約(レイテンシ要件、時間など)の範囲内で可能な限り長く観察することをお勧めします。対象の信号は、定常的な計算リソースなどと見なすことができます。周波数で解決する能力は、観測の長さに正比例します(時間で測定されます。必ずしもFFTの長さに基づいているわけではありません。FFTの長さはゼロで埋められ、周波数分解能は向上しません)。


1

ウィンドウの長さは、信号の周波数の変動に依存する必要があります。ウィンドウを調整して、そのウィンドウで信号の一定のスペクトルを適切にキャプチャできるようにします。

信号がどの程度形状に似ているかを知りたい場合は、ウェーブレット変換(CWT)を使用する必要があります。


1

価値があることについては、実用的な観点から見ると、カイザーウィンドウが非常に役立つことがわかりました。メインローブの幅とサイドローブの減衰の関係を調整できる単一のパラメーターがあり、ほとんどのメトリックに関して、適切に微調整されたカイザーウィンドウは、その従兄弟のどれよりも優れているか優れています。

(非常に非科学的な)経験則として、「ベータ」パラメータを、dBで表した望ましいサイドローブ減衰の0.133倍として決定できます。これは、すぐに開始点を取得してそこから微調整するために使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.