Guía Escalado/mejora con IA

FernBox11

Lurker
Registrado
10 Nov 2022
Mensajes
6
Puntos de reacción
0
- Esto va a ser una pequeña introducción al escalado/mejora de imágenes con IA. Intentaré actualizar este post a medida que aprenda más para que siga siendo útil y mejore en calidad (además de reescribir partes para mayor claridad, gramática y formato). Se anima a discutir técnicas de escalado, experiencias, software, evaluaciones de dicho software, etc.

- Seguro que todos saben qué es el escalado, pero no todos conocen bien qué es el escalado con IA y cómo usarlo. La IA de la que hablo es una Red Neuronal Artificial de Aprendizaje Profundo, que básicamente es una IA entrenada con un conjunto de datos enorme (en este caso, toneladas de imágenes) para 'aprender'. El resultado es una IA que puede escalar una imagen con más precisión, aportando detalle que el escalado tradicional no puede.

- Escalar imágenes no es un proceso mágico. Por ejemplo, si hay un texto totalmente ilegible en un libro de la imagen, el escalado no lo va a arreglar. Es simplemente una forma de aumentar la resolución de las imágenes de manera estética, con más nitidez, claridad y realismo que el escalado tradicional. Eso no quiere decir que no valga la pena usar escalado con IA en vez del escalado/remuestreo tradicional, porque sí vale la pena. Los resultados pueden no ser siempre buenos, pero tampoco son siempre malos, y solo van a seguir mejorando con el tiempo. A veces una imagen queda tan bien escalada que es prácticamente perfecta. Además, el escalado con IA también sirve para limpiar una imagen de ruido y artefactos de compresión, así que aunque no necesites o no te importe aumentar la resolución, igual hay otros beneficios posibles.

- Voy a dar una lista corta de algunas opciones de escalado junto con el precio, la plataforma en la que están disponibles y los límites de escalado. No voy a evaluar la calidad de los escalados de cada una porque, primero, es algo subjetivo, y segundo, no he probado todo lo que hay aquí. Quién sabe, quizás lo haga en algún momento y suba las imágenes para comparar, pero también puede que no, depende de lo que decida.

- Algunas de las opciones son web, lo que da la comodidad de poder escalar con prácticamente cualquier dispositivo con un navegador decente y conexión a internet. Los contras son que o tienen capacidad limitada, o cuestan una suscripción, y que requieren conexión a internet. Puede que no sea la mejor opción para quienes tienen conexiones lentas, inestables o con límite de datos. Además, nunca sabes qué hacen realmente con tus imágenes, así que si hay fotos sensibles que quieres escalar, puede ser buena idea optar por una opción que no sea web.

- Algunas se pueden descargar como software, lo que suele tener la ventaja de no necesitar internet y de tener menos o ninguna restricción de escalado. Los contras son que el software tiene que estar disponible para la plataforma que quieres usar, y además necesitas un dispositivo capaz de ejecutarlo, ya que a diferencia de una opción web donde otros servidores se encargan de la carga computacional, ahora es tu dispositivo el que tiene que hacer todo el procesamiento.

Gigapixel AILets EnhanceWaifu2xVertexshare Image Upscaler
Precio$99.99Primeras 5 imágenes gratis, la suscripción empieza en $12 al mes para escalar 100 imágenes al mesGratisGratis
Límite de escalado32,000 x 32,00064 megapíxeles para las 5 imágenes gratis; 256 megapíxeles con suscripción normal; 500 megapíxeles con suscripción business (que empieza en $72 al mes)No se pueden subir imágenes de más de 1,500 x 1,500 o 5 MB. Opciones de escalado de 1.6x o 2xNo se pueden subir imágenes que no sean JPG o PNG ni nada más grande que 1,200 x 1,200 o 5 MB. Solo hay opciones de escalado de 2x y 4x
WebNSSS
WindowsSNS*N
MacSNS*N
LinuxS**NS*N
App móvilNNS*N

*El código fuente está disponible en GitHub
**Vía WINE

