darktable page lede image
darktable page lede image

3.2.6. Farbmanagement

darktable unterstützt einen vollständig farbverwalteten Arbeitsablauf:

  • Input color specifications are taken from embedded or user supplied ICC profiles or, in the case of raw files, from a library of camera specific color matrices.

  • darktable automatically reads the display profile of your monitor (if properly configured) for an accurate color rendition on screen. Multi-screen setups are fully supported as long as a system service such as colord is in place and properly set up to inform darktable about the correct monitor profile.

  • Output files can be encoded in one of darktable's built-in profiles, including sRGB, Adobe, ProPhoto, Rec. 2020, Rec. 709 and other standard RGB color spaces, or into a color space supplied by the user as an ICC profile.

3.2.6.1. Anzeigeprofil

In order for darktable to accurately render colors on screen it needs to find the correct display profile of your monitor. In general this requires your monitor to be properly calibrated and profiled, and it needs the profile to be correctly installed on your system. darktable queries your X display server's xatom as well as the system service colord (if available) for the right profile. If needed you can enforce a specific method in the miscellaneous section of the preferences dialog (see Abschnitt 8.10, „Verschiedenes“).

Die Konfiguration Ihres Anzeigeprofils kann mit dem Programm darktable-cmstest untersucht werden. Das Programm liefert nützliche Informationen wie den Profilnamen pro Monitor und die korrekte Konfiguration des Systems (siehe Abschnitt 1.1.6, „darktable-cmstest).

In seltenen Fällen kann es erforderlich sein, das Anzeigeprofil manuell auszuwählen. Dies ist möglich über die Optionen Softproof- und Gamut-Check in der Dunkelkammer (siehe Abschnitt 3.3.11.5, „Softproof“ und Abschnitt 3.3.11.6, „Gamutüberprüfung“) und über den Anzeigeprofil-Dialog im Leuttisch (siehe Abschnitt 2.1, „Übersicht“).

3.2.6.2. Rendering-Verfahren

darktable kann Farben entweder mit seinen internen Algorithmen oder mit Hilfe der externen Bibliothek LittleCMS2 rendern. Die interne Methode von darktable ist um eine Größenordnung schneller als die externe. Die externe Option gibt Ihnen die Wahl des Rendering Verfahren was in manchen Fällen eine etwas höhere Genauigkeit bieten.

A configuration parameter always use LittleCMS 2 to apply output color profile in the processing section of the preferences dialog (see Abschnitt 8.6, „Processing“) defines which method is used. Note, however, that if the given ICC is LUT-based, or contains both a LUT and a matrix, darktable will use LittleCMS 2 to render the colors regardless of that configuration parameter's value.

3.2.6.3. Rendering Intent

Wenn Rendering mit LittleCMS2 aktiviert ist (siehe Abschnitt 3.2.6.2, „Rendering-Verfahren“) können Sie festlegen, wie mit Farben außerhalb des Farbraums bei der Konvertierung zwischen Farbräumen umgegangen werden soll. Eine Auswahlbox im Export-Eingabefeld (siehe Abschnitt 2.3.14, „Ausgewählte exportieren“), das Ausgabefarbprofil-Modul (siehe Abschnitt 3.4.1.2, „Ausgabefarbprofil“), und die Option Softproof (siehe Abschnitt 3.3.11.5, „Softproof“) gibt Ihnen die Wahl zwischen den folgenden Darstellungsarten:

Wahrnehmung Geeignet für Bilder, da es die relative Position der Farben beibehält. Das ist normalerweise die beste Wahl.
Kolorimetrisch (relativ) Farben außerhalb des Farbraums werden in Farben mit gleicher Helligkeit, aber unterschiedlicher Sättigung umgewandelt. Andere Farben bleiben unverändert.
Sättigung Die Sättigung bleibt erhalten, aber die Helligkeit wird leicht verändert.
Kolorimetrisch (absolut) Bewahrt den Weißpunkt.

3.2.6.4. darktable's Farbräume

darktable's input images are either RGB files (like JPEGs or TIFFs) or camera raws – both represent colors by a combination of red, green and blue. Most of the actual image processing takes place in a large RGB "working profile" space, with some (mostly older) modules internally working in the CIELAB color space. The final output of the image processing pipeline is in an RGB space shaped for either the monitor display or the output file.

