6

画像からガウスノイズを除去しようとしています。私は自分でノイズを追加しました:

nImg = imnoise(img,'gaussian',0,0.01);

ここで、独自のフィルターを使用してノイズを除去するか、少なくともノイズを減らす必要があります。理論的には、私が理解しているように、の畳み込み行列を使用すると役立つはずであり、またはones(3)/9のようなガウス畳み込み行列を使用する方が良いはずです。それでも、彼らは実際にはそれほどうまくトリックをしていません: [1 2 1; 2 4 2; 1 2 1]/9fspecial('gaussian',3)ここに画像の説明を入力してください

重要なものが欠けていますか?ちなみに、畳み込みを使用する必要があります。

4

3 に答える 3

10

あなたは何も見逃していません!もちろん、ノイズを完全に取り除くことはできません。さまざまなフィルターを試すことができますが、それらすべてにトレードオフがあります。

より多くのノイズ+より少ないブラーVS より少ないノイズ+より多くのブラー

これを次のように考えると、より明白になります。

畳み込みベースの方法では、すべての近傍が同じ色であると想定しています。

しかし、実際には、画像には多くのオブジェクトが含まれています。したがって、畳み込みを適用すると、隣接するさまざまなオブジェクトのピクセルを混合することでブラーが発生します。

次のようなより洗練されたノイズ除去方法があります。

  • ノイズ除去の中央値
  • バイラテラルフィルター
  • パターンマッチングベースのノイズ除去

彼らはたたみ込みだけを使っているのではありません。ちなみに、彼らでさえ魔法はできません。

于 2011-12-23T18:12:08.613 に答える
1

wiener2ノイズがガウスノイズなどの定電力(「ホワイト」)加法性ノイズである場合に最適に機能するものを使用できます。

于 2013-12-07T15:18:24.650 に答える
0

ガウス畳み込み行列を間違えました。合計が1になるように、9ではなく16で割る必要があります。そのため、その行列を使用して得られる画像は非常に軽量です。

于 2013-06-22T15:47:26.590 に答える