Skip to main content

COLMAP bindings

Project description

Python Bindings for COLMAP

PyCOLMAP exposes to Python most capabilities of the COLMAP Structure-from-Motion (SfM) and Multi-View Stereo (MVS) pipeline.

Installation

Pre-built wheels for Linux, macOS, and Windows can be installed using pip:

pip install pycolmap

The wheels are automatically built and pushed to PyPI at each release. To benefit from GPU acceleration, wheels built for CUDA 12 (only for Linux - for now) are available under the package pycolmap-cuda12.

[Building PyCOLMAP from source - click to expand]
  1. Install COLMAP from source following the official guide.

  2. Build PyCOLMAP:

    • On Linux and macOS:
      python -m pip install .
      
    • On Windows, after installing COLMAP via VCPKG, run in powershell:
      python -m pip install . `
          --cmake.define.CMAKE_TOOLCHAIN_FILE="$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake" `
          --cmake.define.VCPKG_TARGET_TRIPLET="x64-windows"
      

Reconstruction Pipeline

PyCOLMAP provides bindings for multiple steps of the standard reconstruction pipeline:

  • Extracting and matching SIFT features
  • Importing an image folder into a COLMAP database
  • Inferring the camera parameters from the EXIF metadata of an image file
  • Running two-view geometric verification of matches on a COLMAP database
  • Triangulating points into an existing COLMAP model
  • Running incremental reconstruction from a COLMAP database
  • Dense reconstruction with multi-view stereo

Sparse & Dense Reconstruction

Sparse & Dense reconstruction from a folder of images can be performed with:

output_path: pathlib.Path
image_dir: pathlib.Path

output_path.mkdir()
mvs_path = output_path / "mvs"
database_path = output_path / "database.db"

pycolmap.extract_features(database_path, image_dir)
pycolmap.match_exhaustive(database_path)
maps = pycolmap.incremental_mapping(database_path, image_dir, output_path)
maps[0].write(output_path)

# Dense reconstruction
pycolmap.undistort_images(mvs_path, output_path, image_dir)
pycolmap.patch_match_stereo(mvs_path)  # requires compilation with CUDA
pycolmap.stereo_fusion(mvs_path / "dense.ply", mvs_path)

PyCOLMAP can leverage the GPU for feature extraction, matching, and multi-view stereo if COLMAP was compiled with CUDA support. Similarly, PyCOLMAP can run Delaunay Triangulation if COLMAP was compiled with CGAL support. This requires to build the package from source and is not available with the PyPI wheels.

Configuration Options

All of the above steps are easily configurable with python dicts which are recursively merged into their respective defaults, for example:

pycolmap.extract_features(
    database_path, image_dir,
    extraction_options={"sift": {"max_num_features": 512}}
)

# Equivalent to:
ops = pycolmap.FeatureExtractionOptions()
ops.sift.max_num_features = 512
pycolmap.extract_features(database_path, image_dir, extraction_options=ops)

To list available options and their default parameters:

help(pycolmap.SiftExtractionOptions)

For another example of usage, see example.py or hloc/reconstruction.py.

Reconstruction Object

We can load and manipulate an existing COLMAP 3D reconstruction:

import pycolmap

reconstruction = pycolmap.Reconstruction("path/to/reconstruction/dir")
print(reconstruction.summary())

for image_id, image in reconstruction.images.items():
    print(image_id, image)

for point3D_id, point3D in reconstruction.points3D.items():
    print(point3D_id, point3D)

for camera_id, camera in reconstruction.cameras.items():
    print(camera_id, camera)

reconstruction.write("path/to/reconstruction/dir/")

Common Operations

The object API mirrors the COLMAP C++ library. The bindings support many operations, for example:

Projecting a 3D point into an image with arbitrary camera model:

uv = camera.img_from_cam(image.cam_from_world * point3D.xyz)

Aligning two 3D reconstructions by their camera poses:

rec2_from_rec1 = pycolmap.align_reconstructions_via_reprojections(
    reconstruction1, reconstruction2
)
reconstruction1.transform(rec2_from_rec1)
print(rec2_from_rec1.scale, rec2_from_rec1.rotation, rec2_from_rec1.translation)

Exporting reconstructions to text, PLY, or other formats:

reconstruction.write_text("path/to/new/reconstruction/dir/")  # text format
reconstruction.export_PLY("rec.ply")  # PLY format

Estimators

