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 计算量大,不能用于大规模场景 有效解决了数据关联问题
图优化 对闭环检测算法的要求严格 出现多种图优化框架,能够有效解决滤波器算法的缺陷,能用于大规模场景的地图创建

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

    关注

    160

    文章

    4030

    浏览量

    118241
  • 激光雷达
    +关注

    关注

    958

    文章

    3627

    浏览量

    186501

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

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

收藏 人收藏

    评论

    相关推荐

    工程实践中VINS与ORB-SLAM的优劣分析

    ORB-SLAM是一种基于特征的单目视觉SLAM系统,广泛用于实时三维地图构建和机器人定位。该系统使用ORB特征进行高效的视觉识别和地图重建,支持
    的头像 发表于 04-08 10:17 315次阅读
    工程实践中VINS与ORB-<b class='flag-5'>SLAM</b>的优劣分析

    什么是SLAMSLAM算法涉及的4要素

    SLAM技术可以应用在无人驾驶汽车、无人机、机器人、虚拟现实等领域中,为这些领域的发展提供了支持。SLAM技术的发展已经逐渐从单纯的定位和地图构建转向了基于场景理解的功能。
    发表于 04-04 11:50 160次阅读

    动态环境中基于神经隐式表示的RGB-D SLAM

    神经隐式表示已经被探索用于增强视觉SLAM掩码算法,特别是在提供高保真的密集地图方面。
    的头像 发表于 01-17 10:39 474次阅读
    动态环境中基于神经隐式表示的RGB-D <b class='flag-5'>SLAM</b>

    基于视觉SLAM的研究现状

    目前视觉SLAM系统可以在微型个人计算机(PC)和嵌入式设备中运行,甚至可以在智能手机等移动设备中运行(Klein和Murray,2009)。与室内或室外移动机器人不同,自动驾驶车辆具有更复杂的参数,尤其是当车辆在城市环境中自动驾驶时。
    发表于 12-04 09:22 710次阅读
    基于<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>的研究现状

    探讨目前主流3D激光SLAM算法方案

     激光SLAM局部定位精度高但全局定位能力差且对环境特征不敏感,而视觉SLAM全局定位能力好但局部定位相对激光雷达较差,两者融合可以提高SLAM系统的精度和鲁棒性。
    发表于 10-23 11:01 787次阅读
    探讨目前主流3D激光<b class='flag-5'>SLAM</b>算法方案

    总结Android传输的方法

    电子发烧友网站提供《总结Android传输的方法.pdf》资料免费下载
    发表于 10-09 16:16 0次下载
    <b class='flag-5'>总结</b>Android传输的<b class='flag-5'>方法</b>

    视觉导航关键技术及应用

    由于视觉导航技术的应用越来越普及 ,因此 ,有必要对视觉导航中的关键技术及应用进行研究。文章对其中的图像处理技术和定位与跟踪技术进行了详细研究 ,并与此相对应 ,介绍的相关的应用。
    发表于 09-25 08:09

    一文详解SLAM关键技术

    SLAM(Simultaneous Localization and Mapping)同步定位与地图构建,一种同时实现设备自身定位和环境地图构建的技术。
    的头像 发表于 09-20 10:59 1252次阅读
    一文详解<b class='flag-5'>SLAM</b><b class='flag-5'>关键</b>技术

    基于HALCON的模板匹配方法总结

    了,需要可以去下载。 德国MVTec公司开发地HALCON机器视觉开发软件,提供了许多地功能,在这里我主要学习和研究了其中地形状匹配地算法和流程。HDevelop开发环境中提供地匹配地方法主要有三种
    发表于 09-19 06:13

    SLAM领域中的VIO(视觉惯性里程计)

    IMU测量可以提高视觉SLAM在某些复杂场景的鲁棒性,在于相机快速运动、动态障碍物、光线明暗变化明显、环境中纹理缺失等导致图像信息质量较差的情况下,利用IMU信息仍能得到有效的定位结果。
    的头像 发表于 09-07 16:57 1296次阅读
    <b class='flag-5'>SLAM</b>领域中的VIO(<b class='flag-5'>视觉</b>惯性里程计)

    视觉SLAM是什么?视觉SLAM的工作原理 视觉SLAM框架解读

    近年来,SLAM技术取得了惊人的发展,领先一步的激光SLAM已成熟的应用于各大场景中,视觉SLAM虽在落地应用上不及激光SLAM,但也是目前
    的头像 发表于 09-05 09:31 1619次阅读
    <b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>是什么?<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>的工作原理 <b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>框架解读

    什么是SLAM视觉SLAM怎么实现?

    上周的组会上,我给研一的萌新们讲解什么是SLAM,为了能让他们在没有任何基础的情况下大致听懂,PPT只能多图少字没公式,这里我就把上周的组会汇报总结一下。 这次汇报的题目我定为“视觉SLAM
    的头像 发表于 08-21 10:02 2002次阅读
    什么是<b class='flag-5'>SLAM</b>?<b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>怎么实现?

    基于正态分布变换(NDT)的实时三维SLAM方法

    01  简介 矿井救援机器人在执行灾后探测救援任务时,巷道空间的准确描述和自定位是一个关键问题。在复杂的巷道环境中,特别是灾害发生后,三维同时定位与地图构建(SLAM)是一项有效但时间紧迫且极具
    的头像 发表于 08-16 10:14 1152次阅读
    基于正态分布变换(NDT)的实时三维<b class='flag-5'>SLAM</b><b class='flag-5'>方法</b>

    视觉SLAM开源方案汇总 视觉SLAM设备选型

    SLAM至今已历经三十多年的研究,这里给出经典视觉SLAM框架,这个框架本身及其包含的算法已经基本定型,并且已经在许多视觉程序库和机器人程序库中提供。
    发表于 08-10 14:15 448次阅读
    <b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>开源方案汇总 <b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>设备选型

    slam技术研究现状 SLAM技术开发和应用挑战

    融合。   作为AR和计算机视觉领域的领先企业,谷东科技受邀参与本次技术了论坛,与业内专家和学者进行深入的交流和探讨,共同探索SLAM技术在现实世界中的发展和应用前景。我们分享了在SLAM技术方面的最新成果和经验,包括基于深度学
    的头像 发表于 08-01 09:37 566次阅读