Introduction: Sharp Low-noise Photography Using Multiple Photos

Picture of Sharp Low-noise Photography Using Multiple Photos

This is a guide to using multiple shots and photoshop to avoid having to choose between motionblur (handshaking), or loads of noise when shooting badly lit subjects (high ISO sensitivity).
It's (propably) just a way to achieve "digital image stabilisation" using older cameras.
Any camera can be used, but high speed shooting will be preferable.

The image will also have to be cropped afterwards, so there's a slight loss of resolution (and you have to "reframe in photoshop afterwards).

We will be doing all the magic with a nice little feature in Photoshop CS3, under the "Load Images into Stack" script.

Step 1: About Low Quality Pictures

Picture of About Low Quality Pictures

This section is for photography rookies. If you know about shutter speed and the "shaky hands motionblur"-syndrome, then just skip this step.

So, you propably used a camera more than once, and maybe you have noticed, that when outside in the sun, the pictures are most often crisp and sharp, without any ugly noise.

When shooting in low light however, like indoors, you have propably noticed that the picture tends to get blurry and maybe with visible noise. Alot of people tend to believe it is because their camera "sucks", but often, it is because they just do not know the reason why these artifacts occur.

First I will try to explain the blur.

When you take a picture, you expose the sensor in the camera, so that light reflected from the subject, can hit the sensor and be registered as an electrical impulse.
This happens over a period of time. A longer period of exposure lets more light hit the sensor, which gives brighter images.
Unfortunately, during this exposure time, the subject might move compared to the camera.
Logically this will place the object in a new spot on the picture taken.
The object will therefore appear on the final picture both where it was at the start of the exposure, but also where it was at the end.
It will also leave a trace of itself between the two points, and looks transparent because of whatever being behind the subject at the beginning of the exposure, is visible to the camera at the end of the exposure.

For more info on motion blur, see here

The "shaky hands syndrome" is a result of motionblur, but not where the subject moves.
You might think you can hold the camera completely still, but you still move your hands (and the rest of your body) a tiny bit. Might not seam as much, but it will be alot for the camera,
especially if you have zoomed in.
This small movement will create motionblur. Not because the subjects move, but because the camera moves. When you hold your camera "still" your muscles jitter, and your balance shifts slightly, moving the camera slightly in several directions.
This makes it occur as general blurring, like it was out of focus.

The longer exposure times you use, the worse it will get.

Outside in the sun the exposure time (shutter speed) might be 1/125-1/1000 of a second, making the motion blur way too insignificant to be visible.

Inside however, you might only get 1/30, or maybe 1/2 second exposure time. This leaves plenty of room for motion blurring.

Modern cameras on automatic will try to avoid the long shutter speed.
To compensate for the smaller amount of light gathered, it either opens the aperture more, which will let more light through the lens, or, when the aperture can not get any bigger, make the sensor more sensitive.

The image sensor builds up a small charge at each cell depending on the amount of light hitting them. More light, bigger charge, brighter pixel.
(each 4 cells represent a pixel, with each cell registering blue, red, or green light, with the last one being used differently depending on sensor design).

Only problem is that these sensors are not perfect.
Alot of things can increase or decrease the charge at each cell. Temperature, difference in sensitivity between pixels etc. can make a each cell give off a too high or too low charge. This appears as too bright or too dark pixels of different colors on the final image.
The more sensitive the sensor is, the more noise there will be on the final image.

More info on the subject here:

Fortunately for us, the noise pattern changes each time you take a new picture.

Phew! that was alot of work. hope you understood it :) Else, add comment, and I'll try to rephrase something, or add a picture for explanation.

Step 2: Configuring the Camera

So, every time you take a picture, you get some noise.
When shooting dark scenes, and use a high ISO speed (sensor sensitivity) it is very visible,
while it is almost impossible to find on well lit bright pictures.

This noise does not look the same on each photo you take,
so by taking multiple photos, you can just find an average color for the same pixel on each image.
In that way you can get closer to the "actual" color.

