激光SLAM入门学习笔记[通俗易懂]

激光SLAM入门学习笔记[通俗易懂]激光SLAM入门学习笔记(持续更新)激光SLAM入门学习笔记(持续更新)一、推荐阅读书籍二、推荐公众号、知乎、博客1、公众号2、知乎3、博客三、推荐阅读论文&代码(参考泡泡机器人)2D激光SLAM3D激光SLAM1、LOAM(经典)2、A-LOAM(初学)3、LeGO-LOAM(进阶)4、Lio-mapping(进阶、LIO初学)5、hdl_graph_slam(入门)10、SC-LeGO-LOAM(应用推荐)激光SLAM入门学习笔记(持续更新)一、推荐阅读书籍视觉SLAM十四讲概率机器人

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

激光SLAM入门学习笔记

一、推荐阅读书籍

  • 视觉SLAM十四讲
  • 概率机器人
  • 机器人学中的状态估计
  • 计算机视觉中的多视图几何
  • 机器人感知:因子图在SLAM中的应用
  • 矩阵分析/MIT老爷子的线性代数课程也可
  • 点云库PCL从入门到精通

ROS

  • ROS机器人编程实践 [美] 摩根·奎格利(Morgan Quigley),布莱恩·格克(Brian,G )著

Linux

  • 鸟哥的Linux私房菜

C++

  • C++ Primer Plus
  • C++ Primer
  • 侯捷C++课程,b站有

二、推荐公众号、知乎、博客

1、公众号

  • 泡泡机器人:SLAM经典公众号
  • 计算机视觉life:分享计算机视觉类资料

2、知乎

  • 半闲居士:《视觉SLAM十四讲》作者高翔博士
  • hitcm:SLAM算法工程师,专注机器人与无人驾驶
  • 肖泽东Shon:腾讯计算机视觉(SLAM/VIO)算法工程师
  • David LEE:SLAM工程师
  • 游振兴:专注于机器人领域研究
  • bobin:专注于机器人、无人机、视觉SLAM等领域
  • 丁有爽:专注于机器人控制、SLAM、机器视觉等领域
  • Hengkai Guo:专注于计算机视觉、深度学习、SLAM领域
  • 无语西:专注于vSLAM研究
  • Encoder:专注于机器人、机器视觉等领域
  • fishmarch:专注于视觉SLAM研究
  • 原野寻踪:聚焦于移动机器人的视觉SLAM
  • 张珊珊:专注于语义SLAM研究
  • 范帝楷:专注于SLAM研究
  • 李阳阳:专注于SLAM研究
  • 杨小东:专注于SLAM、移动机器人领域

3、博客

  • 白巧克力亦唯心:CSDN博客专家,发布数十篇原创高质量博文,包含算法推导系列、SLAM、用ROS开发自己的机器人系列等
  • 半闲居士:高翔博士博客,主要包含了SLAM数学基础、基本理论以及SLAM实践
  • sylvester0510:包含OpenCV实践以及对ORB-SLAM2的详细解读等原创文章
  • 勿在浮砂筑高台:包含特征比配、图像处理、机器学习等相关原创文章
  • 冯兵的博客:专注于计算机视觉,主要包括三维重建和视觉定位
  • hitcm:包含了SLAM开源代码的解读,ROS实践
  • 李健:包含相机标定、DBoW原理介绍及应用等
  • 刘富强:关于深度滤波器的原理、实现以及对极约束进行了详细介绍
  • 五行缺帅:专注于计算机视觉、SLAM、深度学习等领域
  • 徐尚:分享OpenCV、SLAM开源框架、ROS等学习经验
  • 极品巧克力:分享SLMA数学基础、开源框架解读
  • 一索哥传奇:专注于机器人、SLAM领域的研究

三、推荐阅读论文&代码(参考泡泡机器人)

2D激光SLAM

1、Gmapping
简介
基于粒子滤波框架的激光SLAM,结合里程计和激光信息,每个粒子都携带一个地图,构建小场景地图所需的计算量较小,精度较高。可以结合《概率机器人》一起学习。
Github链接
https://github.com/ros-perception/openslam_gmapping
https://github.com/ros-perception/slam_gmapping
相关论文
Giorgio Grisetti, Cyrill Stachniss, and Wolfram Burgard: Improved Techniques for Grid Mapping with Rao-Blackwellized Particle Filters, IEEE Transactions on Robotics, Volume 23, pages 34-46, 2007.

Giorgio Grisetti, Cyrill Stachniss, and Wolfram Burgard: Improving Grid-based SLAM with Rao-Blackwellized Particle Filters by Adaptive Proposals and Selective Resampling, In Proc. of the IEEE International Conference on Robotics and Automation (ICRA), 2005.

