Convertitore da RGB a LUV
Ottenga le coordinate CIE 1976 Luv di un colore RGB: luminosità L* da 0 per il nero a circa 100 per il bianco, più u* e v* misurati dal bianco D65. Adatto a miscele additive e distanze di cromaticità. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Resistenza (Ω)
- 255
- G
- 128
- B
- 0
- L
- 67,0548169961
- U
- 106,034260378
- Tensione (V)
- 61,4652151197
- L*
- 67,0548169961
Questo convertitore da RGB a LUV prende tre intensità di canale sRGB—rosso, verde e blu—ciascuna come intero da zero a duecentocinquantacinque, e restituisce coordinate CIE L*u*v* calcolate con il punto bianco D65 standard dei flussi web e di imaging. Designer, scienziati del colore e sviluppatori usano questa mappatura quando la palette vive in canali a otto bit ma il compito richiede uno spazio percettivamente uniforme per distanze, miscele additive o pipeline di analisi basate su Luv. Il motore è pienamente deterministico: decomprime ogni canale, moltiplica per la matrice sRGB-verso-XYZ D65, forma CIE L* dalla luminanza relativa e costruisce u* e v* dalla cromaticità CIE u′v′ rispetto al riferimento D65—senza rete, casualità o orologio.
Cosa significa la conversione da RGB a Luv e cosa contiene la risposta
Nel modello sRGB a otto bit usato da CSS e dalla maggior parte della grafica web, ciascun canale di rosso, verde e blu è un intero da zero a duecentocinquantacinque. CIE L*u*v* riorganizza lo stesso stimolo in un asse di chiarezza L* (circa zero per il nero e circa cento per il bianco diffuso) e due assi cromatici u* e v* derivati dal diagramma di cromaticità CIE 1976 u′v′, spesso preferito quando contano più le miscele additive o le distanze cromatiche uniformi degli assi opponenti in stile Lab.
La conversione scala ogni canale dividendo per duecentocinquantacinque, annulla il gamma sRGB (curva di decompressione inversa IEC 61966-2-1) fino a luce lineare, e fa passare quei canali attraverso una matrice tre per tre verso CIE XYZ sotto l'illuminante D65. La chiarezza L* si forma dalla luminanza relativa Y divisa per Yn con il pivot CIE a radice cubica o ramo lineare.
La cromaticità usa u-prima uguale a quattro X su X più quindici Y più tre Z, e v-prima uguale a nove Y sullo stesso denominatore; u-stella e v-stella valgono poi tredici volte L-stella per la differenza rispetto a u-prima-n e v-prima-n di D65. Il nero puro ha cromaticità indefinita in u′v′, quindi questo motore imposta u* e v* a zero quando il termine di somma XYZ è zero. Non esiste un percorso che accetti percentuali o canali in virgola mobile, né un taglio silenzioso da duecentocinquantasei a duecentocinquantacinque.
Casi rifiutati: campo r, g o b assente, stringhe vuote dopo trim, numeri non interi, testo non numerico, Infinity o NaN, e qualsiasi canale strettamente sotto zero o sopra duecentocinquantacinque.
Dove si colloca la conversione da RGB a Luv in design, studio e software
Designer e ingegneri di imaging incontrano questa mappatura quando un brand o una pipeline di sensore elenca campioni RGB e un flusso si aspetta target Luv, quando le distanze cromatiche vanno ragionate in uno spazio legato a CIE u′v′, o quando un design system documenta affiancati RGB di schermo e valori di riferimento Luv. Gli scienziati del colore usano L* con u* e v* per confrontare miscele additive, preparare dati per esperimenti di uniformità percettiva o insegnare la differenza tra assi opponenti Lab e assi Luv derivati dalla cromaticità.
Gli studenti lo vedono nei corsi di computer graphics e colorimetria che introducono XYZ e poi gli spazi CIE 1976 dopo sRGB, nei laboratori di imaging digitale tra cursori di canale e coordinate percettive, e nei riscaldamenti da colloquio che chiedono di convertire mentalmente un triplo breve. Lo abbini a strumenti Lab o multiformato quando Le servono altri spazi, e ad altri convertitori deterministici gratuiti quando costruisce un piccolo laboratorio di igiene dei sistemi colore.
Casi d'uso
Token e distanze Luv percettive
Trasformi tripli RGB di brand in CIE L*u*v* per controlli di distanza percettiva, token di design e pipeline di imaging che preferiscono Luv a Lab.
Compiti e demo didattiche
Verifichi il lavoro sRGB verso Luv degli studenti e dimostri dal vivo XYZ e Luv D65 senza calcolatrici opache.
Domande frequenti
Quanto costa il convertitore da RGB a LUV?
È gratis nel Suo browser in questa pagina.
Quale intervallo è consentito per r, g e b?
Ogni canale deve essere un intero da 0 a 255 inclusi.
In che modo LUV differisce da LAB?
Entrambi condividono la stessa chiarezza L*, ma Luv costruisce u* e v* dalla cromaticità CIE u′v′, mentre Lab usa assi opponenti a* e b*. Scelga Luv quando contano miscele additive o distanze u′v′; scelga Lab per flussi classici di colore opponente.
Quali valori Luv dà l’arancione 255, 128, 0?
L* 67.0548169961, u* 106.034260378 e v* 61.4652151197, con il punto di bianco D65. La luminosità coincide con quella di Lab; u* e v* descrivono il colore in un altro modo.
Che cosa succede con il nero puro?
La sua cromaticità non è definita, quindi u* e v* vengono fissati a 0 per convenzione. Per il nero si ottiene sempre lo stesso risultato leggibile, senza messaggi di errore.
Come si calcolano u* e v*?
Il colore viene collocato sul diagramma di cromaticità CIE 1976 u′v′. u* e v* sono la sua distanza dal bianco D65 su quel diagramma, moltiplicata per tredici volte L*.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/color/rgb-luv \
-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-luv", {
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-luv",
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-luv", 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-luv", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"r": 255,
"g": 128,
"b": 0
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.rgb_luv",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
min_channel | 0 |
max_channel | 255 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
I canali fuori da zero a duecentocinquantacinque vengono rifiutati con invalid_input chiaro, non tagliati in silenzio.
Cosa significa la conversione da RGB a Luv e cosa contiene la risposta
La calcolatrice restituisce gli interi validati r, g e b, L e L_star arrotondati per la chiarezza, u e u_star più v e v_star per i componenti cromatici, X Y Z intermedi, una stringa funzione rgb, un riepilogo luv, white_point impostato a D65, l'etichetta di metodo rgb_to_luv e un breve promemoria di formula. Il motore costruisce un triplo Luv esatto per tre canali legali oppure rifiuta con invalid_input.
Come vengono letti r, g e b e come Luv resta riproducibile
Gli spazi esterni sui canali stringa vengono rimossi; un più iniziale opzionale è consentito solo se il resto sono cifre decimali che si interpretano come intero nell'intervallo. Un numero JavaScript nudo è accettato solo se è un intero finito tra zero e duecentocinquantacinque; valori come centoventotto virgola cinque falliscono invece di essere arrotondati, e i negativi o superiori a duecentocinquantasei falliscono con un messaggio che nomina il canale e richiede l'intervallo zero–duecentocinquantacinque. Il rosso puro mappa a una L* moderata con u* grande positivo e v* moderata; il bianco puro a L* vicina a cento con u* e v* quasi nulli; il nero puro a zero su tutti e tre gli assi Luv. I campi preferiti sono r per il rosso, g per il verde e b per il blu, ma gli alias red e R maiuscola per il rosso, green e G maiuscola per il verde, e blue e B maiuscola per il blu sono accettati affinché fogli di calcolo, query string e moduli riutilizzino lo stesso contratto senza rinominare colonne. Dopo la validazione, la conversione usa solo aritmetica in forma chiusa sui canali lineari e sul punto bianco D65, poi arrotonda i componenti in virgola a una larghezza decimale fissa così che goldens JSON e asserzioni CI restino stabili tra piattaforme. Abbini l'esecuzione gratuita nel browser di questa pagina all'API a pagamento quando Le serve il risultato matematico identico in una pipeline automatizzata senza reimplementare da Sé gamma inversa, proiezione XYZ e identità CIE Luv.
Dove si colloca la conversione da RGB a Luv in design, studio e software
In questa pagina il lavoro gira interamente nel Suo browser; tramite API ogni consultazione riuscita costa $0.002, la validazione fallita non viene addebitata e nulla viene memorizzato dopo la risposta. Questa divisione—esplorazione interattiva gratuita e API a pagamento identica—si allinea al resto del catalogo KIT di livello A e Le consente di passare da una demo d'aula o una design review a una pipeline automatizzata senza cambiare il risultato matematico.
Casi di integrazione
Fixture di test deterministiche
Generi risultati Luv riproducibili per unit test, controlli di proprietà e asserzioni CI su helper del colore.
Domande tecniche
Quale punto bianco usa?
Illuminante D65 con bianco di riferimento Xn=0.95047, Yn=1.0, Zn=1.08883, allineato alla pratica sRGB e web. La risposta include white_point: "D65".
Perché 256 viene rifiutato invece di essere tagliato?
Il taglio silenzioso nasconde errori nei dati. I canali fuori intervallo falliscono con invalid_input così chi chiama corregge i valori sorgente invece di pubblicare il colore sbagliato.