Changelog

COLMAP 3.8 (01/31/2023)

COLMAP 3.7 (01/26/2022)

COLMAP 3.6 (07/24/2020)

  • Improved robustness and faster incremental reconstruction process

  • Add image_deleter command to remove images from sparse model

  • Add image_filter command to filter bad registrations from sparse model

  • Add point_filtering command to filter sparse model point clouds

  • Add database_merger command to merge two databases, which is useful to parallelize matching across different machines

  • Add image_undistorter_standalone to enable undistorting images without a pre-existing full sparse model

  • Improved undistortion for fisheye cameras and FOV camera model

  • Support for masking input images in feature extraction stage

  • Improved HiDPI support in GUI for high-resolution monitors

  • Import sparse model when launching GUI from CLI

  • Faster CPU-based matching using approximate NN search

  • Support for bundle adjustment with fixed extrinsics

  • Support for fixing existing images when continuing reconstruction

  • Camera model colors in viewer can be customized

  • Support for latest GPU architectures in CUDA build

  • Support for writing sparse models in Python scripts

  • Scripts for building and running COLMAP in Docker

  • Many more bug fixes and improvements to code and documentation

COLMAP 3.5 (08/22/2018)

  • COLMAP is now released under the BSD license instead of the GPL

  • COLMAP is now installed as a library, whose headers can be included and libraries linked against from other C/C++ code

  • Add hierarchical mapper for parallelized reconstruction or large scenes

  • Add sparse and dense Delaunay meshing algorithms, which reconstruct a watertight surface using a graph cut on the Delaunay triangulation of the reconstructed sparse or dense point cloud

  • Improved robustness when merging different models

  • Improved pre-trained vocabulary trees available for download

  • Add COLMAP as a software entry under Linux desktop systems

  • Add support to compile COLMAP on ARM platforms

  • Add example Python script to read/write COLMAP database

  • Add region of interest (ROI) cropping in image undistortion

  • Several import bug fixes for spatial verification in image retrieval

  • Add more extensive continuous integration across more compilation scenarios

  • Many more bug fixes and improvements to code and documentation

COLMAP 3.4 (01/29/2018)

  • Unified command-line interface: The functionality of previous executables have been merged into the src/exe/colmap.cc executable. The GUI can now be started using the command colmap gui and other commands are available as colmap [command]. For example, the feature extractor is now available as colmap feature_extractor [args] while all command-line arguments stay the same as before. This should result in much faster project compile times and smaller disk space usage of the program. More details about the new interface are documented at https://colmap.github.io/cli.html

  • More complete depth and normal maps with larger patch sizes

  • Faster dense stereo computation by skipping rows/columns in patch match, improved random sampling in patch match, and faster bilateral NCC

  • Better high DPI screen support for the graphical user interface

  • Improved model viewer under Windows, which now requires Qt 5.4

  • Save computed two-view geometries in database

  • Images (keypoint/matches visualization, depth and normal maps) can now be saved from the graphical user interface

  • Support for PMVS format without sparse bundler file

  • Faster covariant feature detection

  • Many more bug fixes and improvements

COLMAP 3.3 (11/21/2017)

  • Add DSP (Domain Size Pooling) SIFT implementation. DSP-SIFT outperforms standard SIFT in most cases, as shown in “Comparative Evaluation of Hand-Crafted and Learned Local Features”, Schoenberger et al., CVPR 2017

  • Improved parameters dense reconstruction of smaller models

  • Improved compile times due to various code optimizations

  • Add option to specify camera model in automatic reconstruction

  • Add new model orientation alignment based on upright image assumption

  • Improved numerical stability for generalized absolute pose solver

  • Support for image range specification in PMVS dense reconstruction format

  • Support for older Python versions in automatic build script

  • Fix OpenCV Fisheye camera model to exactly match OpenCV specifications

