MCPcopy Index your code
hub / github.com/ColmapView/Colmapview.github.io

github.com/ColmapView/Colmapview.github.io @v0.9.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.9.3 ↗ · + Follow
5,483 symbols 14,801 edges 1,207 files 196 documented · 4% updated 3d agov0.9.3 · 2026-07-05★ 61
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ColmapView

The easiest way to view COLMAP reconstruction data. Open the page, drag and drop your files, done.

View point clouds, camera frustums, and image matches directly in your browser. No installation required. More visualization features than the original COLMAP GUI.

Live Demo | Releases

Highlight Features

3D Visualization

  • Point Cloud Rendering - GPU-accelerated with WASM. Color by RGB, reprojection error, or track length. Adjustable size, opacity, and thinning.
  • Camera Frustums - Display as frustum pyramids, arrows, or textured image planes. Color by camera ID or rig frame.
  • Multi-Camera Rig Support - Visualize synchronized camera connections with animated highlighting.
  • 9 Coordinate Systems - COLMAP, OpenCV, Three.js, OpenGL, Vulkan, Blender, Houdini, Unity, Unreal.

Transform & Alignment Tools

  • 1-Point Origin - Set world origin at any selected 3D point.
  • 2-Point Scale - Define real-world scale between two points with distance input.
  • 3-Point Plane Alignment - RANSAC floor detection with normal alignment to any axis.
  • Interactive Gizmo - Visual rotation/translation/scale controls.

Image Viewing

  • Gallery View - Grid or list layout with virtual scrolling for large datasets.
  • Image Detail Modal - Full camera intrinsics, pose data, and matched image browsing.
  • Match Visualization - Animated feature connections between images.
  • Lens Undistortion - Real-time preview for COLMAP's projective and fisheye camera models.

Export & Sharing

  • Multiple Export Formats - COLMAP binary/text, PLY point clouds, config YAML, ZIP archives.
  • Screenshot & Recording - PNG/JPEG/WebP screenshots, GIF/WebM/MP4 video export with quality controls.
  • URL Sharing - Share reconstructions with encoded camera view state. Embeddable iframes.
  • Social Sharing - One-click share to X/LinkedIn with auto-generated stats.

Data Loading

  • Drag & Drop - COLMAP folders, ZIP archives, or image-only galleries.
  • URL Loading - Load remote reconstructions via URL or JSON manifest.
  • Images-Only Mode - View image galleries without COLMAP reconstruction data.
  • Profile System - Save and switch between different configuration presets.

Point Filtering & Analysis

  • Track Length Filter - Hide points with few observations.
  • Reprojection Error Filter - Remove high-error outliers.
  • Statistics Display - Point count, error distribution, co-visibility metrics.
  • Floor Plane Detection - Automatic ground plane identification with RANSAC.

Navigation & Controls

  • Orbit & Fly Modes - Trackball rotation or first-person flight navigation.
  • Perspective/Orthographic - Toggle projection modes with FOV control.
  • Fly-to-Camera - Click any frustum to animate camera view.
  • Auto-Rotate - Continuous rotation for presentations.
  • Keyboard Shortcuts - Full hotkey support for all major actions.

Performance

  • WASM Acceleration - Memory-efficient parsing for large reconstructions (1M+ points).
  • Lazy Loading - 2D points loaded on-demand to handle 1.9GB+ images.bin files.
  • GPU Instancing - Efficient rendering of thousands of cameras.
  • Virtual Scrolling - Smooth gallery navigation with 10,000+ images.

Usage

  1. Open https://colmapview.github.io/ in your browser
  2. Drag and drop a COLMAP reconstruction folder containing:
  3. cameras.bin or cameras.txt
  4. images.bin or images.txt
  5. points3D.bin or points3D.txt
  6. Optionally: an images/ subfolder with the source images
  7. Or load a COLMAP database file (.db)

Controls

3D Viewer

Action Control
Rotate Left mouse drag
Pan Right mouse drag
Zoom Scroll wheel
Fly to camera Right-click on camera
Open image details Double-click on camera
Point size Ctrl + Scroll
Frustum size Alt + Scroll

Image Gallery

Action Control
Select image Click
Open details Double-click
Fly to camera Right-click
Adjust thumbnail size Shift + Scroll

Keyboard Shortcuts

Action Key
Reset view R
Axis views 1-6
Toggle axes/grid G
Toggle background B
Cycle camera mode C
Cycle frustum display F
Cycle point color mode P
Toggle matches M
Toggle undistortion U
Transform gizmo T
Close modal Escape
Navigate images ← →