2、Hector_slam
简介
利用优化方法进行帧间匹配的激光slam算法,不需要里程计信息,代码较短。缺点是在雷达频率不够的设备上,效果不佳。
GitHub链接
https://github.com/tu-darmstadt-ros-pkg/hector_slam
相关论文
Kohlbrecher, Stefan , et al. “A flexible and scalable slam system with full 3d motion estimation.” 2011 IEEE International Symposium on Safety, Security, and Rescue Robotics IEEE, 2011.

3、Karto
简介
图优化SLAM,包含回环,主要利用矩阵的稀疏化进行求解,在大范围环境下建图有优势。
Github链接
https://github.com/ros-perception/open_karto
https://github.com/ros-perception/slam_karto
相关论文
Olson, E. B. . “Real-time correlative scan matching.” Robotics and Automation, 2009. ICRA ’09. IEEE International Conference on IEEE, 2009.
Konolige, Kurt , et al. “Efficient sparse pose adjustment for 2D mapping.” 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems IEEE, 2010.

4、Cartographer
谷歌出品,必属佳品
简介
源自谷歌,代码优美,是非常完整的激光slam系统,包含相对鲁棒的前端,基于submap和node约束的独立的pose graph后端及各类评测工具。模块化、系统化、工程化程度很高, 封装很完善,初次学习需要一定的c++和算法基础。同时它的注释完善,各类资料与教程众多,很适合进阶学习。
Github链接
https://github.com/cartographer-project/cartographer
相关论文
Hess, Wolfgang , et al. “Real-Time Loop Closure in 2D LIDAR SLAM.” 2016 IEEE International Conference on Robotics and Automation (ICRA) IEEE, 2016.

3D激光SLAM

1、LOAM(经典)

经典之作,长期霸榜
简介
长期霸榜kitti odometry门类第一,分为前端和后端,提取线面特征进行匹配定位,很好的权衡了精度和效率。虽然原版代码已经闭源,但在该算法基础上,有多个改进的代码版本。
Github链接
loam中文注解版:https://github.com/cuitaixiang/LOAM_NOTED
相关论文:
Ji Zhang and Sanjiv Singh. “LOAM: Lidar Odometry and Mapping in Real-time.” Proceedings of Robotics: Science and Systems Conference, 2014.

2、A-LOAM(初学)

简介
将原版LOAM代码中的旋转从欧拉角改成了Eigen库中的四元数,优化使用ceres库,极大的简化了代码的复杂性,非常适合初学者进行学习。
Github链接
https://github.com/HKUST-Aerial-Robotics/A-LOAM

3、LeGO-LOAM(进阶)

简介
在LOAM的基础上细化了特征提取与优化,带有回环功能。可以在低功耗嵌入式系统上实现实时姿态估计。可以作为LOAM代码的进阶学习。
Github链接
https://github.com/RobustFieldAutonomyLab/LeGO-LOAM
相关论文
Shan T , Englot B . LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain[C]// 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2019.

4、Lio-mapping(进阶、LIO初学)

简介
使用imu预积分和LOAM融合进行SLAM,紧耦合优化框架。预积分门槛较高,适合作为LIO(激光惯性里程计)的初学者学习。
Github链接
https://github.com/hyye/lio-mapping
相关论文
Ye, Haoyang , Y. Chen , and M. Liu . “Tightly Coupled 3D Lidar Inertial Odometry and Mapping.” (2019).

5、hdl_graph_slam(入门)

简介:(hdl还有一个定位模块)
非常简单的图优化3D激光SLAM框架,前端可以使用并行处理的ICP或者NDT,带有回环,可以融合imu、GPS和路面约束等信息。论文不推荐读了,直接看代码最好。可以作为3D激光的入门代码学习。
Github链接
https://github.com/koide3/hdl_graph_slam

6、BLAM
简介
仅用激光的SLAM算法,前端使用GICP,后端使用GTSAM,效果还不错,回环速度快。
Github链接
https://github.com/erik-nelson/blam

7、SegMap
简介
利用3D CNN语义信息的3D激光SLAM框架,在某些场景比传统SLAM更具有优势。
Github链接
https://github.com/ethz-asl/segmap
相关论文
R. Dubé, A. Cramariuc, D. Dugas, J. Nieto, R. Siegwart, and C. Cadena. “SegMap: 3D Segment Mapping using Data-Driven Descriptors.” Robotics: Science and Systems (RSS), 2018.

R. Dubé, MG. Gollub, H. Sommer, I. Gilitschenski, R. Siegwart, C. Cadena and , J. Nieto. “Incremental Segment-Based Localization in 3D Point Clouds.” IEEE Robotics and Automation Letters, 2018.

R. Dubé, D. Dugas, E. Stumm, J. Nieto, R. Siegwart, and C. Cadena. “SegMatch: Segment Based Place Recognition in 3D Point Clouds.” IEEE International Conference on Robotics and Automation, 2017.

8、SuMa
简介
使用Surfel地图去实现前端里程计和闭环检测,此前Surfel地图曾被用在RGBD-SLAM中,第一次见到被用在激光SLAM中,很值得大家去了解学习。
Github链接
https://github.com/jbehley/SuMa
相关论文
J. Behley, C. Stachniss. Efficient Surfel-Based SLAM using 3D Laser Range Data in Urban Environments, Proc. of Robotics: Science and Systems (RSS), 2018.

