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

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

3天内不再提示

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

jt_rfid5 来源:思岚科技 2023-09-05 09:31 次阅读

近年来,SLAM技术取得了惊人的发展,领先一步的激光SLAM已成熟的应用于各大场景中,视觉SLAM虽在落地应用上不及激光SLAM,但也是目前研究的一大热点,今天我们就来详细聊聊视觉SLAM的那些事儿。

视觉SLAM是什么?

视觉SLAM主要是基于相机来完成环境的感知工作,相对而言,相机成本较低,容易放到商品硬件上,且图像信息丰富,因此视觉SLAM也备受关注。

目前,视觉SLAM可分为单目、双目(多目)、RGBD这三类,另还有鱼眼、全景等特殊相机,但目前在研究和产品中还属于少数,此外,结合惯性测量器件(Inertial Measurement Unit,IMU)的视觉SLAM也是现在研究热点之一。从实现难度上来说,大致将这三类方法排序为:单目视觉>双目视觉>RGBD。

a0560104-4b0a-11ee-97a6-92fbcf53809c.jpg

单目相机SLAM简称MonoSLAM,仅用一支摄像头就能完成SLAM。最大的优点是传感器简单且成本低廉,但同时也有个大问题,就是不能确切的得到深度。

一方面是由于绝对深度未知,单目SLAM不能得到机器人运动轨迹及地图的真实大小,如果把轨迹和房间同时放大两倍,单目看到的像是一样的,因此,单目SLAM只能估计一个相对深度。另一方面,单目相机无法依靠一张图像获得图像中物体离自己的相对距离。为了估计这个相对深度,单目SLAM要靠运动中的三角测量,来求解相机运动并估计像素的空间位置。即是说,它的轨迹和地图,只有在相机运动之后才能收敛,如果相机不进行运动时,就无法得知像素的位置。同时,相机运动还不能是纯粹的旋转,这就给单目SLAM的应用带来了一些麻烦。

而双目相机与单目不同的是,立体视觉既可以在运动时估计深度,亦可在静止时估计,消除了单目视觉的许多麻烦。不过,双目或多目相机配置与标定均较为复杂,其深度量程也随双目的基线与分辨率限制。通过双目图像计算像素距离,是一件非常消耗计算量的事情,现在多用FPGA来完成。

RGBD相机是2010年左右开始兴起的一种相机,它最大的特点是可以通过红外结构光或TOF原理,直接测出图像中各像素离相机的距离。因此,它比传统相机能够提供更丰富的信息,也不必像单目或双目那样费时费力地计算深度。

视觉SLAM框架解读

1.传感器数据

在视觉SLAM中主要为相机图像信息的读取和预处理。如果在机器人中,还可能有码盘,惯性传感器等信息的读取和同步。

2.视觉里程计

视觉里程计的主要任务是估算相邻图像间相机运动以及局部地图的样子,最简单的是两张图像之间的运动关系。计算机是如何通过图像确定相机的运动的。在图像上,我们只能看到一个个的像素,知道他们是某些空间点在相机的成像平面投影的结果。所以必须先了解相机跟空间点的几何关系。

Vo(又称为前端)能够通过相邻帧间的图像估计相机运动,并恢复场景的空间结构,称它为里程计。被称为里程计是因为它只计算相邻时刻的运动,而和再往前的过去信息没有关联。相邻时刻运动串联起来,就构成了机器人的运动轨迹,从而解决了定位问题。另一方面,根据每一时刻的相机位置,计算出各像素对应的空间点的位置,就得到了地图。

3.后端优化

后端优化主要是处理slam过程中噪声的问题。任何传感器都有噪声,所以除了要处理“如何从图像中估计出相机运动”,还要关心这个估计带有多大的噪声。

前端给后端提供待优化的数据,以及这些数据的初始值,而后端负责整体的优化过程,它往往面对的只有数据,不必关系这些数据来自哪里。在视觉slam中,前端和计算接视觉研究领域更为相关,比如图像的特征提取与匹配等,后端则主要是滤波和非线性优化算法

4.回环检测

