darktable page lede image
darktable page lede image

Color group

3.4.3. Color group

Modules for working specifically on your image's color are found here in the color group. Velvia

The velvia module enhances image saturation. Its effect is tailored to increase saturation less on lower saturated pixels than on highly saturated pixels.

This slider controls the strength of the effect.

mid-tones bias

Velvia can reduce its effect for mid-tones to avoid unnatural skin tones. The mid-tones bias slider controls this selectivity; reducing its value reduces mid-tone protection and makes the overall velvia effect stronger. Channel mixer

This module is a powerful tool to manage channels. It accepts red, green and blue channels as an input. As output it provides red, green, blue, gray, hue, saturation and lightness channels.

First select your output channel and then set the amount each input channel feeds into that output channel.


For skin tones the blue channel tends to represent detail, with red tending to also have smoother tones than green. Therefore tonal rendering is controlled by how we blend of the three input channels.
Here a monochrome portrait is produced by simply selecting the grey channel as output. A smooth skin tone is achieved by reducing the blue channels input and also emphasizing the red channels input relative to green. An RGB mix of 0.9, 0.3, -0.3 was used together with an 0.1 EV exposure increase to lighten the image.
In this example an RGB mix of 0.4, 0.75, -0.15 uses more green than red, bringing back some features. We still reduce the blue channel in the mix to de-emphasize unwanted skin texture.

Table of mixing values for some b/w films

Classic black and white films have different characteristic color responses. Select gray as output mixing channel, and try out the values suggested below for your favorite film type.

Film Type Red Green Blue
AGFA 200X 0.18 0.41 0.41
Agfapan 25 0.25 0.39 0.36
Agfapan 100 0.21 0.40 0.39
Agfapan 400 0.20 0.41 0.39
Ilford Delta 100 0.21 0.42 0.37
Ilford Delta 400 0.22 0.42 0.36
Ilford Delta 3200 0.31 0.36 0.33
Ilford FP4 0.28 0.41 0.31
Ilford HP5 0.23 0.37 0.40
Ilford Pan F 0.33 0.36 0.31
Ilford SFX 0.36 0.31 0.33
Ilford XP2 Super 0.21 0.42 0.37
Kodak T-Max 100 0.24 0.37 0.39
Kodak T-Max 400 0.27 0.36 0.37
Kodak Tri-X 400 0.25 0.35 0.40
Normal Contrast 0.43 0.33 0.30
High Contrast 0.40 0.34 0.60
Generic B/W 0.24 0.68 0.08 Output color profile


This module manages the output profiles for export as well as the rendering intent to be used when mapping between the different color spaces.

darktable comes with pre-defined profiles sRGB, AdobeRGB, XYZ and linear RGB but you can provide additional profiles by placing these in $DARKTABLE/share/darktable/color/out and $HOME/.config/darktable/color/out. $DARKTABLE is used here to represent your chosen darktable installation directory and $HOME your home directory.


You can define the output color profile in two different places, either in this module, or in the export panel in lighttable mode (see Section 2.3.12, “Export selected”).

output intent

Sets the rendering intent for output/export. For more details see Section, “Rendering intent”).

Only rendering with LittleCMS2 gives you a choice of rendering intent. The option is hidden, if darktable's internal rendering routines are used. Rendering with LittleCMS2 is activated in the preferences dialog (see Section 8.2, “Core options”).

output profile

Sets the color profile for output/export, causing darktable to render colors with this profile. darktable embeds the profile data into the output file if supported by the file format – this allows other applications reading the file to correctly interpret its colors.

As not all applications, e.g. image viewers, are aware of color profiles, a general recommendation is to stick to sRGB as the default output profile. You should only deviate from sRGB if this is really required and if you know what you are doing. Color contrast

The color contrast module provides simplified control for changing the contrast or separation of colors between either green/magenta or blue/yellow axis.

Higher values increase color contrast, lower values decrease it. The effect of this module's sliders are similar to applying a steepened or flattened a- or b-curve in module tone curve (see Section, “Tone curve”).

green vs. magenta

Changes color contrast for green versus magenta.

blue vs. yellow

