Darktable vs Rawtherapee high ISO noise reduction

J van W

Active member
Messages
74
Reaction score
20
Location
CA, US
I have been wanting to try Raw for a while, because I have severely limited funds (and I want to buy my first ILC this year ;) ) I sure wasn't going to spend $100 on Lightroom or $130 on DxO Optics Pro. So I had 2 choices basically: try a free (and open source) raw converter or use the Apple Photos app with the 10 euro DxO raw extension. I decided against the Photos app because of the interface and reports of people having it fail on them (including a DPR member).

So free and open source software it was. Of course as a former Linux user I had already heard of applications like Darktable, Rawtherapee, UFRAW and dcraw, but never actually used them. Because I wanted an all-in-one solution for managing and processing my pictures with a nice user interface and not several programs stringed together, it became Darktable vs Rawtherapee. I had already read that these two were pretty close to each other in terms of capability. So I installed both Rawtherapee (4.2.521, the latest version for OS X) and Darktable (2.0.1). Because both had similar capability, one of the deciding factors would be their noise reduction abilities, because my XZ-1's sensor is really starting to show its age when cranking up the ISO value. Because I didn't have a low light/high ISO raw image yet, I decided to create my very own DPR-style test shots in low light (a.k.a. with partially closed curtains ;) ). They can be seen at the end of this post. At first the Rawtherapee user interface was a bit intimidating, but I soon got the hang of it. And after a bit of reading on Rawpedia, I was able to process the two test shots easily. From the moment I understood Darktable's user interface on, I really wanted it to win. Darktable's user interface is a lot cleaner to me and I really like its managing capabilities and all the modules. Another nice touch was that whereas I had to manually choose the amount of lens correction in Rawtherapee, Darktable automatically detected my XZ-1 and I was able to apply lens correction with just 1 click! Pretty impressive!

So you probably understand that I did everthing I could to try to make Darktable's result match Rawtherapee's JPEG. But despite my best efforts the Darktable's JPEG of my first test shot contains A LOT more noise, especially chrominance, than the Rawtherapee one. Now I am not the type of post processor who expects images completely devoid of any noise, in fact I don't mind a bit of luminance noise if I get more detail in return, but I'm sure you understand that I don't want to see obvious chroma noise in my images. I got the best result in Darktable with the profiled denoise module in wavelets mode, amazingly it had a profile for my XZ-1 again! Who would've thought my modest XZ-1 would be one of the 100 profiled cameras! :)

Of course these are the first two raw images I have ever converted, so perhaps someone else can achieve better results? I will include links to the original ORFs and to both the JPEGs of Darktable and Rawtherapee and their sidecar files (.pp3 and .xmp) in case they might be useful.

I'm still torn between these great programs, as while Darktable may have lost by quite a high margin at high ISO noise reduction, the question is how many shots I actually take that have so much noise, plus I will be upgrading to a M4/3 camera in the near future which will have significantly lower noise levels. ;) And Darktable's user interface, its awesome catalog of modules and great managing abilities remain very tempting. :)

Originals (ORF Raw files):

http://jurrevw.nl/images/testshot1.ORF

http://jurrevw.nl/images/testshot2.ORF

Rawtherapee JPEGs:

http://jurrevw.nl/images/testshot1RT.jpg

http://jurrevw.nl/images/testshot2RT.jpg

Darktable JPEGs:

http://jurrevw.nl/images/testshot1DT.jpg

http://jurrevw.nl/images/testshot2DT.jpg

Darktable sidecar files:

http://jurrevw.nl/images/testshot1DT.xmp

http://jurrevw.nl/images/testshot2DT.xmp

Rawtherapee sidecar files:

http://jurrevw.nl/images/testshot1RT.pp3

http://jurrevw.nl/images/testshot2RT.pp3

http://jurrevw.nl/images/testshot1RT.out.pp3

http://jurrevw.nl/images/testshot2RT.out.pp3



I hope this tiny comparison is useful to someone :)

The processed JPEG from Rawtherapee of my first test shot (@ ISO 1600 with a 1/1.7 inch compact)

The processed JPEG from Rawtherapee of my first test shot (@ ISO 1600 with a 1/1.7 inch compact)

The processed JPEG from Rawtherapee of my second test shot (also @ ISO 1600)

The processed JPEG from Rawtherapee of my second test shot (also @ ISO 1600)
 
