Aurélien Pierre

Lectures en théorie de la couleur

Quelles ressources peuvent être trouvées en ligne et dans les bibliothèques pour aider à comprendre un peu de théorie de la couleur ?

Préambule

Qu’est-ce que la théorie de la couleur ?

La théorie de la couleur a 2 aspects :

  • scientifique, lié historiquement à la physique de la lumière, mais à présent d’avantage apparenté à la psychologie, qui essaie de relier les signaux physiques avec des stimuli sensoriels,
  • artistique, qui étudie la sémantique de la couleur (essentiellement culturelle) et comment elle agit pour créer des ombrages crédibles en peinture ou des ambiances dans les photographies et le cinéma.

Il faut mentionner que l’aspect scientifique a été aussi étudié par des artistes (comme Munsell ). La discipline mélange des notions de :

Idées fausses communes

Cette page regroupe la plupart des erreurs et des idées fausses sur Ansel que l’on peut trouver sur internet.

Je dois être un expert / ingénieur pour utiliser Ansel

Mes vidéos  et mes articles contiennent à la fois la partie “quoi faire” et la partie “pourquoi/comment”. Le “pourquoi/comment” est typiquement technique ou même théorique, et sert à justifier le “quoi faire”. Il y a plusieurs raisons pour lesquelles je donne les deux :

Les mathématiques de diffusion ou netteté

Cet article documente les mathématiques actuellement implémentées dans le module diffuse or sharpen d’Ansel, telles qu’on les trouve dans src/iop/diffuse.c, src/common/bspline.h, data/kernels/diffuse.cl et data/kernels/bspline.cl. Il ne s’agit pas d’un guide d’utilisation. C’est une reconstruction du modèle numérique à partir du code source, avec les affirmations scientifiques rattachées aux références citées dans les commentaires du code.1

Résumé

Le module repose sur une décomposition multi-échelle a-trous de l’image à pleine résolution, construite à partir de flous B-spline cardinaux. À chaque échelle, Ansel calcule séparément quatre opérateurs anisotropes du second ordre sur les bandes de basse et de haute fréquence, régularise leur action par une énergie locale de bande haute fréquence normalisée par l’échelle, restreint éventuellement la mise à jour à un masque binaire de retouche, puis reconstruit l’image du grossier vers le fin.2 Les opérateurs spatiaux discrets sont des stencils 3x3 à différences centrées échantillonnés sur la sous-grille a-trous clairsemée de l’échelle courante ; le support physique plus large provient donc du pas $2^s$ de l’échellettes plutôt que d’un noyau d’EDP plus grand.31

Changes in Ansel packages distribution

Development

Target clones

Compiling the software natively on the computer use to improve runtimes on CPU by around 30 %. The reason is the compiler makes specific optimizations for the target hardware on which it is compiled, while pre-built packages have to stay generic and trigger more conservative optimization for the sake of wide support. Note that OpenCL kernels are, anyway, compiled for your particular GPU using your OpenCL driver, so the story is different there.

Color controls finally correct

Développement Design

Introduction

Tools vs. Machines, Crafts vs. Industry

In his book, The Technological Society (1954), Jacques Ellul presents the difference between the pre- and post-industrial revolution as follows:

The pre-industrial era is the reign of the tool and of craftsmanship. The foremost property of tools is to be generic, versatile, and adaptable. It is up to the craftsman to develop his skills to make the tools follow his intent, so the hand will make up for the limitations of the instrument. This concept is still well known to musicians today: you have to practice, learn, try, fail, retry… there are no shortcuts. Ellul emphasizes the idea of parsimony that comes with tools: resources are limited, so your toolset is pretty much defined by what you can afford, carry, master, and build locally. Trends change slowly and are local, because they use local resources and adapt to local needs, and tools follow the same pattern. Tools are heirlooms passed from master to apprentice, from parent to child. They don’t get incompatible or outdated.

Redesigning the lighttable and the mipmap cache

Development Refonte Performance

Between January 2022 and March 2026, Ansel landed 297 non-merge commits regarding the lighttable grid, its thumbnails, and their rendering pipeline and caching. I tried to make do with the scruffy Darktable lighttable code, only degreased, for as long as I could but unfortunately, it was pure technical debt and it was painfully slow.

Indeed, Darktable “manages” the crappiness of its lighttable by reducing its size: the left and right side panels take a lot of display surface, which leaves even less area for the lighttable to repaint. Since Ansel removed the right side panel, merging its content with the left one and the global menu, there was more surface to paint, more CPU work to do, and the terrible design of the lighttable became all the more harmful.

