Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
How to discover image noise in MATLAB?

Subject: How to discover image noise in MATLAB?

From: emre baykal

Date: 7 Mar, 2008 15:16:33

Message: 1 of 3

Hello there. i am a senior student in electrical
engineering. My term Project is about to identify source
camera. While identifing, i should use image noise for
comparing all images that i took before. What i am asking
is how i can find or obtain the noise of any image. i have
looked at all topics and workouts about this subject. All
of them are about denoising or removing the noise. it is
useless for me at this time. Anyway, if you have any idea
or if you did any Project like this before can you tell me
how i can obtain the noise of an image in MATLAB. Thanks.

Subject: How to discover image noise in MATLAB?

From: Ashish Uthama

Date: 7 Mar, 2008 21:44:45

Message: 2 of 3

> While identifing, i should use image noise for
> comparing all images that i took before.

Am sorry, I do not follow.


You would want a so-called 'gold' standard to compare against to get the
noise. Maybe you could get an 'ideal' image and then compare the test
image against it? (you can then use various measure: MAD etc)

googling for
   image noise estimation
might help


On Fri, 07 Mar 2008 10:16:33 -0500, emre baykal
<20393289@mail.baskent.edu.tr> wrote:

> Hello there. i am a senior student in electrical
> engineering. My term Project is about to identify source
> camera. While identifing, i should use image noise for
> comparing all images that i took before. What i am asking
> is how i can find or obtain the noise of any image. i have
> looked at all topics and workouts about this subject. All
> of them are about denoising or removing the noise. it is
> useless for me at this time. Anyway, if you have any idea
> or if you did any Project like this before can you tell me
> how i can obtain the noise of an image in MATLAB. Thanks.

Subject: How to discover image noise in MATLAB?

From: ImageAnalyst

Date: 8 Mar, 2008 01:15:01

Message: 3 of 3

On Mar 7, 10:16=A0am, "emre baykal" <20393...@mail.baskent.edu.tr>
wrote:
> Hello there. i am a senior student in electrical
> engineering. My term Project is about to identify source
> camera. While identifing, i should use image noise for
> comparing all images that i took before. What i am asking
> is how i can find or obtain the noise of any image. i have
> looked at all topics and workouts about this subject. All
> of them are about denoising or removing the noise. it is
> useless for me at this time. Anyway, if you have any idea
> or if you did any Project like this before can you tell me
> how i can obtain the noise of an image in MATLAB. Thanks.

-------------------------
emre baykal:
There are two kinds of noise: spatial and temporal. The simplest way
to look at temporal noise if to take several snapshots of a constant
scene, then to take the average of the standard deviations at each
pixel. For example, take 100 frames. For each pixel, calculate the
standard deviation of the 100 signal values. Then average all those
standard deviations together. There are several sources of temporal
noise: shot noise, photon (Poisson) noise, 1/f noise, etc.

The other type of noise is spatial noise. To calculate this you can
take several shots of a uniform scene (this is not easy). To
distinguish this from temporal noise, you need to determine that the
noise you see is really due to spatial characteristics and not normal
pixel-to-pixel noise caused by temporal sources (like I mentioned in
the first paragraph). So again, you can average together many many
frames so that you are sure all the noise (differences between pixel
signal values) is not due to temporal reasons. So now that you have
this image, you can see how much the signal varies from pixel to
pixel. For example you can take a histogram. There are many reasons
why you won't have a uniform image. Probably the two that have the
biggest effect are vignetting and fixed pattern noise. For
vignetting, I'm talking about how the image gradually gets darker as
you go from the center of the image to the edges/corners (I'm using
the layman's definition of vignetting rather than the true optical
engineer's definition but let's not get into that). And you might not
even choose to call vignetting "noise." To get rid of vignetting (and
any non-uniformity in illumination), you divide your image of your
test subject/scene by an image of a completely uniform scene. This is
normal background correction. If you need more explanation of that,
let me know. The other kind of noise is fixed pattern noise and is
caused by variations in the various electrical circuits responsible
for shifting the image off the sensor into your analog-to-digital
converter. There are also ways to reduce/eliminate this. Such as,
you can remove the lens and take an image. By doing this you are
guaranteed that no spatial variation on your sensor is due to lens
vignetting or non-uniformity of illumination on your scene.

There are many other kinds of defects in the image and you'd be
surprised what goes on in a digital camera to "fix up" the image
before you get it. There's a birefringent crystal over the sensor to
blur the image to reduce aliasing, there's an infrared filter, they
demosaic the image to get co-site RGB pixel values where you don't
otherwise have them (due to Bayer color filter), there's dark noise
(dark current) removal, there's a median filter to remove dead pixels,
etc. and all that happens even if you are dealing with the "Raw"
image. Then they apply other "fixes" which sometimes you can
optionally turn off, such as applying a gamma to lighten dark areas,
applying edge enhancement ("sharpening"), color enhancement, as well
as proprietary algorithms such as automatic red eye removal, automatic
face detection, etc. SPIE has offered a day long course on the subject
at the Electronic Imaging symposium before.

For your project, I'd probably describe some or most of these noise
sources, then measure the temporal noise by snapping a bunch of
pictures of a constant, uniform scene (a white piece of paper), and
then measure the fixed pattern noise by taking off the lens (if you
can) and again average a bunch of frames and find the mean and
standard deviation of the average image. You can then enhance the
contrast of the average image so that the fixed pattern noise will be
readily apparent in your report. You should see something like
stripes/streaks in one direction. I would think that should make a
fairly decent senior year report. You could actually do it all in a
day (for picture snapping and image analysis) plus another day to
write it all up.
Good luck,
ImageAnalyst

Tags for this Thread

No tags are associated with this thread.

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us