Help I accidentally a wigglegram
Help, I accidentally created a wigglegram!
Do you actually know what a wigglegram is? According to a user named "suavecorn" on reddit:
It is a kind of stereo image you make by looping frames together, like as a GIF.
The Photographer's Dilemma
I'll admit it: I am a chronically indecisive photographer. Whenever I find an angle I like, I don't just take one photo; I take a whole series of frames from slightly varying perspectives, desperately searching for "the shot."
Because I'm also a bit of a digital hoarder, I never actually prune my camera roll. Consequently, my phone is absolutely packed with accidental wigglegrams—years of sequences just waiting for me to finally stitch them together.
The Technical Solution: Perceptual Hashing
Last weekend, it hit me that I could automate this using perceptual hashing (the same tech used by services like TinEye for reverse image searches) to identify runs of similar images and extract them from my library.
How it Works
I developed a small script to generate hashes for all my images. While the hashing process itself is fast, the bottleneck was the slow process of downloading files from iCloud.
Unlike a standard cryptographic hash (like sha1), a perceptual hash is designed so that similar-looking images produce hashes that share more bits. This allows us to calculate the Hamming distance between two images to determine their similarity.
Comparison of Hashing Methods
| Feature | Cryptographic Hash (sha1) | Perceptual Hash |
|---|---|---|
| Sensitivity | High (1 bit change total change) | Low (Similar images similar hashes) |
| Purpose | Data Integrity / Security | Image Recognition / Similarity |
| Result | Unique Fingerprint | Visual Approximation |
The mathematical distance can be represented as:
The Workflow
- Hash all images in the library.
- Calculate distances between consecutive frames.
- Apply a threshold (a value of
10worked well). - Extract and group the pairs.
The Results
Many of these turned out to be less "stereoscopic" and more "kinescopic"—essentially tiny, unplanned movies.
Categories of Accidental Art:
- Animals (Perfect for this, given how unpredictable they are):
- Dogs and pigeons.
- Design Work (A byproduct of my indecision):
- iPad sidecar notes.
- A baby book (including one with a "rad flip").
- Resistor bridges and disassembled legs.
- Sculpture:
- Olivetti pieces.
- Charlotte?
Get the Tool
If you want to try this yourself, I've uploaded the script to Github.
# Pseudo-code for the similarity check
if hamming_distance(image_a, image_b) <= 10:
add_to_sequence(image_a, image_b)
It is compatible with your iCloud photos library if you are running a Mac; otherwise, you can simply point the script at any local directory of images.
Cheers~ (And happy birthday, I guess!)
Posted: June 04, 2026 | [Home] | [Blog]