Algoritmos y ciencia-ficción: una frontera flexible

IMAGE: Google Research

Es una de las imágenes habitualmente más criticadas de muchas películas o series: el momento en que alguien toma una imagen borrosa, y le aplica un algoritmo que la va mejorando hasta mostrar algo que no se veía en la imagen original, y que, por supuesto, acaba siendo clave en el desarrollo de la trama argumental.

En la práctica, ese tipo de necesidades surgen cada vez con más frecuencia: simplemente escalar una imagen para utilizarla con un tamaño superior genera que los píxeles originales simplemente incrementen su tamaño, con las consecuencias de pérdida de fidelidad que todos conocemos: bordes aserrados, imagen progresivamente borrosa, etc. Pero dado que un pixel en la imagen original es una imagen uniforme con un color determinado, ¿cómo mejorar una imagen si la información original de la misma ha quedado fuera de la misma?

Una entrada en el Google AI Blog titulada «High fidelity image generation using diffusion models« propone utilizar una técnica estadística, los modelos de difusión, propuestos originalmente en 2015 y que habían tenido un uso relativamente escaso, al ámbito de las imágenes. Fundamentalmente, consiste en la adición de ruido gaussiano a la imagen original, corrompiendo progresivamente todos sus detalles hasta convertirla en puro ruido, para posteriormente pedir al algoritmo que revierta el proceso, construyendo una imagen en alta resolución a partir del ruido utilizando como guía la imagen de baja resolución. Utilizando esos modelos de difusión en cascada y repitiendo el proceso un número suficientemente elevado de veces, las imágenes obtenidas son no solamente muy estables, sino que son estimadas como reales por un número razonable de observadores humanos si se les pregunta si la imagen que están viendo proviene de una cámara.

Animated GIF - Find & Share on GIPHY

La idea es poder utilizar ese tipo de técnica para, por ejemplo, obtener imágenes mejoradas de fotografías antiguas o incluso de imágenes de diagnóstico médico, a modo de super-resolución. Básicamente, como en varios episodios de CSI o como en la escena de Blade Runner en la que el protagonista utilizaba una fotografía para extraer detalles minúsculos de la misma y poder hacer deducciones a partir de ellos: auténtica ciencia-ficción, que ahora – lógicamente con sus obvios límites – empieza a parecerlo un poco menos.

Simplemente la posibilidad de aumentar el tamaño de las fotografías sin experimentar una pérdida relevante de calidad ya tiene, por si sola, aplicaciones de todo tipo a la hora de reutilizarlas, por ejemplo, en diferentes contextos.

¿Y ahora? ¿A quién vamos a creer? ¿Al algoritmo, o a nuestros propios ojos?


This article is also available in English on my Medium page, «A new photograph enhancement algorithm blurs the line between reality and science fiction«

