Anagramas visuales: ilusiones ópticas multivista creadas con modelos de difusión
(dangeng.github.io)- Genera en zero-shot ilusiones ópticas multivista donde una sola imagen, tras transformaciones como rotación, volteo o inversión de color, parece otro objeto, usando un modelo de difusión preentrenado
- El método estima el ruido en cada vista transformada, luego alinea los sistemas de coordenadas con la transformación inversa y avanza al siguiente paso de difusión usando el ruido promedio
- Las transformaciones compatibles incluyen rotación, volteo, inversión de color, inclinación, reordenamiento tipo rompecabezas, permutación aleatoria de parches y hasta 3 o más vistas
- Las funciones de transformación deben ser invertibles y, para ajustarse a la suposición de ruido del modelo de difusión, requieren linealidad y consistencia estadística con ruido normal estándar
- Las permutaciones de píxeles y la inversión de color que satisfacen la condición de matriz ortogonal encajan bien con la teoría, pero obtener buenas ilusiones se vuelve más difícil a medida que aumenta el número de vistas
Imágenes cuya identidad cambia al transformarlas
- Visual Anagrams genera ilusiones ópticas multivista en las que una sola imagen cambia de apariencia o identidad al aplicarle una transformación específica
- Es un enfoque zero-shot que usa modelos de difusión ya existentes, sin entrenamiento adicional
- Algunos ejemplos de transformaciones son los siguientes
- Reordenamiento tipo rompecabezas: al dividir la imagen en piezas y reorganizarlas, se ve distinta y funciona como un rompecabezas con varias soluciones
- Volteo y rotación de 180 grados: la apariencia cambia al voltear la imagen o girarla 180 grados
- Rotación de 90 grados: al girar la imagen 90 grados, se percibe como otra cosa
- Inversión de color: la imagen cambia al invertir sus colores
- Inclinación e “inner circle rotations”: incluidos como otros ejemplos de transformación
- Permutación aleatoria de parches: reorganiza parches y, aunque la calidad baja al aumentar hasta (64 \times 64) parches, el resultado sigue siendo reconocible
- Además de ilusiones de dos vistas, también puede crear ilusiones de tres vistas, aunque es más difícil obtener buenos resultados
- Las ilusiones de cuatro vistas fueron muy difíciles de hacer funcionar, y solo se encontró un caso con un resultado aceptable a medias
Procedimiento de generación y condiciones teóricas
- La idea central es un procedimiento para combinar en una sola las estimaciones de ruido hechas por el modelo de difusión en varias vistas transformadas
- Se estima el ruido en cada vista (v_i)
- A cada estimación se le aplica la transformación inversa (v_i^{-1}) para alinearla en el mismo sistema de coordenadas
- Se promedian las estimaciones de ruido alineadas
- Se realiza el paso de difusión usando la estimación de ruido promedio
- No todas las funciones de vista encajan con este método, y (v_i) primero debe ser invertible
- El modelo de difusión trata los datos con ruido (\mathbf{x}_t) como una combinación ponderada de la señal pura (\mathbf{x}_0) y el ruido (\epsilon)
- Para que una transformación (v) conserve esa relación ponderada entre señal y ruido, debe ser una transformación lineal
- Una transformación lineal se representa con una matriz (\mathbf{A})
- El modelo de difusión se entrena bajo la suposición de que el ruido proviene de una distribución normal estándar i.i.d.
- El ruido transformado también debe cumplir (\mathbf{A}\epsilon \sim \mathcal{N}(0, I))
- En transformaciones lineales, esto es equivalente a que (\mathbf{A}) sea una matriz ortogonal
- Por lo tanto, una condición suficiente para que una transformación funcione en este método es que sea ortogonal
- La mayoría de las transformaciones ortogonales arbitrarias no tienen significado visual en una imagen, pero las matrices de permutación son un subconjunto de las matrices ortogonales y pueden interpretarse como reordenamientos de píxeles
- Rotación, volteo, inclinación, inner rotations, reordenamiento tipo rompecabezas y permutación de parches pueden verse como reordenamientos específicos de píxeles
- La inversión de color no es una permutación, pero como cambia el signo de los valores de los píxeles, también corresponde a una transformación ortogonal
Artículo y materiales de ejecución
- Paper: PDF del artículo de CVPR 2024
- arXiv: página en arXiv
- Code: código de Visual Anagrams
- Colab: Colab para ejecutarlo
- Diffusion Illusions: genera ilusiones multivista y otros efectos visuales con score distillation sampling
- Illusion-Diffusion Colab: Colab de Matthew Tancik con una idea similar; Visual Anagrams mejora la calidad de las ilusiones, el rango de transformaciones y el análisis teórico
- Factorized Diffusion: trabajo posterior a Visual Anagrams que genera varios tipos de ilusiones híbridas
- Images that Sound: genera espectrogramas que parecen imágenes usando una técnica similar
1 comentarios
Comentarios de Hacker News
Me encanta la inversión hombre/mujer
Me pregunto cuántas permutaciones legibles se podrían crear dentro de una sola imagen si se ampliara la misma técnica. No sé mucho de matemáticas, pero ¿funciona porque aplicar dos transformaciones ortogonales seguidas sigue siendo una transformación ortogonal?
A principios del año pasado tuve una idea parecida y también estuve jugando un poco con un método de tablero de ajedrez
Aquí hay un gato hecho con 9 imágenes de gatos al estilo de pintores famosos: https://twitter.com/marekgibney/status/1521500594577584141
Quizá tengas que entrecerrar un poco los ojos para verlo. Hice algunos y por alguna razón perdí el interés
El ejemplo de inversión de colores hombre/mujer fue el que más me impresionó. Las rotaciones puedes hacerlas mentalmente para ver la otra perspectiva, pero invertir colores en la cabeza es muy difícil
https://dangeng.github.io/visual_anagrams/static/videos/grid...
En cambio, la rotación es realmente sorprendente. Es perfectamente visible que los píxeles no cambian. Si giras físicamente la pantalla, la imagen “cambia”. Me cuesta pensar en un ejemplo mejor para mostrar que las imágenes de los modelos de difusión no son solo ecos de imágenes existentes. Claro que hay algo de eso, pero en esencia son la solución al problema de “encontrar un conjunto de píxeles que coincida con la descripción {prompt}”. Aquí se trata de encontrar “píxeles que en esta orientación coincidan con {A} y en aquella orientación coincidan con {B}”
Esta técnica y sus resultados son independientes de las famosas imágenes “en espiral” de ControlNet de hace unos meses: https://arstechnica.com/information-technology/2023/09/dream...
En código está basada en DeepFloyd-IF, pero no es tan fácil de ejecutar como las variantes de Stable Diffusion
El ecosistema alrededor de Stable Diffusion en general es realmente enorme
¿Se pueden comprar rompecabezas físicos como los que se muestran aquí?
Cada ejemplo me da la sensación de “sí... bueno, podría ser... más o menos”
El pingüino/jirafa probablemente es el mejor, y la anciana/vestido casi no se ve como ninguna de las dos cosas
El pingüino/jirafa es muy cercano a este: https://www.pinterest.com/pin/giraffepenguin--13398215764267...
El otro parece estar directamente inspirado en este, o al menos es similar, pero el prompt “young lady” parece haber hecho que el modelo eligiera un vestido. Además, es imposible hacer que el ojo y la oreja, o la boca y el collar tipo choker, sean completamente idénticos de forma fotorrealista: https://www.reddit.com/r/RedditDayOf/comments/35cjn5/the_cla...
El pato/conejo reordenable quedaría genial en un rompecabezas deslizante. Habría dos soluciones válidas
Si piensas en los bordes como nodos de un grafo dirigido conectado de salientes y huecos, los pares posibles se conectan entre sí. Un intercambio es un clúster de dos pares, y una conexión adicional es una cadena de cuatro elementos con extremos abiertos. Si esa conexión continúa hacia más pares, puede formarse un clúster más grande de salientes y huecos idénticos. Por las propiedades de los grafos, probablemente la mayoría terminaría así. Para entender por qué, mira la paradoja del prisionero [0]
Entonces la mayoría de los salientes encajarían en la mayoría de los huecos, haciendo que resolver el rompecabezas sea mucho más difícil.
[0] El excelente video de Matt Parker https://www.youtube.com/watch?v=a1DUUnhk3uE está muy bien, pero recomiendo aún más la conversación posterior con Derek de Veritasium
Sería genial crear imágenes así que se vean como cosas distintas bajo iluminación roja/azul
La explosión de creatividad que trajo la IA generativa es realmente asombrosa