Iterative closest point (ICP) algorithm,最近点迭代算法,常用于实时三维配准和动作追踪。
算法输入: 两组三维采样集合,
以及
,但不局限于点云,也可以同时输入对应点的颜色信息,法向量或者其他预处理特征信息。
算法输出:从P到Q的 刚体变换。 若P,Q为 deformation proxy 的节点组,则输出每个P点到Q的对应点的加权刚体变换(非线性情况)。
注:刚体变换包括 3自由度旋转(欧拉角) 和 3自由度平移(xyz)。有时也会考虑到scale和shear,求解自由度会增加。
算法框架:
- 初始化求解, R, T 和 registration error
- 对P中的每一个采样点,找到在Q内的最近的对应点,构建correspondence set
- 使用correspondence set的对应关系来计算 R, T
- 使用求解出的新的R, T来更新 P集合