Forum général.hors-sujets De la gestion de couleurs

Post√©¬†par¬† (site web personnel) . Licence CC¬†By‚ÄĎSA.
3
27
avr.
2023

Suite à la dépêche sur la nouvelle version de GIMP, je m'interroge un peu sur le sujet de la gestion de couleurs. D'après ce que je comprends de ce sujet un brin complexe, un profil de couleurs est un jeu de données relatif à un appareil de capture d'image (appareil photo, scanner) ou de production d'image (moniteur, projecteur et écran, imprimante).

Pour un appareil d'acquisition, √ßa doit d√©crire exactement ce qu'il renvoie comme donn√©es RVB quand on lui donne des couleurs coordonn√©es dans un espace standard (sRGB, Adobe¬†?). Par exemple, pour caricaturer¬†: ¬ę¬†lorsqu'on donne du rouge vermillon √† mon scanner, il indiquent qu'il a vu du rouge carmin¬†¬Ľ. Du coup, filtrer les donn√©es avec un profil de couleur doit permettre de compenser et de les convertir en donn√©es repr√©sentant correctement la r√©alit√© dans un espace de couleur standard.

Pour un appareil de sortie, ça doit décrire ce que l'appareil produit comme couleurs, mesurées dans un espace standard (sRGB, Adobe ?), quand on lui donne des couleurs CMJN ou RVB données en entrée.

