Iterative Closest Point Method

Fits a set of data points to a set of model points under a rigid body transformation


Updated 2 Jul 2021

View License

The ICP (iterative closest point) algorithm finds a rigid body transformation such that a set of data points fits to a set of model points under the transformation. Default is to use least squares minimization but other criterion functions can be used as well. The implementation is based on the IRLS-ICP described in [1].
[1] Bergström, P. and Edlund, O. 2014, “Robust registration of point sets using iteratively reweighted least squares”, Computational Optimization and Applications, vol 58, no. 3, pp. 543-561, doi: 10.1007/s10589-014-9643-2
[2] Bergström, P. and Edlund, O. (2016) 2017, “Robust registration of surfaces using a refined iterative closest point algorithm with a trust region approach”, Numerical Algorithms, doi: 10.1007/s11075-016-0170-3
Doi links:
Springer Nature’s SharedIt links (full paper online access):
A demonstration of applications, where an ICP-algorithm [2] is implemented in Matlab and C, can be seen on YouTube

Cite As

Per Bergström (2023). Iterative Closest Point Method (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2015a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Update of links

Improved documentation

A new implementation of the ICP algorithm and three examples are added

Have added additional inputs to icp.