QUASAR

Yang 2019 · Paper

One-line summary — First polynomial-time certifiably optimal solver for the Wahba problem (rotation search) with outliers: a Truncated Least Squares cost, rewritten via unit quaternions and “binary cloning” as a QCQP, then solved by a tight SDP relaxation.

Problem

The Wahba problem — find the rotation that best aligns two sets of vector observations given putative correspondences — is a fundamental routine in point cloud registration, image stitching, motion estimation, and satellite attitude determination. The outlier-free version, minRSO(3)iwi2biRai2\min_{\mathbf{R}\in\mathrm{SO}(3)}\sum_i w_i^2\Vert\mathbf{b}_i-\mathbf{R}\mathbf{a}_i\Vert^2, has closed-form solutions, but real correspondences from feature matching can be 95% outliers (e.g., FPFH matches). RANSAC’s runtime grows exponentially with the outlier ratio and degrades with noise, robust local optimization (e.g., FGR) can stall in local minima, and Branch-and-Bound is globally optimal but worst-case exponential. Before QUASAR there was no polynomial-time certifiably optimal approach to rotation search with many outliers.

Method & architecture

TLS formulation. Each measurement contributes a least-squares term only while its residual is small; beyond a threshold it saturates and stops influencing the estimate:

minRSO(3)i=1Nmin(1σi2biRai2, cˉ2),\min_{\mathbf{R}\in\mathrm{SO}(3)} \sum_{i=1}^{N} \min\left( \frac{1}{\sigma_i^2}\Vert\mathbf{b}_i - \mathbf{R}\mathbf{a}_i\Vert^2,\ \bar{c}^2 \right),

where σi\sigma_i is the inlier noise standard deviation and cˉ2\bar{c}^2 is chosen as the χ2(3)\chi^2(3) quantile at probability pp (e.g., p=0.99p=0.99), so σi2cˉ2\sigma_i^2\bar{c}^2 is the largest squared residual tolerated for an inlier.

Quaternion rewriting. Representing R\mathbf{R} by a unit quaternion qS3\mathbf{q}\in\mathcal{S}^3 replaces the constraint set SO(3)\mathrm{SO}(3) by the unit sphere, with Ra\mathbf{R}\mathbf{a} expressed through quaternion products qa^q1\mathbf{q}\otimes\hat{\mathbf{a}}\otimes\mathbf{q}^{-1}.

Binary cloning to a QCQP. Using min(x,y)=minθ{±1}1+θ2x+1θ2y\min(x,y)=\min_{\theta\in\{\pm 1\}} \frac{1+\theta}{2}x+\frac{1-\theta}{2}y, the TLS cost becomes a mixed-integer program where θi=+1\theta_i=+1 declares measurement ii an inlier and θi=1\theta_i=-1 an outlier — so outlier classification lives inside the optimization. Defining clone quaternions qi=θiq\mathbf{q}_i = \theta_i\mathbf{q} removes the integers, and stacking x=[qT q1T  qNT]T\mathbf{x}=\left[\mathbf{q}^{\mathsf{T}}\ \mathbf{q}_1^{\mathsf{T}}\ \dots\ \mathbf{q}_N^{\mathsf{T}}\right]^{\mathsf{T}} yields an exactly equivalent Quadratically Constrained Quadratic Program:

minxR4(N+1)i=1NxTQixs.t.xqTxq=1,xqixqiT=xqxqT i,\min_{\mathbf{x}\in\mathbb{R}^{4(N+1)}} \sum_{i=1}^{N}\mathbf{x}^{\mathsf{T}}\mathbf{Q}_i\mathbf{x} \quad \text{s.t.} \quad \mathbf{x}_q^{\mathsf{T}}\mathbf{x}_q = 1,\quad \mathbf{x}_{q_i}\mathbf{x}_{q_i}^{\mathsf{T}} = \mathbf{x}_q\mathbf{x}_q^{\mathsf{T}}\ \forall i,

with known symmetric matrices Qi\mathbf{Q}_i built from ai,bi\mathbf{a}_i,\mathbf{b}_i.

Tight SDP relaxation. Lifting to Z=xxT0\mathbf{Z}=\mathbf{x}\mathbf{x}^{\mathsf{T}}\succeq 0 and dropping the rank-1 constraint gives a convex SDP over tr(QZ)\mathrm{tr}(\mathbf{Q}\mathbf{Z}). The naive relaxation (only the block-diagonal constraints) is provably tight with no noise and no outliers (Theorem 7) but breaks in practice with outliers. QUASAR adds redundant symmetry constraints on the off-diagonal blocks, [Z]qqi=[Z]qqiT[\mathbf{Z}]_{qq_i}=[\mathbf{Z}]_{qq_i}^{\mathsf{T}} and [Z]qiqj=[Z]qiqjT[\mathbf{Z}]_{q_iq_j}=[\mathbf{Z}]_{q_iq_j}^{\mathsf{T}}, which make the relaxation empirically tight under large noise and extreme outlier rates. When the solution has rank 1 (zero relaxation gap), the recovered rotation is certified globally optimal for the original non-convex TLS problem.

Results

Why it matters for SLAM

Rotation estimation sits inside many SLAM subproblems: point cloud registration, map merging, rotation averaging, and extrinsic calibration. QUASAR is part of the “certifiable perception” line of work (with SE-Sync and TEASER++, largely from the same group) showing that key geometric problems in robotics can be solved to provable global optimality even with heavy outlier contamination. Its ingredients — the TLS cost, binary cloning, and the redundant-constraint SDP — became the rotation subsolver machinery inside TEASER/TEASER++.