# Colmap View

> Colmap View — visualizador web drag'n'drop de modelos COLMAP (nubes de puntos, frustums de cámara, rigs, Gaussian splatting).

- Skill: `ntizar/colmap-view` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ntizar/colmap-view`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ntizar/colmap-view/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: AGPL-3.0 (uso como herramienta web; OJO al incorporar código a p
- Author: ntizar (https://skillmd.com/u/ntizar)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ntizar/colmap-view

---


# Colmap View — Visualizador Web de Reconstrucciones COLMAP

## Qué es

Colmap View (github.com/ColmapView/Colmapview.github.io, TypeScript, AGPL-3.0, demo en colmapview.github.io) es el visor drag'n'drop de reconstrucciones COLMAP más completo que existe: se abre la página, se suelta la carpeta del dataset y listo — sin instalación, con más funciones que la GUI original de COLMAP. Renderizado GPU con WASM sobre React Three Fiber (fiber + drei + @sparkjsdev/spark para splats).

## Capacidades clave (v2026-08)

- **Nube de puntos**: coloreable por RGB, error de reproyección o longitud de track; tamaño/opacidad/thinning ajustables.
- **Cámaras**: frustums piramidales, flechas o planos de imagen texturizados; coloreables por ID de cámara o rig frame; rigs multi-cámara con resaltado animado.
- **9 sistemas de coordenadas**: COLMAP, OpenCV, Three.js, OpenGL, Vulkan, Blender, Houdini, Unity, Unreal — conversión entre ellos.
- **Alineación y escala al mundo real**: 1-Point Origin (clic en un punto → origen), 2-Point Scale (dos puntos + distancia real), 3-Point Align (tres puntos → plano horizontal), Floor Detection automática con RANSAC, gizmo interactivo. Los resultados se apilan en un transform pendiente con Reset/Apply.
- **Puntos 2D en imagen**: selección de cámaras y visualización de keypoints sobre las imágenes originales (fuera del visor 3D).
- **Galería**: grid/lista con virtual scrolling para >10.000 imágenes; vista de imagen con detalles por cámara.
- **Rendimiento**: parsing WASM para >1M de puntos, lazy-loading para `images.bin` de 1.9GB+, GPU instancing para miles de cámaras.
- **Carga remota**: Load URL / Load manifest — encuentra la reconstrucción dentro de un repo o listado de Hugging Face; ZIP aceptado en lugar de carpeta; modo images-only para galerías sin reconstrucción.
- **Splats**: carga `.spz` / `.ply` (Gaussian splatting) junto a la reconstrucción.
- **Export/Captura**: screenshot, share, export; perfiles de configuración; auto-orbit para presentaciones; atajos de teclado completos (panel Help con `I` o `?`).

## Uso

```
1. Abrir https://colmapview.github.io/
2. Soltar carpeta con cameras.bin/txt + images.bin/txt + points3D.bin/txt
   (subcarpetas sparse/0/ y sparse/ escaneadas automáticamente; opcional images/ y masks/)
```

Instalación local para desarrollo: `git clone https://github.com/ColmapView/Colmapview.github.io.git && pnpm install && pnpm dev` (Vite + Playwright para tests).

## Casos de uso para David

- **Validar outputs SfM/fotogrametría** (pipeline COLMAP local o Nube) sin abrir la GUI de escritorio.
- **Geolocalización de modelos**: 2-Point Scale + 3-Point Align → pasar reconstrucciones a escala métrica real para comparar con LiDAR/Catastro.
- **Repos Hugging Face**: inspeccionar datasets 3D (splats/reconstrucciones) directo por URL — útil en investigación de visión.
- **Satellite imagery / geo-forensics**: verificar reconstrucciones antes de proyectarlas en visores GIS (Water3J, España Atlas).

## Stack y referencia de arquitectura

React 19 + Vite + TypeScript, @react-three/fiber + drei, gs-toolbox (transformaciones geométricas), libarchive.js (ZIP en navegador), fflate, gif.js, @sparkjsdev/spark (splats), tanstack/react-virtual (galería). Buen patrón a copiar para cualquier visor de datos binarios pesados en navegador: parsing WASM + lazy loading + virtual scrolling.

## Comparativa de alternativas (consultado 2026-09-01)

- **Visor oficial COLMAP** (escritorio, C++): más rápido cargando, menos herramientas de alineación/export, requiere instalación.
- **pycolmap + open3d** (scripting): para automatizar, no para inspección visual interactiva.
- **Polycam/Luma web viewers**: propietarios, cierran el flujo con fuentes abiertas.
- **Punto débil de ColmapView**: dataset grande por red puede tardar en cargar en cliente (mitigado con lazy loading y manifest de HF).

## Pitfalls

- **AGPL-3.0** — usar la web o el viewer como herramienta es libre; incorporar su código a un producto propio obliga a abrir el producto. Citar siempre.
- Los datasets `.bin` y `.txt` son equivalentes; si faltan archivos `_undistorted`, el visor puede no mostrarlos (feature de versión reciente).
- Reconstrucciones sin escalado métrico: la escala de COLMAP es arbitraria → SIEMPRE aplicar 2-Point Scale antes de cruzar con datos GIS reales.
- El repo se movió de `TobiasGiovannini/Colmapview.github.io` a la org `ColmapView/` — usar la URL nueva.

## Verificación

- El visor muestra puntos + frustums tras soltar la carpeta (si sale vacío, faltaría points3D o la carpeta sparse no se detectó).
- Tras 2-Point Scale, la distancia medida entre los dos puntos coincide con la real introducida (panel de estadísticas).
- Export/screenshot genera archivo descargable con el render actual.