So... Find yourself a subject with the right lighting for this experiment. I just chose a bunch of books in my room, lit by 2 windows with an overcast sky outside, right after sundown.

If you have "exposure compensation" on your camera, and don't want to learn how to do this manually, just find the =!= and read on from there.

Make sure your camera is set to "green automatic". Frame your subject and take a shot.
Is the result blurry or noise? Good... Find the info for the newly taken picture on your camera. You need 2 numbers: shutter speed and sensitivity.

First number is often a fraction, like 1/30 or 1/2, or maybe just a whole number, like 1 or 2 (often displayed like 1" or 2") The other number can often be divided with 100 or 25.

Exposure time / shutter speed:

16" 8" 4" 2" 1" 1/2 1/4 1/8 1/16 1/30 1/60 1/125 1/250

ISO speed / sensor sensitivity:

100 200 400 800 1600 3200

Each of these numbers are "full steps". Your camera will step in either 1/2 steps or 1/3 steps.

The numbers can therefore also be for example:

Exposure time:

1,3" or 1,6" between 1" and 2" at 1/3 step, or 1,5" at 1/2 step

125 or 160 between 100 and 200, at 1/3, or 150 at 1/2 step

Now you know what settings will give the right exposure.

We will be combining 8 photos in this instructable, each with 1/8 the needed brightness.
As you have propably noticed, each step on the above scales are either half of, or double of the previous, depending on in which direction you're moving on the list above.
So, we need to step down (go to the right) 3 times. This can be done with either shutter speed, ISO sensitivity, or a combination.

Go for shutter speed as first priority.

Find the "manual" mode on the camera. Dial in the shutter speed and sensitivity found earlier.
Now, step these settings down 3 steps. That is pressing down 9 times if your camera uses 1/3 steps, and 6 times if it's 1/2 steps.

=!=The easy way

Find "exposure compensation" on your camera. If you don't know where to find it, look in the manual.
Set this to "-3 EV" this will take the picture 3 steps lower than what the camera otherwise would find suiting. Here you can not really control the settings, the camera will choose sensitivity and shutter speed.

Step 3: Taking the Pictures

Picture of Taking the Pictures

Frame your subject, try to hold the camera as still as you can, and take more than 8 pictures.
Some of the pictures might have a little bit of motion blur, so it's nice to have a few to pick from.

Each picture should be kind of dark like the one below.

Take all the pictures in one run, else your second bunch of pictures might not align well enough with the first, and you'll have to cut alot off at the edges.

Step 4: Combining the Pictures in Photoshop

Picture of Combining the Pictures in Photoshop

When you have taken all the pictures, fire up Photoshop, and choose File>Scripts>Load Files into Stack.

Step 5: Load the Pictures Into Photoshop

Picture of Load the Pictures Into Photoshop

Press the "Browse..."-button, and find your pictures. Just select all of them if you have more than 8.
You can sort them afterwards.

And now for the small detail, that's gonna make sure that all these pictures align:
before pressing "OK" check the checkbox "Attempt to Automatically Align Source Images"

THEN press "OK" and wait for all the pictures to load in and align.

Step 6: Adjust Layers

Picture of Adjust Layers

Now that you have all the pictures loaded into one file, it's time to sort them.
Delete the most blurry ones untill you have 8 left.

Now, select the layer 2nd from the bottom, and change it from "Normal" to "Screen". This will add the value of each pixel to the value of the pixel on the layer below.

Do this for all the layers above that one.

Step 7: Done! and a Note on Another Method

Picture of Done! and a Note on Another Method

Now you should have an image with low noise level, and a decent sharpness.
Collapse the layers, and/or crop the image to remove the blank areas that appeared along the edge as a result of the alignment.

... And there you go :) My example hasn't been cropped yet, so you can still see the blank areas.

