机器人地图建立及管理导读

本文系列深入探讨了SLAM(Simultaneous Localization and Mapping)建图技术,涵盖了2D和3D激光雷达、视觉SLAM的建图方法,以及多种开源解决方案的对比。同时介绍了地图类型,如特征点云、矢量、代价栅格地图的构建原理,还涉及到成本地图costmap的生成、vector_map的制作和距离场地图的建立,为自动驾驶和机器人导航提供了详尽的知识框架。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

在这里插入图片描述
机器人地图建立相关教程及博客请关注专栏:
https://blog.csdn.net/qq_35635374/article/details/138199063

本文先对机器人地图建立导读做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

一、地图的理解及地图的类型介绍

在一个导航系统中,地图的主要作用是给决策规划提供先验的环境数据,在一个复杂的导航系统中,地图分为多个层级,包括高精度点云图层、语义图层、可视化图层、其他形式图层等。

不同层级的地图存储并更新不同类型的数据,因此不同层级的地图往往使用不同的地图格式,包括特征点云地图、矢量地图、语义地图、二维占据地图、二维代价地图、三维八叉树地图、ESDF Map欧氏距离场地图等等。

总的来说,我们可以认为地图就是一个巨大的数据结构,不同的地图格式本质就是使用不同数据结构存储和更新环境信息。本文先介绍常用的地图格式,了解不同地图格式的特性和功能。针对不同的地图格式,地图的建立和更新方法在下面章节进行介绍。
https://blog.csdn.net/qq_35635374/article/details/120960481

二、地图SLAM构建基础理解

介绍地图构建的相关知识,包括地图模块与感知模块、地图模块与定位模块、地图模块与决策模块、地图模块与路径规划模块的关系和交互,不同模块的交互方式决定了一个导航架构的基本构型,进而影响技术方案和业务效果,所以从地图模块出发理解导航是一个很不错的出发点。

作为引入,可从构建地图的过程比喻、SLAM的实现要解决的问题、SLAM的传感器选型等等方面进行介绍。
https://blog.csdn.net/qq_35635374/article/details/120978752

三、构建地图准备

构建地图需要感知与传感器的支持,简述激光传感器的选型与地图构建的选型问题、与点云数据的后处理问题
https://blog.csdn.net/qq_35635374/article/details/120979417

点云数据处理

1、点云数据密度不规则需要平滑处理
2、去除因为遮挡等问题造成离群点
3、数据量较大,需要进行下采样( Downsample)
4、去除噪声数据。

直通滤波器

作用是在指定的维度方向上保留特定值域内的点,同时过滤掉不在这个范围内的点。这种方法特别适用于消除背景噪声或初步裁剪点云数据集,以限定在特定的感兴趣区域(ROI)内。
https://blog.csdn.net/qq_35635374/article/details/141361362

半径滤波器

用于识别并移除点云数据中离群点的一种有效方法
https://blog.csdn.net/qq_35635374/article/details/141363856

体素滤波器

体素滤波器是一种下采样的滤波器,它的作用是使用体素化方法减少点云数量,采用**体素格中接近中心点的点替代体素内的所有点云,是会移动点的位置。**这种方式即减少点云数据,并同时保存点云的形状特征,在提高配准,曲面重建,形状识别等算法速度中非常实用。
https://blog.csdn.net/qq_35635374/article/details/141333547

均匀采样滤波

相较于体素滤波,均匀采样滤波计算出的最终结果点云,不改变点云点的位置,保持其原始形态。均匀采样滤波因为有质心点复原到体素块这一步,因此速度会比体素滤波更慢些。
https://blog.csdn.net/qq_35635374/article/details/141362926

统计滤波器

统计滤波器用于去除点云数据中离群点的一种滤波方法。它通过统计分析技术来识别并移除那些与周围点距离较远的离群点,这些离群点可能是由于测量误差或其他原因产生的噪声点。
https://blog.csdn.net/qq_35635374/article/details/141363316

条件滤波器

用于根据特定条件筛选点云数据的一种方法。它通过设定一个或多个条件,对点云中的每个点进行评估,仅保留满足这些条件的点。
https://blog.csdn.net/qq_35635374/article/details/141364222

双边滤波器

双边滤波器的工作原理是基于空间邻近度和值相似度的加权平均。它对每个点的邻域内的点进行加权平均处理
https://blog.csdn.net/qq_35635374/article/details/141364500

