2 puntos por GN⁺ 4 시간 전 | 1 comentarios | Compartir por WhatsApp
  • Al unir automáticamente fotos consecutivas tomadas desde ángulos parecidos y acumuladas en la biblioteca, se generaron sin intención cientos de wigglegrams
  • Un wigglegram es un tipo de imagen estereoscópica creada al reproducir varios cuadros en bucle, como un GIF, usando como material fotos de la misma escena tomadas desde puntos de vista apenas distintos
  • Para la extracción automática se usó hash perceptual (perceptual hashing), empleado también en búsquedas inversas de imágenes como TinEye, aprovechando que las imágenes similares tienden a tener hashes más cercanos entre sí
  • El script calcula el hash de las fotos y compara la distancia de Hamming entre pares de imágenes para extraer como wigglegrams los grupos de fotos similares que quedan por debajo de un umbral
  • Algunas provienen de tomas hechas a propósito, pero la mayoría son fotos capturadas por accidente, y muchas producen resultados kinescopic que se parecen más a pequeños videos inconscientes que a una sensación de relieve

Wigglegrams nacidos por accidente

  • Un wigglegram es una forma de imagen estereoscópica creada al reproducir varios cuadros en bucle
  • Al hacer loop de los cuadros como en un GIF, se enlazan imágenes tomadas desde puntos de vista ligeramente distintos y se genera un efecto de profundidad
  • Por la costumbre de tomar varias fotos de la misma escena desde ángulos un poco distintos y de no ordenar el carrete de la cámara, en la biblioteca de fotos se habían acumulado muchas imágenes parecidas
  • Estos grupos de fotos encajan muy bien con la condición de entrada de un wigglegram: “fotos de la misma escena tomadas desde distintos ángulos”

Encontrar fotos parecidas con hash perceptual

  • Para encontrar automáticamente tramos consecutivos de imágenes similares dentro de la biblioteca de fotos, se introdujo hash perceptual (perceptual hashing)
  • A diferencia de un hash criptográfico como sha1, el hash perceptual funciona de modo que las imágenes que se ven parecidas compartan más bits en su hash
  • El script calcula el hash de todas las fotos
    • El cálculo del hash en sí es rápido
    • El proceso de descargar las fotos desde iCloud es lento
  • Calcula la distancia de Hamming entre hashes para determinar qué tan similares son los pares de imágenes
  • En el ejemplo, una distancia de Hamming de alrededor de 10 parecía un buen límite, y con ese criterio se extrajeron pares y grupos de fotos similares

La naturaleza de los resultados de la extracción automática

  • La extracción automática produjo cientos de wigglegrams
  • Algunas salieron de fotos tomadas intencionalmente, pero la mayoría fueron resultados realmente accidentales
  • Las fotos accidentales no siempre se ven como imágenes estereoscópicas típicas
    • Muchos resultados están más cerca de lo “kinescopic” que de lo “stereoscopic”
    • Hay resultados que parecen pequeñas películas inconscientes
  • Se generaron wigglegrams a partir de muchos tipos de sujetos, como fotos de viajes o lugares, animales, trabajos de diseño y esculturas

Materiales que funcionan bien

  • Los animales funcionan muy bien como material para wigglegrams porque son difíciles de predecir
    • Se incluyen ejemplos como gatos, perros y palomas
  • Los trabajos de diseño también producen resultados porque es fácil registrar varios ángulos o estados
    • Hay ejemplos de trabajos como iPad Sidecar, baby book y resistor bridge
  • Las fotos de esculturas u objetos también se convierten en wigglegrams cuando se enlazan varias perspectivas
    • Se incluyen ejemplos como Olivetti y frog with a joint

Script publicado

  • El script está publicado en GitHub
  • En Mac funciona con la biblioteca de fotos de iCloud
  • En otros casos se puede usar indicando un directorio que contenga las fotos

1 comentarios

 
GN⁺ 4 시간 전
Comentarios de Lobste.rs
  • Muy divertido y disparatado. Aunque es una idea tonta, funciona sorprendentemente bien
    Eso sí, ese proceso de hashing se ve bastante pesado, no como “crítica” sino en el sentido de que la carga de descarga y hashing es enorme. Para este tipo de proyectos/experimentos rápidos y juguetones, usar primero la forma más simple que funcione y dejar que tarde “mucho” en segundo plano es totalmente razonable
    Si hubiera tenido la imaginación para pensar en algo así, no sé si lo habría hecho igual o si primero habría filtrado las fotos que no fueron tomadas en momentos cercanos. Pero ahí también está la trampa clásica de pasarte una semana obsesionado con el “prefiltrado óptimo”, cansarte, y al final no producir nada interesante o divertido

    • Suena al típico problema de lavar los platos. Puedes hacerlo todo tú mismo en 10 minutos, o meterlo en “ese aparato” y esperar unas horas sin casi ningún esfuerzo personal
  • Es un efecto especial bastante genial

  • Me pregunto si analizar la fecha de toma daría resultados similares. No todas las fotos consecutivas se tomaron rápido, así que podría haber más falsos negativos

    • Parece un buen filtro para “agrupar candidatos para hashing”. Si hay datos de ubicación, también se podrían usar, y al menos así no habría que hacer hashing de todas las fotos
      Además, en macOS probablemente se puedan sacar directamente las marcas de tiempo y la ubicación de la base de datos sqlite de Photos sin descargar nada de la nube
  • No sabía que existieran algoritmos de hashing que conservaran cierta información de la imagen, de modo que comparar hashes te diera la similitud entre fotos. Siento que debe haber muchísimos usos en los que nunca había pensado

  • ¿Cómo logran esa sensación tan áspera y lo-fi?

    • Es Floyd-Steinberg dithering con una paleta de 256 colores
      Si haces un GIF, la paleta de 256 colores viene prácticamente “gratis”. Bueno, a menos que uses técnicas más avanzadas como componer varios fotogramas de ventana, donde cada ventana tiene su propia tabla de colores local
  • En 2013, con mi entonces pareja puse 3 iPods detrás de un espejo bidireccional, los controlábamos con una pequeña web app, y usábamos un iPad para disparar la toma y mostrar el resultado en una cabina de fotos estereoscópicas
    No quedó muy pulido, pero fue divertido de hacer. http://stereogif.me

  • Quienes sufren de mareo deberían tener cuidado al abrir esta página

  • Qué genial. Antes había un servicio que tomaba fotos de Nintendo 3DS y hacía un GIF animado con los fotogramas de las dos cámaras
    En mi blog lo llamaba “wigglepics”, y tenía una estética bastante divertida

  • Recuerdo que este efecto estuvo muy de moda a principios de los 2010 en Tumblr y sitios similares
    Gracias a eso, llevo las últimas horas tomando fotos de gatos para hacer GIFs