Comparison of Laser SLAM and Visual SLAM
Comparison of Laser SLAM and Visual SLAM
目前,SLAM技术广泛应用于机器人、无人机、无人机、AR、VR等领域,依靠传感器可以实现机器的自主定位、测绘、路径规划等功能。由于传感器的不同,SLAM的实现方式也不同。根据传感器,SLAM主要包括激光SLAM和visual SLAM。
激光Lidar SLAM轰比目视SLAM起步早,在理论、技术和产品落地等方面都比较成熟。目前,基于视觉的SLAM主要有两种实现途径,一种是基于RGBD深度相机,如Kinect,另一种是基于单目、双目或鱼眼相机。visualslam还处于进一步开发应用场景扩展和产品落地阶段。
激光Lidar SLAM
早在2005年,人们就对激光SLAM进行了深入的研究,初步确定了它的结构。激光Lidar SLAM是目前最稳定、最主流的定位导航方法。
激光SLAM地图构建
视觉SLAM(基于视觉的定位和地图)
随着计算机视觉的飞速发展,视觉SLAM因其信息量大、应用范围广而受到广泛关注。
(1) 基于深度相机的视觉SLAM与激光SLAM类似,可以通过点云数据直接计算障碍物的距离。
(2) 基于单目和鱼眼相机的视觉SLAM方案利用多帧图像来估计目标的姿态变化,然后通过累积姿态变化来计算与目标的距离,并构造位置和地图。
可视化SLAM地图构建
长期以来,无论是业界还是学术界,对于谁比激光和视觉冲击强,谁是未来的主流趋势,都有自己的看法和看法。下面从几个方面对激光SLAM和visual SLAM作了简要的比较。
成本
无论是Sick、北洋还是Velodyne,价格从几万到几十万不等,成本相对较高,但在中国也有低成本的lidar(RPLIDAR)解决方案。视觉冲击主要通过摄像机采集数据。与激光雷达相比,相机的成本明显要低得多。然而,激光雷达可以更精确地测量障碍物的角度和距离,便于定位和导航。
应用场景
就应用场景而言,visualslam的应用场景要丰富得多。视觉重击可以在室内和室外环境下工作,但它严重依赖光线,不能在黑暗区域或某些非纹理区域工作。激光扫射目前主要用于室内地图制作和导航。
地图精度
激光扫描在绘制地图时具有很高的精度。SLAM地图的精度可以达到2厘米左右。以视觉冲击为例,Kinect是一种常用且广泛使用的深度相机,其精度约为3厘米。因此,激光SLAM地图通常比视觉SLAM更精确,可以直接使用。在定位和导航方面。
易用性
激光SLAM和基于深度相机的视觉SLAM都是直接获取环境中的点云数据,并根据生成的点云数据计算障碍物存在的位置和障碍物的距离。然而,基于单目、双目和鱼眼相机的SLAM方案不能直接获取环境中的点云,而是形成灰度或彩色图像。它需要不断移动其位置,提取和匹配特征点,并采用三角测距法测量障碍物的距离。
安装方式
雷达最初用于军事工业,后来逐渐应用于民用。众所周知,我们首先应该知道的是谷歌的无人驾驶汽车。当时,Velodyne雷达体积和重量都很大,显然不适合某些实际情况。例如,无人机、AR和VR的体积都非常小。如果他们装备了大型激光雷达,他们根本不能使用。它们也会影响美观和性能。因此,利用摄像机测距的视觉冲击波的出现,弥补了激光雷达的这一缺点,安装方式可以根据不同的场景而多样化。
其他
除以上几点外,激光SLAM与视觉SLAM在探测范围、工作强度、实时数据生成、地图累积误差等方面也存在一定差距。
注意:左侧为激光雷达SLAM,右侧为目视SLAM
数据来源:KITTI
可以清楚地看到,对于同一场景,下半部分视觉SLAM会出现偏差,这是由于累积误差造成的,所以视觉SLAM需要回归检验。
激光SLAM定位是未来相对成熟和成熟的一种视觉定位方案。因此,未来多传感器融合是必然趋势。取长补短,结合优势,为市场创造一个真正有用且易于使用的SLAM解决方案。SLAMTEC-Silan技术还将结合市场上的高质量技术,努力在自身领域进一步优化和升级激光SLAM定位导航方案,努力为市场提供一个有用的定位导航解决方案。
Comparison of Laser SLAM and Visual SLAM的更多相关文章
- 三维重建7:Visual SLAM算法笔记
VSLAM研究了几十年,新的东西不是很多,三维重建的VSLAM方法可以用一篇文章总结一下. 此文是一个好的视觉SLAM综述,对视觉SLAM总结比较全面,是SLAM那本书的很好的补充.介绍了基于滤波器的 ...
- 泡泡一分钟:Topomap: Topological Mapping and Navigation Based on Visual SLAM Maps
Topomap: Topological Mapping and Navigation Based on Visual SLAM Maps Fabian Bl¨ochliger, Marius Feh ...
- Visual SLAM
Visual SLAM 追求直接SLAM技术,而不是使用关键点,直接操作图像强度的跟踪和映射. 作为直接方法,LSD-SLAM使用图像中的所有信息,包括边缘,而基于关键点的方法只能在拐角处使用小块.这 ...
- 什么是视觉Visual SLAM
什么是视觉Visual SLAM What Is Visual SLAM? What are the origins of visual SLAM? and what are some other a ...
- SLAM for Dummies SLAM初学者教程 中文翻译 1到4章
SLAM for Dummies SLAM初学者教程A Tutorial Approach to Simultaneous Localization and Mapping 一本关于实时定位及绘图 ...
- 主流视觉SLAM、激光SLAM总结
SLAM预备知识 SLAM for Dummies 全文总结 视觉里程计 卡尔曼滤波推导 MonoSLAM MonoSLAM:Real-Time Single Camera SLAM全文总结 PTAM ...
- 激光SLAM与视觉SLAM的特点
激光SLAM与视觉SLAM的特点 目前,SLAM技术被广泛运用于机器人.无人机.无人驾驶.AR.VR等领域,依靠传感器可实现机器的自主定位.建图.路径规划等功能.由于传感器不同,SLAM的实现方式也有 ...
- 激光SLAM Vs 视觉SLAM
博客转载自:https://www.leiphone.com/news/201707/ETupJVkOYdNkuLpz.html 雷锋网(公众号:雷锋网)按:本文作者SLAMTEC(思岚科技公号sla ...
- [摘抄] SFM 和 Visual SLAM
来自知乎: SFM和vSLAM基本讨论的是同一问题,不过SFM是vision方向的叫法,而vSLAM是robotics方向的叫法. vSLAM所谓的mapping,vision方向叫structure ...
随机推荐
- hdu4829 带权并查集(题目不错)
题意: Information Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- android添加账户源码浅析
上篇粗略的分析android添加账号的流程,本篇深入的解析下执行步骤.先来看图片,取自深入理解android卷2: 上图详细的分析了addAccount的流程,下面我们结合源码来理解它 1.addAc ...
- 利用 Windows 线程池定制的 4 种方式完成任务(Windows 核心编程)
Windows 线程池 说起底层的线程操作一般都不会陌生,Windows 提供了 CreateThread 函数来创建线程,为了同步线程的操作,Windows 提供了事件内核对象.互斥量内核对象.关键 ...
- Day006 命令行传参
命令行传参 有时候你希望运行一个程序时候再传递给它消息,这要靠传递命令行参数给main()函数实现. 使用方法 写测试代码. public static void main(String[] args ...
- 运行程序显示丢失“MSVCR100D.dll”
前言 写了一个Dll注入工具,结果发现程序在其他机器上会出现丢失"MSVCR100D.dll".这个dll是vs2010自带的动态链接库,如果在没安装vs2010运行库的电脑中使用 ...
- calico NetworkPolicy on kubernetes
什么是网络策略 在Kubernetes平台中,要实现零信任网络的安全架构,Calico与istio是在Kubernetes集群中构建零信任网络必不可少的组件. 而建立和维护整个集群中的"零信 ...
- flink操作mysql
Flink读写mysql 如果是mvn项目的话,需要预先导入相应的包: <dependency> <groupId>org.apache.flink</groupId&g ...
- 开机自动挂载本地yum源-20200402-V0.1
开机自动挂载本地yum源-20200402-V0.1 已下载本地iso /home/Kylin-Server-10-mips64-Release-Build04.08-lic-20200313.iso ...
- python基础之包、模块、命名空间和作用域
一.模块介绍 模块就是一组功能的集合体,我们的程序可以导入模块来复用模块里的功能. 模块的作用: (1)从文件级别组织程序,更方便管理:随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一 ...
- python基础之psutil模块和发邮件(smtplib和yagmail)
除了内建的模块外,Python还有大量的第三方模块. 基本上,所有的第三方模块都会在PyPI - the Python Package Index上注册,只要找到对应的模块名字,即可用pip安装. 此 ...