L’outil d’exploration de gradients colorés, déjà présenté ici, vient d’être amélioré par l’ajout d’un nouveau mode de calcul des couleurs intermédiaires.
Cet outil procède par interpolation entre deux couleurs définies selon le système des composantes de teinte, saturation et luminosité, assez simple à saisir et utilisé dans un grand nombre de logiciels de conception graphique. La première version utilisait une interpolation directe entre les deux couleurs, c’est à dire que les composantes des couleurs intermédiaires sont une simple proportion de la différence entre les deux couleurs extrêmes.
Par exemple, dans un gradient du jaune au rouge, la couleur du milieu du gradient est définie par les composantes de la couleur de départ plus la moitié de la différence avec la couleur d’arrivée. Pour la teinte, entre un jaune 60 et un rouge 0, la couleur du milieu du gradient aurait eu un orangé de teinte 30.
L’outil offre en outre la possibilité de choisir la forme de la progression : linéaire ou courbe, pour renforcer les différences entre couleurs successives, plutôt au début ou plutôt à la fin du gradient.
Cependant, cette méthode de calcul des couleurs intermédiaires, basée sur les composantes, ne tient pas compte des particularité de la perception humaine des couleurs, qui n’est pas homogène sur les teintes, la saturation et la luminosité. Par exemple, les couleurs sombres, bleutées et peu saturées sont beaucoup moins perceptibles que ce qu’on pourrait penser. (Cf. les ouvrages de S. Kosslyn ou C. Ware dans la bibliographie, pour une présentation claire de ces différences, ainsi que cette page du site du centre de recherches Ames de la NASA).
L’espace colorimétrique CIE L*u*v, norme mise au point en 1976 par la CIE possède la caractéristique d’être mieux adapté à la perception humaine, les couleurs y sont plus uniformément réparties. Les relations entre les composantes deux couleurs y sont linéaires. C’est donc un système dans lequel le calcul de la différence entre deux couleurs sera adapté à notre technique d’exploration des gradients colorés. (Cf. cette page de comparaison de gradients par Mats Mattson ou la très utile série de posts sur le blog Elegant Figures de Rob Simmon).
Le résultat de ce mode de calcul montre des gradients dont la progression diffère sur le plan de la saturation, cette composante est moins fortement mise en œuvre qu’avec le mode précédent :
Calcul HSV :
Calcul CIE Luv :
La progression colorée est donc moins saturée, elle correspond mieux à des différences de perception visuelle égale d’une couleur à l’autre.
Il est possible de combiner ce mode de calcul du gradient avec des progressions courbes des composantes, pour renforcer les différences entre couleurs.
G. Aisch propose avec Chroma.js une bibliothèques de fonctions très intéressante de ce point de vue, que l’on tentera d’utiliser dans les prochaines versions de l’outil pour bénéficier notamment de la correction de la luminosité dans les gradients.