Module : 3D Colorimetric Film

3D Colorimetric Film (3DCF) est un module de rendu tonal et colorimétrique que j’ai développé dans ma branche expérimentale Libre DT-Lab de darktable. Il est également disponible sous forme de script CTL pour ART.

Le pipeline du module :
  • Extraction de détail par filtre guidé sur la luminance d’origine (pour la réinjection en fin de chaîne)
  • Filet de sécurité pré-pipeline : désaturation en douceur des zones très surexposées, avant la courbe tonale
  • Rec.2020 (adapté D50) → XYZ D50
  • Tone mapping ACES 2.0 SSTS, appliqué uniquement sur la luminance Y
  • Courbe en S BT.1886 + contraste (toe/shoulder paramétriques)
  • Ajustement gamma des tons moyens
  • Mise à l’échelle du ratio de chromaticité : x = ratio · Y
  • Gamut spectral : roll-off de chromaticité en CIE xy, façon pellicule
  • XYZ → RGB de sortie via la matrice de sortie
  • Rotation de teinte Abney + désaturation des hautes lumières
  • Vibrance (saturation qui protège les couleurs déjà saturées)
  • Contraste chromatique (renforcement de saturation des tons moyens, adaptatif selon la luminance)
  • Filet de sécurité de compression de gamut + protection optionnelle du gamut de sortie
  • Réinjection du détail extrait par filtre guidé, avec compensation de gain
  • Mélange de « color look » (11 matrices 3×3)

Dans ART, le script est évalué comme une LUT 64³ échantillonnée en espace PQ, comme les autres scripts du dépôt, une seule fonctionnalité du module n’a pas pu y être reproduite : la récupération de détail dans les hautes lumières (filtre guidé), qui n’est pas transposable en CTL.
Le code source des deux versions est disponible sur GitHub : le module d’origine (3dcf.c dans Libre DT-Lab) et le portage pour ART (3dcf.ctl).

Les 7 curseurs de la courbe tonale

Ils agissent sur la luminosité de l’image. Je propose de commencer par Input exposure et Peak luminance pour caler l’exposition et le point blanc, puis ajustez Contrast, et n’allez chercher Toe/Shoulder que pour affiner les extrêmes. Le graphique des curseurs montre en direct la courbe qui en résulte, utile pour voir où chaque réglage agit.

Input exposure (EV) : décale le « gris moyen (18 %) » de référence. Vers la droite : l’exposition de l’image est augmentée (hautes lumières comprimées plus tôt, ombres remontent). Pratique pour aligner le rendu sur votre exposition de prise de vue, ce n’est pas une simple luminosité, toute la courbe glisse.

Peak luminance (%) : règle la luminosité de référence du point blanc (200 nits par défaut). Vers la droite : point blanc plus haut, la plage de hautes lumières avant saturation s’étend, plus de détail préservé avant que ça clippe. Vers la gauche : point blanc plus bas, ça sature plus vite, effet plus « ciné contrasté ».

Contrast : le contraste global, autour du gris moyen. Vers la droite : ombres plus profondes, hautes plus claires. Vers la gauche : image plus plate, plus douce. (Par défaut la courbe est déjà légèrement en S.)

Contrast pivot : le point autour duquel le contraste se répartit. Vers la droite : les hautes lumières gagnent en séparation, les ombres se resserrent entre elles. Vers la gauche : l’inverse, ombres mieux détaillées, hautes lumières plus tassées.

Shoulder power : symétrique, côté hautes lumières. Vers la droite : roll-off plus doux, moins de blanc cramé. Vers la gauche : les hautes montent plus librement vers le blanc.

Toe power : ne touche que les ombres les plus sombres, sans changer le contraste des tons moyens. Vers la droite : noirs plus denses, plus de punch. Vers la gauche : ombres plus douces, détail préservé tout en bas.

Gamma : luminosité des demi-tons, indépendamment du contraste. Vers la droite : image globalement plus claire ; vers la gauche : plus sombre. Les noirs et les blancs restent fixes.

Aperçu de la courbe tonale (SSTS + contraste + gamma)

SSTS seule SSTS + contraste Courbe complète (+ gamma)
Les curseurs de la section couleur

Ils agissent sur la saturation et l’ambiance colorimétrique de l’image. Commencez par Vibrance pour un ajustement global, puis Chromatic boost seulement si l’image manque encore de peps sans vouloir toucher aux teintes déjà vives. Color look et Look opacity servent à appliquer une ambiance prédéfinie par-dessus ce réglage. Target display est à part : ce n’est pas un effet créatif, mais un réglage de sécurité selon l’écran visé.

