Tuesday, May 11, 2021

Test of Wind Bracketing

In the last post I introduced the concept of wind bracketing. In this short post I show the results/advantage of wind bracketing.

Although anyone can accomplish wind bracketing through manual exposure control, I have automated this in the case of my Canon M3.

In the test I set the focus to capture a near field subject, a rather sad looking magnolia, and set the total infinity blur, accounting for diffraction, at 10 microns, ie I was focused beyond the hyperfocal, based on a CoC of 15 microns.

I decided I didn't need a sky bracket, ie the sun was behind me and single exposure would be OK. I did, however, set a wind bracket at 4Ev.

The ETTR exposure for the sky was: 1/30s, f/8 at ISO100. The script captured an additional wind bracket at 1/500s, f/8 at ISO1600. The two images looking like this:


The top image is the base exposure, ie the only one you would capture without wind bracketing. You can clearly see the wind induced movement in the magnolia.

The bottom image is the wind bracket: clearly showing, at 1/500s, I've dealt with the wind movement. Both these images have been processed with PureRAW.

In the next image we see the blended result from Photoshop. The blending being accomplished with simple masking.

In the final image, we see a Lightroom tweaked version of the above:

I must say, so far, I think wind bracketing is looking as if it may help in some of my landscape images, ie where there are near field objects that you wish to see sharp, eg with no wind driven blur, but you don't want to use a high ISO throughout the image, just in the areas that need it.

As usual I welcome any feedback on this post or any of my posts.

Wind Bracketing for Landscape Photography

NOTE: This is a post on developments in the CHDK core and my latest (unreleased) M3 Bracketing script. The CHDK developments are directed at making the CHDK displays fully compatible with the Canon displays, eg no flashing.

In the latest version of M3 Bracketing I will be introducing, what I call, wind bracketing. Plus I've added in the option to show the impact of diffraction on the infinity blur. With this feature set to off, only defocus infinity blur is shown in microns. With the new feature switched on, the infinity blur shows the combination of the defocus and (visible band, ie 550nm) diffraction blurs; as usual, taken in quadrature. Note the near/far DoFs remain being reported without diffraction.

What, I hear some saying, is 'what the hell is wind bracketing'. 

I've heard of exposure bracketing and even focus bracketing, but never wind bracketing.

Most will be aware that we are moving ever closer to a camera that just takes a single image, and that image is able to capture the full dynamic range of the scene and, potentially, focus through the depth of the scene; and we 'fix' the exposure and focus we wish to use in post. Until such a 'magic' camera is available, and we can control the weather, most photographers will take multiple images, bracketing for exposure and focus.

Of course, there are many ways to exposure bracket: from the simple, eg taking a +/- exposures either side of a camera set 0Ev base exposure; to more complicated schemes, eg from an ETTRed base exposure.

Another approach, and one I like doing, is to use sky bracketing; which is ideal if you need to focus bracket for the foreground as well: eg see this post.

Assuming you are interested in deep focus landscape photography, sky bracketing is a useful technique, as it exploits the fact that the sky, being way beyond the hyperfocal, ie at infinity, does not require focus bracketing. Thus we can differentiate between capturing a single exposure image for the sky and multiple focus images for the foreground, at a different exposure to the sky. 

Although you can do manual sky bracketing, I wrote my APS-C M3 Bracketing script to automate complex bracket captures, such as combining a sky bracket with a foreground focus bracket set at a different exposure.

One problem with this approach is that the land image(s) are going to be taken at a slower shutter speed, eg an ETTR setting for the sky, at say, 1/200s, with a 4Ev uplift for the land, will result in a land exposure at about 1/10s and, if there is wind around, and you have beautiful foliage up close you wish to capture, you risk the flowers being blurred by wind driven motion.

Of course, we all know how to stop motion in an image: all we need to do is use a high shutter speed, which is where wind bracketing enters the scene.

In this implementation of wind bracketing, I've restricted the use to when we are taking a single focus image, ie not a focus bracket set, beyond the hyperfocal, ie at a set infinity blur. Thus this is well suited for wide angle lenses, where we can achieve small infinity blurs and a close near depth of field.

Having set the composition and the infinity focus, although the script tells us the near DoF and infinity blur (now with or without diffraction), we still have to worry about two other factors, that we have no control over: the dynamic range of the scene, ie the light, and the weather, in this case the wind.

We deal with the DR of the scene using sky bracketing at x Ev. As for the wind, that's dealt with by increasing the shutter speed (by y delta-Ev), whilst maintaining the 'exposure', by increasing the ISO by x delta-Ev. This results in the wind bracket histogram looking the same as the land base histogram. Note x and y can be different.

In the above we are ignoring any potential ISO invariance advantage, that we could exploit, mainly because my (Canon) cameras are not ISO invariant from the base ISO. Also I'm ignoring the nuance, that changing ISO does not technically change exposure. 