We provide robust RANSAC-based estimators for:

  • Absolute camera pose (single-camera and multi-camera-rig)
  • Essential matrix
  • Fundamental matrix
  • Homography
  • Two-view relative pose for calibrated cameras

All RANSAC and estimation parameters are exposed as objects that behave similarly as Python dataclasses. The RANSAC options are described in colmap/optim/ransac.h and their default values are:

ransac_options = pycolmap.RANSACOptions(
    max_error=4.0,  # For example the reprojection error in pixels
    min_inlier_ratio=0.01,
    confidence=0.9999,
    min_num_trials=1000,
    max_num_trials=100000,
)

Absolute Pose Estimation

To estimate the absolute pose of a query camera given 2D-3D correspondences:

# Parameters:
# - points2D: Nx2 array; pixel coordinates
# - points3D: Nx3 array; world coordinates
# - camera: pycolmap.Camera
# Optional parameters:
# - estimation_options: dict or pycolmap.AbsolutePoseEstimationOptions
# - refinement_options: dict or pycolmap.AbsolutePoseRefinementOptions
answer = pycolmap.estimate_and_refine_absolute_pose(points2D, points3D, camera)
# Returns: dictionary of estimation outputs or None if failure

2D and 3D points are passed as Numpy arrays or lists. The options are defined in estimators/absolute_pose.cc and can be passed as regular (nested) Python dictionaries:

pycolmap.estimate_and_refine_absolute_pose(
    points2D, points3D, camera,
    estimation_options=dict(ransac=dict(max_error=12.0)),
    refinement_options=dict(refine_focal_length=True),
)

Absolute Pose Refinement

# Parameters:
# - cam_from_world: pycolmap.Rigid3d, initial pose
# - points2D: Nx2 array; pixel coordinates
# - points3D: Nx3 array; world coordinates
# - inlier_mask: array of N bool; inlier_mask[i] is true if correspondence i is an inlier
# - camera: pycolmap.Camera
# Optional parameters:
# - refinement_options: dict or pycolmap.AbsolutePoseRefinementOptions
answer = pycolmap.refine_absolute_pose(
    cam_from_world, points2D, points3D, inlier_mask, camera
)
# Returns: dictionary of refinement outputs or None if failure

Essential Matrix Estimation

# Parameters:
# - points1: Nx2 array; 2D pixel coordinates in image 1
# - points2: Nx2 array; 2D pixel coordinates in image 2
# - camera1: pycolmap.Camera of image 1
# - camera2: pycolmap.Camera of image 2
# Optional parameters:
# - options: dict or pycolmap.RANSACOptions (default inlier threshold is 4px)
answer = pycolmap.estimate_essential_matrix(points1, points2, camera1, camera2)
# Returns: dictionary of estimation outputs or None if failure

Fundamental Matrix Estimation

answer = pycolmap.estimate_fundamental_matrix(
    points1,
    points2,
    [options],  # optional dict or pycolmap.RANSACOptions
)

Homography Estimation

answer = pycolmap.estimate_homography_matrix(
    points1,
    points2,
    [options],  # optional dict or pycolmap.RANSACOptions
)

Two-View Geometry Estimation

COLMAP can also estimate a relative pose between two calibrated cameras by estimating both E and H and accounting for the degeneracies of each model.

# Parameters:
# - camera1: pycolmap.Camera of image 1
# - points1: Nx2 array; 2D pixel coordinates in image 1
# - camera2: pycolmap.Camera of image 2
# - points2: Nx2 array; 2D pixel coordinates in image 2
# Optional parameters:
# - matches: Nx2 integer array; correspondences across images
# - options: dict or pycolmap.TwoViewGeometryOptions
answer = pycolmap.estimate_calibrated_two_view_geometry(
    camera1, points1, camera2, points2
)
# Returns: pycolmap.TwoViewGeometry

The TwoViewGeometryOptions control how each model is selected. The output structure contains the geometric model, inlier matches, the relative pose (if options.compute_relative_pose=True), and the type of camera configuration, which is an instance of the enum pycolmap.TwoViewGeometryConfiguration.

Camera Argument

Some estimators expect a COLMAP camera object, which can be created as follows:

camera = pycolmap.Camera(
    model=camera_model_name_or_id,
    width=width,
    height=height,
    params=params,
)

The different camera models and their extra parameters are defined in colmap/src/colmap/sensor/models.h. For example for a pinhole camera:

camera = pycolmap.Camera(
    model='SIMPLE_PINHOLE',
    width=width,
    height=height,
    params=[focal_length, cx, cy],
)

