简介:
正态分布变换算法,又名为
NDT
(
Normal Distributions Transform
)算法
。该算法是一个一次性初始化的工作。和 ICP
算法相比,
NDT
算法的配准效果同
ICP算法相似,其改进实质等同于将 ICP
算法栅格化,是另一种传统的点云配准算法。该算法实质是通过计算点云与点云之间的姿态转换,来确定最优匹配。而判断点云与点云之间是否为最优匹配的方法是基于标准最优化技术。
NDT 算法一般过程如下:
已知有两幅点云,分别为源点云
P
和目标点云
Q
。
(
1
)将源点云
P
所在空间划分为一个单元一个单元的网格(即三维空间在二维空间上的投影)。
(2)根据所划分单元网格内点的分布情况,计算该单元网格的正太分布
PDF参数。
(3)根据转移矩阵,将目标点云
Q
内的点进行变换;
(4)统计源点云
P
所在空间划分网格内目标点云点的个数,根据点的分布情况计算对应的概率分布函数;
(5)求解所有点的最优值,也即求解目标点云与源点云之间的刚体变换。
总结:
(1)不同于 ICP
算法,NDT 算法在配准过程中需要删除距离不正确的点对。但是由于每一次的迭代过程计算代价较高,需要搜索所有的临近点。
(2)在配准时,NDT
算法能够直接进行配准和计算,而不需要通过对应点的特征。所以在计算邻近搜索匹配点时不会消耗过多代价,概率密度函数计算较为简单,极大的提高了算法的效率
。因此从时间复杂度的角度上来看,NDT
算法优于
ICP
算法。