Repository navigation
Releases: Vincentqyw/colmapforge
Release list
v1.6.0
1.6.0 - 2026-08-22
Features
- New Motion (optical flow) frame sampling method, alongside
"Every N frames" and "Target FPS", in both the GUI and the CLI
(--extract-method motion). A grid of points is tracked through dense
DIS optical flow and a keyframe is written only when the camera has
moved enough: the 80th-percentile cumulative point displacement reaches
a threshold (--extract-motion-threshold, default 600 px), too few
tracked points remain in view (--extract-motion-min-points), or a
maximum frame gap elapses (--extract-motion-max-gap). The first and
last frames are always kept, and--extract-max-framesthins the
result evenly. Static stretches of video produce no redundant frames,
fast pans produce more. Adapted from morishuz/frame-extractor (MIT).
Closes #1.
v1.5.0
Features
- Release assets are now version-stamped and lowercase:
colmapforge-{version}-{os}-{arch}[-{variant}], e.g.
colmapforge-1.5.0-linux-x64.tar.gzand
colmapforge-1.5.0-windows-x64-cuda.zip. The version comes from the
pushed tag; manually dispatched CI builds are stamped
0.0.0-dev.{sha}so dev bundles cannot be mistaken for releases.
Fixes
- The About dialog now always shows the released version. The app version
is single-sourced fromcolmapforge.__version__(pyproject.toml derives
it via hatch dynamic versioning); it was previously hardcoded to 1.0.0
and never bumped by releases. - Release asset uploads no longer append duplicate auto-generated
"Full Changelog" lines to the GitHub Release body — the four platform
build jobs each did so on every tagged build.
Full Changelog: v1.4.1...v1.5.0
v1.4.1
Fixes
- The generated
database.dbnow uses the modern COLMAP (>= 3.12 / 4.x)
schema: the rig/frame registry (rigs,rig_sensors,frames,
frame_data,pose_priors) is created and populated (one rig per
camera, one frame per image),descriptorsgains itstypecolumn, and
the match tables are keyed bypair_idlike COLMAP's own DDL. Current
COLMAP releases previously refused to load Forge databases, crashing in
ReadCameraRow/ReadAllCameras. - EQUIRECTANGULAR cameras now store the correct
(width, height)params —
COLMAP models it as a spherical camera with implied angular resolution —
instead of a bogus perspective-style(f, cx, cy)guess that also
crashed COLMAP on load.
Verified end-to-end against COLMAP 4.2.0.dev0: Forge-built database →
ALIKED extraction → LightGlue matching → mapper, with all images
registered.
Full Changelog: v1.4.0...v1.4.1
v1.4.0
Features
- Headless CLI mode (
colmapforge run) running the full pipeline without
Qt, plus acmfalias. - YOLO-World + SAM text-prompt cascades with four mask backends: MobileSAM,
SAM2.1-Tiny, EfficientViT-SAM-L0, and EdgeTAM. - Model download overhaul: Hugging Face mirror support, SHA256
verification, and acolmapforge downloadpredownload command. - Sensible CLI defaults and richer top-level help.
- SAM3 runs on GPU when VRAM >= 8 GB; CUDA/cuDNN bundled via pip extras.
Fixes
- Packaged builds (all platforms): bundle the vendored CLIP BPE vocabulary
file; release bundles crashed at segmentation with "No such file or
directory: bpe_simple_vocab_16e6.txt.gz". - Windows:
uv sync --extra gpuno longer fails to resolve — the
[cuda,cudnn]pip extras are Linux-only (the nvidia-* wheels ship no
Windows builds); Windows uses the plainonnxruntime-gpuwheel with a
system CUDA 13 + cuDNN 9 install.
Refactor
- Drop the osam dependency — the CLIP BPE tokenizer is now vendored.
- Remove dead code and dedupe GUI/CLI pipeline logic.
Documentation
- Re-benchmark Apple M4 Pro and merge with RTX 5090 results into a single
comparison table.
Full Changelog: v1.3.0...v1.4.0
Full Changelog: v1.3.0...v1.4.0
Full Changelog: v1.3.0...v1.4.0
Full Changelog: v1.3.0...v1.4.0
v1.3.0
1.3.0 - 2026-08-01
Features
- Add a "Launch COLMAP GUI" button that opens the last built database and
images in COLMAP at any time; enabled after a successful build.
Fixes
- Disabled buttons now have a distinct base color instead of blending into
the card background in dark mode. - The segmentation custom-class hint wraps to multiple lines so the left
sidebar no longer spills under the splitter handle with a horizontal
scrollbar. - Lay out Build / Stop as a full-width primary action with Launch COLMAP
and Open Output side by side beneath it.
Full Changelog: v1.2.0...v1.3.0
v1.2.0
1.2.0 - 2026-08-01
Features
- Restrict SAM support to SAM3, the only SAM family with a native text
encoder; class prompts are now passed straight to it as text. Removed
SAM1 / SAM2 / SAM2.1 backends and the YOLO-World detection bridge. - Register SkyWater in
models.yamlalongside SAM3 (first entry, so it is
the default selection). Unify model download through a single
download_model_entrythat infers zip-vs-single-file from the URL. - Launch COLMAP GUI after build now defaults to off.
Fixes
- Segmentation prompts now take effect: SAM3 uses text directly, and the
pipeline refuses configs lacking a language encoder instead of silently
producing blank masks. - Rebuilding the COLMAP database no longer fails with a
UNIQUE constraint failed: images.name— the old DB file is dropped
before each build. - Image names in the database are stored relative to the image directory,
so COLMAP resolves them without doubling theimagespath segment. - Stopping the pipeline now fully terminates it — workers no longer emit
finishedwhen cancelled, so the next stage never starts. - Preview panel: removed the frame-count overlay badge; the info label now
keeps a consistent format (dimensions always shown once known) instead of
jumping between layouts while navigating. - The progress bar shows the current status message during long model
downloads instead of a bare percentage.
Full Changelog: v1.1.0...v1.2.0
v1.1.0
Full Changelog: v1.0.0...v1.1.0
Full Changelog: v1.0.0...v1.1.0
Full Changelog: v1.0.0...v1.1.0
Full Changelog: v1.0.0...v1.1.0
COLMAP Forge v1.0.0
First Release
COLMAP Forge — a PyQt6 desktop wizard for preparing video/image data for COLMAP SfM pipelines.
Features
- 4-stage pipeline: extraction → resize → masking → database export
- 17 AI models: 16 SAM/SAM2/SAM3 variants + SkyWater SegFormer-B2, auto-downloaded on first use
- Zero-config: models cache to
~/.colmapforge/models/ - GPU auto-detect: CUDA → DirectML → CPU fallback
- Dark/Light themes, keyboard shortcuts, real-time preview
- 18 camera models: SIMPLE_PINHOLE through EQUIRECTANGULAR
Quick Start
git clone https://github.com/Vincentqyw/colmapforge.git
cd colmapforge
uv sync --extra gpu # or --extra directml / --extra cpu
uv run colmapforgePre-built packages for Windows, Linux, and macOS will be available once CI completes.
Full Changelog: https://github.com/Vincentqyw/colmapforge/commits/v1.0.0