Skip to main content

Processing a High Dynamic Range raw image with RawTherapee

Editing High contrast images is hard because you have at the same time to decrease the highlights, increase the dark areas, and at the same time keep the natual colours. Although not always possible, shooting RAW always helps. The RawTherapee offers a plethora of tools to "fix" your images. To illustrate the tools available in RawTherapee, we will edit a picture taken by Ivan Sagalaev and released under CC license in the Play Raw competition of the pixls.us forum here.

Image after importing to RawTherapee.
Image after importing to RawTherapee.

Step 1: Preparation. First we fix the distortion (if exists) in the Transform tab. Before start editing we always try to fix possible distortions of the image.


Initial Histogram of the picture.



Step 2: Editing the light. 

The second step is to press the "Auto Levels" button in the Exposure tab. This will light the dark places of the picture, but it is not enough.The sky now is it much lighter than before and the colors washed out.

Exposure settings in RawTherapee of the image to recover the dark areas.
Exposure settings in RawTherapee of the image to recover the dark areas.

First we have to fix the highlight of the sky. We increase the exposure compensation and at the same time the Highlight compression to avoid possible over exposure.

Second, we can decrease slightly the Highlights in the Tone curve.  Moreover, we can also increase slightly the Contrast in the same part of the settings.

The third step is to apply negative graduated filter. By selecting negative strength we actually add more light. We set the angle to -174 to highlight only the dark areas.

Negative Graduated Filter settings of RawTherapee to insert more light in the picture.
Negative Graduated Filter to insert more light in the picture.

Next we apply Tone Mapping to slightly improve the dark areas. We only need small amount (0.01) of strength to make the picture to look natural.

In the Detail tab, we enable "Impulse Noise Reduction", "Noise Reduction", and "Contrast by Detail Levels" to increase local contrast. In addition, we can enable the Defringe to improve slightly the color accuracy in the edged of the objects.

Step 4: Editing color. 

Vibrance settings of RawTherapee.
Vibrance settings of RawTherapee.

Finally, in the Colour tab we set the "Vibrance" to 20 to improve the liveness of the color. Additionally, we can decrease the Blue channel in the "Channel Mixer" area to decrease the impact of the blue color in the picture and make the picture more warm.

Decrease the blue channel in the settings for the color.
Decrease the blue channel in the settings for the color.


As a bonus we can increase even more the contrast with the L*a*b* Adjustments and make the blues darker. Thsi is not always welcome from all the people, but I liked it anyway.


The final image after the editing.
The final image after the editing.

Popular posts from this blog

Processing Milky Way in RawTherapee

This text is an analysis of a video I did some months ago how to process photos of our Milky Way in RawTherapee. You can find the picture here . The photo was taken by wiegemalt. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Editing: Step 1: Fixing lighting The first thing someone notices when opening the picture is the extreme noise due to high ISO used (1600 - check the picture on the right). The first thought is to de-noise the picture, however, if you do that you are going to loose the details of the night sky. The main reason for the high noise is the additional exposure Rawtherapee adds when the 'Auto' button is pressed. In particular, the RT adds +2.4 EV to equalize the picture. This is Wrong! What we want is to keep the noise down and at the same time bring the stars up. That's why we are going to play with the Tone Curve of the RT. To adjust the light properly we increase the cont

Static linking with gcc and g++

In this tutorial, we will explain what the static linking is, how this affect the size of final binary, and why statically linking with g++ sometimes is pain. By definition, a statically compiled binary is a group of programmer ‘s routines, external functions, and variables which are packed into the final binary executable. The compiler or the linker produces the final object and embeds all the functions and variables and the linking phase.  There are two reasons of using dynamic linking and shared libraries: 1) Avoid creating a huge binary, if all the programs use a standard set of libraries why not having the operating system providing to them 2) Compatibility on operating system and machine dependant characteristics: sometimes the libraries must be implemented based on the architecture or the operating system and using dynamic linking is an easy way to avoid this catch. On the other hand, static linking is the ideal way of distributing one software product, paying

Homemade NAS after two and half years

Few years ago, I created a NAS system using my old PC. The old pc is powerful enough to do the basic NAS operation except real time transcoding of 4K or more than one 1080 streams.  The setup was setup as follows: 1 SSD 128 GB for boot device 2x 4 TBs for the main storage configured as RAID 1 The hard disks were from different manufacturers (WD red plus and Segate) to avoid catastrophic situations: disks are part of a bad batch and you will have a second failed disk during the build of the RAID array. Here is a list of my mistakes: My first mistake was CentOS. I wanted a stable machine without surprises, unexpected behavior, as much less bugs affecting my setup. I had three free/open source options:  Open Media Vault: Debian based Linux with many configuration options. The main downside is that you don't have support for ZFS and you have to very often use the command line to fix things. Moreover, there are a plethora of open issues/bugs that can make your life harder than expected