Refonte complète du pipeline

Développement

Depuis que j’ai commencé à utiliser Darktable, vers 2012, j’ai toujours été surpris par la très faible quantité de RAM qu’il utilisait. Les gens pensent qu’il est bon qu’une application utilise la mémoire avec parcimonie, et c’est certainement vrai lorsqu’on parle de votre environnement de bureau. Mais pour un logiciel de production qui fait du rendu pixel lourd sur des images de 12 à 54 mégapixels, cela signifie que les mêmes calculs coûteux sont refaits encore et encore au lieu d’être enregistrés pour être réutilisés plus tard. C’est précisément à cela que sert un cache : éviter des calculs coûteux. Et il devrait utiliser toute la RAM disponible pour cela, parce que calculer gaspille de l’énergie, ce qui a un impact concret si vous travaillez sur batterie. En plus, vous avez payé cette RAM et l’utiliser ne vide pas votre batterie. Le CPU et le GPU, eux…

La fusion d'historique rendue robuste et prévisible

Développement

Mémoires d’un type qui a passé beaucoup trop de temps à nettoyer la merde des autres et à payer pour leurs mauvaises décisions, épisode #trop.

Le copier-coller d’historique et les styles sont des fonctionnalités centrales d’Ansel, et celles qui lui font mériter, ou non, son titre d’« application de workflow ». Mais c’est aussi l’une des choses les plus difficiles à bien faire en interne. Les utilisateurs voient une liste de retouches, mais sous le capot ces retouches dépendent de l’ordre du pipeline, des instances de modules et des masques. Si deux images ont des topologies de pipeline différentes, copier naïvement les retouches peut produire des incohérences.

Réécrire les raccourcis clavier (accélérateurs) à partir de zéro

GUI Utilisabilité

Dans mon billet fondateur Darktable : dans le mur au ralenti, j’ai présenté le désastre qu’a été le nouveau « grand turducken MIDI ». Le but de ce turducken1 était de réécrire le système de raccourcis clavier pour l’étendre aux périphériques MIDI.

À ce jour, je suis encore furieux contre cette entreprise de destruction massive. Voici un récapitulatif des raisons :

  1. il a remplacé en 2021 un système de raccourcis clavier qui était plutôt bon, complet, bien testé, stable et codé en moins de 1 500 lignes (commentaires compris),
  2. …pour ajouter la prise en charge des périphériques MIDI et des manettes PlayStation (!?!)…
  3. …mais dans mon enquête Darktable de 2022, un an après cette nouvelle fonctionnalité, sur 1 251 utilisateurs participants :
    • 81 % des utilisateurs n’avaient pas de périphérique MIDI et n’en prévoyaient pas,
    • 2 % ne savaient même pas ce qu’était un périphérique MIDI,
    • 8 % des utilisateurs avaient un périphérique MIDI mais ne l’utilisaient pas avec Darktable,
    • 6 % envisageaient peut-être d’acheter un périphérique MIDI à l’avenir,
    • 2 % des utilisateurs avaient un périphérique MIDI qu’ils utilisaient réellement avec Darktable,
  4. le code était absolument terrible, en termes de :
    • qualité de code : des instructions if/switch-case illisibles imbriquées sur 4 niveaux, au milieu de fonctions de 1 000 lignes (j’ai publié des extraits d’exemple dans mon article),
    • volume de code :
      • 3 546 lignes de code pour Darktable 4.0,
      • 4 397 lignes de code pour Darktable 5.0,
      • l’augmentation du volume est une conséquence directe des tentatives de correction de bugs dans une architecture qu’on ne peut pas corriger parce que sa complexité produit davantage de complexité. Tout cela vient de la conception, mais résoudre des problèmes créés par la complexité en ajoutant encore plus de complexité n’est pas une solution.
    • complexité du code :
      • complexité cyclomatique  :
        • 1088 pour Darktable 4.0,
        • 1245 pour Darktable 5.0 (détails ),
      • complexité cognitive  :
        • 1885 pour Darktable 4.0,
        • 2098 pour Darktable 5.0 (détails ).
      • c’est de loin la fonctionnalité la plus complexe du logiciel, alors même qu’elle ne traite pas les images. À titre de comparaison, la deuxième fonctionnalité la plus complexe est le décodage des métadonnées EXIF, avec une complexité cognitive de 1348.
  5. il ne décode pas les modificateurs de touches par conception, mais ne traite que les frappes matérielles, ce qui signifie :
    • que l’entrée « 1 » du pavé numérique est décodée en Keypad End,
    • que l’entrée « 1 » d’un clavier AZERTY français est décodée en Shift+&, ou en Shift+" en BÉPO,
    • vous devez donc dupliquer tous vos raccourcis basés sur des chiffres pour chaque manière de saisir un nombre, et vous préparer à ce que la fenêtre de configuration des raccourcis ne contienne aucun chiffre réel dans les combinaisons de touches.
  6. la conception côté utilisateur est absolument affreuse, avec beaucoup trop d’actions et d’émulations à configurer (« effets »), qui ne sont même pas entièrement documentées 4 ans plus tard (qu’est-ce que « ctrl-toggle » ? « right-activate » ?), et la configuration des raccourcis utilise une étrange fenêtre scindée qui n’a aucun sens,
  7. l’implémentation est elle aussi terrible : la fonctionnalité connaît toute l’interface graphique du logiciel, et l’interface graphique du logiciel connaît le code des raccourcis. Il n’y a ici aucune modularité, et modifier quoi que ce soit dans le code des raccourcis peut avoir des effets inattendus et indésirables partout dans le logiciel.2 Il suffit de voir le graphe de dépendances ci-dessous,
  8. plusieurs « raccourcis » (ou assignations MIDI) peuvent être attachés à une même action, ce qui signifie que chaque interaction utilisateur doit parcourir toute la liste des actions disponibles, entraînant une gestion des raccourcis très inefficace, des lags dans l’interface dans certains cas et des faux positifs « combinaison de touches inconnue » dans des cas particuliers.