Another way to do this is to just shoot all the photos with a high ISO sensitivity, combine them in photoshop with the same method, but instead of choosing "screen", use "Lighten" or "Lighter color".
I do not know what these do, but they seam to be the ones getting closest to taking the average color/brightness value of each pixel on each layer, which is the idea here.


Instead, keep all layers at "normal" and just change the opacity of each layer to around 20% or something... That will get closer to the actual average.


nieton (author)2010-08-20

I always thought of a technique like this but never tried it. Kudos for the guide man! =)

Trebawa (author)2008-04-18

I have read somewhere that the best way to blend multiple images for superresolution is to use the normal blend mode. Each image should be set at the opacity given by 100/n where n is the number of the layer with the bottommost layer being 1.

ELF (author)Trebawa2008-04-19

You're absolutely right! (almost) And I give a hint about how this provides a better dynamic on the last page. And yea... I should propably rewrite the guide :S I don't KNOW if it's correct to blend the images in the way you describe, I believe the opacity percentage should be derived from a non-linear rule... But I really can't remember :S I'm too lazy, you see. Having 32bits/channel I can just use good ol' add-and-divide anyway ;)

jcomtois (author)2008-03-02

I don't have photoshop but would like to try this superresolution technique. Does anyone know how to add layers using Paint Shop Pro? It does not seem to have that choice for combining layers.

alfonso (author)jcomtois2008-03-09

If you only need to do this a few times, you can download photoshop from adobe and use it for free for 30 days.

jcomtois (author)alfonso2008-03-10

I use the tool on and off, so I'd need a long term solution. I looked at the layer interactions in PSP and they don't have "add". They have invert and subtract, but that doesn't work out either. Except now I see how they get those "glowing edges" filters...

ELF (author)jcomtois2008-03-11

You sure there isn't something like "dodge" or "screen" or something like that? You might have to contact their support for help, or ask at some PSP-specific forum... They have propably just given it at weird name. You could also try with GIMP, which is free. There should be a direct "add" blend method inthere...

jcomtois (author)ELF2008-03-11

It has both, so I'll try. They seem similar but more complex than just an "add": Dodge - lightens the image by having the lightness values of the colors in the selected layer lighten the colors of the underlying layers. Sort of a scaled add with darker colors adding less. Screen - Lightens the colors of the underlying layers by multiplying the inverse of the selected and underlying layers.

ELF (author)jcomtois2008-03-12

Ah, yea, hmmm... says kind of the same in photoshop really :) Not far from, just read through some of the early comments to this instructable, and you'll see how much trouble we had finding our way around photoshop's blending modes :S You could use the method I describe on the last page of the instructable, where you just yank up the ISO, then shoot 8-10 very noisy but correctly exposed pictures, and then blend them by "averaging". If you can't find such a mode, you can blend the picture together 2 and 2, with the top one having 50% opacity. So you merge the first 8 down to 4, then the 4 down to 2, and then the 2 down to one... That technique gives a good deal more dynamic range in the picture, so you'll have more color graduation. There's an example of this further down in the comments... :)

jcomtois (author)ELF2008-03-13

I was trying to use it on successive frames of a video showing a stable object to get one good still shot. So I'm not taking individual pictures with a camera, just working with low-resolution video frames. Not really the same situation unfortunately.

ELF (author)jcomtois2008-03-13

No, guess not :( Depends on how much control you're given over the settings on the camera...

ELF (author)jcomtois2008-03-02

Well, THIS technique is not a superresolution technique. Resolution will stay the same, but you can reduce noise...

jcomtois (author)ELF2008-03-03

OK, thanks.

Spokehedz (author)2008-02-29

This also works just fine in The GIMP for Linux. Almost the same procedure, but tweaked slightly. Have used this to sharpen up many, many cameraphone pictures I have taken. The technique really works.

ELF (author)Spokehedz2008-02-29

So you also knew the technique already? :) For cameraphone pictures I'd suggest maybe average some well exposed pictures instead, so you don't loose any color dynamics (cameraphones are already with very poor color dynamics)...

