Convertisseur RVB vers LAB
Passez une couleur RVB dans l’espace Lab, où la clarté va de 0 pour le noir à environ 100 pour le blanc et où deux axes portent la teinte. C’est l’espace des écarts delta-E et des cibles d’impression. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Résistance (Ω)
- 255
- G
- 128
- B
- 0
- L
- 67,0548169961
- A
- 42,8260095268
- Lab b
- 74,0176483168
- L étoile
- 67,0548169961
Ce convertisseur RVB vers LAB prend trois intensités de canal sRGB — rouge, vert et bleu — chacune sous forme d'un entier de zéro à deux cent cinquante-cinq, et renvoie les coordonnées CIE L*a*b* calculées avec le point blanc D65 standard utilisé dans les flux de travail de couleur web et impression. Les concepteurs, ingénieurs en accessibilité et étudiants utilisent cette correspondance lorsqu'une palette vit dans des canaux à huit bits mais que la tâche nécessite un espace perceptuellement uniforme pour des distances delta-E, un raisonnement de contraste, ou des cibles Lab orientées impression. Le moteur est entièrement déterministe : il décompresse chaque canal de manière inverse, multiplie par la matrice sRGB-vers-XYZ D65, normalise par le blanc de référence D65, puis applique le pivot CIE Lab et les identités sous forme fermée pour L*, a* et b* — sans jamais appeler le réseau, échantillonner de l'aléatoire, ou dépendre de l'horloge.
Ce que signifie la conversion RVB vers Lab et ce que contient la réponse
Dans le modèle sRGB à huit bits utilisé par CSS et la plupart des graphismes web, chacun des canaux rouge, vert et bleu est un entier de zéro à deux cent cinquante-cinq. Le CIE L*a*b* réorganise ce même stimulus en un axe de luminosité L* (environ zéro pour le noir jusqu'à environ cent pour le blanc diffus) et deux axes chromatiques : a* va du vert négatif au rouge positif, et b* va du bleu négatif au jaune positif.
La conversion met d'abord chaque canal à l'échelle en divisant par deux cent cinquante-cinq, puis annule le gamma sRGB (la courbe de compression inverse IEC six-un-neuf-six-six) afin que les valeurs deviennent de la lumière linéaire.
Ces canaux linéaires passent par une matrice fixe trois par trois vers le CIE XYZ sous l'illuminant D65 ; chaque composante trichromatique est divisée par le blanc de référence D65, puis la fonction de pivot CIE f est appliquée — racine cubique au-dessus d'un petit seuil, branche linéaire en dessous — pour former L*, a* et b*. Il n'existe aucune voie acceptant des pourcentages ou des canaux en virgule flottante en entrée, et aucun plafonnement silencieux de deux cent cinquante-six vers deux cent cinquante-cinq.
Où la conversion RVB vers Lab intervient dans le design, les études et les logiciels
Les concepteurs rencontrent cette correspondance lorsqu'un guide de marque liste des échantillons RVB et qu'un flux de production ou d'impression attend des cibles Lab, lorsque deux couleurs doivent être comparées par une simple distance euclidienne dans un espace à peu près uniforme, ou lorsqu'un système de design documente côte à côte les valeurs de référence RVB écran et Lab.
Les ingénieurs en accessibilité utilisent L* et les axes chromatiques lorsqu'ils raisonnent sur la luminosité perçue séparément de la teinte, lorsqu'ils vérifient que deux états d'interface sont suffisamment éloignés pour les utilisateurs malvoyants, ou lorsqu'ils préparent des notes qui alimenteront ensuite des vérifications delta-E formelles.
Les étudiants la rencontrent dans les cours d'infographie et de science des couleurs qui introduisent XYZ et Lab après sRGB, dans les cours de photographie numérique qui passent des curseurs de canal aux ajustements Lab, et dans les échauffements d'entretien qui demandent une conversion mentale d'un court triplet.
Les développeurs front-end appellent le même contrat depuis des scripts pour amorcer des données de référence de tokens de design, pour normaliser des données importées de feuilles de calcul qui stockent des colonnes r, g et b séparées, ou pour vérifier des valeurs Lab de référence dans des tests unitaires sans intégrer une bibliothèque graphique complète. Associez-le aux outils de couleur multi-formats lorsque vous avez besoin de hexadécimal ou de CMJN, et aux autres convertisseurs déterministes gratuits lorsque vous construisez un petit laboratoire pour l'hygiène des systèmes de design.
Cas d’usage
Distance de couleur perceptuelle et tokens
Transformez des triplets RVB de marque en CIE L*a*b* pour des vérifications de type delta-E, des tokens de design et des références Lab orientées impression.
Données de référence déterministes pour les tests
Générez des résultats Lab reproductibles pour les tests unitaires, les vérifications de propriétés et les assertions d'intégration continue sur des outils de couleur.
Devoirs et démonstrations pédagogiques
Vérifiez le travail des élèves sur la conversion sRGB-vers-Lab et faites des démonstrations en direct de XYZ et Lab D65 sans applications de calcul opaques.
Questions fréquentes
Combien coûte le convertisseur RVB vers LAB ?
Il est gratuit dans votre navigateur sur cette page.
Quelle plage est autorisée pour r, g et b ?
Chaque canal doit être un entier de 0 à 255 inclus.
Pourquoi 256 est-il rejeté plutôt que plafonné ?
Le plafonnement silencieux masque les erreurs de données.
Quelles valeurs Lab donne l’orange 255, 128, 0 ?
L* 67.0548169961, a* 42.8260095268 et b* 74.0176483168, avec le point blanc D65. Le a* positif tire vers le rouge et le b* positif élevé vers le jaune.
Que signifient a* et b* ?
Ce sont les deux axes chromatiques. a* va du vert, quand il est négatif, au rouge, quand il est positif, et b* du bleu au jaune de la même façon ; L* est l’axe distinct de la clarté.
Quel point blanc est utilisé ?
D65, la référence de lumière du jour habituelle pour la couleur sur le web et en impression. Chaque résultat est calculé par rapport à ce blanc : comparez-le donc à des valeurs Lab qui utilisent aussi D65.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/color/rgb-lab \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"r":255,"g":128,"b":0}'const res = await fetch("https://api.kit.forhosting.com/color/rgb-lab", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"r": 255,
"g": 128,
"b": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/rgb-lab",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"r": 255,
"g": 128,
"b": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/rgb-lab", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"r":255,"g":128,"b":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"r":255,"g":128,"b":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/rgb-lab", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"r": 255,
"g": 128,
"b": 0
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.rgb_lab",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
min_channel | 0 |
max_channel | 255 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Les canaux en dehors de zéro à deux cent cinquante-cinq sont rejetés avec une erreur claire invalid_input plutôt que silencieusement plafonnés. Utilisez-le gratuitement dans le navigateur pour votre travail de palette, vos vérifications d'accessibilité et vos devoirs, ou appelez l'API à $0.002 par requête réussie lorsque vous avez besoin de données de référence identiques en intégration continue, dans des systèmes de design, ou des démonstrations pédagogiques.
Ce que signifie la conversion RVB vers Lab et ce que contient la réponse
Ce calculateur renvoie les entiers validés r, g et b, L et a arrondis pour L* et a*, lab_b et b_star pour b* afin que la coordonnée bleu-jaune de Lab n'entre jamais en collision avec le champ de canal bleu du RVB, les X Y Z intermédiaires, une chaîne de fonction rgb, une chaîne résumée lab, white_point fixé à D65, une étiquette de méthode rgb_to_lab, et un bref rappel de la formule. Le moteur construit soit un triplet Lab exact pour trois canaux légaux, soit rejette la requête avec invalid_input. Les cas rejetés incluent l'absence d'un champ r, g ou b, des chaînes vides après suppression des espaces, des nombres non entiers, du texte non numérique, Infinity ou NaN, et tout canal strictement inférieur à zéro ou supérieur à deux cent cinquante-cinq. Si vous avez besoin de Lab-vers-RVB, d'empaquetage hexadécimal, HSV, HSL, ou CMJN, utilisez un outil inverse ou multi-format dédié ; cette page ne répond qu'à la conversion de canaux sRGB entiers vers un triplet CIE Lab stable, adapté aux tokens, aux tests unitaires et aux clients de l'API.
Comment r, g et b sont lus et comment Lab reste reproductible
Les espaces en début et fin de chaîne sur les canaux de type chaîne sont supprimés ; un signe plus initial optionnel est autorisé uniquement lorsque les caractères restants sont des chiffres décimaux qui s'interprètent comme un entier dans la plage. Un nombre JavaScript brut n'est accepté que lorsqu'il est un entier fini compris entre zéro et deux cent cinquante-cinq ; des valeurs telles que cent vingt-huit virgule cinq échouent à la validation plutôt que d'être arrondies, et les valeurs négatives ou supérieures à deux cent cinquante-cinq échouent avec un message nommant le canal et indiquant qu'il doit rester entre zéro et deux cent cinquante-cinq. Le rouge pur correspond à un L* modéré avec de grands a* et b* positifs ; le blanc pur correspond à un L* proche de cent avec des a* et b* proches de zéro ; le noir pur correspond à zéro sur les trois axes Lab. Les champs privilégiés sont r pour le rouge, g pour le vert, et b pour le bleu, mais les alias red et R majuscule pour le rouge, green et G majuscule pour le vert, et blue et B majuscule pour le bleu, sont acceptés, afin que les feuilles de calcul, les chaînes de requête et les formulaires typés puissent réutiliser le même contrat sans renommer de colonnes. Après validation, la conversion n'utilise qu'une arithmétique sous forme fermée sur les canaux linéaires et le point blanc D65, puis arrondit les composantes en virgule flottante à une largeur décimale fixe, afin que les goldens JSON et les assertions d'intégration continue restent stables entre plateformes. Associez l'exécution gratuite dans le navigateur sur cette page à l'API payante lorsque vous avez besoin du même résultat mathématique au sein d'un pipeline automatisé, sans réimplémenter vous-même le gamma inverse et la normalisation D65.
Où la conversion RVB vers Lab intervient dans le design, les études et les logiciels
Sur cette page, le travail s'exécute entièrement dans votre navigateur ; via l'API, chaque recherche réussie coûte $0.002, la validation échouée n'est pas facturée, et rien n'est conservé après le renvoi de la réponse. Cette séparation — exploration interactive gratuite et API payante identique — correspond au reste du catalogue de niveau A de KIT, et vous permet de passer d'une démonstration en classe ou d'une revue de design à un pipeline automatisé sans changer le résultat mathématique.
Questions techniques
Quel point blanc cet outil utilise-t-il ?
L'illuminant D65 avec le blanc de référence Xn=0,95047, Yn=1,0, Zn=1,08883, conforme à la pratique standard sRGB et couleur web. La réponse inclut white_point : "D65".
Pourquoi le b* de Lab est-il appelé lab_b ou b_star ?
Le champ d'entrée b est le canal RVB bleu. Le b* de Lab est renvoyé sous les noms lab_b et b_star (et à l'intérieur de la chaîne lab), afin qu'il n'écrase jamais le canal bleu validé.