Editing moments with darktable

Just got round to watching this. This video is great and combined with the other video from Johanna, it opens up a whole new world of opportunities. Really helpful for giving you some direction in editing your photos. Thanks very much Boris!

4 Likes

Boris.

IMHO You should do two before/after comparisons.
First before = just after doing lens correction. We have global before/after.
Second before = just before doing “Color harmony” steps. Before and after “color harmony”.

When it is only snapshot just after doing lens correction I don’t know what beauty is made by tone and global color correction and what is made strictly by “color harmony”.

Greetings. Your movies has big education advantage for me.
Darek K

4 Likes

Insted of “You should” it should be “It would be very helpfull” :slight_smile:

4 Likes

Another fantastic video, Boris, and I’m really looking forward to part 2.

I have become so much better with the channel mixer over the last year, but I still don’t feel I have mastered it. I think I understand the fundamentals of it, but working out which sliders to use is still not always coming to me naturally. For example, if I’m working with an orange colour, which channel is best to start adjusting? With orange being a mix of red and yellow, is it best to start with the Red channel or the Blue channel? And then once you have decided on the channel, which is the best input slider to start with? I still feel that I fall back to trial and error quite often (although it’s not completely random).

You often explain why you use certain channel mixer sliders in your videos, but I always seem to forget when I sit down in front of darktable. I was wondering, do you have some kind of “thought workflow” to help remember how to approach channel mixer. For example:

  • The colour I want to change is x
  • I want to change colour x to colour y
  • Colour x is composed of colours a and b
  • Therefore I should use the ? channel and push the ? input slider towards ?, then compensate by using ? slider, etc.

Something like that?
I’m looking for a foolproof way I can remember how to approach it. If you don’t work this way, don’t worry, but thought I’d ask because I feel you do have some kind of similar methodology based on your videos.

2 Likes

Ok. This simple RGB model is the best tool to understand what needs to be changed:

And as you can see, yellow is the combination of of equal values of red and green in the absence of blue.

Orange color you get - similar to how you mix colors in painting - by mixing in a bit more red. So, orange is more reddish yellow, so to speak. That is, if you want to get orange from yellow, you have to increase the value of red.

The problem is - if I want to do that in the example above, it doesn’t work, because we have very bright yellow, which means both the red and the green is already at maximum. So, I can’t increase the red:

But, what I can do is decrease the amount of green and thus the amount of red becomes higher than green and I get orange:

So now I got orange from yellow but as you can see, green became darker and also other colors where the green was involved have changed:

  1. white (where all 3 channels are mixed together with equal share) got magenta
  2. cyan (combination of blue and green) got blue

The same result as above with curves can be obtained with channel mixer. I can use input green in green channel (here in GIMP is called Green in Green channel) to reduce proportion of green:

Thus I changed - just like in the example above - all colors where the green channel plays a role.

But if I use input red in the green channel (in GIMP Red in Green channel) instead of input green, I only affect the areas where the red channel was involved:

So, yellow becomes orange and white becomes magenta. the cyan (combination of blue and green) is not affected.

Now to answer your question where to start. Here is a concrete example. We have an autumn scene and the leaves are too orange. We want to make them a little more yellowish.

So, we need to increase the amount of green or decrease the amount of red to get yellow. Now the question is, what other colors do we want to influence as well?

In the green channel we can use input green. This will affect all the areas where the green channel is involved:

That is, next to the yellow leaves, the sky also became greenish because the green channel is also present in the sky (combination between green and blue).

But if we do not want to influence the sky, we can use input red in green channel:

Since we are affecting the areas where the red channel is present, the sky will not be affected, but everything that was red before will become orange because this is the area where logically the red channel has the highest value. Correspondingly, - if we use these proportions of the red channel for the increase of green - the increase of green value will be strongest there:

Another possibility would be to reduce the red in the red channel.

If you want to protect the sky, you can use input red, because red channel is not present in the sky. However, this will make the photo a little darker:

23 Likes

But in Darktable, you are still in the scene-referred part of the workflow, so why can’t you increase it?

Occasionally, when parts of an image map more-or-less cleanly to a channel, this works, but in general you cannot depend on this. Masking (what you showed in the tutorial) much more robust and flexible.

You are looking for a matrix M where y = M x (by RGB channels), so there is no unique solution.

Eg if x[1] > 0 WLOG, then

M = \begin{bmatrix} y[1]/x[1] & 0 & 0 \\ y[2]/x[1] & 0 & 0 \\ y[3]/x[1] & 0 & 0 \\ \end{bmatrix}

works, and so do an infinite number of combinations. But if the area you have selected (masked) is not of a homogeneous color, then the results will be subtly different because the inputs are.

Yes, but, here it is about explaining the principle of color mixing as simply as possible regardless of what software is used.

This is all correct, but you can’t edit photos with this matrix.

Now you managed to scare all those who might dare to try channel mixer. Exactly what I actually wanted to avoid. :rofl:

That’s why I prefer - even if the explanation is not exact - to help people make first steps. It can be that I do not always succeed well. But, if then the questions come, one can build the understanding further.

This question list of @europlatus can be answered only on concrete example.

Exactly, but still, you can use channel mixers even without a mask, even if it doesn’t make you “exact”. Here we want to make sky more bluish without affecting rest:

Sky as you can see is not blue, but has such a “yellowish” part. If we now take input blue to reduce red, according to the matrix the red of all areas in the photo will be reduced most in the sky, because the values of the blue channel are highest there.
Of course, we reduce the red in other areas as well, but relatively little compared to the sky:

Now we have removed the red at the highest from the sky and now the green dominates there. Now we need to increase the value of blue there without affecting the rest too much. So, now we use input blue again this time to increase the blue in the blue channel:

Now we have practically “corrected” the color of the sky without affecting the rest too much.

6 Likes

color mixer.pdf (87.5 KB)

A little cheat sheet I came across some time ago…@europlatus you might find this helpful…
The Channel Mixer.pdf (71.2 KB)
OOPs I had meant this one…

I am not sure why you think this — you input a matrix exactly like this with the RGB sliders.

Sorry, this wasn’t my intention. But the channel mixer is an inherently difficult tool because the RGB space it operates on is not intuitive (for most people). Because of this, I am not sure it is ideal for this task.

I think the best solution would be creating a version of color zones that operates in the linear part of the pixelpipe, with a perception-based color model.

Here is a screenshot of the principle I suggested above:

The mask coincides with the orange circle, this is part of the yellow flower I made orange.

Red is untouched:

red

blue is zeroed out:

blue

But if course do not do this in real life… as drastic adjustments can lead to steep contrast, inversions, etc.

I think it is best to just play with this module until one gets it, possibly watching the vectorscope.

2 Likes

Yes, I agree with that. Aurelian started it, but it ended in arguments and I don’t think it was followed up. That is a pity.

Yes, I will highly recommend that too! :+1:

2 Likes

Sorry if I missed this in the video and you already mentioned it, but I find that pressing c over the parametric mask slider for hues is a good way to preview all hues I have, eg

3 Likes

Great! (But where can I get a cheat sheet for the cheat sheet? :wink: )

2 Likes

I guess you might have to make your own after a little practice… :blush:

2 Likes

Thank you very much @s7habo for a very comprehensive answer. I will study it several times and let it all sink in. I greatly appreciate the time you put in to help users like myself.
::

2 Likes

Thanks @priort, I will see if that helps. There’s a lot of information contained in that!

Yes, I would love that, and probably would many other users. I’m also still hoping for the scene-referred HSL module that was talked about for a while and got abandoned. I want to like the channel mixer, but it is really hard to master, and other colour alteration modules are much more intuitive.

2 Likes

If you just visualize the rgb values of the pixels that you want to impact vertically aligned in the channel mixer section for each output color next to each slider and then realize in each output channel these are the values that each slider will impact so say the starting pixel is 255 128 0 In the red output each slider adds to red value of the pixel by the amount equal to the product of the slider and the input pixel value. So edits to the red channels will make the value of that pixel be x 128 0 where x will be more or less than the original value of red in the rgb value of that pixel. Bigger numbers are brighter and smaller ones darker. All pixels in the image will have their red value changed in proportion to the slider values applied to each of rg and b. The logic extends. The next set of set of 3 sliders will only change the 128 value with changes in the red slider impacting green the most… In all cases the blue slider will do nothing as the value of the blue pixel is 0. If you use the color picker to to show you the rgb of any input area then you can sort of predict what the sliders will do …and keeping the vectorscope on lets you follow how the color changes helping you to see how to shift them… watching the vectorscope and practicing will make it easier… I use these edits for tough changes otherwise I use color zones or clut module depending on what I am trying to do because its quick and easy. The channel mixer is great for tweaking skin tones and foliage and skies. I tend to use rgb color balance more for tonal color grading than targeted color changes but you could with masking also do it using the controls… I think someone offered up a set of mask presets for the primary colors normally found in an HSL control for rgb color balance… I am sure you could also try those

2 Likes

IMHO very good explanation of channel mixer is here :


Darek K

7 Likes

Dave does a nice job with his Affinity videos…

Pat David did a very nice and simple example here

As part of this thread on the channel mixer

1 Like

Thank you once again @s7habo for a wonderfully informative video… can’t wait for the next episode. Still i find it strange that so many use DT and so few views and even fewer likes to support You Tube algorithms…Currently most of the other creators have stopped publishing vids on DT…maybe too good for the paid alternatives? I wonder …Still i hope that the devs will continue the good work so that DT has a future. Boris thank you again for your efforts.

2 Likes

Basically, it has remained the same as always. For the most part, the creators of videos about darktable have focused on explaining the functionality of darktable and that exhausts itself with time. Since many do it in their spare time, when there is nothing special to report, they don’t do it anymore. This is quite normal.

But what is missing are the professional photographers who are not too concerned with the functionality but with the creative use of darktable. And that is, in my opinion, that darktable is still not seen in this segment as an alternative to the commercial (“mainstream”) products, despite the fact that it is equivalent or even better in functionality.

This is due to the fact that many people have been using the commercial products for a long time and - either because they have already bought them or because they are contractually bound to them - are reluctant to switch.

But I also see the increasingly opposite tendency - those who are dissatisfied with commercial products are already happy to switch. However, that is still the minority at first.

What free software like darktable can’t do is have an extensive marketing strategy. The spread stays on the backs of dedicated users and developers.

They do. The development is progressing relentlessly. You don’t have to worry about the future of darktable at the moment.

14 Likes