Spokehedz (author)ELF2008-02-29

Yes. It's harder to do with a cameraphone, as they usually have a long time between shots (making photos of things much harder) but it can greatly improve these shots. I have taken blurry cameraphone movies, separated them out into individual bitmaps and then combined them back into a movie to make the movie better. I don't recommend that, but it was an emergency-type situation where legal issues were on the line. :D

GMa (author)2008-02-28

I use a rather different technique to reduce noise in Earth pictures. I take them with a tripod to get exactly the same exposure conditions (in raw for getting the same white balance) and then I process them in an astrophotographical software called ImagePlus. It works perfectly fine and with a sufficient number of pictures, you can improve real resolution by getting over the Bayer pattern. Otherwise said, a 10mp camera would create a real 10mp image rather than a 5mp green + 2,5mp blue and 2,5mp red. Add that to the fact that noise is randomly distributed, you reduce that issue with longer or higher-ISO exposures. Ultra efficient and keeps older cameras, as long as they have a good lens on, still comparable with newer ones.

ELF (author)GMa2008-02-29

What exactly do you mean by Earth photo's?
That software sounds really nice! Must be a superresolution technique...
Explanation here

Is it pricey?

GMa (author)ELF2008-02-29

Simple common ground picture of a static landscape, object or else. Non astronomical photograph. Yes it is a kind of superresolution based on statistical approach and matrixes. Quite efficient. I am aware about several software doing this kind of job. The one I use is made by Mike Unsold (check on Google this name but there are many others doing roughly the same) and it was, for me, much less expensive than buying a higher MP count camera. If I remember correctly it was in-between 100 and 200 CAN$. Really good for noise reduction, HDR and else but not particularily easy to use. Also, I am not sponsored here to promote this product. Nonetheless that fact, I works well for me.

ELF (author)GMa2008-02-29

Sounds like a good deal :) Anything easier in the same price range you would suggest?

Maffu (author)2008-02-29

There are many better ways to get a good image in low light. For simplicity's sake though there is an easier way than this which seems a long-winded way of doing things.
Maybe I'm missing something here but why not just take one photo and fix it as above?
- Take one sharp but dark image, duplicate the background layer by pressing Ctrl+J.
- Set the blending mode of the new layer to Screen
- Press Ctrl+J as many times as needed to bring the lighting level up.

No need for CS3's align script, no need to take a bazillion pictures.

ELF (author)Maffu2008-02-29

Well, the idea is that when you just brighten one picture, you also enhance the amount of noise in the picture. By combining several pictures ,where the small variations in pixel color (the noise) differs, you can average the noise away...

skrubol (author)Maffu2008-02-29

All that would be doing is brightening the picture. It would have a similar (though not as good) effect as just using a higher iso setting. It amplifies the noise as well as the image. Using multiple images duplicates the images, but not random noise.

yomero (author)2008-02-28

great instructable, kudos

ELF (author)yomero2008-02-29

Thanks :)

pousao (author)2008-02-29

If one want´s to take macro pictures in the wild, there is no tripod that can help you. And if you have one small camera the tripod will sheik anyway. It even sheiks when you press the button.If you press your arms against you, your feet work alot to keep you in balance. I find these an exelent idea to try

ELF (author)pousao2008-02-29

Yea, for macro I always use a medium-sized Manfrotto tripod and a remote, which works pretty ok. But that's a $500 solution :S

derfman (author)2008-02-28

and the little chivas are from colombia?

ELF (author)derfman2008-02-29

Indeed they are :) My girlfriend's uncle adopted 2 kids from there, and his wife went crazy in the souvenir shop just about evey day they were down there. So when they had them baptised and held a party for the family afterwards, they decorated the entire table with these, and said that we could just take them with us if we wanted :)

Chris Bilton (author)2008-02-28

very good, I wondered about that.

aydiosmio (author)2008-02-28