image
Touches numériques non décodées et étrange découpage de fenêtre entre « action » et « raccourci ».
image

Le graphe de dépendances de src/gui/accelerators.c (le grand turducken MIDI) avant la réécriture. Devinez pourquoi on appelle ça du « code spaghetti  »… Cela montre clairement qu’il existe une dépendance dans les deux sens entre le code des accélérateurs et le reste du code de l’interface. C’est un cauchemar à maintenir.

Bienvenue à Ansel GPT !

Annonce

Après avoir finalement câblé tout le site web et la documentation à un flux de travail de traduction étanche (en utilisant po4a par-dessus Hugo), qui utilise exactement les mêmes outils et logique que l’application Ansel, j’ai eu l’idée de traduire automatiquement les traductions vides, d’abord à partir des fichiers de traduction logicielle, puis via l’API ChatGPT, qui fait un très bon travail pour traduire la syntaxe Markdown.

Travaillant seul, vous ne pouvez pas compter sur la paresse sociale , donc vous devez être astucieux. Vous pouvez consulter la liste des choses que j’ai déjà automatisées en arrière-plan pour Ansel.

Numérisation de négatifs argentiques

Film Negative

Alain Oguse a appris le tirage photographique avec Claudine  et Jean-Pierre Sudre  à la fin des années 1960, et a effectué son début de carrière en photographie commerciale. Après avoir pris sa retraite, il a commencé à chercher des méthodes permettant de retrouver le grain argentique dans les numérisations de négatifs, avec la même netteté et qualité que ce qu’il obtenait en lumière quasi-ponctuelle sous l’agrandisseur, dans les années 1970.

Bienvenue à la documentation développeurs !

Development

En décembre 2019, j’ai demandé à quelqu’un de s’occuper de fournir des packages AppImages  pour Darktable. Le bénéfice évident aurait été de permettre des tests anticipés, avant la sortie, de la part de personnes qui ne peuvent pas construire le code source elles-mêmes, afin de fournir espérons-le des retours précoces et aider à déboguer avant la publication. Cela n’a jamais été une priorité, ce qui signifie qu’il était acceptable d’avoir une ruée avant et après la sortie pour corriger les bugs.

Balance(s) des blancs

Nous savons tous ce qu’est le “blanc”. On peut se représenter une feuille de papier. Nous savons qu’elle est blanche parce que nous l’avons appris. Mais si vous placez la feuille de papier sous un soleil d’été, ou sous un ciel nuageux, ou à la maison équipée d’ampoules domestiques chaudes, ce blanc va changer de couleur. Cela pourrait vous déranger pendant les premières secondes, puis vous oublieriez rapidement : votre cerveau va adapter. Mais (s’)adapter (à) quoi ?

Dépannage des problèmes de couleur

