Depth Wiggle Preview
Turn a photo and depth map into a wiggle 3D animation you can preview, scrub and download frame by frame.
Drag & drop a photo here, or click to browse
No uploads. Your files stay on your device.
Optional: drop a depth map (grayscale — white is near)
Without one, depth is estimated from the photo's brightness.
How it works
A wiggle (or "wobble") 3D image fakes stereo depth by rocking a photo back and forth: near things sweep further across the frame than far things, and your brain reads the parallax as depth. This tool builds that animation from a single photo plus a depth map — a grayscale image where white means near and black means far. Every frame is warped pixel by pixel with the Canvas API inside your browser, so the photo never leaves your device.
No depth map? The tool estimates one from the photo's brightness so you can see the effect straight away, but a real depth map (from a phone portrait mode, a 3D render or a monocular depth model) gives a far cleaner result. Tune the strength, frame count and speed, scrub through single frames, then download one frame as PNG or all of them as a ZIP. The ZIP includes a ready-made ffmpeg command that turns the frames into a looping GIF or MP4 on your own machine.
Frequently asked questions
What is a wiggle 3D image?
A wiggle (or wobble) 3D image is a short looping animation that rocks a photo back and forth. Near objects sweep further across the frame than far ones, and that parallax reads as depth without glasses or a 3D screen.
Do I need a depth map to use this tool?
No. If you only drop in a photo, the depth is estimated from its brightness so you can see the effect immediately. For a clean result, add a grayscale depth map — white for near, black for far — from portrait mode, a 3D render or a depth-estimation model.
How do I turn the frames into a GIF or video?
Download the frames as a ZIP: it includes an ffmpeg-command.txt with a ready-to-run command that builds a looping GIF from the numbered PNGs at the same frame rate you previewed. Run it locally — nothing is uploaded anywhere.