Magic Lantern Has 'Magically' Pulled More Dynamic Range Out of Canon DSLRs for Free
Those part of Magic Lantern are always hard at work tinkering away to give us mere mortals better cameras at zero cost. They were able to pull a rabbit out of a hat and give us RAW video on Canon DSLRs, which is a huge step up on video quality from the standard H.264 files the cameras normally record to. Now they've got another trick up their sleeve that can actually improve dynamic range about half a stop -- but there are some caveats at this early stage.
I had been following this story for a little while since Magic Lantern originally tweeted that a "sensor upgrade" was coming, and even though I was reading the exact thread related to the "sensor upgrade," the situation still wasn't all that clear, especially since the tech talk is pretty dense (not unlike how some NFS posts must feel to people just starting out -- including this one). This new hack has been tested the most on the Canon 5D Mark III and has a greater effect on RAW photos than RAW video, but a1ex has posted a detailed Q&A explaining exactly what's going on:
So, what's all this stuff about "sensor update"?
Just a small improvement in dynamic range in photo mode (around 0.35-0.5 stops). We were able to fine-tune the amplifier gains in order to squeeze a little more highlight detail.
Wait a minute, that means less noise, right?
Well, it means you get a little more detail in highlights. This doesn't mean less noise per se (the new ISOs will be just as noisy in shadows as the old ones), but it will let you shift the exposure to the right by 1/3 or 1/2 EV and collect more photons. This will result in lower noise.
For example, on 5D Mark III I could lower the ISO by 0.37 stops from 100, resulting a new ISO 77.
And how the magic is actually happening:
How exactly are you getting more highlight detail compared to Canon firmware?
The signal from the sensor seems to be amplified in 2 stages: a CMOS amplifier (which operates in full stops - powers of 2 - and we have tweaked it when implementing Dual ISO) and an ADTG amplifier which can be configured in finer increments. After these two stages, the signal is digitized (with an ADC), probably tweaked digitally, and saved to CR2. We have noticed the ADTG amplifier tends to run a little "hot" (that means, it gets saturated a little too early - nothing to do with temperature).
To get the extra highlight detail, one has to reduce the gain for the ADTG amplifier until the ADC will no longer be saturated. At this point, the white level (maximum recorded level in the raw file) will begin to decrease and no more detail will be recovered (since now the CMOS itself or the CMOS amplifiers will get saturated instead).
Does this mean Canon did not fully optimize their sensor for low noise?
I'd say they simply left a safety margin in their code to make sure the ADC is always saturated (that is, to make sure white is always recorded as white).
The big gains are currently happening with the 5D Mark III, but it may also work with some other cameras:
- If you have a 550D or newer camera, it will most likely work.
- If you have a 7D, no idea yet.
- If you have a 5D Mark II, 50D or 500D, don't get too excited. I've barely got 0.15 stops of improvement on 5D2.
Essentially what's going on is that Canon left themselves some headroom to make sure that the absolute white point is correctly recorded, so Magic Lantern has dug in and changed these registers to allow the user to shoot into that headroom.
It should be noted that this has nothing to do with the Dual ISO that we talked about last year. That is a different process entirely, but Dual ISO will work with this new dynamic range tweak, giving you well over 14 stops of total dynamic range. Dual ISO, as it turns out, is a bit easier to control in Photo mode, but it has quite a bit of aliasing in Video mode, which makes it less useful for those shooting video. This dynamic range tweak, on the other hand, shouldn't affect your shooting in any way except to give you more latitude to expose with.
So this is great news, but right now it's really only effective in photo mode -- in video mode it's not doing much of anything (0.1 stops according to a1ex). For a free dynamic range improvement, it's hard to complain, even if it's only 1/3 to 1/2 a stop improvement. Development is very early on this, so it's possible that RAW video might benefit more at some point in the future, but for now there is a definite improvement on the photo side. I'm always optimistic about what might be capable out of these cameras, so I wouldn't rule anything out yet for any of the Canon DSLRs.
If you want to experiment with this, the post over on the Magic Lantern forum has some links to the research tools. This means that these modules are experimental and really more for people who understand how to code and what they're looking for (but the links are there regardless). For more information, check out that thread.