- 締切済み
ハニングウィンドウのバンド幅を教えてください。
ハニングウィンドウのバンド幅を教えてください。 ハニングウィンドウのバンド幅を教えてください。 こんにちは。 FFTアナライズをしております。スペクトルを描くと非常にでこぼこしていました。なめらかにするため、ハニングウィンドウのライン数を減らして、アナライズを実施したところ、でこぼこがなくなりました。ただ、このときどのくいのバンド幅をかけたのかわかりません。ライン数とバンド幅の関係を教えてください。 インターネットでいろいろと調べたのですが、見つかりませんでした。どうぞ、よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- sinisorsa
- ベストアンサー率44% (76/170)
式の訂正です。 なお、分析窓の時間幅をW(秒)とすると、 B≒ 1.44 / W となります。 サンプリング周波数40Hz、分析窓の点数512を入れてみると、 B ≒ 1.44×40/512 = 0.1125 (Hz) となりました。
- sinisorsa
- ベストアンサー率44% (76/170)
Scilabを使ってHanning窓のバンド幅を求めてみました。 サンプリング周波数をFs、分析窓の点数をM、バンド幅をBとすると、 およそ B ≒ 1.44 Fs / M なお、分析窓の時間幅をW(秒)とすると、 B≒ 1.44 W となります。 サンプリング周波数40Hz、分析窓の点数512を入れてみると、 B ≒ 1.44 40 / 512 = 0.1125 (Hz) となりました。
- sinisorsa
- ベストアンサー率44% (76/170)
ハニング窓(Hanning Window)の式 分析窓長をMとするとき、 w(n)=0.5( 1 + cos( (2π(n-(M-1)/2)/(M-1) ) ) ただし、窓の左端でn=0、右端でn=M-1です。 この関数は、両端では0で、中央部で1となる単峰性の重み関数 で、分析窓内の入力信号に対してこの重みを掛け算した後、 離散フーリエ変換(DFT)を実効します。 私は、FFTアナライザーというのを使ったことがありません。 コンピュータの上でプログラムによって、分析を行っています。 分析窓長の数倍以上のDFTの点数を使い、足りないデータは、 0を詰め込んでいます。(ゼロ・パッキングといいます) こうすることで、周波数軸上のデータ数を増やすことができます。 さて、80%オーバラッピングというのは、分析窓の時間方向の 移動(シフト)のことをいうのではありませんか。 お使いのアナライザーのマニュアルをよく読んでください。 アナライザーに周期的なパルスを入力できませんか。 窓内に3パルス程度の間隔でよいと思います。 これを分析し、得られた周波数特性の包絡線が概略 窓関数の周波数特性になります。 数値的に求めるには、Scilabのような数値計算ソフトを 使うとよいと思います。これは、無料で使えます。
- sinisorsa
- ベストアンサー率44% (76/170)
あなたの言うライン数というのは、窓関数の長さですか。 分析条件を明確にしないと、これだけでは何もいえません。 (1)サンプリング周波数はいくらか? (2)DFTの点数 (3)分析窓長 (3)DFTの点数より分析窓長が短い場合の処理 など ハニング窓関数の式は分かっていますね。 これをあなたの条件で離散フーリエ変換(DFT)を行い、グラフを描いて メインローブの幅(片側)を求めて2倍すれば、求められます。 計算が面倒なら、適当な数値計算ソフトウエアを利用すればよいでしょう。 計算してみれば、 分析窓長を2倍にすると、バンド幅は半分になる。 逆比例することが分かるでしょう。
補足
ご回答ありがとうございます。 ハニングウィンドウはデジタルフィルターで、Gk'=0.25Gk-1+0.5Gk+0.25Gk+1ということは調べてわかりました。ただ、周波数領域でどのような関数になるのかはわかりません。wikiペディアに関数らしきものがあったのですが、きちんと理解できておりません。 分析条件ですが、 (1)サンプリング周波数40hz (2)DFTの点数:8192 (3)分析窓長 512 (4)DFTの点数より分析窓長が短い場合の処理は80%オーバーラップというものを選んでおります。 たとえば、1が8192個のデータをDFT分析してみて、メインローブの2倍を求めればよりということでしょうか? あと、平滑化(スムージング)と80%オーバーラップというのは違うことをさすのでしょうか? どうぞ、よろしくお願いいたします。