Wednesday, 21 February 2018

post processing - How to reproduce camera noise reduction using open source software?


I have unsuccessfully tried to reproduce the camera's (Canon EOS 2000D) noise reduction algorithms using open source software when post-processing RAW (.CR2) files. Specifically, the camera's noise reduction algorithm results in an image with:



  • Practically no chroma noise


  • Some pleasant luma noise left

  • No painting-like appearance


The first approach I tried is L+A+B decomposition, applying gaussian blur to A+B channels and combining again. Unfortunately, it's a lot of manual work and severely reduces chroma resolution.


Then I found the darktable's profiled denoise module. It does not have noise profile for my EOS 2000D, but it does have a noise profile for EOS 1300D that is somewhat similar but has a different megapixel count. I copied the noise profile of EOS 1300D under the name of EOS 2000D.


The profiled denoise module of darktable removes both chroma and luma noise effectively, if using the non-local means algorithm. Removing the chroma noise is good, but removing all of luma noise may be a bit too aggressive for my taste, as I find some minor luma noise pleasant. It also creates a painting-like appearance if denoising a high-ISO image and cropping a small part of it.


Here are some examples:


First, a RAW file without denoising: RAW file without denoising


Then, a JPG created and denoised by the camera: JPG created and denoised by the camera


Then, a RAW file postprocessed by darktable profiled denoise module: profiled denoise of darktable



Overall, I like the darktable image the most. It doesn't have the annoying halos around the Christmas lights. However, the trees are slightly painting-like in the darktable image. All of the images are 1920x1200 crops from 6000x4000 original taken with ISO-6400 sensitivity.


What I would like to have is an option for denoising files in darktable in such a manner that some minor amount of luma noise is left, and there is no painting-like appearance. How to achieve this?



Answer



I have found a way to improve the denoising by switching to another open source software, RawTherapee 5.5. The denoising plug-in of RawTherapee doesn't create a painting-like appearance.


Here's the result: RawTherapee-processed RAW file


I turned on the noise reduction, used its default L-a-b color space, used the default mode (Conservative) and default gamma (1.7). Then I set luminance noise reduction to approximately 50 and detail recovery to approximately 40. The chrominance method was "automatic global" (the default). I also turned on the median filter.


The noise reduction of RawTherapee does exactly what I want, i.e. removes the most annoying chroma noise automatically and lets me adjust the level of removed luma noise. As removing the luma noise removes details from the image, there's the detail recovery slider.


The problem with RawTherapee is that on my Windows 10 system with GIMP 2.10.8, RawTherapee prevents GIMP from starting due to a buggy plug-in! I removed the GIMP plug-in manually by deleting the directory containing the plug-in file, allowing GIMP to start normally. Then I use RawTherapee 5.5 by opening the software separately and exporting to 16-bit TIFF files. The TIFF format maintains the EXIF data, so if I create JPG using GIMP, EXIF data will be in the JPG. RawTherapee also allows directly storing to JPG, and supports cropping and resizing so it's possible to use it without GIMP.


The feature I miss from Darktable is the option to use profiled denoising, i.e. having an automatically generated preset for each ISO of each camera to contain the profiled noise information. However, you can create your own ISO presets manually and adjust the strength of noise reduction for each ISO speed of your camera.


No comments:

Post a Comment

Why is the front element of a telephoto lens larger than a wide angle lens?

A wide angle lens has a wide angle of view, therefore it would make sense that the front of the lens would also be wide. A telephoto lens ha...