
信号処理や統計学において、ウィンドウ関数(アポダイゼーション関数またはテーパリング関数とも呼ばれる[ 1 ])は、選択された区間の外側で値がゼロとなる数学関数です。一般的に、ウィンドウ関数は区間の中央を中心として対称であり、中央で最大値に近づき、中央から離れるにつれて値が小さくなります。数学的には、別の関数または波形/データシーケンスにウィンドウ関数を「乗算」すると、積も区間の外側で値がゼロになります。残るのは、両者が重なる部分、つまり「ウィンドウを通して見たもの」だけです。同様に、実際の運用では、まずウィンドウ内のデータセグメントが分離され、次にそのデータのみがウィンドウ関数の値で乗算されます。したがって、ウィンドウ関数の主な目的は、セグメント化ではなくテーパリングです。
より長い関数のセグメントを解析する理由としては、過渡現象の検出や周波数スペクトルの時間平均化などが挙げられます。セグメントの長さは、時間分解能や周波数分解能といった要件によって、各アプリケーションごとに決定されます。しかし、この方法では、スペクトルリークと呼ばれる現象によって信号の周波数成分も変化します。ウィンドウ関数を用いることで、特定のアプリケーションのニーズに応じて、リークをスペクトル的に様々な方法で分配することができます。この記事では多くの選択肢を詳しく解説していますが、その違いの多くは非常に微妙で、実際にはほとんど影響はありません。
一般的なアプリケーションでは、使用されるウィンドウ関数は非負で滑らかな「ベル型」曲線です。[ 2 ]長方形、三角形、その他の関数も使用できます。ウィンドウ関数のより一般的な定義では、ウィンドウと引数の積が二乗積分可能であり、より具体的には、関数が十分に速くゼロに近づく限り、区間外で恒等的にゼロである必要はありません。[ 3 ]
ウィンドウ関数は、スペクトル分析/修正/再合成[ 4 ]、有限インパルス応答フィルタの設計、マルチスケールおよび多次元データセットの統合[ 5 ] [ 6 ]、ビームフォーミングおよびアンテナ設計に使用されます。

関数cos( ωt )のフーリエ変換は、周波数± ωを除いてゼロになります。しかし、他の多くの関数や波形には、便利な閉形式の変換が存在しません。あるいは、特定の時間範囲におけるスペクトル成分のみに関心がある場合もあります。
いずれの場合も、フーリエ変換(または類似の変換)を波形の1つまたは複数の有限区間に適用できます。一般に、変換は波形とウィンドウ関数の積に適用されます。矩形ウィンドウを含むあらゆるウィンドウは、この方法で計算されるスペクトル推定値に影響を与えます。
デジタルフィルタの設計では、ウィンドウが使用されることがあります。特に、sinc 関数などの無限期間の「理想的な」インパルス応答を有限インパルス応答(FIR)フィルタ設計に変換するために使用されます。これはウィンドウ法と呼ばれます。[ 7 ] [ 8 ] [ 9 ]
ウィンドウ関数は、統計分析の分野で、分析対象のデータセットを特定の点付近の範囲に制限するために用いられることがあり、その際、曲線近似対象部分から離れた点の影響を軽減する重み付け係数が用いられます。ベイズ分析や曲線近似の分野では、これはしばしばカーネルと呼ばれます。
モーダル解析で、インパルス、衝撃応答、正弦波バースト、チャープバースト、ノイズバーストなどの過渡信号を解析する場合、エネルギーと時間の分布が極めて不均一な場合は、矩形窓が最も適している可能性があります。たとえば、エネルギーの大部分が記録の開始時に集中している場合、非矩形窓ではエネルギーの大部分が減衰し、信号対雑音比が低下します。[ 10 ]
特定の楽器の音符の倍音成分や、特定の周波数におけるアンプの倍音歪みを測定したい場合がある。図2を再び参照すると、離散フーリエ変換(DFT)によってサンプリングされた、倍音的に関連する離散的な周波数セットにおいて、漏洩がないことがわかる。(スペクトルヌルは実際にはゼロ交差であり、このような対数スケールでは表示できない。)この特性は矩形窓に固有のものであり、上述のように信号周波数に合わせて適切に設定する必要がある。
変換対象のデータセットの長さが、必要な周波数分解能を得るために必要な長さよりも大きい場合、一般的には、データセットをより小さなセットに分割し、それぞれにウィンドウ処理を施す。ウィンドウの端での「損失」を軽減するために、個々のセットは時間的に重なり合う場合がある。パワースペクトル解析のウェルチ法および修正離散コサイン変換を参照のこと。
2次元ウィンドウは、画像処理において画像のフーリエ変換における不要な高周波を低減するためによく使用されます。[ 11 ]これらは、2つの形式のいずれかで1次元ウィンドウから構築できます。[ 12 ]分離可能な形式、計算するのは簡単だ。放射状形式は、半径を含むは等方性であり、座標軸の向きに依存しません。ガウス関数だけが分離可能かつ等方性です。[ 13 ]他のすべてのウィンドウ関数の分離可能な形式には、座標軸の選択に依存する角があります。2次元ウィンドウ関数の等方性/異方性は、その 2 次元フーリエ変換によって共有されます。分離可能な形式と放射状の形式の違いは、長方形開口部と円形開口部からの回折の結果に似ており、それぞれ 2 つのsinc 関数とAiry 関数の積で視覚化できます。
慣例:
図 2 の DFT のような離散時間フーリエ変換(DTFT)の疎なサンプリングでは、周波数が整数 DFT ビンでもある正弦波から DFT ビンへの漏れのみが明らかになります。見えないサイドローブは、他の周波数の正弦波から予想される漏れを示しています。[ a ]したがって、ウィンドウ関数を選択する際には、通常、DTFT をより密にサンプリングし (このセクション全体で行っているように)、サイドローブを許容レベルまで抑制するウィンドウを選択することが重要です。

