Iterative Closest Points

Iterative Closest Points

Method that can be used for alinging shapes iteratively. it works like this:

  1. estimate some correspondences
  2. solve transformation using them
  3. repeat

How to find correspondences? #

  • Assume that closest points correspond
  • This will converge iteratively if starting postitions are “close enough”

Runtime analysis #

  • Each iteration
    1. Finding closest points:
      • iterative_closest_points_99277464ae4a4270d8815726547431e4bf7657c6.svg per point naively
      • Therefore iterative_closest_points_d2d2aecbb8c44910e244b673afcd2c3c06e7a00f.svg in total
    2. Compute optimal alignment iterative_closest_points_bd1d2b4ee07eb14710b672df7a28d91627882a87.svg
    3. Update scene iterative_closest_points_bd1d2b4ee07eb14710b672df7a28d91627882a87.svg
  • Finding closest correspondences can be sped up using acceleration structures like KD-Trees to iterative_closest_points_6ed3a485c87954f77d8a47e71cd2ce901f3acec9.svg
  • Finding the closest points for all points is then in iterative_closest_points_f7ae9dbd244b5a8919eb34e7172e99c2d841cef2.svg

Variations / Improvements #

  • Instead of trying to minimize the distance between the closest points, we can try to instead minimize the distance of points of iterative_closest_points_874a462690fc792889fb3f5d5ac1fd10c61ca248.svg to the tangent planes of nearest points in iterative_closest_points_8b99331a2f7206efc6b7a6dad8146036e3b3d1c1.svg.
  • Drawback: No closed form solution
  • Benefit: Converges faster than taking just aligning point-to-point
Calendar October 22, 2023