- Estas no son las únicas opciones, hay muchas más para elegir, así que si ninguna te convence, busca algo como "AI Image Upscaling Software". También puedes echarle un ojo a este link que da una lista de más opciones con algunos pros y contras de cada una. Yo personalmente uso Gigapixel AI porque corre en mi propio equipo y no tiene ningún límite importante que yo sepa, aparte de no poder escalar una imagen más allá de 32,000 x 32,000, lo cual no es problema para mí. Si por alguna razón necesitas o quieres escalar una imagen más allá de un gigapíxel, siempre puedes cortar la imagen en porciones más pequeñas, escalarlas y luego mezclarlas y unirlas.

- Una vez que hayas elegido qué usar para escalar, hay algunas cosas que conviene hacer para asegurar el mejor resultado final. Primero, ¿estás usando la mejor versión de la imagen que vas a escalar? Porque como sabes, casi toda foto tiene varias copias en internet y no todas tienen la misma calidad. Así que si sacaste la imagen de internet y no es una foto única ni una captura tuya de un fotograma específico de un video, puede que te convenga hacer una búsqueda inversa de imagen. Hay varias opciones disponibles, como Google, Bing, TinEye, etc., que sirven para hacer una búsqueda inversa de imagen (vale la pena hacer la búsqueda inversa con más de una, porque no siempre muestran los mismos resultados). También puedes usar una extensión del navegador para ayudarte con la búsqueda inversa, como Search by Image. Recuerda que el hecho de que una imagen sea más vieja, tenga mayor resolución o pese más no significa que esa versión sea de mejor calidad. Una forma de aumentar las chances de encontrar la imagen original es averiguar quién/qué aparece en la imagen, cuándo/dónde se habrá tomado/publicado, etc., y usar esa info para rastrear una versión de mejor calidad, si no la fuente misma. Por ejemplo, quizás la imagen es de una sesión de fotos específica o de algún tipo de evento. Saber eso puede ayudar.

- Una vez que te asegures de tener la mejor copia de la imagen que quieres escalar (o al menos la mejor que puedas encontrar), conviene ocuparte de los datos y el archivo. Lo que quiero decir es que, para asegurar que la foto que vas a usar esté bien y siga disponible para todos, recomiendo hacer un par de cosas. Primero, usa VirusTotal para escanear no solo la URL de la página donde está la imagen, sino también el enlace directo a la imagen y el archivo de imagen en sí una vez descargado. Esto no es realmente necesario, pero es lo que yo hago. También recomiendo archivar la URL de la página donde encontraste la imagen y el enlace directo usando tanto Wayback Machine como Archive.Today. Luego, cambia el nombre de la imagen descargada por uno que tenga sentido y se entienda (a menos que ya tenga un nombre así). Después, suelo usar FileOptimizer para reducir el tamaño del archivo lo máximo posible (usando solo optimización sin pérdida para que no se pierdan datos (calidad)) para que ocupe menos almacenamiento, se suba más rápido y se descargue más rápido.

- ¡Muy bien, hora de escalar! Bueno, tal vez. Verás, a veces una imagen necesita al menos un pequeño retoque antes de escalarla. Si la imagen tiene mucho ruido (ya sea ruido cromático , ruido de luz, etc.) entonces el escalador podría (pero también podría no, depende de cada caso) tener dificultad para distinguir ruido de detalle, lo que puede dar escalados raros. Así que una cosa que puedes hacer es intentar quitarle el ruido a la imagen antes de escalar. A veces quitar el ruido empeora el escalado, así que depende de ti comparar y contrastar. Otras veces, la imagen puede haber sido escalada ya de forma tradicional. En ese caso, intenta ver la imagen con distintos niveles de zoom por debajo del 100% hasta encontrar el 'punto ideal' donde ya no notes los artefactos de un escalado tradicional, como bloques o aliasing. Un buen punto de partida es un zoom del 50%. Cuando encuentres ese 'punto ideal', reduce la imagen hasta ese mismo nivel (a veces lo mejor es reducir con un simple cambio de tamaño, otras veces obtendrás mejores resultados si reduces con remuestreo, como lanczos o bicúbico, etc.). Igual que con quitar el ruido antes del escalado, no siempre da mejores resultados, así que compara y contrasta. Otras cosas que podrían permitir un mejor escalado son desenfocar un poco la imagen, o quizás enfocarla, o a veces incluso escalar/remuestrear la imagen puede ayudar.