Et donc, si je comprends bien, tout ce bordel n'a l'air n√©cessaire que parce que les fabricants de mat√©riels sont infoutus de fournir des appareils qui acqui√®rent ou affichent les couleurs de fa√ßon fid√®le. Pour un scanner par exemple, j'imagine sans probl√®me un appareil qui a √©t√© √©talonn√© en usine pour que, quand on lui donne un papier couvert de sRGB(42, 12, 51), renvoie √† l'erreur de mesure pr√®s des donn√©es o√Ļ tous les points valent exactement √ßa. Pareil pour une imprimante, j'imagine bien une machine √©talonn√©e d'avance pour que, quand on lui donne un aplat sRGB(42, 12, 51) (oui, du RGB, pas du CMJN, le fait d'utiliser quatre couleurs c'est son affaire, pas celle de l'utilisateur¬†!), crache une feuille avec exactement √ßa dessus.

Je sais que c'est plus compliqu√© que √ßa, en particulier parce que les diff√©rents p√©riph√©riques sont capables d'acqu√©rir ou de sortir des couleurs dans des gamuts plus ou moins √©tendus, et qu'il y a donc un probl√®me √©vident de saturation qui se pose aux limites de leurs capacit√©s. Il y a diff√©rentes fa√ßons de g√©rer √ßa, mais de la m√™me fa√ßon, ce genre de r√©glage aurait plut√īt sa place dans des options de ces appareils, non¬†?

  • # Fonctions non bijectives

    Post√©¬†par¬† (site web personnel) . √Čvalu√©¬†√†¬†3.

    Il est vraisemblables que les transformations opérées ne soient pas injectives et ne puissent être inversées de manière exacte. Le fait que ce soit des fonctions diophantiennes n’aidera pas non plus. Non ?

    Sinon, et malgré de nombreuses explications lues çà et là sur la toile, je n’ai jamais totalement intégré toutes ces histoires de profils colorimétriques, calibration, etc.

    ¬ę IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT ¬Ľ ‚ÄĒ Odes ‚ÄĒ Horace

    • [^] # Re: Fonctions non bijectives

      Post√©¬†par¬† (site web personnel, Mastodon) . √Čvalu√©¬†√†¬†7.

      Les transformations entre la plupart des modèles de couleur sont bien bijectives. De même que les transformations entre espaces de couleur (si on travaille en flottant). Il s'agit de bête calcul de matrice 3×3 dans un sens, et son inverse dans l'autre.

      Vous remarquerez d'ailleurs que tous ces modèles ont 3 axes, ce n'est pas un hasard. Les recherches ont simplement montré que l'on peut reproduire l'ensemble des couleurs avec 3 primaires. Le "jeu" est donc simplement de choisir des primaires/axes appropriées et c'est la raison principale pour laquelle il existe divers modèles et divers espaces.

      Il y eut ainsi le moment o√Ļ on a essay√© de faire des mod√®les plus proches de "comment l'humain per√ßoit les couleurs", ce qui a donn√© les HSV et HSL. Mais on s'est rendu compte que ces mod√®les n'√©taient pas si bons math√©matiquement (m√™me s'ils restent utilis√©s et sont int√©ressants, notamment quelques outils colorim√©triques dans GIMP se basent sur ces mod√®les, en terme d'UX).
      Les gens ont alors cherch√© √† voir les couleurs en 2D, ce qui a donn√© le mod√®le xyY, qui permet le fameux diagramme en fer √† cheval o√Ļ on repr√©sente les espaces de couleurs, en ignorant l'axe Y. En effet dans ce mod√®le, on repr√©sente enti√®rement les teintes (c'est √† dire la perception des couleurs telles qu'on les nomme) sur un plan avec les axes xy, et l'axe Y ne repr√©sente que la luminance sans impacter la perception de teinte. On peut ainsi s'imaginer les "variations" d'une m√™me couleur o√Ļ on ne change que la luminance sur l'axe perpendiculaire au papier/√† l'√©cran. Ce mod√®le a d'ailleurs quelques propri√©t√©s int√©ressantes, comme le fait que tout m√©lange de 2 couleurs se trouve sur le segment entre les 2 points. C'est pourquoi on arrive √† repr√©senter tout espace de couleur comme un triangle sur le plan 2D xy.
      Mais ce type de modèle a aussi des problèmes, par exemple la non-uniformité perceptuelle (certaines couleurs très proches sur ce modèle ont l'air très différentes alors que sur d'autres zones, des couleurs éloignées ont l'air identiques). Les gens ont alors essayé de faire des modèles perceptuellement uniformes (ou presque), ce qui a donné les CIELAB et surtout CIELUV.

      Et ainsi de suite. Mais le fait est qu'hormis la création de modèle pour satisfaire des buts/usages particuliers, les couleurs sont entièrement et très aisément transformables d'un modèle à l'autre.

      La raison pour laquelle il pourra y avoir une très légère différence du résultat dans un A/R entre 2 modèles serait l'imprécision mathématique d'un processeur. Mais bon, si on ne fait qu'un A/R, la perte est probablement trop minime pour s'en préoccuper (ce serait moins le cas si on code ça sur 8-bit, ce pourquoi notamment il est conseillé de travailler en flottant de nos jours pour le travail graphique). Hormis ce point de limitation technique, si, mathématiquement les transformations sont théoriquement bijectives, sans perte, hormis si on décidait d'écrêter en dehors de [0; 1], c'est à dire hors du gamut d'un espace de couleur. Sauf que justement l'un des autres grands avantages du travail en flottant est qu'on évite d'écrêter lors d'étapes intermédiaires permettant réellement de travailler presque sans perte, et en plus très simplement (calcul de multiplication de matrice basique, niveau lycée).

      Ensuite quand je disais dans mon paragraphe d'intro que c'est vrai pour "la plupart des mod√®les de couleur", c'est parce que certains mod√®les sont bas√©s sur des logiques physiques diff√©rentes. Je parle de CMYK. Un passage RGBūüĒĄCMYK n'est effectivement pas bijectif (il n'est pas impossible de tomber sur des valeurs assez diff√©rentes lors d'un A/R entre les 2 mod√®les).
      Et sans compter les "couleurs" de type "couleurs m√©talliques" ou "couleurs fluorescentes", etc. Bien s√Ľr, selon une th√©orie de couleur pure, on ne consid√©rerait peut-√™tre pas cela comme une couleur, mais un humain consid√©rera bien un bleu et un bleu m√©tal comme 2 couleurs diff√©rentes (m√™me si √ßa pourrait √™tre consid√©r√© exactement le m√™me bleu selon d'autres crit√®res). Et l√† m√™me en CMYK, on ne les repr√©sente pas. En g√©n√©ral, c'est l√† o√Ļ on utilise les "spot colors" qui sont encore un autre mod√®le, en g√©n√©ral sur une base de catalogues.

      Mais hormis ce type de transformation et autres exceptions particuli√®res, les transformations entre la plupart des autres mod√®les sont bien bijectives et se font par de tr√®s simples op√©rations math√©matiques. ūüėĄ

      Ces derniers mois, j'ai donn√© des conf√©rences sur le traitement d'image et de mani√®re g√©n√©rale sur les sciences des couleurs dans une √©cole d'ing√©nieur des Mines (Saint √Čtienne) et dans un IUT (Valence). Bien s√Ľr, dans le temps d'une conf√©rence (2H, bien qu'aux Mines, on a aussi eu des ateliers, donc ce fut m√™me un s√©minaire d'une journ√©e compl√®te avec conf + atelier sur le traitement d'image avec GEGL), ce n'est qu'un survol tr√®s rapide des nombreux concepts. Quiconque croit pouvoir comprendre la probl√©matique de la couleur en informatique en quelques heures se m√©prend totalement. Cela fait des ann√©es que je travaille en plein dedans et je d√©couvre encore des choses, il m'arrive encore de finalement comprendre des trucs (alors que je n'avais m√™me pas r√©alis√© que je n'avais pas compris avant!), etc. D'ailleurs puisque j'ai √©crit ce commentaire presque de t√™te, il n'est pas impossible que quelques erreurs s'y soient gliss√©es. Cela ne fait que d√©montrer d'autant plus la complexit√© du sujet (un "classique" quand je lis un texte sur la th√©orie de la couleur est de comprendre sur le coup et de me dire "ah bah oui", puis d'avoir compl√®tement perdu la logique une semaine apr√®s, si je ne l'ai pas relu ou appliqu√© dans du code entretemps).

      Quand on regarde l'historique des logiciels de graphisme, on se rend d'ailleurs compte que l'ensemble de l'industrie a fait erreurs sur erreurs pendant des décennies sur le sujet de la couleur et essaie de les réparer progressivement (parfois en faisant de nouvelles erreurs ironiquement!).
      Je parle bien de gros noms de l'industrie qui ont multiplié des bourdes sur les dernières décennies (et encore très récemment; ce ne sont pas forcément toutes de vieilles histoires).
      Et en recherche c'est pareil, les chercheurs ont l'air de se tirer la bourre. Quand on discute avec certains ou qu'on lit certains textes de référence, il n'est pas rare que ça commence en gros par "tout le monde a tort, sauf moi!" Et nous, on navigue dedans.

      Donc oui, c'est pas facile. Quiconque est intéressé par une conf sur ce sujet dans une université/école/entreprise peut me contacter d'ailleurs. Maintenant que j'ai commencé à en faire quelques unes, je me dis que c'est un sujet intéressant à expliquer et discuter. Donc je suis partant.

      Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

      • [^] # Re: Fonctions non bijectives

        Post√©¬†par¬† (Mastodon) . √Čvalu√©¬†√†¬†2.

        atelier sur le traitement d'image avec GEGL

        Et on pourrait avoir un aperçu de cet atelier ?

        • [^] # Re: Fonctions non bijectives

          Post√©¬†par¬† (site web personnel, Mastodon) . √Čvalu√©¬†√†¬†8. Derni√®re modification le 09 mai 2023 √† 23:11.

          C'√©tait un atelier o√Ļ:

          • J'explique comment fonctionnent les filtres, notamment en tant que parfois simples graphes d'operations GEGL. Il peut ainsi y avoir des op√©rations de base qui sont cod√©s en C (mais mon atelier ne rentre pas l√†-dedans). √Ä partir de l√†, on peut cr√©er d'autres op√©rations en reliant des op√©rations existantes.
          • Le matin, apr√®s la conf√©rence o√Ļ j'ai surtout survol√© √©norm√©ment de sujets th√©oriques sur la couleur et le traitement d'image (l'id√©e √©tant de donner un aper√ßu du sujet et donner envie d'en savoir/comprendre plus; c'est pas comme si en 2H, on peut vraiment expliquer ce que beaucoup ne comprennent pas compl√®tement apr√®s des ann√©es √† travailler dessus!), on a eu un premier atelier o√Ļ j'ai montr√© quelques usages d'effets, notamment en cumulant plusieurs effets. Que ce soit des trucs marrants comme juste "faire un sabre laser" √† des trucs qui font plus s√©rieux comme impl√©menter de la d√©tection de contours en faisant une simple diff√©rence de deux flous gaussiens. Ce qui existe d√©j√† car c'est un usage classique; et l'effet s'appelle √©tonnamment (ou non! ūüėú) "difference of gaussians", sauf que dans le cadre de l'atelier, je le "r√©impl√©mente" tr√®s simplement en appliquant les √©tapes une par une. Dans GIMP, comme un utilisateur normal, parce que je pense que m√™me pour un d√©veloppeur, il est important de voir comment les utilisateurs travaillent r√©ellement pour faire de bons choix (et ne pas voir que l'aspect "code"). Puis on a boug√© vers l'outil de "graphe GEGL" o√Ļ on peut cr√©er des effets en cr√©ant des graphes avec une syntaxe textuelle. C'est un super outil pour tester des graphes d'effets tr√®s rapidement sans avoir √† rentrer dans du code pur et dur d√®s le d√©but.
          • L'apr√®s-midi, on a fait un peu de code en cr√©ant des plug-ins pour GIMP en Python 3 (j'ai fait expr√®s de choisir Python pour ne pas avoir √† se farcir des probl√®mes de compilation; On veut pas transformer √ßa en cours sur le C ou les probl√®mes de build!). Ce n'√©tait pas des plug-ins tr√®s complexes, ni forc√©ment pour faire des choses extraordinaires, l'id√©e √©tait de montrer une logique incr√©mentale de "comment on modifie une image". Sur un premier plug-in, on a simplement it√©r√© sur chaque pixel du buffer d'un calque. Sur un second, je rajoute une difficult√© en montrant que le premier plug-in "casse" si on a un canal alpha (opacit√©). Puis je passe progressivement √† des transformations par graphes d'op√©rations, d'abord avec une, puis plusieurs, puis en utilisant non plus un seul mais plusieurs calques en entr√©e dans le graphe, etc. L'id√©e est de complexifier progressivement et de montrer que c'est finalement assez simple. Il faut juste piger la logique de ce traitement d'image par graphe, comme un flux d'op√©rations par lequel passe un (ou des) buffer(s) en entr√©e puis on r√©cup√®re un buffer en sortie. √áa d√©mystifie aussi beaucoup ce travail de traitement d'images (qui finalement est une des bases de l'informatique de nos jours, puisqu'on met des interfaces graphiques partout). On m√™le √† cela quelques pi√®ges int√©ressants qui montrent que les concepts de mod√®les et d'espaces de couleur restent toujours en arri√®re plan de ce type de travail. Un exemple tr√®s simple est une simple "inversion" des couleurs. Faire le choix de travailler en lin√©aire ou non donnera un rendu compl√®tement diff√©rent (il n'y a pas de "bon choix", √ßa d√©pend vraiment de ce qu'on veut).

          En gros, c'est ce genre de trucs. C'√©tait la premi√®re fois que je donnais un tel s√©minaire et √ßa s'est tr√®s bien pass√©, donc je suis plut√īt content de moi. Je pense que c'est une bonne introduction au monde du traitement d'image. Et ce, m√™me si on fait le choix de continuer sans GIMP ni GEGL ensuite. Tout cela reste des concepts et des logiques de traitement d'image classiques que l'on retrouvera dans beaucoup d'autres logiciels/outils/biblioth√®ques graphiques. :-)

          Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

  • # Limites acceptables

    Post√©¬†par¬† . √Čvalu√©¬†√†¬†5. Derni√®re modification le 28 avril 2023 √† 08:24.

    Mon message est plut√īt th√©orique, sur les principes, avec probablement quelques erreurs ou approximations.

    Au départ il y a quelques approximations avec les couleurs que l'on a considéré comme supportables :

    • primo on peut restituer toutes les couleurs avec un triplet, c'est vrai mais il faut qu'une (je crois de m√©moire) composante au moins ait √† un momment des valeurs n√©gatives. Donc l' espace couleur le plus courant sRGB s'inscrit dans le diagramme des couleurs sans pouvoir les repr√©senter toutes, c'est un peu mieux avec le AdobeRGB. L'espace kodak Prophoto lui couvre bien plus de couleurs gr√Ęce √† l'utilisation de couleurs irr√©elles.

    • deuxio si on utilise pas de profil, on reste en sRGB et on dit adieu aux couleurs qui ont √©t√© acquises par le scanner ou appareil photo, qui auraient pu √™tre restitu√©es par l'ecran ou l'imprimante mais qui ne rentrent pas dans le sRGB, il en reste quand m√™me beaucoup, l'utilisation du AdobeRVB am√©liore un peu.

    Si on utilise un profil ou en ouvrant avec Gimp une image qui a un profil se pose le problème de la conversion, en perceptuel (par défaut) en cas de couleurs hors gamut, la conversion va décaler toutes les couleurs pour bien restituer les effets de nuances, en colorimétrie absolue les couleurs dans le gamut seront justes les couleurs hors gamut seront clippées faisant des aplats de couleur sur les zones saturées. Les deux modes de rendu ne sont pas reversibles. Il y a quatre modes de rendu tous ont leur défauts.

    Il ne faut pas exagérer ces problèmes, les couleurs hors gamut sont trés saturées, il y a des traitements de photos qui massacrent bien plus les couleurs. Mais c'est vrai que les imprimantes qui n'ont pas le même gamut pourraient imprimer mieux et pour ceux qui veulent s'approcher d'avantage de la justesse colorimétrique, il y a l'étalonnage avec un logiciel comme argyllcms pour l'appareil photo, le scanner, l'imprimante avec une mire colorimétrique.

    Argyll cms est un peu compliqu√©, pour les appareils de saisie photo/scanner j'avais utilis√© plut√īt le logiciel coca bas√© dessus qui devrait fonctionner avec wine :
    https://www.hugorodriguez.com/calibracion/coca_web/coca_page.html

    combiné avec une photo de test du même modèle d'appareil photo de la mire colorchecker (retaillé), et j'avais obtenu des résultats probants, les couleurs semblaient plus naturelles, et le profil est fait une fois pour toutes, je prennais une des options de profil la plus simple, je n'ai pas constaté d'améliorations significatives avec les profils de haute qualité.

    Mais je n'ai pas √©t√© plus loin que la curiosit√©, ni n'ai achet√© de mire colorchecker pour calibrer mes appareils, ni n'ai continu√© avec la calibration du scanner ou de l'imprimante, il y a aussi des sondes pour calibrer les √©crans, d'o√Ļ le titre limites acceptables, c'est √† chacun de les fixer, les fabricants en fixent une on peut aller plus loin ou corriger les d√©rives couleurs d'un appareil avec ces outils.

    • [^] # Re: Limites acceptables

      Post√©¬†par¬† . √Čvalu√©¬†√†¬†5.

      Un petit supplément sur les profils, lors de la création avec argyll cms ou le logiciel coca on a le choix entre les profils à matrice et les profils à table.

      Un profil à matrice c'est une matrice 3x3 (neuf chiffres) qui permet de calculer un coefficient pour chaque conversion. C'est celui qui est utilisé par le logiciel de développement d'images brutes dcraw. 3 valeur par canal et c'est tout.

      Un profil à table lut, va lui lister plus de valeurs par canal, c'est bien plus précis, même avec le réglage de qualité bas ou moyen.

      Si on a été jusque là dans l'étalonnage autant prendre le profil à table LUT, même appliqué sur la mire colorchecker il y a des différences observables logiquement le profil à table est plus juste.

      Pour ce qui est des imprimantes, sans mettre les mains dans le cambouis, le fabricant peut fournir le ou les profils, des fois il est avec le pilote un fichier .icc ou .icm (les deux extensions sont normalement interchangeables), certains utilisateurs en ont créé et les mettent à disposition sur le net, c'est aussi variable suivant le papier utilisé.

      Gimp a cette fonction de simuler l'impression si on a le profil d'imprimante pour visualiser les couleurs hors gamut de l'imprimante.

      Bref ce sujet est une mine de complexité si on l'aborde dans l'ensemble, j'espère ne pas avoir fait trop d'approximation.

  • # Un syst√®me imparfait ne peut pas avoir un rendu parfait

    Post√©¬†par¬† . √Čvalu√©¬†√†¬†4.

    Du coup, filtrer les données avec un profil de couleur doit permettre de compenser et de les convertir en données représentant correctement la réalité dans un espace de couleur standard.

    Justement, le rendu des couleurs ne peut pas être conforme à la réalité parce qu'il part dès le début du principe de représenter un mélange complexe de longueurs d'onde par une intensité relative de 3 ou 4 couleurs primaires. "Représenter correctement la réalité" n'a pas de sens; si tu prends en photo un objet marron, tu n'as pas de capteur de marron dans l'appareil photo; tu n'as pas de LED marron sur ton écran, et tu n'as pas d'encre marron dans ton imprimante; tout le processus repose donc sur le fait que nos yeux sont pourris et qu'ils ne savent pas distinguer une couleur d'un mélange de couleurs. L'objectif n'est donc pas d'être fidèle à la réalité, mais de jouer de manière suffisamment convaincante avec l'imperfection de notre système visuel pour nous donner l'impression que la couleur est proche de l'originale, ce qui n'est pas du tout le cas.

    D'ailleurs, nos yeux sont tous différents, et il semble peu probable d'arriver à un rendu qui soit convainquant pour tout le monde en même temps.

    (oui, du RGB, pas du CMJN, le fait d'utiliser quatre couleurs c'est son affaire, pas celle de l'utilisateur )

    Pas possible, l'overlap entre les yeux, le RGB, et le CMJN est seulement partiel.

    https://www.grapheine.com/cdn-cgi/image/width=2280,height=1410,fit=crop,quality=85,format=auto,onerror=redirect,metadata=none/wp-content/uploads/2021/09/gamut-rgb-cmyk-cmjn-rvb-1.jpg

    • [^] # Re: Un syst√®me imparfait ne peut pas avoir un rendu parfait

      Post√©¬†par¬† . √Čvalu√©¬†√†¬†2. Derni√®re modification le 28 avril 2023 √† 17:50.

      Le graphique en fer à cheval est très bien, faut situer le point blanc, complètement désaturé au milieu et les valeurs les plus saturées (comportant le moins de blanc) en bordure.

      On voit bien que c'est sur l'axe bleu-vert qu'il y a le plus de dégats pour le sRGB et même si cela ne se voit pas trop une imprimante basique 3 couleurs + le noir n'étant pas une couleur, sera plus à l'aise pour imprimer du cyan, magenta ou jaune qui ne sera pas dans le srgb, c'est là qu'intervient le profil de l'imprimante qui va "traduire" les couleurs au risque de les fausser d'autant plus que l'espace de départ est petit. Même remarque pour les imprimantes déstinées à la photo qui ont beaucoup plus de cartouches couleurs et un gamut plus large.

      Ce graphique représente les couleurs visibles par longueur d'onde, il n'y a pas de marron qui est composé de rouge et de vert. Le marron peut être saturé et sortir du sRGB par une de ses composantes, idem pour les autres couleurs composées.

      Bref toutes ces explications en vue de comprendre pourquoi telle photo ou tel scan ne rend pas bien à l'écran ou s'imprime mal. Si le jeu en vaut la chandelle on peut améliorer les choses avec un profil le faire soi-même avec argyll ou quelquefois il y en a sur le net.

      • [^] # Re: Un syst√®me imparfait ne peut pas avoir un rendu parfait

        Post√©¬†par¬† . √Čvalu√©¬†√†¬†3.

        Ce graphique représente les couleurs visibles par longueur d'onde, il n'y a pas de marron qui est composé de rouge et de vert. Le marron peut être saturé et sortir du sRGB par une de ses composantes, idem pour les autres couleurs composées.

        Si je comprends bien le graphique (j'aurais peut-√™tre d√Ľ mettre le lien vers celui de Wikip√©dia, qui est plus pr√©cis: https://upload.wikimedia.org/wikipedia/commons/thumb/b/ba/PlanckianLocus.png/303px-PlanckianLocus.png ), les couleurs pures ne sont que sur la bordure sup√©rieure du fer √† cheval. Toutes les autres sont des m√©langes entre plusieurs longueurs d'onde. Et on pourrait rajouter un axe de d√©saturation dans la profondeur, pour aller des couleurs compl√®tement satur√©es jusqu'au noir.

        Du coup, pour r√©sumer, l'objectif de la calibration est de faire en sorte que les √©crans et les imprimantes co√Įncident sur le centre du graphe, l√† o√Ļ ils ont la capacit√© de donner les m√™mes couleurs. En dehors c'est de toutes mani√®res impossible‚Ķ

    • [^] # Re: Un syst√®me imparfait ne peut pas avoir un rendu parfait

      Post√©¬†par¬† (site web personnel, Mastodon) . √Čvalu√©¬†√†¬†3.

      "Représenter correctement la réalité" n'a pas de sens;

      En fait tout va d√©pendre de ce qu'en entend par ¬ę¬†r√©alit√©¬†¬Ľ ‚Ķet on cherche √† capter et rendre fid√®lement cette d√©finition. Dit comme √ßa, je sais que c'est confus, mais c'est juste pour rappeler qu'il faut se m√©fier des mots ¬ę¬†r√©alit√©¬†¬Ľ et ¬ę¬†sens¬†¬Ľ pos√©s sans sans avoir pos√© leurs d√©finitions (all√©gorie de la caverne‚Ķ) ‚Ķbien que je sais qu'il est sous-entendu qu'on parle de la r√©alit√© visuelle de l'esp√®ce humaine (la r√©alit√© des esp√®ces canines ou des abeilles par exemple sont bien diff√©rentes.)

      tout le processus repose donc sur le fait que nos yeux sont pourris et qu'ils ne savent pas distinguer une couleur d'un mélange de couleurs.

      Dans ma vision des choses (d√©so pour le jeu de mots √† propos), il n'existe pas vraiment de ¬ę¬†couleur isol√©e¬†¬Ľ et on ne per√ßoit que des m√©langes : les longueurs d'ondes qui nous parviennent ensemble.¬†;-) Marron est une convention sociale pour d√©signer une gamme de sensations (au sens de r√©sultat de perception des ondes lumineuses.)

      Du coup,

      le rendu des couleurs ne peut pas être conforme à la réalité parce qu'il part dès le début du principe de représenter un mélange complexe de longueurs d'onde par une intensité relative de 3 ou 4 couleurs primaires.

      Ces visions virtuelles singent celles des primates avec leurs r√©cepteurs c√īniques¬†;D Pourtant, il manque quelque chose‚Ķ

      (oui, du RGB, pas du CMJN, le fait d'utiliser quatre couleurs c'est son affaire, pas celle de l'utilisateur )

      On ne prend pas en compte la perception de l'intensit√© par les r√©cepteurs quasi cylindriques¬†; il faudrait plut√īt utiliser du TSL/TSV car RVB n'est pas l'affaire de l'usager non plus (les professionnels de l'informatique ont souvent ce biais‚Ķ)

      P.S. les dispositifs d'entrée trichent autant que les yeux …pour le plaisir des yeux, ce qui m'a rappelé l'article suivant
      https://zestedesavoir.com/articles/3218/votre-appareil-photo-vous-ment-mais-le-contraire-serait-bien-embetant/

      L'objectif n'est donc pas d'être fidèle à la réalité, mais de jouer de manière suffisamment convaincante avec l'imperfection de notre système visuel pour nous donner l'impression que la couleur est proche de l'originale, ce qui n'est pas du tout le cas.

      ‚ÄúIt is seldom that liberty of any kind is lost all at once.‚ÄĚ ‚Äē David Hume

  • # Petite r√©ponse

    Post√©¬†par¬† (site web personnel, Mastodon) . √Čvalu√©¬†√†¬†9.

    un profil de couleurs est un jeu de données relatif à un appareil de capture d'image (appareil photo, scanner) ou de production d'image (moniteur, projecteur et écran, imprimante).

    Oui. C'est surtout le choix de ton système de coordonnées en fait. En gros, le profile indique les primaires (l'axe et la valeur du 1.0), définit le point blanc et le point noir, et aussi la fonction de transformation entre une valeur de ton système et une luminance typiquement.

    Et donc, si je comprends bien, tout ce bordel n'a l'air nécessaire que parce que les fabricants de matériels sont infoutus de fournir des appareils qui acquièrent ou affichent les couleurs de façon fidèle.

    Tu peux le d√©crire ainsi. Mais si c'√©tait si facile de produire des appareils qui affichent des couleurs exactement selon un mod√®le th√©orique, on l'aurait d√©j√† fait. Je crois que c'est une vision trop classique de l'industrie o√Ļ on s'imagine qu'on a un contr√īle parfait du monde mat√©riel. Ben la r√©alit√© est que non. On sait effectivement cr√©er des petites diodes qui font de la lumi√®re, mais on n'en est pas encore √† parfaitement contr√īler leur rendu. D'autant plus que selon le mat√©riel utilis√©, le fournisseur, les al√©as du mat√©riel, et j'en passe, 2 √©crans du m√™me mod√®le de 2 s√©ries diff√©rentes seront diff√©rents. Que dis-je! 2 √©crans de la m√™me s√©rie de productions seront diff√©rents!

    Puis il y a ce qu'on appelle le vieillissement (oui le matériel vieillit aussi et donc change).

    Et la lumi√®re ambiante! √áa va aussi impacter grandement ta perception de la couleur! Les gens qui font par exemple du "color grading" pour le cin√©ma vont travailler dans des salles sans fen√™tres (sinon ils devraient refaire la calibration absolument tout le temps), avec des murs "gris milieu" (18% de luminance, puisque c'est √† peu pr√®s ‚ÄĒ bien s√Ľr il y a des d√©saccords mais √ßa reste en g√©n√©ral autour de cette valeur ‚ÄĒ la valeur qu'on va consid√©rer comme √©tant perceptuellement le gris le plus au milieu entre le blanc et le noir). Parfait pour la d√©pression! ūüėā Tu peux chercher sur le web des trucs genre "color grading room at home"; de nos jours, on trouve plein de blogs et d'articles o√Ļ on explique comment reproduire √ßa chez soi, pour les gens qui veulent vraiment un environnement "pro" chez soi pour le travail de la couleur‚Ķ et l√† tu vois que √ßa s'arr√™te absolument pas sur ton ordi/√©cran/imprimante. √áa va bien plus loin.

    En plus, avoir un appareil "étalonné en usine" signifie que tu ne peux pas en changer le moindre paramètre. Or certains aiment avoir son écran très lumineux, d'autres faiblement lumineux. Etc. Ben chaque changement de luminosité que tu fais ainsi invalide entièrement ta calibration (tu dois recalibrer). Ton idéal d'appareil étalonné à vie ne marcherait qu'avec des machines non paramétrables.

    Et puis, qu'est-ce que le blanc? Hein, dis moi? ūüėČ
    Il y a pas mal de r√©ponse √† cela, mais une des r√©ponses pourrait √™tre le m√©lange de l'ensemble des couleurs monochromatiques. Or va cr√©er √ßa avec un √©cran! √Ä la place, on se dit, on met toutes les diodes √† fond (donc 3 couleurs seulement au final) et on a une approximation acceptable, non? Sauf qu'en plus on disait d√©j√† plus haut que l'on ne contr√īle pas le mat√©riel. Et c'est ainsi qu'on se retrouve avec un blanc un peu bleut√© ou un peu orang√©‚Ķ
    Et maintenant imprime ta couleur blanche et met la sur ton mur blanc?! Whaaaa! Ton blanc n'est pas blanc! En fait, il n'est même plus bleuté/orangé. Pourquoi? Ben ton papier déjà, il est de quelle couleur?! Ah bah oui, parce qu'en plus plus haut, quand tu disais:

    on lui donne un papier couvert de sRGB(42, 12, 51)

    Donc tu penses que ton sRGB(42, 12, 51) va donc rendre pareil sur tout papier? Tu penses que si tu l'imprimes sur une feuille blanche ("blanche" ahahah) et une noire (pareil ahahah!), ce sera la même couleur?

    Alors déjà laisse moi corriger une grosse erreur dans ta croyance sur la calibration d'imprimante: on ne calibre pas une imprimante! On calibre… un couple (imprimante, papier)! Ben oui, selon le papier que tu utilises (le modèle, la marque, etc.), tu dois recalibrer. Oups, petit oubli: en fait tu calibres pour le triplet (imprimante, papier, encres)! (ben oui, encres différentes == différentes couleurs, tu peux aussi prendre des compatibles, etc. Et si en plus tu mélanges les cartouches entre 2 fabricants! Tu multiplies les cas!)

    Donc non, ça c'est juste pas possible:

    Pareil pour une imprimante, j'imagine bien une machine étalonnée d'avance pour que, quand on lui donne un aplat sRGB(42, 12, 51) (oui, du RGB, pas du CMJN, le fait d'utiliser quatre couleurs c'est son affaire, pas celle de l'utilisateur !), crache une feuille avec exactement ça dessus.

    Hormis si tu veux que l'usine ach√®te tous les papiers de tous les fabricants du monde, de m√™me toutes les encres du monde, puis calibre l'imprimante avec chacun de ces papiers et encres et fournissent une √©norme base de donn√©es de tous ces profils o√Ļ le client mettrait la r√©f√©rence du papier et des encres pour r√©cup√©rer le profil id√©al. Ajoute √† cela que tu dois refaire cela √† chaque s√©rie de production (comme je disais: variation l√©g√®re du mat√©riel, des fournisseurs, du processus d'usinage qui √©volue ou que sais-je!). Et tu te retrouves avec un truc juste impossible √† faire‚Ķ pour en plus avoir un profil g√©n√©rique qui n'est pas adapt√© exactement √† ton imprimante.

    Mais revenons √† nos moutons: qu'est-ce que le blanc? Puisqu'on a rarement du blanc parfait ‚ÄĒ et encore ce concept existe-t-il m√™me vraiment? ‚ÄĒ le blanc est surtout une vue de l'esprit. Tu vas surtout choisir ce qu'est le blanc. Oui toi. Typiquement, tu vas d√©cider que ton mur est blanc (bon je vais supposer cela, ne pas me prendre au mot et me dire que non, si tu as d√©cid√© de peindre ta chambre en bleu ou autre! ūüėú)! Ben oui, quand t'as achet√© ta peinture, y avait bien √©crit blanc sur le pot de peinture. "Blanc c'est blanc" quoi!
    Donc voilà, tu as décidé que ton mur est blanc. Et c'est là que tu mets une peinture à fond blanc… et tu te rends compte qu'elle jure complètement avec ton mur! Forcément, le peintre a tort: ton mur est blanc, tu l'as lu sur le pot!

    Ajoute √† cela la lumi√®re! Comme la plupart des cas, ta lumi√®re est un peu jaun√Ętre. Donc que se passe-t-il quand ta lumi√®re se refl√®te sur ton mur blanc? Ben ton blanc est un peu jaun√Ętre! Et puis y a la couleur du soleil. Il se trouve que le soleil a une couleur plut√īt jaune (bon le regardez pas trop longtemps! ūüėé). Mais qu'√† cela ne tienne, ton mur est blanc! Tu l'as d√©cid√©. Et pourtant quand tu compareras tes couleurs, tu auras un rendu diff√©rent. Je ne parle m√™me pas juste du blanc, mais bien de toutes les couleurs. Revenons √† nos moutons ūüźĎ blancs‚Ķ enfin non √† nos √©crans, quoi! Et compare la m√™me image sur ton √©cran bien calibr√© avec une impression. Mais quelque chose ne va pas! C'est parce que le point blanc est diff√©rent (possiblement! Y a plein d'autres raisons possibles!). Quand tu regardes dans ton petit monde num√©rique, tu as choisi un point blanc g√©r√© par le profil de ton √©cran, mais dans ton petit monde physique, tu as choisi un point blanc parce que ton cerveau aura d√©cid√© que ton mur est blanc. Or pas de bol, ton mur est pas le m√™me blanc. Et la comparaison fait que tu vois les couleurs diff√©remment!

    La problématique de comparaison des couleurs est une véritable mine d'or pour les illusions d'optiques. J'en montre quelques exemples dans mes confs aussi d'ailleurs. Y a des trucs vraiment marrants. C'est pas pour rien que la perception des couleurs est une science à part entière et un champs de travail énorme depuis plus d'un siècle.

    Enfin bon, c'est donc bien pour cela qu'il y a tout ce foin autour du choix de "quel point blanc choisir pour la calibration de mon √©cran?" Typiquement pour les gens dont l'Ňďuvre sera sur √©cran (cin√©ma, TV‚Ķ), l'industrie s'est plut√īt d√©cid√© pour l'illuminant D65 comme point blanc. Mais ceux qui impriment (photographes, peintres num√©riques, packaging‚Ķ) vont plut√īt viser l'illuminant D50 qu'on va consid√©rer √™tre proche de la lumi√®re du jour vers midi. Certains vont ainsi calibrer leur √©cran avec point blanc en D50 quand d'autres vont le calibrer en D65. Il y a aussi ceux qui vont te dire d'utiliser le "blanc natif" de ton √©cran. De toutes fa√ßons, certains vont conseiller de ne surtout pas comparer les couleurs sur l'√©cran et sur papier c√īte √† c√īte, ce qui permet m√™me de calibrer ton √©cran en D65 comme tout le monde. Ne pas faire de comparaison directe permet √† tes yeux de leur donner le temps de se recalibrer √† chaque fois (oui le cerveau est tr√®s fort! Il se recalibre de lui-m√™me en fonction du blanc choisi). Et ainsi on peut comparer quand m√™me les couleurs, il faut juste ne pas les regarder en m√™me temps!

    Etc. Etc. Etc.

    Quoiqu'il en soit, le coup du "calibré en usine", c'est un bon discours marketing (je dis pas ça au hasard, ce que tu proposes, les constructeurs aiment bien le dire sur leurs modèles d'écran les plus chers justement; ça n'empêche pas les gens de calibrer parce que le discours marketing vaut ce qu'il vaut!) mais comme tu le vois, ça ne veut à peu près rien dire en réalité.

    Je sais que c'est plus compliqué que ça, en particulier parce que les différents périphériques sont capables d'acquérir ou de sortir des couleurs dans des gamuts plus ou moins étendus

    L'histoire du gamut, c'est le truc que beaucoup de gens vont sortir parce qu'ils ne comprennent pas grand chose de plus. Mais dans la vraie vie, pas tout le monde n'a besoin de faire plein d'images avec des couleurs super-pêtantes de partout.

    Le vrai but, c'est surtout d'avoir un standard de représentation des couleurs. Ce qu'on voit sur son écran, on veut voir la même chose sur un autre écran. De même qu'on veut voir la même chose qu'on en imprime. Etc. C'est surtout cela la vraie raison de la gestion des couleurs. On veut pouvoir faire plus ou moins confiance en ce qu'on voit. Beaucoup d'artistes/graphistes passent un temps fou à choisir les couleurs qu'ils veulent. C'est pas pour avoir des couleurs aléatoires au final!

    Et pour ça faut calibrer. Et surtout faut adapter à son environnement et son besoin précis.

    Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.