Cela s’appliquera à Darktable en amont comme à Ansel car ils partagent la majeure partie de leur pipeline de couleurs. La procédure suivante vous aidera à résoudre vos problèmes de couleur, qu’il s’agisse d’une apparence incohérente entre l’exportation et l’aperçu, ou entre écran et imprimé, ou entre 2 applications.

Configurer correctement votre bureau

Le problème inhérent de la couleur est qu’elle n’existe que comme une perception, et cette perception est très contextuelle et fluide. Si je prends n’importe quelle nuance de couleur et que je l’affiche sur un fond blanc, gris moyen ou noir, elle n’apparaîtra pas de la même manière, même si un colorimètre confirmerait que c’est exactement la même couleur. J’ai créé une petite animation web pour illustrer cet effet, affichant des tranches du gamut sRGB avec une teinte constante, sur une luminosité de fond définie par l’utilisateur : le livre sRGB de couleur .

Correction du cache de pipeline et des bugs vieux de 10 ans

Development

Récapitulatif des épisodes précédents

  1. Entre 2020 et 2022, Darktable a subi une entreprise de destruction massive, menée par une poignée de types ayant plus de temps libre et de bonne volonté que de vraies compétences,
  2. En 2022, j’ai commencé à remarquer un décalage ennuyeux  entre les interactions GUI avec les curseurs et feedback/ mise à jour de ces curseurs. En l’absence de feedback indiquant que le changement de valeur était enregistré, les utilisateurs pouvaient le changer à nouveau, lançant ainsi des recomputes supplémentaires de pipeline et gelant effectivement leur ordinateur car le GUI stupide n’a jamais dit “je t’ai eu, attends un peu maintenant”.
  3. J’ai découvert que les ordres de recompte de pipelines étaient émis deux fois par clic (une fois sur les événements “bouton enfoncé”, une fois sur les événements “bouton relâché”), et encore une fois pour chaque mouvement de souris, mais aussi que les états GUI étaient mis à jour apparemment après le recomputée de pipeline.
  4. J’ai corrigé cela en réécrivant presque complètement les contrôles GUI personnalisés (lib Bauhaus). Je pensais que la prévention des ordres de recomputation inconsidérés allait résoudre le décalage : ce n’était pas le cas. Ensuite, j’ai découvert que la demande d’une nouvelle recompte de pipeline avant la fin de la précédente attendait que la précédente se termine, malgré un mécanisme d’arrêt mis en œuvre il y a de nombreuses années qui aurait dû fonctionner.
  5. J’ai corrigé cela en mettant en œuvre un mécanisme de bouton d’arrêt sur les pipelines, suivant les commentaires dans le code datant des années 2010 et des fonctions internes qui n’ont peut-être jamais fonctionné. Cela ne fonctionnait pas toujours car l’ordre d’arrêt venait souvent avec un délai notable. Encore une fois, le décalage GUI n’était pas corrigé.

Réécriture de l'outil d'importation

Development Refonte

Ansel hérite de Darktable son infrastructure de base de données : les historiques de modifications non destructifs sont sauvegardés image par image dans une base de données SQLite, avec les métadonnées et autres données définies par l’utilisateur. Pour intégrer de nouvelles images à la base de données, il faut « importer » ces images depuis un disque ou une carte mémoire. C’est à cela que sert l’outil d’importation.

Malheureusement, l’importateur de Darktable est une autre fonctionnalité qui a été massacrée autour de 2020 pour devenir quelque chose de profondément déroutant : un navigateur de fichiers ne ressemblant à aucun navigateur connu jusqu’alors, qui parvient à manquer de fonctions de base (comme Ctrl+F ou un aperçu EXIF) tout en étant encombré d’options inutiles (voir ci-dessous). C’est ainsi que nous perdons beaucoup d’utilisateurs potentiels dès l’étape zéro du flux de travail. Quel bel exemple de ce qu’une « application de workflow » peut faire !

Lexique de la couleur

