SLAM技术分享_it技术分享社区

SLAM技术分享_it技术分享社区同时定位与地图重建(SimultaneousLocalizationandMapping,SLAM),是机器人领域中的一项基础的底层技术,其希望机器人能在一个陌生的环境下实现自身的实时定位,同时能够重建出有关于环境的地图。随着近年无人驾驶、增强现实、虚拟现实等应用的兴起,作为实现这些应用的SLAM技术也越发引人注目。SLAM技术主要完成两项任务:自身定位与环境建图,也是让机器知道自己在哪里,已经周围的环境是啥。然而,如果想要精确的实现定位任务就不可避免的需要高精度的地图,而高精度的地图重建是需要以更

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

Jetbrains全系列IDE稳定放心使用

同时定位与地图重建(Simultaneous Localization and Mapping, SLAM),是机器人领域中的一项基础的底层技术,其希望机器人能在一个陌生的环境下实现自身的实时定位,同时能够重建出有关于环境的地图。随着近年无人驾驶、增强现实、虚拟现实等应用的兴起,作为实现这些应用的SLAM技术也越发引人注目。SLAM技术主要完成两项任务:自身定位与环境建图,也是让机器知道自己在哪里,已经周围的环境是啥。然而,如果想要精确的实现定位任务就不可避免的需要高精度的地图,而高精度的地图重建是需要以更为精确的自身定位作为基础的。
近年以来,除了传统的激光SLAM解决方案,基于视觉,基于惯性传感器等等的解决方案也在不断变多,整个SLAM领域整体呈现百花齐放的态势。
一. 目前在SLAM领域中的关键问题:
1、数据关联:SLAM技术在未来的发展过程中必然会有一个方向是将SLAM系统中集成多传感器,进行多传感器的融合任务。但是显而易见的是不同的传感器之间具有不同的特征,目前的很多SLAM研究人员都转向了研究多传感器SLAM中的传感器校准(例如自校准或者快速标定等内容),状态估计和后端BA优化。
2、 多机SLAM联合建图:目前在小范围内已有的若干SLAM系统大多都能获得比较好的效果,但是面对大规模,长时间的SLAM问题,如果只采用单机SLAM系统则获得良好的效果,此时通过分散的多机SLAM系统来解决大场景,长时间的SLAM任务将会是一个比较合适的选择,属于比较前沿的SLAM研究方向。
3、 高清晰度、信息量丰富的地图:SLAM技术作为机器人领域的一项底层基础技术,需要根据上层应用程序需要提供一张具有丰富信息的地图,其中比较具有代表性的地图形式就是拓扑地图,语义地图,以及点云地图等等;同时当SLAM系统的面对大场景,长时间的情况时,采用何种方式来存储更新地图也将是一个迫切需要解决的问题。
3、目前SLAM技术仍然面对着更强适应性、鲁棒性、可扩展性的要求。
4、适合的SLAM应用:目前SLAM技术具有广泛的应用场景,但是许多SLAM系统依然处在实验室研究阶段,缺乏合适的工程工具进行封装,需要我们继续完善SLAM的应用生态。
二. SLAM领域中的经典数据集:
1.KITTI数据集(单目视觉 ,双目视觉, velodyne, POS 轨迹)

KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测数据集。该数据集用于评测立体图像(stereo),光流(optical flow),视觉测距(visual odometry),3D物体检测(object detection)和3D跟踪(tracking)等计算机视觉技术在车载环境下的性能。KITTI包含市区、乡村和高速公路等场景采集的真实图像数据,每张图像中最多达15辆车和30个行人,还有各种程度的遮挡与截断。在这里插入图片描述
下载地址链接:https://pan.baidu.com/s/1htFmXDE 密码:uu20

2.TUM数据集(自带Ground-truth轨迹与测量误差的脚本)

数据集包含一些室内的序列,在不同的纹理下,不同的光照和不同的结构条件,从RGB-D传感器采集到的数据中分别去评估物体的重建和SLAM/视觉里程计的性能。TUM提供很多数据集,从各个有利位置捕获对象,每个条目中包含图像序列、相应的轮廓和完整的校准参数。
在这里插入图片描述
下载地址:链接:https://pan.baidu.com/s/1htFmXDE 密码:uu20

3.Oxford数据集(室外场景)

对牛津的一部分连续的道路进行了上百次数据采集,收集到了多种天气、行人和交通情况下的数据,也有建筑和道路施工时的数据,总的数据长度达1000小时以上。
在这里插入图片描述
下载地址:https://robotcar-dataset.robots.ox.ac.uk/

4.EuRoC数据集(无人机拍摄序列)

EuRoC数据集包含11个双目序列,这些序列是由小型无人机在两个不同的房间和一个大型工业环境中飞行时记录下来的。提供两种类型的数据集: 第一个包含来自Leica多站的三维位置地面真值,并着重于视觉惯性的评估SLAM算法在一个真实的工业场景。
在这里插入图片描述
下载地址:链接:https://pan.baidu.com/s/1miXf40o 密码:xm59

5.ICL-NUIM数据集(室内向,提供ground-truth和odometry)

该集旨在对RGB-D、视觉测距和SLAM算法进行基准测试。两个不同的场景(起居室和办公室场景)提供了基本事实。客厅具有3D表面地面实况以及深度图和相机姿势,因此完美地适用于不仅用于标记相机轨迹而且还用于重建。办公室场景仅带有轨迹数据,并且没有任何明确的3D模型。
下载地址:http://www.doc.ic.ac.uk/~ahanda/VaFRIC/iclnuim.html

6.RGB-D对象数据集

RGB-D对象数据集是300个常见家庭对象的大型数据集。这些对象被分为51个类别。该数据集使用Kinect风格的3D相机来记录,该相机以30Hz记录同步和对准的640×480 RGB和深度图像。拍摄时将每个物体放置在转盘上旋转一整圈并捕获视频序列。对于每个对象,有3个视频序列,每个视频序列都安装在不同高度的摄像机上,以便从与地平线不同的角度观察对象。
在这里插入图片描述
下载地址:http://rgbd-dataset.cs.washington.edu/

7.SYNTHIA(室外环境)

SYNTHIA数据集是为了解决在驾驶场景的上下文中解决语义分割和相关的场景理解问题。SYNTHIA包括通过从虚拟城市渲染出来多个帧集合,并包含针对13类对象的精确像素级语义标注,其中每一项是:杂项,天空,建筑物,道路,人行道,栅栏,植被,杆,汽车,路标,行人,骑自行车的人,车道标记。
在这里插入图片描述
官网:http://synthia-dataset.net/

8.Cityscapes

Cityscapes数据集中包含来自50个不同城市的街道场景中记录的各种立体视频序列集,此外还有50000帧的高质量像素级标注以及20000弱标注帧的大型数据集。同时,有关图像标注的详细信息和标注示例可在此网页上找到。

Cityscapes数据集的用途主要表现在:

1、评估视觉算法在语义城市场景理解任务上的性能,包括像素级、实例级和全景语义级人物等;

2、意在支持许多需要大量(弱)标注数据的研究,例如用于训练深度神经网络等。
在这里插入图片描述
官网:https://www.cityscapes-dataset.com/

三.项目推荐:

  1. ORB-SLAM系列:
    在这里插入图片描述
    ORB-SLAM是Mur-Artal R等人在2015年首次提出,并在2017年,2020年不断完善的基于ORB特征描述子构建的SLAM系统,是现代SLAM系统中相对完善且易用的SLAM系统;相较于其他的SLAM系统,ORB-SLAM具有以下这些显著的优点:

1、支持单目、双目、RGBD摄像头。可以说是对视觉SLAM涉及的传感器进行了全面的兼容。

2、整个系统围绕ORB特征展开,ORB特征是一种在精度和效率直接的合理折中,满足了SLAM系统需要

3、首次提出了回环检测的概念。

4、ORB-SLAM创造性的采用了多线程的思路来将不同SLAM系统中的不同模块进行拆分,将模块化设计引入SLAM系统。

除了上述主要的特点之外,ORB-SLAM还进行了很多细节上的优化和扩充,使得整个SLAM系统有着目前为止依然较为优秀的鲁棒性,效率和准确率。同时,ORB-SLAM v1版本主要针对单目系统,ORB-SLAM v2版本增加了立体相机和RGBD相机的适配,ORB-SLAM v3增加了IMU和多地图的功能,使得整个SLAM系统不断完善和强化。

以下是笔者自己试验的一段ORB-SLAM v2的效果:
在这里插入图片描述
ORB-SLAM v1: https://github.com/raulmur/ORB_SLAM
​ORB-SLAM v2: https://github.com/raulmur/ORB_SLAM2
​ORB-SLAM v3: https://github.com/UZ-SLAMLab/ORB_SLAM3

四.SLAM系统的常见应用
1、无人机导航:
在这里插入图片描述2、无人驾驶:
在这里插入图片描述
3、VR/AR:
在这里插入图片描述
参考文献:
[1]Huang B , Zhao J , Liu J . A Survey of Simultaneous Localization and Mapping[J]. 2019.
[2]刘浩敏, 章国锋, 鲍虎军. 基于单目视觉的同时定位与地图构建方法综述[J]. 计算机辅助设计与图形学学报, 2016, 28(6):855-868.
[3]Davison A J, Reid I D, Molton N D, et al. MonoSLAM: realtime single camera SLAM[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2007, 29(6):1052-1067.
[4]Kummerle R , Grisetti G , Strasdat H , et al. G2o: A general framework for graph optimization[C]// Robotics and Automation (ICRA), 2011 IEEE International Conference on. IEEE, 2011.
[5]Polok L . Incremental Cholesky Factorization for Least Squares Problems in Robotics[C]// Intelligent Autonomous Vehicles. 2013.
[6]Klein G , Murray D . Parallel Tracking and Mapping for Small AR Workspaces[C]// Mixed and Augmented Reality, 2007. ISMAR 2007. 6th IEEE and ACM International Symposium on. ACM, 2007.
[7]Mur-Artal R , Montiel J M M , Tardos J D . ORB-SLAM: a Versatile and Accurate Monocular SLAM System[J]. IEEE Transactions on Robotics, 2015, 31(5):1147-1163.
[8]Mur-Artal R , Tardos J D . ORB-SLAM2: An Open-Source SLAM System for Monocular, Stereo, and RGB-D Cameras[J]. IEEE Transactions on Robotics, 2017:1-8.
[9]D. Galvez-L ´ opez and J. D. Tard ´ os, “Bags of binary words for fast place recognition in image sequences,” IEEE Transactions on Robotics, vol. 28, no. 5, pp. 1188–1197, 2012.
[10]Sivic, Zisserman. Video Google: a text retrieval approach to object matching in videos[C]// Proceedings Ninth IEEE International Conference on Computer Vision. IEEE, 2003.
[11]Robertson, Stephen. Understanding inverse document frequency: on theoretical arguments for IDF[J]. Journal of Documentation, 2004, 60(5):503-520.

想了解更多关于我们金翅创客实验室的内容,请关注微信公众号:金翅创客。
在这里插入图片描述

原创声明:本文内容均为本人原创作品。请任何和个人、组织,在经过本人授权后,方可转载。

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

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

(0)
上一篇 2022年10月1日 下午5:46
下一篇 2022年10月1日 下午6:00


相关推荐

  • intellidea激活码[最新免费获取]「建议收藏」

    (intellidea激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月27日
    221
  • 北京距离最短的地铁线路_北京地铁几号线最挤

    北京距离最短的地铁线路_北京地铁几号线最挤用Python计算北京地铁的两站间最短换乘路线地铁数据地铁数据用字典表示:{station:{neighbor1:linenumber,neighbor2:linenumber,…},station2:{…},…}现在我们有地铁的站名,下面就是如何将地铁站名转化为上面所需要的标准字典格式。从网上找到的地铁站名为字符串:line1=u”’苹果园古城路八角游乐园八宝山玉泉路五

    2025年7月31日
    10
  • 2.fseek函数的用法

    2.fseek函数的用法C 语言 lseek 函数 移动文件的读写位置头文件 1 include lt sys types h gt nbsp include lt unistd h gt 定义函数 1off tlseek int nbsp fildes off toffset nbsp int nbsp whence 函数说明 每一个已打开的文件都有一个读写位置 当打开文件时通常其读写位置是指向文件开头 若是以附加的方式打开文件 如 O

    2026年3月19日
    2
  • Linux系统查看CPU使用率、内存使用率、磁盘使用率

    Linux系统查看CPU使用率、内存使用率、磁盘使用率一 查看 CPU 使用率 1 top 命令 top 命令可以看到总体的系统运行状态和 cpu 的使用率 us 表示用户空间程序的 cpu 使用率 没有通过 nice 调度 sy 表示系统空间的 cpu 使用率 主要是内核程序 ni 表示用户空间且通过 nice 调度过的程序的 cpu 使用率 id 空闲 cpu wa cpu 运行时在等待 io 的时间 hi cpu 处理硬中断的数量 si cpu 处理软中断

    2026年3月19日
    2
  • Activity 工作流框架学习总结「建议收藏」

    Activity 工作流框架学习总结「建议收藏」环境的搭建和数据表的了解1.什么是工作流?工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。工作流管理系统(WorkflowManagementSystem,WfMS)是一个软件系统,它完成工作量的定义

    2022年5月7日
    99
  • 使用XSLT转换XML

    使用XSLT转换XMLSLT1.0是W3C标准,主要用于对XML文档的转换,包括将XML转换成HMTL,TEXT或者另外格式的XML文件.XSLT1.0可以与XPATH1.0标准一起使用,XPATH会告诉你要转换的节点而

    2022年7月2日
    33

发表回复

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

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