2 points par GN⁺ 4 시간 전 | 1 commentaires | Partager sur WhatsApp
  • En assemblant automatiquement des séries de photos prises sous des angles similaires accumulées dans une photothèque, des centaines de wigglegrams non intentionnels ont été créés
  • Un wigglegram est une image stéréoscopique obtenue en rejouant plusieurs images en boucle comme un GIF, à partir de photos de la même scène prises depuis des points de vue légèrement différents
  • Pour l’extraction automatique, l’auteur utilise le hachage perceptuel (perceptual hashing), employé notamment dans la recherche d’images inversée comme TinEye, en tirant parti du fait que les images similaires ont des hachages plus proches
  • Le script calcule le hachage des photos et compare la distance de Hamming entre les paires d’images afin d’extraire des groupes de photos similaires sous un certain seuil pour en faire des wigglegrams
  • Certaines proviennent de prises de vue intentionnelles, mais la plupart sont des photos prises par hasard, avec souvent un résultat kinéscopique rappelant de petites vidéos inconscientes plus qu’un simple effet de relief

Wigglegrams apparus par hasard

  • Un wigglegram est une forme d’image stéréo créée en rejouant plusieurs images en boucle
  • Comme avec un GIF, la boucle enchaîne des images prises depuis des points de vue légèrement différents et produit un effet de relief
  • À force d’avoir l’habitude de prendre plusieurs clichés d’une même scène sous des angles légèrement différents, et de ne pas trier son camera roll, la photothèque s’était remplie de nombreuses photos semblables
  • Ces groupes de photos correspondent très bien à la condition d’entrée d’un wigglegram : « des photos de la même scène prises sous des angles différents »

Trouver des photos similaires avec le hachage perceptuel

  • Pour détecter automatiquement des séquences d’images similaires dans la photothèque, l’auteur a adopté le hachage perceptuel (perceptual hashing)
  • Contrairement à un hachage cryptographique comme sha1, le hachage perceptuel est conçu pour que des images visuellement proches partagent davantage de bits dans leur hachage
  • Le script calcule le hachage de toutes les photos
    • Le calcul du hachage lui-même est rapide
    • Le téléchargement des photos depuis iCloud est lent
  • Il calcule ensuite la distance de Hamming entre les hachages pour estimer le degré de similarité entre paires d’images
  • Dans l’exemple, une distance de Hamming autour de 10 semblait être une bonne limite, utilisée comme seuil pour extraire les paires et groupes de photos similaires

Nature des résultats de l’extraction automatique

  • L’extraction automatique a produit des centaines de wigglegrams
  • Certaines proviennent de photos prises volontairement dans ce but, mais la plupart sont réellement apparues par accident
  • Les photos accidentelles ne ressemblent pas toujours à des images stéréoscopiques classiques
    • Beaucoup de résultats sont plus proches du « kinescopic » que du « stereoscopic »
    • Certains donnent l’impression de petits films involontaires
  • Des wigglegrams ont été générés à partir de sujets variés : photos de voyage ou de lieux, animaux, travaux de design, sculptures, etc.

Sujets qui fonctionnent bien

  • Les animaux conviennent particulièrement bien aux wigglegrams car ils sont difficiles à prévoir
    • Des exemples incluent des chats, des chiens et des pigeons
  • Les travaux de design donnent aussi des résultats, car il est facile d’en conserver plusieurs angles ou états
    • On y trouve des exemples comme iPad Sidecar, baby book et resistor bridge
  • Les photos de sculptures ou d’objets se transforment également en wigglegrams à mesure que plusieurs points de vue s’enchaînent
    • Des exemples incluent Olivetti et frog with a joint

Script publié

  • Le script est disponible sur GitHub
  • Sur Mac, il fonctionne avec la photothèque iCloud
  • Sinon, il peut être utilisé en indiquant un répertoire contenant des photos

1 commentaires

 
GN⁺ 4 시간 전
Avis sur Lobste.rs
  • Vraiment drôle et décalé. C’est une idée bête qui fonctionne pourtant très bien
    Cela dit, le processus de hachage a l’air assez costaud, non pas comme une « critique », mais au sens où la charge de téléchargement et de hachage est énorme. Pour ce genre de petit projet/expérimentation rapide, utiliser d’abord la méthode la plus simple qui marche et la laisser tourner « longtemps » en arrière-plan est tout à fait raisonnable
    Avec assez d’imagination pour penser à un truc pareil, je ne sais pas si j’aurais procédé de la même façon, ou si j’aurais d’abord écarté les photos qui n’avaient pas été prises à des moments proches. Mais il y a là le piège classique consistant à s’acharner une semaine sur le « préfiltrage optimal », à s’en lasser, et à finir par ne jamais produire de résultat intéressant ou amusant

    • Ça ressemble au classique problème de vaisselle. On peut tout faire soi-même en 10 minutes, ou bien mettre ça dans « l’appareil » et attendre quelques heures, avec quasiment aucun effort personnel
  • C’est un effet spécial plutôt sympa

  • Je me demande si analyser la date de prise de vue donnerait des résultats comparables. Toutes les photos en rafale n’ont pas été prises rapidement, donc il pourrait y avoir davantage de faux négatifs

    • Ça semble bien comme filtre pour « regrouper les candidates au hachage ». Avec des données de localisation, on pourrait aussi les utiliser, et au moins il ne serait pas nécessaire de hacher toutes les photos
      En plus, sur macOS, il devrait être possible de récupérer directement les horodatages et les données de localisation depuis la base de données sqlite de Photos, sans rien télécharger depuis le cloud
  • Je ne savais pas qu’il existait des algorithmes de hachage qui conservent une partie des informations d’une photo, au point que la comparaison de deux hachages donne une mesure de similarité entre les images. J’ai l’impression qu’il y a énormément de cas d’usage auxquels je n’avais jamais pensé

  • Comment obtient-on ce rendu brut et lo-fi ?

    • C’est du Floyd-Steinberg dithering avec une palette de 256 couleurs
      Si on crée un GIF, la palette de 256 couleurs vient pratiquement « gratuitement ». Enfin, sauf si on utilise des techniques plus avancées, comme composer plusieurs fenêtres d’images où chaque fenêtre possède sa propre palette locale
  • En 2013, avec ma partenaire de l’époque, nous avons placé 3 iPod derrière un miroir sans tain, contrôlés par une petite web app, avec un iPad pour déclencher la prise de vue et afficher le résultat, afin de créer un photomaton stéréoscopique
    La finition n’était pas terrible, mais c’était amusant à fabriquer. http://stereogif.me

  • Les personnes sujettes au mal des transports devraient faire attention en ouvrant cette page

  • Très sympa. Il existait autrefois un service qui prenait des photos Nintendo 3DS et en faisait des GIF animés à partir des deux images des caméras
    Sur mon blog, j’appelais ça des « wigglepics », et l’esthétique était assez amusante

  • Je me rappelle que cet effet était extrêmement à la mode au début des années 2010 sur Tumblr et les sites du même genre
    Du coup, ces dernières heures, je prenais des photos de chats pour en faire des GIF