3.4.5. Effect group

In the effect group you will find modules with a more artistic touch.

3.4.5.1. Watermark

Overview
The watermark module provides a way to render a vector-based overlay onto your image. Watermarks are standard SVG documents and can be designed using Inkscape.

The SVG processor of darktable also substitutes strings within the SVG document, which gives the opportunity to include image dependent information in the watermark such as aperture, exposure time and other metadata.

User-designed watermarks are placed into the directory $HOME/.config/darktable/watermarks. Once in place, use the reload button at the right of the watermark file name to update the list of available watermarks to use.

Here follows a list of available variable strings that is supported for substitution within the svg document.

$(DARKTABLE.NAME) The application name
$(DARKTABLE.VERSION) The version of darktable
$(WATERMARK_TEXT) A short free text (max. 63 characters)
$(WATERMARK_COLOR) The color to use for $WATERMARK_TEXT
$(WATERMARK_FONT_FAMILY) The font family to use for $WATERMARK_TEXT
$(WATERMARK_FONT_STYLE) The font style (normal, oblique, italic)
$(WATERMARK_FONT_WEIGHT) The font weight (boldness)
$(IMAGE.ID) The unique image id within current library
$(IMAGE.FILENAME) The image filename
$(IMAGE.BASENAME) The image file basename
$(IMAGE.EXIF) The image Exif string
$(EXIF.DATE) The image date
$(EXIF.DATE.SECOND) Seconds from the image Exif data
$(EXIF.DATE.MINUTE) Minutes from the image Exif data
$(EXIF.DATE.HOUR) Hours from the image Exif data (24h)
$(EXIF.DATE.HOUR_AMPM) Hours from the image Exif data (12h, AM/PM)
$(EXIF.DATE.DAY) Day of month from the image Exif data (01 .. 31)
$(EXIF.DATE.MONTH) Month from the image Exif data (01 .. 12)
$(EXIF.DATE.SHORT_MONTH) Month from the image Exif data localized (Jan, Feb, .. Dec)
$(EXIF.DATE.LONG_MONTH) Month from the image Exif data localized (January, February, .. December)
$(EXIF.DATE.SHORT_YEAR) Abbreviated year from the image Exif data (2013 is "13")
$(EXIF.DATE.LONG_YEAR) Full year from the image Exif data
$(DATE) Current system date
$(DATE.SECOND) Current system time seconds
$(DATE.MINUTE) Current system time minutes
$(DATE.HOUR) Current system time hours (24h)
$(DATE.HOUR_AMPM) Current system time hours (12, AP/PM)
$(DATE.DAY) Current system time day of month (01 .. 31)
$(DATE.MONTH) Current system time month (01 .. 12)
$(DATE.SHORT_MONTH) Current system time month localized (Jan, Feb, .. Dec)
$(DATE.LONG_MONTH) Current system time month localized (January, February, .. December)
$(DATE.SHORT_YEAR) Current system time year (abbreviated)
$(DATE.LONG_YEAR) Current system time year
$(EXIF.MAKER) The maker of camera model
$(EXIF.MODEL) The camera model
$(EXIF.LENS) The specific lens used
$(Xmp.dc.creator) The creator string
$(Xmp.dc.publisher) The publisher string
$(Xmp.dc.title) The title of the image
$(Xmp.dc.description) The description of the image
$(Xmp.dc.rights) The rights assigned to the image
$(GPS.LATITUDE) The image latitude coordinate (N/S 0 .. 90)
$(GPS.LONGITUDE) The image longitude coordinate (E/W 0 .. 180)
$(GPS.ELEVATION) The image elevation level (meters)
$(GPS.LOCATION) All three coordinates (latitude, longitude, elevation)

Usage
marker

Choose the watermark of interest. You can use the reload button next to the combobox to update the list with all newly added watermarks.

text

A free text field with up to 63 characters which gets printed if the corresponding watermark references it. An example is supplied as simple-text.svg.

text color

This field shows the text color. Clicking on the colored field will open a color selector dialog which offers you a choice of commonly used colors, or allows to define a color in RGB color space.