16 comentarios

  • #001
    Xaquín - 6 septiembre 2021 - 15:22

    Para empezar, lo ojos son solo una entrada. Quiene se encarga de recibir eses datos de imagen externa es el «cerebrito». Y tanto si la imagen se elaboró externamente, como si es una elaboración del propio cerebro (alucinación), motivada o no por sustancias químicas externas (al cerebro).

    Y el cerebro no se equivoca, como tan «estúpidamente» se repite, cuando se habla de que el cerebro nos engaña. Tiene un sistema de filtrado muy complejo, si lo «hemos tarbajado», como para advertir si lo que entra, o incluso lo producido interiormente (esto ya es más difícil), es «a fake», como se dice en modo «postmoderno» o no.

    Ni la curiosidad mata al gato, ni los filtros se dejan engañar por simples cachondos mentales, en forma de frikis, que intentan colarnos la última algoritmada.

    Una de las típicas frikadas por mal uso de filtros mentales es, por ejemplo, querer diferenciar un mensaje virtual de un ser humano real, del que nos manda un bot, más o menos eficiente.

    Así que, a mi modesto entender, discutir sobre la perfección reproductora de un algoritmo, capaz de hacer sucesivas aproximaciones hasta casi el infinito (cuánticos habemus), resulta la típica discusión sobre el sexo de los ángeles.

  • #004
    KOLDO SARRIA - 6 septiembre 2021 - 16:22

    Los organismos vivos son algoritmos. Los humanos son algoritmos que producen copias de sí mismos. Los algoritmos que controlan a los humanos operan mediante sensaciones, emociones y pensamientos. Dichos algoritmos pasan constantemente controles de calidad por parte de la selección natural. Todo el cuerpo del ser humano (y de cualquier mamífero) es como una calculadora. Solo los animales que calculan correctamente las probabilidades dejan descendientes. Lo que llamamos sensaciones y emociones son en realidad algoritmos. El 99 por ciento de nuestras decisiones (entre ellas, las elecciones más importantes de la vida, relacionadas con cónyuges, carreras y hábitats) las toman los refinadísimos algoritmos que llamamos sensaciones, emociones y deseos.

    Por tanto, la pregunta correcta, a mi modo de ver, no es:

    ¿A quién vamos a creer? ¿Al algoritmo, o a nuestros propios ojos?

    Sino:

    ¿A quién vamos a creer? ¿Al algoritmo de la máquina, o a nuestros propios algoritmos?

    • FER - 7 septiembre 2021 - 09:31

      Siguiendo con el razonamiento: dado que los algoritmos de la máquina los han creado los humanos, no dejan de ser «nuestros» algoritmos. Además, la propia imagen digital la ha creado otro algoritmo, que también es «nuestro».

      En realidad, lo que Google ha hecho es el equivalente digital a las gafas que yo utilizo para leer esta página. Todo al servicio de que mi cerebro procese mejor la información.

  • #006
    Gorki - 6 septiembre 2021 - 17:20

    Cuidadito con utilizar IA para mejorar imágenes, porque puede dar sorpresas inesperadas según los sesgos de lo aprendido. Eso le ha ocurrido al «nefando» Facebook que acaba de catalogar como orangutanes, a lo que eran negros, (subsaharianos para las almas sensibles).

    Si alguien le interesa en especial lo del remasterizado de imágenes, le recomiendo ver este video

    https://youtu.be/dPYwr8fihH0

    • Javier - 6 septiembre 2021 - 20:21

      Lo sigo desde que un forista de este sitio me lo recomendó. Me está abriendo la cabeza en este mundo. Tremendo. Y lo de GPT-3 es de no creer.

  • #008
    meji yon - 6 septiembre 2021 - 17:41

    Recomiendo bajar el video de unos de los enlaces que Enrique nos brinda, y analizar a pantalla completa las caras resultantes. Lo primero lo obvio, las caras las normaliza lo que parece con bastante calidad, pero google hace trampa no nos muestra la imagen real en alta resolución para analizar el detalle. Aún así podemos decir que:

    a) En las líneas rectas del metal y el cristal, mejora, pero el resultado se nota que no es bueno. Aunque el algoritmo mejore, solamente será estético a ciertos patrones que la IA conozca ( inventará una realidad)
    b) Si hubieran elegido una página de texto scaneado con calidad pobre, el resultado hubiera sido aún más decepcionante. Y este caso no hubiera sido nada mejorable con la IA

    Así que lo de la lectura de las matrículas lo dejaremos para el cine. Ya que por mucho algoritmo que se emplee si la información se ha perdido, lo que podemos aplicar son sucedáneos, como cuando entornamos los ojos al mirar fotos pixeladas, mismo resultado, más rápido y barato.

    PS: Gracias Gorki por el video

    • LUA - 6 septiembre 2021 - 18:03

      Aqui teneis otros ejemplos, que, aunque fanboys los ven perfectos, sus carencias tienen… (Ken, Laura y Balrog son aceptables, comentario dixit), pero creo que marcan camino…

      Una IA convierte en rostros humanos a los personajes de Street Fighter

    • David - 7 septiembre 2021 - 18:50

      Dependerá como todo, del escenario de aplicación.

      Probablemente para diagnosticar un cáncer no sea suficiente por lo que estáis comentando todos del teorema de Nyquist que ahora ya conocemos todos….

      Para, por ejemplo, enviar la décima parte de información por soluciones de colaboración tipo Meet o Zoom, o por soluciones de visualización de contenidos y poder «reconstruir» / «recrear» información en el destino con una sensación percibida de calidad mucho mayor pues puede ser una solución fantástica.

      En cualquier caso, me llama la atención la facilidad con la que nos enfocamos en la baldosa en la que estamos, y lo difícil que a veces resulta el ver los caminos que se nos abren delante.

      ¿Estas limitaciones van a seguir existiendo dentro de 5 años? ¿Se habrán encontrado los escenarios de aplicación adecuados para este planteamiento y se habŕan descartados otros escenarios de aplicación?

      • meji yon - 9 septiembre 2021 - 19:09

        Cuando conviertes una señal analógica en digital ( típicamente audio) lo que dice el teorema de Nyquist es que necesitas unas determinadas condiciones, vease

        https://es.wikipedia.org/wiki/Teorema_de_muestreo_de_Nyquist-Shannon

        Realmente en una foto borrosa lo que NO hay es un muestreo como tal, sino una aproximación (sea química o digital) a la señal óptica que le llega al obturador, en ese sentido podriamos asimilar que lo que tienes en tu soporte es ruido y perdida por cuantificación en los distintos medios empleados. Es decir que lo que tienes es una pérdida de información real. E irrecuperable.

        Como vemos en la película del tren del enlace de Gorki, por distintos medios se puede mejorar bastante un video o foto borrosa para que sea más agradable visionarla, pero no hay nunca ganancia de la información, por ejemplo al colorear una foto, una persona o una AI sabe aproximadamente de que color es la carne, o que colores por comparación puede tener una flor, el cielo, un caballo,… pero no recuperan información, recrean una realidad inventada.

        Lo que nunca podrá hacer un método de AI, es recuperar esa info. El ejemplo más duro es el más sencillo, una fotocopia muy deteriorada de una página escrita, si la AI tiene otro medio de rellenar esa información que no puede recuperar lo hará. por ejemplo usando otra página de una copia de ese mismo libro más legible, o en un proceso de OCR buscar colocaciones o análisis semantico y sintáctico del texto para aproximar lo perdido. P.ej si es un libro de Lope de Vega, tendrás a tu disposición un corpus de que léxico utilizó Lope en otras obras.

        En el caso de una matrícula apenas legible podrá entrar en una BD y ver cuantos «Seat 600» amarillos hay matriculados, y verificar si las personas que salen en un video se les puede reconocer y verificar si tienen ese coche, etc etc.

        Es decir los métodos a «rellenar» indformación serán muchos, pero no serán mágicos sino que usaran distintas fuentes para poder parecer que se ha recuperado la info buscada, que nunca será reemplazada de forma mágica, pero si tu no sabes como lo hacen te parecerá magia… y en esencia lo bueno que tienen estas experiencias es que como no tenemos una realidad con la que comparar siempre nos parecen alucianntes

        Ejemplos

        Fotos coloreadas del XIX

        https://www.youtube.com/watch?v=hUip0B8XqsQ

        Fotos coloreadas con AI

        https://www.youtube.com/watch?v=0ArZB-auuyw

  • #012
    Diego Vallejo - 6 septiembre 2021 - 21:44

    La pregunta del millón es: ¿se puede probar eso? ¿donde?

  • #013
    Dorado Comandante - 7 septiembre 2021 - 01:39

    «En la práctica, ese tipo de necesidades surgen cada vez con más frecuencia: simplemente escalar una imagen para utilizarla con un tamaño superior genera que los píxeles originales simplemente incrementen su tamaño, con las consecuencias de pérdida de fidelidad que todos conocemos: bordes aserrados, imagen progresivamente borrosa, etc. Pero dado que un pixel en la imagen original es una imagen uniforme con un color determinado, ¿cómo mejorar una imagen si la información original de la misma ha quedado fuera de la misma? »

    No, decir esto es un error muy básico, confundes tamaño de la imagen con resolución de la imagen.

    Cuando escalas una imagen (aumentas su ancho x alto) los píxeles no «simplemente incrementan su tamaño», los píxeles siguen teniendo el mismo tamaño, solo que el software rellena los «huecos» de información resultante con píxeles nuevos dependiendo del algoritmo de interpolacion elegido.

    Un pixel sólo aumenta o disminuye su tamaño cuando aumentas o disminuyes la RESOLUCIÓN de la imagen, y eso es algo independiente del tamaño físico que le quieras dar a la imagen. Puedes aumentar el tamaño de una imagen sin aumentar su resolución, por lo tanto los píxeles seguirán midiendo lo mismo, aunque tú imagen mida el doble, por ejemplo.

    Y por supuesto, siempre supeditado al dispositivo de salida. Por mucho que quieras aumentar la resolución, los píxeles de tu imagen siempre tendrán el tamaño tope de ese dispositivo, reflejado en sus píxeles por pulgada. El resto será información inútil, que no podrá mostrarse en el dispositivo de salida y que ralentizará el sistema que debe calcularla a pesar de no poder representarla.

    Espero que en temas más complejos la información y documentación sea más rigurosa.

  • #014
    Chipiron - 7 septiembre 2021 - 09:22

    Artículo interesantísimo.

    Si bien es cierto que la información perdida nunca se puede recuperar (Teorema de Nyquist), lo que hace esta IA es impresionante.

    Veré si le puedo sacar provecho en otros campos a esta técnica.

    Mil gracias por la entrada, Enrique Dans.

    • meji yon - 7 septiembre 2021 - 11:28

      Como dicen en esta web una cosa es muestrear (Nyquist) y otra dar trigo:

      https://www.teorema.top/teorema-de-nyquist/

      Es importante diferenciar entre el teorema del muestreo y la cuantificación, ya que esta última es un proceso que ocurre posterior a la aplicación de la teoría del muestreo, para que luego suceda la digitalización de una señal. A diferencia de este teorema, la cuantificación no es reversible, ya que en esta se produce una pérdida de información.

  • #016
    Pedro Amador - 7 septiembre 2021 - 15:35

    El algoritmo lo hará mejor o peor, y no hay duda de que irá mejorando.

    Pero honestamente, y a mí me empieza a dar miedo el futuro.

Dejar un Comentario a meji yon

Los comentarios están cerrados