couleurs & espaces colorimétriques
Posté : 18 oct. 2012, 13:02
Bonjour,
Je souhaite, à partir d'une couleur hexa donnée, générer une palette de couleurs de la même façon que http://colorschemedesigner.com/
Pour ce faire, j'ai une fonction qui effectue les étapes suivantes :
Concrètement, prenons l'exemple de la couleur rouge. Je souhaite générer sa couleur complémentaire, à l'opposé sur le cercle chromatique.
Ma fonction me renvoie la couleur Cyan (bleu clair), tandis que je souhaite avoir du vert.
L'image suivante résume bien mon problème : ma fonction semble travailler avec le cercle chromatique "B" où effectivement l'opposé du rouge est le cyan.
Moi je souhaiterais travailler avec le cercle chromatique "A", où l'opposé du rouge est le vert.
De façon générale (et subjective) les couleurs de ce cercle chromatique me semblent mieux réparties.

Là je suis un peu perdu, j'ai cru comprendre que le cercle chromatique "A" correspond à l'espace de couleur Cie Lab.
Faut-il donc convertir mon hexa en lab et faire la manip de couleur dessus ?
Pour changer une teinte en hsv c'est simple, il suffit de faire varier $H, mais je je n'ai aucune idée de la façon de faire en lab.
Voilà, si d'autres personnes ont déjà été confrontées au même souci, toute aide est bienvenue.
Je souhaite, à partir d'une couleur hexa donnée, générer une palette de couleurs de la même façon que http://colorschemedesigner.com/
Pour ce faire, j'ai une fonction qui effectue les étapes suivantes :
- * conversion hexa -> rgb -> hsv (teinte-saturation-valeur)
* modification de la teinte (très simple : modifier $h, $h allant de 0 à 1)
* conversion inverse hsv -> rgb -> hexa
Concrètement, prenons l'exemple de la couleur rouge. Je souhaite générer sa couleur complémentaire, à l'opposé sur le cercle chromatique.
Ma fonction me renvoie la couleur Cyan (bleu clair), tandis que je souhaite avoir du vert.
L'image suivante résume bien mon problème : ma fonction semble travailler avec le cercle chromatique "B" où effectivement l'opposé du rouge est le cyan.
Moi je souhaiterais travailler avec le cercle chromatique "A", où l'opposé du rouge est le vert.
De façon générale (et subjective) les couleurs de ce cercle chromatique me semblent mieux réparties.

Là je suis un peu perdu, j'ai cru comprendre que le cercle chromatique "A" correspond à l'espace de couleur Cie Lab.
Faut-il donc convertir mon hexa en lab et faire la manip de couleur dessus ?
Pour changer une teinte en hsv c'est simple, il suffit de faire varier $H, mais je je n'ai aucune idée de la façon de faire en lab.
Voilà, si d'autres personnes ont déjà été confrontées au même souci, toute aide est bienvenue.