| title: Video to COLMAP for tttLRM | |
| emoji: 🎞️ | |
| colorFrom: yellow | |
| colorTo: gray | |
| sdk: gradio | |
| sdk_version: 6.2.0 | |
| python_version: 3.12 | |
| app_file: app.py | |
| pinned: false | |
| suggested_hardware: cpu-upgrade | |
| # Video to COLMAP for tttLRM | |
| Standalone Hugging Face Space that converts an uploaded video into a raw COLMAP scene archive suitable for the `tttLRM` inference Space. | |
| ## What it does | |
| - Normalizes uploaded video with `ffmpeg` | |
| - Samples candidate frames across the clip | |
| - Scores sharpness, scene cuts, and inter-frame motion | |
| - Chooses an ordered keyframe set with overlap appropriate for COLMAP | |
| - Runs CPU COLMAP (`feature_extractor`, `sequential_matcher`, `mapper`) | |
| - Packages a raw scene archive with: | |
| - `images/` | |
| - `sparse/0/` | |
| - `report.json` | |
| ## Recommended workflow | |
| 1. Upload a short orbit or slow pan video of a single object or scene. | |
| 2. Download the generated raw COLMAP `.zip`. | |
| 3. Upload that archive into the companion `tttLRM` inference Space. | |
| ## Notes | |
| - This Space is CPU-oriented because COLMAP runs on CPU in standard Hugging Face Spaces more reliably than GPU-specific builds. | |
| - Best results come from a stable single-shot orbit video with limited lighting changes and no jump cuts. | |