# cvg/pixel-perfect-sfm

Pixel-Perfect Structure-from-Motion with Featuremetric Refinement (ICCV 2021, Best Student Paper Award)

Repository: https://github.com/cvg/pixel-perfect-sfm
Canonical: https://ross.abutalabs.com/products/pixel-perfect-sfm
Language: C++
License: Apache-2.0
License Family: permissive
Topics: deep-learning, structure-from-motion, 3d-vision, visual-localization, feature-matching
Last push: 2024-07-30T18:03:22+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 1842, "days_push": 764, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1484, forks 153 (observed 2026-08-28T04:04:51.287731+00:00)

## What it is
pixsfm is a Python package with a C++ core that improves Structure-from-Motion and visual localization accuracy by refining keypoints, camera poses, and 3D points via featuremetric alignment of deep features. It integrates with COLMAP and the hloc toolbox to refine existing models or reconstruct new datasets with state-of-the-art image matching.

## Use cases
- refine an existing COLMAP 3D model for higher accuracy
- reconstruct a new dataset from images with state-of-the-art feature matching
- localize query images against a 3D scene in challenging conditions
- run keypoint adjustment on a COLMAP database before SfM
- run bundle adjustment to refine 3D points and camera poses
- evaluate refinement quality on the ETH3D benchmark

## When to choose
- you need pixel-accurate camera poses and 3D points for SfM or visual localization
- you already use COLMAP or hloc and want to boost reconstruction accuracy
- you work with challenging conditions where standard keypoints underperform
- you need a research-grade pipeline from an award-winning ICCV 2021 paper

## When to avoid
- you need a turnkey photogrammetry tool without building COLMAP and Ceres from source
- you work on Windows, which is untested
- you need real-time or lightweight SfM - the refinement is computationally heavy
- your project only needs basic feature matching without refinement

## Facets
- artifact type: library
- maturity: maintenance
- function: computer-vision, image-processing, machine-learning, deep-learning
- domain: computer-vision
- platform: python, cpp
- tags: structure-from-motion, feature-matching, keypoint-refinement, bundle-adjustment, colmap, hloc, visual-localization, ceres-solver, pytorch, 3d-vision, linux

## Member repositories
- cvg/pixel-perfect-sfm (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:51.287731+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:33:59.993065+00:00, confidence not recorded.
  - readme: https://github.com/cvg/pixel-perfect-sfm (fetched 2026-08-28T04:04:51.287731+00:00, sha 94da66103ad7)
- Data as of 2026-08-30T08:39:29.467469+00:00.