矩形窓(ボックスカー窓、均一窓、ディリクレ窓、あるいは一部のプログラムでは誤解を招くことに「窓なし」と呼ばれることもある[ 18 ] )は最も単純な窓であり、データシーケンスのN個の連続する値を除くすべてをゼロに置き換えることと同等で、波形が突然オンオフするようになる。
他のウィンドウは、これらの急激な変化を緩和し、スカラップ損失を減らし、ダイナミックレンジを改善するように設計されています(§ スペクトル分析で説明)。
矩形ウィンドウは、1次Bスプラインウィンドウであると同時に、0乗正弦波ウィンドウでもある。
矩形窓は、離散時間フーリエ変換の平均二乗誤差の推定値を最小化するが、その代償として、前述の他の問題が生じる。
Bスプライン ウィンドウは、矩形ウィンドウのk重畳み込みとして得られます。これには、矩形ウィンドウ自体 ( k = 1)、§ 三角形ウィンドウ( k = 2)、§ パーゼン ウィンドウ( k = 4) が含まれます。[ 19 ]代替定義では、離散時間ウィンドウを畳み込む代わりに、適切な正規化されたBスプライン基底関数をサンプリングします。k次Bスプライン基底関数は、矩形関数のk重自己畳み込みによって得られる、次数 k − 1の区分的多項式関数です。

三角形の窓は次のように与えられる。
ここで、L はN、[ 20 ] N + 1、[ 16 ] [ 21 ] [ 22 ]またはN + 2 [ 23 ]のいずれかです。最初のものは、バートレットウィンドウまたはフェイェールウィンドウとしても知られています。これら 3 つの定義はすべて、 Nが大きい場合に収束します。
三角形ウィンドウは、2次Bスプラインウィンドウです。L = Nの形式は、幅がN ⁄ 2の矩形ウィンドウ2つの畳み込みと見なすことができます。結果のフーリエ変換は、半幅矩形ウィンドウの変換値の二乗です。

L ≜ N + 1と定義すると、パルゼン窓(ド・ラ・ヴァレ・プッサン窓とも呼ばれる)[ 16 ]は、次式で与えられる4次Bスプライン窓である。

