Ollin

Depth

This group covers depth feeds and depth-aware compositing: cameras, recordings, and metric space.

SketchWhat it shows
DepthCloudA live 3D point cloud from one webcam. A neural depth model lifts each pixel into space, the camera image colors it, and the cloud orbits. Needs Scripts/fetch-models.sh.
Record3DCloudAn iPhone RGBD point cloud orbited in 3D. By default it plays the newest .r3d clip in ~/Downloads, and it switches to the live USB stream as soon as a tethered phone offers one. Either way the cloud is unprojected with the true camera intrinsics. Needs import OllinRecord3D.
DepthCompositingDepth-aware compositing, with a 2D card standing between two point-cloud orbs. The near orb draws over the card, and the far one is hidden behind it. Each orb has its own billboard pin.
DepthOcclusion2D drawing hung at a depth plane and occluded by whoever stands nearer. A webcam depth model places it at a normalized 0...1 plane, and M switches to real meters from a tethered LiDAR iPhone (camera(.intrinsic(...))). Needs import OllinVision/OllinRecord3D + Scripts/fetch-models.sh.
DepthLiftedPoseA 2D body pose lifted into metric 3D through a depth frame. The tethered phone's depth back-projects each tracked joint, and the skeleton is drawn in space over the person's own cloud. Needs import OllinVision/OllinRecord3D.
ClosedLoopScanA made-up hall walked all the way around and back, scanned twice side by side. The left half lines each frame up. The right half does the same, and ScanGraph also recognizes the place it started. The true walls are drawn over both. There is nothing to plug in. R walks it again, and C cycles the right half between the reported pose, lined-up frames, and the closed loop.

Run one with swift run Example-3D-Depth-<Name>, for example swift run Example-3D-Depth-DepthCloud.

↑↓ move ↩ open