Colorizador de Fotos con IA

Coloriza una foto antigua en blanco y negro con un modelo de IA que se ejecuta en tu dispositivo, en tu navegador. Gratis, por lotes, sin subir archivos.

🌐 English

Drop your files here (.jpg, .jpeg, .png, .webp)

🔒 Privado por diseño: tus archivos se procesan localmente en tu navegador; nada se sube nunca a ningún servidor.

DDColor, y el archivo de 113 MB que tu pestaña descarga una vez

El modelo es DDColor, salido de un artículo de ICCV 2023 de la DAMO Academy de Alibaba y publicado bajo licencia Apache-2.0. Lo que se ejecuta aquí es una exportación a ONNX en media precisión de unos 113 MB, descargada de Hugging Face y ejecutada por onnxruntime-web a través de su backend de WebAssembly.

Ese tamaño es el coste honesto del planteamiento. Este sitio no fija nunca las cabeceras COOP y COEP que WebAssembly necesita para trabajar con varios hilos, porque esas cabeceras rompen los iframes de anuncios que pagan el sitio, así que el runtime cae a un solo hilo y limita su número de workers a uno. La contrapartida es que la foto en sí no hace ningún viaje: el único tráfico de red son los pesos y los binarios del runtime viniendo hacia ti.

Cargar un escaneo y recuperar un PNG coloreado

  1. Suelta tus escaneos en JPG, PNG o WebP sobre la caja, o pulsa Elegir archivos. Se acepta más de uno.
  2. Pulsa el botón de colorear. En la primera ejecución dentro de una pestaña, la barra de progreso se queda un rato en las primeras etapas mientras se descarga el modelo y se crea la sesión de inferencia.
  3. Espera a que termine. La barra avanza leyendo el canal de luminosidad a resolución completa, construyendo la entrada del modelo, ejecutando la red, estirando el color de vuelta hacia arriba y recomponiendo la imagen.
  4. Descarga el resultado. La salida es siempre PNG, nombrada como el original con -colorized añadido, así que abuelo.jpg se convierte en abuelo-colorized.png.

Se usa PNG porque la salida del propio modelo no debería degradarse acto seguido con una recodificación con pérdida. Eso sí significa que un escaneo grande produce un archivo grande.

El color se infiere a 256 por 256, el detalle sale de tus propios píxeles

El grafo ONNX tiene una forma de entrada fija, no dinámica, de 256 por 256. Tu foto se dibuja reducida a ese tamaño para la red y nunca le llega nada mayor, así que el coste de la inferencia no crece en absoluto con la resolución de tu foto. Lo que sí crece con la resolución es todo lo que la rodea: la conversión de espacio de color píxel a píxel de la imagen a tamaño completo, el escalado hacia arriba del campo de color predicho y la recomposición final, que corren todos en tu CPU.

La salida es un campo de color a ese mismo tamaño pequeño, que después se reescala bilinealmente hasta las dimensiones reales de la foto. La luminosidad se toma directamente de tu archivo original a resolución completa y no pasa nunca por el modelo. Esa separación es la razón de que el resultado siga tan nítido como tu escaneo mientras su color se mantiene suave, y es también la razón de que un objeto fino pueda recoger algo de color de su vecino.

Solo se adivinan dos de los tres canales de Lab

Toda la cadena trabaja en CIE Lab y no en RGB. Tu foto se convierte a Lab, se conserva su luminosidad y se ponen a cero sus dos canales de color, y esa versión acromática se le entrega a la red como una entrada de tres canales. El modelo devuelve solo los dos canales de color, que se recombinan con tu luminosidad intacta y se convierten de vuelta a sRGB.

Poner a cero los dos canales de color da un píxel cuyo rojo, verde y azul son iguales, consecuencia directa de cómo está definido el punto blanco D65, y el código coge después ese único byte compartido y lo escribe en los tres planos de entrada. El modelo recibe por tanto un gris genuinamente neutro sin importar con qué tinte llegara una copia en sepia o un escaneo amarilleado.

El techo de 3000 píxeles, y el mensaje que recibes en realidad

Cualquier cosa de más de 3000 píxeles en su lado más largo se rechaza antes de que ocurra ninguna inferencia. El motor lanza un mensaje concreto y útil sobre ese límite, pero el shell de archivos que envuelve todas las conversiones de este sitio captura cualquier error y lo sustituye por una única frase genérica, así que lo que vas a leer es solo que algo ha ido mal. Si una pasada de coloreado falla con un escaneo grande, las dimensiones son lo primero que hay que mirar. Redúcelo a la mitad con redimensionar imágenes, cuyo ajuste por defecto es exactamente una reducción del 50 %, y colorea después la copia más pequeña.

