darktable page lede image
darktable page lede image

Gestion de la couleur

3.2.6. Gestion de la couleur

darktable utilise un flux de travail géré en mode pleine couleur :

  • Les spécifications de couleur en entrée sont extraites des profils ICC intégrés ou fournis par l'utilisateur ou, alternativement, – dans le cas de fichiers RAW – d'une bibliothèque de matrices de couleurs spécifiques à chaque appareil photo.

  • Pour un rendu fidèle des couleurs à l'écran, darktable lit automatiquement le profil d'affichage de votre écran (s'il est correctement configuré). Les configurations multi-écrans sont prises en charge à condition qu'un service système comme colord soit installé et convenablement configuré pour informer darktable du profil correct du moniteur.

  • Les fichiers de sortie peuvent être encodés dans l'un des profils intégrés de darktable, comme sRVB, Adobe, ProPhoto, Rec. 2020, Rec. 709, dans d'autres espaces colorimétriques RVB standard , ou dans un espace colorimétrique fourni par l'utilisateur sous forme de profil ICC.

3.2.6.1. Profil d'affichage

Pour que darktable rende fidèlement les couleurs à l'écran il faut qu’il puisse trouver le profil d'affichage correct de votre moniteur. En général, cela nécessite que votre moniteur soit correctement calibré et profilé, et que ce profil soit correctement installé sur votre système. darktable interroge le service xatom de votre serveur d’affichage X ainsi que le service système colord (s'il est disponible) pour obtenir le bon profil. Si nécessaire vous pouvez forcer une méthode spécifique dans la section divers des préférences (voir Section 8.10, « Divers »).

Pour étudier la configuration de votre profil d'affichage, vous pouvez appeler l'exécutable darktable-cmstest (sous Linux uniquement) qui affiche des informations utiles comme le nom du profil du moniteur et qui vous indique si le système est correctement configuré (voir Section 1.1.6, « Exécutable darktable-cmstest »).

Dans de rares cas il vous faudra sélectionner manuellement le profil d'affichage. Ceci est possible dans les boîtes de dialogue d'option épreuvage et vérification du gamut de la vue chambre noire (voir Section 3.3.11.5, « Épreuvage » et Section 3.3.11.6, « Vérification du gamut ») et dans la boîte de dialogue profil d'affichage de la vue table lumineuse (voir Section 2.1, « Présentation générale »).

3.2.6.2. Méthode de rendu

darktable peut effectuer un rendu des couleurs soit avec son algorithme interne soit en utilisant la bibliothèque externe LittleCMS2. La méthode interne de darktable est plus rapide d'un ordre de grandeur que la méthode externe. L'option externe vous laisse le choix du mode de rendu et peut offrir dans certains cas une précision légèrement plus élevée.

Un paramètre de configuration « toujours utiliser LittleCMS 2 pour le profil couleur de sortie »dans la section traitement des préférences (voir Section 8.6, « Traitement ») définit quelle méthode est utilisée. Notez, cependant, que si le profil ICC donné est basé LUT, ou contient à la fois LUT et une matrice, darktable utilisera LittleCMS 2 pour le rendu des couleurs quelle que soit la valeur de ce paramètre de configuration.

3.2.6.3. Mode de rendu

Si le rendu avec LittleCMS2 est activé (voir Section 3.2.6.2, « Méthode de rendu ») vous pouvez définir la manière dont sont gérées les couleurs hors gamut lors des conversions entre espaces colorimétriques. Une boîte de sélection dans le panneau exportation (voir Section 2.3.14, « Exportation de la sélection »), dans le module profil de couleur de sortie (voir Section 3.4.1.2, « Profil de couleur de sortie ») et dans l'option épreuvage vous donne le choix entre les modes de rendu suivants :

perceptuel Adapté aux images car il préserve la position relative des couleurs. C'est habituellement le meilleur choix.
colorométrie relative les couleurs hors gamut sont converties en des couleurs ayant la même clarté mais de saturation différente. Les autres couleurs restent non modifiées.
saturation La saturation est conservée mais la clarté est légèrement modifiée.
colorimétrie absolue conserve le point blanc.

3.2.6.4. Les espaces colorimétriques de darktable

Les images d'entrée de darktable sont soit des fichiers RVB (comme JPEG ou TIFF), soit des fichiers RAW d'un boîtier – tous les deux représentent les couleurs par une combinaison de rouge, de vert et de bleu. La plupart du traitement d'image est réalisé dans un grand "espace de travail' RVB, avec certains modules (pour la plupart anciens) fonctionnant en interne dans l'espace colorimétrique CIELAB. La sortie finale du pipeline de traitement de l'image est dans un espace RVB, mis en forme soit pour l'écran du moniteur soit pour le fichier de sortie.

Ce processus implique que le pipeline graphique a deux étapes de conversion : profil de couleur d'entrée et profil de couleur de sortie. Il y a de plus l'étape de dématriçage pour les images RAW durant laquelle les couleurs de chaque pixel sont reconstruites par interpolation.

La position de chaque module dans le pipeline graphique vous indique dans quel espace colorimétrique il se situe :

jusqu’à dématriçage   L’image est au format RAW avec seulement des couleurs latentes. Chaque pixel contient des informations de clarté et de couleur pour uniquement une couleur de base. Veuillez noter que certains des modules de cette partie peuvent aussi agir sur des images d’entrée non-RAW, au format RVB, avec des informations complètes concernant les trois canaux de couleur.
entre dématriçage et profil de couleur d'entrée   L’image est au format RVB dans l’espace colorimétrique de l’appareil photo spécifique ou du fichier d’entrée.
entre profil de couleur d'entrée et profil de couleur de sortie   L’image est dans l'espace colorimétrique défini par le profil de travail sélectionné (par défaut RVB Rec2020). Comme darktable traite les images à l’aide de tampons de 4x32 bits en virgule flottante, nous pouvons gérer de grands espaces colorimétriques sans risque d’effets de bandes ou de ruptures de tons.
après profil de couleur de sortie   L’image est au format RVB défini par l’écran sélectionné ou le profil ICC de sortie.

3.2.6.5. Couleurs non bornées

Théoriquement les composantes individuelles des données de couleur sont confinées entre certaines valeurs minimales et maximales. Par exemple, en RVB, l'intensité d'un canal de couleur rouge, vert ou bleu peut prendre n'importe quelle valeur dans la plage comprise entre 0% et 100% (ou entre 0.0 et 1.0). De même le canal L dans l'espace Lab peut prendre toute valeur entre 0 (noir pur) et 100 (blanc pur).

Dans la pratique, les étapes de traitement de l'image par les modules de darktable peuvent conduire à des valeurs en dehors de ces plages confinées. En fait, même des matrices de couleur bien constituées, qui convertissent de RVB en Lab, peuvent parfois produire des valeurs de L négatives pour certains pixels.

Des pixels avec ce type de valeurs sont dits avoir « des couleurs non bornées ». À chaque étape du processus, on peut resserrer (c'est à dire confiner) ces valeurs dans la plage autorisée. Cependant, on a trouvé éminemment préférable et moins sujet à artefacts de ne pas resserrer ces couleurs non bornées mais de les traiter comme toutes les autres données de couleur.

Dans darktable il n'existe aucune obligation technique de resserrage ; dû au fait que nous utilisons l’arithmétique en virgule flottante pour toutes les étapes du traitement, les valeurs non bornées peuvent être transmises comme toute autre valeur, jusqu'à ce que le module final de conversion de couleur s'assure qu'elles sont transférées dans l'espace colorimétrique de sortie en une couleur la plus raisonnable possible. C'est pourquoi darktable évite le resserrage aussi longtemps que les algorithmes sous-jacents le permettent.

3.2.6.6. Possibles artefacts de couleur

Il y a quelques situations non fréquentes qui, sans l'intervention de l'utilisateur, conduisent encore à des résultats problématiques. Quelques modules travaillant dans l'espace colorimétrique Lab, comme niveaux et monochrome, doivent prendre en compte le fait que le canal L transporte toutes les informations de clarté et que les canaux a et b représentent complètement la chromaticité et la teinte. Les couleurs non bornées ayant une valeur négative de L sont particulièrement problématiques pour ces modules et peuvent conduire à des artefacts du pixel noir.

On a trouvé que les sources de lumière bleue très saturée apparaissant dans le cadre d'une image sont de bonnes candidates à la génération de pixels ayant une valeur négative de L. Si vous faites de la photographie de spectacle, vous devriez faire très attention à ces lumières apparaissant dans les images.

Afin d'atténuer ce problème le module profil de couleur d'entrée (voir Section 3.4.1.11, « Profil de couleur d’entrée ») possède une option troncature du gamut. Elle est désactivée par défaut mais peut être activée si vous constatez des artefacts. Selon la configuration les couleurs restent confinées dans l'un des gamuts RVB disponibles. En fait les artefacts du pixel noir sont évités au prix d'une certaine perte de la dynamique de couleur. Voyez la Section 3.4.1.11, « Profil de couleur d’entrée » pour un exemple.