GLOMAP

Pan 2024 · Paper

One-line summary — Revisited global Structure-from-Motion and showed it can match incremental SfM (COLMAP) in accuracy while being dramatically faster, by replacing separate translation averaging with a joint camera-and-point global positioning step.

Problem

SfM solutions split into two paradigms. Incremental SfM (COLMAP) registers images one at a time with repeated bundle adjustment; it is accurate and robust but its “costly repeated bundle adjustments” limit scalability. Global SfM recovers all cameras at once and is “orders of magnitude faster”, but had never matched incremental accuracy — the gap “lies in the global translation averaging step”, which suffers from scale ambiguity of two-view translations (skewed triplets amplify noise), dependence on accurate intrinsics to decompose two-view geometry, and degeneracy under near-collinear (forward) motion common in sequential data. GLOMAP set out to close that gap.

Method & architecture

Two components: correspondence search (features, matching, two-view geometry F/E/H\mathbf{F}/\mathbf{E}/\mathbf{H}, view-graph calibration, relative pose estimation) and global estimation.

arg minRi,jρ(d(RjRijRi,I)p)\operatorname*{arg\,min}_{\mathbf{R}}\sum_{i,j}\rho\left(d(\mathbf{R}_{j}^{\top}\mathbf{R}_{ij}\mathbf{R}_{i},\mathbf{I})^{p}\right)

using the authors’ implementation of Chatterjee et al.; relative poses inconsistent with the result (angular distance between Rij\mathbf{R}_{ij} and RjRi\mathbf{R}_{j}\mathbf{R}_{i}^{\top}) are filtered out.

arg minX,c,di,kρ(vikdik(Xkci)2),s.t.dik0\operatorname*{arg\,min}_{\mathbf{X},\mathbf{c},d}\sum_{i,k}\rho\left(\|\mathbf{v}_{ik}-d_{ik}(\mathbf{X}_{k}-\mathbf{c}_{i})\|_{2}\right),\quad\text{s.t.}\quad d_{ik}\geq 0

with Huber loss ρ\rho, Levenberg–Marquardt (Ceres), all variables initialised uniformly at random in [1,1][-1,1] and dik=1d_{ik}=1. For optimal dikd_{ik} the per-term error equals sinθ\sin\theta for angle θ<π/2\theta<\pi/2 and saturates at 11 beyond — a bounded, outlier-robust error that converges reliably from random initialisation thanks to its bilinear form. Because errors are defined on camera rays rather than relative translations, bad intrinsics only bias individual cameras, and forward/sideward motion is no longer degenerate.

Results

Why it matters for SLAM

SfM tools like COLMAP are the standard way to generate ground-truth trajectories, offline maps, and training data for NeRF/3DGS and learning-based SLAM. GLOMAP makes this offline mapping step much cheaper at scale and rehabilitated global SfM as a serious general-purpose paradigm after a decade in which incremental pipelines were assumed to be the only robust option — a line continued by GPU-native systems like InstantSfM. Conceptually, its “solve everything at once” stance mirrors the SLAM backend’s global bundle adjustment, and its ray-based global positioning shows how reformulating a fragile estimation step (translation averaging) can matter more than optimising it harder.