text font

This field lets you select the text font. Clicking on the field opens a dialog box which shows the fonts available to your system. Fonts can be searched by name and a preview of each available font is shown next to the font name; you may specify your own sample text. The font defaults to DejaVu Sans Book.

opacity

Set the opacity of the watermark's rendering.

scale

Scale the watermark pixel-independently.

rotate

Set the rotation angle of the watermark.

scale on

Defines the reference for the scale parameter. The default setting image scales the watermark relative to the horizontal image size. Alternatively you can scale the watermark relative to the larger border and smaller border, respectively.

alignment

Use these controls to align the watermark to any edge or center of the image.

x offset

Pixel-independent offset relative to the choice of alignment on the x-axis.

y offset

Pixel-independent offset relative to the choice of alignment on the y-axis.

3.4.5.2. Framing

Overview
This module is an artistic feature to generate a frame around your image. The frame consists of a border with a user defined color and a frame line inside that border, which has another user defined color. There are various options for you to control the geometry of your frame.
Usage
border size

This slider controls the size of the frame in percent of the underlying full image.

aspect

With this combobox you can choose between different aspect ratios for the final output of this module, i.e. underlying image plus frame.

orientation

If you select a non-square aspect ratio this combobox defines the orientation – portrait or landscape. Set to auto if you want darktable to select the most reasonable orientation based on the underlying image.

horizontal position

Select from a set of pre-defined ratios where you want your underlying image be positioned on the horizontal axis. You can also right click and enter your own ratio as x/y.

vertical position

Select from a set of pre-defined ratios where you want your underlying image be positioned on the vertical axis. You can also right click and enter your own ratio as x/y.

frame line size

The percentage of the frame line size relative to the border size at its smallest part.

frame line offset

Where the frame line is positioned relative to the underlying image. Select a value of 0 for a frame line touching the image, 100% for a frame line touching the outer border limits.

border color

A color selector which allows to define a color for the border. Clicking on the colored field will open a color selector dialog which offers you a choice of commonly used colors, or allows to define a color in RGB color space.

You can also activate a color picker by pressing and take a color probe from your image. You can switch between point and area sampling mode from within the global color picker panel (see Section 3.3.4, “Global color picker”).

frame line color

A color selector which allows to define a color for the frame. Clicking on the colored field will open a color selector dialog which offers you a choice of commonly used colors, or allows to define a color in RGB color space.

You can also activate a color picker by pressing and take a color probe from your image. You can switch between point and area sampling mode from within the global color picker panel (see Section 3.3.4, “Global color picker”).

Examples

Example image with a user defined frame.

3.4.5.3. Splittoning

Overview
darktable's splittoning method creates a two color linear toning effect where the shadows and highlights are represented by two different colors. In the example image below you can see an original black and white image and one where a splittoning effect is applied with blue in shadows and a yellowish color in highlights.

Compared to traditional splittoning our module has more parameters to influence its behavior. We have parameter balance, which offsets the 50% gray level in your image – at your choice – more to the shadows or more to the highlights. Additionally, with parameter compression you can compress toning in the shadows and highlights and leave a gap in the mid-tones, which remain untouched by the effect.

The splittoning module does not convert images to black and white and has limited benefits on color images. So, if you want to do traditional splittoning, use the monochrome module (see Section 3.4.3.7, “Monochrome”) to make the image black and white before playing around with splittoning effect.

Usage
shadows and highlights color

These controls are used to set the color of the splittoning effect, you select the desired color and saturation for both shadows and highlights. Clicking on the colored squares will open a color selector dialog which offers you a choice of commonly used colors, or allows to define a color in RGB color space.

balance

This parameter represents the ratio of toning between shadows and highlights. For a value of 50% half of the lightness range in image is used for shadows toning and the other half for highlights toning.

compression

Compression is a percentage of total lightness range that is not affected by color toning. Default value is set to 33%; this is not the default behavior of an original splittoning which would be 0% compression. The choice of 33% as a default is to invite you experimenting with these parameters and how it extends the original splittoning method.