- Una vez que cargaste la imagen en el escalador, elegiste los ajustes perfectos y estás por escalar, es posible que te dé a elegir el formato y la calidad con los que quieres exportar el escalado. Recomiendo exportar en un formato sin pérdida como PNG para que cualquier edición posterior tenga mejor efecto. Bien, ya escalaste la imagen y conseguiste un resultado decente, ¿y ahora qué? Podrías subir el resultado tal cual, sin más retoques, y está bien, pero unos pequeños retoques extra pueden dar un resultado más atractivo. De vez en cuando te saldrá algo de ruido en un escalado, aunque la imagen original no pareciera tener mucho. En ese caso, lo mejor es quitarle el ruido lo mejor que puedas para que se vea un poquito mejor. La imagen (entera o solo algunas partes) también puede verse un poco, ¿cómo decirlo?, ¿lisa? ¿Como de plástico? Algo así. En ese caso, una forma fácil de mejorarla es añadirle algo de grano a la imagen. Personalmente prefiero un grano fino a uno grueso, pero eres libre de elegir lo que quieras. El grano agrega una especie de 'detalle falso' y hace que la imagen se vea un poco más texturizada, en mi opinión. También puede ser beneficioso reducir la imagen, ya que el escalado podría tener detalles raros, y al reducirla se nota menos eso sin perder las mejoras visuales. Si quieres hacer una combinación de quitar ruido, reducir y grano, el orden es este: Quitar ruido → Reducir → Grano.

- La imagen también podría requerir (o al menos beneficiarse de)algunos retoques manuales con Photoshop o GIMP. Sin embargo, por ahora no tengo experiencia haciendo eso, pero eso puede cambiar en el futuro y me permitirá completar una pequeña sección sobre retocar manualmente el escalado. Dejando eso de lado, tu escalado ya debería estar completo. Antes de subirlo, quizás quieras considerar reducir la imagen o comprimirla con compresión con pérdida, ya que los escalados a veces pueden generar archivos particularmente grandes (potencialmente cientos de megabytes por una sola imagen). Lo que yo prefiero hacer es subir la imagen original (sin ninguna alteración y en su formato original, pero optimizada sin pérdida), una versión WEBP sin pérdida del escalado (ya que suele comprimir mejor que PNG), una versión JPG con pérdida y un PNG sin pérdida (por su compatibilidad). Así, la gente recibe la imagen original y puede elegir qué versión del escalado quiere: un JPG con pérdida con el menor tamaño de archivo, un WEBP sin pérdida con menor tamaño que el PNG, o un PNG sin pérdida con más soporte y compatibilidad que WEBP.
 
Curso intensivo de upscaling de video:

Consigue una copia de Topaz Video AI 3.1.6 (edit: desde que se hizo este post ya salió Topaz 5, puedes usar ese). Artemis sigue siendo el modelo de referencia; para convertir a 60fps puedes usar Apollo con la opción de duplicar frames desmarcada.

Solo deberías hacer esto con una tarjeta gráfica potente. Yo uso una 3080. Quizás si tienes un CPU threadripper o un Intel rápido con muchos núcleos funcione, pero no me molesté en probarlo.

Revisa los ajustes para que procese con tu GPU si la tienes y con alto uso de VRAM.

Mete tu archivo en el programa.

Si es menor a 720p, no lo escales más de 1280x720p. Usa Artemis LQ o Iris. Un 720p que se vea bien y además sea a 60 FPS se verá mejor que un upscale a 1080p de mala calidad a 30 fps.

