Removal of magenta highlight artefacts

The trouble is, filmic has no idea about what’s overexposed at the raw level. It deals with highlights, in general. However, its norms react badly to super-saturated colours caused by raw clipping, even when they are extremely bright (like the Sun disc).

See Magenta highlights vs raw clipping indicator vs filmic white level

I don’t understand how filmic handles brightness. I used to think I do. My understanding was that it calculates a number, the so-called norm, from the pixel’s RGB values, and uses that as the brightness for the tone mapping, and then calculates display-referred RGB values based on the mapped (display-referred) value of the norm and on how the original, scene-referred RGB values were related to the norm:

// R, G, B: scene-referred; r, g, b: display-referred
norm = f(R, G, B) // f depends on the selected norm
mapped = tm(norm) // tm: tone-mapping function
r = R/norm * mapped; g = G/norm * mapped; b = B/norm * mapped;

But then we read that it just so happens that this shade of magenta appears dark in some norms. However, the same magenta highlights are considered to have extreme brightness, as they are affected by the extreme luminance saturation slider (they are extremely bright: when we enter filmic, the (clipped in raw) Sun disc reads RGB = 4166, 1687, 5304, while the (non-clipped) bright sky reads 1572, 1188, 707).

Anyway, I don’t want to resurrect that old thread (especially with Aurélien gone). I just added it here for reference.

1 Like