L*a*b reference points

Hello everyone,
This question is addressed to those keen on Lab color processing in Darktable.
There are methods to adjust L-channel with various ways of taking references.

Say I have a RAW image with an adjusted L-channel. Simply picked light areas for lights and shades for darks reference -and voila - I have an S-curve in L-channel.

Unlike L-channel, with only gray color, a- and b-channel have two colors each. They make up a more complicated set to adjust. Also, human eye views chroma differently than lightness.

I did not find any good advice on Internet except there is Margulis, but I don’t need that deep knowledge.

I’d like to learn in general terms what shall be taken for reference when adjusting chroma with fewer deviations.

Question: How would you adjust a- and b- channels in DT? What sign-posts would you take for reference in chroma?

Sorry, I don’t use dt but am interested in your question. Could you show us some screenshots to demonstrate the source of your frustration? Is this about a module or masking, etc.?

I use a lab tone curve in almost every edit I do. Sometimes multiple modules depending on what is needed.

I will do a contrast adjustment in the L channel, followed by a global saturation adjustment using the A and B channels. I generally don’t use a reference point, as I feel that color saturation is generally a matter of taste (especially for me, as I tend to make photos without people in them).

I generally try not to make the color channels clip off the top of the histogram (that’s way too much!).

What to understand with the A and B channels is that you’re not only increasing saturation when you make an S curve, but also the contrast between colors as well.

As with a lot of my processing, I go a bit over what I like, then walk to correction back to find a nice medium.

1 Like

Hi Alex,

Some info here:

Have fun!
Claes in Lund, Sweden

1 Like

Hi Mica,

You have seen a few of Boris’ dt tutorials, right?
Could you please be persuaded into making a dt
tutorial based on your “normal edits”?

Have fun!
Claes in Lund, Sweden

Oh, the tone curve. In 2.6, I noticed that the curve for a* for my test image doesn’t have background colours like the one for b*. Is that dependent on the input image? Or a bug?

This book is a great resource, I have it and read it. His writing style is really really really terrible and makes it difficult to actually read and absorb the technical information. He also references how bad people say his writing is throughout the whole book and how he seems not to care, which makes me even more irritated.

Nothing worse than good technical information wrapped in an extremely trite communication style.

I don’t think I do anything special with the tone curve. I just try not to abuse it!

It’s both curiosity to experiment and a bit of frustration. Well… those often come together :grin:

I have my routine workflow, this time I’m experimenting with a new approach. I’m half-way through.

Briefly I want separate Lightness treatment and separate chroma adjustment. Filmic is my weapon of choice. I put it specifically in Lab lightness blend mode (see the screenshot). Am I isolating it right? Anyway, I like the lightness now, it’s more or less within the gamut and scene.

Now I want to treat colors separately. Lab chromacity space is my weapon here. For two reasons: a) no lightness correlation, less artifacts b) have independent control of color in case I want to modify it later to my taste.

I pick a Tone Curve (did not fit into the screenshot) in Lab independent mode and go to a- and b- curves. This is where I fail to pick any reference.

I find a-and b- harder to control than L-channel. The desired result is close and I can make colors look accurately even for a pixel-peeper whom I am. Still dragging a and b takes a tons of time. I fail figure out indicators to be signposts to less deviations and quicker adjustment. Do you know how to adjust a- and b- quickly?

Thanks, but it does not have enough indicators for me. For other than that, good article though :slight_smile:

How about the Color zones module?

I’m doing the same. But…

here my approach takes a turn - I want free of style, conditions accurate chroma :smiley:

I tend to use L*C*h° in my processing, which is the polar projection of L*a*b*. C* is Chroma and h° is hue angle. Doesn’t have the flexibility that a* and b* has in manipulating specific colours but it makes more sense to me.

1 Like

What does the term “accurate chroma” mean to you?

You can put an reference point on a particular part, like the trees, then use A and B channels to get the same color green in all your tree shots. (But I wouldn’t call that “accurate” but rather “uniform”).

You’ right such term is arguable and subjective. I mean the most scene-relevant.

If you want to shoot a color target in every scene, you could make this happen.

To me, the colors are part of the artistry and to do something like match them to what they were in the scene is missing the point (however of you were making scientific images or something, then you’d want the color target).


Years ago I followed some discussions about L*a*b* treatment.
As for a* and b* channels, if you want to increase the saturation of colors, for both curves you can simply drag the lower left point to right, and the upper to the left (like trying to go towards a more vertical line instead of diagonal). You have to keep symmetry around the middle point to not introduce color shift. Or drag the points up/down to decrease saturation.
You can also use the a* and b* curves to shift colors, sometimes it can work as a sort of warming/cooling filter, by leaving the lower and upper points, and just adding a point in the middle and bending the curve up or down (convex r concave shape).
With an S shape you can also shift colors differently in shadows and highlights, giving a result somewhat like color toning.

Edit: I wrote from my memory, some details might be wrong

I don’t think this is correct, as there is no luminance in the A and B channel.

Yes, I believe that would be incorrect. If this is true

then it would mean that the mid-point is where a*=(0,0) or b*=(0,0). Doing an S-curve would mean that you would be moving a* or b* values above and below 0, likely giving a split tone appearance.

Oh, now that’s something! Thank you Sebastian.