Vibrance : sature ou désature l’image en épargnant les couleurs déjà vives. Vers la droite : les couleurs ternes gagnent en intensité, les teintes déjà saturées (carnations, ciel) bougent peu. Vers la gauche : désaturation uniforme, toute l’image tend vers le noir et blanc.

Chromatic boost : un coup de peps supplémentaire, concentré sur les tons moyens et les couleurs les plus discrètes. À 0 : aucun effet. En augmentant : les couleurs ternes des tons moyens se réveillent, les hautes lumières et les teintes déjà vives sont peu affectées, un effet plus doux et plus ciblé que Vibrance.

Color look : une ambiance colorimétrique prédéfinie à choisir dans une liste (portrait, paysage type « nature », ciel bleu, tons chauds doux, cinéma, etc.), plutôt qu’un réglage d’intensité. Chaque choix pousse les couleurs dans une direction différente, à essayer les uns après les autres pour voir ce qui convient à l’image.

Look opacity : dose l’intensité du preset choisi dans Color look. Vers la droite (1 par défaut) : le preset s’applique pleinement. Vers la gauche : on revient progressivement vers le rendu neutre, sans preset.

Target display : indique à quel écran les couleurs doivent rester fidèles, pas un espace de fichier à choisir au hasard. Concerne surtout les couleurs très saturées (verts, cyans, rouges vifs), pas la luminosité. Vers un espace étroit (sRGB) : compression plus forte, couleurs plus sages mais sans mauvaise surprise sur un écran classique. Vers un espace large (Display P3, Rec. 2020) : moins de compression, couleurs plus vives, mais risque de paraître criardes ou de clipper sur un écran plus étroit. En pratique : sRGB pour un écran classique, Display P3 pour un écran large gamut, Rec. 2020 pour la finalisation ou l’export HDR.

Les curseurs de la section des hautes lumières (Highlights)

Ils gèrent ce qui arrive aux couleurs quand une zone de l’image devient très lumineuse, proche du blanc. Réglez d’abord Desaturation threshold et Highlight roll-off ensemble (le seuil définit où ça commence, l’intensité définit combien), puis n’allez chercher Abney rotation que si vous voyez une dominante de teinte étrange dans les très hautes lumières.

Desaturation threshold : le niveau de luminosité à partir duquel les couleurs commencent à perdre en intensité. Vers la droite : seules les zones les plus proches du blanc pur sont concernées, le reste de l’image garde ses couleurs. Vers la gauche : la perte de couleur commence plus tôt, sur des tons déjà moins lumineux.

Highlight roll-off : combien de couleur est retirée une fois ce seuil dépassé, imite la façon dont une pellicule perd sa couleur en tirant vers le blanc plutôt que de clipper avec une dominante marquée. Vers la droite : les hautes lumières s’effacent franchement vers le blanc neutre. Vers la gauche : elles gardent leur couleur plus longtemps, avec un risque de dominante visible tout près du blanc.

Abney rotation : corrige un décalage de teinte propre aux hautes lumières très compressées (un effet connu en science de la couleur : une couleur très saturée qui s’éclaircit change légèrement de teinte à l’œil). À 0 : aucune correction. En bougeant le curseur d’un côté ou de l’autre : la teinte des hautes lumières les plus compressées est repoussée dans un sens ou dans l’autre, à utiliser seulement si vous repérez une teinte qui « sonne faux » dans une zone très lumineuse, sans toucher au reste de l’image.

Les curseurs de la section « gamut »

Ils protègent les couleurs extrêmement saturées (rouge profond, verts très vifs, néons, certaines fleurs) qui risquent de clipper ou de virer brutalement de teinte parce qu’aucun écran ne peut les afficher telles quelles. Ce traitement agit sur la couleur réelle du pixel, avant le choix de l’écran cible fait par ailleurs, réglez Gamut knee d’abord (à partir de quelle saturation on intervient), puis Gamut steepness pour adoucir ou renforcer la transition si elle se voit.

Gamut knee : à partir de quelle saturation la protection se déclenche. Vers la droite : seules les couleurs les plus extrêmes sont concernées, la grande majorité de l’image n’est pas touchée. Vers la gauche : la protection intervient plus tôt, sur des couleurs déjà moins extrêmes.

Gamut steepness : la douceur de la transition une fois la protection déclenchée. Vers la droite : la retenue est plus marquée, plus franche. Vers la gauche : la transition est progressive, sans cassure visible à l’œil.

Retour en haut