点云匹配在感知环节是一个很重要的信息获取手段,而其中的算法也有几个比较经典了,例如ICP(Iterative Closest Point,迭代最近点)算法,而本文决定记录学习的是NDT算法,也就是Normal Distribution Transform,正态分布变换算法。什么是正态分布变换算法呢,简言之,就是把空间中的点云进行整理,整理成具有分布特性的块,然后根据这些块来对不同帧的点云做匹配,求解这些分布块的位姿变换。
但实际上,还是要好好学习其原理以及实现才行。
0.本文大纲
以下给出本文大纲,一共分为学习部分以及总结部分:
- NDT算法的基本原理学习
- NDT算法C++代码实现
- 总结
1.NDT算法的基本原理学习
首先需要明确一点,任何算法都是一系列逻辑和数值运算组成的针对某一问题的解决方案。NDT也不例外,因此其算法原理就要从提出这一系列运算的作者文章和原始代码中去学习了。而此处使用的是IEEE的论文:《The Normal Distributions Transform: A New Approach to Laser Scan Matching》-Peter Biber.
1.1 NDT算法核心思想与论文学习
正态分布变换(NDT)算法是一个匹配算法,可以较好的获取前后两个目标之间的姿态变动关系以及匹配度等信息,故常用于匹配定位,地图构建等,而NDT最经典的应用就是激光点云的匹配,获取位姿变换,也就是旋转平移变化参数 [
标签:pose,C++,current,_.,详解,rtk,NDT,gps From: https://www.cnblogs.com/Gaowaly/p/18355619