Comparing filmic color science v5/v6

Yes, I agree. I think this comes back to what @PhotoPhysicsGuy was saying . . . basically that in this kind of scene just increasing the ‘brightness’ or exposure without shifting reds towards yellow looks wrong… and this is what filmic does - keeps the hues the same, just brighter. Which happens to look odd :wink:

PS. But I suppose the darker version looks ok because we’re not brightening it… it may come down to what we expect the darker scene to look like?

1 Like

But the visual signature of the mapping is the same as for the portrait. A pinkish desaturated look in the highlights. It looks less orange than the unmapped dark image. The look has followed filmic for a long time the outdoorsy woman photo, the many sigmoid / filmic stock image comparisons some early cityscape images etc.

This signature comes up again and again and I don’t think a robust way of countering it has come up? Or does it just get lost in the forum for each case?

Is the constant hue assumption perceptually correct for exposure changes? Or is it important for colour grading control?

1 Like

I get your point. But I don’t think I’m qualified to comment really… in my own photos I rarely have a real problem, and if I do there’s always (ok, usually…) a way round it, tweaking hues in color balance or zones (for example).
But it would be nice to have a setting or, hey, how about a slider in filmic that gives the option of the current, supposedly accurate but wrong-looking colours, OR cheerful saturated colours that might not be accurate but are “crowd pleasing” colours…

edit: I believe the hue preservation or whatever it’s called is important for colour grading control - AP did a video not that long ago, called something like 'Why do darktable’s colors look like s***"
But I don’t know whether it’s perceptually correct… not a clue…

I’m not, as many will testify :slight_smile: , qualified either! It just seems to me that a tonemapping + module should solve the issues of mapping tones from hdr to sdr whilst maintaining a believable look. It’s the consistency of the problematic look that suggests to me that there’s an issue that could be solved in there.

I’ve mentioned it before but I’m wondering if there is a use case split. I can see how an art director looking to maintain brand colours or a colour grader working against a set palette may benefit from manipulations that have strict hue, brightness, chroma separation. But are they really perceptually correct for normal photographic applications? The struggles around this with filmic really makes me wonder. Saying that I understand it’s a tricky business and the photoflow RT solutions aren’t bulletproof either.

1 Like

That seems an interesting point, the possible use case split. But I’m going out of my depth… :face_with_hand_over_mouth: It’s only in the last year that I’ve dived into processing raw photos - I was mostly a jpeg guy before that… I still shoot raw+jpeg so I have the option. But it’s increasingly rare that I use the jpgs! I started by using PS Elements Camera Raw… but never found much point over the jpgs somehow. I tried RawTherapee, but didn’t really get on with it for some reason. I eventually tried darktable and spent some time learning (from youtube) about the scene referred workflow and so on, and got to really like it. But I do occasionally find it hard to get the look I want… hence my interest in these threads!
EDIT(again): I’m always hesitant to blame a tool (or module) because I’ve found again and again in the past that it’s usually my own expertise at fault :wink:

I find dt’s rather ‘hands-on’ approach much preferable though to the ‘LR’ cut-and-dried approach which seems inclined to encourage certain styles - to the point where images can seem a bit commercial and tired… (I hasten to add that I’ve never actually used Lightroom so shouldn’t comment!)

1 Like

I’ve been working on my own problem image, of a sunset:

There’s a bright, partly overexposed highlight around the sun, which filmic desaturates into salmon and white:
default filmic

While the salmon hue is probably physically correct in some sense, this looks profoundly wrong to my eyes. Sunsets should get “hotter” near the sun, and “hot” means yellow, not white, somehow. So here’s my mitigation strategy:

I add a parametric mask to filmic that excludes the topmost 1% of Jz, which lets the brightest highlights clip:
filmic with Jz up to 99%

And if the effect is too strong, I add a second instance of filmic with the inverted raster mask of the first filmic, but reduced opacity:
second filmic

For reference, here are two commercial renditions, from Capture One and DxO, which clearly employ different levels of hue preservation:
capture onedxo

3 Likes

White is hotter than yellow. Class A and F stars are hotter then class G stars.

That’s an interesting comparison. The latter (DXo) version looks a bit salmon too… have you tried setting filmic to V5 and preserve chrominance to ‘no’? That would (I suspect) look more like the Capture One version, at least in the highlights. But I get the impression that it may also cause other problems though.

Yes, I know :grinning:

Is it relevant to photography?
Good point though!

So, conclusions seems to be that :

  • filmic doesn’t cause a hue shift in highlights (as designed!) and
  • there are situations were you want or even expect such a hue shift (psychologically)
    That seems to imply you’ll have to arrange for that shift elsewhere in the pipeline…

Only for (black body) emitters. And for those, white is cooler than blue…
In the case of sunsets, you are dealing with filtered and scattered light, so any direct link between colour and temperature is muddled anyway

4 Likes

I think that sums it up quite nicely, from my perspective anyway.

That’s what I did on my first post about the fire image above… it needs a nit of work though. I’m happy enough with that approach though, I think :grinning:

Is this a good design goal if it makes your images look odd? The anti cyan sky effect is positive but that’s caused by clipping right? Somehow it doesn’t add up.

2 Likes

