您现在所在的位置:主页 > www.0504.cc >

SLAM常用开源方案

发布日期:2022-08-11 01:37   来源:未知   阅读:

  首次实现了跟踪与建图的并行化即前后端的并行处理。前端图像跟踪与后端优化独立进行在必要时刻才进行线程同步即可。

  首次使用非线c;之前都是使用传统滤波器作为后端。且引入了关键帧机制把关键图像考虑进来优化轨迹和地图而非所有图像再加上认识到了后端优化的稀疏特性故具有很好的实时特性。

  PTAM是一个增强现实软件可以实现AR效果哦。可以实践一下

  ORB-SLAM是PTAM的著名继承者于2015年提出是现代最完善和易用的SLAM系统之一。它是主流特征点 SLAM 中成为顶峰它的代码以清晰易读著称,有着完善的注释,供后来的研究者们进一步理解。其有以下几条优势

  整个 SLAM 系统都采用特征点进行计算,我们必须对每张图像都计算一遍 ORB 特征,非常耗时。

  三线程结构也对 CPU 带来了较重的负担,使得它只有在当前 PC 架构的 CPU 上才能实时运算,移植到嵌入式端则有一定困难。

  ORB-SLAM 的建图为稀疏特征点,目前还没有开放存储和读取地图后重新定位的功能。

  稀疏特征点地图只能满足我们对定位的需求,而无法提供导航、避障、交互等诸多功能。然而,如果我们仅用 ORB-SLAM 处理定位问题,它又有些过于重量级。

  直接法是针对像素进行的。作者有创见地提出了像素梯度与直接法的关系,以及像素梯度与极线方向在稠密重建中的角度关系第8讲、第13讲。

  在 CPU 上实现了半稠密场景的重建。一般特征点法是稀疏地图而稠密建图需要RGB-D传感器在GPU上运行。

  LSD-SLAM 的半稠密追踪使用了一些精妙的手段,来保证追踪的实时性与稳定性

  LSD-SLAM 既不是利用单个像素,也不是利用图像块,而是在极线上等距离取五个点,度量其 SSD;

  在深度估计时,LSD-SLAM 首先用随机数初始化深度,在估计完之后又把深度均值归一化,以调整尺度;

  在度量深度不确定性时,不仅考虑三角化的几何关系,而且考虑了极线与深度的夹角,归纳成一个光度不确定性项;

  关键帧之间的约束使用了相似变换群以及与之对应的李代数 ζ ∈ sim(3),显式地表达出尺度,在后端优化中就可以将不同尺度的场景考虑进来,减小了尺度飘移现象。

  LSD-SLAM缺点继承了直接法的缺点

  特征点与直接法的混合使用:SVO 跟踪了一些关键点(角点,没有描述子),然后像直接法那样,根据这些关键点周围的信息,估计相机运动以及它们的位置。

  SVO 的最大优势是速度极快在低端计算平台上也能达到实时性,而在 PC 平台上则可以达到 100 多帧每秒的速度。

  IMU测得的角加速度与加速度有明显漂移使得两次积分后得到的位姿数据误差很大在长时间内累计误差很大但瞬时的加速度测量却比较精准而这刚好是相机的弱点视觉SLAN很怕快速运动运动过快相机拍的模糊导致特征匹配困难。

  相机数据不会漂移在慢速运动中位姿估计依然很有效刚好修正IMU的数漂。

  图像发生变化时,本质上我们没法知道是相机自身发生了运动,还是外界条件发生了变化,所以纯视觉 SLAM 难以处理动态的障碍物。而 IMU 能够感受到自己的运动信息,从某种程度上减轻动态物体的影响。

  引入运动学计算。目前VIO 的框架已经定型为两大类:松耦合(Loosely Coupled)和紧耦合(Tightly Coupled)。松耦合是指,IMU 和相机分别进行自身的运动估计,然后对它们的位姿估计结果进行融合。紧耦合是指,把 IMU 的状态与相机的状态合并在一起,共同构建运动方程和观测方程,然后进行状态估计——这和我们之前介绍的理论非常相似。我们可以预见到,紧耦合理论也必将分为基于滤波和基于优化的两个方向。在滤波方面,传统的 EKF以及改进的 MSCKF(Multi-State Constraint KF)都取得;优化方面亦有了一定的成果,研究者们对 EKF 也进行了深入的讨论相应的方案 。值得一提的是,尽管在纯视觉 SLAM 中,优化方法已经占了主流,但在VIO 中,由于 IMU 的数据频率非常高,对状态进行优化需要的计算量就更大,因此VIO 领域目前仍处于滤波与优化并存的阶段。

  语义帮助SLAM传统物体识别、分割算法只考虑一个图在SLAM中相机是移动的可以给运动中的图片上都带上物体标签就可使SLAM构建带标签的地图。而且物体信息可为回环检测和BA优化提供更多条件。

  SLAM帮助语义物体识别和分割都需要大量训练数据这些数据往往需要分类器去识别各个角度物体需要从不同视角采集物体数据再进行标定费事又费力。在SLAM中可以自动估计相机运动可以帮助标签物体可以很大程度上加速分类器的训练。

  在深度学习之前支持向量机、条件随机场在分类正确率上存在限制,所以效果也往往不尽如人意。随着深度学习的发展,我们开始使用网络,越来越准确地对图像进行识别、检测和分割。这为构建准确的语义地图打下了更好的基础 。而且逐渐开始有学者将神经网络方法引入到 SLAM 中的物体识别和分割,甚至 SLAM 本身的位姿估计与回环检测中。以后深度学习与SLAM的结合将越来越深。

  膜拜大佬,有个问题想请教一下,在KITTI数据集上的IPM变换参数是如何获得的呢?