If you're getting blurry photos with a tripod it's likely the shaking produced by pressing the shutter or the shutter opening is the problem. Using the Timer and/or the Mirror Lockup (if you have an SLR) features of your camera can fix this. Also, if you must use a high ISO or long exposure with a tripod, the Long Exposure Noise compensation feature does a noise profile of the sensor after each shot and digitally removes the noise. This can be done manually with applications like Noise Ninja.

anca (author)2008-02-28

This is great. I can think of some situations where even with a tripod I was getting a noisy image, so using this system I could totally improve those photos. Thanks!

kontrastas (author)2008-02-27

One simple tip: to reduce shakiness of the hands just press your elbows against your sides (press as much of your arms as you can to your sides/ribs). It's quite difficult to explain hence i don't have a picture - basically bend your hands and hold them in a tight manner with your body.

ELF (author)kontrastas2008-02-27

Like, pulling the arms as close to the body as possible, so the arms are as fixed to the body as possible, right? :) Like ehm... Yea, hard to explain :S

kontrastas (author)ELF2008-02-28

Yep, something like that :)

ELF (author)kontrastas2008-02-28

Yea, that's a great technique :) If I could explain it I would add it in the instrauctable :S

robertBeech (author)2008-02-27

How about just using a tripod, instead?

ELF (author)robertBeech2008-02-28

If you haven't brought one along, you don't have one, you can't get your tripod in the right position... The technique can also be used to reduce just the noise, if the camera has a particularly noisy sensor. Like if you're making product shots...

ELF (author)2008-02-27

I don't get it... What's bad? And why all that blank space? Very annoying, remember the "be nice" policy...

bhunter736 (author)2008-02-25

Thank you! I will remember this for future shots.

ELF (author)bhunter7362008-02-26

No problem :) Hope it helped! Just found out yesterday that this isn't a new technique really. One of my friends have been using it for quite some time without me knowing :S He found it in a general photography book, and in a guide online to macro photography, so it's pretty well known. Anyway, if you want, you can read through the comments where I describe how to expose all the images with a very high ISO, and then average the pictures together, instead of adding them together. This gives more dynamic range, and alot better colors :)

lgcalex (author)2008-02-24

interesting. toss that in the bag o tricks... deffinitly an emergency trick, a string monopod can give equivent results.

ELF (author)lgcalex2008-02-24

Indeed it can :) So can a normal tripod, stacking on books/cans, holding the camera against a solid object, using VR etc. Every way which can keep shaky hands from blurring your shot... Sometimes you just need the freedom of handheld, and VR really doesn't do THAT much I'm afraid :( Or you don't have the right tool around, or you just want to get a low noise level than what the camera can achieve (especially the case with compacts, with their small CCD's...) I kind of feel I should rewrite the instructable, changing the workflow to: exposing all pictures correctly, and then removing noise by averaging them (see above comments), so not as much dynamic is lost in the picture. Gives nicer results, and could also be used to just lower noise below what ISO 100 gives (for those nearly too perfect shots)... Would require alot of explanation though, also on how to deal with underexposed shots, for when higher ISO isn't enough to get clear shots.

Patrik (author)2008-02-21

Very nice! That "automatically align images" is a great feature. I don't think the GIMP has something like that yet, although I guess it's easy enough to do by hand. Note that underexposing the original images and then adding them together is probably not the optimal approach, since you do lose dynamic range in your images. You should be able to get better results by taking however many pictures you like at a normal exposure level, and then taking the median value at each pixel. A median is much more robust to noise than an average, especially when you have to deal with shot noise like here. You could do something in between, by leaving out the darkest and brightest value for each pixel, then take the average across the rest. That gets a little trickier to implement in Photoshop though...

ELF (author)Patrik2008-02-21