I think I was wrong about V5 no preserve looking better. I just tried it! I’m a bit puzzled about this image actually… something I can’t put my finger on about the colours…

What keeps me up at night is whether this is a look we learned from photos, or whether it is psychophysically fundamental to our vision.

Reflection highlights on skin should not twist yellow. Fire and sunset highlights should twist yellow. Magenta and Cyan twists in clothing, flowers, skies pretty much always looks wrong. This might imply that reddish highlights drifting yellow are simply a pleasant look. Probably connected to “yellow” generally looking “brightest” of all colors, even if technically less bright than, say, salmon.

2 Likes

I agree, but it could well be not a problem of filmic but of dt’s pipeline which somehow gets avoided with sigmoid.

Coming back to the sunflower: whatever the reason for the v5/v6 discrepancy, it’s a problem somewhere and potentially a better example to track down, as the expectations of that color are more SDR than Sunsets or Fires, both of which are higher dynamic range things (sensor clipping artefacts!) and have distinctly different hue-constancy expectations in case of raising or lowering exposure.

I’m finding all this quite complicated and will perhaps have to come back to it. In the meantime here are a few comments -

I don’t understand this.

I wouldn’t expect the histogram profile to affect what the gamut button shows. The 3.8 manual says under 8.3.1.4 Gamut Check “This function highlights, in cyan, all pixels that
are out of gamut with respect to the selected softproof profile.” Which makes sense to me.

I realise now I don’t really understand how the histogram profile works. At the end of 8.3.5.9 it says
“As the scopes module runs at the end of the preview pixelpipe, it receives data in display color space.”
And also
“Image data is converted to the histogram profile before the scope data is calculated.”

So if my display profile is adobe rgb and histogram profile is rec2020 for example, does this mean
a) the preview data is in adobe rgb space and is after all modules except Output Color Profile, then
b) this data is converted to rec2020 space, then
c) a histogram (scope) is calculated
??

I find it a bit difficult to accept that after what is essentially a fancy raising of exposure. You need to go in and manually, by eye edit the colours. The salmon fire is wrong! No “but it’s maintaining hue” arguments can make me change my mind.


Above edit courtesy of thinkpad trackpoint :slight_smile:

The goal should be to be that the colours are correct after such adjustments. I mean that’s the whole purpose right. If you have to manually recreate the scene colours bye eye using a multitude of tools you’re right back to “stupid” tools again. There’s very little advantage to filmic at all.

I find it risky to do local colour tuning. Our eyes and brains are so easily fooled. I need to take breaks and look at the image again another day to be sure I’ve not recalibrated my brain whilst editing. This should be done only in exceptional cases for my type of work. It’s to risky. The internal colour relations are very important to an image.

Edit: If we were to come to the conclusions that it’s impossible to handle the normal range of photography with one tone mapper (for non creative edits) due perhaps to memory, expectations social seeing etc. it would be a huge blow to the whole idea. But then if this could be managed by presets for common scenarios it would be a bit of a work around. Still terrible when processing 2k photos but workable for amateurs with lots of time on their hands.

7 Likes

The yellow in these photos just looks ugly to me, even the desaturated dxo version. It is the infamous rat piss!

One thing you can do if you don’t like the colourless sun, or white flames, or white flowers, is increase the white relative slider. Remember, auto picking the white relative slider will set your brightest pixel to white. But how often do we see true white with our eyes? Most of us will agree that while the sun is the brightest thing we see, it often appears to have a yellow hue. Same with the bright flame. I haven’t downloaded the RAW, but sometimes with my own photos I find manually adjusting the white relative slider is best if I want colour in the highlights.

2 Likes

And there you have the whole problem. “Correct” according to what definition?
Filmic gets its input from what went before in the pipeline. At that point, “correct” behaviour is (in my opinion) to put out the same hue and chromaticity as went in (as far as possible), and only adjust the luminosity (as filmic is a tone mapper).

This is my tone mapping method

plus saturation

Original raw with lowered exposure

the pseudo code is this(could be used inside filmic, sigmoid or rgb tone curve):

Power-norm

i=[r,g,b]
max=max(r,g,b)
min=min(r,g,b)
lum=(r^3+g^3+b^3)/(r^2+g^2+b^2)

rtm=(1-(pivot/((r/gray)^power+pivot))) // tone mapping  or simple tone curve on the red channel
gtm=(1-(pivot/((g/gray)^power+pivot)))// tone mapped or simple tone curve on the green channel
btm=(1-(pivot/((b/gray)^power+pivot)))// tone mapped  or simple tone curve on the blu channel


crgbtm=[rtm,gtm,btm]
maxtm=max(rtm,gtm,btm)
mintm=min(rtm,gtm,btm)
lumtm=(rtm^3+gtm^3+btm^3)/(rtm^2+gtm^2+btm^2)
chromatm=1-(mintm/lumtm)

chroma2=1-(min((r-lum+lumtm),(g-lum+lumtm),(b-lum+lumtm))/lumtm)

chromamult=if(chromatm==0||chroma2==0,0,chromatm/chroma2)
i=[r,g,b]
final_image=((i-lum)*chromamult+lumtm)*0.60+crgbtm*0.40;
1 Like