At last I chose Darktable this week, because of the great interface and the profiles for my XZ-1. I just shot another few test shots, this time in RAW+JPG to compare the Darktable JPEGs with the OOC JPEGs from my Olympus. I must say that I was a bit disappointed by the results, I was hoping to get some extra detail and less noise by shooting RAW, especially as my XZ-1 is quite dated. Unfortunately the opposite appears to be true when using Darktable for noise reduction:

Darktable JPEG, profiled denoise with the XZ-1 profile for the used ISO value, 100% quality chosen during export

Darktable JPEG, profiled denoise with the XZ-1 profile for the used ISO value, 100% quality chosen during export

Olympus XZ-1 OOC JPEG

Olympus XZ-1 OOC JPEG

When looking at the beach foot of the sea gull statue at 1:1, one can clearly see that the Olympus OOC JPEG has both more detail and less noise.

I will continue using Darktable as I really like its profiled lens correction feature and its great interface, but maybe I should consider a dedicated noise reduction application to complement Darktable. This would of course impair the workflow a bit (especially as you don't normally export JPEGs when using Darktable, only when needed), but the noise reduction program could still be useful when uploading JPEGs to stock photography sites for example.https://ni.neatvideo.com/is very attractive, it was recommended by a DPR member (can't remember where ;) ) and it has the advantage of being cross platform (that's being available for OS X, Linux and Windows, not just Windows and OS X).

P.S. moderators: in hindsight it might have been wiser to post this in the retouching section, would you mind moving it here? :)

EDIT:

I just downloaded the demo version of Neat Image 7 for OS X and tested it with the above test image, first doing everything in Darktable except noise reduction, exporting as an 8-bit TIFF and opening it in Neat Image, then saving as a JPEG. The result can be found below :) :

First processed with Darktable, then exported as TIFF and denoised with Neat Image 7 before saving as a JPEG

First processed with Darktable, then exported as TIFF and denoised with Neat Image 7 before saving as a JPEG

I must say it has done a very impressive job, the Neat Image 7 noise reduction seems to at least match, possibly even slightly exceed the noise reduction of Olympus' in-camera JPEG processing software!

I am certainly considering purchasing a Home license!
 
Last edited:
Very interesting!
 
A bit old, but I just stumbled across this.

My experience has been the same. I have been unable to achieve good high ISO NR with Darktable, but it's easy with RawTherapee (this is with the current git repository for both, on Linux). With Darktable, whatever I do I wind up with residual noise, artifacts, over-smoothing, or all of the above. With RawTherapee I can get very clean, crisp shots with no chroma noise and very little residual luma noise. And I too would prefer to use Darktable.

Original

Darktable

RawTherapee

I've discussed this on the Darktable user list and received a lot of suggestions, none of which were very satisfactory or approached what I can do with very little work on RawTherapee. What's more, I can get better results from JPEGs using RawTherapee than I can with RAW using Darktable.

