ART feature requests and discussion

Thanks, I can now perform the above procedure properly

I also see a feature ‘contrast curve’ near the masks (see figure), but this doesn’t seem to do much. This seems like the action I was looking for

The contrast curve controls the contrast of the mask, not of the picture…


At this point, I just use and enjoy ART for it gives me everything I need from a raw processing software, and some more.


Might be interesting to be able to see this curve somewhere in the GUI when/after you are playing with the sliders…

Hello Everyone,
A small feature request (to save time ?)
In the crop menu, the default guide type is “frame”. Wouldn’t having the “Rules of thirds” as a default proposition be more logic? I tend to use it quite a repetitive way for studio and packshot shooting series…

you can tweak your defaults with dynamic profiles. Just generate a profile with crop disabled but guide set to “rule of thirds”, and then use the dynamic profile editor to auto apply it to all your images.
Defaults are just defaults – impossible to make everybody happy with them. But dynamic profiles let you override them easily (IMHO, of course).


Hi all,
the Graduated Filter has a button to display a widget that make easy to adjust the filter.
I think that the Vignette Filter also should have a similar widget.
What do you think?

Thank you for the advice, I definitely need to spend more time on dynamic profiles

You are certainly right, I was just too lazy to implement this… :frowning:

1 Like

This is unfair in regard to Vignette Filter… If so, I think you should remove the widget from Graduated Filter… :laughing:

1 Like

Hi ! First I have to say that when you start to be confident with ART, it’s really difficult to use Rawtherapee again, too many things/functions everywhere that seem to be useless. No offense to the developers who work really hard, but ART makes things simple.

I have few requests though. Especially about the masks.

  1. The tool is great, but I’d like to have them for other tools, especially all tools in “detail”. Because sometimes denoise chrominance is needed somewhere but not everywhere. Same thing for luminance for example. Tools work with different methods and have settings. The problem is that if I want to use one method for the flower and another for the hat, it’s not possible. So having the masking system could help.
  2. In a tool that has mask, you can have many masks. For each mask you can choose 4 types, but if you use 2 different types in the same time, the engine works weirdly sometimes (hard to explain). So maybe, when we click on a type, the others are automatically disabled ?
  3. For a tool you can have a mask or more. It would be great to make Boolean operations, like we can do inside types (area masks for example). So I could have a general DeltaE mask for the sky, and a hole made by an Area Mask for a balloon. But maybe I missed something.
  4. The Brush mask is great. But it’s basically a cloud of points. It would be great that instead the user draws a curve/straight line, and the line has a thickness that makes the shape of the mask.

Also, I didn’t use LUT that much (first time, to be honest), but I think that it could be interesting to be able to use 3D-Lut (.cube). Not a big deal anyway.

It’s not a wanted feature because I don’t need it that much, but do I miss something if I say that there’s no way to change the gamma by a curve ? I’d like to, to make a Hybrid Log-Gamma for example.

Many many thanks for your hard work anyway !

Oh neat, I put a HGL curve in my hack software sometime ago, but have never used it. It’s the HEVC version of the ARIB STD-B67 algorithm, as defined in Hybrid log–gamma - Wikipedia.

You can approximate it with a regular control point curve with these coordinates, in 0-255 space:


Use these numbers as x,y pairs. ART may have a curve format for loading such, should’t be too hard to translate these numbers if so…

Many thanks for this. I tried it, but it didn’t work. Too overexposed. I guess that I need a dedicated 3d-lut for this task. sigh

I think that’s what the loggamma curve is supposed to do. The ARIB standard is for a curve to lift raw video for further processing, so it is to be followed by a LUT that produces the desired look. Video folk, feel free to correct or clarify…

This already exists but perhaps not stated explicitly. As far as I can see, the different masking tools within a mask operate where they intersect. So if you wanted to paint a sky with a delta E mask but leave out the balloon, select your sky with delta E, add a rectangle shape that covers the sky, then add the shape of the balloon to the area mask in subtract mode.
Additionally with the brushes you have the choice of either adding to the selection or using the parts where they intersect.
So you can do most combinations of things.


