filmic v4 on the way

Thank you for this!

I have been playing with it for a few minutes now and one thing that is puzzling me is that in the reconstruction tab, “grey/colorful details” is affecting somebody’s white t-shirt to a large extent (“grey” makes it brighter), despite it not being clipped nor close to anything clipped (according to the raw overexposure indicator). Is that to be expected?

Edit: and if I push the contrast/latitude to the extent that this t-shirt clips, it clips to dark blue. Something seems a bit strange here. It is very slightly blue to begin with since it’s in a shadowed area (as is most of the image), but it’s not that blue.

Edit 2: the more “iterations of high-quality reconstruction”, the bluer.

Also, I find it a bit counterintuitive that “hard” highlights/shadows means compressed with a rounder curve and “soft” means a hard clip, but maybe that’s just me.

Even v4 of filmic can’t do witchcraft - if you force clipping there will be clipping :wink:

Balancing details reconstruction to favour monochromatic reconstruction makes RGB tend toward the peak signal, aka the max(RGB). So, indeed, it makes highlights slightly brighter. But the first question to answer is why you need to reconstruct grey shades at all ? You need to tweak the clipping mask to prevent it from selecting non-clipped areas.

Show me the pic ?

“Hard” is the resulting contrast produced by a “round” curve. Science tends to be counter-intuitive like that.

I am not objecting to the clipping itself, I am objecting to the highlight turning into dark blue. (And even when not clipping, it looks bluer than it should.)

I seem to have found the culprit. It’s when “preserve chrominance” is set to “luminance” instead of “RGB power norm”.

Here is a crop with default “exposure” and no filmic:

_6010046

Here it is with a non-remarkable set of filmic settings:

_6010046_01 curve

And here with the same filmic settings but “preserve chrominance” = “luminance”:

_6010046_03

To be honest, I find the last sentence needlessly condescending (I have a scientific background too), and I still don’t really see why it would be called like that (the 3D LUT tool from DisplayCAL calls the non-round curve “hard clip”), but thanks.

That looks more like an issue with the color inpainting, in “reconstruction” tab. What are your settings ? Also, how many high-quality reconstruction iterations if any (in options tab) ?

It is called like that because the visual result of a round curve is a more pronounced contrast. I could have called it “impose/relax a first order derivative condition == zero on the quartic/cubic spline at 0/100% luminance”, but people already complain with my labels being too long and too geeky already. I don’t care about what Display CAL is doing, and this has nothing to do with clipping. I don’t understand why you are trying to search meaning in a label based on some other software doing unrelated things.

2 Likes

Diamonds are hard, so is life. Perhaps, hard and soft to describe a curve is inapt. :wink:

Slope defines contrast in a curve. Steeper = contrastier, shallow=not-so-contrasty.

I can’t speak for Aurélien, but in the days of the wet darkroom, hard and soft referred to the perceived paper and film contrast. Hard papers (and films) had a steeper slope in the center of the curve than soft papers. And as the tonal range was more or less the same for both types of paper, the hard paper had more pronounced roll-off at the ends of the range.

A result of that is that the hard paper would actually have less contrast at the ends of the tonal range

In the case of “hard clip”, I’d expect a brutal cutoff, as opposed to a roll-off, so not the same meaning of “hard”

1 Like

The only set of reconstruction settings that I can find that does not trigger the problem is with “grey/colorful details” set to 0%. 100% (the default) is blue, -100% is yellow-ish.

It happens regardless of the number of iterations, but the number does make it “move”:
blue

That it’s more pronounced with “hard” only seems true when the contrast is low to begin with. Otherwise, “hard” looks like this:
hard

While “soft” looks like this:
soft

Which exhibits “hard clipping”, a term in widespread use, not just in DisplayCAL. But what DisplayCAL does doesn’t seem completely unrelated either, it’s also a tone-mapping curve, labeled as follows (for tone mapping to, say, a 1000 cd/m² display):

I wasn’t saying that there couldn’t possibly be any reason to deviate from this naming, just that those reasons were not apparent to me.

This clipping should not happen and means the latitude needs to be reduced. The “hard” variant sets a zero derivative at both ends of the curve, so there is more “tension” in the spline to converge toward the min/max luminance in an asymptotic way, as opposed to no derivative condition, that produce a more sloppy curve which, in you case, is oscillating but the overshoot/undershoot get clipped by the sanity check. Namely, if you put contrast to 1, you can’t achieve a straight line in “hard” mode, there is still curvature happening at both ends, whereas “soft” allows a straight line from end to end. An in all, if you divide the latitude by 2 and try both modes, the result should be self-explanatory.

Ok, but again… is that area clipped in the first place ? Does it need reconstruction at all ? Because you can set the highlights threshold and exclude it from reconstruction if it is good. Or perhaps send me the RAW one way or another.

1 Like

That’s what I eventually figured out once you mentioned the first-order derivative condition, but thank you for confirming, I appreciate it.

No, it’s not clipped (in the meantime, I checked with RawDigger too), but with “luminance” preservation, not even a threshold of +6 EV spares it. With “RGB power norm”, it seems fine as long as the latitude is sufficiently narrow. I’ll see if I can send you the RAW somehow.

Short of a full RAW, here is a cropped EXR which behaves in the same way as far as I can tell:

blue.exr (1.3 MB) blue.exr.xmp (11.2 KB)

Look at your histogram… What you have here is a severe white balance problem. Fix it, and everything behaves. Also, you don’t need reconstruction at all, because, indeed, everything is correct and reconstruction, by design, propagate details from the neighbouring areas.

blue.exr.xmp (4,1 Ko) blue

2 Likes

As a side note, using luminance on non-white-balanced images will always fail. White balance defines your RGB color space as much as your ICC profile, and luminance is computed from that RGB space. If the white balance is not properly set, your whole color space is as bad as if you applied a wrong color profile, and the luminance is wrong as well.

3 Likes

Thank you for looking into it.

White balance is fine for the overall image. The crop is taken from a shaded area. If this area is neutralized, then the part of the image that is in the sun looks much too warm.

Here is the overall image (with the faces blurred):

Something I don’t understand is how the white T-shirt ends in the peak luminance area when it’s obviously not the image peak luminance.

Anyway, to fix varying white balance, you can use the color balance : neutralize the highlights white balance with the “slope/gain” hue, neutralize the shadows balance with the “offset/lift” hue, then maybe finish with “gamma/power”. That will help get achromatic greys all over the range.

The whole pipeline relies on the assumption that greys are achromatic under the working illuminant. If that condition is not met, any saturation adjustment will shift hue as well (because the saturation is the distance between current color and the closest achromatic grey shade), in unpredictable ways and the pipe will break at various places. Once you have ensured that overall condition, you may grade your image in an artistic way and move (carefully) from that neutral base to tinted greys to match your artistic intent, but always keep in mind that you are pushing the pipe out of its comfort zone.

2 Likes

I see, many thanks for your patience and explanations. :blush:

2 Likes

@anon41087856 This workflow would only apply to new imports and or maybe unedited files??

I switched it on and I think some of my older edits may have been altered…I need to experiment more but I was just asking to clarify the operation and triggers…

Thanks