概要

ウィナー・フィルタによる
ノイズ除去の概要

MORE...

ウィナー・フィルタ
を導く

ノイズが定常で信号と無相関と仮定してウィナー・フィルタを
導きます

MORE...

トリビア

あまり語られることのない
ウィナー・フィルタの生い立ち

MORE...

ウィナー・フィルタでノイズ除去

概要

未知の元信号 \(X(\omega)\) にフィルタ \(H(\omega)\) が掛かり、さらにノイズ \(N(\omega)\) が加わったものが得られたとします。 \begin{eqnarray} Y(\omega) &=& H(\omega)X(\omega)+N(\omega) \label{Y} \end{eqnarray} もし、フィルタ \(H(\omega)\) とノイズ \(N(\omega)\) の特性が判っているなら、 得られたノイズ混じりの劣化信号 \(Y(\omega)\) から元の信号 \(X(\omega)\) を復元できないでしょうか。

ノイズが定常で信号と無相関な場合、劣化信号にウィナー・フィルタ (Wiener filter) を掛けると、復元誤差 (誤差パワー・スペクトルの期待値)を最小にできます。 \begin{eqnarray} E[|\underbrace{X(\omega)}_{元信号}-\underbrace{G(\omega)}_{ウィナー\\ フィルタ}\cdot \underbrace{Y(\omega)}_{劣化信号}|^2] \to \min \label{EXhatX} \end{eqnarray}

ウィナー・フィルタを導く