Examples

Original black and white image.
Splittoning with blue shadows and yellow highlights.

3.4.5.4. Vignetting

Overview
This module is an artistic feature which creates vignetting (modification of the brightness/saturation at the borders).
Usage

The vignetting module has an extensive set of parameters to precisely tune its effect. It also will display graphical controls within the image if the module is in focus. Give it a try to get a feeling of how it works. On-screen controls and parameter sliders will stay in sync.

This module is known to provoke banding artifacts under certain conditions; you should consider to activate the dithering module (see Section 3.4.4.13, “Dithering”).

scale

Set the radius of the vignetting area.

fall-off strength

Sets the progressiveness of the fall-off. Higher values will cause a steeper transition.

brightness

Sets the intensity of brightening (positive values) or darkening (negative values).

saturation

Controls how strong colors become when desaturated or saturated in the darkened or brightened vignetting area.

horizontal center

Shifts the center of the vignetting area horizontally.

vertical center

Shifts the center of the vignetting area vertically.

shape

Influences the shape of the vignetting area. The default value of 1 causes a circular or elliptical area. Smaller values will shift the shape into a more square one; higher values turn it into a cross-like shape.

automatic ratio

Click this button to automatically adjust the width/height ratio of the vignetting area to the aspect ratio of the underlying image. The vignetting area will typically become elliptical.

width/height ratio

Manually adjust the width/height ratio of the vignetting area.

dithering

With this combobox you can activate random noise dithering to overcome banding artifacts caused by vignette gradients. Select 8-bit output to prevent banding on monitor display and for JPEGs. When set to 16-bit output, only a little dithering will be applied, just strong enough to compensate for banding on the fine grained 16-bit level. This feature is mostly obsoleted by our new module dithering (see Section 3.4.4.13, “Dithering”).

Examples

An image with vignetting and with graphical vignetting controls displayed.

3.4.5.5. Soften

Overview
This module is an artistic feature that creates a softened image, commonly known as the Orton effect.
Usage

Michael Orton achieved his results on slide film by using two exposures of the same scene: one well exposed and one overexposed; he then used a darkroom technique to blend those into a final image where the overexposed image was blurred.

This module is almost a copy of Orton's analogue process into the digital domain. You can control brightness and blur with the provided parameters; we also add a control for saturation of the overexposured image for more play.

size

Set the size of blur of the overexposed image in the process, the bigger the softer.

saturation

Set the saturation of the overexposed image.

brightness

Expressed in [EV], the brightness slider selects the increase in brightness.

mix

Controls the mix of the overexposed image and the overall effect.

Examples

This is the original image, use it as reference for the changes below...
In this image I used the default values, and added 0.33EV to brightness for a little more light in the soft layer.
This version is the same as above but with 25% saturation.

3.4.5.6. Grain

Overview
This module is an artistic feature which simulates the grain of a film.
Usage

The grain is processed on the L channel from CIELAB.

coarseness

Set the grain size, which has been scaled to simulate an ISO number.

strength

Set the strength of the effect.

3.4.5.7. Highpass

Overview
Highpass acts as a high pass filter. The primary usage for this filter is in combination with a blending operator. Try out blend mode soft light to get highpass sharpening. Use the opacity slider to adjust the strength of the effect or use a drawn mask (see Section 3.2.7, “Drawn mask”) or parametric mask (see Section 3.2.8, “Parametric mask”) to limit the effect to only parts of your image.
Usage
sharpen

Set the sharpness. The higher, the more details.

contrast boost

Set the contrast boost.

3.4.5.8. Lowpass

Overview
A lowpass filter (eg. gaussian blur) with additional control of the outcome both of contrast and saturation. The primary usage for lowpass filter is in combination with a blending operator (see Section 3.2.6, “Blending operators”). Try out the preset named local contrast mask with an overlay blending operation.
Usage

This module offers enormous artistic potential, albeit, with results that are sometimes difficult to predict.

radius

Set the radius of the blur.

soften with