BTW the following illustrates, thanks to Bill Claff over at Photons to Photos, the ISO invariance differences between two of my cameras, in this case between the 5D3 (black) and the M3 (blue).

Here we see that the 5D3 becomes ISO invariant like, from about 1600, whereas the M3's ISO invariance characteristics kick in at about ISO 400ish. But let's leave ISO invariance to one side for now.

The new M3 Bracketing script's menu now looks like this:

Here we see the new wind bracketing option, set to 4Ev in the above, meaning that an additional exposure will be taken at 4Ev up from the ISO base, and the shutter adjusted accordingly. Note wind bracketing works best if the base ISO is set to 100.

The menu also shows that I have not requested any focus or exposure bracketing, but I have requested sky bracketing. Thus, the above would result in three exposures, once I had ETTRed for the sky at, in this example, 1/100s, f/8, ISO100:

  1. 1/6s, f/8, ISO100 = 4Ev exposure uplift for the foreground
  2. 1/100s, f/8, ISO100 = ETTR base for the sky
  3. 1/100, f/8, ISO1600 = wind bracket at 4Ev, to match exposure 1

'Exposures' 1 and 3 resulting in the same in-camera histogram.

Post processing for the wind bracket is pretty simple.

First I pre-process all three RAWs in DxO PureRAW, or any noise reduction pre-processor you decided on using. Although I only needed to pre-process the high ISO wind bracket, if I only used PureRAW on this image, I would have image to image differences, as PureRAW uses lens corrections that are different to those that Lightroom uses.

Of course, if you weren't using PureRAW, eg 'just' using LR, then you would sync any lens correction across all three images.

After adjusting the basic exposure settings of the PureRAW DNGs, I exported them as smart objects to Photoshop and stacked them in a single image: as they were smart objects, I could use ACR on each layer at anytime. 

All that was then required was for me to paint in the sky layer, via a mask, and any motion-blurred flowers in the foreground, from the wind bracket image.

The final PS step, after any PS work, would be to flatten the  image and return to LR, where I would carry out final tonal adjustments. 

As this post is only alerting the reader about developments, I won't be showing real images, but see next post. However, the inclusion of 'wind bracketing' in the M3 Bracketing script provides an additional tool to help photographers capture their vision.

As usual I welcome any comments on this post or ant of my posts.

Sunday, May 9, 2021

Exciting things happening in CHDK

As readers of my blog will know, I use Canon cameras because of their access to Magic Lantern and CHDK, especially Lua scripting.

Over the last month, the CHDK gurus (especially Philmoz) have made significant developments in CHDK, such that the CHDK display/drawing is now rock solid and has no conflict with the Canon 'drawing', ie no repetitive flickering.

Although the latest mods have yet to make their way into the CHDK trunks, I've been experimenting with a test version of the latest developments and have made a short video to show what things now look like.

I took the video on my M3. The set up looked like this:

My M3 Bracketing script places an info bar at the top of the camera's LCD/EVF screen, giving the user real time focus and exposure feedback, in three groups:

  • The left hand group gives feedback on focus position, ie relative to the hyperfocal, and the actual focus, relative to the sensor's plane. The script uses a thick lens model to estimate the front principal, and provides the user the ability to estimate the entrance pupil position, by inputting the estimated pupil magnification, 1 for a telephoto lens and greater than unity for a retrofocus one;
  • The centre group has three modes. The default mode is when the camera is in ALT mode, when it shows the focal length and the number of focus brackets required to reach the hyperfocal distance. The second mode is when the camera is in the non-ALT mode, when the display switches to show the relative exposure eV, rather than the focal length. Finally, the display will switch again if traffic light mode has been selected and an image has been taken. In this mode the left and right traffic lights tell you whether you have a negative of positive focus over lap, shown in microns, relative the last image taken;
  • The right hand group has two formats, according to the menu settings. One shows the near and far DoFs, relative to the sensor. The other shows the near DoF and the infinity blur in microns.

As this post is just to show the progress that the CHDK gurus have made, I won't be going into details on using the script.

Here is the test video, showing the script's functionality and CHDK's new display stability. Note the left shift of the top bar is a feature of the HDMI capture. In the camera the bar is centred:

As usual I welcome any comments on this post or any of my posts.

Monday, May 3, 2021

M3 Brackets: May Update

Thanks to diligent hard work over on the CHDK site, there is a near constant stream of build updates being published, including incorporating the fmath library into the CHDK trunks.

This short post is to say that I've updated M3 Brackets (download from the right) to the latest CHDK version, as of the 3rd May 2021, which means you should use build 5869 or higher.

Thursday, April 29, 2021

Technology + Technology = Impressive Results...maybe