Alternatively, we can also pass a camera dictionary:

camera_dict = {
    'model': COLMAP_CAMERA_MODEL_NAME_OR_ID,
    'width': IMAGE_WIDTH,
    'height': IMAGE_HEIGHT,
    'params': EXTRA_CAMERA_PARAMETERS_LIST
}

SIFT Feature Extraction

import numpy as np
import pycolmap
from PIL import Image, ImageOps

# Input should be grayscale image with range [0, 1].
img = Image.open('image.jpg').convert('RGB')
img = ImageOps.grayscale(img)
img = np.array(img).astype(np.float) / 255.

# Optional parameters:
# - options: dict or pycolmap.SiftExtractionOptions
# - device: default pycolmap.Device.auto uses the GPU if available
sift = pycolmap.Sift()

# Parameters:
# - image: HxW float array
keypoints, descriptors = sift.extract(img)
# Returns:
# - keypoints: Nx4 array; format: x (j), y (i), scale, orientation
# - descriptors: Nx128 array; L2-normalized descriptors

Bitmap

PyCOLMAP provides bindings for the Bitmap class to work with images and convert them to/from NumPy arrays:

import numpy as np
import pycolmap

# Read a bitmap from file
bitmap = pycolmap.Bitmap.read("image.jpg", as_rgb=True)
print(f"Size: {bitmap.width}x{bitmap.height}, Channels: {bitmap.channels}")

# Convert to NumPy array
array = bitmap.to_array()  # Shape: (H, W, 3) for RGB or (H, W) for grayscale

# Create bitmap from NumPy array
array = np.random.randint(0, 255, (480, 640, 3), dtype=np.uint8)
bitmap = pycolmap.Bitmap.from_array(array)

# Write bitmap to file
bitmap.write("output.jpg")

# Rescale bitmap
bitmap.rescale(new_width=320, new_height=240)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pycolmap-4.0.3-cp314-cp314-win_amd64.whl (24.1 MB view details)

Uploaded CPython 3.14Windows x86-64

