Why are the purples missing in my photo suddenly?

I have a saved style for my camera, and it has worked well for quite a while now, but suddenly with a photo I took all the purples go missing and I don’t know why… I’ve both reset and toggled all modules on and off and seems nothing brings them back… can an expert explain to me, please?

L1137638.DNG (52.0 MB)
L1137638.DNG.xmp (13.2 KB)

I just opened the file with your xmp sidecar and in duplicate manager created an original and I see no purple in it.

1 Like

What version of DT? Did you upgrade recently? What OS?

1 Like

I feel it is an issue with the white balance and color calibration module and your leica camera. I am on DT 5.3 windows. I disabled the CC module and set white balance to as shot in camera and this is the result. Is that closer to what you expect?

5.2.1 on Linux. I think I last ran a system update a few weeks ago.

Hmm… if I do the same I can only get the purple back if I drag the slider to way, way warm…

Here’s an actual screen dump of the desktop:

So… I guess I can mask the screen and apply two different white balances in this particular instance, but that feels wrong. I was hoping to learn something about the CC and the white balance modules here, which I still find very confusing.

The embedded preview in LT looks right but not after going in to DR view and the default processing, using the same wb settings in ART it looks off as well unless I use the adobe dcp for the camera profile and then I think its likely okay or close so maybe the embedded input profile is off in DT ??

Without

1 Like

In case people are wondering, this is pretty close to how it’s supposed to look, but I don’t feel I got there in a “correct” way… (and I don’t think I managed to rescue the teal color of the laptop).

L1137638.DNG.xmp (14.7 KB)

If you look at the waveform you can see that the blues are clipping (out of gamut):

Sigmoid with the smooth preset and gamut compression in color calibration:


L1137638.DNG.xmp (8.7 KB)

Have a look at Boris Hajdukovic’s videos on dealing with out of gamut LED lights.

4 Likes

Test your style on normal subjects and confirm it still functions correctly.

This is an edit i did in DT5.3 using the new AgX module but disabling the adjustments of the primaries. I am unsure how close this is to your expectations. AgX will be in DT 5.4

EDIT: try moving the preserve hue slider to zero in Sigmoid. This will bring back some purple in your edit.

L1137638_03.DNG.xmp (9.8 KB)

1 Like

I am not sure if moving the blue hue slider towards magenta in the rgb primaries helps.


Looks like you had to mask and do an extreme wb tweak…I tried to leave wb mostly alone and landed here just more or less using agx…

Your OOC preview…

Your edit from the xmp above

Here was a first quick go with agx and working the primaries…might have let it get a bit warmer I guess or mask to let the background warm a little…but it shows how you can manage an extreme light issue without having to radically distort wb

This was AGX off

1 Like

Just to be clear, the main issue is that the purples “drown” in the out-of-gamut blues. The first step will have to be bringing that under control. If you use Filmic, that can be done with gamut compression in Color Calibration or maybe blue purity in RGB Primaries, while with Sigmoid and AgX you should use the their primaries feature.

3 Likes

@eobet to get back to your initial question: Aside from the photo you provided: Do you have other photos, where you observed this behaviour? The shown image of the incredibly saturated blue wallpaper seems like a fairly artificial testing ground compared to other more naturally lit scenarios.

I found with your photo, that disabling “clip negative RGB from gamut” brings back the purples but also introduces some artifacts so this really is a gamut problem as pointed out by @Donatzsky .

Also: What is the source of the left example in your original post?

Camera sensors are fairly bad at capturing purple in my experience and might be connected to the fact that purple is not real.

2 Likes

Without gamut compression, the following are out of gamut for Rec 2020, immediately after applying the input profile (false colour: negative components are shown as 1, non-negative components zeroed out):

I do wonder if the original scene really had those purples, or if they are only artefacts of the camera’s own colour management. RawTherapee also shows no purples.


Same, but with RT’s gamut compression disabled:


(I did not do any editing/correction in RT – this is not meant to represent the result RT could give you if used properly!)

AgX, sandwiched between two instances of the (WIP) gamut compression module, first compressing to Rec 2020, then to output (sRGB). Compression and clipping are disabled in color calibration.

And this is only darktable’s exposure module, adjusted until everything fit into 0 … 1. No purple.

Finally, a spectral-based profile from @ggbutcher (it’s for the Nikon D7000, just for fun) – even with clipping negative values in color calibration (I think Glenn’s profile wouldn’t produce such values, but I’m not sure), we do get some purples. No tone mapper:

BTW, is it possible that your monitor profile changed recently?
It does not influence the export, but it does influence what you see in the editor preview. An extreme example (an image with very high dynamic ratio, without a tone mapper, so clipping is expected).
The only thing I changed below is the display profile:

2 Likes

Turning off color calibration, using white balance with as-shot, and sigmoid with the smooth preset gives you purples.