Encoger el PNG terminado es menos directo de lo que suena. El compresor de imágenes mantiene un PNG como PNG, y el codificador PNG del canvas es sin pérdida e ignora por completo el número de calidad, así que solo la opción de reducción de tamaño de esa herramienta cambiará el peso de forma apreciable; si la recodificación no sale más pequeña y no redujiste el tamaño, te devuelve tu archivo original tal cual.

Lo que una conjetura estadística no puede recuperar

Un coloreador infiere qué colores son plausibles para las formas y los tonos que tiene delante. La piel, el cielo, la vegetación y la madera están aprendidos con fuerza suficiente para quedar bien casi siempre. La pintura de un coche concreto, un logotipo impreso, un vestido teñido: esa información no se registró nunca, y el modelo no tiene forma de saberla. Trata el resultado como un primer borrador sólido para un recuerdo o un proyecto de historia familiar, no como una restauración de los hechos.

Tampoco hace nada con los daños. Los arañazos, el polvo, los rotos y la decoloración pasan sin cambios, porque solo se añade color. Si el objetivo es imprimir, una pasada de ampliado posterior puede ayudar con un escaneo de baja resolución. Y en la dirección contraria, el conversor a blanco y negro es la herramienta para quitar color deliberadamente en lugar de inventarlo.

Preguntas frecuentes

¿Se suben mis fotos a un servidor?

No. Un modelo de IA de colorización real (DDColor) se ejecuta por completo dentro de tu pestaña del navegador usando WebAssembly, y la foto nunca sale de tu dispositivo. Esto importa sobre todo para el tipo de foto que la gente coloriza (un retrato familiar antiguo, la foto de boda de un abuelo, un escaneo de décadas de antigüedad) que preferirías no entregar a un servidor de terceros.

¿Por qué la primera foto tarda más que el resto?

El propio modelo de IA (unos 113 MB) se descarga una vez, la primera vez que usas la herramienta, y tu navegador lo guarda en caché. Cada foto después de esa (en esta sesión o en una visita futura) reutiliza el modelo en caché, así que solo la primera ejecución paga el coste de descarga. El modelo es más grande que el de otras herramientas de IA de este sitio, así que la primera ejecución puede tardar un rato en una conexión más lenta.

¿Qué tan buena es la colorización, de verdad?

Es una colorización genuina y plausible (no un resultado teñido a mano o adivinado) pero sigue siendo un modelo haciendo una suposición educada sobre colores que una foto antigua nunca registró. Los tonos de piel, el cielo y el follaje suelen ser convincentes; los objetos inusuales o fabricados por el hombre (un color de pintura de coche concreto, un logo impreso, una tela teñida) a veces se equivocan, ya que el modelo no tiene forma de saber el color original real. Trátalo como un buen punto de partida, no como una restauración certificada.

¿Hay un tamaño máximo de foto?

Sí, hasta 3000px en el lado más largo. El propio modelo de IA siempre analiza el color a una resolución pequeña y fija sin importar el tamaño de tu foto, pero la imagen final se reconstruye a resolución completa en la CPU de tu propio dispositivo sin ningún servidor que ayude, así que un escaneo extremadamente grande tardaría mucho. Si tu foto es más grande, redúcela primero con la herramienta de redimensionar imagen, y luego coloriza el resultado más pequeño.

¿Esto también arregla arañazos, polvo o desvaído?

No, esta herramienta solo añade color; no repara daños. Un original rayado, roto o muy desvaído mantendrá esos defectos exactamente igual en el resultado coloreado tal como aparecen en la foto de origen.

¿Por qué la salida es siempre un PNG, y puedo hacerla más pequeña?

Se usa PNG porque no tiene pérdida, así que el propio resultado del modelo de IA no se degrada más por una segunda ronda de compresión con pérdida. Si el archivo resultante es más grande de lo que necesitas (especialmente para un escaneo grande) pásalo por la herramienta de comprimir imagen después para reducirlo manteniendo el color.

¿Puedo procesar un lote entero de fotos a la vez?

Sí. Suelta varias imágenes y cada una se coloriza por turnos, en tu propio dispositivo, produciendo su propio archivo descargable. Los lotes más grandes simplemente tardan más ya que no hay ningún servidor haciendo el trabajo en paralelo.

Herramientas relacionadas