Today's camera manufacturers are doing a great service to those, like me, that love playing with cheap technology. As they keep pushing out new camera versions, their previous releases end up on eBay or one of the secondhand camera resellers.
In the last six months I've picked up a secondhand G1X and G7X, so that I can play around with CHDK scripting. A month ago I extended my collection with a second hand EOS-M3 body, as I already have EF-M lenses. Plus I added in an electronic viewfinder: a version 2.
Once I loaded CHDK, and got a little help from some CHDK experts, I started scripting and now have a focus and exposure bracketing script that seems to run pretty well.
As usual the script is accessible from the download page on the right.
The script is simple to use, but you will need to understand a few things:
- The script scales everything from the overlap blur (in microns)
- For the EOSM format, an overlap between 15-20 should be OK, but you can go less or more than this. Just note that the smaller the overlap, the more images will be taken.
- You can specify an infinity shot that will generate an infinity blur of the overlap blur divided by your setting. Thus if the overlap was, say, 20 microns, and you stated the infinity shot should be 2, the infinity blur will be 10 microns.
- You have three focus options. None, obviously will do what it says. X2INF focus brackets from the currently set focus to the infinity focus. M2INF first moves the lens to the minimum focus distance of the lens, then brackets to the infinity point.
- At each focus you can additionally grab exposure brackets. The script assumes your base exposure is an ETTR one, thus use the CHDK histogram to set the exposure, eg so that the overexposure (red) dot just disappears. The exposure options are: base + 1 @ +2Ev, or base + 1 @ +3Ev, or base + 1 @ +4Ev, or base + 2 @ +2Ev and +4Ev, or 2 @ ISO100 and ISO1600
- I've added in a 'nudge' factor. This may be useful when at the macro end, where the depth of field is very small. The fact is that lens position control is not that fine, so don't expect to be mm accurate. I would suggest a nudge of between 10-20mm.
- You can turn the screen off when bracketing.
- You can ask for a dark frame, bookend, image to be added at the beginning and end of the bracketing sequence.
- You can add a delay in seconds.
- Finally, the script uses the split lens approach I have previously posted about. Thus if you have registered a lens, the script will calculate the 'pseudo lens thickness'. Remember that all the depth of field calculations are made from the lens front principal plane, which the manufacturers don't tell us. Where as the lens distances that CHDK uses are taken from the sensor plane. To register a lens, just amend the script with your lens minimum focus distance, the maximum magnification (measured or taken from the spec), and the minimum and maximum focal length (which will be the same for a prime). If you don't register your lens the script allows you to run in simple thin lens mode (thickness = 0) or you can 'guess' a lens thickness in mm.
I post processed in Lightroom. First by enfusing the exposures with LR/Enfuse, having adjusted the RAWs first. BTW, go to the library mode and manually select each pair of exposures, then use Ctrl G to stack them, once you have then stacked you can use LR/Enfuse in batch mode. I then did a round trip to Helicon Focus.