Maybe you switched from preferences → processing → auto-apply pixel workflow defaults = none or legacy, both of which use simple white balance, without color calibration, to one of the scene-referred modes?

I do this all the time and it works on the large majority of photos. I admit that I sometimes struggle with the CC or white balance in DT, but this was the first time an entire color just completely went missing for me (and I couldn’t bring it back).

Sure, that’s a good observation as I have posted an image previously where I also photographed blue light and struggled with it.

Just delete the sidecar file and it will show up like that in lighttable.

I posted a screen dump of the wallpaper I took a photo of a few posts up, so you can see the original purple yourself. My laptop does have a very saturated screen I’m not super fond of, though. I have no idea how to change the monitor profile on it (especially in Linux).

And thank you to everyone commenting so far, now I’m starting to learn things! :purple_heart:

EDIT: Also, now that I’ve been staring at the photo for a bit more after sharing it, I regret not dusting off the laptop first! :sweat_smile:

1 Like

I can see a photo of something. The question was, if what you saw, the original screen, also had purples.

1 Like

I think you are seeing the embedded JPEG on the lighttable.

I have darktable usually display a rendered preview instead of the embedded jpeg. Settings/lighttable:

Preview Setting

When I set this option to “never” I, too get the preview you screenshotted in the original post.

OK, it took a while, but I think I understand what’s going on: in this scene, there are 2 illuminants. There is some light lighting the room, and there is another, the backlighting of the screen itself. And I now see that @eobet beat me to it, in his 2nd post already. :smiley: Yesterday evening, I rushed over the first few responses and missed that. Anyway, I’ll keep this here:

With the simple WB multipliers, it worked out well.
color calibration is more sophisticated, and often prevents some colour shifts. It seems that, in this case, it worked against us.

Somewhere I found an article that demonstrated that we perceive emissive surfaces (light sources such as company logos on buildings) as ‘true to life’, if we apply daylight white balance to them. Since the screen is a light source, I tried that. I excluded the screen:

And that gives us this:

Applying daylight (D50, which is the white point of darktable’s pipeline) to the screen only:

Less purple, but it’s there:

Or we can pick the illuminant temperature from the information displayed at the top of the screen:

Setting AgX look->preserve hue to 100%, and in primaries, ticking ‘reverse all’, and applying the WIP gamut compression:

Comparing with the provided screenshot:

2 Likes

The linked article is fairly misleading in a couple of respects. Purple is no more or less “real” than any other color, as all color perception is an imagination of our brains. The only real thing is energy in differing levels parcelled in something we model as “photons”.
The article seems to me to convey a misunderstanding of how our color vision works, (with the caveat that nobody fully understands all aspects of our sense of vision). It refers to purple as a “non-spectral color” which is correct in that there is no single partition of the visible spectrum that we will identify as “purple” (-- so we will not be able to construct a laser that emits monochromatic “purple”). The same goes, however, for e.g. “brown”, albeit for totally different reasons.

The central point is that all normal perception of color, including primary colors, by humans with normally functioning trichromatic visual sense, is the result of triggering of more than one of the three kinds of cone sensors cells. In this respect “purple” is no different from any other color we sense. Moreover, there is a wide range of combinations of sensor signals from two or three cone types, that can result in perception of the same color, again primary colors included.

Some quotes and comments:

Purple is a combination of wavelengths from opposite extremes of the spectrum, which technically doesn’t make any sense, but our brains evolved a solution.
“Technically sense”? If we talk about emission from a single incandescent light source, perhaps, but most of our visual perception is about reflected and filtered, not emitted, light.

When we “see” a combination of blue and red wavelengths, the brain bends the visual spectrum into a circle that joins blue and red at the point of purple.
The brain’s color system do of course work totally fine, including perceiving “purple”, fully independent of our human constructions of color circles etc. Our brains can even be trained, as part of a natural child development, to see purple without haven seen a rainbow.

The problem with purple is that it isn’t supposed to be possible to create a color from wavelengths on opposite ends of the spectrum.
“Supposed”, by whom? God? Evolution? The fact that we anyhow can see “purple” (and all other colors) just by being born into this world and beginning to see the day of light, without anybody teaching us about anything, demonstrate that our visiual sense anyhow is quite adaptive and complex. (That we need to be taught about how our color perception corresponds with verbal communications between humans, is a totally other dimension of color. Just to illustrate how little “technical” and how really complex our visual sense of color is: The degree of granularity in color expressions offered by the language we learn, impacts our ability to discern colors nuances.)

“purple is just your brain’s way of resolving confusion”.
For a brain that lies in a fairly dark box (the skull) and every second receives a myriad of nerve signals from our whole body, I posit that most (all?) sensing is the result of resolving confusion. (That’s why it takes e.g. some months to sort out where our body is and how to operate its various parts. Seeing, colors included, likely is a similar training act to create order in that we sense.

3 Likes