专栏首页Pulsar-VSLAM初探(一)

SLAM初探(一)

#经典SLAM过程

什么是SLAM

SLAM (simultaneous localization and mapping),也称为CML (Concurrent Mapping and Localization), 即时定位与地图构建,或并发建图与定位。

SLAM技术的应用

1)室内机器人 国内的科沃斯、塔米扫地机通过用SLAM算法结合激光雷达或者摄像头的方法,让扫地机可以高效绘制室内地图,智能分析和规划扫地环境,从而成功让自己步入了智能导航的阵列。

2)AR 目前基于SLAM技术开发的代表性产品有微软的Hololens,谷歌的Project Tango以及同样有名的Magic Leap

经典SLAM框架

  • 传感器数据 (=>)回环检测 (=>) 后端非线性优化
  • 前端视觉里程设计(VO Visual Odometry)
  • 后端非线性优化(Optimization)
  • 建图(Mapping)

几个目前比较有名的SLAM算法:PTAM,MonoSLAM, ORB-SLAM,RGBD-SLAM,RTAB-SLAM,LSD-SLAM。

传感器类型

1. 码盘
2. 摄像头
   RGB-D 红外结构光摄像机
   双目摄像机
3. 惯性传感器

前端视觉里程设计(VO)

基本的VO:特征提取和匹配 根据输入的图像,计算相机运动和特征点位置。在两两帧间的位姿估计,仅凭两帧的估计是不够的。需要把征点缓存成一个小地图,计算当前帧与地图之间的位置关系。

后端非线性优化

优化过程主要使用在SLAM的噪声问题(传感器噪声,数据噪声,自然光,人为因素等)

  1. 无约束非线性最优化问题常用算法: 梯度法(最速下降法)、共轭梯度法、变尺度法和步长加速法.其中,前三个要用到函数的一阶导数或二阶导数,适用于函数表达式导数存在且求导简单的情况,而步长加速法则相反,适用于函数表达示复杂,甚至无解析表达式,或导数不存在情况.
  2. 约束非线性最优化问题常用算法: 按照是否化成无约束问题可分为 可行方向法、制约函数法(外点法和内点法),其中内点法适用于目标函数在可行域外性质复杂情况,外点法则相反.后者根据罚函数或障碍函数的构造不同,又有不同的变形.

建图

数据噪声的处理

单目视觉SLAM方法在是否引入概率框架方面分为基于概率框架的方法和基于非概率框架的方法。其中前者的代表方法是基于Kalman滤波(KF)的方法,基于粒子滤波(PF)的方法等;后者的代表方法是基于关键帧和稀疏捆绑调整优化的方法,基于图优化的方法等。 线性高斯系统(Liner Gaussian LG)中使用卡尔曼滤波器(Kalman Filter KF)来进行data的无偏最优估计。在非线性高斯系统中(Non-Liner Non-Gaussian,NLNG系统)将会使用拓展卡尔曼滤波器(Extended Kalman Filter EKF),后期的SLAM采用粒子滤波器(Particle Filter)进行数据的滤波处理。

参考资料 : Probabilistic Robotics by Sebastian Thrun, Wolfram Burgard and Dieter Fox with a clear overview of SLAM. SLAM For Dummies (A Tutorial Approach to Simultaneous Localization and Mapping). Andrew Davison research page at Imperial College London about SLAM using vision. Autonomous and Perceptive Systems research page at University of Groningen about visual SLAM. openslam.org A good collection of open source code and explanations of SLAM. Matlab Toolbox of Kalman Filtering applied to Simultaneous Localization and Mapping Vehicle moving in 1D, 2D and 3D. SLAM Example using Processing.js of Feature-Based Navigation. FootSLAM research page at DLR including the related Wifi SLAM and PlaceSLAM approaches. SLAM lecture Online SLAM lecture based on Python. SLAM in use for indoor positioning and navigation.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • OpenMPI(一) 点对点通信

    如果发送的字节数等于接收的字节数,通信将成功。例如,可以发送一个包含两个int的数组,并接收一个long或者一个double。

    Pulsar-V
  • OpenMPI&cmake配置

    Pulsar-V
  • PCA降维推导

    Principal Component Analysis (PCA) 主成分分析,是多变量分析中最老的技术之一,PCA来源于通信中的K-L变换。1901年由Pe...

    Pulsar-V
  • 【SLAM】开源 | 自动可微的SLAM

    论文地址: https://arxiv.org/pdf/1910.10672v3.pdf

    CNNer
  • 先搞定SLAM,再谈如何抓住下一代互联网产业爆发点!

    在移动互联网大潮之后,自动驾驶、无人机、服务机器人等人工智能硬件会成为下一个产业爆发点,其中关键的技术之一就是动态定位和环境建模的SLAM技术!

    博文视点Broadview
  • SLAM——计算机对世界的感知与理解

    在移动互联网大潮之后,自动驾驶、无人机、服务机器人等人工智能硬件会成为下一个产业爆发点,其中关键的技术之一就是动态定位和环境建模的SLAM技术。

    博文视点Broadview
  • 通俗理解SLAM算法

    SLAM (simultaneous localization and mapping),也称为CML (Concurrent Mapping and Loca...

    智能算法
  • 从相机标定到SLAM,极简三维视觉六小时课程视频(附PPT)

    任何把相机连接到计算机的工作都不能忽视三维视觉。近年来,视觉 SLAM 技术发展势头迅猛,AR/VR、无人机、机器人、自动驾驶方面的公司都在大量招聘了解这方面技...

    机器之心
  • 实时SLAM的未来以及深度学习与SLAM的比较

    上一届国际计算机视觉大会ICCV,成为了深度学习技术的主场,但在我们宣布卷积神经网络的全面胜利之前,让我们先看看计算机视觉的,非学习几何方面的进展如何。同步定位...

    用户1908973
  • 无人驾驶技术的灵魂——SLAM的现在与未来

    用户1737318

扫码关注云+社区

领取腾讯云代金券