mindmap
  root((COULEUR))
    modèle d'apparence de couleur
      espace couleur uniforme
        chromaticité
          U, V
          a, b
        luminosité
          L
        delta E
      transformation d'adaptation chromatique
        illuminant
          indice de reproduction des couleurs
          température de couleur
      éclairage ambiant
      luminosité de fond
    dimensions
      Munsell
        teinte
        chroma
        valeur
      système de couleur naturel
        noirceur
        saturation
        teinte
      CIE
        luminosité
        éclat
        saturation
        chroma
        colorimétrie
        teinte
    mesure
      colorimétrie
        trichromie
          capteur
            critère Luther-Ives
            métamérisme
            plage dynamique
            bruit
            mosaïquage
              Bayer
              XTrans
              artefacts en fermeture éclair
          espaces
            rvb(RVB)
              TSF
              TSV
            LMS
              Yrg
            XYZ
              Yxy
                Yuv
                  Ych
            CYM
              CYMK
            primaires
              cellules coniques
              LED
                ITU BT.Rec 709
                ITU BT.Rec 2020
                DCI P3
              encres
      spectrométrie
        spectre lumineux
          longueurs d'onde
          énergie
      photométrie
        luminance
    correction
      profil
        matrice
        table de correspondance
        fonction de transfert
      étalonnage des couleurs
        ASC CDL
        mélangeur de canaux
        courbes
      balance des blancs

Translated from English by : Aurélien Pierre, ChatGPT. In case of conflict, inconsistency or error, the English version shall prevail.

Implémentation du bouton d'arrêt sur le pipeline

Development

J’ai pensé, pendant très longtemps, qu’il y avait un mécanisme de bouton d’arrêt sur le pipeline de pixels. Le cas d’utilisation est le suivant :

  1. vous modifiez un paramètre de module,
  2. les aperçus (celui de la chambre noire central et la vignette dans le panneau de gauche, également utilisé pour l’histogramme et les sélecteurs de couleurs) reconstruisent leur pipeline pour tenir compte de ce changement,
  3. l’un des aperçus finit de se rendre avant l’autre, et le résultat n’est évidemment pas celui que vous vouliez,
  4. vous modifiez à nouveau le paramètre du module, sans attendre la fin de la recomputation.

Dans ce cas, vous souhaitez annuler tous les pipelines actifs car leur résultat ne sera pas utilisé, et commencer immédiatement à tout recalculer avec les nouveaux paramètres. Sauf que Darktable ne fait pas ça, il laisse le pipeline se terminer avant de le redémarrer, et en regardant les commentaires dans le code source, il semble que ce soit une régression assez récente et non le comportement initialement prévu.

Dé-darktable-isation des contrôles GUI

Development

Darktable a sa propre bibliothèque d’objets GUI, pour les curseurs et les comboboxes (alias menus déroulants ou boîtes de sélection), appelée Bauhaus (dans le code source, c’est dans src/bauhaus/bauhaus.c). Bien qu’ils utilisent Gtk en tant que moteur arrière, les objets Bauhaus sont des objets personnalisés. Et comme beaucoup de choses dans Darktable, personnaliser signifie pourri.

En 2022, ‍j’ai remarqué des redessinages parasites et des lenteurs , lors de leur utilisation, conduisant à une expérience utilisateur frustrante : le redessinage des widgets semblait attendre la conclusion des recalculs de la chaîne, ce qui signifiait que les utilisateurs n’étaient pas vraiment sûrs que leur changement de valeur était pris en compte, ce qui pouvait les amener à réessayer, déclenchant un autre cycle de recalcul coûteux, et gelant effectivement leur ordinateur pendant plusieurs minutes frustrantes d’intermédiaires coûteux recalculs de la chaîne.

Changements dans la prise en charge des distributions pour le paquet Linux AppImage

Annonce

Rawspeed (la bibliothèque fournissant les décodeurs pour les fichiers raw des appareils photo) a déprécié le support pour GCC < 12. En conséquence, je ne peux plus construire le AppImage sur Ubuntu 20.04 (en utilisant Github runners) mais je dois le construire sur 22.04.

Cela signifie que toute distribution Linux ayant une libc antérieure à 2.35 ne pourra pas démarrer les nouveaux AppImages à partir d’aujourd’hui. Cela ne devrait pas affecter la plupart des utilisateurs exécutant des distributions mises à jour en 2021 ou plus récemment. Ubuntu 20.04 et d’autres distributions LTS/stables anciennes (Debian stable) pourraient être affectées.

Impression

Le flux de travail relatif à la scène promet une retouche indépendante du medium de sortie. Il va typiquement produire une image encodée en sRGB sur 8 bits, c’est à dire des valeurs codées entre 0 et 255. Pour simplifier, nous allons nous limiter au cas 8 bits dans la suite. Les concepts demeurent en 16 bits, la différence est que la plage d’encodage va de 0 à 65535, ce qui est un détail.

Explication de la refonte de groupes de modules d'Ansel

Design

Si vous venez de Darktable, vous vous attendez peut-être à cela dans la chambre noire :

image

tandis qu’Ansel vous offre ceci :

image

