Experimenting with the new Color Calibration and checker feature

I decided to try out this new module by photographing some familiar objects under different lighting and seeing what happens. In particular, if you’re aiming for true colours, how well does it work? So I’ve shot some food under daylight, fluorescent and tungsten-halogen light. In each case I’ve done a passport checker shot to achieve a calibration, then used that calibration on the objects being used for the test.

Calibration for daylight (cloudy day)

I chose to do CAT16 and selected daylight. I then tried various colour temperatures and homed in on 6600K, finding this the lowest error (output delta E) at 2.22, which is “good”. I then pressed the re-compute button as per Aurelian’s How To. In fact this changed the output d.E to 1.24, the illuminant to “custom” and the CCT to “6788K (invalid)”. Is that all to be expected please @anon41087856 ?

I committed the setting in the module and saved a preset which I then applied to an actual shot taken a few minutes earlier. The shot was essentially processed just with filmic (and color calibration module of course). I was reminded just how little you can get away with in sRGB’s gamut, so the first image below is virtually all in gamut. There seemed to be 3 ways to achieve this, I ended up with -

  • filmic mid tone saturation = -3% !
  • filmic shadows/highlight balance left at zero
  • color calibration gamut compression at 5 !!

The second version is with mid tone sat. at 4 and gamut comp. at 3. Now much of the image is out of gamut, especially the blue glove.

The first image is insipid next to the real items. The second looks very believable to me. The grey checker patches have R > G > B but then I put an orange in front of it, doh.

Fluorescent light

The lighting here was from ordinary domestic bulbs, in fact I think the unit had a coiled tube fluorescent and an LED bulb in it. So awful light I guess. The built in F-types gave high errors with F4 (warm white) the best at 10.3. So I put the sampler on the 3rd lightest neutral patch and this gave an output delta E of 3.89 (bad), this was the best I could achieve. I then applied this to a shot taken of course in the same place, same light. Gamut was now more of a problem with the blue glove particularly troublesome. I had to desaturate the image so much to get the glove in gamut that it wasn’t worth showing. Here is a more saturated version however the glove is virtually all OOG and much of the lime too.

I’ve tried to make this jpeg similar in brightness to the daylight one. It’s rather different in tone. I don’t know why the garlic looks different, and I don’t like the lime as much as the daylight one.

Tungsten Halogen floodlight

I first tried the Incandescent setting but this gave a large error. The best I could get was by sampling the 4th neutral patch, giving an error of 2.89. The module was then showing a daylight setting at 2541K. On re-calculating the output error revised to 3.17. The bulb in the unit was rated at 2800K. Much of the image is OOG.

The calibration behaved a bit differently for this light. I started with CAT16, then on selecting the sampler, the adaption changed to linear Bradford. If I now sampled the 3rd neutral patch, it went back to CAT16. But sampling the 4th made it stay at Bradford. Is this sort of thing to be expected?

I think the bananas don’t look very good in this light, however it is quite directional from aside the camera, perhaps that is not helping.

Another question
After applying the checker profile to your actual photo, is it ok to change the gamut compression to a different value to that used for processing the checker?

Notes

The photos were taken with a Canon 6D and Samyang 135mm f2 lens, at 100 iso and f8.

dt built from AP’s repository, 2.5.0+8469~gfa4716a8e-dirty

The raws and XMPs are as follows in case anyone wants to explore.
_6D_00724-daylight-in-gamut-V1-S-sRGB.xmp (33.5 KB)
_6D_00724-daylight-punchier-V1-S-sRGB.xmp (33.5 KB)
_6D_00730-fluorescent-punchier-V2-S-sRGB.xmp (37.2 KB)
_6D_00741-TungHal-punchier-V3-S-sRGB.xmp (33.4 KB)
_6D_00724.CR2 (20.3 MB)
_6D_00730.CR2 (20.5 MB)
_6D_00741.CR2 (19.8 MB)

I’m no colour specialist or colour scientist but this new module and the checker calibration seem to give good results. I understand some light, e.g. some fluorescent, is incapable of producing truly accurate colour anyway. Thanks Aurelian for this work. And it’s so nice to be able to do the whole process in dt and not need other bits of s/ware.

4 Likes

Yes. Invalid only means at that point in the pipe, the found illuminant cannot be approximated by daylight or black body. Remember a couple of color massaging steps happen before in the pipe.

Reflective surface under spot vs. even light.

The reference values for grey patches are not R = G = B either. Grey is never completely achromatic on the targets.

The adaptation used to be changed depending on what illuminant was found, but I changed that just before release.

Yes. Gamut compression preserves luminance and sort-of preserves hue, so adapt it to the current gamut in your picture.

One thing you could try is to calibrate your white balance coeffs (in white balance module) to D65 by shooting a white patch displayed on your computer screen (if it is calibrated). On that test shot, use the spot WB picker in the central region and save the coeffs in a WB preset. Then calibrate from color calibration with the color checker with these WB values set in white balance module. I have found that this decreases the delta E a bit more, and the illuminant readings should be closer to the expected ones.

2 Likes

Also, one thing I forgot, don’t even try to gamut-map to sRGB in the pipeline. The in-pipe gamut mapping aims at keeping color inside the visible spectrum, so the gamut you need to care about is either Rec2020 linear or ProPhoto linear. Mapping to sRGB is something to care about at output, we already know it’s super shallow and we will have to make some compromises there.

When you edit, you edit a master, meaning you assume a perfect color space, infinite dynamic range and gamut equal to full visible spectrum. What happens at the output only concerns the export.

4 Likes

Ohh, looks great in terms of color consistency and contrast…

Cant wait to test this out once there is an installable release. :slight_smile:

Thanks for the comments. My screen isn’t calibrated so I haven’t tried this, however it set me thinking, why not just alter the white balance module? So I started making changes .05 at a time and seeing what effect it had in the calibration routine. I got the re-calculated output error down from 1.24 (with “camera reference”) to 1.16. That’s a change from (2.219, 1, 1.423) to (2.37, 1, 1.52). So with the latter values in white balance and using the modified preset from color calibration, I got the following -


This is more saturated than the daylight punchier one I originally posted but it seems good.

So, would you say this is an acceptable technique if you happen to want the utmost colour fidelity?

What I say is irrelevant: if it decreases the average delta E, then it’s a good technic… however unefficient.