Translating RGB Tone Curves from LightRoom into RawTherapee

Hey! I am fairly new to RawTherapee, but I find it a very good software. Currently, I’m trying to build a program that converts XMP (LightRoom presets) into RawTherapee Processing files (PP3). So far, my main problem is to correctly translate color adjustments from LightRoom (LR) into RawTherapee (RT). Specially the adjustments made in LR at the RGB Tone Curves.

Screenshot 2024-03-25 095758

These RGB tone curves exist in RT (I did not find them in the Colors section)? If not, is there a way I can get a similar result with the tools available in RT? Or, what is the best way to get the same result in RT?

1 Like

One thing you might run into is that if you are able to come up with a direct translation LR might use a different pipeline than RT. I don’t know but if so the same settings might then not translate as you expect…

1 Like

Yeah, I can understand this. That is why I also added the “what is the best way to get the same result in RT?” to the general question.

1 Like

You could try taking the base png from RT that can be used for LUT generation and then use it in LR and apply the preset and then save it out and use LUTs as a way to transfer your presets…

It might be simpler to get a faithful conversion???

I don’t know the lightroom stuff, but there is RGB Curves in Color.


1 Like

Ohhh! Looks like these RGB Curves are exactly the same from LR! Thank you!!! That is exactly what I was looking for!

1 Like

If the pipeline makes this less than easy I think the LUT route via a png would be easy and faithful to the preset…

1 Like

Yeah! It looks like a good idea. But I think the main problem/downside of this route, is that, in order to generate a LUT that represents the LightRoom output, you need to have access to LightRoom in the first place, to generate the PNG/JPG output, and them, generate a LUT file from that.

No need to have the “LT access” would be the best scenario in my mind.

Sounds great. :smiley: Please do keep us up to date with the progress. Are you planning on releasing it as FOSS?

Yes! I am planning to release it as an MIT Licensed Open-Source program.


Amazing! If there’s anything you need help with, you’ll find a lot of friendly and knowlegable folks on here — both as users (like me) and developers. Congratulations on taking the initiative, and welcome to the forum! :beers: :blue_heart:

1 Like

I do wish you the best of luck with this. I’ve been toying with this idea for a while. I’ve made some progress, but it turned out that there are a bunch of things fundamentally different in the approach of image manipulation between the two. Without being technical, because I don’t know all the technical details, LR tends to do a bunch of things out of the box that you wouldn’t expect; a curve straight out of the box that biases tones; a bunch of colour input profiles that you get to choose from, and each will then yield different colour; and then some sort of tonemapping as well which you can all somewhat emulate in RT, but them not being actually named in LR you’d have to figure out where to start. RGB curves are simple straight forward tools that do a very particular job and probably work the same in both programs, however there are other functions that are more open to bias, such as highlights recovery, HDR, Split Toning, that can have “fine tuning” settings that differ between implementations, so I suspect those are harder to replicate. Unfortunately, many software manufacturers, and doublessly Adobe is one of them, wish to stand out and provide results that are different from other software (for people to prefer theirs and not gravitate to other software even if they be better), and those tweaks are purposely made in a way that they are hard to figure out and replicate.

In (my) conclusion, a LUT can be produced with LR that applied in RT can give you the results of the colour manipulation a given present does, but replicating what LR’s sliders do in RT is unfortunately not something that I believe is doable. :frowning:

Yeah! I totally understand that they are totally different programs, and I am not sure if a conversion is really possible. But for now, I don’t care… I am just playing and developing this idea. Also, developing this converter is helping me to learn more about RT.

Also, the conversion does not have to be perfect. If is “good enough”… I will be satisfied.