Vista previa de intensidad LUT
La calculadora de intensidad de mezcla LUT muestra el color que se obtiene cuando una tabla de consulta se aplica con una fuerza inferior a la máxima.
Ejecutar — gratis
Indique el color original del píxel, el color generado por la LUT a plena intensidad y un porcentaje. La herramienta interpola los canales rojo, verde y azul y devuelve un valor hexadecimal reutilizable, un objeto RGB y una cadena RGB. Resulta útil para vistas previas, interfaces de edición, pruebas y flujos que necesitan representar una gradación parcial sin procesar una imagen ni un fotograma completo.
Represente los colores original y totalmente graduado
Parta de dos mediciones del mismo píxel o color representativo. El color base es el valor anterior a la gradación, mientras que el color LUT corresponde al resultado de aplicar por completo la tabla de consulta. Introduzca cada valor como color hexadecimal RGB de tres o seis dígitos. La forma abreviada se expande antes del cálculo y la respuesta utiliza seis dígitos en mayúsculas. Esta calculadora no abre un archivo LUT, no examina imágenes ni deduce el resultado de una gradación: mezcla dos valores que usted ya conoce. Por eso funciona bien en vistas previas de interfaz, pruebas de canalización y revisiones de diseño donde ya existe una muestra a máxima intensidad. Emplee valores obtenidos en el mismo espacio de color y con la misma función de transferencia. Si combina una muestra sRGB destinada a pantalla con un resultado LUT en luz lineal, el número será calculable, pero quizá no represente la apariencia esperada. Para comparar con fiabilidad, capture ambos extremos en la misma etapa del flujo de color y mantenga iguales la codificación, el rango y el orden de canales.
Elija la intensidad LUT y comprenda el cálculo
La intensidad determina cuánto aporta a la vista previa el valor totalmente graduado. Con 0 por ciento, la salida conserva exactamente el color base; con 100 por ciento, devuelve el color LUT; y con 50 por ciento, cada canal queda a mitad de camino entre sus extremos. El porcentaje se divide por 100 para obtener un factor. En cada canal RGB, se suma al valor base la diferencia entre el canal LUT y el canal base multiplicada por ese factor. Después se redondea al entero más cercano, porque un color RGB habitual de ocho bits no admite fracciones. Se trata de una interpolación lineal directa de los números RGB codificados, también llamada lerp por canal. Es un modelo determinista que reproduce el control sencillo de fuerza u opacidad usado en muchas interfaces. No simula todos los editores: algunos mezclan en luz lineal, trabajan con mayor precisión, aplican transformaciones perceptuales o colocan la mezcla en otra fase. En esos casos, utilice el resultado como referencia de interfaz y confirme el renderizado final en el sistema de producción. Los valores fuera de 0 a 100 se rechazan, en vez de corregirse silenciosamente, para hacer visibles los errores de configuración.
Use la salida en vistas previas y validaciones
La respuesta contiene los colores extremos normalizados, la intensidad enviada, su factor entre cero y uno y el resultado mezclado en tres formatos. Use el hexadecimal en CSS, muestras, documentación o almacenamiento compacto. Use el objeto RGB cuando el código posterior necesite canales numéricos separados. Use la cadena RGB para crear un estilo del navegador o mostrar un valor reconocible a una persona operadora. El campo de método deja constancia de la interpolación RGB lineal y permite distinguirla de una mezcla perceptual o en luz lineal dentro de registros y pruebas. Un flujo habitual toma muestras de varios píxeles significativos antes y después de la LUT, calcula cada pareja con la fuerza seleccionada y dibuja pequeñas comparaciones. Otro flujo guarda entradas extremas y resultados intermedios esperados para probar un deslizador, una migración de ajustes o un servicio de renderizado. Un solo color no resume una LUT completa, pues sombras, medios tonos, luces y matices pueden cambiar de forma diferente. Repita el cálculo con suficientes muestras representativas. Cada solicitud de API cuesta $0.002. Como no intervienen cargas, red, azar ni hora, entradas idénticas siempre producen la misma salida.
Qué puede hacer con ella
Previsualizar un control de fuerza
Calcule la muestra visible mientras una persona ajusta la intensidad LUT sin renderizar el fotograma completo.
Probar los cálculos de una interfaz
Genere colores esperados y deterministas para extremos, puntos medios y porcentajes personalizados.
Comparar intensidades de ajustes
Produzca muestras representativas con distintas fuerzas al documentar o revisar una gradación.
Preguntas frecuentes
¿Qué ocurre con una intensidad del cero por ciento?
El resultado coincide exactamente con el color base, porque el valor LUT graduado no interviene en la mezcla.
¿Qué ocurre con una intensidad del cien por ciento?
El resultado coincide exactamente con el color LUT indicado.
¿Se limitan los valores fuera del intervalo de 0 a 100?
No. Producen un error de entrada no válida para no ocultar un valor incorrecto del control o de la configuración.
¿Se aplica un archivo .cube u otro archivo LUT?
No. Se mezcla un color base conocido con un resultado LUT conocido a máxima fuerza, sin analizar ni ejecutar archivos LUT. Los canales fraccionarios se redondean al entero más cercano para obtener RGB de ocho bits.
¿Cuánto cuesta una solicitud de API?
Cada solicitud cuesta $0.002.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/video2/color-grade-lut-intensity \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"base_color":"#406080","lut_color":"#D08020","intensity":40}'const res = await fetch("https://api.kit.forhosting.com/video2/color-grade-lut-intensity", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"base_color": "#406080",
"lut_color": "#D08020",
"intensity": 40
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/video2/color-grade-lut-intensity",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"base_color": "#406080",
"lut_color": "#D08020",
"intensity": 40
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/video2/color-grade-lut-intensity", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"base_color":"#406080","lut_color":"#D08020","intensity":40}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"base_color":"#406080","lut_color":"#D08020","intensity":40}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/video2/color-grade-lut-intensity", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"base_color": "#406080",
"lut_color": "#D08020",
"intensity": 40
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "video2.color_grade_lut_intensity",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 500 |
max_minutes | 60 |
max_megapixels | 3.9 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |