多くのEEG信号があり、STFT(Short Time Fourier Transform)などの線形法を使用してそれらを分析します。STFTでは、分析ウィンドウの長さを最適化して、各分析ウィンドウの周波数スペクトルを適切に反映するにはどうすればよいですか?
多くのEEG信号があり、STFT(Short Time Fourier Transform)などの線形法を使用してそれらを分析します。STFTでは、分析ウィンドウの長さを最適化して、各分析ウィンドウの周波数スペクトルを適切に反映するにはどうすればよいですか?
回答:
最適なウィンドウの長さは、アプリケーションによって異なります。アプリケーションがより正確であるために時間領域情報を必要とするようなものである場合、ウィンドウのサイズを小さくします。アプリケーションがより具体的な周波数ドメイン情報を要求する場合、ウィンドウのサイズを大きくします。ヒルマーが述べたように、これはUncertainty Principle
本当に他に選択肢がありません。両方のドメインで一度に完全な解像度を取得することはできません。1つのドメインのみで完全な解像度を取得できますが、他のドメイン(時間および周波数ドメイン)または中間の解像度ではゼロの解像度で、両方のドメインで取得できます。
あなたが特にSTFTについて尋ねたので、これがあなたの質問に答えるかどうかわかりません。wavelet transforms
信号の情報を取得するために使用することができます。Wavelet transforms
複数のウィンドウ解像度で信号を分析することにより、はるかに広い範囲にわたって解像度を提供します。
時間周波数分析またはフィルターバンクでウィンドウを最適化するのに多くの時間を費やしました。検出、ノイズ除去、信号分離のためにそれらを最適化することができます...それはアプリケーションに非常に依存しています。時間周波数分析は一般に冗長であるため、最適化分析または合成ウィンドウは異なるタスクです。また、ウィンドウデザインのパラメーターは1つだけにします。
最適化の離散化された定式化は連続時間領域の場合よりもはるかに複雑であるため、問題はさらに複雑です(たとえば、局所化された時間周波数成分の最適集中ガボール変換を参照)。
私の現在の実際的な経験則は、まず、ウィンドウの形状と長さは問題ないと思われます。次に、長さが2倍で半分の2つのウィンドウで分析を繰り返し、結果を結合します。
通常、ウィンドウサイズが広いと周波数分解能は向上しますが、時間分解能は低下し、逆も同様です。C ++コードから5kHz、サンプルレート22050Hzの正弦波のスペクトログラムを生成したこの例を見てください。
上記のスペクトログラムのウィンドウサイズは2048サンプルで、オーバーラップは1024サンプルです。
このスペクトログラムを見てください:
これには、512サンプルのウィンドウサイズと256サンプルのオーバーラップがあります。
違いがわかりますか?最初のものは、2番目のものよりも周波数分解能が優れています。ただし、2番目の方が最初の方に比べて時間分解能が優れています。したがって、ウィンドウサイズの選択はアプリケーションによって異なります。ピッチを追跡するために音声サンプルを扱っている場合は、より大きなウィンドウサイズを選択することが適切です。