This combobox defines the blur algorithm; you can choose between gaussian blur (default) and bilateral filter. The latter leads to an edge preserving blur. gaussian will blur all image channels: L, a and b. bilateral will only blur L channel.

contrast

Changes the contrast. Negative values result in an inverted negative image. Higher absolute values increase contrast; lower absolute values reduce contrast. A value of zero leads to a neutral plane.

brightness

Changes the brightness. Negative values result in a darker image. Positive values increase the image's brightness.

saturation

Changes the color saturation. Negative values result in complementary colors by inverting the a/b-channels. Higher absolute values increase color saturation; lower absolute values reduce color saturation. A value of zero leads to a desaturated black&white image.

Examples

The original image, already heavily processed. The boat is almost a silhouette.
Bilateral blur with high radius. Desaturated, inverted and with high contrast.
Intermediate result after lowpass filter ...
... and final image after this was applied with blend mode "vividlight".

3.4.5.9. Low light

Overview

The low light module allows one to simulate human lowlight vision, thus providing ability to make lowlight pictures look closer to reality. It can also be used to perform a day to night conversion.

The idea is to calculate a scotopic vision image which is perceived by rods rather than than cones in the eye under low light. Scotopic lightness then is mixed with photopic value (regular color image pixel) using some blending function. Also this module is able to simulate the Purkinje effect by adding some blueness to the dark parts of the image.

Usage

This module comes with several presets. Give them a try to get a better feeling how it works.

curve

The horizontal axis is about pixel lightness from dark (left) to bright (right). The vertical axis represents the kind of vision from night vision (bottom) to day vision (top)

blue

Set the blue hint in shadows (Purkinje effect).

Examples

Image 1. This is the original image.
Image 1. With low light module on.

Image 2. This is the original image.
Image 2. With low light module on.

3.4.5.10. Bloom

Overview
This module takes highlights, blurs them and then blends (screen blend lightness) with the original to create a soft blooms over the image, hence the name of the effect. There are numerous ways to use this module depending on the image's actual scenery lighting.
Usage

Starting from the default settings change the strength value for a pleasant look, then change the size to control the spread of light.

size

Represents the spatial extent of the bloom effect.

threshold

Set the threshold for the increase in brightness.

strength

Set the strength of overlightning for the effect.

Examples

This is the original image, use it as reference for the changes below...
Here we have chosen to use a size of 10%, which is a rather small radius for the soft light spread. We boosted up the strength to 50% for a more exaggerated effect.

3.4.5.11. Colorize

Overview
This module is an artistic feature that adds a solid layer of color to your image.
Usage

Several parameters control the effect of this module. Much more versatility can be reached if you apply blending and masks. (see Section 3.2.5, “Blending”).

hue

Selects the hue of the color layer.

saturation

Selects the color saturation of shadow tones.

lightness

Selects the lightness of the color layer.

source mix

This slider controls how the lightness of the input image is mixed in. If you set this to zero a uniformly colored plane will result.

3.4.5.12. Color mapping

Overview
This module transfers the look and feel from one image onto another. It statistically analyses the color characteristics of a source image and a target image. The colors of the source image are then mapped to corresponding colors of the target image.
Usage

To use this module two steps are required.

First you open the source image in darkroom mode and acquire its color characteristics by pressing the acquire as source button. A set of color clusters is generated and displayed in the source clusters area. Each cluster is represented by a set of color swatches with the mean value in the center surrounded by swatches indicating the color variance within that cluster. The clusters are sorted in ascending order by their weight, i.e. the number of pixels that contribute to the clusters.

Next you open your target image in darkroom mode. darktable has remembered the previously collected source clusters; if they are not yet displayed, press the button. You now press the acquire as target button to generate a corresponding set of color clusters for your target image, which gets displayed in the target clusters area.

When both source and target clusters are collected an automatic color mapping is applied to the target image. In its default settings the overall effect is quite exaggerated. A set of sliders gives you control of the effect's strength. You can also use blending operator normal to tame the effect (see Section 3.2.6, “Blending operators”). As the color mapping module comes early in the pixelpipe, you can finetune the colors with modules like tone curve (see Section 3.4.2.3, “Tone curve”) or color correction (see Section 3.4.3.5, “Color correction”).