Si es un archivo de calidad decente de alrededor de 720 o más, puedes ir a 1920x1080 (o sea 1080p) o al porcentaje de escalado directo que te deje cerca (por ej. si tienes un archivo viejo cuadrado). Usa Artemis High Quality.

El 4k tarda una eternidad, así que para puro porno no te molestes en escalarlo; conformate con que tu archivo ya sea 1080p, a menos que tengas mucho tiempo y no necesites usar el PC para nada más por un rato. Escalar un archivo de una hora a 4k puede tardar literalmente días.

Si vas a mejorar framerate y hacer upscaling, te sugiero hacer el upscale PRIMERO y luego usar Apollo para subir los FPS (elige 60fps nomás, más es un desperdicio y puede ser difícil de reproducir).

Puedes recortar el inicio y el final. Yo normalmente lo hago en handbrake en vez de en topaz, porque topaz ha tenido problemas con el recorte en el pasado. Hacerlo primero en handbrake significa que solo tienes que poner tus ajustes de upscale y dejarlo correr.

Si quieres conservar el sonido, asegúrate de tener seleccionada la opción de mantener el sonido.

Realmente no tienes que hacer mucho más que fijar el inicio y el final y darle al botón de go.

Se recomienda pasarlo después por handbrake; los archivos suelen quedar bastante grandes y es más fácil dejar la calidad por defecto y luego reducirlo con algo como codificación GPU NVENC a CQ 27.

Otro consejo es desactivar TODOS LOS FILTROS en handbrake. No hace falta ninguno, y si usas un método de codificación NVENC (diseñado para hacer codificaciones más rápidas usando la potencia de una GPU Nvidia), algunos de esos filtros son solo de CPU y harán que tu CPU genere un montón de calor y además la codificación sea más lenta.

edit - Prefiero h264 para archivos de video de 1080p o menos. Si eres streamer o usas 4k, h.265 probablemente sea mejor opción. He tenido varios problemas con archivos codificados en 265 en algunos dispositivos, así que prefiero ir a lo seguro, ya que el ahorro extra de espacio del 265 no me importa tanto.

Resumen de Handbrake:
Summary: Format MP4. Web Optimized.
Dimensions: Anamorphic None, Modulus 2, Cropping Automatic.
Filters: All OFF.
Video: H.264 Nvidia NVENC (si tienes una GPU Nvidia reciente, que necesitas igual si vas a hacer upscaling). Constant framerate. Constant Quality 27 (28 ocupa menos espacio pero tiene menor calidad, 26 tiene mayor calidad pero más espacio. Más de 28 eventualmente empezará a tener artefactos, menos de 26 asegura retención de calidad pero el tamaño del archivo sube). Slow encoder preset. Profile auto, encoder level auto. Sin opciones avanzadas.
Audio: Uso AAC (AVOCODEC) con Bitrate: 160, Stereo.

Ejemplos - Tendrás que abrir el archivo directamente para ver las imágenes a tamaño completo.

Fuente 720:

HS-Source.png


Upscale a 1080:

HS-Upscaled.png


Este es un caso de 'peor escenario': su fuente es un clip de 400x300 muy viejo, probablemente no sea la fuente original y está bastante granulado, y está escalado 3.5x, que puedes comparar con pasar de 1280x720 a 1080p que es solo 1.5x

Source.png


Upscale a 1438x1080:

Upscale.png


Descubrí que pasar de 720p a 1080p está bien para ver en pantallas grandes (TVs, monitores de PC, etc).

Con menos de 720p me quedaría en 2x; más que eso no da buenos resultados según mi experiencia y es una pérdida de tiempo/energía. Los resultados en pantallas grandes no son geniales, pero para celulares/ipads me parecen perfectamente aceptables.
 
¿Alguna novedad sobre RAISR o SR3, o si ya está disponible para el público en general?
 
Sí, por desgracia este contenido no está disponible para el público en general
 
hermano, ¿cuál es el mejor ajuste de grano para esto? la cagué con la configuración y olvidé los tamaños originales
 
Yo simplemente lo dejo apagado.

