Purple fringing turning saturated blue and clipped

I recently had occasion to shoot a bunch of night-time images of skiers wearing headlamps with 50mm f/1.4 and a 5DSR – a recipe for purple-fringing galore.

I don’t mind the fringing itself, but Darktable handles it much less-well than does the Canon SOOC preview.

Here’s the preview at 100%:

And here’s Darktable’s (4.4.2 – most-recent version in Debian Testing) default take on the same:

Why is the Darktable fringing so badly saturated, clipped hard in blue? How can I dial it back to match the lens-performance seen SOOC?

Howdy and welcome. Which tone mapper are you using? Filmic, sigmoid, or base curve?

From your history, it looks like you just opened the raw and did no edits.

You need to process the image.

Would be a nice playraw, I’m sure you’d get plenty of acceptable edits.

Sigmoid’s new primary attenuation sliders will probably resolve this problem really well. They are brilliant at tackling certain lighting problems like the one you have shown here. If it was a playraw I would have attempted the fix to show you.
image

1 Like

It seems that you first need to learn how to work with darktable. Simply opening a raw file, expecting it to look reasonable, is not how it works. Start with this tutorial:

It will ensure you have a good understanding of the basic workflow. This is needed to get the most out of the other advice here.

Switch off filmic if on, switch on sigmoid and set the ‘smooth’ preset. That should give you a good starting point.

Those purple areas are very highly saturated. filmic, turned on by default if you use that workflow, will try to preserve colours in highlights, reducing brightness.
You can use sigmoid, which rolls off to white; you can tell filmic to roll off to white (set look / highlights saturation mix to 0); you can use filmic v6 or v5 (options / color science) with options / preserve chrominance set to no or luminance Y.
When filmic did not try so hard to preserve colour, people were complaining that it was producing flat highlights.
I think what’s happening is it first applies the tone curve to the brightness, and then multiplies the RGB channels with a value derived from the original colour (RGB ratios) of the pixel.
Look at what happened to a ‘purple’ (clipped) sun here, and the explanation given by filmic’s developer, Aurélien: Magenta highlights vs raw clipping indicator vs filmic white level - #60 by anon41087856.

1 Like

Hello,

To all that’s already been mentioned, I’d like to add Boris’s excellent video

Greetings from Brussels,
Christian

1 Like

Thanks, all for the friendly replies.

I’m experienced developing images in Darktable. I work with a few thousand selects each year in DT – essentially everything you find here has been processed with DT.

I’m new to playraws – that looks super fun. I’ve uploaded one here.

My question wasn’t “how do I mitigate these clipped/saturated halos”?, but rather, “Why is it happening at all?” i.e., quantitatively, what’s making it happen?

Even if disable filmic and highlight reconstruction, then pull back exposure, the halos remain highly saturated in blue – I don’t think they should, even quantitatively, given that the SOOC preview handles it so cleanly and that reality doesn’t show anything of the sort, even through the viewfinder.

For those who asked me to give sigmoid a spin, here’s the screenshot (using the playraw file)

It appears that some of the emphasis is coming from the color-calibration module.

Filmic disabled, exposure rolled back to avoid output clipping, color-calibration on:

Filmic disabled, same exposure, color-calibration off (note how much less-saturated the blues are):

Thanks again!

color calibration is part of white balance. You either use white balance set to camera reference, and apply color calibration with one of the the adaptation methods, or you use white balance with some other value, disabling color calibration. Since the module changes white balance, it changes colours, so some effect on the highly saturated areas is expected.

If the fringes come from overexposure, you should suppress them in highlight reconstruction, if possible.

Speaking of color calibration, it also has a gamut compression slider that affects highly saturated colours the most, and often helps with e.g. blue LEDs.

The new primaries module can also be used. Search the forum for instructions. The new version of sigmoid has a built-in version. Again, search the forum, detailed instructions have been provided.

In this case, I think two things play a role.

  1. chromatic aberration:

You can recognize it very well in the lower part of the picture where the intense light is reflected by the snow.

This can be partially corrected with the chromatic aberration module by switching on “very large chromatic aberration”, increasing strength and using “darken only” in this case:

  1. Out of gamut blue in highlights caused by LED lamps.

If you are using Filmic, you can move the highlights saturation mix slider to the left in the look tab to desaturate highlights…

…and then also play with gamut compression and saturation of the blue channel in the color calibration module:

The whole thing is much easier with the Sigmoid module. You just take the “smooth” preset and increase a little blue attenuation slider to desaturate blue in highlights:

In addition, you can also use the rgb primaries module to move the blue channel to cyan and the red channel to yellow, which completely eliminates purple fringing:

6 Likes

Hello Boris,
Thank you for your detailed explanation and for sharing your knowledge. Your professional experience is a great help to me and certainly to the whole community.
Greetings from Brussels,
Christian

3 Likes

@4kbt here is my fix for the problem using the blue attenuation slider in the primaries section of the Sigmoid module. I feel this is a very simple and straight forward fix to problems like this. These sliders are also good for controlling strong colored stage lighting. The screen shot shows image as opened on the left and attenuation on the right.
image
image

1 Like