回环检测也可以称为闭环检测,是指机器人识别曾到达场景的能力。如果检测成功,可以显著地减小累积误差。回环检测实质上是一种检测观测数据相似性的算法。对于视觉SLAM,多数系统采用目前较为成熟的词袋模型(Bag-of-Words, BoW)。词袋模型把图像中的视觉特征(SIFT, SURF等)聚类,然后建立词典,进而寻找每个图中含有哪些“单词”(word)。也有研究者使用传统模式识别的方法,把回环检测建构成一个分类问题,训练分类器进行分类。

5.建图

建图主要是根据估计的轨迹建立与任务要求对应的地图,在机器人学中,地图的表示主要有栅格地图、直接表征法、拓扑地图以及特征点地图这4种。而特征点地图是用有关的几何特征(如点、直线、面)表示环境,常见于视觉SLAM技术中。这种地图一般通过如GPS、UWB以及摄像头配合稀疏方式的vSLAM算法产生,优点是相对数据存储量和运算量比较小,多见于最早的SLAM算法中。

视觉SLAM工作原理

大多数视觉SLAM系统的工作方式是通过连续的相机帧,跟踪设置关键点,以三角算法定位其3D位置,同时使用此信息来逼近推测相机自己的姿态。简单来说,这些系统的目标是绘制与自身位置相关的环境地图。这个地图可以用于机器人系统在该环境中导航作用。与其他形式的SLAM技术不同,只需一个3D视觉摄像头,就可以做到这一点。

通过跟踪摄像头视频帧中足够数量的关键点,可以快速了解传感器的方向和周围物理环境的结构。所有视觉SLAM系统都在不断的工作,以使重新投影误差(Reprojection Error)或投影点与实际点之间的差异最小化,通常是通过一种称为Bundle Adjustment(BA)的算法解决方案。vSLAM系统需要实时操作,这涉及到大量的运算,因此位置数据和映射数据经常分别进行Bundle Adjustment,但同时进行,便于在最终合并之前加快处理速度。

视觉SLAM与激光SLAM有什么区别?

在业内,视觉SLAM与激光SLAM谁更胜一筹,谁将成为未来主流趋势这一问题,成为大家关注的热点,不同的人也有不同的看法及见解,以下将从成本、应用场景、地图精度、易用性几个方面来进行详细阐述。

1.成本

从成本上来说,激光雷达普遍价格较高,但目前国内也有低成本的激光雷达解决方案,而VSLAM主要是通过摄像头来采集数据信息,跟激光雷达一对比,摄像头的成本显然要低很多。但激光雷达能更高精度的测出障碍点的角度和距离,方便定位导航。

2.应用场景

从应用场景来说,VSLAM的应用场景要丰富很多。VSLAM在室内外环境下均能开展工作,但是对光的依赖程度高,在暗处或者一些无纹理区域是无法进行工作的。而激光SLAM目前主要被应用在室内,用来进行地图构建和导航工作。

3.地图精度

激光SLAM在构建地图的时候,精度较高,思岚科技的RPLIDAR系列构建的地图精度可达到2cm左右;VSLAM,比如常见的,大家也用的非常多的深度摄像机Kinect,(测距范围在3-12m之间),地图构建精度约3cm;所以激光SLAM构建的地图精度一般来说比VSLAM高,且能直接用于定位导航。

视觉SLAM的地图建立

4.易用性

激光SLAM和基于深度相机的视觉SLAM均是通过直接获取环境中的点云数据,根据生成的点云数据,测算哪里有障碍物以及障碍物的距离。但是基于单目、双目、鱼眼摄像机的视觉SLAM方案,则不能直接获得环境中的点云,而是形成灰色或彩色图像,需要通过不断移动自身的位置,通过提取、匹配特征点,利用三角测距的方法测算出障碍物的距离。

总体来说,激光SLAM相对更为成熟,也是目前最为可靠的定位导航方案,而视觉SLAM仍是今后研究的一个主流方向,但未来,两者融合是必然趋势。

审核编辑:汤梓红

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

    关注

    2545

    文章

    50384

    浏览量

    750657
  • 摄像头
    +关注

    关注

    59

    文章

    4788

    浏览量

    95210
  • SLAM
    +关注

    关注

    23

    文章

    414

    浏览量

    31752
  • 视觉SLAM
    +关注

    关注

    0

    文章

    9

    浏览量

    1353

