9
\$\begingroup\$

This answer lists 3 techniques to reduce noise:

  • Keep the camera's sensor cool.
  • Take a burst of photos, then average them.
  • Lower the resolution.

Can someone shed more light about the last two techniques?

How can taking many photos and average them reduce the noise? How does one average them? And why does this would work?

How does lowering the resolution reduce noise?

\$\endgroup\$

3 Answers 3

10
\$\begingroup\$

The last two are really the same thing and works due to the fact that in most cases noise is just as likely to push the value of a pixel up as it is to pull the value down.

Let's say the 'true' value of a given pixel is 100 (out of 255). Take 10 images of the same scene in noisy conditions and you might record the following values:

104, 99, 98, 100, 101, 105, 99, 102, 94, 105

averaging these values (by adding them up and dividing by 10) gives the following pixel value: 100.7, which will round to 101, which is much closer to the true value than you would expect to be if you had to choose only one of the 10 images at random.

As for the how, there are specialist software packages for this (search for image stacking, I think Deep Sky Stacker is a popular choice). Alternatively you can do it in most image editing by loading several layers and merging pairs of layers (more recent versions of photoshop have special stacking functions which are a bit better).

The same principal lies behind reducing the resolution. One technique to do this is called 'binning' whereby you combine four adjacent pixels into one. So imagine four pixels corresponding to an area of flat colour within the image, which ought to have a uniform value of 100:

102, 103
93,  101 

averaging them gives a single pixel with value of 99.75 which rounds to 100.

Incidentally, taking several images and averaging them is equivalent to taking a longer exposure except:

  • you can let the camera cool between captures, helping with issue #1
  • long exposures only work if you capture more light, which means keeping the aperture constant and lowering the ISO value (which is not always possible, e.g. if you hit the minimum ISO value)
  • longer exposures can introduce camera shake, which can be avoided using several shorter exposures (though the images will need alignment).

--

Finally, when it comes to minimising noise the golden rule is to get as much light as possible. Averaging several exposures does this (it's total light captured that matters). Downsampling is really trading noise for resolution.

\$\endgroup\$
3
  • \$\begingroup\$ Downsampling alone does not necessarily reduce noise. It only does if it is combined with smoothing. Now to come to my question: do you know which software does size reduction in a way to also reduce noise, especially which free software? I assume programs like Lightroom do this when exporting, but I'm specifically interested in downsampling alone this time, not any advanced editing like what Lightroom does, and I'm not convinced that using some tool like ImageMagick to reduce the size of images will also reduce noise to the full extent possible. \$\endgroup\$
    – Szabolcs
    Commented Jul 8, 2013 at 10:01
  • \$\begingroup\$ @Szabolcs Any sensible resampling algorithm that takes multiple neighbouring pixel values into account will reduce noise. So provided you're not doing "nearest neighbour" resampling I wouldn't worry about the method used. Bicubic resampling is very common and I'm sure there are plenty of free apps that use this method. Lanczos3 as available in GIMP is probably slightly better. \$\endgroup\$
    – Matt Grum
    Commented Jul 8, 2013 at 10:35
  • \$\begingroup\$ @Matt Bicubic, bilinear, etc. are just interpolation methods though. They do use neighbouring (or next neighbouring) pixel values for interpolation, but they don't average over them. I think we're getting too much into a DSP topic though, so I think I'm going to post a question on DSP.SE about the mathematical details :-) \$\endgroup\$
    – Szabolcs
    Commented Jul 8, 2013 at 11:14
5
\$\begingroup\$

Temperature

In silicon there is an effect called thermal noise (Johnson noise). This is basically electrons been torn loose from the substrate and adding to the electrons being knocked loose by photons. These electrons are then considered part of the "signal" from the sensor, creating noise. This kind of noise is Gaussian distributed and have a mean value of zero.

Thermal noise increases with temperature, that's why a cooler sensor performs better.

Averaging

This only works for random noise with an average of zero. If the noise is random (enough) it's never quite the same, while the scene you're taking a picture of should be. Since information about the scene is recorded several times, each time with slightly different noise it's possible to average the pixels and get a higher signal to noise ratio than from one capture. This means that the scene needs to be static.

Different sized photo-detector

Depending on how the larger sensor is achieved you might get less noise. One technique is to keep the physical sensor size constant, and then combine several physical pixels into one logical one. Or the physical size of the sensor can be different.

By combining several physical pixels into one logical one you can achieve the same kind of noise reduction as by combining several captures.

By increasing the physical size of the pixel it's possible to reduce noise from readout and amplification. With a larger pixel, it's a larger number of electrons in the signal. Since the readout and amplification noise is close to fixed for any given production technology (transistor size) it's possible to achieve a larger signal to noise ratio.

\$\endgroup\$
2
  • \$\begingroup\$ what about Lower the resolution? \$\endgroup\$
    – K''
    Commented Aug 6, 2012 at 19:13
  • \$\begingroup\$ I'll come with that when I have more time tonight. \$\endgroup\$ Commented Aug 7, 2012 at 7:27
2
\$\begingroup\$

Here's an article which nicely explains the concept behind averaging and how to do it by hand with Photoshop. The same technique can be used in any image editing software that supports layers and layer opacity.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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