colmap-wasm Runs COLMAP's SIFT and the GLOMAP Mapper in the Browser to Produce Camera Poses for Splat Training

colmap-wasm 0.1.0 runs COLMAP 4.2.1 SIFT, WebGPU matching and the GLOMAP global mapper in the browser, returning camera poses for Gaussian splat training.

colmap-wasm 0.1.0 runs COLMAP 4.2.1 SIFT, WebGPU matching and the GLOMAP global mapper in the browser, returning camera poses for Gaussian splat training.

Michael Rubloff

Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

COLMAP Wasm

Developer Bryan Diniz has released colmap-wasm 0.1.0, an unofficial WebAssembly build of COLMAP 4.2.1 that estimates camera poses inside a browser tab.

colmap-wasm turns images into cameras and a sparse point cloud without a server. SIFT extraction runs COLMAP's own code in Web Workers, one wasm instance each, and the author reports keypoints within about 1e-5 px of native COLMAP with identical descriptors. Matching runs in a WebGPU compute shader and returns the same matches as COLMAP's cpu_brute_force_matcher. Geometric verification, view graph calibration, and the GLOMAP global mapper share one worker, and every stage is seeded, so the same images produce the same cameras.

On 90 images at 1024×1280 on an Apple M4 in Chrome, the author reports 21 seconds for features across five workers, 4.7 seconds for matching, and 45 seconds for mapping. The colmap-wasm .wasm binary is 7 MB, or 2.1 MB gzipped. The port drops CUDA, MVS, and the GUI, and swaps SuiteSparse's CHOLMOD for Eigen's SimplicialLLT.

OfflineTools put a free browser build of COLMAP online in September, with WebGPU applied to SIFT extraction inside its own web app. colmap-wasm is an npm library that puts matching on the GPU and reconstructs with the global mapper. Arrival.Space's Splat.js also solves poses in the browser, using its own SIFT implementation and an incremental solver.

The colmap-wasm API centers on estimatePoses, which accepts File objects, optional pair lists from exhaustivePairs or sequentialPairs, and masks that follow COLMAP's mask_path convention. toColmapBinary writes cameras.bin, images.bin, and points3D.bin for a gaussian splatting trainer. All images share one SIMPLE_PINHOLE camera. The library needs WebGPU and module Web Workers, but not SharedArrayBuffer or cross origin isolation.

colmap-wasm was built for Gausify Orbit, an in browser orbit video to splat app from the same GitHub account, which offers it as a second pose estimator beside its own AKAZE based solver.

colmap-wasm 0.1.0 is available now under the BSD-3-Clause license.

Featured

Recents

Platforms

World Labs' Spark 2.4.0 Reads SPZ v4 Files and Lets Developers Supply Their Own Paged LoD Fetcher

Spark 2.4.0 adds SPZ v4 read support to World Labs' three.js Gaussian splatting renderer and lets developers supply custom chunk fetchers for paged LoD.

Michael Rubloff

Oct 20, 2026

Platforms

World Labs' Spark 2.4.0 Reads SPZ v4 Files and Lets Developers Supply Their Own Paged LoD Fetcher

Spark 2.4.0 adds SPZ v4 read support to World Labs' three.js Gaussian splatting renderer and lets developers supply custom chunk fetchers for paged LoD.

Michael Rubloff

Platforms

Gaussian Splat Patch Merges Splat Objects and Bakes Edits Permanently in Blender

Gaussian Splat Patch v0.1.15 adds Merge Splat Objects and Bake Edits to Blender, combining several splat models into one PLY and making erasures permanent.

Michael Rubloff

Oct 20, 2026

Platforms

Gaussian Splat Patch Merges Splat Objects and Bakes Edits Permanently in Blender

Gaussian Splat Patch v0.1.15 adds Merge Splat Objects and Bake Edits to Blender, combining several splat models into one PLY and making erasures permanent.

Michael Rubloff

Platforms

The Pixel Lab Ships More Than 100 Pirate Gaussian Splat Assets in Davy Jones's Locker

The Pixel Lab's Davy Jones's Locker pack ships more than 100 pirate-themed Gaussian splat .ply assets for $69, plus an Octane and C4D caustics scene.

Michael Rubloff

Oct 20, 2026

Platforms