ウェルチ窓は単一の放物線状の断面から構成される。
あるいは、ベータ分布のように、2つの因子として表すこともできます。
定義となる二次多項式は、ウィンドウの範囲のすぐ外側のサンプルにおいてゼロの値をとる。
ウェルチ窓は正弦窓にかなり近く、正弦のべき乗窓が有用なパラメータ化されたファミリーであるのと同様に、ウェルチのべき乗窓ファミリーも同様に有用です。ウェルチ窓または放物線窓のべき乗も対称ベータ分布であり、ほとんどの窓が超越関数であるのとは異なり、純粋に代数関数です(べき乗が有理数の場合)。ウェルチ多項式の 2 つの因子に異なる指数を使用すると、結果として一般的なベータ分布が得られ、これは非対称窓関数を作成するのに役立ちます。
定数でオフセットされたコサイン関数の形をしたウィンドウ、例えばよく知られているハミングウィンドウやハンウィンドウなどは、レイズドコサインウィンドウと呼ばれることがあります。ハンウィンドウは特にレイズドコサイン分布に似ており、その両端で滑らかにゼロに収束します。
レイズドコサイン窓関数は次の形式をとります。
あるいは、それらのゼロ位相バージョンとして:

設定ハニング窓を生成します。
ユリウス・フォン・ハンにちなんで名付けられ、動詞「ハンする」に由来するハニングとも呼ばれる。また、レイズド・コサイン分布に似ていることから、レイズド・コサイン とも呼ばれる 。
この関数は、コサイン和とサインのべき乗の両方のファミリーに属します。ハミング窓とは異なり、ハニング窓の端点はちょうどゼロに接します。結果として得られるサイドローブは、1オクターブあたり約18 dBでロールオフします 。[ 25 ]

設定約 0.54、より正確には 25/46 にすると、リチャード W. ハミングによって提案されたハミング窓が生成されます。この選択により、周波数 5 π /( N − 1 ) にゼロ交差が生じ、ハニング窓の最初のサイドローブがキャンセルされ、高さがハニング窓の約 5 分の 1 になります。[ 16 ] [ 26 ] [ 27 ] ハミング窓は、パルス整形に使用される場合、ハミング ブリップと呼ばれることがよくあります。[ 28 ] [ 29 ] [ 30 ]
係数を小数点以下 2 桁まで近似すると、サイドローブのレベルが大幅に低下し、[ 16 ]ほぼ等リップル状態になります。[ 27 ]等リップルの意味では、係数の最適値はa 0 = 0.53836 およびa 1 = 0.46164 です。[ 27 ] [ 31 ]
このファミリーは、レイズドコサインウィンドウを一般化したもので、一般化コサインウィンドウとも呼ばれています。[ 32 ]
以下の例を含め、ほとんどの場合、すべての係数a k ≥ 0 です。これらのウィンドウには、2 K + 1 個の非ゼロN点 DFT 係数しかありません。

ブラックマン窓は次のように定義されます。
一般的な慣習では、修飾語のないブラックマン ウィンドウという用語は、ブラックマンの「あまり真剣ではない提案」であるα = 0.16 ( a 0 = 0.42、a 1 = 0.5、a 2 = 0.08) を指し、これは、a 0 = 7938/18608 ≈ 0.42659、a 1 = 9240/18608 ≈ 0.49656、およびa 2 = 1430/18608 ≈ 0.076849 [ 34 ]で正確なブラックマン[ 33 ]に非常に近い。これらの正確な値は、3 番目と 4 番目のサイドローブにゼロを配置しますが[ 16 ]、エッジで不連続になり、6 dB/oct の減衰が生じます。切り捨てられた係数はサイドローブを同様にゼロにしませんが、18 dB/oct の減衰が改善されます。[ 16 ] [ 35 ]

ナッタル窓の連続した形状、そしてその1階微分は、ハニング関数のようにどこでも連続です。つまり、ブラックマン・ナトール窓、ブラックマン・ハリス窓、ハミング窓とは異なり、 x = ± N /2で関数は 0 になります。ブラックマン窓 ( α = 0.16 ) も端で連続微分を持つ連続ですが、「厳密なブラックマン窓」はそうではありません。


ハミングファミリーの一般化で、より多くのシフトされたコサイン関数を追加することによって生成され、サイドローブレベルを最小限に抑えることを目的としています[ 36 ] [ 37 ]。

