步骤4计算这一帧起始角度和终止角度是为了构建一个“整体”,下面就可以通过这个点和初始角度的偏差来计算,这个点到底在这一帧内部进行了多久的运动,并且将这个时间存储起来,从而进行雷达去畸变。(具体什么是雷达去畸变可以参考LOAM中的论文) 步骤5,计算出每一个点对应的线束,并且重新组织,是为了下面计算曲率使用。 ...
下面是我对LOAM论文的理解以及对A-LOAM的源码阅读(中文注释版的A-LOAM已经push到github,见A-LOAM-NOTED),最后也会手推一下LOAM源码中高斯牛顿法(论文中说的是LM法)求解ICP配准的非线性最小二乘问题,这一部分在A-LOAM代码中用Ceres优化函数库做了简化,CSDN也有篇不错的博文,知乎也有篇很赞的文章,如有问题,欢...
LOAM提出了一种简单而高效的特征点提取方式:根据点云点的曲率提取特征点。即把特别尖锐的边线点与特别平坦的平面点作为特征点。 LOAM对点的曲率是这样计算的, 公式看起来比较复杂,实际上就是同一条扫描线上的取目标点左右两侧各5个点,分别与目标点的坐标作差,得到的结果就是目标点的曲率。当目标点处在棱或角的...
A-LOAM源码解读 文件目录 代码 1、kittiHelper.cpp 2、scanRegistration.cpp 3、laserOdometry.cpp 4、laserMapping.cpp 5、lidarFactor.cpp 参考 代码 1、kittiHelper.cpp /* * @Author: your name ...
大型工业跨平台软件C++源码提供,建模,组态!【推荐】会员力量,点亮园子希望,期待您升级成为博客园VIP会员 编辑推荐: · Kafka 原理剖析之「Topic创建」 · 如何排查线上 w3wp.exe CPU 高的问题 · 架构师备考的一些思考 · 利用分布式锁在 ASP.NET Core 中实现防抖 · 写在临近40岁的年龄 阅读排行: · ...
可以清楚地看出laserOdometry的订阅了5个话题:有序点云、极大平面点、次极小平面点、极小平面点、次极小平面点。发布了4个话题:有序点云、上一帧的平面点、上一帧的边线点、当前帧位姿粗估计。 二、laserOdometry主函数 2.1 话题的订阅与发布 intmain(intargc,char**argv){ros::init(argc,argv,"laserOdometr...
从rqt_graph中观察节点关系,节点laserMapping订阅了来自laserOdometry的四个话题:地图点点云、上一帧的边线点集合,上一帧的平面点集合,以及当前帧的位姿粗估计。 发布了四个话题:附近帧组成的点云集合(submap),所有帧组成的点云地图,当前帧位姿精估计。
goldqiu:二.激光SLAM框架学习之A-LOAM框架---介绍及其演示 整个项目是用ROS环境下的catkin make进行编译的,初学者主要关注include、launch、rviz_cfg、src文件夹和README、CMakeLists、package文件。 CMakeLists文件: find_package(catkin REQUIRED COMPONENTS geometry_msgs nav_msgs sensor_msgs roscpp rospy rosbag...