Author Topic: Auto Hand Held Focus Stacking  (Read 693 times)

garry23

  • Contributor
  • Hero Member
  • *****
  • Posts: 1772
Auto Hand Held Focus Stacking
« on: March 05, 2018, 11:16:40 PM »
If you have read my post you know I like exploring how to get more out of my Canon EOS through Lua scripting in Magic Lantern.

In a recent post I introduced a hand held exposure bracketing script, which is especially suited to wide angle (hand held) photography.

In this post I'm introducing a simple auto hand held focus bracketing script, once again, especially suited for wide angle photography where you need a 'little help' in the foreground.

The script can be downloaded from here: https://gist.github.com/pigeonhill/185a1b72e5a909d767f0ce9bdfb259e4

Surely I hear you say, why bother; as with a wide angle lens one can get a very large depth of field, from near to infinity. But sometimes you just need that additional foot of so in the near field.

The use case is where you are hand holding and have set your focus for the far field, say at 2-3 x the hyperfocal, to ensure a low infinity blur (see my blog at http://photography.grayheron.net/ for an explanation why you should not focus at the hyperfocal distance), but your near field just doesn't cover your needs.

Yes you could keep reducing the aperture, but, as we know, this brings in two negatives. First, diffraction blur increases and second dust jumps out of your images, especially in the sky.

Of course, if you were on a tripod, landscape focus bracketing would be easy through the use of my Focus Bar script. But what if you are hand holding and/or using a lens that doesn't report focus distance.

My Auto Hand Held Focus Stacking script might be worth trying out.

Once you have set up the menus for your needs, eg max ISO, min hand holding shutter and smallest aperture etc, all you need to do is set the base (open aperture) exposure and the script will attempt to take a second image at the smallest aperture. This is accomplished through shifting the shutter speed and ISO, ie to keep the 'same' exposure between the images.

Rather than explain things further, let's look at a test shot. The base (24mm) exposure was at F/3.5, 1/40s at ISO100. The focus was set past the hyperfocal distance to produce a sharp far field image:



But as we can see, the near field is rather out of focus.

The script decided in this case, because I set the smallest aperture at F/16, to take the second image at 1/40s (because this was close to my hand holding limit, no shutter advantage was possible with this image) and at an ISO of 2000:



Because we are at ISO 2000 the entire image exhibits poor SNR compared to the F/3.5 image; but the near field is now acceptably 'in focus'.

Once ingested into Lightroom it was a simple matter to use 'Match Total Exposure', if required, and do a round trip to Photoshop. Once the two images are stacked in Photoshop, they can be auto aligned and then it is a simple matter to mask in the near field detail that you need. Using this approach allows me to 'protect' such things as skies from small aperture effects (although, of course, there is no sky in this image). Here is the resultant blend:



Bottom line: Although I wrote the script as a 'bit of fun', I think it could be of value in some situations; where you need a little focus help in the near field. As usual I welcome feedback on this post.