ForHosting KIT · Imágenes

Aplique un filtro sepia a píxeles RGB de imagen

El rojo puro, 255, 0, 0, se convierte en el marrón cálido 100, 89, 69 con la matriz sepia estándar, y cada canal se redondea y se mantiene entre 0 y 255. Introduzca valores RGB y recíbalos en sepia en el mismo orden. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto

Aplique un filtro sepia a píxeles de imagen ya decodificados sin cargar un archivo ni depender de un códec. Envíe una matriz ordenada de muestras RGB y reciba las muestras correspondientes en tonos marrones cálidos, calculadas con la matriz de transformación sepia estándar. Cada canal resultante se redondea y se limita al intervalo válido de cero a 255. La validación completa evita que píxeles incompletos o incorrectos alteren el resultado de forma silenciosa, y el procesamiento determinista permite usar el conversor en producción, pruebas del navegador, formación y tests automatizados exactos.

Prepare muestras completas de píxeles RGB

Coloque los píxeles decodificados en el campo samples como una matriz no vacía de objetos. Cada objeto debe contener los canales r, g y b, y cada canal debe ser un valor numérico finito entre cero y 255, ambos incluidos. Aunque lo habitual son enteros, se admiten fracciones porque algunos flujos de imagen generan muestras intermedias de coma flotante antes de codificarlas.

El conversor verifica cada registro y nunca interpreta un componente ausente como cero. Este criterio estricto protege la estructura de la imagen: omitir un registro desplazaría todos los píxeles posteriores, mientras que sustituir un valor inventaría información de color. Mantenga el orden del ráster, ya que la salida conserva exactamente el orden de entrada.

Para imágenes mayores, divida el ráster en bloques de tamaño fijo y vuelva a unir las respuestas en el mismo orden. La capacidad trabaja con muestras RGB, no con bytes PNG, JPEG, AVIF o WebP. Decodifique primero el archivo y conserve aparte la anchura, altura, orientación, paso de fila y canal alfa.

Comprenda la transformación sepia estándar

Cada píxel de salida procede de tres sumas ponderadas. El rojo se calcula como 0.393 por r más 0.769 por g más 0.189 por b. El verde usa 0.349 por r más 0.686 por g más 0.168 por b.

El azul emplea 0.272 por r más 0.534 por g más 0.131 por b. Esta conocida matriz sepia modifica tanto la luminancia como el equilibrio de canales, crea luces dominadas por rojos y verdes cálidos y reduce el azul. El conversor redondea cada suma al entero más próximo y luego la limita al intervalo inclusivo de cero a 255.

La limitación es necesaria porque las filas de la matriz pueden producir valores superiores a 255 en píxeles claros. Sin ella, un búfer de bytes posterior podría desbordarse, rechazar el valor o mostrar otro color. La respuesta incluye la matriz, las muestras transformadas y el recuento para que registros y pruebas indiquen exactamente qué transformación se utilizó.

El proceso es puro y determinista: no usa red, modelos, azar, hora actual, perfiles de color ocultos ni caché mutable. No linealiza RGB con gamma, interpreta perfiles ICC, simula película química, añade grano, conserva transparencia ni mezcla la salida con el original.

Integre y verifique el resultado convertido

Interprete la matriz samples devuelta como sustitución posicional de la matriz RGB enviada. El campo count debe coincidir con el número de registros de entrada; compárelo antes de reconstruir una tesela, línea, miniatura, búfer de lienzo o ráster completo. Si la imagen original tiene transparencia, conserve sus valores alfa en un búfer paralelo y restáurelos al codificar, porque este contrato solo transforma rojo, verde y azul.

Un buen conjunto de regresión incluye negro, blanco, gris neutro, rojo puro, verde puro, azul puro, una muestra fraccionaria y un registro incompleto que deba fallar. El blanco brillante comprueba que los tres resultados se limitan a 255. Los colores puros revelan cambios accidentales de coeficientes u orden, y los neutros muestran la separación cálida característica.

Trate los errores de validación como problemas de decodificación o construcción de la solicitud, no como fallos transitorios que deban reintentarse sin cambios. Corrija los canales ausentes, valores fuera de rango o NaN antes de reenviar.

Cree búferes de imagen sepia

Transforme píxeles RGB decodificados en muestras sepia cálidas y después restaure las dimensiones originales para codificar el resultado.

Prepare referencias exactas para pruebas

Genere valores esperados deterministas para probar código de lienzo, bibliotecas de imagen y flujos de conversión de píxeles.

¿Qué matriz sepia se utiliza?

El conversor usa las filas [0.393, 0.769, 0.189], [0.349, 0.686, 0.168] y [0.272, 0.534, 0.131] para obtener rojo, verde y azul.

¿Qué ocurre si un canal transformado supera 255?

Cada resultado ponderado se redondea al entero más cercano y se limita al intervalo inclusivo de cero a 255.

¿Acepta archivos codificados o conserva alfa?

No. Solo acepta registros RGB decodificados. Conserve alfa y las dimensiones aparte, y después codifique las muestras devueltas.

¿En qué color se convierte el blanco puro en sepia?

Se convierte en 255, 255, 239, un crema cálido. Las sumas del rojo y del verde superan 255 y se quedan en el máximo, mientras el azul baja un poco: eso da a las luces del sepia su calidez.

¿Qué pasa si a un píxel le falta uno de sus canales?

La conversión entera se detiene e indica la posición y el canal que falta. Saltarse ese píxel desplazaría todos los siguientes, y rellenar un valor inventaría un color que usted nunca indicó.

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.

POSThttps://api.kit.forhosting.com/image/sepia-convert

¿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.

curl -X POST https://api.kit.forhosting.com/image/sepia-convert \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"samples":[{"r":255,"g":0,"b":0},{"r":30,"g":120,"b":220}]}'
{
  "samples": [
    {
      "r": 255,
      "g": 0,
      "b": 0
    },
    {
      "r": 30,
      "g": 120,
      "b": 220
    }
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "image.sepia_convert",
  "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.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

max_samples100000
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Prepare muestras completas de píxeles RGB

Si, por ejemplo, la muestra 4 carece de b, toda la solicitud falla con un error invalid_input que señala ese índice basado en cero y el canal ausente. Se aceptan hasta cien mil registros por solicitud.

Integre y verifique el resultado convertido

El ejecutor del navegador y la API utilizan la misma función solve, lo que permite revisar unos píxeles representativos antes de automatizar un trabajo mayor. La ejecución en el navegador es gratuita y cada solicitud de API cuesta $0.002.

Examine colores representativos

Compruebe una paleta pequeña en el navegador antes de ejecutar la misma matriz mediante un flujo de API automatizado.

¿Qué ocurre si falta un canal en una muestra?

La solicitud falla con invalid_input e identifica el índice basado en cero y el canal r, g o b que falta.

¿Cuánto cuesta una solicitud de API?

Cada solicitud de API cuesta $0.002. También puede ejecutar gratuitamente la misma conversión determinista en el navegador.

Ver la documentación completa del KIT →