MATLAB--デジタル画像処理ソルトアンドペッパーノイズを追加



Matlab Digital Image Processing Add Salt

コショウと塩のノイズを追加します
インパルスノイズとしても知られるソルトアンドペッパーノイズは、画像によく見られるノイズの一種です。です ランダムな白い点または黒い点 、明るい領域に黒いピクセル、暗い領域に白いピクセル(またはその両方)が存在する場合があります。ソルトアンドペッパーノイズは、画像信号の突然の強い干渉、アナログ-デジタルコンバータ、またはビット伝送エラーによって引き起こされる可能性があります。たとえば、センサーが故障すると最小ピクセル値になり、センサーが飽和すると最大ピクセル値になります。

方法1:imnoise()関数を使用する



t=imread('a1.jpg') subplot(1,2,1), imshow(t), title('original picture') t1=imnoise(t,'salt & pepper',0.1) subplot(1,2,2), imshow(t1), title('Add noise density: 0.1 pepper and salt noise') t2=imnoise(t,'salt & pepper',0.2) figure, subplot(1,2,1), imshow(t2), title('Add noise density: 0.2 pepper and salt noise') t3=imnoise(t,'salt & pepper',0.3) subplot(1,2,2), imshow(t3), title('Add noise density: 0.3 pepper and salt noise')

効果画像:
画像
画像
注意:

  • ノイズの種類は「ソルト&ペッパー」です。スペースの位置に注意してください
  • ノイズタイプが「ソルト&ペッパー」の場合、3番目のパラメータは0.1などのノイズ密度を意味し、黒点または白点がランダムであるかどうかに関係なく、ピクセル総数の10%はもちろん黒と白の点です。

方法2:自分でランダムな点を作成する



image=imread('a1.jpg') [width,height,z]=size(image) result2=image subplot(1,2,1) imshow(image) title('Original') %k1, k2 as the critical point of judgment k1=0.2 k2=0.2 %rand(m,n) is a matrix that randomly generates m rows and n columns, and each matrix element is between 0-1 % Where k is 0.2, so elements less than k are 1 in the matrix, and 0 otherwise a1=rand(width,height)

効果画像:
画像

コードの説明:
1.c = rand(10,10)
画像
2.a = c<0.2
最初のステップで生成された、0.2未満の要素を持つ10 * 10行列のすべての要素が1になり、残りは0になります(c ++の0false 1と同様)。このステップでは、ノイズ密度をシミュレートします。 0.2はピクセルの20%に相当します。
画像
3.b = rand(10,10)<0.2
画像
4.それぞれa&b a&〜bで
a&b:aとbのプレーヤー要素が1の場合、結果は1になりますが、とにかく0になります。白い点または黒い点が表示されます。
a&〜b:bが0の場合、aは1であり、結果は1であり、黒または白のドットが表示されます。
これはすべてaに基づいており、aが​​1の点のみが白黒点になり、aが1の点は、実際にはノイズのない密度値であるしきい値を制限することによって取得されます。