The Pixel Lab Ships More Than 100 Pirate Gaussian Splat Assets in Davy Jones's Locker

The Pixel Lab's Davy Jones's Locker pack ships more than 100 pirate-themed Gaussian splat .ply assets for $69, plus an Octane and C4D caustics scene.

Michael Rubloff

Platforms

FreeGaussian Trains Gaussian Splats From Raw Insta360 .insv Files and Ships Sim-Ready Meshes for Robot Simulators

FreeGaussian now trains Gaussian splats from raw Insta360 .insv fisheye files, using IMU data for level, metric-scale scenes and shipping sim-ready meshes.

Michael Rubloff

Oct 20, 2026

Platforms

FreeGaussian Trains Gaussian Splats From Raw Insta360 .insv Files and Ships Sim-Ready Meshes for Robot Simulators

FreeGaussian now trains Gaussian splats from raw Insta360 .insv fisheye files, using IMU data for level, metric-scale scenes and shipping sim-ready meshes.

Michael Rubloff

Trending Articles
  1. TRENDING
    Loading...
  2. TRENDING
    Loading...
  3. TRENDING
    Loading...
Michael Rubloff

Written by Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

More from Michael Rubloff

More from Michael Rubloff

Platforms

World Labs' Spark 2.4.0 Reads SPZ v4 Files and Lets Developers Supply Their Own Paged LoD Fetcher

Spark 2.4.0 adds SPZ v4 read support to World Labs' three.js Gaussian splatting renderer and lets developers supply custom chunk fetchers for paged LoD.

Michael Rubloff

Oct 20, 2026

World Labs Spark

Platforms

World Labs' Spark 2.4.0 Reads SPZ v4 Files and Lets Developers Supply Their Own Paged LoD Fetcher

Michael Rubloff

Oct 20, 2026

World Labs Spark

Platforms

World Labs' Spark 2.4.0 Reads SPZ v4 Files and Lets Developers Supply Their Own Paged LoD Fetcher

Spark 2.4.0 adds SPZ v4 read support to World Labs' three.js Gaussian splatting renderer and lets developers supply custom chunk fetchers for paged LoD.

Michael Rubloff

Oct 20, 2026

World Labs Spark

Platforms

Gaussian Splat Patch Merges Splat Objects and Bakes Edits Permanently in Blender

Gaussian Splat Patch v0.1.15 adds Merge Splat Objects and Bake Edits to Blender, combining several splat models into one PLY and making erasures permanent.

Michael Rubloff

Oct 20, 2026

SplatPatch

Platforms

Gaussian Splat Patch Merges Splat Objects and Bakes Edits Permanently in Blender

Michael Rubloff

Oct 20, 2026

SplatPatch

Platforms

Gaussian Splat Patch Merges Splat Objects and Bakes Edits Permanently in Blender

Gaussian Splat Patch v0.1.15 adds Merge Splat Objects and Bake Edits to Blender, combining several splat models into one PLY and making erasures permanent.

Michael Rubloff

Oct 20, 2026

SplatPatch

Platforms

The Pixel Lab Ships More Than 100 Pirate Gaussian Splat Assets in Davy Jones's Locker

The Pixel Lab's Davy Jones's Locker pack ships more than 100 pirate-themed Gaussian splat .ply assets for $69, plus an Octane and C4D caustics scene.

Michael Rubloff

Oct 20, 2026

Pixel Lab Splats

Platforms

The Pixel Lab Ships More Than 100 Pirate Gaussian Splat Assets in Davy Jones's Locker

Michael Rubloff

Oct 20, 2026

Pixel Lab Splats

Platforms

The Pixel Lab Ships More Than 100 Pirate Gaussian Splat Assets in Davy Jones's Locker

The Pixel Lab's Davy Jones's Locker pack ships more than 100 pirate-themed Gaussian splat .ply assets for $69, plus an Octane and C4D caustics scene.

Michael Rubloff

Oct 20, 2026

Pixel Lab Splats

New to Gaussian Splatting? Start here

Radiance fields, explained from the ground up: what a Gaussian splat is, how to capture one, and which tools and gear to start with.

Newsletter

Keep up with the field.

New research, tools and captures from the Radiance Fields newsroom, in your inbox. Free, no spam.