初探DSO-SLAM并运行dso_ros

本文介绍了作者在SLAM研究中尝试DSO(Direct Sparse Odometry)的过程,包括DSO的基本概念、安装dso_ros的详细步骤,以及在TUM单目数据集上运行DSO的体验。在运行dso_ros时,作者遇到了ROS版本不兼容、相机参数配置和图像话题设置等问题,并逐一解决,分享了解决这些问题的资源链接,为读者提供参考。

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

        最近在做SLAM相关的工作,用思岚的A2激光雷达在turtlebot3上测试SLAM建图效果,感觉还是不错的。由于项目在方案上还没有确定选择哪种作为SLAM的最终方案,在我测试奥比中光ASTRA mini 3D摄像头,看看在构建地图上有什么优势。所以在查询资料中我看到了DSO,感觉DSO还是比较简单的,使用的稀疏直接法,虽然遇到过很多坑,但最终还是一一的解决了。DSO(Direct Sparse Odometry)是慕尼黑工业大学Engel于2016年发布在arXiv上的一种基于直接法,构建稀疏点云地图的视觉里程计。在VSLAM中还是独树一帜的吧,虽然相关资料比较少,但是进行一些简单测还是没问题的啦,废话不多说,开始进入正题。(本人使用的是zshell)

安装dso:

1.首先安装相关依赖包(如果你没有安装的话):

➜  ~  sudo apt-get install libsuitesparse-dev libeigen3-dev libboost-dev
➜  ~  sudo apt-get install libopencv-dev

2. 下载dso包:

➜  ~  mkdir ~/dso_pkg
➜  dso_pkg  git clone https://github.com/JakobEngel/dso.git

3 .根据DSO官方的要求是要配置

### 回答1: 对于室外使用的SLAM算法,常用的有基于激光的SLAM和基于视觉的SLAM。基于激光的SLAM通常使用激光雷达或2D激光扫描仪,它可以快速准确地构建室外环境的三维模型;基于视觉的SLAM则使用摄像头,它可以捕捉室外环境的精细细节,可以更好地估计机器人的位置和姿态。 ### 回答2: 适合在室外使用的SLAM(Simultaneous Localization and Mapping)算法有以下几种。 1. 激光雷达SLAM:激光雷达是室外环境中常用的传感器之一,可以通过扫描周围环境构建三维点云地图。常见的激光雷达SLAM算法包括FastSLAM、Gmapping、LOAM等,能够在动态和复杂环境中实现室外定位和建图。 2. 视觉SLAM:视觉SLAM利用相机获取环境图像信息,通过特征提取、特征匹配和姿态估计等步骤同时实现定位和建图。视觉SLAM算法可分为基于特征点和直接法两种,如ORB-SLAM、LSD-SLAMDSO等,在室外场景中具有较高的适应性。 3. 惯导SLAM:惯性导航仪(IMU)可以提供加速度和角速度等传感器数据,通过运动积分来估计机器人的姿态和轨迹。惯导SLAM算法通常与其他传感器(如激光雷达或相机)相结合,以提高精度和鲁棒性。常见的惯导SLAM算法有VINS-Mono、OKVIS等。 4. 超声波SLAM:超声波传感器可以用于测量室外环境中的距离信息,主要用于短距离障碍物检测和避障。超声波SLAM算法一般与其他传感器结合使用,如激光雷达或相机,以提高室外环境下的定位和建图精度。 综上所述,适合在室外使用的SLAM算法包括激光雷达SLAM、视觉SLAM、惯导SLAM和超声波SLAM等。这些算法可以在室外环境中实现准确的定位和建图,为机器人、自动驾驶等应用提供了重要的技术基础。 ### 回答3: 适合在室外使用的SLAM(Simultaneous Localization and Mapping,同时定位与地图构建)算法主要包括基于激光雷达(LIDAR)的算法和基于视觉传感器(相机)的算法。 基于激光雷达的SLAM算法适合室外环境的原因在于其具有较高的精度和鲁棒性。常见的基于激光雷达的SLAM算法包括: 1. 自适应蒙特卡洛定位(AMCL):通过粒子滤波方法实现机器人定位和地图构建,在室外环境中具有较好的定位精度和可靠性。 2. Hector SLAM:该算法结合了激光雷达的距离信息和速度计的里程计信息,实现了较为精准的地图构建和定位。 3. Cartographer:使用多传感器数据(激光雷达、IMU等)进行建图和定位,能够在复杂室外环境中实现高精度的地图构建。 基于视觉传感器的SLAM算法适合室外环境的原因在于其具有丰富的场景信息和较低的成本。常见的基于视觉传感器的SLAM算法包括: 1. ORB-SLAM:使用相机图像进行特征点提取和跟踪,结合回环检测和优化方法,实现室外场景的实时定位和地图构建。 2. LSD-SLAM:通过稀疏直接法(Sparse Direct Method)从相机图像中提取深度和运动信息,实现室外环境的实时定位和地图构建。 总之,适合在室外使用的SLAM算法包括基于激光雷达的算法和基于视觉传感器的算法。选择合适的算法需要综合考虑精度、实时性、成本以及实际应用场景等因素。
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值