Parece que los valores por defecto son Amount 1.7, Size 0.92.

Hice una prueba corta y no vi ninguna diferencia. Así que sí, déjalo apagado.
 
"Serena 18", archivo muy viejo con upscale. El brillo está un poco alto pero eso es problema del archivo original y arreglarlo no ayudó mucho. La verdad no tengo otro lugar donde subir esto.

https://gofile.io/d/TpxwpE
 
Para poder hacer upscale y remaster de videos necesitas como mínimo una tarjeta gráfica 1660 super, o mejor aún una 2080 super

Tarjeta vieja: 36 a 48 hrs, tarjeta más nueva: 12 a 16 hrs
 
Pregunta (ojalá me respondas antes de que los mods lo vean, porque borran todos los comentarios que pongo): si lo escalas de 480 a 720 y luego lo vuelves a escalar de 720 a 1080, ¿funcionaría o quedaría bien?

Y si puedes, ¿me explicas los distintos tipos de calidad de video de entrada, tipo y tipo de artefactos? Me parece que no hay un tipo de artefacto que sea realmente equilibrado, así que me da curiosidad cuál funcionaría mejor, digamos para videos de hace 5-7 años....
 
Yo nunca lo he hecho, pero es algo que otra gente que usó este software dice que puede valer la pena. Casi nunca hago de 480 a 1080p así que nunca lo probé, yo voy directo de 480 a 1080 y nunca tuve demasiados problemas con los resultados. Si fuera un archivo que de verdad es importante mantener en alta calidad, entonces quizá lo haría.

El tipo de calidad de entrada es más una cuestión de ojo. Puedes tener un video de resolución 480 que sigue viéndose bastante claro, o uno de 480 con una calidad de bits malísima. Los videos más viejos de los 90 o los 2000 suelen estar muy comprimidos por las bajas velocidades de internet de la época. Eso puede crear artefactos, o sea cosas como bloques o mala calidad de color. Otros problemas de calidad pueden ser la exposición o el contraste, o la clásica borrosidad del softcore de los 80.

Yo diría que si la calidad de imagen del archivo te parece buena, uses Artemis High quality. Si hay artefactos o es de bajo bitrate, usa Artemis Low Quality. Esto no se limita a videos de 480p, porque también he visto videos de 720p de una calidad horrible.
 
Si quieres un upscaler de IA sencillo para Android, yo uso esta app, concretamente la versión 6.1. Hay un límite de 10 imágenes antes de que tengas que empezar a ver anuncios; pero si tienes el apk, puedes simplemente desinstalarla y reinstalarla con el APK, y se reinicia el límite. No sé si funciona en versiones posteriores a la 6.1, pero prefiero no probarlo.

https://m.apkpure.com/ai-enlarger-for-photo-anime/com.app.aiimglarger/versions
 
¿alguien puede ayudar? He descargado topaz video enhance de distintas fuentes pero siempre solo puedo mejorar con marca de agua y me pide iniciar sesión, ¿algún consejo? gracias :MLADY:
 
¿estoy haciendo algo mal? puedo previsualizar el upscale pero no procesar, se queda atascado en cargando modelo de IA, ¿alguien puede ayudarme?
 
Los modelos son bastante grandes y, que yo sepa, solo se guardan en la carpeta principal de instalación de Windows. Así que si tienes poco espacio en esa unidad, puede que no se descarguen.

También podrías entrar en las preferencias y ver si está activada la opción "disable model downloading", porque eso podría estar impidiendo las descargas de modelos.
 
hay un software gratis para hacer upscale de imágenes que se llama upscayl
 
Tengo un video que está medio oscuro y no muy nítido, he probado todos los programas posibles desde premiere hasta topaz hasta (inserta nombre de terceros aquí) sin mucha suerte. ¿Estarías dispuesto a intentar aclararlo y mejorarlo por mí? Puedo mostrarte lo mejor que he logrado hasta ahora junto con el original. Te puedo tirar unos dólares por hacerlo si queda bien, si quieres.
 
Atrás
Arriba