3D点云配准方法
- ICP
Iterative Closest Point,迭代最近点算法。假设有A与B两帧点云,将B做T0变换变成B1,再在B1中利用K-d tree找到A中所有点的对应点。由所有对应点之间欧氏距离的平方和来作为评价函数,不断迭代,使得评价函数降低,最终将收敛于实际变换T的近似值。
特点:耗时,在场景变化小的情况下匹配位姿准确,但当场景快速变化,可能无法收敛。
- NDT
Normal Destribution Transform正态分布变换。在传统的ICP算法里,对于场景的微小变化是“无法忍受”的。NDT改进了这一点,并且由于涉及了对体素的操作,因此可以对付更加稠密的地图。
首先应该知道的是,正态分布函数是一个数学上十分漂亮的函数。其均值反映位置,协方差矩阵反映离散程度。通过将点云分成一个个cell(类似体素),用一个正态分布函数来表示这个格子的状态。其中均值u为点的坐标平均值,方差反映各点与均值点的离散程度。
所以接下来的操作就是迭代找到使得两帧点云整体的正态分布尽可能相近。
滤波器
- Unscented Kalman Filter无迹卡尔曼滤波器
无迹卡尔曼滤波是在卡尔曼滤波器的基础上做的改进。从编程思想来看,其输入是估计的位姿,噪声的分布情况,已知的是控制输入、上一时刻状态对下一时刻状态的影响(函数关系),其输出是对被估计状态的一个校正。
曼哈顿距离与欧氏距离
直接见图比较方便。