

◂▸
360° cameras like Insta360 record one picture, so VR headsets show it flat. An AI model estimates the distance to every pixel all the way round, and we build a separate left and right eye for the whole sphere using the geometry of an omni-directional stereo camera. We scored it against a true stereo 360 render of the same scene.
What we tried
- Rendered a 360° dolly down our warehouse aisle in Blender, plus a true stereo 360 pair and true distance for every frame.
- DA² (Depth Anything in Any Direction, ICLR 2026) for distance on the whole equirectangular frame.
- An omni-directional stereo warp: each pixel moves sideways by asin(half the eye spacing ÷ distance), fading to zero near the poles, with the frame wrapped so the seam stays joined.
- Packed the eyes top and bottom for headset players, and built a browser viewer with red/cyan, wiggle and WebXR modes.
What we measured
| Measure | Flat 360 | Our stereo 360 | Note |
|---|---|---|---|
| Match to true stereo (PSNR) | 19.9 dB | 24.0 dB | True distance through the same warp reaches 32.1 dB |
| Structural match (SSIM) | 0.868 | 0.933 | |
| AI distance per 2048×1024 frame | — | 128 ms | RTX 4070 |
| Building both eyes | — | 7 ms | |
| Distance error (relative) | — | 0.29 | Scale set on the first frame; drifts to about 0.38 by the end |
What went wrong
- The first camera path started a few centimetres from a safety barrier, which smeared across the whole bottom of the sphere.
- DA²'s package pulls in training libraries on import; we load only its model code.
- Fixing the distance scale once, on the first frame, lets the error grow over the clip. Real footage needs a steadier scale.
What happens next
- Junaid's Insta360 footage, with a temporal smoothing pass for distance.
- A faster distance model for real-time 360 at 4K.
- A 20-minute comfort test in a Quest.
Built with
- DA² (Depth Anything in Any Direction) Apache-2.0
- PyTorch BSD-3
- three.js (viewer, WebXR) MIT
- Blender Cycles (test scene) GPL
Next experiment
A 6M-parameter depth model makes our live 3D converter 60% faster →
Want this for your data?