0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

视觉SLAM关键方法总结

ml8z_IV_Technol 来源:YXQ 2019-07-08 17:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最近在做基于激光信息的机器人行人跟踪发现如果单独利用激光信息很难完成机器人对行人的识别、跟踪等功能,因此考虑与视觉融合的方法,这样便可以充分利用激光雷达提供的精确位置信息及视觉提供的丰富纹理、颜色等场景信息。以下是最近调研视觉SLAM中的实现方法的总结,包括三方面内容:姿态计算、闭环检测、BA优化。

姿态计算

一、通过提取图像的特征描述子,如ORB、SURF和SIFT等特征描述子,然后通过RANSAC算法进行图像匹配去除匹配点中的外点,再通过将二维点对映射到三维之后,便可以利用PnP或ICP算法计算相机位姿。基于特征提取的位姿计算算法对场景有一定的要求,在无纹理场景会出现位姿计算失败的情形。

二、直接图像匹配方法:直接图像匹配并不对图片进行特征提取,核心思想是在旋转坐标系下,基于相机一致性的假设,在相机的刚体变换已知的情况下,利用相机变换矩阵将目标图片投影到当前图片上,其像素之间的差异应该最小,将姿态计算转换为加权最小二乘问题。直接图像匹配算法的计算效率很高,不依赖GPU,具有很高的理论和商用价值。

闭环检测

闭环检测算法指的是通过检测算法检测出之前访问过的场景。如图1所示,当机器人在移动过程中,特别是在探索大面积的场景时,由于模型的不确定性以及设备的噪声,不确定性会逐渐增长。通过引入闭环检测技术,识别出历史访问过的场景以增加位姿之间的约束,可以很好的减少这种不确定性。

闭环检测前后对比(a) 累计误差导致的构图错误,(b)闭环约束后的地图

闭环检测方法有:

一、最简单的闭环检测算法是将新检测出来的关键帧和过去所有的关键帧一一进行比较,虽然这种方法能比较好的检测出当前场景是否在之前出现过,但是在大规模场景下,机器人往往有成千上万个关键帧,这种方法检测效率及其底下,不能再实际场景中使用。

二、通过将图像中的特征和整个地图中的路标对应起来,然后建立一个所有路标的数据库,通过使用路标分类器来加快场景识别速度。比如讲所有路标构建成一棵KD-Tree,当新添加一帧关键帧时,将关键帧在KD-Tree中进行检索,从中检索之前出现过的场景。

三、基于视觉词袋的闭环检测方法,这种方法通过将特征描述子抽象成词汇,通过TF-IDF方法识别出现过的场景。如图2所示,是闭环检测中基于词袋模型流程图。使用视觉词袋的方法效率很高,可用在大规模地图的创建上。

BA优化

一、问题阐述:同时对三维点位置和相机参数进行非线性优化。

BA原理

二、LM法的原理与优势:

原理:是一种“信赖域”的方法,当收敛速度较快时,增大信赖域使算法趋向于高斯牛顿法;当收敛速度较慢时,减小信赖域使算法趋向于最速下降法。优势:速度快;可以在距离初始值较远处得到最优解。

SLAM优化算法对比

算法 缺点 优点
KF/EKF 假设噪声为高斯分布,在高维状态空间时计算效率较低,不适合大规模场景的地图构建 原理简单,小场景下收敛性好。
PF 会不可避免出现粒子退化现象,每个粒子需包含整张地图信息导致不适合大场景地图构建 将运动方程表示为一组粒子,通过蒙特卡罗方法求解,能够处理非线性非高斯噪声。
EM 计算量大,不能用于大规模场景 有效解决了数据关联问题
图优化 对闭环检测算法的要求严格 出现多种图优化框架,能够有效解决滤波器算法的缺陷,能用于大规模场景的地图创建

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器视觉
    +关注

    关注

    166

    文章

    4829

    浏览量

    126490
  • 激光雷达
    +关注

    关注

    982

    文章

    4540

    浏览量

    197069

原文标题:视觉SLAM关键方法总结