I shoot a lot of high ISO (4000-12800 on my Canon 7DmkII; I haven't used 16000 - yet), so this issue is very important to me. And most of these are JPEGs; shooting 2500 frames at a basketball game, RAW would simply not be practical (I may only use about 200 or so, but you need to take a lot of shots, shooting sports).

This is unfortunate; I really like Darktable overall, and it's much more stable than RawTherapee, which crashes all too often. So what's likely to happen is that I'll use Darktable for low ISO work, but RawTherapee when I need good NR.
 
A bit old, but I just stumbled across this.

My experience has been the same. I have been unable to achieve good high ISO NR with Darktable, but it's easy with RawTherapee (this is with the current git repository for both, on Linux). With Darktable, whatever I do I wind up with residual noise, artifacts, over-smoothing, or all of the above. With RawTherapee I can get very clean, crisp shots with no chroma noise and very little residual luma noise. And I too would prefer to use Darktable.

Original

Darktable

RawTherapee

I've discussed this on the Darktable user list and received a lot of suggestions, none of which were very satisfactory or approached what I can do with very little work on RawTherapee. What's more, I can get better results from JPEGs using RawTherapee than I can with RAW using Darktable.

I shoot a lot of high ISO (4000-12800 on my Canon 7DmkII; I haven't used 16000 - yet), so this issue is very important to me. And most of these are JPEGs; shooting 2500 frames at a basketball game, RAW would simply not be practical (I may only use about 200 or so, but you need to take a lot of shots, shooting sports).

This is unfortunate; I really like Darktable overall, and it's much more stable than RawTherapee, which crashes all too often. So what's likely to happen is that I'll use Darktable for low ISO work, but RawTherapee when I need good NR.
Earlier this year I tried to switch to Darktable/GIMP/Hugin and Raw Therapee (in Linux), from Lightroom and PS Elements (in OS10). I too really liked Darktable (and Linux), quite a lot actually once I got familiar with it (them), but Darktable’s noise reduction is definitely a weak point.

Raw Therapee’s NR is excellent but it got to be too cumbersome going back and forth (DT-RT-DT) whenever I needed a little NR tweak so I just went back to LR and upgraded from LR4 to LR6. Have to say that LR6 is hard to beat for my purposes.
 
A bit old, but I just stumbled across this.

My experience has been the same. I have been unable to achieve good high ISO NR with Darktable, but it's easy with RawTherapee (this is with the current git repository for both, on Linux). With Darktable, whatever I do I wind up with residual noise, artifacts, over-smoothing, or all of the above. With RawTherapee I can get very clean, crisp shots with no chroma noise and very little residual luma noise. And I too would prefer to use Darktable.

Original

Darktable

RawTherapee

I've discussed this on the Darktable user list and received a lot of suggestions, none of which were very satisfactory or approached what I can do with very little work on RawTherapee. What's more, I can get better results from JPEGs using RawTherapee than I can with RAW using Darktable.

I shoot a lot of high ISO (4000-12800 on my Canon 7DmkII; I haven't used 16000 - yet), so this issue is very important to me. And most of these are JPEGs; shooting 2500 frames at a basketball game, RAW would simply not be practical (I may only use about 200 or so, but you need to take a lot of shots, shooting sports).

This is unfortunate; I really like Darktable overall, and it's much more stable than RawTherapee, which crashes all too often.
First of all, sorry for the late response, I actually had read your post not too long after you posted it (got a notification), but unfortunately did not get around to writing a proper reply yet. Thank you for your reply, it has provided another useful data point, especially considering that you have another quite different situation (new high-end large sensor camera at extremely high ISO vs my dated small sensor at reasonably high ISO). Your images do appear to show the same thing as my test shots IMHO, namely that Darktable while leaving significantly more noise, also leaves a bit more detail, creating a marginally sharper image. Of course that tiny bit more detail is most likely insignificant for most uses.

I must say that I cannot remember RawTherapee crashing on me, perhaps this has something to do with the current git version, or dare I say it, your Linux installation/hardware combination? If RawTherapee is stable I might still consider switching to it some day. Although I discovered this week that Darktable now also has the AMaZE demosaicing algorithm that was RawTherapee's crown jewel for a while. AMaZE retains slightly more detail in low noise images than PPG for example. So that is one less reason for me to switch. A strong reason against switching to RawTherapee is that Darktable has nice one-click lens correction (including distortion) due its use of the lensfun database which contains lens profiles for distortion and vignetting. This worked nicely with the fixed lens of my XZ-1 and looking at mil-olympus.xml in the lensfun GitHub repository it will probably (if Darktable uses a new enough version of the lensfun database...) also work with my new lens (the Olympus 12-50 mm f3.5-6.3 EZ).
Earlier this year I tried to switch to Darktable/GIMP/Hugin and Raw Therapee (in Linux), from Lightroom and PS Elements (in OS10). I too really liked Darktable (and Linux), quite a lot actually once I got familiar with it (them), but Darktable’s noise reduction is definitely a weak point.

Raw Therapee’s NR is excellent but it got to be too cumbersome going back and forth (DT-RT-DT) whenever I needed a little NR tweak so I just went back to LR and upgraded from LR4 to LR6. Have to say that LR6 is hard to beat for my purposes.
Glad more people are considering DT and RT! :-) And I agree, Darktable is great once you 'get' the UI. And again Darktable's NR is indeed its weak point. It is always sad to see people revert to the big boys after trying out alternatives though... :-( But at least you tried to make it work for you, AFAIK Darktable and RawTherapee are still in active development, so who knows maybe they will improve hugely in the future! I do not have the temptation of switching back to LR though: I have never used it and will not use it in the near future due to budget constraints (and that new pricing scheme that they have got has only strengthened that position ;-) ).
[/QUOTE]
 
The best way to reduce noise in the first place is simply to not underexpose when shooting. Find out the real white point clipping value for your camera (your camera's histogram is usually about a stop and a half under what the sensor can actually record as non-specular white value) and expose for that. That way you make the fullest use of the camera's dynamic range and the data recorded is the denser high bit range.
 
A bit old, but I just stumbled across this.

My experience has been the same. I have been unable to achieve good high ISO NR with Darktable, but it's easy with RawTherapee (this is with the current git repository for both, on Linux). With Darktable, whatever I do I wind up with residual noise, artifacts, over-smoothing, or all of the above. With RawTherapee I can get very clean, crisp shots with no chroma noise and very little residual luma noise. And I too would prefer to use Darktable.

Original

Darktable

RawTherapee

I've discussed this on the Darktable user list and received a lot of suggestions, none of which were very satisfactory or approached what I can do with very little work on RawTherapee. What's more, I can get better results from JPEGs using RawTherapee than I can with RAW using Darktable.

I shoot a lot of high ISO (4000-12800 on my Canon 7DmkII; I haven't used 16000 - yet), so this issue is very important to me. And most of these are JPEGs; shooting 2500 frames at a basketball game, RAW would simply not be practical (I may only use about 200 or so, but you need to take a lot of shots, shooting sports).

This is unfortunate; I really like Darktable overall, and it's much more stable than RawTherapee, which crashes all too often.
First of all, sorry for the late response, I actually had read your post not too long after you posted it (got a notification), but unfortunately did not get around to writing a proper reply yet. Thank you for your reply, it has provided another useful data point, especially considering that you have another quite different situation (new high-end large sensor camera at extremely high ISO vs my dated small sensor at reasonably high ISO). Your images do appear to show the same thing as my test shots IMHO, namely that Darktable while leaving significantly more noise, also leaves a bit more detail, creating a marginally sharper image. Of course that tiny bit more detail is most likely insignificant for most uses.
I had a very difficult time determining whether Darktable left more detail or whether that apparent sharpness was actually noise. The noise, of course, was another matter.
I must say that I cannot remember RawTherapee crashing on me, perhaps this has something to do with the current git version, or dare I say it, your Linux installation/hardware combination? If RawTherapee is stable I might still consider switching to it some day. Although I discovered this week that Darktable now also has the AMaZE demosaicing algorithm that was RawTherapee's crown jewel for a while. AMaZE retains slightly more detail in low noise images than PPG for example. So that is one less reason for me to switch. A strong reason against switching to RawTherapee is that Darktable has nice one-click lens correction (including distortion) due its use of the lensfun database which contains lens profiles for distortion and vignetting. This worked nicely with the fixed lens of my XZ-1 and looking at mil-olympus.xml in the lensfun GitHub repository it will probably (if Darktable uses a new enough version of the lensfun database...) also work with my new lens (the Olympus 12-50 mm f3.5-6.3 EZ).
The crash seems to be specifically when cropping, but I haven't otherwise found a clear enough pattern. The issue, whatever it is, has been around for over a year. I've never lost work as a result, but it's annoying. I don't think it's related to my installation or hardware; I haven't had other things do this on me. The exact messages I get vary, but it suggests memory corrruption (sometimes it just seg faults, sometimes it gives error messages from the memory allocator that differ from run to run). I have not succeeded in convincing it to run under valgrind. We'll see whether my recent upgrade to openSUSE 42.2 and use of gcc6 helps.

Cropping's important to me because I shoot a lot of basketball and football games and need to process a lot of photos quickly. I'm processing JPEGs in that situation, of course, but even so the RT noise processing is very good.
So what's likely to happen is that I'll use Darktable for low ISO work, but RawTherapee when I need good NR.
You could also consider using my approach, as described in one of my original posts, namely export to TIFF (or merely save and then just open in another program in your case) and apply NR in a dedicated program, like NeatImage (which is affordable and cross-platform).
Linux, even. That's unusual. I try to use FOSS software only (preference...), and once you have to use multiple tools, it gets a bit painful.

I haven't had a lot of luck thus far trying to convince the darktable folks to look into the NR that rawtherapee uses.
 
A bit old, but I just stumbled across this.

My experience has been the same. I have been unable to achieve good high ISO NR with Darktable, but it's easy with RawTherapee (this is with the current git repository for both, on Linux). With Darktable, whatever I do I wind up with residual noise, artifacts, over-smoothing, or all of the above. With RawTherapee I can get very clean, crisp shots with no chroma noise and very little residual luma noise. And I too would prefer to use Darktable.

Original

Darktable

RawTherapee
The RawTherapee one looks very much like Darktable's denoise (non-local means) with all sliders cranked up to the max.
 
The best way to reduce noise in the first place is simply to not underexpose when shooting. Find out the real white point clipping value for your camera (your camera's histogram is usually about a stop and a half under what the sensor can actually record as non-specular white value) and expose for that. That way you make the fullest use of the camera's dynamic range and the data recorded is the denser high bit range.
 

Keyboard shortcuts

Back
Top