pycolmap-4.0.3-cp314-cp314-manylinux_2_28_x86_64.whl (27.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

pycolmap-4.0.3-cp314-cp314-macosx_14_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

pycolmap-4.0.3-cp313-cp313-win_amd64.whl (23.4 MB view details)

Uploaded CPython 3.13Windows x86-64

pycolmap-4.0.3-cp313-cp313-manylinux_2_28_x86_64.whl (27.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pycolmap-4.0.3-cp313-cp313-macosx_14_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

pycolmap-4.0.3-cp312-cp312-win_amd64.whl (23.4 MB view details)

Uploaded CPython 3.12Windows x86-64

pycolmap-4.0.3-cp312-cp312-manylinux_2_28_x86_64.whl (27.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pycolmap-4.0.3-cp312-cp312-macosx_14_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

pycolmap-4.0.3-cp311-cp311-win_amd64.whl (23.4 MB view details)

Uploaded CPython 3.11Windows x86-64

pycolmap-4.0.3-cp311-cp311-manylinux_2_28_x86_64.whl (27.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pycolmap-4.0.3-cp311-cp311-macosx_14_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

pycolmap-4.0.3-cp310-cp310-win_amd64.whl (23.4 MB view details)

Uploaded CPython 3.10Windows x86-64

pycolmap-4.0.3-cp310-cp310-manylinux_2_28_x86_64.whl (27.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

pycolmap-4.0.3-cp310-cp310-macosx_14_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

File details

Details for the file pycolmap-4.0.3-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.0.3-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 24.1 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycolmap-4.0.3-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 7950529e85084f20de2108357ad0ebcdb667a476412d25b4476462e7bbde3d25
MD5 451b24176ca504b3e2ff6fd941168316
BLAKE2b-256 92446e2e7e776135259c238bb53d7a43a9cb82d13ec1c482924aafa9ee5b0929

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp314-cp314-win_amd64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6b059827b6ae5afa64aa4ac6f8983c30859e306df5f6ead97fbbc86e9985dde9
MD5 98abbfdf13b380bcd4a8f86188eb68b0
BLAKE2b-256 21f96ce404a001a75a3cb5fa0298174d140fffba3167bce974e6c1f95c586505

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4312ef6285b731418b44b3f704f2a8f6bf087ab7c395643645bef2e1eb9a9128
MD5 6ca0477e9967676337ea7259ddc69eb1
BLAKE2b-256 cb24e585ed19291b753c27542517c249f1cab0b80fc224686cc8e5a566dcbfa7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp314-cp314-macosx_14_0_arm64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.0.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 23.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycolmap-4.0.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9fc3627da78516cae6b49457623303664783f5a2d59fe9a5e7a762d59499f4b4
MD5 dfa7024e686025fa330e607aaf0050c9
BLAKE2b-256 aa113962dce548ab0e7b9e4d908905a284e9253d16b3ae26ed7dac927d11cd70

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp313-cp313-win_amd64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0442df542c5e42430d14b8e62a41cd4df33966fbf2966f6058c21c7e3b2c0bd0
MD5 fe8faefc0d571143f6609a9170dd7b06
BLAKE2b-256 9dcf77025909fc86b768e7fe2bf2537bbb68622016f8f4efc38299539a125b39

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 cc8f48b902d3d72c9ce8c304ceb866c77d449b07f0b8f789b3808f6d1c295d58
MD5 4c9a53e082c664b264e0a06082938f99
BLAKE2b-256 9da0e76966a400b8dc9a69a28caff23641824cae0aa8fde77d957c68b91a01f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp313-cp313-macosx_14_0_arm64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.0.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 23.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycolmap-4.0.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4773de247d692a5aa744933bc3569a8a4827d903200ff83c044f83646f97a60c
MD5 ec6a8bebfa3b5e5c54d0e6c9caba2571
BLAKE2b-256 b7e358d1c81420bdf74ced9288cbe0931403ca6f04811477c64f1811f8a45282

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp312-cp312-win_amd64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a9c1feef2a8b0e23b0398fd862ac72b05d5057e66936e776aec39164dacc4c81
MD5 637e5c85dc08fc400dc95ec8dd0fd7af
BLAKE2b-256 aa58b712fcceb8b4f612c365d998ebe71d0cbc95c628a636a9b6d9059f7b41b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 c6290f1da342ae3065ea31dc0639220ce4b774db09d7c944e49be62be2f2f119
MD5 7b4d6296efbcd5793507cbad6b03389d
BLAKE2b-256 cf138029bc25ad8fba9fa401b38bc17ce6f69ca4bccd24c6accacf9d09350575

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp312-cp312-macosx_14_0_arm64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.0.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 23.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycolmap-4.0.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3b0dc3cc07ef5b54c2996d804d1405e49fcff0f731940968ef926c4a6e39cc27
MD5 c9b1c31a650dc36628679ec1f299ca4b
BLAKE2b-256 559b073bb4226f65db20b6fb8d9069461770c0e52990950a84390facc7211ea3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp311-cp311-win_amd64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9e2247bd438a6eca2dcc1ab1790b63fed37192ff3e807ea543c888c3419df85d
MD5 11ca0af46c9a14e62eabd98569876e02
BLAKE2b-256 19fcefc13ac17075b512cc055982b55ec3e76ef75a3421009980cbb202b0ecb8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 18412a324b72589a9e64d214be0668bc25e61b9479ed4733de7465007afdece3
MD5 7a212e47864edd9b2c60d1ce7783e408
BLAKE2b-256 9a5c6d7f1d1b4d5e830dbebde6de0f30cc65b53d0daaf358aa40159d38e4d723

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.0.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 23.4 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pycolmap-4.0.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0a4f5a6dc0b1806baae33859eacc1066918e5cad3e28acbf7b1ec19d128bacd0
MD5 75994419e90dff6a1991429d0f02028b
BLAKE2b-256 d18dcf471ee3006c9ca8c894c8fcf029a991e721c41cb1d609cabb2e8096fcc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp310-cp310-win_amd64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eec105dddb98de89a6ec5243890f04d03dc91a4527521f8b6a3e7f61e0e4366d
MD5 51ae4b95831b40a73d7899fddc41ab2a
BLAKE2b-256 634eff9a1c6c2a1ee3b87709ff292203ebffae02a61aae3ee0f00d78a9da7368

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pycolmap-4.0.3-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.0.3-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 62032da137cd535fc26cc1ac0c337edf88ffc192ebe5b3fa28f79a661520fe22
MD5 dbf1984f84b8e6b13ecc4dd9bc649d8c
BLAKE2b-256 3be7eb902e7738d4c5e48147721b9e901811aafe547bf31ba6edd59a060438fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.0.3-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: build-pycolmap.yml on colmap/colmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page