Editing moments with darktable

Gald to see your work on Monochrome as well…@ s7habo

1 Like

You did a fantastic job again Boris!

1 Like

One more black and white episode: Into the mist :fog:


New episode: Illuminated :woman_red_haired:


Yeah I’ve seen this one. Great transition Boris, well done!

1 Like

New episode: autumn mood: :fallen_leaf: :maple_leaf:


Thank you!

Nine tone curves, eh? :slight_smile:

Claes in Lund, Schweden

Yeah! That’ the strength of free software - you can use as many as you want without any additional costs. Perfect solution for addicts like me! :grin::sunglasses:


Watch your tongue. Per layer price tag could be the next big thing in adobe world. And take 10, get 1 for free …


nailed it !!

That would be very good news for free software! :wink::kissing_smiling_eyes:

1 Like

Episode 22: new dynamic range compression :clamp:


Great showcase, but you should try to factorize the number of modules you are using. You are duplicating lots of stuff, like using a tonecurve after colour balance contrast is essentially doing twice the same thing, or the global tonemapping effect could be achieved with a combination of tone equalizer for the mapping and local contrast for the texture enhancement.


Thanks for your feedback @aurelienpierre !
I am slowly getting used to the new approach and have to break old habits. In this regard I will gladly discuss a few points tonight, when I will be at home.


Sure, shoot.

Ok. First I would like to demonstrate if I have understood the new approach.

When I use Fimic RGB, I have followed your advice and accordingly I get the best results if I first set the medium grey in the exposure as I want it (without consideration of the overexposure) and then use Filmic RGB.

I’m going to take an example now, so that there’s not too much abstract talk.

  1. In this photo I first adjusted the exposure so that the trees are well lit:

  1. Then I used Filmic RGB to adjust the dynamic range so that the details in the snow can still be recognized to some extent. And as the histogram shows, I still have enough space for further processing. However the image is very flat and diffuse which is normal as a result of the strong compression:

  1. Now comes the tricky task of emphasizing the details without affecting the dynamic range too much. Here you suggest to use a local contrast module. Although this will actually help to increase local contrast a bit it is not enough and there is a risk that you will either over-sharpen the image or get other unwanted effects. Note that the snow has not yet gained much in local contrast:

  1. So we have to bring the highlights back more to work on the details. For this purpose tone equalizer is a very good choice. The masking of guided filter can be a bit cumbersome, but after a little effort you get good results. Now you can slowly see the footsteps in the snow:

  1. Now we use the RGB curve to increase the details in the snow. I found this to be a difficult task, as it works differently than the normal curves in darktable. Even very small movements of the points can cause big changes in the image and it is not easy to get a reasonable contrast in the medium grey area. The presets show the way but it is quite tricky when you have to do something yourself. In this example I did not use the “compensate middle gray” option because it gives me more space. Now the footsteps are clearly visible:

  1. So, as far as details in the snow are concerned, we are almost there. I have found that in certain situations Haze removal module is very suitable for highlighting the details and is even much better than local contrast module. However, it tends to create the halos and you have to protect the shadows. In this case it has served well:

  1. Details are now very nice, but - as you can see in the histogram - the steps have also resulted in some shadow areas being a bit underexposed. I’ll be happy to brighten up the image a bit now without losing the details in the snow again. I found this very difficult. Both the exposure and the curves have caused the details to disappear. The best solution was to go back to Filmic RGB and move the middle grey luminance to the left and after that add a bit contrast with color balance:

After I increased the saturation with velvia, vibrance and color balance modules, the picture finally looks like I wanted it to. Now, not only the footprints are recognizable but also the fine texture, colors and diffuse shades in the snow:

I intentionally took this photo because you can clearly see how important it is - besides the dynamic range compression - to have enough space and possibilities to handle the details in shadows middle gray but also in highlight areas.

This article is much too long, in the next one I will make a few remarks.


Now few remarks:

Reuse of modules to avoid overloading the pixelpipe

In the course of my work, I have often noticed that the focus of my work changes during the course of processing. In the example above, it was important to me first that the trees (shadow area) are well illuminated. The actual processing later referred to the image areas with snow (highlights). The shadows were still considered but the priority has shifted to highlight areas. In the process of this work it is therefore sometimes necessary to go back to some modules from the beginning of the pixelpipe

But you can’t simply use a module at the beginning of the pixelpipe again, because these changes would have affected the results of all other modules that come later.

If I increased the contrast with color balance module after step 2 in the example above and want to use it again after step 6, it would not be recommended because the contrast focus was moved in between. So either i take a new instance of the module or use another one that has the same function (e.g. rgb curve).

The same applies to tone equalizer, for example. The mask for guided filter, which was made at the beginning, is no longer valid after a few steps in the pixelpipe. So it had to be readjusted, which would have changed the results of the modules that come after it. So here also applies either new instance or other modules for same job.

Linear, vs. perceptive workflow

It is still unclear which modules can (should) be combined with each other to avoid artefacts. As far as I have noticed, exposure, filmic RGB tone equalizer and rgb curve belong to the linear workflow.

You can combine them well. What about other modules? Should they be used later or not at all? In darktable blog, for example, there is a warning not to combine the base adjustments module with the new RGB workflow. Will the other modules be adapted to the RGB workflow at some point?

I ask this because besides the enormous improvements darktable 3.0 brings with it, this new factor of uncertainty has also arisen which modules to use when and the order of the modules in the pixelpipe has become more important.

This reflects a little bit my uncertainty. Contrast in color balance module is defined by contrast fulcrum. This did not give me the results I was hoping for, so I used the rgb curve in hope to better influence further increase of contrast. Since I am still lacking the confidence in handling (knowledge and experience), consider this as a child he wants to try it intuitively first. :slightly_smiling_face:

I found it much easier to use the tone mapping module and limit its effect to the darkest areas of the image than to have to deal with the not so easy masking in tone equalizer again.
The question, of course, could be, does it make sense to integrate the tone mapping module into the RGB workflow and what would be the consequences for possible further processing steps?

I watch the movies in slow motion :sunglasses:

@s7habo Due to the sheer amount of modules it might be hard to parse which ones pair well. @aurelienpierre and others have been hard at work making it more consistent.

On that step, it is quite obvious that your histogram still has some space on the right, so you could have been more aggressive on the white exposure. Also, since you later darken the snow to an actual middle grey-ish, you could have directly raised the middle grey in filmic to spare you some steps later.

Local contrast is good at emphasizing details around mid-tones. So again, putting the snow closer to middle-grey in filmic should help you there.

The contrast in color balance allows you to define a fulcrum very easily, so you can set whatever grey shade will be the reference for your contrast enhancement without having to worry about an off-balanced UI.

Again, local contrast would have been easier if the snow had been closer to middle grey. Haze removal is really grounded into physics (water droplets diffusion), it can backfire real quick if used outside its base assumptions.

That’s not true for all modules. Actually, the beauty of the scene-referred workflow is that any module doing linear operations on linear RGB can be reordered freely around other linear modules and still produce the exact same result (unless you use parametric masking).

Yeah, but that’s easily corrected by adjusting the contrast fulcrum accordingly.

That’s actually wrong. The mask of the tone equalizer is computed very early in the pipe, right after exposure module. Whatever you do later in the pipe has no effect on it.

See the answer I gave here: 3.0 How to get good results automatically?

The problem of tone mapping is it does a bilateral blur on log data, which is bound to produce halos. It’s just a bad algorithm.