Théorie des couleurs – Numérique Vs Argentique
#couleur #LUT #cinema #argentique #emulsion #spektrafilm
Couper l’info, direct au travaill… [[#Installation rapide (macOS)]]
Pourquoi?
1. La réponse spectrale n’est pas RGB
Un capteur numérique lit la lumière en trois canaux (Rouge, Vert, Bleu) avec des filtres de Bayer. Le film argentique, lui, a trois couches d’émulsion chimique, chacune sensible à une bande spectrale, mais ces bandes se chevauchent de façon complexe et non linéaire.
Résultat : deux couleurs qui semblent identiques à un capteur numérique peuvent se révéler différentes sur film, parce que le film “voit” des nuances spectrales que le RGB simplifié ne distingue pas.
2. Les coupleurs de couleur
Pendant le développement chimique, les couches de colorants ne fonctionnent pas indépendamment. Des molécules appelées coupleurs interagissent entre elles :
- Les masking couplers donnent la couleur orange caractéristique des négatifs couleur non développés. Ils corrigent les interférences entre couches et augmentent la saturation.
- Les inhibitor couplers diffusent localement et accentuent les contrastes fins, donnant cette impression de “piqué” organique.
→ C’est exactement ce que [[#Spektrafilm]] modélise.
3. Le grain
Le grain argentique n’est pas du bruit numérique. C’est la distribution aléatoire de cristaux d’halogénure d’argent qui ont capté des photons. Ce grain a une texture organique, corrélée à la luminosité (plus visible dans les demi-teintes), et sa taille varie selon le film stock.
Le bruit numérique est uniforme et aléatoire. Le grain argentique est structuré et “beau”.
4. L’halation
Quand une source lumineuse très vive frappe le film, la lumière pénètre la couche d’émulsion, atteint la base du film, et rebondit — éclairant légèrement les bords de la source lumineuse d’une couronne rouge-orange. C’est l‘halation.
Sur le digital : ça n’existe pas nativement. Les LUT et plugins de simulation le recréent artificiellement.
5. La compression des hautes lumières
Le film “brûle” progressivement vers le blanc — il y a une zone de transition douce. Le digital clippe brutalement : une valeur de 255 est 255, il n’y a rien au-delà. C’est pourquoi les images numériques surexposées semblent “électroniques” et les photos argentiques surexposées restent souvent belles.
Spektrafilm
spektrafilm (par Andrea Volpato, chercheur au KTH Stockholm) un outil open source de simulation physiquement basée du film photographique argentique. Contrairement aux plugins qui imitent l’apparence du film par des ajustements empiriques (“ça ressemble à du Portra”), spektrafilm part des données spectrales publiées par les fabricants (Kodak, Fujifilm) et reconstruit le processus chimique de A à Z.
C’est un projet GPLv3 — tout travail dérivé doit rester open source.
Comment ça fonctionne
- Entrée — une image RAW de caméra (linéaire, scene-referred)
- Négatif virtuel — projection de la lumière sur une émulsion simulée, avec des sensibilités spectrales réelles par couche (rouge, vert, bleu)
- Développement chimique — application des courbes densité/exposition, simulation des coupleurs (masking, inhibitor), du grain stochastique, de l’halation
- Tirage papier virtuel — projection du négatif sur un papier photo (ex. Kodak Portra Endura) avec un agrandisseur à filtres dichroïques
- Scan virtuel — la lumière réfléchie par le tirage est “captée” par un scanner simulé
- Export — image finale ou LUT
RAW → [Négatif argentique virtuel] → [Développement + coupleurs]
→ [Tirage papier] → [Scan] → Image / LUT
Profils disponibles
Spektrafilm utilise des données de fiches techniques officielles. Parmi les profils modélisés :
- Kodak Portra 400 (négatif couleur)
- Kodak Portra Endura (papier d’impression)
- D’autres stocks Kodak et Fujifilm (en développement)
Interface GUI
Spektrafilm inclut une interface graphique napari qui permet d’ajuster interactivement :
- L’exposition du négatif
- La force et la taille du grain
- L’halation (intensité, couleur par canal)
- Les filtres de l’agrandisseur (équilibre chaud/froid du tirage)
- La diffusion et la netteté du scanner
Liens
- Repo principal : github.com/andreavolpato/spektrafilm
- Branche dev : github.com/andreavolpato/spektrafilm/tree/dev
- Plugin OFX (DaVinci Resolve, Metal-accelerated) : github.com/chaert-s/spektrafilm-ofx
- Discussion technique : discuss.pixls.us — Spectral film simulations from scratch
- Projet lié (LUTs depuis fiches techniques, plus simple) : github.com/JanLohse/spectral_film_lut
Installation rapide (macOS)
uvx --python 3.13 --from git+https://github.com/andreavolpato/spektrafilm.git spektrafilm
Ou pour un usage permanent :
uv tool install --python 3.13 git+https://github.com/andreavolpato/spektrafilm.git
spektrafilm # lance la GUI
Références
- Digital Color Management, Giorgianni & Madden, 2e éd., Wiley 2008
- The Reproduction of Color, Hunt, 6e éd., Wiley 2004
- discuss.pixls.us — Spectral film simulations from scratch
- github.com/andreavolpato/spektrafilm
- Les Look-Up-Tables