Right. Just to be remembered would be the color space and doing this not after the tonemapper - in screne referred space. The difficulties come with “how to avoid artifacts at steep gradients”. You might want to inspect the color equalizer code, to make that working without such artifacts was pretty tricky for sharp changes of luminance. There i used an additional sigmoid gradient filter …
It might be easier if we sort out the biggest UI issues before There is already a PR about this …
Also - you chose a very tricky beast of a module (meaning the maths here not responses from people not having read the code …)
Some ideas what could be done there being more likely to be done within time limits:
You could try to find a way to calculate a better curve from the nodes. (Not knowing if that would lead to better results though and it would require a version bump to keep old edits …)
You might add a button for your automatic masking stuff
You’re right, but not everyone knows how to compile a customized version of Darktable.
I’m wondering if we couldn’t create a “Legacy” flag for modules that are still functional, like this “zone” module, so that the user can activate them in the settings.
Personally, I’ve made them into styles and sometimes use them for slight corrections after the tone mapper.
it’s an unresolvable conflict between those moaning about too many modules doing the same stuff and no one knows, whats recommended and those who wants to use even error prone historic modules …
There’s a good reason for deprecating stuff: the code isn’t maintained an no one will take care of them during development of darktable. So from an maintaining aspect it’s worth to keep that stuff for users who exactly knows what they are doing. Thats not the usual sort of users who saw such stuff in old darktable videos and now want’s to have that back …
You’re right, and I do appreciate what TE is doing to retain local contrast. Perhaps it’s the best we can get, but it seems the Color Equalizer offers more fine control while still producing nice gradients. Is that just because we’re working with colour and not tonal variations?
If a guided filter was added to Zone System or even RGB Curves, would we lose fine control and just be back at a different version of Tone Equalizer? I’ve no idea, just asking questions… Thanks!
Can someone explain pls what it means to add a guided filter to RGB Curves, using this example -
Suppose you have a black & white image comprising 8 equally-sized vertical strips. Each strip is of uniform tone. They range from black on the left to white on the right, 8 discrete tones. If I use RGB Curves to add an S-curve to increase contrast, I can see what happens. And there will still be sharp boundaries either side of each strip. Suppose I repeat the exercise with RGB Curves + guided filter. What will be different?
I’m no expert, and I’m probably grossly over-simplifying, but I think the guided filter helps to preserve local contrast when you are compressing the tonal range. Even in Tone Equalizer, you don’t really need the guided filter when you are increasing contrast. But it does a great job when you are compressing the highlights and shadows.
I assume it would do a similar thing if one was added to RGB Curves, but as I said, I’m no expert. I’ve just heard it being floated as an option.
You have those 8 zones from left to right. But also suppose, the inside of these zones is not uniform, but there are fine details inside each of them that you don’t want to loose.
Your objective is to do something that lowers the contrast: raise shadows, lower highlights. In the opposite case you are better of without a guided filter.
The naive approach: You make dark pixels brighter and bright pixels darker. This will probably be fine at the borders of your 8 zones, but you will very quickly notice that the fine detail within the zones starts to look bad because of lost local contrast.
Using a blur-filter: You try to preserve local contrast by using a blur mask, trying to apply almost the same modification to pixels that are close together. This will preserve your fine details, but it can cause artifacts around your hard edges. For example there could be a very dark border on the dark side of your edge, because these pixels are close to bright pixels and were therefore darkened.
The guided filter is the best of both worlds. You have a threshold to tell it, what a hard edge is. It will blur areas with small details (so they are treated the same) but preserve the hard edges (so both sides of the edge are treated differently).
So it is correct that you would loose some control over the affected areas of the image, when applying a guided filter to a tone curve or a zone system interface. The region you affect would be smoothed, similar to feathering, as long as there is no hard edge.