フラットトップウィンドウは、周波数領域でスカラップ損失が最小限である部分的に負の値をとるウィンドウです。この特性は、正弦波周波数成分の振幅の測定に望ましいものです。 [ 17 ] [ 39 ]しかし、その広い帯域幅は、高いノイズ帯域幅と広い周波数選択をもたらし、アプリケーションによっては欠点となる可能性があります。
フラットトップウィンドウは、ローパスフィルタ設計法[ 39 ]を使用して設計することも、通常のコサイン和形式にすることもできます。
Matlab版の係数は以下のとおりです。
他にも、メインローブ付近でより高い値を犠牲にしてサイドローブがロールオフするなどのバリエーションがあります。[ 17 ]
Rife–Vincent ウィンドウ[ 40 ]は、ピーク値ではなく平均値が 1 になるようにスケーリングされるのが一般的です。式 1に適用される以下の係数値は、その慣習を反映しています。
クラスI、次数1(K =1):機能的にはハニング窓と正弦のべき乗(α = 2 ) に相当します。
クラスI、次数2(K =2): 機能的には正弦のべき乗(α = 4)と同等である。
クラスIは、高次のサイドローブ振幅を最小化することによって定義されます。次数K=4までの係数は表にまとめられています。[ 41 ]
クラスIIは、与えられた最大サイドローブに対して、メインローブの幅を最小化する。
クラス III は、次数K = 2 が§ ブラックマン ウィンドウに似ている妥協案です。[ 41 ] [ 42 ]

対応する関数はπ /2 の位相オフセットのないコサインです。そのため、サインウィンドウ[ 43 ]はコサインウィンドウとも呼ばれます。[ 16 ]正弦関数の半サイクルを表すため、半サインウィンドウ[ 44 ]または半コサインウィンドウ[ 45 ]とも呼ばれます。
正弦窓の自己相関は、ボーマン窓として知られる関数を生成する。[ 46 ]

これらのウィンドウ関数は次の形式をとります。[ 47 ]
矩形窓(α = 0)、正弦窓(α = 1)、およびハニング窓(α = 2)はこのファミリーに属します。
αが偶数の場合、これらの関数はコサイン和の形式でも表すことができます。

ガウス関数のフーリエ変換もまたガウス関数である。ガウス関数のサポートは無限に広がるため、ウィンドウの両端で切り捨てるか、ゼロ端の別のウィンドウでウィンドウ処理する必要がある。[ 48 ]
ガウス関数の対数は放物線を生成するため、これは周波数推定におけるほぼ正確な二次補間に使用できます。[ 49 ] [ 48 ] [ 50 ]
ガウス関数の標準偏差は、 σ ・N /2サンプリング周期である。

限定ガウス窓は、与えられた時間幅( N + 1) σ tに対して、可能な限り最小の二乗平均平方根周波数幅σ ωをもたらします。[ 51 ]これらの窓は、RMS 時間周波数帯域幅積を最適化します。これらは、パラメータ依存行列の最小固有ベクトルとして計算されます。限定ガウス窓ファミリーには、それぞれσ tが大きい場合と小さい場合の極限ケースにおける§サイン窓と§ガウス窓が含まれます。

L ≜ N + 1と定義すると、時間幅L × σ tの限定されたガウス窓は次のようによく近似されます。[ 51 ]
どここれはガウス関数です。
近似ウィンドウの標準偏差は、σ t < 0.14の場合、漸近的にL × σ tに等しくなります (つまり、 Nの値が大きい場合) 。[ 51 ]
ガウス窓のより一般化されたバージョンは、一般化正規窓である。[ 52 ]上記のガウス窓の表記法をそのまま用いると、この窓は次のように表すことができる。
偶数の場合。 でこれはガウス窓であり、アプローチこれは矩形窓に近似する。この窓のフーリエ変換は、一般的な場合、閉じた形では存在しない。しかし、これは滑らかで調整可能な帯域幅の他の利点を示しています。Tukey ウィンドウと同様に、この ウィンドウは自然に「フラットトップ」を提供し、時系列の振幅減衰を制御します (ガウスウィンドウでは制御できません)。本質的に、スペクトル漏洩、周波数分解能、振幅減衰に関して、ガウスウィンドウと矩形ウィンドウの間の優れた (制御可能な) 妥協点を提供します。このウィンドウ (または関数) の時間周波数表現に関する研究については、[ 53 ]も参照してください。