Changes color contrast for blue versus yellow. Color correction

This module can be used to modify the global saturation, give a tint to the image or to split tone it.
color board

For split toning move the white dot to the desired highlight tint and then select a tint for shadows with the dark spot. For a simple global tint set both spots to the same color.


Use the saturation slider to correct the global saturation. Color look up table

This module implements a generic color look up table in Lab space. The input is a list of source and target points, the complete mapping will be interpolated using splines. The resulting luts are editable by hand and can be created using the darktable-chart utility to match given input (such as hald-cluts and RAW/JPEG with in-camera processing pairs). See Section 10.3, “Using darktable-chart for details.
color board

When you select the module in darkroom mode, it should look something like the image above (configurations with more than 24 patches are shown in a 7x7 grid instead). By default, it will load the 24 patches of a color checker classic and initialise the mapping to identity (no change to the image).

The grid shows a list of colored patches. The colors of the patches are the source points. The target color of the selected patch is shown as offsets controlled by sliders in the GUI under the grid of patches. An outline is drawn around patches that have been altered, i.e. the source and target colors differ.

The selected patch is marked with a white square, and its number is displayed in the combo box below. Select a patch by left clicking on it, or using the combo box, or using the color picker.


To modify the color mapping, you can change source as well as target colors.

The main use case is to change the target colors. You start with an appropriate palette of source colors (either from the presets menu or from a style you download). You can then change lightness (L), green-red (a), blue-yellow (b), or saturation (C) of the patches' target values via sliders.

To change the source color of a patch you select a new color from your image by using the color picker, and shift-click on the patch you want to replace. You can switch between point and area sampling mode from within the global color picker panel (see Section 3.3.4, “Global color picker”).

To reset a patch, double-click it. Right-click a patch to delete it. Shift-click on empty space to add a new patch (with the currently picked color as source color). Monochrome

This module is a quick way to convert an image into black and white and provides a variable color filter for that conversion.

A color picker is activated by pressing and will automatically set the position and size of the filter. You can switch between point and area sampling mode from within the global color picker panel (see Section 3.3.4, “Global color picker”).

The default central location of the filter has a neutral effect but dragging it to an alternate position applies a filter analogously to taking a b&w photograph through a conventional color filter.

As well as position you can change the filter size by scrolling with your mouse wheel. This makes the filter's range of hues more or less selective.

Tip: First reduce the filter size to concentrate its effect and move it across the hue pallet to find the best filter value for your desired image rendition. Then expand the filter to include more hues and thus more natural tonality.

Under certain conditions, especially highly saturated blue light sources in the frame, this module may produce black pixel artifacts. See the gamut clipping option (Section, “Input color profile”) on how to mitigate this issue. Color zones

This module selectively modifies the colors in your image. It is highly versatile and allows every transformation possible in the LCh colorspace.

The horizontal axis represents the range of values you can work on. The vertical axis shows the modifications you can apply by designing a curve. For both horizontal and vertical axes you can work on lightness, saturation or hue.

You can click on any of the eight nodes on the curve and drag to adjust it vertically. A circle indicates how strong adjacent nodes will be affected. Use the scroll wheel of your mouse to change the circle diameter. You can also use the eight controlpoints (triangles which define the vertical value of the nodes) at the bottom to adjust the curve.

A color picker is activated by pressing and will show the picked values in the diagram. You can switch between point and area sampling mode from within the global color picker panel (see Section 3.3.4, “Global color picker”).

tabbed controls

You can define curves for each of the three channels lightness, saturation, and hue individually.

select by

Defines the horizontal axis, i.e. the range of values you work on. You can choose between lightness, saturation, and hue (default). Changing this parameter resets any defined curve to a straight horizontal line.


Use this parameter to tune the strength of the overall effect. Color balance

This module offers a versatile tool for adjusting an image's color balance.

For each of the three primary colors – red, green, and blue – there are three sliders lift, gamma and gain to control dark tones, mid tones and high tones, respectively. Changing these parameters adds offsets to the individual RGB channels and influences the color balance of the image.

Additional factor sliders act on all colors at once. Their effect is similar to the controls of the levels module (see Section, “Levels”).