文章出处:【微信号:IV_Technology,微信公众号:智车科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ROS2 SLAM建图与导航实战--基于米尔RK3576开发板

    + 定位 + Nav2核心 第七章:总结与展望 7.1 本文总结 从环境搭建、URDF建模、SLAM建图、Nav2导航到基于米尔RK3576开发板的实体部署,全面覆盖了ROS2 Humble下
    发表于 03-12 17:55

    机器视觉网卡与普通网卡的5点关键不同

    随着人工智能和工业自动化的蓬勃发展,机器视觉技术扮演着越来越重要的角色。机器视觉系统依赖于高质量的图像数据进行分析和决策,而高性能的网络传输是确保这些数据可靠、快速到达处理单元的关键。虽然机器
    的头像 发表于 01-15 16:38 334次阅读
    机器<b class='flag-5'>视觉</b>网卡与普通网卡的5点<b class='flag-5'>关键</b>不同

    什么是激光雷达 3D SLAM技术?

    在智能移动设备自主运行的赛道上,激光雷达3DSLAM技术正成为破局关键,但多数人对其认知仍停留在表层。要读懂这一核心技术,不妨先回溯“SLAM”的本质——SLAM
    的头像 发表于 12-02 19:23 770次阅读
    什么是激光雷达 3D <b class='flag-5'>SLAM</b>技术?

    机器视觉缺陷检测中传感器集成的五大关键

    工智能技术一样,机器视觉虽然令人印象深刻,但它仅仅是一个工具。其效果取决于最终用户的应用方式。因此,以下是将机器视觉系统集成到缺陷检测中的五个关键步骤。一、明确缺陷定
    的头像 发表于 11-03 11:40 937次阅读
    机器<b class='flag-5'>视觉</b>缺陷检测中传感器集成的五大<b class='flag-5'>关键</b>

    FPGA和GPU加速的视觉SLAM系统中特征检测器研究

    特征检测是SLAM系统中常见但耗时的模块,随着SLAM技术日益广泛应用于无人机等功耗受限平台,其效率优化尤为重要。本文首次针对视觉SLAM流程开展硬件加速特征检测器的对比研究,通过对比
    的头像 发表于 10-31 09:30 876次阅读
    FPGA和GPU加速的<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>系统中特征检测器研究

    自动驾驶中如何将稀疏地图与视觉SLAM相结合?

    [首发于智驾最前沿微信公众号]在自动驾驶场景中,稀疏地图通常是由一系列关键帧和若干三维稀疏特征点构成的地图,每个特征点包含三维坐标和描述外观的描述子;而视觉SLAM是运行在车辆上的实时算法,它一边
    的头像 发表于 10-28 09:07 811次阅读
    自动驾驶中如何将稀疏地图与<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>相结合?

    全新轻量级ViSTA-SLAM系统介绍

    无需相机内参、极致轻量的前端(前端模型大小仅为同类35%),实时单目视觉SLAM,ViSTA-SLAM。与现有方法相比,ViSTA-SLAM
    的头像 发表于 09-22 15:53 1159次阅读
    全新轻量级ViSTA-<b class='flag-5'>SLAM</b>系统介绍

    一种适用于动态环境的自适应先验场景-对象SLAM框架

    由于传统视觉SLAM在动态场景中容易会出现严重的定位漂移,本文提出了一种新颖的基于场景-对象的可靠性评估框架,该框架通过当前帧质量指标以及相对于可靠参考帧的场景变化,全面评估SLAM的稳定性。
    的头像 发表于 08-19 14:17 995次阅读
    一种适用于动态环境的自适应先验场景-对象<b class='flag-5'>SLAM</b>框架

    基于深度学习的增强版ORB-SLAM3详解

    ORB-SLAM3虽是当前最先进的SLAM之一,但由于使用传统的ORB(定向FAST和旋转BRIEF)特征,在尺度、旋转和光照发生显著变化时可能会表现出局限性。
    的头像 发表于 07-14 17:21 1992次阅读
    基于深度学习的增强版ORB-<b class='flag-5'>SLAM</b>3详解

    一种适用于动态环境的实时RGB-D SLAM系统

    近期用于视觉SLAM的3D高斯泼溅(3DGS)技术在跟踪和高保真建图方面取得了显著进展。然而,其顺序优化框架以及对动态物体的敏感性限制了其在现实场景中的实时性能和鲁棒性。为此,我们提出
    的头像 发表于 07-04 15:14 1456次阅读
    一种适用于动态环境的实时RGB-D <b class='flag-5'>SLAM</b>系统

    一种适用于动态环境的3DGS-SLAM系统

    当前基于神经辐射场(NeRF)或3D高斯泼溅(3DGS)的SLAM方法在重建静态3D场景方面表现出色,但在动态环境中的跟踪和重建方面却面临着挑战。
    的头像 发表于 06-13 10:10 1593次阅读
    一种适用于动态环境的3DGS-<b class='flag-5'>SLAM</b>系统

    三维高斯泼溅大规模视觉SLAM系统解析

    近期兴起的神经辐射场(NeRF)与三维高斯泼溅(3DGS)技术在视觉SLAM中展现出令人鼓舞的突破性成果。然而,当前主流方法多依赖RGBD传感器,并且仅适用于室内环境。在大规模室外场景中的重建鲁棒性
    的头像 发表于 05-27 14:13 1813次阅读
    三维高斯泼溅大规模<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>系统解析

    基于高斯的稠密视觉SLAM研究

    基于高斯的场景表示在新视角下会出现几何失真,这大大降低了基于高斯的跟踪方法的准确性。这些几何不一致主要源于高斯基元的深度建模以及在深度融合过程中表面之间的相互干扰。为了解决这些问题,我们提出了一种
    的头像 发表于 05-15 10:36 1247次阅读
    基于高斯的稠密<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>研究

    【「# ROS 2智能机器人开发实践」阅读体验】视觉实现的基础算法的应用

    视觉巡线,展示了如何从数据采集、模型训练到机器人部署的完整流程。 值得注意的是,深度学习模型的实时性对机器人计算资源提出了较高要求,优化模型(如TensorRT加速)是实际部署的关键。 二、SLAM
    发表于 05-03 19:41

    【「# ROS 2智能机器人开发实践」阅读体验】+ROS2应用案例

    方法,包括SLAM Toolbox的使用。 通过学习这一部分,我了解到SLAM的基本原理,包括特征提取、特征匹配、地图构建和定位等关键步骤。书中还介绍了如何在ROS 2中使用
    发表于 04-27 11:42