テューキー窓は、コサインテーパー窓とも呼ばれ、幅Nα /2(Nα /2 + 1個の観測値にまたがる)のコサインローブと、幅N(1 − α /2)の矩形窓との畳み込みとして考えることができます。
α = 0の場合、矩形窓となり、α = 1の場合、ハニング窓となる。

いわゆる「プランクテーパー」ウィンドウは、多様体における単位の分割理論で広く用いられてきたバンプ関数である[ 55 ]。それは滑らかである(関数)はどこでもゼロですが、コンパクトな領域外では正確にゼロ、その領域内の区間では正確に 1 であり、これらの限界の間では滑らかに単調に変化します。信号処理におけるウィンドウ関数としての使用は、プランク分布に触発され、重力波天文学の文脈で最初に提案されました。[ 56 ]これは区分的関数として定義されます。
テーパーの度合いはパラメータεによって制御され、値が小さいほど変化が急峻になる。
DPSS(離散長球状シーケンス)またはスレピアン関数、テーパー、またはウィンドウは、主ローブのエネルギー集中を最大化し、[ 57 ]スペクトルのノイズを平均化し、ウィンドウの端での情報損失を減らすマルチテーパースペクトル分析に使用されます。
メインローブは、パラメータαで与えられる周波数ビンで終わります。[ 58 ]
以下のカイザー窓は、DPSS窓を単純に近似して作成したものです。
カイザー窓、またはカイザー・ベッセル窓は、ジェームズ・カイザーによって発見されたベッセル関数を使用したDPSS窓の単純な近似である。[ 59 ] [ 60 ]
どこは、第1種0次変形ベッセル関数です。変数パラメータスペクトル漏洩パターンの主ローブ幅とサイドローブレベルの間のトレードオフを決定します。ヌル間の主ローブ幅は、次式で与えられます。DFTビン単位で、[ 67 ]典型的な値は3です。

与えられた主ローブ幅に対して、サイドローブのチェビシェフノルムを最小化する。 [ 68 ]
ゼロ位相ドルフ・チェビシェフ窓関数は通常、その実数値離散フーリエ変換によって定義される。: [ 69 ]
T n ( x ) は、xに関して評価された第n次チェビシェフ多項式であり、以下を用いて計算できます。
そして
は、唯一の肯定的な真の解決策です。ここで、パラメータαはサイドローブのチェビシェフノルムを −20 α デシベルに設定する。[ 68 ]
ウィンドウ関数は、逆離散フーリエ変換(DFT)によってW 0 ( k )から計算できます。 [ 68 ]
ウィンドウの遅延バージョンは、以下の方法で取得できます。
Nが偶数の場合、これは次のように計算する必要があります。
これは逆DFTです
バリエーション:

超球面窓は1984年にロイ・シュトライト[ 70 ]によって導入され、アンテナアレイ設計[ 71 ] 、非再帰フィルタ設計[ 70 ]、スペクトル解析[ 72 ]に応用されている。
他の調整可能なウィンドウと同様に、超球面ウィンドウには、フーリエ変換の主ローブ幅と相対的なサイドローブ振幅を制御するために使用できるパラメータがあります。他のウィンドウとは異なり、サイドローブの振幅が減少(または増加)する速度を設定するために使用できる追加のパラメータがあります。[ 72 ] [ 73 ] [ 74 ]
ウィンドウは時間領域で次のように表現できます。[ 72 ]
どこは次数 N の超球面多項式であり、そしてサイドローブパターンを制御する。[ 72 ]
特定の値他のよく知られたウィンドウも生成します。そしてそれぞれドルフ・チェビシェフ窓とサラマキ窓を示します。[ 70 ]パラメータ化を変えた超球面窓の図については、こちらを参照してください。