9、Suma++
简介
在SuMa基础上,利用RangeNet++过滤动态信息,提升定位建图精度。
Github链接
https://github.com/PRBonn/semantic_suma
相关论文
Chen, Xieyuanli & Milioto, Andres & Palazzolo, Emanuele & Giguère, Philippe & Behley, Jens & Stachniss, Cyrill. (2019). SuMa++: Efficient LiDAR-based Semantic SLAM. 4530-4537. 10.1109/IROS40897.2019.8967704.

——————————2020.06.22 更新——————————

10、SC-LeGO-LOAM(应用推荐)

简介
在LeGO-LOAM基础上,利用Scan Context做回环检测,改善建图回环效果。在TX2上也可运行。
Github链接
https://github.com/irapkaist/SC-LeGO-LOAM
相关论文
LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain
Scan Context: Egocentric Spatial Descriptor for Place Recognition within 3D Point Cloud Map

11、LeGO-LOAM-BOR
简介
LeGO-LOAM的软件优化版本。提高代码的质量和性能,使其更具可读性,一致性,并易于理解和修改。
Github链接
https://github.com/facontidavide/LeGO-LOAM-BOR/tree/speed_optimization
——————————2020.07.09 更新——————————

12、LIO-SAM(LiDAR、IMU、GPS耦合)

简介
LeGO-LOAM作者新作,在LeGO-LOAM基础上,加入了LiDAR、IMU、GPS紧耦合,用gtsam库优化。在其提供的手持设备数据集上效果很好。
Github链接
https://github.com/TixiaoShan/LIO-SAM
相关论文
LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping

13、LINS(LiDAR、IMU紧耦合,快速)

简介
Lio_mapping作者新作,用ESKF优化,比lio_mapping速度提高了一个数量级。
Github链接
https://github.com/ChaoqinRobotics/LINS—LiDAR-inertial-SLAM
相关论文
LINS: A Lidar-Inertial State Estimator for Robust and Efficient Navigation

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172341.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • lsof 用法

    lsof 用法

    2021年9月16日
    56
  • RedHat Linux 挂载U盘

    RedHat Linux 挂载U盘先确定u盘的位置把u盘插到电脑的usb接口上fdisk-l观察命令运行的结果,看有没有与u盘容量相符的东西如果有,再寻找与/dev/sd*(*代表a,b,c…..)相类似的东西,如果是找到/dev/sdb创建挂载位置mkdir/mnt/usb一般挂载在/mnt文件夹之下mnt文件夹主要存放光盘,软盘等移动存储介质挂载mount-tvfat/dev/sdb1/mnt/usb参数-t

    2025年6月6日
    2
  • java有什么作用_Java有什么用「建议收藏」

    java有什么作用_Java有什么用「建议收藏」1.可以62616964757a686964616fe58685e5aeb931333431353261做WEB系统,如网站,不过做网站就有点杀鸡用牛刀了。用的最多的就是用JAVA做管理系统,很容易维护。2。可以做C/S非WEB管理系统,当然其他语言也能做到。3。可以做移动设备软件,如手机软件,MP4软件等等。4。当然你WINDOWS下做好了一个东西,拿到其他地方也能用,如LINUX,NUIX等等…

    2022年7月8日
    18
  • 2020年保密在线考试答案_2022保密教育线上培训考试30题

    2020年保密在线考试答案_2022保密教育线上培训考试30题2022年度保密教育线上培训考试参考答案选择题根据工作需要,指定定密责任人可以是本机关、本单位内设机构负责人;根据刑法第398条规定,国家机关工作人员违反保守国家秘密法的规定,故意或者过失泄露国家秘密,情节严重的,处三年以下有期徒刑或者拘役;机密级国家秘密是重要的国家秘密,泄露会使国家安全和利益遭受严重的损害;涉密人员使用普通手机,正确的做法是:不在通信中涉及国家秘密、不在手机上存储、处理、传输涉及国家秘密的信息、不在涉密公务活动中开启和使用位置服务功能;泄露军事设施秘密,或者为境外的机构、组

    2022年9月22日
    2
  • Tasker使用企业微信api推送消息到普通微信「建议收藏」

    Tasker使用企业微信api推送消息到普通微信「建议收藏」注册https://work.weixin.qq.com/wework_admin/register_wx注册成功进入管理后台—>我的企业—>微工作台—>邀请关注*使用普通微信关注后才能接收消息应用与小程序—>创建应用*可见范围可以选整个企业企业ID我的企业—>…

    2022年5月23日
    61
  • 如何做小册子在a4纸上出四页_一年级政治小册子内容

    如何做小册子在a4纸上出四页_一年级政治小册子内容打印小册子(一张A4纸4页内容)步骤分享

    2025年9月21日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号