Wienerフィルタの原理・特徴・計算式

画像処理におけるWienerフィルタの原理や計算式についてまとめました。

Wienerフィルタとは

Wienerフィルタは、ノイズを除去するためのフィルタの1つです。ノーバート・ウィーナーによって開発され、画像データや音声データのノイズ除去などに活用されています。

Wienerフィルタの仕組み

Wienerフィルタの目的は、劣化信号 $ Y(\omega) $ から元の信号 $ X(\omega) $ を復元することです。ノイズが定常で信号と無相関である場合、Wienerフィルタを適用することで復元誤差(誤差パワースペクトルの期待値)を最小にすることができます.

Wienerフィルタ$ G(\omega) $ は次のように表されます:

$$ [ G(\omega) = \frac{H^*(\omega)S_X(\omega)}{|H(\omega)|^2S_X(\omega) + S_N(\omega)} ] $$

ここで、$ H^*(\omega) $ はフィルタの複素共役、$ S_X(\omega)$ は元の信号のパワースペクトル、$ S_N(\omega) $ はノイズのパワースペクトルです.

関連ページ

プログラミングによる実装例について以下ページで解説しています。

【Python/OpenCV】バイラテラルフィルタ(Bilateral Filter)でノイズ除去
Python版OpenCVでバイラテラルフィルタ(Bilateral Filter)を実装し、画像のノイズを除去する方法をソースコード付きで解説します。
【画像処理超入門】アルゴリズムの仕組みと実装方法を簡単に解説
画像処理超アルゴリズムの仕組みとプログラミングによる実装方法を簡単に解説します。
この記事を書いた人
西住技研

在学中はシステム制御理論や画像処理、機械学習を専攻分野として研究していました。就職後は、プログラミング(Python)を活用したデータ分析や作業自動化に取り組み、現在に至ります。そこで得たノウハウをブログで発信しています。
YoutubeX(旧Twitter)でも情報発信中です

西住技研をフォローする
画像処理

コメント