The way to best envision the module's way of working is if you consider lift, gamma and gain as parameters influencing the properties of a tone curve which – in its original state – is a straight line going diagonally from bottom left to top right.

The lift parameter adjusts the left axis intercept of the line – this point can be shifted from its default location with zero abscissa to points with negative or positive ones. The gamma parameter modifies the line shape – the default shape is linear and can be turned into a convex curve with increased or into a concave curve with lowered gamma values. Finally, the gain parameter defines the steepness of the curve – by default the curve runs diagonally, higher values lead to a steeper curve and lower values to a flatter one.

Side note: although this module acts on RGB colors its location in pixelpipe puts it into the Lab color space. Accordingly the modules converts from Lab to RGB, does its color adjustments, and then converts back to Lab.


Adjusts the value of dark colors with individual sliders for each RGB color and with a factor slider acting on all three colors at once.


Adjusts the mid tones with individual sliders for each RGB color and with a factor slider acting on all three colors at once.


Adjusts the high tones with individual sliders for each RGB color and with a factor slider acting on all three colors at once. Vibrance

Vibrance is a widely used term in image processing but the mechanism and end result differ from program to program. Vibrance in darktable saturates and brings down the lightness of the most saturated pixels to make the colors more vivid.

Vibrance only has one parameter which controls the amount applied.


The amount of vibrance to apply to the image. Input color profile

This module can be used to override darktable's automatic allocation of input color profile if there is an alternative that more closely matches your original image's color space.

In this module you define the input color profile, i.e. how colors of your input image are to be interpreted. You also have an option to have colors confined to a certain gamut in order to mitigate some (infrequent) color artifacts.


Choose the profile or color matrix to apply, darktable offers many widespread matrices along with an enhanced matrix for some camera models. The enhanced matrices were processed by the darktable team in order to provide a look closer to the manufacturer's.

You can also supply your own input ICC profiles and put them into $DARKTABLE/share/darktable/color/in or $HOME/.config/darktable/color/in. $DARKTABLE is used here to represent darktable's installation directory and $HOME your home directory. One common source of ICC profiles is the software that is shipped with your camera; it often contains profiles specific to your camera model. You may need to activate module unbreak input profile (see Section, “Unbreak input profile”) to use your extra profiles.

If your input image is a low dynamic range file like JPEG, or a raw in DNG format, it might already contain an embedded ICC profile which darktable will use as a default. You can always overrule darktable and select a different profile. Select embedded icc profile to restore the default.

gamut clipping

This combobox lets you activate a color clipping mechanism. In most cases you can leave it at its default off state. However, if your image shows some specific features like highly saturated blue light sources, gamut clipping might be useful to avoid black pixel artifacts. See Section, “Possible color artifacts” for more background information.

You can select from a list of RGB profiles. Input colors with a saturation that exceeds the permissible range of the selected profile get clipped to a maximum value. linear Rec2020 RGB and Adobe RGB (compatible) allow for a broader range of unclipped colors, while sRGB and linear Rec709 RGB produce a tighter clipping. You should select the profile that prevents artifacts while still maintaining highest color dynamics.


Close-up of a blue light source (LED) with gamut clipping off. The activated levels module produces a ring of black pixel artifacts.
The same image and processing with gamut clipping set to linear Rec2020 RGB . Unbreak input profile

This module adds a correction curve to image data, which is required if you have selected certain input profiles in module input color profile.

If you decide in module input color profile to use an ICC profile from the camera manufacturer, a correction curve very frequently needs to be pre-applied to image data – or else the final output looks much too dark. This extra processing is not required if you use darktable's standard or enhanced color matrices. The correction curve is defined with a linear part extending from the shadows to some upper limit and a gamma curve covering mid-tones and highlights. For further reading please also have a look at darktable's neighbouring project UFRaw.


Set the upper limit for the region counted as shadows and where no gamma correction is performed. Typically values between 0.0 and 0.1 are required by the profile.


Set the gamma value to compensate your input profile. Often the required value is 0.45 (the reciprocal of 2.2 gamma used by some manufacturer's profile).