# Profil ICC

Un profil ICC est un fichier numérique d'un format particulier (extensions .icc et .icm) décrivant la manière dont un périphérique informatique restitue les couleurs. Ce type de fichier a été créé par l'International Color Consortium (ICC) pour permettre aux professionnels de la publication assistée par ordinateur de maîtriser les couleurs tout au long de la chaîne graphique (gestion de la couleur).

## Contenu

Un profil ICC contient les données permettant de convertir les couleurs depuis un espace de couleur source (généralement lié à un périphérique) vers un espace de couleur indépendant (L*a*b* ou XYZ, espaces normalisés couvrant le spectre visible par l'œil humain). Il fait le lien entre les coordonnées des couleurs dans l'espace colorimétrique source et les coordonnées des couleurs dans l'espace colorimétrique indépendant.
Un profil ICC peut caractériser :
* un écran, un scanner, un appareil photographique numérique. Dans ce cas, il s'agira d'un profil RVB ;
* une imprimante, un traceur, une presse offset. Dans ce cas, il s'agira généralement d'un profil CMJN. Pour être complet, un profil ICC devrait contenir autant de canaux de couleur que de pigments utilisés à l'impression, mais peu de chaînes logicielles permettent la création ou l'utilisation de profils de plus de quatre canaux.

## Applications

Comme le profil ICC permet de savoir quelles couleurs sont atteintes par le périphérique et de quelle manière, il est possible :
* d'optimiser le rendu colorimétrique du périphérique ;
* de calculer et de visualiser son gamut ;
* de simuler le rendu colorimétrique du périphérique sur un autre en vue d'une épreuve contractuelle. Un cas très courant est la simulation d'une presse sur un traceur ;
* d'une manière générale, d'harmoniser les rendus colorimétriques d'une chaîne graphique entre scanner, écran, traceur et presse.

## Raison d'être

Pour bien comprendre à quoi servent ces profils de couleur, il faut relever un malentendu fréquent concernant les espaces génériques de type RVB (rouge, vert et bleu) ou CMJN (cyan, magenta, jaune et noir) : une valeur RVB (ou CMJN) ne définit pas une couleur. Par exemple, pour afficher des couleurs sur un écran, on y envoie des pixels avec des valeurs RVB. Une même valeur RVB, par exemple (R = 255, V = 0, B = 0), envoyée sur deux écrans différents résultera en deux couleurs différentes. Cette valeur RVB représente une couleur rouge, mais ça ne sera pas le même rouge sur les deux écrans. Par contre, l'espace L*a*b* définit la couleur. Ainsi, pour caractériser un écran, on décrit les valeurs RVB à envoyer à l'écran pour afficher une couleur donnée (définie par ses coordonnées L*a*b*). C'est le profil ICC qui remplit ce dernier rôle.
Pour revenir à l'exemple avec deux écrans, si l'on veut transférer une image de l'écran 1 à l'écran 2, il faut transformer les valeurs RVB envoyées à l'écran 1 en valeurs L*a*b*, au moyen du profil ICC de l'écran 1, puis les transformer à nouveau en valeurs RVB à envoyer à l'écran 2, au moyen du profil ICC de l'écran 2. De cette façon, les valeurs RVB des pixels envoyées aux deux écrans ne seront pas identiques mais l'image affichée sera la même dans les deux cas (pour autant que toutes les couleurs soient affichables).

## Création

Pour établir le profil ICC d'un appareil, il faut effectuer son calibrage, c'est-à-dire :
* son étalonnage — réglage de l'appareil dans un état connu et stable — ;
* et sa caractérisation — mesure des défauts de l'appareil.

### Profil ICC de scanner

Pour établir le profil ICC d'un scanner, il faut numériser en RVB avec le scanner une mire dont on connaît la description colorimétrique en L*a*b* (p. ex. une charte IT8.7/2). Le profil ICC du scanner, calculé avec un logiciel approprié, fait donc le lien entre les espaces L*a*b* et RVB.
Dans le cas de profils ICC pour scanner un film, il faut réaliser un profil pour chaque modèle de film. Les grands fabricants peuvent fournir à ce titre une charte sur chacun des films négatifs ou positifs qu'ils fabriquent, auxquels ils adjoignent un fichier de données sur lequel sont enregistrées les valeurs numériques qui devront être associées aux valeurs RVB du scanner lors de la création du profil. Cette opération est nécessaire en raison des différences entre les colorants employés. Leurs plages d'absorption spectrales n'étant pas identiques, chaque film doit être considéré indépendamment.

### Profil ICC d'écran

Pour établir le profil ICC d'un écran, il faut dans un premier temps choisir avec une sonde la luminosité, le contraste, le gamma et la température de couleurs de l'écran (étalonnage), et dans un second temps afficher successivement en RVB des carrés de couleur et mesurer avec la sonde la couleur en L*a*b* de chaque carré (caractérisation). Le profil ICC de l'écran, calculé avec un logiciel approprié, fait donc le lien entre les espaces RVB et L*a*b*.
La sonde utilisée peut être soit un colorimètre analysant la source à travers trois ou quatre filtres, soit un spectrophotomètre prenant une mesure généralement tous les 10 nm sur tout le spectre visible, en utilisant une grille de diffraction. Le spectrophotomètre est ainsi plus précis et fonctionne sans problème avec tous les types d'écran. Les informations recueillies sont transmises à un logiciel (p. ex. Argyll CMS ou LPROF) afin de générer un profil ICC. Bien que rares, certains sites web ont collecté et publient de tels fichiers, classés par marque de périphériques$^,$.

### Profil ICC d'imprimante

Pour établir le profil ICC d'une imprimante, il faut dans un premier temps choisir le papier et l'encre de l'imprimante (étalonnage), et dans un second temps imprimer en CMJN avec l'imprimante une mire (p. ex. une charte IT8.7/3) et mesurer avec un spectrophotomètre les couleurs en L*a*b* de la mire (caractérisation). Le profil ICC de l'imprimante, calculé avec un logiciel approprié, fait donc le lien entre les espaces CMJN et L*a*b*.
Pour un profil de traceur ou de presse, la méthode est identique. Une autre solution possible serait l'étalonnage ICC à l'aide d'un numériseur comme Silverfast l'offre. Pour des résultats professionnels, un spectrophotomètre reste nécessaire.

## Utilisation : simulation pour épreuvage

Lorsque l'on dispose du profil ICC d'une presse et de celui d'un traceur par exemple, il est possible de simuler le rendu colorimétrique de la presse (gamut plus restreint) sur le traceur, alors que celui-ci donnerait théoriquement un bien meilleur rendu. Le but de cette manœuvre est de réaliser un épreuvage contractuel (bon-à-tirer).
Au moment de l'impression depuis un logiciel permettant la gestion des couleurs, comme Adobe Photoshop, le document à imprimer a besoin d'un espace source et d'un espace cible (Imprimer avec aperçu > Gestion des couleurs). Voici comment contraindre le traceur à utiliser uniquement le gamut plus restreint de la presse :
* espace source : cocher Épreuve et sélectionner le profil de la presse ;
* espace cible : sélectionner le profil du traceur.
Puis en cliquant sur Imprimer, les réglages sont enregistrés et envoyés au périphérique d'épreuvage. La simulation est bonne lorsque la sortie traceur est proche de la sortie presse, et constitue un bon-à-tirer fiable.
Sous Linux, il est aussi possible de paramétrer les profils de couleur. Pour cela, il faut se rendre dans les préférences du logiciel, puis dans l'onglet couleur. Il existe aussi une application pour gérer les profils de couleurs qui se nomme Oyranos.

### Fonctionnement

Pour simuler le rendu colorimétrique de la presse sur le traceur, les couleurs d'une image sont transformées dans l'espace CMJN de la presse, puis sont retransformées en couleur L*a*b*. Cela aura pour effet de modifier les couleurs qui ne sont pas imprimables, et d'obtenir une image qui ne contient que des couleurs imprimables par la presse. Puis ces couleurs seront transformées dans l'espace CMJN du traceur, pour y être imprimées. Pour être fidèle, le traceur doit pouvoir imprimer toutes les couleurs imprimables par la presse, d'où la nécessité d'utiliser pour les bons-à-tirer un traceur de meilleure qualité que la presse à simuler.