ICP算法

 ICP算法(Iterative Closest Point迭代最近点)(有待完善)

ICP(Iterative Closest Point迭代最近点)算法是一种点集对点集配准方法,如下图1

如下图,假设PR(红色块)和RB(蓝色块)是两个点集,该算法就是计算怎么把PB平移旋转,使PB和PR尽量重叠,建立模型的

(图1)

ICP是改进自对应点集配准算法的

对应点集配准算法是假设一个理想状况,将一个模型点云数据X(如上图的PB)利用四元数旋转,并平移得到点云P(类似于上图的PR)。而对应点集配准算法主要就是怎么计算出qR和qT的,知道这两个就可以匹配点云了。

但是对应点集配准算法的前提条件是计算中的点云数据PB和PR的元素一一对应,这个条件在现实里因误差等问题,不太可能实线,所以就有了ICP算法

 

ICP算法是从源点云上的(PB)每个点 先计算出目标点云(PR)的每个点的距离,使每个点和目标云的最近点匹配,(记得这种映射方式叫满射吧)

这样满足了对应点集配准算法的前提条件、每个点都有了对应的映射点,则可以按照对应点集配准算法计算,但因为这个是假设,所以需要重复迭代运行上述过程,直到均方差误差小于某个阀值。

 

也就是说 每次迭代,整个模型是靠近一点,每次都重新找最近点,然后再根据对应点集批准算法算一次,比较均方差误差,如果不满足就继续迭代

你可能感兴趣的:(机器学习)