Convertisseur LAB vers RGB
La couleur LAB de luminosité 53.2407941413, a 80.0924595964 et b 67.2031965159 devient rgb(255, 0, 0), le rouge pur #FF0000. Passez les cibles LAB de votre charte à l'écran avec un résultat identique à chaque fois. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- L
- 53,2407941413
- A
- 80,0924595964
- Lab b
- 67,2031965159
- L*
- 53,2407941413
- a*
- 80,0924595964
- b*
- 67,2031965159
- Résistance (Ω)
- 255
Ce convertisseur LAB vers RGB prend trois composantes CIE L*a*b* —la clarté L* de zéro à cent, a* sur l'axe vert–rouge et b* sur l'axe bleu–jaune— et renvoie des entiers de canal sRGB de zéro à deux cent cinquante-cinq sous le point blanc standard D65 utilisé sur le web. Les designers, les ingénieurs d'impression et les étudiants utilisent ce mappage lorsqu'une marque ou un flux d'impression stocke des cibles Lab, mais que l'interface produit, le CSS ou les design tokens ont besoin de rouge, vert et bleu sur huit bits. Le moteur est entièrement déterministe : il inverse le pivot CIE Lab vers XYZ, multiplie par la matrice sRGB inverse D65, applique le gamma sRGB direct, puis arrondit et écrête chaque canal —sans jamais appeler le réseau, échantillonner le hasard ni dépendre de l'horloge.
Ce que signifie la conversion Lab vers RGB et ce que contient la réponse
CIE L*a*b* réorganise un stimulus coloré en un axe de clarté L* (zéro pour le noir jusqu'à environ cent pour le blanc diffus sous D65) et deux axes chromatiques : a* va du vert négatif au rouge positif, et b* du bleu négatif au jaune positif. L'affichage et le CSS exigent encore des canaux sRGB sur huit bits, c'est pourquoi ce calculateur inverse le pipeline graphique habituel.
D'abord il reconstruit XYZ relatif à partir de L*, a* et b* avec le pivot inverse CIE et le blanc de référence D65, puis multiplie par l'inverse de la matrice sRGB standard D65 pour obtenir une lumière linéaire rouge, verte et bleue. Le companding sRGB direct rétablit la courbe gamma des navigateurs ; chaque canal unitaire est multiplié par deux cent cinquante-cinq, arrondi à l'entier le plus proche et écrêté entre zéro et deux cent cinquante-cinq.
Comment lire les trois valeurs LAB
Les espaces externes sur les nombres en chaîne sont tronqués ; la notation scientifique est autorisée lorsque le jeton est un décimal fini. Un nombre JavaScript nu n'est accepté que s'il est fini et dans la plage déclarée : L* doit rester de zéro à cent, et a* et b* à l'intérieur de plus ou moins cent soixante.
Les valeurs hors de ces bornes échouent avec un message qui nomme le champ et indique la plage autorisée, au lieu d'être écrêtées côté Lab —l'écrêtage s'applique uniquement aux canaux sRGB finaux lorsque la couleur est hors du gamut d'affichage. Le Lab blanc pur se mappe à deux cent cinquante-cinq sur les trois canaux ; le noir pur à zéro ; le triplet Lab rouge pur issu de l'inverse du sRGB rouge plein revient à deux cent cinquante-cinq, zéro, zéro dans l'arrondi.
Où la conversion Lab vers RGB s'inscrit dans le design, l'étude et le logiciel
Les designers rencontrent ce mappage lorsqu'un guide de marque ou une spécification d'impression liste des cibles Lab et que l'interface produit attend des échantillons CSS rgb() ou hex, lorsqu'un design system documente côte à côte les références Lab et le RGB écran, ou lorsqu'une palette doit être prévisualisée sur un affichage sRGB standard après des retouches gérées en Lab. Les flux d'accessibilité et de recherche calculent parfois en Lab pour l'uniformité, puis projettent vers sRGB pour la livraison.
Les étudiants voient le chemin inverse dans les cours d'infographie et de science de la couleur qui introduisent XYZ et Lab après sRGB, dans les cours de photographie numérique qui passent des réglages Lab aux curseurs de canal, et dans les échauffements d'entretien qui demandent la conversion mentale d'un court triplet. Associez-le à RGB vers Lab lorsque vous avez besoin du mappage direct, et à des outils couleur multi-format lorsque vous avez besoin d'un emballage hex ou CMYK autour des mêmes nombres.
Cas d’usage
Cibles Lab d'impression vers RGB écran
Transformez des valeurs CIE L*a*b* de marque ou d'épreuve en canaux sRGB et hex pour CSS, tokens et prévisualisations des parties prenantes.
Devoirs et démonstrations pédagogiques
Vérifiez le travail Lab vers sRGB des étudiants et démontrez en direct XYZ et l'inverse D65 sans applications de calcul opaque.
Questions fréquentes
Combien coûte le convertisseur LAB vers RGB ?
Il est gratuit dans votre navigateur sur cette page.
Que signifient L*, a* et b* dans une couleur LAB ?
L* est la luminosité, du noir jusqu'au blanc diffus. a* va du vert, côté négatif, au rouge, côté positif ; b* va du bleu, côté négatif, au jaune, côté positif.
Quelle couleur RGB correspond au LAB 53.2407941413, 80.0924595964, 67.2031965159 ?
C'est rgb(255, 0, 0), le rouge pur, soit #FF0000 en hex. Ce trio LAB est précisément celui qu'on obtient à partir du rouge plein de l'écran, donc la conversion inverse redonne le même rouge.
Que se passe-t-il si la couleur LAB dépasse ce qu'un écran peut afficher ?
Chaque canal est limité à la plage 0–255, vous obtenez donc toujours une couleur exploitable, et le résultat est signalé hors gamut pour indiquer qu'il a été écrêté et n'est qu'une approximation.
Quel point blanc la conversion utilise-t-elle ?
D65, le blanc de lumière du jour standard des écrans sRGB et du web. Si vos valeurs LAB ont été mesurées avec un autre point blanc, convertissez-les d'abord en D65, sinon les couleurs dériveront.
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/lab-rgb \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"l":53.24,"a":80.09,"lab_b":67.2}'const res = await fetch("https://api.kit.forhosting.com/color/lab-rgb", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"l": 53.24,
"a": 80.09,
"lab_b": 67.2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/lab-rgb",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"l": 53.24,
"a": 80.09,
"lab_b": 67.2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/lab-rgb", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"l":53.24,"a":80.09,"lab_b":67.2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"l":53.24,"a":80.09,"lab_b":67.2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/lab-rgb", 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
{
"l": 53.24,
"a": 80.09,
"lab_b": 67.2
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.lab_rgb",
"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
l_min | 0 |
l_max | 100 |
a_min | -160 |
a_max | 160 |
lab_b_min | -160 |
lab_b_max | 160 |
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 composantes hors des plages déclarées sont rejetées avec une erreur claire invalid_input ; les couleurs hors du gamut sRGB sont écrêtées vers l'ensemble de canaux affichable le plus proche et signalées par out_of_gamut afin que l'appelant voie le clip.
Ce que signifie la conversion Lab vers RGB et ce que contient la réponse
La réponse renvoie l, a et lab_b validés (plus les alias L_star, a_star et b_star), les canaux entiers r, g et b, X Y Z intermédiaires arrondis pour un JSON stable, une chaîne hex, des chaînes de résumé rgb et lab, out_of_gamut en booléen, white_point fixé à D65, l'étiquette de méthode lab_to_rgb et un court rappel de formule. Lab b* est toujours nommé lab_b ou b_star en sortie pour ne jamais entrer en collision avec le champ du canal bleu RGB b. Il n'y a pas d'acceptation silencieuse d'Infinity, de NaN ou de chaînes vides : les composantes manquantes ou hors plage échouent avec invalid_input. Si vous avez besoin de RGB vers Lab, d'emballage hex, de HSV, HSL ou CMYK, utilisez un outil inverse ou multi-format dédié ; cette page répond uniquement à CIE Lab sous D65 vers un triplet sRGB stable, adapté aux tokens, tests unitaires et consommateurs d'API.
Comment l, a et lab_b sont lus et comment le RGB reste reproductible
Les champs préférés sont l pour L*, a pour a* et lab_b pour b*, mais les alias L, L_star et lightness pour la clarté, a_star et A majuscule pour a*, et b_star, b et B majuscule pour b* sont acceptés afin que tableurs, chaînes de requête et formulaires typés réutilisent le même contrat sans renommer les colonnes. Après validation, la conversion n'utilise que de l'arithmétique en forme fermée sur le pivot inverse, la matrice inverse fixe et la courbe gamma IEC, puis arrondit les composantes XYZ à une largeur décimale fixe pour que les goldens JSON et les assertions de CI restent stables entre plateformes. Associez l'exécution gratuite dans le navigateur de cette page à l'API payante lorsque vous avez besoin du même résultat mathématique dans un pipeline automatisé sans réimplémenter vous-même l'inverse Lab et le gamma sRGB.
Où la conversion Lab vers RGB s'inscrit dans le design, l'étude et le logiciel
Les équipes impression et emballage inversent des mesures Lab ou des valeurs d'épreuve en prévisualisations écran approximatives pour que les parties prenantes voient une correspondance approximative à l'écran même lorsque la couleur réelle est légèrement hors gamut —le drapeau out_of_gamut indique que la prévisualisation a été écrêtée. Sur cette page le travail s'exécute entièrement dans votre navigateur ; via l'API chaque consultation réussie coûte $0.002, la validation en échec n'est pas facturée, et rien n'est stocké après le retour de la réponse. Cette séparation —exploration interactive gratuite et API payante identique— correspond au reste du catalogue tier A du KIT et vous permet de passer d'une démo en classe ou d'une revue de design à un pipeline automatisé sans changer le résultat mathématique.
Cas d'intégration
Fixtures de test déterministes
Générez des résultats RGB reproductibles pour tests unitaires, vérifications de propriétés et assertions de CI sur des helpers couleur.
Questions techniques
Quelle plage est autorisée pour L*, a* et b* ?
L* (champ l) doit être de 0 à 100 inclus. a* et lab_b (b*) doivent chacun être entre −160 et 160. Les valeurs hors de ces plages, les nombres non finis et les champs manquants sont rejetés avec invalid_input.
Quel point blanc utilise-t-il ?
Illuminant D65 avec 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".
Que signifie out_of_gamut ?
Certaines couleurs Lab ne peuvent pas être représentées en sRGB. Les canaux sont écrêtés à 0–255 et out_of_gamut est mis à true pour que vous sachiez que le RGB affichable est une approximation du Lab demandé.
Pourquoi Lab b* s'appelle-t-il lab_b ?
Le champ de sortie b est le canal bleu RGB. Lab b* est accepté et renvoyé comme lab_b et b_star pour ne jamais écraser le canal bleu RGB.