四、构建特征点云地图–2D激光雷达地图构建介绍

介绍2D激光雷达的构建特征点云地图的相关知识
首先,介绍2D激光SLAM建图算法的发展,依次经历了使用基于滤波器的方法建图、使用基于图优化的方法建图、使用基于已知位姿的方法建图、使用基于激光融合视觉的建图方法等等。
再介绍了SLAM的关键技术,如SLAM建图的输入数据与输出数据、SLAM的后端回环检测方法等等。
https://blog.csdn.net/qq_35635374/article/details/120979524

二维全局地图的开源方案及对比–gmapping、hector、karto、cartographer

依次介绍构建二维全局地图的开源算法方案,包括gmapping算法、hector算法、karto算法、cartographer算法。
分别从算法原理、算法流程、工程框架解析机部署三个方面对上述算法进行详细介绍,最后对2D的SLAM方案进行对比。
https://blog.csdn.net/qq_35635374/article/details/121000952

五、构建特征点云地图–3D激光雷达地图构建介绍

介绍3D激光雷达的构建特征点云地图的相关知识

首先,介绍3D激光SLAM建图算法的发展,依次经历了使用LOAM-纯激光,匀速运动假设,无回环(Lidar Odometry And Mapping(LOAM))的方法建图、使用V-LOAM-视觉激光融合、漂移匀速假设,无回环的方法建图、使用VELO-视觉激光融合,无运动畸变假设,有回环的方法建图方法等等。

再介绍了SLAM的关键技术,如SLAM建图的输入数据与输出数据、3D激光里程计(作为一个3d建图前端存在的)、3D激光SLAM的前端帧间匹配Tracking方法、3D激光SLAM的后端回环检测方法等等。
https://blog.csdn.net/qq_35635374/article/details/120981832

【依赖高精度点云地图和三维激光雷达的定位方案】正态分布变换(NDT)定位及建图

介绍正态分布变换(NDT)定位及建图的方法,包括正态分布变换(NDT)定位解决的主要问题、正态分布变换(NDT)定位的核心思想、NDT算法流程、NDT配准的C++源码实现。

https://blog.csdn.net/qq_35635374/article/details/121786885

三维全局地图的开源方案及对比–NDT、LOAM、LIO-SAM、ALOAM、FLOAM、Lego_loam、SC-Lego-LOAM

依次介绍构建三维全局地图的开源算法方案,包括NDT算法、LOAM算法、LIO-SAM算法、ALOAM算法、FLOAM算法、Lego_loam算法、SC-Lego-LOAM算法、V-LOAM算法等等,最后对2D的SLAM方案进行对比。

https://blog.csdn.net/qq_35635374/article/details/121002668

六、构建特征点云地图–视觉SLAM介绍

介绍的视觉SLAM构建特征点云地图的相关知识
首先,介绍了视觉SLAM的数学理论,如点与坐标系的位置关系表达的运动学基础、李群与李代数、相机观测模型与非线性优化等等
然后,介绍了视觉SLAM的关键技术,如前端里程计(Visual Odometry)、后端优化(Optimization)、回环检测(Loop Closing)、建图(Mapping)等等。
最后,列举SLAM众多的开源方案类型
https://blog.csdn.net/qq_35635374/article/details/121000052

视觉SLAM全局地图的开源方案及对比–rgbdslam、ORB_SLAM、RTAB SLAM

依次介绍常用的视觉SLAM的开源算法方案,包括rgbdslam算法、ORB_SLAM算法、RTAB SLAM算法
https://blog.csdn.net/qq_35635374/article/details/121003037

七、代价栅格地图costmap的介绍

代价栅格地图costmap是机器人常用与路径规划的地图,本文介绍costmap_2d代价地图生成理论及costmap_2d功能包源码工程解读

第一章:costmap_2d代价地图生成原理

https://blog.csdn.net/qq_35635374/article/details/120874817

第二章:二维占据栅格地图costmap生成方法及源码解析

https://blog.csdn.net/qq_35635374/article/details/120918847

八、vector_map矢量化地图的生成

vector_map矢量化地图常用于车道级的自动驾驶中,本文介绍vector_map矢量化地图的生成方法及步骤,包括传感器采集、vector_map地图构建及服务、地图信息的传递、地图数据包获取等等

https://blog.csdn.net/qq_35635374/article/details/120920983