原文标题:【光电智造】视觉SLAM技术解读

文章出处:【微信号:今日光电,微信公众号:今日光电】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

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

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

    视觉SLAM特征点法与直接法对比分析

    视觉SLAM——特征点法与直接法对比以及主流开源方案对比 ORB LSD SVO DSO
    发表于 06-02 16:56

    视觉SLAM笔记总结

    【总结】视觉SLAM笔记整理
    发表于 07-17 14:05

    激光SLAM视觉SLAM有什么区别?

    机器人定位导航中,目前主要涉及到激光SLAM视觉SLAM,激光SLAM在理论、技术和产品落地上都较为成熟,因而成为现下最为主流的定位导航方式,在家用扫地机器人及商用送餐机器人等服务机
    发表于 07-05 06:41

    基于视觉slam自动驾驶

    基于视觉slam自动驾驶,这是我们测试的视频《基于slam算法的智能机器人》调研分析报告项目背景分析机器人曾经是科幻电影中的形象,可目前已经渐渐走入我们的生活。机器人技术以包含机械、电子、自动控制
    发表于 08-09 09:37

    激光SLAM视觉VSLAM的分析比较

    什么是激光SLAM视觉VSLAM又是什么?激光SLAM视觉VSLAM有哪些不同之处?
    发表于 11-10 07:16

    单目视觉SLAM仿真系统的设计与实现

    实现单目视觉同时定位与建图(SLAM)仿真系统,描述其设计过程。该系统工作性能良好,其SLAM算法可扩展性强,可以精确逼近真实单目视觉
    发表于 04-15 08:50 82次下载

    视觉SLAM的技术资料总结

    随着传感器种类和安装方式的不同,SLAM的实现方式和难度会有很大差异。按传感器来分,SLAM主要分为激光、视觉两大类。其中,激光SLAM研究较早,理论和工程均比较成熟。
    的头像 发表于 05-12 10:31 5282次阅读

    视觉SLAM技术浅谈

    SLAM框架解读1.传感器数据在视觉SLAM中主要为相机图像信息的读取和预处理。如果在机器人中,还可能有码盘,惯性传感器等信息的读取和同步。
    的头像 发表于 08-09 17:31 1592次阅读

    视觉SLAM深度解读

    SLAM框架解读1.传感器数据在视觉SLAM中主要为相机图像信息的读取和预处理。如果在机器人中,还可能有码盘,惯性传感器等信息的读取和同步。
    的头像 发表于 09-11 22:01 1921次阅读

    科普|视觉SLAM是什么——三种视觉SLAM方案

    ,就相当于人类失去了双眼一样。 一、什么是视觉SLAM? SLAM的英文全称是Simultaneous Localization and Mapping,中文称作「即时定位与地图创建」,而视觉
    的头像 发表于 04-17 09:21 5.6w次阅读

    视觉SLAM与激光SLAM有什么区别?

    在业内,视觉SLAM与激光SLAM谁更胜一筹,谁将成为未来主流趋势这一问题,成为大家关注的热点,不同的人也有不同的看法及见解,以下将从成本、应用场景、地图精度、易用性几个方面来进行详细阐述。
    的头像 发表于 08-28 14:53 1.7w次阅读
    <b class='flag-5'>视觉</b><b class='flag-5'>SLAM</b>与激光<b class='flag-5'>SLAM</b>有什么区别?

    基于深度学习的视觉SLAM综述

    SLAM本质上是一个状态估计问题,根据传感器做划分,主要是激光、视觉两大类。激光SLAM的研究在理论和工程上都比较成熟,现有的很多行业已经开始使用激光SLAM完成工业
    的头像 发表于 12-02 15:00 1745次阅读

    OV2SLAM(高速视觉slam)简析

    视觉里程计最近几年越来越受到学术界以及工业界的认可,以ORB和VINS为代表的视觉SLAM已经可以满足绝大多数场景,而OV2SLAM在其他VSLAM中脱颖而出,其实时性以及具体的回环性
    的头像 发表于 03-21 17:16 1489次阅读

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

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