Iterative Closest Point

版本 1.14.0.0 (8.8 KB) 作者: Jakob Wilm
An implementation of various ICP (iterative closest point) features.
26.2K 次下载
更新时间 2013/1/25

查看许可证

The ICP algorithm takes two point clouds as an input and return the rigid transformation (rotation matrix R and translation vector T), that best aligns the point clouds.

Example:
[R,T] = icp(q,p,10);

Aligns the points of p to the points q with 10 iterations of the algorithm.
The transformation is then applied using
R*p + repmat(T,1,length(p));

The file has implemented both point to point and point to plane as well as a couple of other features such as extrapolation, weighting functions, edge point rejection, etc.

For an introductory text on the ICP algorithm and the implemented variants, see http://www2.imm.dtu.dk/~jakw/publications/bscthesis.pdf

Hans Martin Kjer & Jakob Wilm -- Evaluation of surface registration algorithms for PET motion correction

引用格式

Jakob Wilm (2026). Iterative Closest Point (https://ww2.mathworks.cn/matlabcentral/fileexchange/27804-iterative-closest-point), MATLAB Central File Exchange. 检索时间: .

MATLAB 版本兼容性
创建方式 R2012a
兼容任何版本
平台兼容性
Windows macOS Linux
致谢

启发作品: Optimal Step Nonrigid ICP

版本 已发布 发行说明
1.14.0.0

Replaced the link to the thesis.

1.13.0.0

Modified Orthogonal Procrustes to prevent non-plausible rotation matrix (det(R) should be +1).
-- Thank you, Tomasz!

1.12.0.0

Clearing the input parser object due to memory leaks (in older Matlab versions?) -- thanks, Walter!

1.11.0.0

* Added a missing sub function: k_nearest_neighbors
* Fixed a bug in the lsqnorest sub function
* Removed GLTree reference because it is not available any longer
* Updated the examples to be clearer

1.10.0.0

Updated icp.m with a missing sub function.

1.9.0.0

Corrected link to thesis.

1.8.0.0

Combined functions in one file and added a demo script.

1.7.0.0

Corrected a typo in icp.m (as pointed out in the comments, thanks!)

1.4.0.0

Added rms_error and added a screenshot.

1.1.0.0

Added link to thesis.

1.0.0.0