that’s understandable, but currently not planned. In part this is due to some architectural limitations (which would need quite a bit of refactoring), but in part this is also because the tools in the local tab can already emulate pretty well(*) those that are in the detail group. For denoising, you can use the “smoothing” tool quite effectively.

(*) IMHO, but I’m willing to substantiate my claims if you provide some sample image.

I’m afraid I don’t understand what you mean, can you be more specific?

Agreed, it would be handy. But it would also complicate the UI (most importantly) and the logic (less important) significantly. Masks operate in “AND” mode, except for the brush mask in “ADD” mode (which in a Boolean algebra is “OR”). Negation (i.e. “invert”) happens at the top-level. If you want OR, you can use different regions with the same settings and different (non-overlapping) masks. Certainly not as convenient as Boolean operations, but at least doable

There are pros and cons to this. The current way is simpler to implement and more efficient. Note that there is some notion of “strokes” though, i.e. all points that share the same settings are part of the same “brush stroke”; this is used to control how overlapping strokes behave when you have opacity <100%

Yes, this is something I might steal from darktable. In the meantime, you should be able to use imagemagick to convert from cube to haldclut

I don’t really know what Hybrid Log-Gamma is – I need to look this up – but the “power” sliders in the color correction module are exactly gamma correction. Does this help?

@agriggio Looks, like I tried to answer the post at the same time. I delete my post if it just adds confusion.

No need to – I think it was useful information!

@spidermonkey : Thanks ! My answer is below.

@agriggio : Many thanks for your patience. I’ll try to clarify, and sorry for my bad english.

  • My examples were bad (denoise) but I was talking about all tools in ‘detail’. And I can’t bring an example for now, but I tried a month ago and the tool in local tab didn’t give the same result, but I wasn’t working on photos (*).
  • Correct me if I’m wrong, but the program works like this : Tools are in fact layers where operations are performed. 1st is exposure, 2nd is tone equalizer and so on. The order can’t be changed (with few exceptions in RawTherapee). The masks, basically, is a system that allows to create instances of the tool/layer. Am I right ? I was thinking about this, and except for tools that can’t accept masks (because it needs all picture to work, or it’s a tool like ‘crop’), a manager mask like in darktable would be handful. ART would become very versatile and more powerful than many RAW programs. But I know, huge work with a lot of refactoring. It was just a thought.

Imagine you use DeltaE and in the same time Area mask is also enabled. Basically you start to have bugs : mask is inverted, null, and so on. You can’t use more than one ‘mask type’ for each mask, so automatically disable other types when you choose one would be handful.

  • OK for Boolean operations. I’ll try what you (and @spidermonkey ) say.

(*) : So about my use of ART. I don’t use it like everyone here only for photos. It’s a great photoshop-like tool when you work only on colors. Gimp does things, but I don’t like the way it handles color manipulation. ART is designed to handle 32 bits float photos/pictures so I don’t have to worry about the final quality.

HDR is something that is becoming used by “everyone”, and I think that there would be more tools dedicated to it. Tool for sdr to hdr, hdr2sdr, how the photo is shown on a hdr device (that’s why I talked about hybrid log-gamma) and so on.
By the way, I did transform my .cube in a HaldLUT, but the result was bad, so now I do this task with a .cube in Gimp before working with ART.

More importantly, I do think that ‘film emulation’ should be an operation processed in the very beginning of the process, at first or just after ‘exposition’, at least as an option. 3D-Lut (about .cube, I read that it’s more precise than HaldLUT) is a really cheap and effective way to change drastically the tone of a photo/picture, so imho it’s a feature that could please users a lot (like me :smile: ). You have thousand .cube available now (even free or cheap).

But all these thoughts are just thoughts. I don’t talk as a photograph here, but as someone who thinks that ART is a great program for manipulating colors/exposition/tone, so maybe photographs don’t care that much about HDR or my other suggestions. :sweat_smile:


well, it’s hard to say without examples. But my claim is that you can get a long way with the local tools:

  • for sharpening, you can use texture boost with low amount and low detail scale

  • for denoising, you can use smoothing

  • for defringing, you can also use smoothing in chrominance mode, with a suitable contrast threshold mask

Sorry, I still don’t understand. As far as I know, masks work as advertised. If you have evidence of the contrary, could you please submit a bug report? Thanks!