This process implies that the pixelpipe has two fixed color conversion steps: input color profile and output color profile. In addition there is the demosaic step for raw images, where the colors of each pixel are reconstructed by interpolation.

Each module has a position in the pixelpipe which tells you which color space the module lives in:

bis zu Demosaik   Das Bild ist im Rohdatenformat mit nur latenten Farben. Jedes Pixel enthält Helligkeits- und Farbinformationen für nur eine Grundfarbe. Bitte beachten Sie, dass einige der Module in diesem Teil auch mit Eingangsbilder im RGB-Format mit vollständigen Informationen über alle drei Farbkanäle reagieren können.
zwischen Demosaik und Eingabefarbprofil   Das Bild ist im RGB-Format innerhalb des Farbraums der jeweiligen Kamera oder Eingabedatei.
zwischen Eingabefarbprofil und Ausgabefarbprofil   Image is in the space defined by the selected working profile (linear Rec2020 RGB by default). As darktable processes images in 4x32-bit floating point buffers, we can handle large working color spaces without risking banding or tonal breaks.
nach Ausgabefarbprofil   Das Bild ist im RGB-Format, wie es durch das gewählte Display oder das ICC-Profil definiert ist.

3.2.6.5. Unbegrenzte Farben

Theoretisch sind die einzelnen Komponenten der Farbdaten auf bestimmte Minimal- und Maximalwerte beschränkt. Beispielsweise kann die Intensität eines einzelnen roten, grünen oder blauen Farbkanals in RGB im Bereich zwischen 0% und 100 % (oder zwischen 0,0 und 1,0) liegen. Ebenso kann der L-Kanal im Lab zwischen 0 (reines Schwarz) und 100 (reines Weiß) liegen.

In practice sometimes the image processing steps in darktable's modules can lead to values which lie outside of these confined ranges. In fact even the well established color matrices, which convert from RGB to Lab, may sometimes produce pixels with negative L values.

Pixel mit solchen Werten haben angeblich unbegrenzte Farben. Diese Werte könnte man bei jedem Verarbeitungsschritt auf den erlaubten Bereich beschneiden (d.h. beschränken). Es hat sich jedoch herausgestellt, dass es bevorzugt wird und weniger anfällig für Artefakte ist, unbegrenzten Farben nicht zu beschneiden, sondern sie wie alle anderen Farbdaten zu behandeln.

Da wir für alle Verarbeitungsschritte Gleitkommaarithmetik verwenden, können unbegrenzte Werte wie jeder andere Wert weitergegeben werden, bis das finale Farbkonvertierungsmodul sicherstellt, dass sie innerhalb des gewählten Ausgabefarbraums in die sinnvollste Farbe übertragen werden. darktable vermeidet dies so weit wie es die zugrundeliegenden Algorithmen erlauben.

3.2.6.6. Mögliche Farbartefakte

Dennoch gibt es einige seltene Situationen, die immer noch zu problematischen Ergebnissen führen können, wenn der Benutzer nichts dagegen unternimmt. Einige Module im Lab-Farbraum, wie z. B. Werte und Monochrom, müssen sich darauf verlassen, dass die L-Kanäle alle Helligkeitsinformationen tragen und die a- und b-Kanäle rein Chroma und Farbton repräsentieren. Unbegrenzte Farben mit negativen L-Werten sind für diese Module besonders problematisch und können zu schwarzen Pixelartefakten führen.

It has been found that highly saturated blue light sources in the image frame are likely candidates for pixels with negative L values. If you are engaged in stage photography you should pay close attention to such lights appearing in images.

Um dieses Problem zu mildern, hat das Modul Eingabefarbprofil (siehe Abschnitt 3.4.1.11, „Eingabefarbprofil“) die Option Gamut beschneiden. Sie ist standardmäßig ausgeschaltet, kann aber aktiviert werden, wenn Sie Artefakte beobachten. Je nach Einstellung werden die Farben auf einen der angebotenen RGB-Gamuts beschränkt. In der Tat werden schwarze Pixel-Artefakte verhindert, was den Verlust der Farbdynamik zur Folge hat. Siehe Abschnitt 3.4.1.11, „Eingabefarbprofil“ für ein Beispiel.