Inter-robot loop closure

An inter-robot loop closure is the detection that two different robots have observed the same place, plus the relative pose between their observations. It is the fundamental event in collaborative SLAM: without at least one, two robots’ maps are unrelated coordinate frames; with them, submaps can be aligned, merged, and jointly optimized.

Why it is harder than single-robot loop closure

The verification ladder

Because a false closure is catastrophic, acceptance is layered, each stage filtering the previous one’s survivors:

  1. Appearance candidate: descriptor similarity (BoW score, embedding distance) flags keyframe pairs across robots.
  2. Geometric verification: local features of the two keyframes are matched and a relative pose is estimated with RANSAC (PnP against the partner’s local 3D points, or essential matrix from 2D-2D matches); enough inliers → a candidate constraint with covariance.
  3. Consistency across closures: even geometrically verified closures can be aliased. Robust back-ends check whether sets of closures agree with each other before any of them is trusted.

For stage 3, Pairwise Consistency Maximization (PCM, used in DOOR-SLAM) checks each pair of inter-robot closures for mutual consistency: two measurements zik\mathbf{z}_{ik} and zjl\mathbf{z}_{jl} between robots aa and bb are consistent if composing them with the robots’ own odometry approximately closes the loop,

Log ⁣(zik1  x^ija  zjl  x^lkb)Σγ,\left\|\,\mathrm{Log}\!\left(\mathbf{z}_{ik}^{-1}\;\hat{\mathbf{x}}^a_{ij}\;\mathbf{z}_{jl}\;\hat{\mathbf{x}}^b_{lk}\right)\right\|_{\Sigma} \le \gamma,

a Mahalanobis test over the composed cycle. Building a graph whose nodes are candidate closures and whose edges mark consistent pairs, the largest mutually consistent subset is the maximum clique — outliers, which are inconsistent with the coherent majority, fall outside it. Graduated non-convexity (GNC, used in Kimera-Multi) attacks the same problem inside the optimizer, starting from a convex surrogate cost and progressively sharpening it so outlier edges lose influence.

Once verified, the closure yields a relative pose constraint TaibjT_{a_i b_j} between keyframe ii of robot aa and keyframe jj of robot bb, which enters map merging and global (possibly distributed) pose-graph optimization exactly like any other edge.

Common pitfalls

Why it matters for SLAM

Inter-robot loop closures are the currency that buys a shared map — the whole point of multi-robot SLAM. Their scarcity (robots may overlap rarely) and their outsized failure cost (one bad closure corrupts every robot’s map) explain why modern collaborative systems invest so heavily in robust place recognition and outlier-resilient optimization.