九、通过栅格地图,目标路径(目标点)建立距离场地图

介绍一种地图转换的案例,把代价栅格地图转化成距离场地图,详细介绍了实现原理及源码实现
https://blog.csdn.net/qq_35635374/article/details/134653666

十、autoware高精度地图模块demo

autoware高精度地图模块为例,介绍导航中式如何构建和使用一个地图模块的。

地图就是一种数据结构,地图格式就是用不同的数据类型和数据结构把地图信息存储起来,所以解析地图必须由标准的地图格式(如把csv转换成ros_topic)

介绍构建高精度地图步骤,包括先通过上文介绍的SLAM方法建立特征点云地图(一般式稠密点云),再通过特征点云地图,标注制作语义信息,构建vector_map语义地图、通过点云地图建立栅格代价costmap地图、最后把特征点云地图、栅格代价costmap地图与vector_map语义地图作为不同层级生成高精度地图等等。

作为扩展,再介绍一些规划用到的地图格式、vector_map语义地图制作工具、栅格地图处理等等拓展
https://blog.csdn.net/qq_35635374/article/details/124539162

十一、【规控+slam】探索建图方案及代码分享

https://blog.csdn.net/qq_35635374/article/details/142532077

其他知识

【地图mapping】视觉SLAM–李群与李代数理论

介绍李群与李代数理论,包括群(集合+运算)、李群与李代数定义、指数映射与对数映射、李代数求导与扰动模型(SLAM的定位即位姿估计)、李群和李代数Sophus库的使用等等

https://blog.csdn.net/qq_35635374/article/details/121181552

【局部地图建立mapping】PCL点云处理建立局部占据及代价地图的方法

介绍通过点云数据建立栅格代价costmap地图的方法、ROS的map_server与自定义工具进行costmap地图的保存与加载。
https://blog.csdn.net/qq_35635374/article/details/122126236

相关技术专栏推荐

(1)计算技术&硬软件开发工程篇
https://blog.csdn.net/qq_35635374/category_12821115.html

(2)计算机技术基础&开发经验
https://blog.csdn.net/qq_35635374/category_11471204.html

(3)嵌入式系统硬软件开发
https://blog.csdn.net/qq_35635374/category_11464543.html

(4)开发技术管理
https://blog.csdn.net/qq_35635374/category_12344669.html

(5)机器人/自动驾驶导航算法篇
https://blog.csdn.net/qq_35635374/category_12825966.html

(6)导航系统架构及业务模块组合策略
https://blog.csdn.net/qq_35635374/category_11464757.html

(7)运动学与动力学基础知识
https://blog.csdn.net/qq_35635374/category_11471199.html

(8)多传感器标定、数据融合与状态估计
https://blog.csdn.net/qq_35635374/category_11464733.html

(9)定位、地图建立、地图管理SLAM合集
https://blog.csdn.net/qq_35635374/category_12805256.html

(10)定位location
https://blog.csdn.net/qq_35635374/category_11464501.html

(11)地图mapping
https://blog.csdn.net/qq_35635374/category_11464370.html

(12)机器人决策规划控制合集
https://blog.csdn.net/qq_35635374/category_12804215.html

(13)任务决策规划mission_planner
https://blog.csdn.net/qq_35635374/category_12344770.html

(14)动作策略规划motion_planner
https://blog.csdn.net/qq_35635374/category_12176372.html

(15)全局路线规划global_planner
https://blog.csdn.net/qq_35635374/category_12176370.html

(16)局部路径规划local_planner
https://blog.csdn.net/qq_35635374/category_12176374.html

(17)轨迹跟踪控制模块Path_tracking
https://blog.csdn.net/qq_35635374/category_12176376.html

(18)机器人实战篇
https://blog.csdn.net/qq_35635374/category_12821111.html

(19)足式机器人&机械臂控制合集
https://blog.csdn.net/qq_35635374/category_11523332.html

(20)自动驾驶&无人机导航合集
https://blog.csdn.net/qq_35635374/category_12804317.html

(21)四足机器人MIT Cheetah mini
https://blog.csdn.net/qq_35635374/category_11523325.html

(22)自动驾驶Autoware
https://blog.csdn.net/qq_35635374/category_11523328.html

(23)无人机fast_planner
https://blog.csdn.net/qq_35635374/category_11523335.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RoboticsTechLab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值