Darktable manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images and enhance them.

Features

  • Non-destructive editing throughout the complete workflow, your original images are never modified.
  • Take advantage of the real power of raw: All darktable core functions operate on 4x32-bit floating point pixel buffers, enabling SSE instructions for speedups.
  • GPU accelerated image processing: many image opertions are lightning fast thanks to OpenCL support (runtime detection and enabling).
  • Professional color management: darktable is fully color managed, supporting automatic display profile detection on most systems, including built-in ICC profile support for sRGB, Adobe RGB, XYZ and linear RGB color spaces.
  • Cross platform: darktable runs on Linux, macOS / macports, BSD, Windows and Solaris 11 / GNOME.
  • Filtering and sorting: search your image collections by tags, image rating (stars), color labels and many more, use flexible database queries on all metadata of your images.
  • Image formats: darktable can import a variety of standard, raw and high dynamic range image formats (e.g. JPEG, CR2, NEF, HDR, PFM, RAF ... ).
  • Zero-latency, zoomable user interface: through multi-level software caches darktable provides a fluid experience.
  • Tethered shooting: support for instrumentation of your camera with live view for some camera brands.
  • Speaks your language: darktable currently comes with 21 translations: Albanian, Catalan, Czech, Danish, Dutch, French, German, Greek, Hebrew, Hungarian, Italian, Japanese, Polish, Portuguese (Brazilian and Portuguese), Russian, Slovak, Slovenian, Spanish, Swedish, Ukrainian.
  • Powerful export system supports G+ and Facebook webalbums, flickr upload, disk storage, 1:1 copy, email attachments and can generate a simple html-based web gallery. darktable allows you to export to low dynamic range (JPEG, PNG, TIFF), 16-bit (PPM, TIFF), or linear high dynamic range (PFM, EXR) images.
  • Never lose your image development settings darktable uses both XMP sidecar files as well as its fast database for saving metadata and processing settings. All Exif data is read and written using libexiv2.
  • Automate repetitive tasks: Many aspects of darktable can be scripted in Lua.

Modules

Currently darktable contains 61 image operation modules. Many modules support powerful blending operators offering blend functionality that works on the incoming image information and the output of the current module or be used with drawn masks.

Basic image operations:

  • Contrast, brightness, saturation: Quickly tune your image using this simple module.
  • Shadows and highlights: Improve images by lightening shadows and darkening highlights. Read Ulrich's blog post on this.
  • Crop and rotate: This module is used to crop, rotate and correct the perspective of your image. It also includes many helpful guidelines that assist you using the tools (e.g. rule of thirds or golden ratio).
  • Base curve: darktable comes with general enhanced basecurve presets for several models that are automatically applied to raw images for better colors and contrast.
  • Exposure controls: Tweak the image exposure either by using the sliders in the module or dragging the histogram around.
  • Demosaic: You have the choice between several demosaicing methods when editing raw files.
  • Highlight reconstruction: This module tries to reconstruct color information that is usually clipped due to information not being complete in all channels.
  • White balance: A module offering three ways to set the white balance. You can set tint and temperature or you define the value of each channel. The module offers predefined white balance settings as well. Or just pick a neutral region in the image to balance for that.
  • Invert: A module inverting colors based on the color of film material.

Tone image operations:

  • Fill light: This module allows the local modification of the exposure based on pixel lightness.
  • Levels: This module offers the well-known levels adjustment tools to set black, grey and white points.
  • Tone curve: This module is a classical tool in digital photography. You can change the lightness by dragging the line up or down. darktable lets you separately control the L, a and b channel. Read in Ulrich's blog post how to make use of this feature.
  • Zone system: This module changes the lightness of your image. It is based on the Ansel Adams system. It allows to modify the lightness of a zone taking into account the effect on the adjacent zones. It divides the lightness in a user-defined number of zones.
  • Local contrast: This module can be used to boost details in the image.
  • Two different tone mapping modules: These modules allow to recreate some contrast for HDR images.

Color image operations:

  • Velvia: The velvia module enhances the saturation in the image; it increases saturation on lower saturated pixels more than on high saturated pixels.
  • Channel mixer: This module is a powerful tool to manage channels. As entry, it manipulates red, green and blue channels. As output, it uses red, green, blue or grey or hue, saturation, lightness.
  • Color contrast
  • Color correction: This module can be used to modify the global saturation or to give a tint. Read Johannes' blog post.
  • Monochrome: This module is a quick way to convert an image to black and white. You can simulate a color filter in order to modify your conversion. The filter can be changed in size and color center.
  • Color zones: This module allows to selectively modify the colors in your image. It is highly versatile and allows every transformation possible in the LCh colorspace.
  • Color balance: Use lift/gamma/gain to change highlights, midtones and shadows.
  • Vibrance: For a detailed description read Henrik's blog post.
  • Color look up table: Apply styles or film emulations. You can also easily edit the changes done. For more information you can read this blog post
  • Input/output/display color profile management
  • A useful feature that displays pixels outside the dynamic range.

Correction modules:

  • Dithering: This helps with banding in smooth gradients in the final image.
  • Sharpen: This is a standard UnSharp Mask tool for sharpening the details of an image.
  • Equalizer: This versatile module can be used to achieve a variety of effects, such as bloom, denoising, and local contrast enhancement. It works in the wavelet domain, and parameters can be tuned for each frequency band separately.
  • Denoise (non-local means): Denoising with separated color / brightness smoothing.
  • Defringe: Remove color fringes on high contrast edges.
  • Haze removal: This module allows to remove the low contrast and color tint coming from haze and air pollution.
  • Denoise (bilateral filter): Another denoising module.
  • Liquify: Push image parts around, grow them, shrink them. More information can be found in this blog post
  • Perspective correction: A great module to automatically un-distort shots with straight lines. See our blog post for an introduction and examples.
  • Lens correction: lens defect correction using lensfun.
  • Spot removal: Spot removal allows you to correct a zone in your image by using another zone as model.
  • Profiled denoise: By measuring the typical noise of cameras at the different ISO levels darktable is able to remove a lot of it. Read this blog post for more information.
  • Raw denoise: Raw denoise allows you to perfom denoising on pre-demosaic data. It is ported from dcraw.
  • Hot pixels: This module allows you to visualize and correct stuck and hot pixels.
  • Chromatic aberrations: This module automatically detects and corrects chromatic aberrations.