ポアソン窓、より一般的には指数窓は、窓の中心に向かって指数関数的に増加し、後半では指数関数的に減少します。指数関数は決してゼロにならないため、窓の端での値はゼロではありません(これは、指数関数と矩形窓の乗算と見なすことができます[ 75 ])。これは次のように定義されます。
ここでτは関数の時定数である。指数関数はe ≃ 2.71828、 すなわち時定数あたり約8.69 dBで減衰する。[ 76 ]これは、ウィンドウ長の半分にわたってD dBの目標減衰を実現するには、時定数τが次式で与えられる ことを意味する。
ウィンドウ関数は、他のウィンドウ関数の乗法的な組み合わせや加算的な組み合わせとしても構築されてきた。


§プランクテーパー窓に修正ベッセル関数で定義されるカイザー窓を乗じたもの。このハイブリッド窓関数は、プランクテーパー窓のピークサイドローブレベルを下げつつ、その優れた漸近減衰を利用するために導入されました。[ 77 ]プランクテーパーからのεとカイザー窓からのαという2つの調整可能なパラメータがあるため、特定の信号の要件に合わせて調整できます。

ハニング窓とポアソン窓を掛け合わせたもの。フーリエ変換は局所的な最小値なしに主ローブから無限に減衰するため、サイドローブは存在しません。したがって、ニュートン法のようなヒルクライミングアルゴリズムに使用できます。[ 78 ]ハーン・ポアソン窓は次のように定義されます。
ここで、αは指数関数の傾きを制御するパラメータである。

GAPウィンドウは、次数nの対称多項式展開に基づく調整可能なウィンドウ関数のファミリーです。これは、あらゆる場所で連続かつ連続な微分が可能な連続関数です。適切な展開係数と展開次数を用いることで、GAPウィンドウは既知のすべてのウィンドウ関数を模倣し、それらのスペクトル特性を正確に再現することができます。
どこは、順序。
さらに、一連の展開係数から始めると特定の既知のウィンドウ関数を模倣するGAPウィンドウは、最小化手順によって最適化され、主ローブ幅、サイドローブ減衰、サイドローブ減衰率などの1つ以上のスペクトル特性を改善する新しい係数セットを取得できます。[ 80 ]したがって、特定のアプリケーションに応じて設計されたスペクトル特性を持つGAPウィンドウ関数を開発できます。

の上記の慣例に従って、形状は対称である。しかし、非対称なウィンドウ関数も存在します。例えば、FIRガンマトーンフィルタの実装で使用されるガンマ分布や、ガンマ分布の有界サポート近似であるベータ分布などが挙げられます。これらの非対称性は、大きなウィンドウサイズを使用する際の遅延を低減したり、減衰パルスの初期過渡現象を強調したりするために使用されます。
コンパクトなサポートを持つ有界関数(非対称関数を含む)は、ウィンドウ関数として容易に使用できます。さらに、以下の式のように時間座標を変換することで、対称ウィンドウを非対称ウィンドウに変換する方法もあります。
ウィンドウは2回適用されます。1回目はFFTの前(「解析ウィンドウ」)、2回目は逆FFTの後、オーバーラップ加算による再構成の前(いわゆる「合成ウィンドウ」)です。…より一般的には、任意の正のCOLAウィンドウは、平方根を取ることで解析ウィンドウと合成ウィンドウのペアに分割できます。
{{cite journal}}: CS1 maint: 複数の名前: 著者リスト (リンク){{cite book}}ISBN /日付の不一致(ヘルプ)dBスケールでは、ガウス関数は二次関数であることに注意してください。これは、サンプリングされたガウス変換の放物線補間が正確であることを意味します。 ... スペクトルピークの二次補間は、線形振幅スケールよりも対数振幅スケール(例:dB)の方が正確である可能性があります。
このウィンドウ関数のファミリーは、1962 年にベル電話研究所の BF ローガンとの議論の後、カイザーによって「発見」されました。... このファミリーのもう 1 つの貴重な特性は、0 次の長球波動関数に非常に近い近似をすることです。
ウィンドウは
α
でパラメータ化される場合もある。ここで
β
=
π
α
。
以下のMatlabによるDPSSウィンドウとカイザーウィンドウの比較は、αを臨界サンプリングされたウィンドウのメインローブの端のビン番号として解釈する方法を示してい
ます
。