関数 > 画像処理 > コンボリューションとフィルタ > 例: ウィーナーフィルタ
例: ウィーナーフィルタ
wiener2d関数を使用して、画像内の加法性ランダムノイズを削減します。
ウィーナーフィルタは、画像内の加法性ランダムノイズを削減することを目的に開発された最初の手法の 1 つです。このフィルタは加法性ノイズがピクセル位置から独立した定常ランダムプロセスであるという前提に基づいており、そのアルゴリズムは、元の画像と再構築された画像との間の二乗誤差を最小化します。
この例の使用方法については、画像処理の例についてを参照してください。
一様分布ランダムノイズの使用
1. 単純な四角形の画像を作成します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
2. runif関数を使用して、四角形の画像にノイズを付加します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
3. 7 x 7 のウィンドウを使用したウィーナーフィルタを画像に適用します。
クリックしてこの式をコピー
4. scale関数を使用して、2 つの画像を尺度化して表示します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
(wiener_sl.bmp)
(wiener_sf77.bmp)
四角形の輪郭はぼやけていませんが、ノイズは平滑化されています。ただし、フィルタウィンドウの四角形の輪郭付近にあるノイズは除去されていません。
5. 3 x 3 のウィンドウを使用したウィーナーフィルタを画像に適用します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
(wiener_sf33.bmp)
この画像では、全体的な平滑化の度合いは小さくなっていますが、四角形の輪郭のより近くまで平滑化が行われています。
ガウスノイズの使用
1. 画像ファイルを読み込んで、ランダム白色ガウスノイズによって劣化させます。
クリックしてこの式をコピー
クリックしてこの式をコピー
2. rnorm関数を使用して、画像にガウスノイズを付加します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
3. scale関数を使用して、2 つの画像を尺度化します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
(fruit_sm.bmp)
(fruit_sl.bmp)
4. 5 x 5 のウィンドウを使用したウィーナーフィルタを適用してノイズを抑制します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
(fruit_w55.bmp)
これは役に立ちましたか?