1 畳み込み定理の基本
1.1 畳み込みの定義
畳み込みは、2つの関数(信号)の重なりを積分または和で集計し、1つの新しい関数を作る演算である。連続時間では、入力信号同士を時間反転したものと組み合わせつつ、全時間にわたって重み付けして合成する。離散時間では、同様の考え方を総和として表す。
目的は「ずれ(ラグ)ごとの積の寄与を集める」ことにある。したがって畳み込みは、片方の信号を反対方向にずらしながらもう一方と掛け合わせ、全体を積分(または和)して得られると理解できる。
1.2 フーリエ変換との対応関係
畳み込み定理は、畳み込み演算がフーリエ変換の下で単純な積に変換されることを主張する。すなわち、時間(あるいはサンプル番号)領域で難しい畳み込み計算が、周波数領域では点ごとの積として扱える。
これはフーリエ変換の線形性と、複素指数が持つ畳み込みに対する整合性によって成立する。結果として、解析・計算・設計の中心を周波数領域へ移せる点が大きな利得となる。
1.2.1 連続時間の畳み込み
連続時間の信号 \(x(t)\)、\(h(t)\) に対し、畳み込み \(y(t)=(x*h)(t)\) は \[ y(t)=\int_{-\infty}^{\infty} x(\tau)\,h(t-\tau)\,d\tau \] で定義される。畳み込み定理では、この \(y(t)\) のフーリエ変換が \(X(\omega)\) と \(H(\omega)\) の積に一致する、という形で対応が示される。
このとき、時間変数の反転・シフトといった操作が周波数側では位相因子や積として現れ、計算規則として整理される。
1.2.2 離散時間の畳み込み
離散時間の信号 \(x[n]\)、\(h[n]\) に対し、線形畳み込み \(y[n]=(x*h)[n]\) は \[ y[n]=\sum_{k=-\infty}^{\infty} x[k]\,h[n-k] \] で与えられる。畳み込み定理の離散版では、離散時間のフーリエ変換(DTFT)により、畳み込みが周波数領域での積へ写像される。
計算上は、和で表された畳み込みが周波数点ごとの乗算へ置き換わるため、計算量の見積もりが容易になる。
1.3 本質的な直観
本質的には、畳み込みが「一方をずらしたときの寄与を全体で積み上げる」操作であり、フーリエ変換が「周波数成分ごとに情報を分解し、異なる周波数成分の干渉を整理する」変換である点が対応する。周波数成分は線形合成に対して独立に振る舞いやすいため、畳み込みで生じる合成は周波数点で掛け算に写る。
直観としては、畳み込みは“フィルタリング”の時間領域での記述であり、周波数領域ではフィルタの応答がそのまま乗算係数になる、という関係が核である。
2 定理の代表的な形
2.1 連続時間版
連続時間の畳み込み定理は、適切な条件のもとで
- 時間領域の畳み込み
- 周波数領域の積
が等価になることを述べる。
具体的には、フーリエ変換を \(\mathcal{F}\{x(t)\}=X(\omega)\) と表すとき、畳み込み \(y(t)= (x*h)(t)\) に対して \[ \mathcal{F}\{y(t)\}= \mathcal{F}\{x(t)*h(t)\}= X(\omega)\,H(\omega) \] が成り立つ、というのが代表的な表現である。
2.1.1 積と畳み込みの交換(周波数領域)
畳み込み定理には、積と畳み込みが交換される性質も含まれる。すなわち、時間領域での畳み込みが周波数領域では積へ、逆に周波数領域での積は時間領域では畳み込みへ戻る関係が対称的に現れる。
この双対性は、変換の逆写像とフーリエ変換の性質を用いることで導ける。実務では「どちらの領域で計算しやすいか」を選ぶための指針として機能する。
2.2 離散時間版
離散時間の設定では、直近の計算規則はDTFTや、条件に応じて離散フーリエ変換(DFT)で記述される。離散時間版の基本形は、畳み込みがDTFT下で周波数点ごとの積になる点で一致する。
2.2.1 周期信号での対応(離散フーリエ変換)
周期的な離散信号では、DFTを用いた表現が自然になる。周期信号に対する畳み込みは、線形畳み込みと区別された循環畳み込みとして扱われることが多い。DFTの下では、循環畳み込みが周波数領域での点ごとの積に対応する。
この対応は、実装で「ブロック分割とゼロ埋め」を行い、線形畳み込みに近い効果を得る際の理論背景として利用される。
2.2.1 周期信号での対応(離散フーリエ変換)
周期信号では、周波数側の成分が有限個の離散点として扱われるため、計算が体系化される。時間側の循環性と、周波数側の離散化が整合することで、畳み込み演算が周波数での積として表現される。
2.3 変数の扱いと規約
実際の式では、フーリエ変換の定義により係数や符号が変わるため、規約を明示することが重要になる。周波数変数を \(\omega\) とするか、正規化周波数を用いるか、指数関数の符号や \(2\pi\) の位置が異なる場合、畳み込み定理の“形”は同じでも前段の導入式が変わる。
このため、実装や論文の照合では、まず変換規約(前向き・後向き、正規化の有無)を揃える必要がある。理論理解だけでなく、符号ミスや係数ミスを防ぐ実務上の要点となる。
2.3.1 フーリエ変換の符号・正規化
フーリエ変換の指数における符号、ならびに \(2\pi\) を積分の前後に置くかどうかで、変換後の積や逆変換の係数が変化する。たとえば同じ“周波数点ごとの積”という内容でも、逆変換側の係数が異なれば最終結果のスケーリングが変わる。
結論として、畳み込み定理を適用する際は、使用するフーリエ変換の定義と、計算環境(数値計算ライブラリ)の規約を一致させることが求められる。
3 条件と成立範囲
3.1 積分可能性・可積分性
畳み込み定理が厳密に成立するには、信号が一定の可積分条件を満たすことが関係する。連続時間では、畳み込みが意味を持つために積分が収束し、さらにフーリエ変換が定義できる条件が必要になる。
一般的には、\(L^1\)(絶対可積分)や、場合によっては \(L^2\)(平方可積分)に基づく枠組みが用いられる。これらの空間では、畳み込みの存在とフーリエ変換の扱いが保証され、定理の積形式が数学的に正当化される。
3.2 分布としての拡張
信号が可積分でない場合でも、分布(ディストリビューション)の理論により拡張して扱える。代表例として、理想化されたインパルスやデルタ関数は、通常の関数としてではなく分布として定義される。
この枠組みでは、フーリエ変換や畳み込みが“作用素として”定義され、形式的な積対応が保たれる。信号処理や制御で現れる理想的モデルの扱いにとって、分布の拡張は実用的な基盤を与える。
3.3 応用上の実用的な前提
実装や設計に落とし込む際は、厳密な数学条件の全てを確認するよりも、モデルと計算が破綻しない範囲の前提を置くことが多い。典型的には、有限長で打ち切られたデータや、窓関数による打ち切りが扱われる。
また周波数領域の積により得た結果が時間領域の線形畳み込みに対応するには、循環性が意図しない形で混入しないよう、ゼロ埋め等による補正が必要になることがある。
3.3.1 信号処理で用いる典型条件
FFT(高速フーリエ変換)を用いて畳み込みを計算する場面では、有限長系列に対して循環畳み込みと線形畳み込みを区別し、必要な長さのゼロ埋めを行うのが定番の条件である。具体的には、信号長とフィルタ長の合計に応じてDFT長を選ぶことで、時間窓の外側に回り込みが起こるのを防ぐ。
さらに、数値計算では丸め誤差や有限精度の影響も考慮し、実装の安定性が確認される。
4 計算・応用
4.1 周波数領域での高速計算
畳み込みは時間領域では一般に計算量が大きい。そこで周波数領域へ移し、変換→点ごとの積→逆変換の流れにすることで計算を効率化する。
この方法の計算コストは主にフーリエ変換の回数に支配される。離散実装ではFFTが利用でき、畳み込み計算を大幅に高速化できる。
4.1.1 畳み込みと高速フーリエ変換
FFTを用いる代表的手順は、(1) 入力系列を周波数領域へ変換し、(2) フィルタの周波数応答を同じ基底で求め、(3) 両者を周波数点ごとに掛け合わせ、(4) 逆変換によって時間側の出力を得る、というものである。
線形畳み込みを得たい場合は、循環畳み込みの回り込みを回避するため、適切なゼロ埋めを行うのが基本となる。こうした設計により、結果が理論上の畳み込みに対応する。
4.2 線形時不変系の解析
線形時不変系(LTI系)では、入力と出力の関係がインパルス応答と畳み込みで表される。入力 \(x(t)\) とインパルス応答 \(h(t)\) が与えられれば、出力 \(y(t)\) は \(y(t)=x*h\) で与えられる。
畳み込み定理を使うと、出力の周波数応答は入力の周波数スペクトルと系の周波数応答の積に整理される。つまり、時間領域の合成問題が、周波数領域の乗算として理解できる。
4.2.1 インパルス応答と周波数応答
インパルス応答 \(h(t)\) のフーリエ変換 \(H(\omega)\) は、系の周波数応答として解釈される。したがって、周波数成分 \(X(\omega)\) を持つ入力は、各周波数に対して \(H(\omega)\) で重み付けされ、その結果として出力スペクトルが得られる。
この構図により、ゲインや位相の変化、フィルタの通過帯や阻止帯といった性質が、周波数特性として直観的に説明できる。
4.3 フィルタ設計への利用
フィルタ設計では、目標とする周波数特性(通過・減衰・位相など)を実現するインパルス応答や伝達関数を求める。畳み込み定理は、時間領域での処理が周波数領域での乗算に対応することから、特性の設計意図をそのまま計算へ反映できる。
また、設計されたフィルタを実時間で適用する際にも、実装戦略(FFTベースか、直接畳み込みか)を選ぶ判断材料になる。
4.3.1 伝達関数による特性の理解
伝達関数 \(G(\omega)\) は、LTI系における周波数応答として理解されることが多い。入出力の周波数領域での関係が \[ Y(\omega)=X(\omega)\,G(\omega) \]
| の形で書ければ、振幅特性は \( | G(\omega) | \)、位相特性は \(\arg(G(\omega))\) の理解として整理できる。 |
|---|
この枠組みは、目標特性を満たすように \(G(\omega)\) を設計し、それをインパルス応答へ変換して実装する流れと整合する。
4.4 画像処理・信号処理での実装
画像処理では、2次元信号に対する畳み込み(2D畳み込み)がエッジ検出、平滑化、特徴抽出などに広く用いられる。計算は画素数に比例して重くなりやすいため、畳み込み定理とFFTの組合せが有効になる。
ただし、2Dでは境界の扱いが結果に大きく影響するため、境界条件の選択が設計上の重要事項となる。ここでの選択は、見た目のアーティファクトを減らすためにも必要になる。
4.4.1 境界条件と端点処理(ゼロ埋め等)
有限領域の画像に対して理想的な無限長の畳み込みをそのまま適用することはできない。そのため、画像外側をどう拡張するか(境界処理)が必要になる。ゼロ埋めはよく用いられるが、端部で暗い縁が生じるなどの影響が出ることがある。
他の選択肢としては、端点値を延長する、反射で埋める、周期的に折り返すといった方法があり、それぞれで境界の折り返しや連続性の性質が変わる。実装では用途に応じて妥当な方針を選び、周波数領域計算では特に循環性の混入を意識して系列長を整えることが求められる。