Effects/artistic image postprocessing:

  • Watermark: 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.
  • Framing: This module allows you to add an artistic frame around an image.
  • Split toning: Original split toning method creates a two color linear toning effect where the shadows and highlights are represented by two different colors. darktable split toning module is more complex and offers more parameters to tweak the result.
  • Vignetting: This module is an artistic feature which creates vignetting (modification of the brightness/saturation at the borders).
  • Soften: This module is an artistic feature that creates the Orton effect also commonly known as softening the image. Michael Orton achieved such result on slide film by using 2 exposures of the same scene: one well exposed and one overexposed; then he used a technique to blend those into a final image where the overexposed image was blurred.
  • Grain: This module is an artistic feature which simulates the grain of a film.
  • Highpass: This module acts as highpass filter.
  • Lowpass: This module acts as lowpass filter. One use case is described in Ulrich's blog post.
  • Lowlight vision: Low light module allows to simulate human lowlight vision, thus providing the ability to make lowlight pictures look closer to reality. It can also be used to perform a day to night conversion.
  • Bloom: This module boost highlights and softly blooms them over the image.
  • Color mapping: Transfer colors from one image to another.
  • Colorize
  • Graduated density: This module aims at simulating a neutral density filter, in order to correct exposure and color in a progressive manner.

What's New

The following is a summary of the main features added to darktable 4.0. These features are described more fully in the user manual and accompanying blog post.

Color and exposure mapping

A new feature in the "exposure" and "color calibration" modules allows you to define and save a target color/exposure for the color pickers, in order to match any source object in the image against an arbitrary target color. This can be used to perform white balance (chromatic adaptation) against non-gray objects of known color, or to ensure the color consistency of an object across a series of images.

Filmic v6

Filmic v6 introduces new color science. This change removes the mandatory desaturation close to medium white and black and replaces it with a true gamut mapping against the output (or export) color space. This allows for more saturated colors, notably in blue skies.

For users who still prefer the "desaturated highlights" look, you can still do this by disabling chroma preservation, but v6 adds a hue handcuff to prevent the traditional hue shift that comes with this method (where saturated blue skies degrade to cyan and saturated red to yellow).

This gamut sanitization is the third and last to be added to darktable, which now has a fully-sanitized color pipeline from input (color calibration), through artistic changes (color balance rgb) to output (filmic v6). Users can now color-grade pictures safely in the knowledge that invalid input colors can be recovered in the least destructive fashion possible early in the pipeline, and valid colors can't be pushed out of gamut along the pipeline.

Note: If modules are applied after filmic in the pipeline, they don't benefit from this gamut mapping and rely on LittleCMS2 (if enabled) at the final export stage, which does not gamut map as it should, and probably never did.

Guided laplacian highlight reconstruction

A new "guided laplacian" method has been added to the "highlight reconstruction" module. This uses an iterative and multi-scale wavelet scheme to extract valid details from non-clipped RGB channel(s) if any, uses these details to guide the reconstruction of clipped channels, and finally propagates the color gradients from neighboring valid regions using edge-aware color diffusion. This limits color bleeding through edges (preventing green leaves from bleeding color in the reconstruction of clipped blue sky, for example).

A noise setting allows Poisson noise to be added to reconstructed highlights, in order to help blend them into noisy high-ISO images.

This method is only available for Bayer sensors and cannot be adapted to X-Trans sensors.

Introducing the darktable Uniform Color Space 2022

The darktable UCS 22 is a perceptually uniform color space designed from psychoperceptual experimental data specifically for the purpose of artistic saturation changes, as performed in the color balance RGB module.
It uses a brightness-saturation scheme that compensates for the Helmholtz-Kohlraush effect (accounting for the contribution of colorfulness in perceived brightness) and allows an efficient gamut-mapping against pipeline RGB at constant brightness. It will make the saturation control in color balance RGB better behaved.

UI Rewrite

The UI has been completely revamped again to improve look and consistency.

Padding, margins, color, contrast, alignment, and icons have been reworked throughout.

Collapsible sections within modules have also been redesigned so that their functionality is more obvious and better-looking.
New collapsible sections have been added to avoid cluttering the UI in the following modules:

  • channel mixer rgb
  • exposure
  • color calibration

The vignetting module has been split into two sections for clarity.

Superfluous sections have been removed from the "crop" and "white balance".

Support has been added for the IPAPGothic font.

The module-description tooltips have been reworked to ensure better layout.

Finally the default theme has been changed to Elegant Grey. The darktable default is now in line with the theme recommended by the team.

Performance and OpenCL support changes

  • All performance and OpenCL settings and pixelpipe optimizations have been fully reviewed and updated. Many new optimizations have been added and the user preferences have been simplified.
  • All configurations are now per-device allowing each OpenCL device to be tuned separately.
  • Performance configuration is now applied at runtime and no longer requires darktable to be restarted when changed.
  • Some modules had incorrect or overly conservative tiling factors, which made darktable unnecessarily slow (since tiling was used when it was not required)
  • The following modules have been updated
  • demosaic (X-Trans)
  • retouch

Read the complete release notes here.