煩雑なので、以下 \(X(\omega)\) などの \((\omega)\) を省略し、式(\ref{EXhatX})を \begin{eqnarray} \varepsilon &=& E[|X-GY|^2] \end{eqnarray} と表すことにして、式(\ref{Y})を代入して展開していきます。 \begin{eqnarray} \varepsilon &=& E[|X-GY|^2] \nonumber\\ &=& E[|X-G(HX+N)|^2] \\ && X でまとめ直して \nonumber\\ &=& E[|(1-GH)X-GN|^2] \\ && 一般に |z|=z z^* だから \nonumber\\ &=& E[\left\{(1-GH)X-GN\right\}\left\{(1-GH)X-GN\right\}^*] \\ &=& E[\left\{(1-GH)X-GN\right\}\left\{(1-GH)^*X^*-G^*N^*\right\}] \\ && G と H は確定だから期待値演算 E[\quad ] の外に出して \nonumber\\ &=& (1-GH)(1-GH)^*E[XX^*] -G(1-GH)^*E[NX^*] -G^*(1-GH)E[N^*X] +GG^*E[NN^*] \label{eps1} \end{eqnarray} ここで元信号 \(X\) のパワー・スペクトルを \begin{eqnarray} P_S\ =\ E[|X|^2]\ =\ E[XX^*] \end{eqnarray} ノイズ \(N\) のパワー・スペクトルを \begin{eqnarray} P_N\ =\ E[|N|^2]\ =\ E[NN^*] \end{eqnarray} と書くことにしましょう。元信号 \(X\) とノイズ \(N\) が無相関とすると \begin{eqnarray} E[NX^*]\ =\ E[N^*X]\ =\ 0 \end{eqnarray} になりますので、式(\ref{eps1})は \begin{eqnarray} \varepsilon &=& (1-GH)(1-GH)^*\underbrace{E[XX^*]}_{P_S} -G(1-GH)^*\underbrace{E[NX^*]}_{0} -G^*(1-GH)\underbrace{E[N^*X]}_{0} +GG^*\underbrace{E[NN^*]}_{P_N} \\ &=& (1-GH)(1-GH)^*P_S + GG^*P_N \\ &=& (1-GH)(1-G^*H^*)P_S + GG^*P_N \\ &=& (1-G^*H^*-GH+GG^*HH^*)P_S + GG^*P_N \\ &=& P_S - G^*H^*P_S - GHP_S + |G|^2|H|^2P_S + |G|^2P_N \\ &=& (|H|^2P_S + P_N)|G|^2 - P_S(GH + G^*H^*) + P_S \label{eps2} \end{eqnarray} 一般に \(a\neq 0,c\in \mathbb{R},\ G,b\in \mathbb{C}\) に対して \begin{eqnarray} a|G|^2 + bG + b^*G^* + c &=& a|G|^2 + bG + b^*G^* +c + \left(\frac{bb^*}{a} -\frac{bb^*}{a}\right) \\ &=& a\left(GG^* + G\frac{b}{a} + \frac{b^*}{a}G^* + \frac{bb^*}{a^2}\right)+c-\frac{bb^*}{a} \\ &=& a\left(G+\frac{b^*}{a}\right)\left(G^*+\frac{b}{a}\right)+c-\frac{bb^*}{a} \\ &=& a\left(G+\frac{b^*}{a}\right)\left(G+\frac{b^*}{a}\right)^*+c-\frac{bb^*}{a} \\ &=& a\left|G+\frac{b^*}{a}\right|^2+c-\frac{|b|^2}{a} \end{eqnarray} が成り立ちますから、 \begin{eqnarray} \left\{ \begin{array}{lll} a &=& |H|^2P_S + P_N \\ b &=& -HP_S \\ c &=& P_S \end{array} \right. \end{eqnarray} とすれば(\ref{eps2})式は、次式のように \(A|G-B|^2+C\) の形に書くことができます。 \begin{eqnarray} \varepsilon &=& (|H|^2P_S+P_N)\left| G - \frac{H^*P_S}{|H|^2P_S+P_N}\right|^2 + P_S - \frac{|H|^2P_S^2}{|H|^2P_S+P_N} \label{eps3} \end{eqnarray} 最後の 2 項を \begin{eqnarray} P_S - \frac{|H|^2P_S^2}{|H|^2P_S+P_N} &=& P_S\left(1 - \frac{|H|^2P_S}{|H|^2P_S+P_N}\right) \\ &=& P_S \frac{|H|^2P_S+P_N-|H|^2P_S}{|H|^2P_S+P_N} \\ &=& \frac{P_S P_N}{|H|^2P_S+P_N} \\ &=& \frac{P_N}{|H|^2+\frac{P_N}{P_S}} \end{eqnarray} とまとめると、式(\ref{eps3})は次のように簡単化できます。 \begin{eqnarray} \varepsilon &=& \underbrace{(|H|^2P_S+P_N)}_{非負} \cdot \left| G - \frac{H^*P_S}{|H|^2P_S+P_N}\right|^2 + \underbrace{\frac{P_N}{|H|^2+\frac{P_N}{P_S}}}_{非負} \label{eps4} \end{eqnarray} ここで、\(|H|^2\) は非負、\(P_S, P_N\) もパワー・スペクトルだから非負なので、\(|H|^2P_S+P_N\geq 0\) であることを考えると、 誤差パワー・スペクトルの期待値 \(\varepsilon\) が最小になるのは、\(|\quad |^2\) の中が 0、つまり \begin{eqnarray} G&=&\displaystyle\frac{H^*P_S}{|H|^2P_S+P_N} \label{Wiener} \end{eqnarray} を採用した時 (この \(G\) をウィナー・フィルタといいます) で、復元しきれずに残る誤差パワー・スペクトルは、式(\ref{eps4}) の最後の項 \begin{eqnarray} \varepsilon_{min} &=& \frac{P_N}{|H|^2+\frac{P_N}{P_S}} \end{eqnarray} で見積もれます。


図1 : ウィナー・フィルタで誤差パワー最小になる

非因果性

よく見ると式(\ref{Wiener})の分子には \(H^*\) があります。

\(P_S, P_N\) はパワー・スペクトルだから実数、\(|H|^2\) も振幅2乗特性だから実数ですが、\(H^*\) だけは複素数で、しかも \(H\) の複素共役です。

周波数領域で複素共役を取った信号は、時間領域で時間軸が逆転しますので、\(H\) が因果的なインパルス応答を持つ場合でも、 ウィナー・フィルタ \(G\) のインパルス応答は非因果的になってしまいます。

画像処理では、元々ボケやブレなどの劣化要因 \(H\) のインパルス応答(点広がり関数)は非因果的であることが多いので、問題になることは少ないと思いますが、 音や振動のリアルタイム処理では、この非因果性が問題になります。

トリビア

太平洋戦争当時、日本軍のアメリカ本土爆撃に危機感をつのらせたアメリカ政府が、 数学者のノーバート・ウィナーさんに、高射砲の命中確率を最大化する研究を委嘱したのがきっかけで、 ウィナー・フィルタは生まれたようです。

しかし、当時あまりの難解さに、研究報告書の表紙が黄色だったことにひっかけて、 それ自体が「黄禍 (Yellow Peril) 」と呼ばれていたのだとか…。