Module 4: Fine Registration

4.1 What is Fine Registration?

Coarse registration gives a “good enough” initial alignment, but it is not accurate enough for most applications. Fine registration aims to perfectly align the two point clouds by iteratively minimising the geometric distance between them. The most classic fine registration algorithm is ICP (Iterative Closest Point).

idea of ICP is simple:

  1. 1. For each point in the source cloud, find the closest point in the target cloud (correspondences).
  2. 2. Compute a transformation that minimises the total distance between all source points and their correspondences. There are two main metrics, Point‑to‑Point Error and Point‑to‑Plane Error.
  3. 3. Apply this transformation to the source cloud.
  4. 4. Repeat steps 1–3 until the error no longer decreases significantly.

4.2 Point-to-Point Metric: The "Direct Pull" Approach

Point-to-point is the most intuitive version of ICP. Imagine that every pair of corresponding points \((p_i, q_i)\) is connected by a tiny invisible spring. The goal of the algorithm is to move and rotate the source cloud so that the total tension in all these springs is as low as possible. We mathematically represent this tension as the Squared Euclidean Distance:

\[ E_{point}(R, t) = \sum_{i=1}^{n} \| R p_i + t - q_i \|^2 \]

To solve this, we use a powerful mathematical tool called Singular Value Decomposition (SVD) . SVD allows us to find the optimal rotation and translation in a single "giant leap" rather than taking many small steps.

4.3 Point-to-Plane Metric: The "Surface-Aware" Approach

In the real world, surfaces like walls or floors are smooth. Point-to-point ICP can sometimes get "stuck" because it tries to force points to meet exactly, even if they are slightly offset due to sensor noise. Point-to-Plane ICP solves this by using the surface normals (\(n_i\)) of the target cloud.

Instead of pulling points directly together, it only minimizes the distance perpendicular to the target surface. This allows the source points to "slide" freely along the surface until they find the perfect fit, much like how you might slide a picture frame against a wall to align it. The error function becomes:

\[ E_{plane}(R, t) = \sum_{i=1}^{n} [ (R p_i + t - q_i) \cdot n_i ]^2 \]

4.4 ICP Iteration and Termination

A typical ICP workflow:

  1. 1. Input: Source cloud P, target cloud Q, initial transformation T0 (from RANSAC).
  2. 2. For iteration k:

    Transform the source cloud:\( P'_k = R_k P + t_k \).

    Find closest points in \( Q \).

    Reject pairs with distance too large.

    Compute incremental transformation\( \Delta R,\Delta t \).

    Update global transformation:\( R_{k+1} = \Delta R \cdot R_k, \quad t_{k+1} = \Delta R \cdot t_k + \Delta t \)

  3. 3. Stop when the incremental rotation angle and translation length are both smaller than thresholds.

4.5 Operating instructions

Once the point clouds are roughly aligned, fine registration achieves higher precision. By iteratively minimizing the Euclidean distance between the closest points, the algorithm "snaps" the datasets into perfect spatial synchronization.

Operating instructions
Parameter Meaning Adjustment Guide
Voxel Size (m) Downsampling before each ICP iteration to improve speed and smooth convergence. Smaller than RANSAC’s voxel size. Very small preserves details but is slow.
Max Iterations Maximum number of iterative correspond-find-and-transform steps. Default 100-200 works for most. Increase to 500-1000 if convergence is slow; but beyond 1000 rarely helps.
Reference: Besl, Paul J., and Neil D. McKay. "Method for registration of 3-D shapes." Sensor fusion IV: control paradigms and data structures. Vol. 1611. Spie, 1992.