2
$\begingroup$

I am using Matlab function imnoise to add gaussian noise to one image. However, it seems that adjacent samples of the noise is correlated. I am using matlab code below to add noise.

 I = imread('eight.tif');
 J = imnoise(I, 'gaussian', 0, 0.02);
 figure; imshow(I);
 figure; imshow(J);

enter image description here

From the image, it contains many short vertical gray lines which maybe be image structures for some cases. Is the noise really additive white gaussian noise(AWGN)?

histogram of noise: enter image description here

$\endgroup$
  • 1
    $\begingroup$ Perhaps those patterns appear just as often as you would expect from white noise. What does the autocorrelation (using xcorr2 maybe) of the noise look like? For white noise it should be just a single spike with a noise floor. $\endgroup$ – Olli Niemitalo Feb 14 '16 at 11:05
  • 1
    $\begingroup$ I feel the each intensity of the pixels in lines is different. $\endgroup$ – KKS Feb 14 '16 at 11:30
  • $\begingroup$ @OlliNiemitalo Just as you mentioned, the output of xcorr2 is a single spike. cc = xcorr2(double(J - I), double(J - I)). I only know correlation between random variables. From the link en.wikipedia.org/wiki/Autocorrelation, one image is considered as a random process. Is it same as a 2d matrix of random variables? $\endgroup$ – Jogging Song Feb 15 '16 at 3:06
  • $\begingroup$ @김갑수The lines have lengths of several pixels, even if the variance of the noise is small. They are like image patterns. They will be left as lines in filtered images when I am trying to remove noise. $\endgroup$ – Jogging Song Feb 15 '16 at 3:13
  • 1
    $\begingroup$ I don't know the exact formula for the error but for white noise I think the error's standard deviation decays by $1/\sqrt{N}$, where $N$ is the number of observations used in calculation of one value of the autocorrelation matrix. $\endgroup$ – Olli Niemitalo Feb 15 '16 at 8:51
2
$\begingroup$

Yes it is. However, unlike real AWGN which comes mostly from thermal agitation in electronics, matlab's noise is not purely random, this might be the cause of you seeing a deterministic pattern. But this pseudo-random noise is usually random enough to approximate real life noise

If you want to assess the noise "randomness", plot an intensity histogram of In-I, with In being the noised image and I the original image (you are subtracting the deterministic part and keeping the random part).

$\endgroup$
  • $\begingroup$ On the histogram, there are some peaks. I guess it may be caused by clipping. Is this common for noise in images? $\endgroup$ – Jogging Song Feb 15 '16 at 4:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.