Iterative Closest Point

Iterative Closest Point (ICP) is an algorithm employed to minimize the difference between two clouds of points. ICP is often used to reconstruct 2D or 3D surfaces from different scans, to localize robots and achieve optimal path planning (especially when wheel odometry is unreliable due to slippery terrain), to co-register bone models, etc.

The algorithm is conceptually simple and is commonly used in real-time. It iteratively revises the transformation (translation, rotation) needed to minimize the distance between the points of two raw scans.

Inputs: points from two raw scans, initial estimation of the transformation, criteria for stopping the iteration.

Output: refined transformation.

Essentially the algorithm steps are :

  1. Associate points by the nearest neighbor criteria.
  2. Estimate transformation parameters using a mean square cost function.
  3. Transform the points using the estimated parameters.
  4. Iterate (re-associate the points and so on).

In, a modified K-D tree algorithm is proposed for efficient closest point computation, and a statistical method based on the distance distribution is used to deal with outliers, occlusion, appearance and disappearance, which enables subset-subset matching.

Famous quotes containing the words closest and/or point:

    The universe is not rough-hewn, but perfect in its details. Nature will bear the closest inspection; she invites us to lay our eye level with the smallest leaf, and take an insect view of its plain. She has no interstices; every part is full of life.
    Henry David Thoreau (1817–1862)

    I look upon it as a Point of Morality, to be obliged by those who endeavour to oblige me.
    Richard Steele (1672–1729)