acquire as source/target

Press these buttons to generate color clusters for the source and target image, respectively. The processing takes a few seconds during which the GUI remains unresponsive.

number of clusters

Sets the number of color clusters to use. If you change this parameter all collected color clusters are reset and need to be acquired anew.

color dominance

This parameter controls the mapping between source and target clusters. At the lowest value mapping is based on color proximity. This typically leads to very subtle effects on the target image. At the maximum value mapping is based on the relative weight of the color clusters – dominant colors of the source image are mapped to dominant colors of the target image. This typically leads to a very bold effect. In-between values incrementally shift between the extremes.

histogram equalization

Besides mapping of color characteristics this module can modify the target image's contrast by matching its histogram with the histogram of the source image. This slider controls the extent of the effect.

Examples

The source image taken shortly after sunset under front lighting conditions.
The target image taken in the afternoon with a partly clouded sky. Our goal is to transfer the evening atmosphere of the source image.
The target image with color mapping applied. A number of 2 clusters was used. color dominance is set to 100% for a bold but still credible effect. histogram equalization is set to 80%.

3.4.5.13. Graduated Density

Overview
This module aims at simulating a graduated density filter, in order to correct exposure and color in a progressive manner.
Usage

The module uses a gradient to modify the exposure and the color cast of the image in a non-homogeneously manner.

This module is known to provoke banding artifacts under certain conditions; you should consider to activate the dithering module (see Section 3.4.4.13, “Dithering”).

density

Set the density of the filter in [ev]. A low value underexposes slightly whereas a high value creates a strong filter.

It is expressed as [ev] that is equivalent to f-stops. Lens filters are often referred as ND2, ND4, ND8 and so on. Each time you add an [ev] you double the ND. So ND2 is 1 ev, ND4 is 2 ev, and so on. You can also express it in optical density or transmittance. The table below sums up the different approach for the most common filters:

ND [ev] or f-stop absorbance transmittance
ND2 -1 0.3 50%
ND4 -2 0.6 25%
ND8 -3 0.9 12.5%
ND400 -9 2.7 0.195%

compression

Set progressiveness of the gradient. A low value creates a smooth transition, whereas a high value makes the transition abrupt.

hue

Set the hue to add a color cast to the gradient.

saturation

Set the saturation to add a color cast to the gradient.

position

You can set the position of the gradient directly on the image by moving the white line. For fine tuning, you can also use the rotation slider. Negative values turn clockwise.

Examples

Here is an example that shows various options of darktable's graduated density filter:

This is the original image with a pretty overexposed sky, use it as reference for the changes below...
And now we have added a neutral ND8 filter which does a pretty good job on the image..
And at last, we added an orange colored filter rotating it -180 degrees, applying it on water/trees for a more artistic use of the filter.

darktable's graduated density filter is a powerful tool. Nevertheless, hardware filters have some advantages over a pure software solution. With a physical GND filter you can in fact reduce the dynamic range of your scene to make it better fit the limits of your camera sensor.

In this example a hardware GND filter (Hitech ND0.6, soft edge) helped to prevent over-exposure in the sky and tree tops, while at the same time getting a well exposed image of the ground. A rather disturbing element is the decay of brightness in the tree trunks from bottom to top.
darktable's graduated density filter together with the parametric mask feature (see Section 3.2.8, “Parametric mask”) comes in handy. We can add a brightness gradient that is just inverted in relation to the hardware filter. As we only want to compensate the unnatural decay of brightness in the tree trunks, we combine the module with a suited blend mask.
The resulting image.

Tip: If you know you intend to use the graduated density filter before actually making a shot with your camera you might want to underexpose by one or two thirds of an f-stop to make sure detail remains in the highlights. When all detail has truly been blown out the graduated density filter cannot produce a pleasing results, this is a limitation that is inherent to digital postprocessing. For instructions on how to intentionally underexpose, please consult your camera's manual, look for exposure compensation.