Supported Camera Models

ColmapView supports all 18 COLMAP camera models (ids 0-17), with real-time undistortion for the projective and fisheye models:

  • SIMPLE_PINHOLE, PINHOLE
  • SIMPLE_RADIAL, RADIAL
  • OPENCV, OPENCV_FISHEYE, FULL_OPENCV
  • FOV
  • SIMPLE_RADIAL_FISHEYE, RADIAL_FISHEYE
  • THIN_PRISM_FISHEYE
  • RAD_TAN_THIN_PRISM_FISHEYE
  • SIMPLE_DIVISION, DIVISION
  • SIMPLE_FISHEYE, FISHEYE
  • EUCM
  • EQUIRECTANGULAR

Notes:

  • Models 11-16 (RAD_TAN_THIN_PRISM_FISHEYE, SIMPLE_DIVISION, DIVISION, SIMPLE_FISHEYE, FISHEYE, EUCM) render image previews in cropped mode.
  • EQUIRECTANGULAR (id 17) is a spherical (360°) model with no planar undistortion. These cameras render as lat/long grid spheres; selecting one shows its panorama as a photosphere, and (U) toggles a view-tracking portal overlay aligned with the point cloud.

Links

Acknowledgements

This project is built to visualize reconstructions from COLMAP, a general-purpose Structure-from-Motion (SfM) and Multi-View Stereo (MVS) pipeline developed by Johannes L. Schönberger and contributors.

If you use COLMAP in your research, please cite their papers:

Schönberger, J.L., and Frahm, J.M. (2016). Structure-from-Motion Revisited. Conference on Computer Vision and Pattern Recognition (CVPR).

Schönberger, J.L., Zheng, E., Pollefeys, M., and Frahm, J.M. (2016). Pixelwise View Selection for Unstructured Multi-View Stereo. European Conference on Computer Vision (ECCV).

License

AGPL-3.0 with attribution requirement per Section 7(b).

If you deploy this software, you must display visible attribution (e.g., "Powered by ColmapView") with a link to this repository. See NOTICE for full details.

Extension points exported contracts — how you extend this code

BrowserGroundTruthTexture (Interface)
(no doc) [7 implementers]
e2e/webgpu-psnr-isolation.spec.ts
FileSystemFileHandle (Interface)
(no doc) [3 implementers]
src/vite-env.d.ts
ImageDetailCanvasContext (Interface)
(no doc) [2 implementers]
src/components/modals/imageDetailCanvasDrawing.ts
TrackEntry (Interface)
A single track entry yielded by the track iterator.
src/parsers/imageStats.ts
RichClipboardLike (Interface)
(no doc) [1 implementers]
src/utils/clipboard.ts
SparkSplatPsnrSession (Interface)
(no doc) [1 implementers]
src/splat/spark/sparkPsnrSession.ts
BrowserGaussianSceneResourceManager (Interface)
(no doc) [1 implementers]
e2e/webgpu-render.spec.ts
ViteLocalAliasPolicyOptions (Interface)
(no doc)
viteLocalAliasPolicy.ts

Core symbols most depended-on inside this repo

get
called by 360
src/hooks/pointCloud/types.ts
buildFile
called by 224
src/test/builders/colmapBuilders.ts
buildCamera
called by 221
src/test/builders/colmapBuilders.ts
buildImage
called by 219
src/test/builders/colmapBuilders.ts
set
called by 217
public/workers/worker-bundle.js
resolve
called by 189
src/utils/imageSourceResolution.ts
buildReconstruction
called by 151
src/test/builders/colmapBuilders.ts
add
called by 108
src/test/builders/fileFakes.ts

Shape

Function 3,546
Interface 1,257
Method 549
Class 131

Languages

TypeScript99%
Python1%

Modules by API surface

public/workers/worker-bundle.js174 symbols
public/wasm/colmap_wasm.js154 symbols
src/test/builders/fileFakes.ts93 symbols
src/test/builders/browserFakes.ts81 symbols
e2e/webgpu-render.spec.ts68 symbols
src/wasm/types.ts59 symbols
src/wasm/reconstruction.ts56 symbols
src/splat/webgpu/gaussianRenderer.ts49 symbols
src/splat/webgpu/psnrSplatSession.ts47 symbols
e2e/webgpu-psnr-app.spec.ts45 symbols
src/hooks/urlLoaderPolicy.ts41 symbols
src/icons/toolbar.tsx40 symbols

For agents

$ claude mcp add Colmapview.github.io \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page