✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真咨询内容私信。
🔥 内容介绍
同步定位与建图(Simultaneous Localization and Mapping, SLAM)是机器人自主导航领域的核心技术之一。它允许机器人在未知环境中同时构建环境地图并确定自身在地图中的位置,是实现机器人自主探索、导航和人机协作的关键。在各种用于实现SLAM的传感器中,激光雷达以其高精度、抗环境光干扰能力强以及提供丰富的环境几何信息等优势,成为当前主流的SLAM传感器之一。本文将聚焦于二维(2D)激光雷达在SLAM中的应用,深入探讨其工作原理、在SLAM框架中的作用、常见的算法以及其优势与挑战,并展望未来的发展方向。
1. 二维激光雷达的工作原理与特点
二维激光雷达是一种主动式测距传感器,其基本工作原理是通过发射一束或多束激光脉冲,测量激光从传感器发射到遇到物体并反射回传感器的时间差,从而计算出物体与传感器之间的距离。通过在水平方向上进行扫描,二维激光雷达能够获取一个平面内的距离信息集合,即一帧扫描数据。这些数据通常表示为以传感器为中心的极坐标点云,每个点包含距离和角度信息。
二维激光雷达的主要特点包括:
- 高精度测距:
激光雷达的测距精度通常较高,能够提供亚厘米级的距离信息,这对于构建精确的地图至关重要。
- 抗环境光干扰强:
激光属于主动光源,其信号受环境光影响较小,因此能够在室内、夜间或光照条件不佳的环境中稳定工作。
- 提供丰富的几何信息:
扫描数据能够反映环境的几何结构,例如墙壁、障碍物等,为地图构建提供了重要的特征信息。
- 实时性较高:
现代二维激光雷达的扫描频率通常较高,能够提供实时或近实时的环境感知数据,满足机器人动态导航的需求。
- 数据量相对适中:
相比于三维激光雷达,二维激光雷达的数据量较小,对计算资源的需求相对较低,更易于在嵌入式或资源有限的平台上部署。
2. 二维激光雷达在SLAM框架中的作用
在基于二维激光雷达的SLAM系统中,激光雷达数据扮演着至关重要的角色,主要体现在以下几个方面:
- 里程计(Odometry)估计:
通过比较连续两帧激光扫描数据,利用扫描匹配算法(Scan Matching),可以估计机器人在这两帧数据之间的相对位姿变化,即机器人的局部运动信息。这种基于激光雷达的里程计信息通常比轮式里程计更准确,且不受地面打滑等因素的影响。
- 地图构建:
收集并融合机器人不同位姿下的激光扫描数据,通过各种地图表示方法(如栅格地图、特征点地图等),逐步构建出环境的二维地图。地图是机器人进行路径规划和导航的基础。
- 回环检测(Loop Closure Detection):
当机器人重新回到曾经访问过的区域时,通过比较当前扫描数据与历史扫描数据,可以检测到回环。回环检测是消除里程计累积误差的关键步骤,能够显著提高地图的全局一致性。
- 定位(Localization):
利用当前激光扫描数据与已知地图进行匹配,可以确定机器人在全局地图中的精确位置和姿态。这对于机器人进行导航和执行任务至关重要。
3. 常见的基于二维激光雷达的SLAM算法
基于二维激光雷达的SLAM算法种类繁多,根据其核心思想和技术路线,可以大致分为以下几类:
- 基于扫描匹配的SLAM:
这类算法的核心是利用高效的扫描匹配算法来估计机器人的位姿变化。典型的算法包括:
- ICP (Iterative Closest Point):
通过迭代匹配两个点集中的最近点来估计变换矩阵。虽然概念简单,但在处理复杂场景和大规模数据时效率和鲁棒性可能不足。
- NDT (Normal Distributions Transform):
将点云数据表示为正态分布的集合,通过匹配正态分布的概率密度函数来估计位姿。相对于ICP,NDT对噪声和数据密度变化更鲁棒,计算效率也较高。
- PLICP (Point-to-Line ICP):
将点云匹配到线段特征上,利用点到线的距离作为误差项进行优化。在结构化环境中(如室内),PLICP通常比点到点ICP效果更好。
- ICP (Iterative Closest Point):
- 基于滤波的SLAM:
这类算法通常使用概率滤波方法来估计机器人的状态和地图信息。经典的算法包括:
- 扩展卡尔曼滤波 (EKF-SLAM):
利用EKF框架对机器人状态和地图特征(如路标点)进行联合估计。然而,EKF-SLAM对非线性系统和大规模地图的处理能力有限,容易出现线性化误差和计算复杂度爆炸的问题。
- 无迹卡尔曼滤波 (UKF-SLAM):
相较于EKF,UKF采用无迹变换来处理非线性,通常能够获得更准确的状态估计。但其计算复杂度仍然较高。
- 粒子滤波 (PF-SLAM):
又称蒙特卡洛定位 (MCL),通过一组粒子来表示机器人位姿的概率分布,并利用似然函数对粒子进行权重更新。PF-SLAM对初始化位置要求较低,但在处理大规模地图和高维状态空间时计算开销较大。
- 扩展卡尔曼滤波 (EKF-SLAM):
- 基于图优化的SLAM:
这类算法将SLAM问题建模为一个图,图的节点代表机器人的位姿,边代表位姿之间的约束(通常由里程计和回环检测提供)。通过非线性优化方法,调整图中的节点位姿,使得所有约束尽可能满足。典型的算法包括:
- Graph-SLAM:
这是基于图优化的SLAM的经典框架,利用因子图(Factor Graph)或姿态图(Pose Graph)来表示SLAM问题。通过非线性最小二乘优化算法(如G2O、Ceres Solver),求解机器人的全局一致位姿。Graph-SLAM在处理回环和消除累积误差方面表现出色,是目前主流的SLAM方法之一。
- Cartographer:
由Google开源的基于Graph-SLAM的算法,其前端利用扫描匹配(如CSM)进行局部位姿估计,后端利用稀疏的子图和回环检测进行全局优化。Cartographer在实时性和鲁棒性方面表现优异,广泛应用于室内和室外环境。
- Hector SLAM:
这是一个纯粹基于扫描匹配的SLAM算法,不进行后端优化和回环检测。其主要优点是计算效率高,适用于计算资源受限的平台,但在长时间运行中容易出现累积误差。
- Graph-SLAM:
4. 二维激光雷达在SLAM中的优势
二维激光雷达在SLAM中具有显著优势:
- 成本相对较低:
相比于三维激光雷达,二维激光雷达的价格通常更具竞争力,使得其在商业应用中更易于普及。
- 计算资源需求较低:
二维激光雷达数据量较小,相应的处理算法计算开销相对较低,更适合在嵌入式或资源有限的平台上部署。
- 成熟的算法和技术:
经过多年的发展,基于二维激光雷达的SLAM算法和技术已经非常成熟,有大量的开源库和工具可供使用。
- 在结构化环境中表现良好:
在室内等结构化环境中,二维激光雷达能够很好地捕捉直线、角点等特征,这对于构建精确的地图非常有益。
5. 二维激光雷达在SLAM中的挑战
尽管二维激光雷达在SLAM中表现出色,但也面临一些挑战:
- 缺乏垂直方向信息:
二维激光雷达只能提供水平平面的环境信息,无法感知垂直方向上的结构,这在处理楼梯、斜坡或高度变化的场景时会遇到困难。
- 对动态物体敏感:
激光雷达数据反映的是某一时刻的环境快照,动态物体(如行人、移动的家具)会在地图中留下“鬼影”,影响地图的准确性。
- 在缺乏纹理的场景中难以工作:
在纹理信息较少或重复纹理的环境中,基于视觉的SLAM可能面临挑战,而激光雷达则能够提供可靠的几何信息。然而,在特征稀疏的场景(如长走廊)中,纯粹基于扫描匹配的算法也可能出现退化。
- 对环境变化敏感:
环境中的变化(如家具移动、门窗开关)可能导致地图失配,影响定位精度。
- 雨雪、雾等天气影响:
激光在雨雪、雾等天气条件下会发生散射和衰减,严重影响激光雷达的测距能力。
6. 展望未来
为了克服二维激光雷达在SLAM中的挑战,未来的发展方向主要集中在以下几个方面:
- 多传感器融合:
将二维激光雷达与其他传感器(如相机、惯性测量单元IMU、超声波传感器等)进行融合,利用不同传感器的互补优势,提高SLAM系统的鲁棒性和精度。例如,视觉信息可以提供丰富的纹理和语义信息,IMU可以提供高频的运动信息,弥补激光雷达的不足。
- 语义SLAM:
将语义信息融入SLAM框架,识别和理解环境中的物体,构建具有语义信息的地图。这有助于区分动态物体和静态环境,提高地图的鲁棒性,并为机器人提供更高级的导航能力。
- 基于学习的SLAM:
利用深度学习等机器学习方法,从数据中学习激光雷达的特征提取、扫描匹配、回环检测等任务,提高算法的鲁棒性和泛化能力。
- 实时动态环境处理:
研究更有效的算法来处理动态环境中的物体,例如通过物体跟踪、预测和移除等技术,减少动态物体对地图和定位的影响。
- 更高效的计算:
随着机器人应用场景的不断扩展,对SLAM算法的实时性和计算效率要求越来越高。未来的研究将继续探索更高效的算法和并行计算方法,以满足实时应用的需求。
结论
二维激光雷达作为一种成熟且可靠的传感器,在SLAM领域发挥着至关重要的作用。其高精度、抗环境光干扰和提供丰富的几何信息等特点,使得机器人能够在复杂环境中实现自主定位和建图。尽管面临一些挑战,但通过多传感器融合、语义SLAM、基于学习的方法以及更高效的计算等技术的不断发展,基于二维激光雷达的SLAM系统将变得更加鲁棒、智能和高效,为机器人自主导航的广泛应用奠定坚实基础。随着技术的不断进步,我们有理由相信,二维激光雷达将继续在未来的机器人导航和智能系统中扮演关键角色。
⛳️ 运行结果
🔗 参考文献
[1] 沈斯杰,田昕,魏国亮,等.基于2D激光雷达的SLAM算法研究综述[J].计算机技术与发展, 2022, 32(1):13-18.
[2] 沈斯杰,田昕,魏国亮,等.基于2D激光雷达的SLAM算法研究综述[J].计算机技术与发展, 2022, 32(1):7.
[3] 王雷,王更泽,王毅.一种2D激光雷达SLAM地图动态加载方法及系统:202110534037[P][2025-05-05].
📣 部分代码
🎈 部分理论引用网络文献,若有侵权联系博主删除
👇 关注我领取海量matlab电子书和数学建模资料
🏆团队擅长辅导定制多种科研领域MATLAB仿真,助力科研梦:
🌈 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度、港口岸桥调度、停机位分配、机场航班调度、泄漏源定位
🌈 机器学习和深度学习时序、回归、分类、聚类和降维
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN|TCN|GCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类
2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
2.19 Transform各类组合时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
🌈图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
🌈 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻
🌈 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划
🌈 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信、通信上传下载分配
🌈 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
🌈电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化、家庭用电
🌈 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
🌈 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别
🌈 车间调度
零等待流水车间调度问题NWFSP 、 置换流水车间调度问题PFSP、 混合流水车间调度问题HFSP 、零空闲流水车间调度问题NIFSP、分布式置换流水车间调度问题 DPFSP、阻塞流水车间调度问题BFSP
👇