As a bit of personal entertainment I decided to see what exploiting multiple technologies can achieve, and see if there are any 'risks', eg one technology fighting another.

My experiment was to use my 2nd hand Canon M3 and load it up with technology. 

The subject matter of the test was rather limited, because of Covid (I'm still awaiting my 2nd jab) and the British weather (rain), to taking place in our library.

My 'vision' was to create a wide angle, deep focus, floor-level image. That is the kind of image I might wish to capture in a cathedral once I start getting out.

As stated above, I was using a 2nd hand Canon M3: an APS-C camera with pretty good features, that you can pick up for around 200GBP. To this I added an existing lens I have: an 11-22mm EFM.

On to this base arrangement I then added a Smallrig cage and a handle, and a Canon EVF I had. 

Although the cage adds weight, I find it introduces an ability for me to add 'stuff' to the camera, and makes the M3 feel right in my large hands. Finally, it also adds additional structural protection to the already robust M3.

As for achieving a low level shot, on this occasion I used my Move Shoot Move Z platform: a great piece of solid technology, that, unlike similar (friction-based) products, locks into place.

When all the above is added together, my test setup looked like this: note I could have bolted the MSM platform to one of my Platypod plates, for extra stability, but didn't bother in the test:

Now some may say this looks like a Frankenstein-like affair and they may be right: but it works for me.

Note the handle placement, which is there so I can pick the camera up and use the handle when in the portrait mode. Also note the additional tripod plate that is bolted to the cage, meaning the cage is an L bracket.

So much for the hardware-based technology; let's now add in some essential software-based technology in the form of the Canon Hack Development Kit (CHDK). Additionally, thanks to one of the CHDK gurus (Philmoz), let's add in the CHDK build with a 64-bit floating math library, as the base CHDK 'only' has a 32-bit integer math library.

The final piece of technology is to add on my reworked M3 Bracketing script (that exploits the 64-bit float capability) and all is well in the world :-)

As this was a test, all I did was place the camera on the ground next to where I was sitting: there was no composition in this test ;-)

In the script settings I had selected the option to focus bracket from the minimum focus distance to three times the hyperfocal (H). H was based on an overlap blur of 20 microns. Thus the infinity defocus blur shot was taken at 20/3 microns.

The camera was set to f/8 and I used an ISO of 400, at a shutter speed of 4s.

Once set up, all I needed to do was to get the script running and press SET. The script then handled every thing else.

To give an impression of what each image's exposure looked like, here is a Lightroom grab:

Here we see the infinity shot, at 3*H, before any LR adjustments, showing the histogram looks OK, ie I didn't need to request the script to exposure bracket as well.

The script created a seven image focus bracket set, although on inspection in LR, the first focus bracket appeared to be redundant, ie no in focus elements in the scene.

The first step in post processing was to use a new piece of software technology, namely DxO PureRAW, which resulted in seven new 'RAWs', ie PureRAW processed DNGs, in Lightroom, that made the Canon (ISO400) CR2 images look really good, ie RAW sharpening and RAW noise reduction.

The second step was to use the base Lightroom technology to reduce the highlights and increase the shadows, select the seven DNGs and, from Lightroon, do a round trip to the Helicon Focus technology.

Once Helicon Focus had returned the processed focus stack to Lightroom, I used one more piece of software 'technology', a preset I have created to extract the most out of a RAW-based image. 

The above is the focus stacked image as returned from Helicon Focus, whereas the image below is the final image after applying my LR preset, using a bit of deconvolution sharpening in LR, and using the LR transform module to straighten things up:

So, there you have it, another boring image that shows what can be done if you are mad enough to want to do things differently, and augment your camera and post processing with technology.

As usual I welcome any feedback on this post or any of my posts.

Monday, April 26, 2021

M3 Bracketing: Now supports a HAMSTTR based workflow

In this post I'm pleased to introduce another useful feature into M3 Bracketing, directed at those that need to capture high dynamic range scenes.

As we know there is a difference between shooting film vs shooting digital. The bottom line being that film responds to light in a similar (non-linear) way to our eyes, whereas silicon does not. Rather than repeat what someone else has said, a good read on the differences may be found here: https://photography.grayheron.net/2021/04/pureraw-quick-look.html

Thus, if one can, ie shutter speed and ISO is not an issue, then to capture the highest quality image data. eg tonal quality in both shadows and highlights, you should 'Expose To The Right' (ETTR), at the 'base' ISO, AND ensure you not blow out the highlights.

Many, including myself, adopt an ETTR strategy: some call this approach Histogram And Meter Settings To The Right, or HAMSTTR.

Knowing the dynamic range of the scene is of critical interest: 

  • can I use one image to cover the shadow and highlights?
  • if I need more than one image, then how many?

