I guess today is a “blow your mind” Friday, because we have a guest post here by Iliah Borg, the person behind the RawDigger software that is used to analyze RAW images. I had a chance to engage in a conversation with Iliah when discussing the noise performance of the Nikon Df, where he not only proved me wrong on my assumption that the Df had exactly the same sensor as the D4 (turns out that they are similar, but not exactly the same), but also shared some incredible information about testing procedures, data analysis and other crazy, mind-boggling stuff! The learning curve with photography never ends, especially when you get into the whole sensor and image processing pipeline side of it. I must warn our readers though – the below article is very technical and is not intended for beginners! Hope you enjoy it! Nasim.
If one is shooting raw, they might be interested to know if there is any benefit in using intermediate ISO settings like ISO 125, 160, etc. There is no single answer to this question, because it depends on implementation of these intermediate ISO settings in the particular camera. Sometimes they are implemented the same way as the main ISO settings, but other times they are a result of certain manipulations, like digital multiplication.
To demonstrate how this can be determined, we will first analyze the so-called Masked Pixels (often called optically black area, or simply OB), which is a portion of the sensor that we normally do not see in our images. It is covered from light, so it can be a good indicator of the lowest possible noise of the sensor, while noise is what we analyze to learn how to use a given sensor optimally. We are taking a series of shots at varying ISO settings, from the lowest to the highest and, of course, using all intermediate ISO settings available. The subject of the shots can be anything – you can even shoot with a lens’ cap on.
Next, bring the first shot of the series into RawDigger and set RawDigger preferences to display the black frame (Display Options, Masked Pixels checkbox, checked) and not to subtract black Level (Data Processing, Subtract Black checkbox, unchecked).
Here we have OB on the left side of the image. Using Selection/Set Selection by Numbers, select the masked pixels leaving several pixels out of selection on all four sides – because they can leak light or have technological imperfections.
To check that the selection is valid, look at the histogram in Linear mode. If the histogram at all four channels closely resembles the bell-shaped curve, the selection is valid.
Convert the selection into sample (Selection/Convert Selection to Sample):
And save the data as a .csv file for future processing in a spreadsheet. Please set the checkboxes as per the screenshot below:
Open the next file and set the checkmark to Append File – to append the data to the already existing .csv file. Press “Append File”, the star mark to the right of the button name will disappear indicating the data is appended.
Process the rest of the series the same way.
Open the.csv file in a spreadsheet. Add ISO column and fill it with respective values. Now you can plot the noise against ISO settings; the noise values are in Standard Deviation columns Rdev, Gdev, Bdev, G2dev. For the Canon 5D Mark II camera the plot looks like this:
On this plot the X axis is ISO settings, the Y axis is noise on the logarithmic scale. You can see that the plots for all four channels are extremely close. The interesting part is the sawtooth between ISO 100 and ISO 1250. Contrary to expectations the noise at ISO 160 is the lowest while noise at ISO 125 is higher than at ISO 400. This is enough to suspect that something out of ordinary is going on. Lets do some additional calculations.
Dividing Gdev at ISO 125 (6.8361) by Gdev at ISO 100 (5.4293) we can see that the noise is increased by the factor of 1.26 (6.8361/5.4293 = 1.26). Incidentally 1/3 EV is equal to the cube root of 2 (21/3) = 1.26.
Lets look at the next slope formed by ISO 160 – ISO 200 – ISO 250. Dividing ISO 200 noise value by the noise value at ISO 160, the factor is 1.24. Dividing ISO 250 noise value by the noise value at ISO 200 we get the factor of 1.27. Meanwhile the noise values for ISO 100 and ISO 200 are very close. It means that here we have some additional stage to form the data values for intermediate ISO settings; they are not “native”. But are they of any use?
From just looking at the noise values one can deduce that the lowest noise value is at ISO 160. However it is not just the noise value that we are interested in. The characteristic we are looking for is the signal-to-noise ratio. For our case it is quite easy to demonstrate that not just noise at ISO 160 setting is lower, but the signal is lower too. We will see that in fact signal-to-noise ratio for ISO 160 and ISO 200 are essentially the same; especially if we are looking not just at the optically black area but at the image area as well, that is where some light is involved.
Lets set up a scene which consists of a black trap, essentially reflecting very little light back to the camera, and a small shining metal ball, which will be a source of specular highlights, causing the small portion of the sensor to reach its saturation maximum. There are plenty of advises over the Internet of how to make a black trap; we are using here a Datacolor Spyder 3D Cube, which is an extremely compact and useful exposure and white balance setting tool.
Place the camera on a tripod and shoot the cube on some matte background at the exact same shutter speed and aperture value, setting ISO 160 for one shot and ISO 200 for another. The shutter speed should be such as to assure a small hot spot on the metal ball.
Testing exposure, bring shots to RawDigger, switch on Overexposure indication (OvExp) and see that you have one or two small red dots on the ball. On the image below you can see two red “eyes” on the ball. Those red areas indicate sensor saturation.
If you do not have those, re-shoot with a slower shutter speed and check in RawDigger now that there is some overexposure on the ball. Now you should have two shots, ISO 160 and ISO 200, taken with the same shutter speed you just determined and the same aperture value, which we are going to process in RawDigger. Lets place two samples on the first shot – one over the black trap and the other over the specular highlight:
You can change the Sampler Size in RawDigger preferences under miscellaneous options.
Next we save the samples to a .csv file:
Open the other shot. If there was no mechanical movement between the shots there is no need to adjust the position of sampling. Changing the mode by checking “Append File” appends the data. Now – to the spreadsheet.
Open the resulting .csv file in a spreadsheet and calculate the ratio of the saturation level to the noise:
- For the first shot the saturation is 12810, while the noise is 6.0901. The ratio is 2103.413737.
- For the second shot the saturation is higher 15760, and noise is also higher 7.334. Nevertheless the signal-to-noise ratio is slightly better (higher is better) and equal to 2149.071372.
The interesting part here, is that the ratio between the saturation at ISO 200 and ISO 160 is once again very close to 1/3 EV, that is 1.23. And this is the key to the riddle – for both ISO 200 and ISO 160 the sensor is run in the exact same mode, which is why the signal to noise ratio is practically the same. The exposure at ISO 160 is in fact the result of exposure at ISO 200, but shifted to the left by 1/3 EV, or in other words, divided by approximately 1.25. Yet another way to put it, is that noise-wise the result of an exposure at ISO 160 is equivalent to the exposure at ISO 200 with the shutter speed slowed by 1/3 EV or aperture opened 1/3 EV wider. Of course it appears from this that the headroom at highlights for ISO 160 is 1/3 EV less compared to ISO 200.
This suggests that though the noise at ISO 160 seems to be lower than noise at ISO 200, the signal-to-noise ratio is the same and there is no benefit of using ISO 160, at least if you shoot RAW.
You can repeat this simple analysis for other intermediate ISO settings, looking at signal-to-noise ratio and decide for yourself whether to use these intermediate ISO settings or not.