SIH26158 · Single-pass drone video → accurate 3D model
This is a real 10-minute drone video flown once along city streets in Zurich, Switzerland (public research footage, ordinary GPS). VoxelFlight turned it into the 3D model behind this card on one GPU. Every number below is checked against Switzerland's national airborne laser survey, which the pipeline never sees.
Measured, not claimed
Model shape and coverage are scored against Switzerland's national airborne laser survey (swisstopo swissSURFACE3D), camera positions against the dataset's reference trajectory. One evaluation-only alignment separates the model's shape from GPS placement error.
Share of survey points the drone camera could see that have model surface within 1 m. Never-seen surfaces are not invented.
| Flight | Shape vs survey (median) | Absolute placement |
|---|---|---|
| Zurich 10 min, maximum coverage (shown model) | 0.73 m | 2.7 m · ordinary GPS |
| Zurich 10 min, high-quality (14 min 28 s) | 0.59 m | 2.7 m · ordinary GPS |
| Zurich 10 min, fast mode (7 min 8 s) | 0.91 m | 3.5 m · ordinary GPS |
| Zurich 60 s held-out flight | 0.55 m | 5.0 m · ordinary GPS |
| Toledo (USA) aerial, 120 m | 0.85 m | 3.1 m · ordinary GPS |
| Austria aerial, RTK GPS | — | 0.5 m horizontal · 0.41 m vertical |
| Requirement | Target | Measured | Status |
|---|---|---|---|
| Processing speed | <15 min for a 10-min video | 7 min 8 s fast · 14 min 28 s high quality, one A100 | Met |
| Spatial accuracy | ≤1 m | Shape 0.59–0.91 m median; 0.5 m / 0.41 m absolute with RTK; ≈2.7 m with ordinary GPS | Met with RTK |
| Coverage | Entire visible scene | 46.5 % measured within 1 m, 51.2 % with road gap fill | Partial |
| 3D output | Textured mesh or point cloud | Photo-textured mesh, 52 M-triangle mesh, point cloud | Met |
| Formats | OBJ, PLY, LAS, GeoTIFF, GLB, FBX | All six from every run, reopened by independent readers | Met |
| Input | 1080p/4K video + GPS + metadata | 1080p and real DJI 4K (H.264 + .SRT, HEVC + flight log); intrinsics estimated if missing | Met |
| Viewer | Web or desktop | This page: fly-through, real-frame overlay, heatmap, measure, downloads | Met |
Full protocol and every run: vf2/RESULTS.md · evaluation.json
Operator guide
What to record, what to upload and how to read the result. The same steps apply to your own flights in the Studio and to the sample project on this page.
Move steadily along the area, at street level or 60–120 m. Overlap between consecutive frames matters more than speed; avoid sharp turns and long hovering.
MP4 or MOV, H.264 or HEVC, 1080p or 4K, up to 30 minutes. Upload the original file: no cropping, stabilisation or speed changes.
DJI: turn on Video Subtitles so an .SRT file is saved with each video, or export the flight record (.csv). GPX or JSON logs from other drones also work.
RTK/PPK positions give sub-metre absolute placement. A camera calibration file helps; without one the intrinsics are estimated from the video.
Open the Studio, add the video and its GPS log. The browser checks resolution, length and GPS coverage before anything is uploaded.
Fast for quick checks, High quality for the best accuracy, Maximum coverage for the most surface.
Runs continue if you close the page; finished runs appear under Reconstructions in the Studio.
Playback follows the drone in sync with its video. Click any frame in the timeline to jump there.
Overlays the camera image on the model from the same position. The quickest way to spot missing or misplaced surfaces.
Turn on the accuracy heatmap, click a point for its coordinates and survey distance, or measure a distance in metres.
| File | Use it for | Coordinates |
|---|---|---|
| GeoTIFF surface model | GIS (QGIS, ArcGIS): elevation, mapping, volumes | UTM zone, metres |
| LAS point cloud | Survey and GIS tools, comparison with LiDAR | UTM zone, metres |
| PLY point cloud | CloudCompare, MeshLab | Local metres, origin in metadata |
| OBJ / FBX mesh | CAD, Blender, game engines | Local metres |
| GLB textured mesh | Web viewers, presentations, AR | Local metres |
| Model shape (relative) | 0.6–0.9 m median against survey LiDAR |
| Absolute position, ordinary GPS | ≈ 2.7–3.5 m, limited by the GPS |
| Absolute position, RTK GPS | 0.5 m horizontal · 0.41 m vertical |
| Coverage | Surfaces the camera saw. Never-seen sides stay empty; the road fill is marked as interpolated. |
| If | Then |
|---|---|
| No GPS log is available | The shape is still reconstructed, but not placed on the map. Add the .SRT or flight record. |
| The Studio shows no video preview | Common for HEVC files; the server converts them during processing. |
| The video is longer than 30 minutes | Split it into parts and upload each with its log. |
| The model has gaps | Fly slower with more overlap, and include oblique views of facades. |
| The processing service is offline | Uploads are paused during evaluation. The sample project on this page shows a finished result. |
From video to measured 3D
Pretrained models only (DPVO, SuperPoint + LightGlue, COLMAP, Depth Anything 3, MapAnything, Open3D). Survey data and reference poses are used for scoring, never as input. Source: github.com/Suman1108-beep/voxelflight
Loading the 3D model (20 MB)…