Although you can use external spot meters to scan the scene, many these days 'just' rely on their camera for exposure information, eg shutter speed and/or looking at the histogram (in realtime on a mirrorless camera vs after captured in a DLSR without a live view histogram capability.

Of course knowing the shutter speed of an exposure is all well and good, but this alone won't tell you the working dynamic range of the scene. For this you need to compare the exposure that satisfies/captures the highlights, with the exposure that addresses the shadows. This is not only scene dependent, but also user dependent, ie what satisfies you. 

In the latest version of M3 Brackets, I've added a feature that helps you find the DR of the scene. 

In the above screen grab we see a typical situation. The (Canon) live view histogram is showing that there are clearly clipped highlights: so we need to first set the (ETTR) exposure for the highlights, eg by adjusting the shutter speed.

In the above we see the shutter speed has been reduced to 1/30s from the starting 0.3s setting. The histogram now gives us confidence that we have no blown out highlights and that the exposure is a reasonable ETTR setting. But, we know the shadows are likely now under exposed: but by how much?

Let's now get M3 Bracketing up and running and first make sure focus is OK:

In the above we see I've set focus beyond the hyperfocal at an infinity defocus blur of 10 microns, ie at about twice the hyperfocal (as I used an overlap CoC of 20 microns in M3 Bracketing).

Because we have switched off CHDK ALT mode, we also see the new exposure feature. Namely, in the middle info field, we see 0.0ev, rather than the focal length which is normally displayed in this field, and still is in ALT mode.

The 0.0ev tells us that this is the reference exposure, from which we will explore the dynamic range of the scene. So let's adjust exposure for the shadows:

In the above screen grab we see the exposure for the shadows has been set using the histogram, resulting in a shutter speed of 1s. On my camera we would also see the M3 Bracketing top bar, but unfortunately the HDMI capture gadget I've got can't show the histogram and the bar at the same time, so let's switch off the Canon histogram and look at the M3 Bracketing bar:

In the above we see that M3 Bracketing is telling us that the exposure difference from the highlight exposure is 5.0ev. In other words, once we had set the exposure for the highlights, we would need to take additional exposures, to cover 5ev, to address the shadows. If we were exposure bracketing, say two at 3ev, or whatever bracketing scheme you wished to do.

To be clear, you might get away with one ETTRed image, eg risking not seeing details in the shadows: but to ensure you capture the shadow data for post processing, some form of bracketing is indicated, at around 5ev.

Once you know the ev offset that is required, eg to address the shadows, you can also use this value to set the sky bracketing offset in M3 Bracketing.

In conclusion, the M3 Bracketing script gives you complete access to both focus and exposure information. Canon M3 owners now have no excuse when capturing deep focus and high dynamic range scenes.

PureRAW: A quick look

Like many, my post processing workflow is Lightroom (Lr) based and fully integrated with Photoshop (Ps). Whilst Adobe is pretty good at handling RAW data, it is not the best, eg you will likely get more out of your image if you process it with the camera manufacturer's RAW processor, as they know the nuances of the RAW data. In my case that would be Canon's Digital Photo Professional (DPP) package: Ugh!

Another approach is to not take the RAW straight into Lightroom or process it in, say, DPP, but pre-process the RAW, to generate a new RAW starting image, eg in a DNG format. For example, Dual-ISO images from Magic Lantern do this.

DXO has just released a standalone version of its RAW 'pre-processor' and, I must say, I'm impressed and will be buying it.

You can test it yourself on a 30 Day free trial at https://www.dxo.com/dxo-pureraw/download/

PureRAW is ideal for bringing high ISO images into a better state for full editing in LR and/or Ps, or in any post processor. It is also good at injecting new life into those images from older cameras that you have on your hard drive, eg modern RAWs, shot with more modern sensors, have better IQ than older RAWs shot with older sensors. 

Here is a quick insight into what PureRAW can do, with a handheld Canon APS-C M3 image shot at ISO 6400. Both images were tonally set about the same in Lr, and only PureRAW was used for noise reduction, ie to show the difference. That is neither had subsequent NR in LR.

As PureRAW uses camera lens correction, ie it automatically adds this, there is a small difference between the two test images. The top one being with no lens/camera/NR correction, the bottom one pre-processed in PureRAW.

Here is a 200% zoomed in view that shows how well PureRAW does:

The only downside is the extra time to let PureRAW do its stuff, ie a minute or so for each image. Plus Win and Macs interface to PureRAW differently, eg on a Mac you can drag an drop images from LR, but on a PC you need to go the image in Explorer, open with PureRAW, and sync the processed image back into LR. No big deal and you can batch images for PureRAW processing.

Bottom line: I believe PureRAW is well worth looking at, especially for high ISO images and those images that you wish to get the best out of, eg for printing.