{
  "id": 576642,
  "title": "pycolmap API List",
  "url": "/competitions/image-matching-challenge-2025/discussion/576642",
  "author_name": "",
  "post_date": "2025-05-06T12:10:43.686513400Z",
  "votes": 24,
  "comment_count": 1,
  "views": 0,
  "content": "<h1>pycolmap (version=0.6.1) — API List</h1>\n<h2>1. High-level Pipelines</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>incremental_mapping</code></td>\n<td>Core SfM pipeline that incrementally builds a reconstruction from an image set</td>\n</tr>\n<tr>\n<td><code>IncrementalMapperOptions</code>, <code>IncrementalPipelineOptions</code>, <code>IncrementalTriangulator</code>, <code>IncrementalTriangulatorOptions</code></td>\n<td>Options and helpers that control the above pipeline</td>\n</tr>\n<tr>\n<td><code>stereo_fusion</code>, <code>StereoFusionOptions</code></td>\n<td>Fuses depth maps into a dense point cloud / mesh for MVS</td>\n</tr>\n<tr>\n<td><code>poisson_meshing</code>, <code>PoissonMeshingOptions</code></td>\n<td>Generates a mesh with Poisson Surface Reconstruction</td>\n</tr>\n<tr>\n<td><code>undistort_images</code>, <code>UndistortCameraOptions</code></td>\n<td>Undistorts images with optimized camera parameters</td>\n</tr>\n<tr>\n<td><code>bundle_adjustment</code>, <code>BundleAdjustmentOptions</code></td>\n<td>Wrapper for global / local bundle adjustment</td>\n</tr>\n<tr>\n<td><code>triangulate_points</code>, <code>EstimateTriangulationOptions</code></td>\n<td>Triangulates new 3-D points from existing correspondences</td>\n</tr>\n</tbody>\n</table>\n<h2>2. Feature Extraction &amp; Matching</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>extract_features</code></td>\n<td>Extracts SIFT features (GPU capable)</td>\n</tr>\n<tr>\n<td><code>Sift</code>, <code>SiftExtractionOptions</code>, <code>SiftMatchingOptions</code></td>\n<td>SIFT core implementation plus extraction / matching options</td>\n</tr>\n<tr>\n<td><code>match_exhaustive</code>, <code>ExhaustiveMatchingOptions</code></td>\n<td>Brute-force all-pairs matching</td>\n</tr>\n<tr>\n<td><code>match_sequential</code>, <code>SequentialMatchingOptions</code></td>\n<td>Sequential matching for time-ordered frames</td>\n</tr>\n<tr>\n<td><code>match_spatial</code>, <code>SpatialMatchingOptions</code></td>\n<td>Spatial matching using GPS / EXIF priors</td>\n</tr>\n<tr>\n<td><code>match_vocabtree</code>, <code>VocabTreeMatchingOptions</code></td>\n<td>Fast matching via a visual vocabulary tree</td>\n</tr>\n</tbody>\n</table>\n<h2>3. Geometry Estimation &amp; Verification</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>essential_matrix_estimation</code>, <code>fundamental_matrix_estimation</code>, <code>homography_matrix_estimation</code></td>\n<td>2-view geometry estimation with RANSAC</td>\n</tr>\n<tr>\n<td><code>absolute_pose_estimation</code>, <code>pose_refinement</code>, <code>rig_absolute_pose_estimation</code></td>\n<td>PnP / Rig-PnP absolute pose solvers</td>\n</tr>\n<tr>\n<td><code>estimate_two_view_geometry</code>, <code>estimate_two_view_geometry_pose</code>, <code>estimate_calibrated_two_view_geometry</code></td>\n<td>Utilities for relative pose &amp; geometry between two images</td>\n</tr>\n<tr>\n<td><code>RANSACOptions</code></td>\n<td>Shared options for all RANSAC-based solvers</td>\n</tr>\n<tr>\n<td><code>squared_sampson_error</code>, <code>homography_decomposition</code></td>\n<td>Low-level helpers for error evaluation &amp; decomposition</td>\n</tr>\n</tbody>\n</table>\n<h2>4. Alignment &amp; Evaluation Utilities</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>align_reconstructions_via_points</code></td>\n<td>Rigidly aligns multiple reconstructions via shared 3-D points</td>\n</tr>\n<tr>\n<td><code>align_reconstructions_via_proj_centers</code>, <code>align_reconstructions_via_reprojections</code></td>\n<td>Alignment via camera centers or reprojection error</td>\n</tr>\n<tr>\n<td><code>compare_reconstructions</code></td>\n<td>Statistical comparison of two reconstructions</td>\n</tr>\n</tbody>\n</table>\n<h2>5. I/O, Database &amp; Helpers</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>import_images</code></td>\n<td>Bulk-imports image metadata into the SQLite DB</td>\n</tr>\n<tr>\n<td><code>Database</code>, <code>DatabaseTransaction</code></td>\n<td>Direct access to the COLMAP SQLite schema</td>\n</tr>\n<tr>\n<td><code>infer_camera_from_image</code></td>\n<td>Guesses a camera model from image size / metadata</td>\n</tr>\n<tr>\n<td><code>has_cuda</code></td>\n<td>Returns whether CUDA kernels are available</td>\n</tr>\n<tr>\n<td><code>logging</code>, <code>ostream</code></td>\n<td>C++-backed logging and stream helpers</td>\n</tr>\n</tbody>\n</table>\n<h2>6. Core Data Structures</h2>\n<table>\n<thead>\n<tr>\n<th>Class</th>\n<th>Purpose</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Camera</code>, <code>CameraModelId</code>, <code>CameraMode</code></td>\n<td>Camera intrinsics and projection models</td>\n</tr>\n<tr>\n<td><code>Image</code>, <code>ImageSelectionMethod</code></td>\n<td>Image metadata, pose and keypoints</td>\n</tr>\n<tr>\n<td><code>Point2D</code>, <code>Point3D</code>, <code>Track</code>, <code>TwoViewGeometry</code></td>\n<td>2-D / 3-D points, tracks and 2-view geometry info</td>\n</tr>\n<tr>\n<td><code>Reconstruction</code></td>\n<td>Container for cameras, images and point cloud</td>\n</tr>\n<tr>\n<td><code>Rigid3d</code>, <code>Rotation3d</code>, <code>Sim3d</code></td>\n<td>SE(3) / Sim(3) transformation helpers</td>\n</tr>\n<tr>\n<td><code>Correspondence</code>, <code>CorrespondenceGraph</code></td>\n<td>Stores and manages feature correspondences</td>\n</tr>\n</tbody>\n</table>",
  "messages": [
    {
      "id": "3194909",
      "postDate": "05/06/2025 12:10:43",
      "content": "<h1>pycolmap (version=0.6.1) — API List</h1>\n<h2>1. High-level Pipelines</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>incremental_mapping</code></td>\n<td>Core SfM pipeline that incrementally builds a reconstruction from an image set</td>\n</tr>\n<tr>\n<td><code>IncrementalMapperOptions</code>, <code>IncrementalPipelineOptions</code>, <code>IncrementalTriangulator</code>, <code>IncrementalTriangulatorOptions</code></td>\n<td>Options and helpers that control the above pipeline</td>\n</tr>\n<tr>\n<td><code>stereo_fusion</code>, <code>StereoFusionOptions</code></td>\n<td>Fuses depth maps into a dense point cloud / mesh for MVS</td>\n</tr>\n<tr>\n<td><code>poisson_meshing</code>, <code>PoissonMeshingOptions</code></td>\n<td>Generates a mesh with Poisson Surface Reconstruction</td>\n</tr>\n<tr>\n<td><code>undistort_images</code>, <code>UndistortCameraOptions</code></td>\n<td>Undistorts images with optimized camera parameters</td>\n</tr>\n<tr>\n<td><code>bundle_adjustment</code>, <code>BundleAdjustmentOptions</code></td>\n<td>Wrapper for global / local bundle adjustment</td>\n</tr>\n<tr>\n<td><code>triangulate_points</code>, <code>EstimateTriangulationOptions</code></td>\n<td>Triangulates new 3-D points from existing correspondences</td>\n</tr>\n</tbody>\n</table>\n<h2>2. Feature Extraction &amp; Matching</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>extract_features</code></td>\n<td>Extracts SIFT features (GPU capable)</td>\n</tr>\n<tr>\n<td><code>Sift</code>, <code>SiftExtractionOptions</code>, <code>SiftMatchingOptions</code></td>\n<td>SIFT core implementation plus extraction / matching options</td>\n</tr>\n<tr>\n<td><code>match_exhaustive</code>, <code>ExhaustiveMatchingOptions</code></td>\n<td>Brute-force all-pairs matching</td>\n</tr>\n<tr>\n<td><code>match_sequential</code>, <code>SequentialMatchingOptions</code></td>\n<td>Sequential matching for time-ordered frames</td>\n</tr>\n<tr>\n<td><code>match_spatial</code>, <code>SpatialMatchingOptions</code></td>\n<td>Spatial matching using GPS / EXIF priors</td>\n</tr>\n<tr>\n<td><code>match_vocabtree</code>, <code>VocabTreeMatchingOptions</code></td>\n<td>Fast matching via a visual vocabulary tree</td>\n</tr>\n</tbody>\n</table>\n<h2>3. Geometry Estimation &amp; Verification</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>essential_matrix_estimation</code>, <code>fundamental_matrix_estimation</code>, <code>homography_matrix_estimation</code></td>\n<td>2-view geometry estimation with RANSAC</td>\n</tr>\n<tr>\n<td><code>absolute_pose_estimation</code>, <code>pose_refinement</code>, <code>rig_absolute_pose_estimation</code></td>\n<td>PnP / Rig-PnP absolute pose solvers</td>\n</tr>\n<tr>\n<td><code>estimate_two_view_geometry</code>, <code>estimate_two_view_geometry_pose</code>, <code>estimate_calibrated_two_view_geometry</code></td>\n<td>Utilities for relative pose &amp; geometry between two images</td>\n</tr>\n<tr>\n<td><code>RANSACOptions</code></td>\n<td>Shared options for all RANSAC-based solvers</td>\n</tr>\n<tr>\n<td><code>squared_sampson_error</code>, <code>homography_decomposition</code></td>\n<td>Low-level helpers for error evaluation &amp; decomposition</td>\n</tr>\n</tbody>\n</table>\n<h2>4. Alignment &amp; Evaluation Utilities</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>align_reconstructions_via_points</code></td>\n<td>Rigidly aligns multiple reconstructions via shared 3-D points</td>\n</tr>\n<tr>\n<td><code>align_reconstructions_via_proj_centers</code>, <code>align_reconstructions_via_reprojections</code></td>\n<td>Alignment via camera centers or reprojection error</td>\n</tr>\n<tr>\n<td><code>compare_reconstructions</code></td>\n<td>Statistical comparison of two reconstructions</td>\n</tr>\n</tbody>\n</table>\n<h2>5. I/O, Database &amp; Helpers</h2>\n<table>\n<thead>\n<tr>\n<th>Function / Class</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>import_images</code></td>\n<td>Bulk-imports image metadata into the SQLite DB</td>\n</tr>\n<tr>\n<td><code>Database</code>, <code>DatabaseTransaction</code></td>\n<td>Direct access to the COLMAP SQLite schema</td>\n</tr>\n<tr>\n<td><code>infer_camera_from_image</code></td>\n<td>Guesses a camera model from image size / metadata</td>\n</tr>\n<tr>\n<td><code>has_cuda</code></td>\n<td>Returns whether CUDA kernels are available</td>\n</tr>\n<tr>\n<td><code>logging</code>, <code>ostream</code></td>\n<td>C++-backed logging and stream helpers</td>\n</tr>\n</tbody>\n</table>\n<h2>6. Core Data Structures</h2>\n<table>\n<thead>\n<tr>\n<th>Class</th>\n<th>Purpose</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Camera</code>, <code>CameraModelId</code>, <code>CameraMode</code></td>\n<td>Camera intrinsics and projection models</td>\n</tr>\n<tr>\n<td><code>Image</code>, <code>ImageSelectionMethod</code></td>\n<td>Image metadata, pose and keypoints</td>\n</tr>\n<tr>\n<td><code>Point2D</code>, <code>Point3D</code>, <code>Track</code>, <code>TwoViewGeometry</code></td>\n<td>2-D / 3-D points, tracks and 2-view geometry info</td>\n</tr>\n<tr>\n<td><code>Reconstruction</code></td>\n<td>Container for cameras, images and point cloud</td>\n</tr>\n<tr>\n<td><code>Rigid3d</code>, <code>Rotation3d</code>, <code>Sim3d</code></td>\n<td>SE(3) / Sim(3) transformation helpers</td>\n</tr>\n<tr>\n<td><code>Correspondence</code>, <code>CorrespondenceGraph</code></td>\n<td>Stores and manages feature correspondences</td>\n</tr>\n</tbody>\n</table>",
      "rawMarkdown": "# pycolmap (version=0.6.1) — API List\n\n## 1. High-level Pipelines\n| Function / Class | Description |\n| --- | --- |\n| `incremental_mapping` | Core SfM pipeline that incrementally builds a reconstruction from an image set |\n| `IncrementalMapperOptions`, `IncrementalPipelineOptions`, `IncrementalTriangulator`, `IncrementalTriangulatorOptions` | Options and helpers that control the above pipeline |\n| `stereo_fusion`, `StereoFusionOptions` | Fuses depth maps into a dense point cloud / mesh for MVS |\n| `poisson_meshing`, `PoissonMeshingOptions` | Generates a mesh with Poisson Surface Reconstruction |\n| `undistort_images`, `UndistortCameraOptions` | Undistorts images with optimized camera parameters |\n| `bundle_adjustment`, `BundleAdjustmentOptions` | Wrapper for global / local bundle adjustment |\n| `triangulate_points`, `EstimateTriangulationOptions` | Triangulates new 3-D points from existing correspondences |\n\n## 2. Feature Extraction & Matching\n| Function / Class | Description |\n| --- | --- |\n| `extract_features` | Extracts SIFT features (GPU capable) |\n| `Sift`, `SiftExtractionOptions`, `SiftMatchingOptions` | SIFT core implementation plus extraction / matching options |\n| `match_exhaustive`, `ExhaustiveMatchingOptions` | Brute-force all-pairs matching |\n| `match_sequential`, `SequentialMatchingOptions` | Sequential matching for time-ordered frames |\n| `match_spatial`, `SpatialMatchingOptions` | Spatial matching using GPS / EXIF priors |\n| `match_vocabtree`, `VocabTreeMatchingOptions` | Fast matching via a visual vocabulary tree |\n\n## 3. Geometry Estimation & Verification\n| Function / Class | Description |\n| --- | --- |\n| `essential_matrix_estimation`, `fundamental_matrix_estimation`, `homography_matrix_estimation` | 2-view geometry estimation with RANSAC |\n| `absolute_pose_estimation`, `pose_refinement`, `rig_absolute_pose_estimation` | PnP / Rig-PnP absolute pose solvers |\n| `estimate_two_view_geometry`, `estimate_two_view_geometry_pose`, `estimate_calibrated_two_view_geometry` | Utilities for relative pose & geometry between two images |\n| `RANSACOptions` | Shared options for all RANSAC-based solvers |\n| `squared_sampson_error`, `homography_decomposition` | Low-level helpers for error evaluation & decomposition |\n\n## 4. Alignment & Evaluation Utilities\n| Function / Class | Description |\n| --- | --- |\n| `align_reconstructions_via_points` | Rigidly aligns multiple reconstructions via shared 3-D points |\n| `align_reconstructions_via_proj_centers`, `align_reconstructions_via_reprojections` | Alignment via camera centers or reprojection error |\n| `compare_reconstructions` | Statistical comparison of two reconstructions |\n\n## 5. I/O, Database & Helpers\n| Function / Class | Description |\n| --- | --- |\n| `import_images` | Bulk-imports image metadata into the SQLite DB |\n| `Database`, `DatabaseTransaction` | Direct access to the COLMAP SQLite schema |\n| `infer_camera_from_image` | Guesses a camera model from image size / metadata |\n| `has_cuda` | Returns whether CUDA kernels are available |\n| `logging`, `ostream` | C++-backed logging and stream helpers |\n\n## 6. Core Data Structures\n| Class | Purpose |\n| --- | --- |\n| `Camera`, `CameraModelId`, `CameraMode` | Camera intrinsics and projection models |\n| `Image`, `ImageSelectionMethod` | Image metadata, pose and keypoints |\n| `Point2D`, `Point3D`, `Track`, `TwoViewGeometry` | 2-D / 3-D points, tracks and 2-view geometry info |\n| `Reconstruction` | Container for cameras, images and point cloud |\n| `Rigid3d`, `Rotation3d`, `Sim3d` | SE(3) / Sim(3) transformation helpers |\n| `Correspondence`, `CorrespondenceGraph` | Stores and manages feature correspondences |",
      "votes": null
    },
    {
      "id": "3204807",
      "postDate": "05/18/2025 21:01:30",
      "content": "<p>Grait thank you!</p>",
      "rawMarkdown": "Grait thank you!",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 3204807,
      "author_name": "",
      "author_url": "",
      "post_date": "05/18/2025 21:01:30",
      "content": "<p>Grait thank you!</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "3194909": "# pycolmap (version=0.6.1) — API List\n\n## 1. High-level Pipelines\n| Function / Class | Description |\n| --- | --- |\n| `incremental_mapping` | Core SfM pipeline that incrementally builds a reconstruction from an image set |\n| `IncrementalMapperOptions`, `IncrementalPipelineOptions`, `IncrementalTriangulator`, `IncrementalTriangulatorOptions` | Options and helpers that control the above pipeline |\n| `stereo_fusion`, `StereoFusionOptions` | Fuses depth maps into a dense point cloud / mesh for MVS |\n| `poisson_meshing`, `PoissonMeshingOptions` | Generates a mesh with Poisson Surface Reconstruction |\n| `undistort_images`, `UndistortCameraOptions` | Undistorts images with optimized camera parameters |\n| `bundle_adjustment`, `BundleAdjustmentOptions` | Wrapper for global / local bundle adjustment |\n| `triangulate_points`, `EstimateTriangulationOptions` | Triangulates new 3-D points from existing correspondences |\n\n## 2. Feature Extraction & Matching\n| Function / Class | Description |\n| --- | --- |\n| `extract_features` | Extracts SIFT features (GPU capable) |\n| `Sift`, `SiftExtractionOptions`, `SiftMatchingOptions` | SIFT core implementation plus extraction / matching options |\n| `match_exhaustive`, `ExhaustiveMatchingOptions` | Brute-force all-pairs matching |\n| `match_sequential`, `SequentialMatchingOptions` | Sequential matching for time-ordered frames |\n| `match_spatial`, `SpatialMatchingOptions` | Spatial matching using GPS / EXIF priors |\n| `match_vocabtree`, `VocabTreeMatchingOptions` | Fast matching via a visual vocabulary tree |\n\n## 3. Geometry Estimation & Verification\n| Function / Class | Description |\n| --- | --- |\n| `essential_matrix_estimation`, `fundamental_matrix_estimation`, `homography_matrix_estimation` | 2-view geometry estimation with RANSAC |\n| `absolute_pose_estimation`, `pose_refinement`, `rig_absolute_pose_estimation` | PnP / Rig-PnP absolute pose solvers |\n| `estimate_two_view_geometry`, `estimate_two_view_geometry_pose`, `estimate_calibrated_two_view_geometry` | Utilities for relative pose & geometry between two images |\n| `RANSACOptions` | Shared options for all RANSAC-based solvers |\n| `squared_sampson_error`, `homography_decomposition` | Low-level helpers for error evaluation & decomposition |\n\n## 4. Alignment & Evaluation Utilities\n| Function / Class | Description |\n| --- | --- |\n| `align_reconstructions_via_points` | Rigidly aligns multiple reconstructions via shared 3-D points |\n| `align_reconstructions_via_proj_centers`, `align_reconstructions_via_reprojections` | Alignment via camera centers or reprojection error |\n| `compare_reconstructions` | Statistical comparison of two reconstructions |\n\n## 5. I/O, Database & Helpers\n| Function / Class | Description |\n| --- | --- |\n| `import_images` | Bulk-imports image metadata into the SQLite DB |\n| `Database`, `DatabaseTransaction` | Direct access to the COLMAP SQLite schema |\n| `infer_camera_from_image` | Guesses a camera model from image size / metadata |\n| `has_cuda` | Returns whether CUDA kernels are available |\n| `logging`, `ostream` | C++-backed logging and stream helpers |\n\n## 6. Core Data Structures\n| Class | Purpose |\n| --- | --- |\n| `Camera`, `CameraModelId`, `CameraMode` | Camera intrinsics and projection models |\n| `Image`, `ImageSelectionMethod` | Image metadata, pose and keypoints |\n| `Point2D`, `Point3D`, `Track`, `TwoViewGeometry` | 2-D / 3-D points, tracks and 2-view geometry info |\n| `Reconstruction` | Container for cameras, images and point cloud |\n| `Rigid3d`, `Rotation3d`, `Sim3d` | SE(3) / Sim(3) transformation helpers |\n| `Correspondence`, `CorrespondenceGraph` | Stores and manages feature correspondences |",
    "3204807": "Grait thank you!"
  },
  "source": "meta"
}