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 and Advancing Front Surface Reconstruction 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.1.1-cp314-cp314-win_amd64.whl (24.2 MB view details)

Uploaded CPython 3.14Windows x86-64

pycolmap-4.1.1-cp314-cp314-manylinux_2_28_x86_64.whl (27.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

pycolmap-4.1.1-cp314-cp314-macosx_14_0_arm64.whl (20.4 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

pycolmap-4.1.1-cp313-cp313-win_amd64.whl (23.5 MB view details)

Uploaded CPython 3.13Windows x86-64

pycolmap-4.1.1-cp313-cp313-manylinux_2_28_x86_64.whl (27.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pycolmap-4.1.1-cp313-cp313-macosx_14_0_arm64.whl (20.4 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

pycolmap-4.1.1-cp312-cp312-win_amd64.whl (23.5 MB view details)

Uploaded CPython 3.12Windows x86-64

pycolmap-4.1.1-cp312-cp312-manylinux_2_28_x86_64.whl (27.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pycolmap-4.1.1-cp312-cp312-macosx_14_0_arm64.whl (20.4 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

pycolmap-4.1.1-cp311-cp311-manylinux_2_28_x86_64.whl (27.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pycolmap-4.1.1-cp311-cp311-macosx_14_0_arm64.whl (20.3 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

pycolmap-4.1.1-cp310-cp310-manylinux_2_28_x86_64.whl (27.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

pycolmap-4.1.1-cp310-cp310-macosx_14_0_arm64.whl (20.3 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: pycolmap-4.1.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 24.2 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.1.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 d40fd1a386b6aab73e338fb1379e88c9e8243e635d15b8fc3b9e7e9c61cc6997
MD5 f356399f28502b741d97071ab8cd9171
BLAKE2b-256 c520172a8ffe2b510f4a63b07a6c481e1407844336e6ba4b0f6302df4cf15894

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a902b3cb64191d4dd9122b89da9f4a17779e07f18f9815727f4f59eaf90641d
MD5 d3695ff2c99e558b834a5135a6aa68be
BLAKE2b-256 75ebe50b8e701496fef4da59dadfe617aaa0395e5d51a1f6281926da00ca5a46

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 e19ff5259485de12e17254b4505497b958f5ef0b92afbd8123c4f71b610e5e51
MD5 802937334bcb29fe84349ba3af8d48da
BLAKE2b-256 32ce77641b85a44bdf2bba729da252ed2607f654955594b2e0490be0a2127b55

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.1.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 23.5 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.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 66a5a26f9cbbea3da64f2823b12c296b8980b89b29d8619a16ce81963ad5ed75
MD5 e0f5b31aa69c5637d2fa977b33f23f1e
BLAKE2b-256 644d0cc116fc01ae77cb1e58e2c45e6fe0488b657c8c6c4cdbdf3f4d4f93d55d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5fdc8638461a5f69d3ecae3dca339a7347967af9493b36e8113da4470ee90d78
MD5 aea2bfaf8cc7b36186b1b6c1d174ccff
BLAKE2b-256 5bb2feef41cdf2e0dd8151c8f903afbc776b54f2cf08b974533e3a1231f832cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4a0d5711a60ce7d08ddffb8c472b70de9688928176409db0801581b52bf81639
MD5 6b1f4700eefcfbc0054013f2b3d27191
BLAKE2b-256 315fa5013caf0a4422138c02745ef35c39e430ba0dbe399c9afd0c71186fbf2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.1.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 23.5 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.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 60ef432ad42464a0f5416b4e051b63b0ba6a7696318ff54b33808174a9540944
MD5 44818b7f92b4df827def777273b3fc57
BLAKE2b-256 b410215a92d3b72349b11d08ec0b36b7c37934d06f59659018666e254599fabe

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a445f9033b3db793f417fbeee6093b56e8b5da31bdba13f2259d1954bead5a4d
MD5 472c97ef944279253a92fc7b1e55f91c
BLAKE2b-256 d9ad68693b725e33b27af363d8f1a017a3ab5114c3aae907903027c4431e115b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3e2b00d210c0172db86feb9678ab21cae102417b5fa47360c4e7345ad8be61cb
MD5 d53e87b1e8952893baaf8e38ce0c7ff8
BLAKE2b-256 d08d5ed2df40234848df40dd68df0c74058f11af71362022cc2b7bb56848c1b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.1.1-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.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9ec76f535418a8dc37572009afb648a0409fadd8f7ea11433a1d96430c7a0ad5
MD5 cc6607250e22b83a39c1a34b1cd0768f
BLAKE2b-256 0ce03c8cda988b17f87b45809022dcf21eafdc5d9a58a200713e9449c65680e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 91892863a4258f0f2b19b1bcf1a05711a6f4e6f265329056c5af1807d4ba5c78
MD5 820864a82bdfb45a3122836ceb147169
BLAKE2b-256 5778102e189b8892ec592fe902a6a1c90d4a49a4238caf743a211a37a638904b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 18e903f66d325df896f83c938f35af2a9eeafdf5680f374ad6d0eca830253aef
MD5 54d6caadad85289d69a372625f8fa9ed
BLAKE2b-256 aeb1a7096a535d5946e2763c94b9941142ebc22d0f02f15e92008530874d4a4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pycolmap-4.1.1-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.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 31ebf4cd0e1e05b063e8c71ed082d9fbf6cd36405ac784ca9cb9a31bf44b3201
MD5 037a502212008304196367eb19a748d8
BLAKE2b-256 4cced01fa2a5371360d0430e06270748c7e9d3bcee883955861d1d9e8eefa111

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e1e2e92a90696b35d612be32a2420cab6fd1e70c4106a7f75e757b463c50b370
MD5 e6f0ecace06763d95f37a2cdaf0ceb1b
BLAKE2b-256 a63237fd7188aa9f5e947079babecdae8f306b6224759845cae5eae207ded2a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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.1.1-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pycolmap-4.1.1-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 9f72df88d229c901bf40692ca3ff21f2af96f91e0806b1041dfc47741f51c27d
MD5 c9289b4ce5c23ee23262a63b44c5f0b4
BLAKE2b-256 ecff01bf92eb5be59b97ba9fa98de3d014cc27f19e3277a7cc9084156be5ea82

See more details on using hashes here.

Provenance

The following attestation bundles were made for pycolmap-4.1.1-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