COLMAP supports multiple feature extraction and matching algorithms. This page describes how to switch between them using the command-line interface or the graphical user interface.

Feature Matcher Types

The following feature matcher types are available:

  • SIFT_BRUTEFORCE: Brute-force matching optimized for SIFT descriptors (default). Uses L2 distance with ratio test.

  • ALIKED_BRUTEFORCE: Brute-force matching for ALIKED descriptors. Uses cosine similarity. Requires ONNX support to be enabled at build time.

  • SIFT_LIGHTGLUE: Neural network-based matching using the LightGlue model for SIFT descriptors. This typically produces more matches and higher inlier ratios than brute-force matching, especially for challenging image pairs with large viewpoint or illumination changes. Requires ONNX support to be enabled at build time.

  • ALIKED_LIGHTGLUE: Neural network-based matching using the LightGlue model for ALIKED descriptors. Requires ONNX support to be enabled at build time.

To select a feature matcher type via the command-line:

$ colmap exhaustive_matcher \
    --database_path $DATASET_PATH/database.db \
    --FeatureMatching.type ALIKED_BRUTEFORCE \
    --AlikedMatching.min_cossim 0.85

For SIFT matching (the default):

$ colmap exhaustive_matcher \
    --database_path $DATASET_PATH/database.db \
    --FeatureMatching.type SIFT_BRUTEFORCE \
    --SiftMatching.max_ratio 0.8

In the GUI, open Processing > Feature matching, select any matching tab (Exhaustive, Sequential, etc.), and choose the matcher type from the “Type” dropdown in the shared options section.

Compatible Extractor and Matcher Types

The feature extractor and matcher types should be compatible:

  • Use SIFT extraction with SIFT_BRUTEFORCE or SIFT_LIGHTGLUE matching.

  • Use ALIKED_* extraction with ALIKED_BRUTEFORCE or ALIKED_LIGHTGLUE matching.

Mixing incompatible types (e.g., SIFT features with ALIKED matcher) will result in a runtime error. Do not mix different feature extractor types (e.g., SIFT and ALIKED) in the same database.

ALIKED Model Variants

ALIKED requires an ONNX model file. Several model variants are available with different trade-offs between speed and accuracy:

  • aliked-n16rot: Faster and trained for some viewpoint invariance. 128-dim descriptors.

  • aliked-n32: More expensive but not explicitly trained for viewpoint invariance, 128-dim descriptors.

Specify the model path using --AlikedExtraction.*_model_path. If the path is a URL, COLMAP will automatically download and cache the model. You can download different ALIKED models from the release page at https://github.com/colmap/colmap/releases/