Yea, I came to think about how you might loose some dynamic in the image, therefore I suggested the other method. Photoshop actually has a median filter, but that doesn't work by sampling the same pixel of different layers. Instead it samples the surrounding pixels: Median Reduces noise in an image by blending the brightness of pixels within a selection. The filter searches the radius of a pixel selection for pixels of similar brightness, discarding pixels that differ too much from adjacent pixels, and replaces the center pixel with the median brightness value of the searched pixels. This filter is useful for eliminating or reducing the effect of motion on an image. I can't imagine how I should get those results in photoshop though :( I just read through the list of blending modes, and none of them seam to fit... I don't think blending modes are made up in a way that supports that type of "multiblending"... So I guess the best bet is averaging several correctly-exposed high-noise pictures... I don't quite understand your alternative though... You want to take the 8 pixels that are at the same location on 8 different layers, leave out the brightest/darkest 3 or 4 of them, and then average the rest? Another idea I wanna try is smoothing the colors out, but keeping the original luminance values... Since the eye "reads" details based on luminance, and not color differences (Think DV compression) beautiful tones are the smooth ones... Guestion is if the noise is made any less noticable :S

Patrik (author)ELF2008-02-21

Yeah - the built-in median filter does something entirely different, eliminating pixels which differ too much from the surrounding ones. Actually, that one is very useful for reducing shot noise as well (useless for motion blur though), but that's not what I meant.

One problem with some of these image processing techniques is that they're fairly easy to do when you write your own software, but they may be hard to implement given the features of a specific software package like Photoshop - as you've discovered. Does Photoshop allow for >24bit RGB colors? that would simplify things a bit to begin with.

Here's one approach that should be feasible within the existing feature set, to calculate the average while leaving out the minimum and maximum value:

1) Average all the images together. If there isn't a way to average multiple images simultaneously in Photoshop (there may not be), simply average the 8 images two-by two into 4 images, then average those into two, then average those together.

2) Get the maximum value for each pixel across all 8 images. Likewise, get the minimum value for each pixel. These are the pixel values you *don't* want in the average you calculated in step 1. Now, average the max and min images together. This image should look a lot noisier than what you got from step 1. Reduce the intensity of the resulting image by a factor of 4.

3) Subtract the image from step 2 from the image from step 1. Then increase the intensity of the image by 4/3.

Here's how it works:

if p1, p2...p8 are the eight values of a specific pixel, sorted from low to high, then step 1 calculates (p1+p2+...p8)/8. Step 2 calculates (p1+p8)/2/4 = (p1+p8)/8. Step 3 then does (p1+p2+...p8)/8 - (p1+p8)/8 = (p2+p3+...p7)/8, then recalibrates that to (p2+p3+...p7)/6.

ELF (author)Patrik2008-02-21

Whoa... Yea now for the implementation. :S I should have learned to program... But, yea, Photoshop CS3 supports full high dynamic range images, up to 32bit per channel. so that would be... 96bits total :P Very nice for HDRI lighting probes...

Patrik (author)ELF2008-02-22

Cool - that does make things a lot easier! In that case, you can just add all the images together, subtract the min and max, and divide by n-2. No need for all the intermediate averaging.

ELF (author)Patrik2008-02-22

Wait... Maybe I misunderstood what you meant :S You want to take the 8x 8-bit pictures, add them together on top of each other in a 32-bit space, then remove a surden percentage of the highest and lowest values, and divide by... what's n? number of what? layers? :S

Patrik (author)ELF2008-02-22

Sorry, n here is the number of images - in your case 8, but even 3 would probably give reasonable results. If you use 3, then adding all three and subtracting the minimum and maximum is equivalent to taking the median.

For higher n, you'd get something in between the median and the mean (average), but which would still be far more robust to the kind of shot noise you expect to see in a CCD camera with the sensitivity cranked up.

I don't know if you can choose anything in between 8-bit and 32-bit - you don't really need 32 bits, just enough bits to be able to add multiple 8-bit images without losing any information. For 8 images, 11 bits would be enough (8x256 = 2048).

About This Instructable




More by ELF:RyebreadSkin-Friendly Jelly SoapRAW, 8 bit, 16 bit, and 32 bit explained
Add instructable to: