大满贯是什么?

3你需要知道的事情

大满贯(同步定位和映射)方法用于自动车辆,让你建立一个地图的地图和定位你的车辆在同一时间。SLAM算法允许车辆在地图上标出未知的环境。工程师使用地图信息进行路径规划和避障等任务。

大满贯为何重要

大满贯一直多年技术研究的主题。但随着计算机处理速度和可用性明显改善低成本传感器如相机和激光测距仪,大满贯现在用于实际应用在越来越多的领域。

要理解为什么大满贯是很重要的,让我们来看看它的一些优点和应用实例。

大满贯的例子

考虑一个家庭机器人真空。没有大满贯,它只会随机移动在一个房间,可能无法清洁整个地板表面。此外,这种方法使用过多的权力,因此电池将耗尽更快。另一方面,机器人与大满贯的数量可以使用信息,如轮革命和数据从相机和其他成像传感器来确定所需的运动。这就是所谓的本地化。机器人也可以同时使用摄像机和其他传感器创建的地图环境的障碍,避免同一区域清洁两次。这就是所谓的映射。

大满贯是有用的在许多其他应用程序的移动机器人导航等安排在仓库货架,停车无人驾驶汽车在一个空的地方,或者提供一个包在未知环境中通过无人机导航。MATLAB和Simu万博1manbetxlink提供SLAM算法、函数和分析工具开发各种应用程序。您可以实现同步定位和映射和其他任务,比如传感器融合,对象跟踪,路径规划路径跟踪

大满贯是如何工作的

一般来说,有两种类型的技术组件用来实现大满贯。第一个类型是传感器信号处理,包括前端处理,在很大程度上是依赖于所使用的传感器。第二种类型是pose-graph优化,包括后端处理,这是sensor-agnostic。

了解更多关于前端处理组件,让我们看看视觉大满贯和激光雷达大满贯——大满贯的两种不同的方法。

视觉大满贯

顾名思义,视觉大满贯(或vSLAM)使用从相机和其他图像传感器获得的图像。视觉大满贯可以使用简单的相机(鱼眼镜头的广角,球形相机),复眼相机(立体声和多摄像机),和RGB-D相机(深度和ToF相机)。

视觉大满贯可以实现低成本和相对廉价的相机。此外,由于相机提供大量的信息,他们可以用来检测一个地标(先前测量的位置)。具有里程碑意义的检测也可以结合图论优化,实现大满贯实现的灵活性。

单眼大满贯是当vSLAM使用单个相机作为唯一的传感器,因此很难定义深度。这可以解决通过检测AR标记,棋盘格,或其他已知对象的形象定位或与另一个传感器融合相机信息如惯性测量单元(imu),它可以测量物理量如速度和方向。相关技术vSLAM包括结构与运动(SfM),视觉测程法,包调整。

视觉SLAM算法大致可分为两类稀疏方法匹配特征点的图像和使用算法加以改进和ORB-SLAM等。密集的方法使用图像的整体亮度和使用算法,如DTAM LSD-SLAM, DSO和动宾。

结构与运动。

点云注册RGB-D大满贯

激光雷达大满贯

光探测和测距(激光雷达)是一种方法,主要利用激光传感器传感器(或距离)。

相机相比,ToF、和其他传感器、激光更精确,并用于应用程序与高速行驶车辆自动驾驶汽车和无人机等。激光传感器的输出值通常是2 d (x, y)或3 d (x, y, z)点云数据。激光传感器点云提供高精度距离测量,并与大满贯地图建设非常有效。一般来说,运动估计顺序通过匹配点云。经过计算运动(距离)用于本地化。激光雷达点云匹配,迭代最近点(ICP)和正态分布变换(无损检测)算法。二维或三维点云的地图可以表示成一个网格地图或立体像素地图。

另一方面,点云是不像图片详细的密度和并不总是提供足够的特性匹配。例如,在地方很少有障碍,很难对齐点云,这可能会导致失去追踪车辆位置。此外,点云匹配通常要求高处理能力,所以有必要优化流程,提高速度。由于这些挑战,对自动车辆定位可能涉及融合轮测程法等测量结果,全球导航卫星系统(GNSS)和IMU数据。对于某些应用程序,如仓库的机器人,二维激光雷达大满贯是常用的,而使用3 d激光雷达点云可用于无人机和自动停车。

与2 d激光雷达大满贯

大满贯和3 d激光雷达

共同的挑战与大满贯

虽然大满贯用于一些实际应用,一些技术挑战防止更多通用的采用。各有对策,可以帮助克服障碍。

1。定位错误积累,造成实质性偏离实际值

大满贯估计连续运动,其中包括一些误差。误差随时间积累,造成实质性偏离实际值。它还可以使地图数据崩溃或扭曲,使后续的搜索困难。让我们开车一个方形的通道的一个例子。误差积累,机器人的起始和结束点不再匹配。这叫做一个循环关闭问题。这样的姿势估计错误是不可避免的。是很重要的检测回路关闭并决定如何纠正或消除积累误差。

构建一个姿势图和减少错误的例子。

一个对策是要记住一些特点从之前访问过的地方作为一个里程碑和减少定位误差。提出构造图帮助纠正错误。通过求解误差最小化作为优化问题,可以生成更精确的地图数据。这种优化是称为束调整视觉大满贯。

构建一个姿势图和减少错误的例子

2。定位失败,地图上的位置

图像和点云映射不考虑机器人的运动的特点。在某些情况下,这种方法可以生成不连续的位置估计。例如,计算结果显示,一个机器人在1 m / s突然跳向前移动10米。这种定位失败是可以预防通过使用恢复算法或融合多个传感器的运动模型计算基于传感器数据。

这里有几种方法来使用传感器融合的运动模型。一个常见的方法是使用卡尔曼滤波对本地化。因为大多数差动驱动机器人和四个轮子的交通工具一般使用非线性运动模型,扩展卡尔曼滤波器和粒子过滤器(蒙特卡罗定位)是经常使用。更灵活的贝叶斯过滤器如无味卡尔曼滤波器在某些情况下也可以使用。一些常用的传感器惯性测量设备如IMU,姿态和航向参考系统或明显信息网络系统或INS,加速度计传感器、陀螺仪传感器和磁传感器)。车轮编码器连接到车辆通常用于测程法。

当定位失败,对策恢复是通过记住一个具有里程碑意义的帧从一个之前访问过的地方。当寻找一个里程碑,一个特征提取过程是应用在某种程度上,它可以在高速扫描。一些方法基于图像特性包括袋特性(转炉)和袋的视觉单词(BoVW)。最近,深度学习用于比较的距离特性。

3所示。图像处理计算成本高,点云处理和优化

计算成本是一个问题,当车辆硬件实现大满贯。嵌入式处理器上执行的计算通常是紧凑,低能量处理能力有限。为了实现准确定位,必须执行图像处理在高频和点云匹配。此外,优化计算,如循环关闭高计算过程。面临的挑战是如何执行这些计算昂贵的处理嵌入式微型计算机。

一个对策并行是运行不同的过程。过程,如特征提取、匹配过程的预处理,比较适合并行化。使用多核cpu处理,单指令多数据(SIMD)计算,和嵌入式gpu在某些情况下可以进一步提高速度。也,因为构成图优化可以执行在一个相对长的周期,降低其优先级和定期执行这个过程还可以提高性能。

与MATLAB大满贯

MATLAB®提供了功能实现大满贯的申请你的目标系统和解决的对策与大满贯已知的技术挑战。

  1. 大满贯前端传感器信号和图像处理
  2. 2 d / 3 d为大满贯后端构成图
    • 生成2 d / 3 d构成图使用导航工具
    • 优化构成图基于节点和边缘约束
    • 束调整使用计算机视觉的工具箱
  3. 占用网格与大满贯地图构建器应用程序
    • 从MATLAB工作区或rosbag进口激光雷达数据文件和创建占用网格
    • 找到并修改循环闭包,和出口地图作为路径规划的居住空间
  4. 使用输出从大满贯映射算法进行路径规划和控制
  5. 加快计算密集型过程,如图像处理相关的运行在并行使用并行计算工具箱™
  6. 部署独立的ROS节点和与你沟通从MATLAB和Simulink ROS-enabled机器人万博1manbetx®使用ROS工具箱
  7. 部署您的图像处理和导航算法在MATLAB和Simulink开发嵌入式处理器使用万博1manbetxMATLAB编码器™GPU编码器™

了解更多关于大满贯

开发环境的地图和定位机器人的姿势或无人驾驶汽车自主导航使用导航工具。
这个示例中所示的方法是使用姿势图优化结合收集到的一系列二维激光雷达扫描数据实现大满贯的算法。2 d激光雷达扫描数据被用来构造一个环境地图,估计机器人的位置和轨迹。
这种方法使用写入IMU值从automobile-mounted传感器处理3 d激光雷达数据,然后使用它来构建一个映射。这种方法比较汽车轨迹与全球定位系统(GPS)记录。
结构与运动(SfM)是一种方法,确定一个3 d场景从2 d图像序列。在这个例子中,校准相机的位置决定从视图序列,并重建3 d场景。
视觉里程计是一个过程估计摄像机的位置和方位,通过分析图像序列。这表明一种跟踪方法的道路一个校准相机的一系列图像。
这个例子展示了如何处理图像数据从一个单眼相机建立室内环境的地图和估计摄像机的轨迹。使用ORB-SLAM的例子中,这是一个基于vSLAM算法。
这个示例应用程序演示了蒙特卡罗定位(制程)算法的TurtleBot®在模拟露台®环境。