FreeToGenerate.com

100 % gratuit · sans inscription · tout se passe dans votre navigateur

8

Le sRGB uniforme tire chaque canal au hasard, ce qui ne donne presque jamais une couleur sombre. Le mode perceptuel répartit le lot sur toute la clarté.

Rejette toute couleur trop proche d’une déjà tirée. Pour l’échelle, du noir au blanc il y a 1,00 et du rouge au vert 0,52.

Paire la plus proche
0,102

Aussi disponible en : English · Español · Português · العربية

Générateur de couleurs aléatoires

Tirez des couleurs au hasard en hexadécimal, réparties uniformément sur la clarté plutôt qu’au gré du cube RVB, avec la possibilité de garantir qu’aucune paire n’est trop proche.

Qu’est-ce qu’un générateur de couleurs aléatoires ?

Il choisit des couleurs à votre place. La manière évidente consiste à tirer trois nombres entre 0 et 255 et à appeler cela une couleur, ce que fait à peu près tout générateur. On obtient un tirage uniforme parmi les 16 777 216 couleurs du cube sRGB et, si vous ne voulez qu’une couleur quelconque, cela convient parfaitement.

Cela cesse de convenir dès que vous en voulez un *ensemble* — légende de graphique, couleurs d’étiquettes, jeu d’avatars — car deux problèmes apparaissent qu’une couleur seule ne montre jamais : la répartition n’est pas uniforme pour l’œil, et les couleurs entrent en collision.

Ce générateur propose aussi la version naïve, honnêtement étiquetée, mais échantillonne par défaut uniformément sur la clarté perçue et rejette toute couleur tombant trop près d’une déjà tirée.

Comment utiliser le générateur

  1. Choisissez combien vous en voulez. De une à vingt-quatre. Le lot se retire aussitôt, et le premier est le même à chaque chargement de la page : rien ne bouge pendant votre lecture.
  2. Choisissez l’échantillonnage et l’écart. « Perceptuellement uniforme » répartit le lot sur toute la clarté ; « sRGB uniforme » est le tirage naïf, conservé pour que vous voyiez la différence. L’écart rejette toute couleur plus proche que la distance choisie d’une couleur déjà retenue.
  3. Copiez-en une, ou toutes. Cliquez sur un échantillon pour copier son code hexadécimal, ou emportez le lot entier sous forme de liste ligne par ligne. « Nouvelles couleurs » relance un tirage.

Le sRGB uniforme n’est pas réparti uniformément, et pas dans le sens qu’on croit

Le reproche habituel fait au RVB aléatoire est qu’il donne des couleurs ternes et sombres. Compté exhaustivement sur une grille 64×64×64 du cube — 262 144 couleurs, rangées par dixièmes de clarté perçue — c’est l’inverse. Le dixième le plus sombre contient **20 couleurs**. Non pas 20 %, vingt. Le suivant en compte 950. Ensemble, le cinquième le plus sombre de la plage perceptuelle représente 0,37 % du cube, et la bande la plus fournie est 0,6–0,7, avec 21,66 %.

Une couleur RVB tirée au hasard n’est donc presque jamais sombre. La raison est que la clarté perçue n’est pas linéaire par rapport aux valeurs des canaux : le cube n’atteint les faibles clartés que dans un tout petit coin près du noir, et tout le reste s’entasse dans la moitié haute. Échantillonner 200 000 couleurs de façon naïve laisse 0,00 % dans la bande la plus sombre ; échantillonner uniformément sur la clarté y met 10,06 %, et les dix bandes tombent entre 9,88 % et 10,13 %.

Obtenir cette répartition uniforme demande un peu plus que prévu, et le raccourci évident n’y parvient pas. Tirer uniformément dans une boîte d’un espace perceptuel puis jeter ce qui sort du sRGB rejette 21,8 % des tirages — mais pas uniformément, car le gamut est étroit près du noir et près du blanc. Cela repousse les survivants vers le milieu, précisément le biais que l’échantillonnage perceptuel devait supprimer : mesuré, il n’était que 1,36 fois plus plat que le cube brut. La solution est de choisir d’abord une clarté et une teinte, de calculer combien de couleur cette combinaison précise peut réellement porter, puis de tirer le chroma à l’intérieur de cette limite.

Les palettes aléatoires entrent en collision

Demandez huit couleurs au hasard et il y a 78,0 % de chances que deux d’entre elles soient à moins de 0,1 en Oklab. Avec cinq couleurs, 41,2 % ; avec douze, 97,5 %.

Pour situer cette distance : du noir au blanc il y a 1,000, du rouge au vert 0,520, et deux codes hexadécimaux consécutifs — #808080 et #818181 — sont à 0,0034. Un écart de 0,1 est assez faible pour que deux courbes tracées dans ces couleurs se confondent aisément, ce qui est exactement la situation qu’une légende doit supporter.

Le réglage d’écart règle cela par rejet : on tire un candidat et, s’il est plus proche que le seuil d’une couleur déjà retenue, on le jette et on retire. Le panneau sous les échantillons indique la paire la plus proche du lot obtenu : la garantie se voit au lieu d’être affirmée.

Limites assumées

Un grand écart et un grand nombre ne sont pas toujours compatibles. Le gamut sRGB n’offre qu’une place limitée, et demander vingt couleurs toutes distantes de 0,15 finit par être impossible. Quand le budget de rejets est épuisé, l’outil complète le lot quand même et le dit : rendre moins de couleurs que demandé, ou tourner en boucle, seraient l’un et l’autre pires que reconnaître que la contrainte a été abandonnée.

La distance est une droite dans Oklab, bonne mesure perceptuelle mais non une affirmation sur vos yeux. Oklab a été conçu pour que des distances égales paraissent des écarts comparables, et c’est ce qu’emploie désormais CSS, mais un seuil de 0,1 est un réglage de cette page et non une norme : d’où les repères ci-dessus, plutôt qu’un seuil de perception que cette page n’a pas mesuré.

Le hasard vient d’un petit générateur à graine, non cryptographique. C’est délibéré : cela rend chaque lot reproductible et permet aux tests de vérifier des distributions. S’il vous faut des valeurs imprévisibles pour quelque chose d’important, le générateur de mots de passe de ce site utilise la source cryptographique du navigateur.

Rien ici ne tient compte des déficiences de la vision des couleurs. Deux couleurs peuvent être bien séparées dans Oklab et rester confondables pour une personne atteinte d’une déficience rouge-vert, car la distance est calculée pour une vision trichromatique typique. Une palette qui doit fonctionner pour tout le monde demande une vérification spécifique.

Quarante assertions couvrent la distribution comptée exhaustivement, les taux de collision, la recherche de la frontière du gamut, la garantie d’écart et l’uniformité du générateur à graine.

Pourquoi est-ce gratuit ?

C’est de l’arithmétique et un nombre au hasard, exécutés dans votre navigateur. Rien n’est envoyé, il n’y a pas de compte, et aucune limite au nombre de tirages.

Si vous cherchez une couleur précise plutôt qu’une couleur au hasard, le sélecteur de couleur et les convertisseurs hexadécimaux de ce site sont tout aussi gratuits et tout aussi locaux.