Espace de couleur
Les espaces de couleur (color spaces en anglais) sont des organisations nommées de couleurs pour des modèles de couleur sous-jacents basés sur des coordonnées. Un modèle de couleur définit comment les composants d'une couleur (par exemple, les canaux h
, w
, et b
d'une couleur hwb()
) se rapportent à un espace de couleur. La plupart des espaces de couleur sont des grilles tridimensionnelles ou quadridimensionnelles qui représentent les couleurs. Chaque dimension (ou axe) correspond à un canal différent. Les couleurs peuvent être exprimées dans plusieurs espaces de couleur, et peuvent être transformées d'un espace de couleur à un autre, tout en conservant la même apparence.
Les espaces de couleur catégorisent et définissent des gammes spécifiques de couleurs. Chaque espace de couleur est défini par un modèle mathématique et un ensemble de règles associées. Chaque espace de couleur a un gamut défini, qui fait référence à la gamme spécifique de couleurs qu'il peut représenter. Ces règles permettent une représentation cohérente et reproductible des couleurs sur différents appareils et logiciels.
L'espace de couleur sRGB (rouge, vert et bleu standard) a été créé pour le web, mais nous ne sommes plus limités à cet espace de couleur. Le Module de couleur CSS de niveau 4 spécifie plusieurs espaces de couleur prédéfinis, et le Module de couleur CSS de niveau 5 va plus loin, spécifiant des fonctionnalités pour définir des espaces de couleur personnalisés.
Espaces de couleur nommés
Les espaces de couleur RGB prédéfinis incluent srgb
, srgb-linear
, display-p3
, a98-rgb
, prophoto-rgb
, et rec2020
. Les espaces de couleur CIELAB prédéfinis incluent lab-d50
et lab-d65
. Les espaces de couleur XYZ prédéfinis incluent xyz-d50
, et xyz-d65
(et xyz
, un alias pour xyz-d65
).
Les espaces de couleur sont soit rectangulaires soit polaires (angl.). Les espaces de couleur rectangulaires incluent srgb
, srgb-linear
, display-p3
, a98-rgb
, prophoto-rgb
, rec2020
, lab
, oklab
, xyz-d50
, et xyz-d65
(ou xyz
). Les espaces de couleur polaires incluent hsl
, hwb
, lch
, et oklch
.
Espaces de couleur RGB
RGB est un modèle de couleur qui représente les couleurs comme des mélanges de trois composants sous-jacents — les canaux de couleur rouge, vert et bleu — qui créent diverses teintes lorsqu'ils sont combinés. sRGB, ou « RGB standard », est l'espace de couleur sous-jacent pour les couleurs RGB. sRGB est destiné à codifier la spécification d'affichage des PC et des systèmes d'imagerie basés sur le Web. C'est maintenant généralement l'espace de couleur supposé pour ceux qui n'ont pas de balise ou qui n'ont pas de profil de couleur intégré.
Il existe plusieurs espaces de couleur RGB, comme l'espace de couleur Adobe RGB, qui peuvent représenter un gamut de couleur plus large que l'espace de couleur sRGB. Les coordonnées dans sRGB et Adobe RGB (a98-rgb
) sont différentes. Il existe de nombreuses façons de décrire les composants RGB d'une couleur. En CSS, ils peuvent être représentés comme un entier unique de 24 bits en notation hexadécimale (par exemple, #add8e6
est bleu clair), ou en notation fonctionnelle rgb()
comme trois nombres séparés entre 0 et 255 (par exemple, rgb(46 139.5 87)
).
Les valeurs CSS <color>
dans les espaces de couleur sRGB incluent <hex-color>
, <named-color>
, rgb()
, hsl()
(teinte, saturation, luminosité), et hwb()
(teinte, blancheur, noirceur). Il y a aussi les espaces de couleur srgb
, srgb-linear
, a98-rgb
, et prophoto-rgb
pour la fonction color()
.
L'espace de couleur HSV (teinte, saturation et valeur), et son synonyme HSB (teinte, saturation et luminosité), sont représentés en CSS comme hwb()
. Les couleurs nommées sont simplement des mots-clés mappés à des valeurs hexadécimales spécifiques. La conversion de ces diverses notations de couleur vers sRGB est mathématiquement simple. Notez que currentColor
peut être n'importe quelle couleur — elle n'est pas restreinte à sRGB.
La fonction de couleur rgb()
n'est pas la seule fonction de couleur qui peut représenter l'espace de couleur sRGB. Les systèmes de coordonnées cylindriques comme les modèles de couleur HSL
(teinte-saturation-luminosité) ou HWB
(teinte-blancheur-noirceur) sont également utilisés pour représenter une couleur sRGB sur le web.
- Espace de couleur
srgb
-
L'espace de couleur sRGB, ou « RGB standard », est l'espace de couleur RGB (rouge, vert, bleu) standard. Il a été créé pour être utilisé sur les moniteurs, imprimantes et le Web. C'est l'espace de couleur le plus largement utilisé et il est pris en charge par la plupart des systèmes d'exploitation, programmes logiciels, moniteurs et imprimantes. sRGB est basé sur
r
,g
, etb
, avec des valeurs dans le gamut allant de0
à1
. Le point blanc est D65. - Espace de couleur
srgb-linear
-
L'espace de couleur sRGB à éclairage linéaire prédéfini,
srgb-linear
, est le même quesrgb
sauf que la fonction de transfert est à éclairage linéaire sans codage gamma. L'espace de couleursrgb-linear
accepte les trois valeursr
,g
, etb
comme paramètres numériques, avec des couleurs dans le gamut allant de0
à1
. Le point blanc est D65. - Espace de couleur
display-p3
-
Défini par Apple, l'espace de couleur Display P3 (angl.) combine le gamut de couleur DCI-P3, le point blanc D65 et la courbe gamma sRGB. C'est un espace à large gamut typique des moniteurs à large gamut actuels, permettant des verts et des rouges plus vibrants que le gamut de couleur sRGB. Le
display-p3
est basé surr
,g
, etb
, avec des valeurs dans le gamut allant de0
à1
. Le point blanc est D65. - Espace de couleur
a98-rgb
-
a98-rgb
est l'espace de couleur Adobe® 1998 RGB conçu pour représenter toutes les couleurs CMYK en RGB. Environ 50% des couleurs visibles spécifiées par l'espace de couleur CIELab peuvent être atteintes, englobant plus de teintes cyan-vert que d'autres espaces de couleur RGB. Les valeursr
,g
, etb
dans le gamut vont de0
à1
. La courbe de transfert est une fonction gamma, proche mais pas exactement 1/2.2. Le point blanc est D65. prophoto-rgb
-
Développé par Kodak, l'espace de couleur
prophoto-rgb
peut représenter toutes les couleurs susceptibles de se produire dans la nature et environ 90% des couleurs CIElab. Les valeursr
,g
, etb
dans le gamut vont de0
à1
. La courbe de transfert est une fonction gamma, avec une valeur de 1/1.8, et une petite portion linéaire près du noir. Le point blanc est D50, le même que celui utilisé par CIELab. rec2020
-
rec2020
est un standard de l'industrie de la diffusion pour les téléviseurs ultra-haute définition 4k et 8k. L'espace à gamut ultra-large est capable de représenter presque toutes les couleurs réelles visibles, au-delà des capacités de la plupart des écrans actuels. La couverture devrait augmenter avec le temps à mesure que les écrans s'améliorent. Les valeursr
,g
, etb
dans le gamut vont de0
à1
. Le point blanc est D65.
Note :
Les espaces RGB cylindriques supplémentaires qui ne sont pas dans la spécification CSS incluent : HSI
(teinte, saturation et intensité), Okhsv
, Okhsl
, HSLuv
, HPLuv
, et Cubehelix
.
Espaces de couleur CIELAB
L'espace de couleur CIELAB (ou CIELab), également appelé L*a*b* (ou Lab* en abrégé), représente toute la gamme de couleurs que les humain·e·s peuvent voir. Cet espace de couleur a été défini par la Commission internationale de l'éclairage (CIE). Il exprime la couleur comme trois valeurs : L* pour la luminosité perceptuelle, et a* et b* pour les quatre couleurs uniques de la vision humaine : rouge, vert, bleu et jaune.
Lab est un système de coordonnées rectangulaires, avec un axe central de luminosité L
. Les valeurs positives le long de l'axe a
sont un rouge pourpre tandis que les valeurs négatives sont le complément : vert. Les valeurs positives le long de l'axe b
sont jaunes et les négatives sont bleues/violettes. Les couleurs désaturées ont de petites valeurs pour a
et b
avec des valeurs absolues plus grandes étant plus saturées.
Les fonctions de couleur CIELab incluent lab()
(luminosité, axe a, axe b) et lch()
(luminosité, chroma, teinte) ainsi que oklab()
et oklch()
. Les valeurs de luminosité sont les mêmes, mais lch()
et oklch
sont des systèmes de coordonnées polaires, cylindriques, qui utilisent des coordonnées polaires C
(chroma) et H
(teinte) plutôt que des axes.
Note :
La teinte et la luminosité dans lch()
et oklch
sont différentes des valeurs de même nom dans hsl()
ou d'autres espaces de couleur sRGB.
Les espaces de couleur CIELab, y compris Lab, LCH, Oklab et OkLCh, sont des espaces de couleur indépendants de l'appareil.
- Espace de couleur
lab-d50
-
Exprime la couleur comme
L
dans une plage de0
à100
, eta
etb
avec une plage de-125
à125
. Les axesa
etb
ne sont pas liés par ces valeurs de plage, qui sont des références pour définir les entrées et sorties de pourcentage en relation avec l'espace de couleurDisplay P3
. Le point blanc est D50. - Espace de couleur
lab-d65
-
Cet espace de couleur est le même que
lab-d50
, sauf que le point blanc est D65. - Espace de couleur
oklab
-
Similaire à
lab-d65
, mais la plage pourL
est0
à1
, eta
etb
vont de-0.4
à0.4
.
Espaces de couleur XYZ
Bien que les combinaisons de rouge, vert et bleu fonctionnent bien pour représenter les couleurs à l'écran, sRGB ne correspond pas directement à la façon dont les humain·e·s perçoivent la couleur. Créés par la Commission internationale de l'éclairage (CIE) en 1931, les espaces de couleur CIE 1931 XYZ (ou XYZ en abrégé) sont les premiers liens quantitatifs définis entre les distributions de longueurs d'onde dans le spectre visible électromagnétique et les couleurs perçues dans la vision humaine.
Les personnes avec une vision normale ont trois types de cellules coniques qui détectent la lumière, ayant des pics de sensibilité spectrale à différentes longueurs d'onde. Les paramètres CIE X, Y et Z correspondent aux niveaux de stimuli des trois types de cellules coniques qui, en principe, décrivent chaque couleur visible. Le canal Y
représente la luminance d'une couleur. Le canal Z
reflète la quantité de bleu dans la couleur mais n'est pas le même que le B
en RGB. L'axe X
est orthogonal aux axes Y et Z du système de coordonnées 3D de couleur XYZ.
- Espaces de couleur
xyz
etxyz-d65
-
L'identifiant
xyz
est un synonyme pour l'espace de couleurxyz-d65
. Les axes ne sont pas limités à une plage de0
à1
car l'espace de couleur n'est pas lié à cette plage ; ces valeurs ne sont utilisées que comme points de référence pour définir les entrées et sorties de pourcentage. Le point blanc est D65. - Espace de couleur
xyz-d50
-
xyz-d50
est le même quexyz-d65
sauf qu'il utilise D50 comme point blanc.
Voir aussi
- La fonctionnalité
@media
color-gamut
- Type de donnée CSS :
<color>
- Espace de couleur sRGB (angl.)
- Espace de couleur CIELAB sur Wikipédia
- Espace de couleur CIE 1931 sur Wikipédia
- Espace de couleur Oklab (angl.)