2D-2D correspondence

Given feature matches between two images — with no 3D information yet — 2D-2D geometry estimates the relative camera motion. The three workhorse models are the essential matrix, the fundamental matrix, and the homography, each estimated by a minimal or linear solver wrapped in RANSAC.

Five-Point Algorithm for the Essential Matrix

With calibrated cameras, the essential matrix EE can be estimated from 5 point correspondences (Nister, 2004). The constraints are:

The result is up to 10 real solutions, disambiguated by additional points. Combined with RANSAC, the five-point algorithm is the preferred method for essential matrix estimation in practice: a smaller minimal sample means far fewer RANSAC iterations at the same inlier ratio.

Eight-Point Algorithm for the Fundamental Matrix

The fundamental matrix FF has 7 degrees of freedom. With 8+ correspondences, the 8-point algorithm (Longuet-Higgins, 1981; Hartley, 1997) solves a linear homogeneous system Af=0A\mathbf{f} = 0 with f=vec(F)\mathbf{f} = \mathrm{vec}(F) via SVD. Hartley showed that normalizing point coordinates (zero mean, unit variance) before solving dramatically improves numerical conditioning — the “normalized 8-point algorithm” is the version everyone actually uses. After solving, the rank-2 constraint is enforced by zeroing the smallest singular value of the estimated FF.

Direct Linear Transform for Homography

When the scene is planar or the motion is a pure rotation, a homography HH explains the correspondences. Each correspondence xHx\mathbf{x}' \sim H\mathbf{x} gives 2 linear equations in the 8 DOF of HH; with N4N \geq 4 correspondences the DLT stacks a 2N×92N \times 9 matrix and solves Ah=0A\mathbf{h} = 0 via SVD. Normalization is again critical.

Why minimal solvers matter: RANSAC iteration counts

Feature matches contain outliers, so every solver above runs inside RANSAC: sample a minimal set, fit the model, count inliers, repeat. With inlier ratio ww and sample size ss, the probability that NN iterations produce at least one all-inlier sample is 1(1ws)N1 - (1 - w^s)^N; requiring success probability 1η1 - \eta gives

N=logηlog(1ws)N = \frac{\log \eta}{\log(1 - w^s)}

For w=0.5w = 0.5: the 8-point algorithm (s=8s = 8) needs N1177N \approx 1177 iterations, while the 5-point algorithm (s=5s = 5) needs only N145N \approx 145. The exponential dependence on ss is the whole argument for minimal solvers — and why P3P (s = 3) is preferred once 3D information exists.

From model to motion

After RANSAC selects the best model on the inliers:

Choosing the model

Degenerate configurations matter: a planar scene or pure rotation makes FF/EE estimation ill-posed, while a general 3D scene breaks the homography assumption. ORB-SLAM famously fits both models during monocular initialization and picks the winner by a per-model score.

Common pitfalls

Why it matters for SLAM

2D-2D correspondence is the entry point of monocular SLAM: it bootstraps the first relative pose (up to scale) before any map exists, after which triangulation creates landmarks and the pipeline switches to 2D-3D (PnP) tracking. The same solvers also verify loop-closure candidates geometrically and underpin structure-from-motion pipelines such as COLMAP.

Hands-on