半闲居士视觉SLAM十四讲笔记(2)初识 SLAM- part 1 基础理论

本系列文章由 youngpan1101 出品,转载请注明出处。
文章链接: http://blog.csdn.net/youngpan1101/article/details/71085276
作者:宋洋鹏(youngpan1101)
邮箱: yangpeng_song@163.com


-W350_2.gif-2.gif
该讲详细资料下载链接 【Baidu Yun】【Video】【Code

若您觉得本博文对您有帮助,请支持高博的新书《视觉SLAM十四讲》,【点击购买
若您觉得本博文对您有帮助,请支持高博的新书《视觉SLAM十四讲》,【点击购买
若您觉得本博文对您有帮助,请支持高博的新书《视觉SLAM十四讲》,【点击购买


理论部分

机器人自主运动基本问题
  1. 机器人的例子

    1.1 这里以下图室内服务机器人为例来说明机器人的主要模块:

    • 底盘:差速轮结构,运动避障主要依靠红外或超声波(这种方式更适合于扫地机,对于一定高度的服务机器人需要结合视觉避障)
    • 语音交互:麦克风阵列,现在最为自然的人机交互方式就是语音,从今年 Amazon Echo 的销量就可以看出语音交互未来前景广阔
    • 相机,即机器人的眼睛,是机器人探索周围环境的入口,也可以用于拍下美的瞬间
      robot_xiaowu_01.jpg

    1.2 定位与建图的关系

    机器人探索一个陌生的环境,比如说在一个布置精美的客厅里自主地运动,它至少需要知道两件事:

    • 定位:自己在哪里?(侧重于对自身的了解)
    • 建图:周围的环境是怎样的?(侧重于对外在的了解)

    定位与建图是相互 耦合 的,即

    • 准确的定位需要精确的地图
    • 精确的地图来自准确的定位

——————————– 分割线<< >>分割线 ——————————–


SLAM 传感器
  1. 传感器分类

    安装于环境中的传感器安装于机器人本体上的传感器
    二维码(比如 AprilTags) 、GPS、导轨、磁条IMU(惯性测量单元)、激光、相机

    SLAM 的问题往往是针对未知环境的,这意味着无法在环境中去安置传感器来进行机器人的定位,只能通过间接的方法,即使用机器人自身携带的传感器来解决机器人的定位与建图的问题。(以室内家庭服务机器人为例,如果要在用户家里贴二维码或者铺磁条,肯定会影响用户体验的)

  2. 两种常用的 SLAM 传感器:激光 VS 相机

    LaserCamera
    精度高、响应快、研究得比较透彻、
    重量偏重、价格高
    便宜、轻便、信息丰富、计算量大、
    需要一定的工作条件(光线、无遮挡、有纹理)
  3. 相机的种类

    相机类别特点备注
    单目 Monocular1) 无深度
    2) 移动相机后才能得知相机的运动和场景的结构
    3) 尺度的不确定性
    双目 Stereo1) 通过左右视图的视差计算深度
    2) 获得深度图的计算量大
    HUMAN+ Depth-VPUii science 双目模块ZEDDUO
    深度 RGB-D1) 结构光、TOF(Time of Flight)
    2) 主动测量,功耗偏大
    3) 所测深度值较准确
    4) 易受太阳光的影响
    Orbbec Camera华捷艾米深度相机
    其他鱼眼、全景(Dyson 360°吸尘机器人)、Event Camera

    共同点:

    • 近处物体的像运动快,远处物体的像运动慢
    • 利用图像和场景的几何关系,计算相机运动(Motion)和场景结构(Structure)
    • 需要处理连续的图像帧

——————————– 分割线<< >>分割线 ——————————–


视觉 SLAM 框架

slam_frame.jpg

  1. 视觉里程计 Visual Odometry

  2. 后端优化

    • 从带有噪声的数据中优化轨迹和地图(状态估计问题)
    • 最大后验概率估计(MAP)
    • 前期以 EKF 为代表,现在以 图优化 为代表
  3. 回环检测

    • 检测相机是否回到早先位置
    • 识别曾经到过的场景
    • 计算图像间的相似性
    • 方法:词袋模型
  4. 建图

    • 用于导航、规划、通讯、可视化、交互等
      4_mapping-2.jpg
  5. SLAM 问题的数学描述

    两个基本方程:
    运动方程 (考虑从 k1 时刻到 k 时刻,相机的位置是如何变化的)

    xk=f(xk1,uk,wk)

    式中 xk —— t=k  时刻相机所处的位置
    xk1 —— t=k1  时刻相机所处的位置
    uk —— t=k  时刻的输入量(运动传感器的读数,如码盘、IMU)
    wk —— t=k  时刻输入量的噪声

    观测方程 k 时刻相机在 xk 位置上看到某个路标点 yj ,产生了一个观测数据 zk,j

    zk,j=h(xk,yj,vk,j)

    式中 vk,j —— t=k  时刻观测里的噪声
    也就是说,当我们知道运动测量读数 u 和传感器读数 z 时,求解 定位问题(估计 x )和建图问题(估计 y)。
    这里将 SLAM 问题建模成一个 状态估计问题,即如何通过带有噪声的测量数据,估计内部的状态变量。
    linear_gaussion_system_figure_01.png

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值