Ce n’est pas un accident, et il est temps d’expliquer pourquoi, et pourquoi cela ne sera pas étendu avec des options de personnalisation.

Nouvelles options de build pour Linux

Development

J’ai découvert par accident que le script de build Linux utilisait un package build, ce qui signifiait que les optimisations CPU étaient limitées à des optimisations génériques afin de produire des binaires portables pouvant être installés sur n’importe quelle plateforme x86-64. Par ‘utiliser’, je veux dire que le build package n’était pas explicitement désactivé, donc il était activé par défaut.

De toute façon, cela est maintenant désactivé par défaut, puisque les packages réels (.exe et .appimage) ne sont pas construits via ce script, qui est principalement destiné à aider les utilisateurs finaux. Pour revenir à l’ancien comportement, vous devrez exécuter :

Journal de développement #2 : présentation de Chantal

Development

2022 a été si mauvaise en termes de courriels indésirables et de bruit que j’ai commencé la Secrétaire Virtuelle , un cadre Python pour écrire des filtres de courriels intelligents en croisant des informations provenant de plusieurs sources pour deviner ce que sont les courriels entrants et s’ils sont importants/urgents ou non. Quand je parle de courriels indésirables, il s’agit aussi des notifications Github, des pings sur pixls.us (heureusement, j’ai fermé mon compte sur ce forum stupide), YouTube et des courriels directs de personnes espérant obtenir de l’aide en privé.

Édition de base

Voici comment démarrer avec la retouche dans Ansel, en passant par les étapes les plus basiques qui vous serviront fidèlement dans la plupart des cas.

Cette video a été enregistrée sur Darktable 3, mais les mêmes modules et principes s’appliquent à Ansel.


Translated from English by : Aurélien Pierre, ChatGPT. In case of conflict, inconsistency or error, the English version shall prevail.

Virage monochrome

Film Monochrome

Cet article montre comment effectuer un ton monochrome sur des images numériques dans Ansel, afin d’émuler le rendu des couleurs des développements type cyanotype, platinotype, sépia et virage partiel.

Etape 0 : préparation globale

Réglez l’exposition globale ainsi que l’exposition relative du blanc et du noir dans filmique RVB comme pour toute autre opération d’édition. Voir retouche de base. Voici notre image de base de Glenn Butcher :

Journal de développement

Development

Cela fait environ 3 mois que j’ai rebrandé “R&Ddarktable” (ce que personne ne semble comprendre), en “Ansel”, puis acheté le nom de domaine et créé le site web de zéro avec Hugo (je n’avais jamais programmé en Golang auparavant, mais il s’agit principalement de code de modèle).

Il me reste alors un total de 70 heures pour faire fonctionner les builds packaуs nocturnes pour Windows et Linux pour une livraison continue, ce que Darktоrque n’a jamais bien fais (« tu peux compléter toi-même, ce n’est pas difficile »), seulement pour voir le traqueur de bugs exploser après la sortie (rien de mieux que de chaîner le sprint pré-sortie avec un sprint post-sortie pour réduire votre espérance de vie.)

Darktable : s'écraser contre le mur au ralenti

Qu’est-ce qui se passe quand une bande de photographes amateurs, devenus développeurs amateurs, rejoints par une poignée de développeurs back-end qui développent de la librairie pour développeurs, se décide à travailler sans méthode ni structure sur un logiciel métier pour utilisateur final dont le cœur de compétence (colorimétrie et psychophysique) se situe quelque part entre un BTS photo et un BAC+5 en sciences appliquées, tout en se promettant de sortir 2 versions par an sans gestion de projet ? Tout ça bien sûr dans un projet logiciel dont les fondateurs et la première génération de développeurs sont passés à autre chose ?

Le flux de travail relatif à la scène

Science Des Couleurs Pipeline

Dans cet article, vous apprendrez ce qu’est le flux de travail relatif à la scène, comment Ansel l’utilise et en quoi il profite au traitement d’image numérique en général.

Introduction

Le flux de travail relatif à la scène est la colonne vertébrale du pipeline d’imagerie d’Ansel. Il s’agit d’une logique de travail qui vient de l’industrie du cinéma car c’est la seule façon d’obtenir un compositing (aussi nommé fusion alpha) de calques graphiques robuste et sans raccords visibles. Pour les photographes, c’est surtout pour les scènes à haute plage dynamique (HDR) (sujets en contre-jour, couchers de soleil, etc.) qu’il montre son intérêt.

Search

You can also ask Chantal, the AI search engine.