COLMAP 3.2 (9/2/2017)

  • Fully automatic cross-platform build script (Windows, Mac, Linux)

  • Add multi-GPU feature extraction if multiple CUDA devices are available

  • Configurable dimension and data type for vocabulary tree implementation

  • Add new sequential matching mode for image sequences with high frame-rate

  • Add generalized relative pose solver for multi-camera systems

  • Add sparse least absolute deviation solver

  • Add CPU/GPU options to automatic reconstruction tool

  • Add continuous integration system under Windows, Mac, Linux through Github

  • Many more bug fixes and improvements

COLMAP 3.1 (6/15/2017)

  • Add fast spatial verification to image retrieval module

  • Add binary file format for sparse models by default. Old text format still fully compatible and possible conversion in GUI and CLI

  • Add cross-platform little endian binary file reading and writing

  • Faster and less memory hungry stereo fusion by computing consistency on demand and possible limitation of image size in fusion

  • Simpler geometric stereo processing interface. Now geometric stereo output can be computed using a single pass

  • Faster and multi-architecture CUDA compilation

  • Add medium quality option in automatic reconstructor

  • Many more bug fixes and improvements

COLMAP 3.0 (5/22/2017)

  • Add automatic end-to-end reconstruction tool that automatically performs sparse and dense reconstruction on a given set of images

  • Add multi-GPU dense stereo if multiple CUDA devices are available

  • Add multi-GPU feature matching if multiple CUDA devices are available

  • Add Manhattan-world / gravity alignment using line detection

  • Add CUDA-based feature extraction useful for usage on clusters

  • Add CPU-based feature matching for machines without GPU

  • Add new THIN_PRISM_FISHEYE camera model with tangential/radial correction

  • Add binary to triangulate existing/empty sparse reconstruction

  • Add binary to print summary statistics about sparse reconstruction

  • Add transitive feature matching to transitively complete match graph

  • Improved scalability of dense reconstruction by using caching

  • More stable GPU-based feature matching with informative warnings

  • Faster vocabulary tree matching using dynamic scheduling in FLANN

  • Faster spatial feature matching using linear index instead of kd-tree

  • More stable camera undistortion using numerical Newton iteration

  • Improved option parsing with some backwards incompatible option renaming

  • Faster compile times by optimizing includes and CUDA flags

  • More stable view selection for small baseline scenario in dense reconstruction

  • Many more bug fixes and improvements

COLMAP 2.1 (12/7/2016)

  • Support to only index and match specific images in vocabulary tree matching

  • Support to perform image retrieval using vocabulary tree

  • Several bug fixes and improvements for multi-view stereo module

  • Improved Structure-from-Motion initialization strategy

  • Support to only reconstruct the scene using specific images in the database

  • Add support to merge two models using overlapping registered images

  • Add support to geo-register/align models using known camera locations

  • Support to only extract specific images in feature extraction module

  • Support for snapshot model export during reconstruction

  • Skip already undistorted images if they exist in output directory

  • Support to limit the number of features in image retrieval for improved speed

  • Miscellaneous bug fixes and improvements

COLMAP 2.0 (9/8/2016)

  • Implementation of dense reconstruction pipeline

  • Improved feature matching performance

  • New bundle adjuster for rigidly mounted multi-camera systems

  • New generalized absolute pose solver for multi-camera systems

  • New executable to extract colors from all images

  • Boost can now be linked in shared and static mode

  • Various bug fixes and performance improvements

COLMAP 1.1 (5/19/2016)

  • Implementation of state-of-the-art image retrieval system using Hamming embedding for vocabulary tree matching. This should lead to much improved matching results as compared to the previous implementation.

  • Guided matching as an optional functionality.

  • New demo datasets for download.

  • Automatically switch to PBA if supported by the project.

  • Implementation of EPNP solver for local pose optimization in RANSAC.

  • Add option to extract upright SIFT features.

  • Saving JPEGs in superb quality by default in export.

  • Add option to clear matches and inlier matches in the project.

  • New fisheye camera models, including the FOV camera model used by Google Project Tango (Thomas Schoeps).

  • Extended documentation based on user feedback.

  • Fixed typo in documentation (Thomas Schoeps).

COLMAP 1.0 (4/4/2016)

  • Initial release of COLMAP.