SALM_通俗理解

  本文首先从通俗易懂(个人理解)的角度来解释什么是SALM(同时定位与建图)。首先我们要知道SLAM用来干什么,最本质的应用就是赋予机器人灵魂(自主移动),要实现真正像人一样的智能机器人,那么首先就是要让机器人能够自主移动,机器人能够像人一样灵活的行走在真实世界中,这样才是人工智能迈出的第一步,但同时也是比较艰难的一步,能够像人一样的自由行走是一件非常难的事情。那么既然机器人是模拟人进行移动,下面我们就从人的角度来分析,逐步进入到SALM的领域。

从人的行为分析 salm

  首先假设你被一群恐怖分子绑架,蒙着头,经过山路十八湾然后把你扔到一个无人的陌生小岛上。当你摘下面罩的瞬间,你被眼前的美丽风景所吸引,但是此时你想的是如何逃离这个陌生的地方。首先你要做的事情就是环顾四周,确定你自己的位置(你在哪儿?),你该怎么走(你所处的地方是哪里?),但是此时你的手机GPS定位功能已经不能使用,你只能靠你自己。那么首先你会环顾四周、找到一个比较显著的标志物,以此来标记你当前的位置,于是你开始绕着小岛行走,你选择最高的大树来标记你当前走了多远,你每走一定距离便参考一下这个大树,你走了多远,路途中每看到特殊的风景你也把他当作另一个参照物,慢慢的,你便发现这个小岛的大致形状,当你绕小岛一圈后你又发现你出现在你刚开始的地方,因为你发现一开始的那颗大树就在你旁边,地上还有你走过的痕迹,你更加确信这是你最开始到过的地方,于是你知道了你处在一座环形的小岛之上。但是你想要离开这座岛屿,还得向外界求助,因为你并不知道你在那座小岛上,即使你能自己造出小船,你也可能会迷失在大海中央。你只能继续在这座岛屿上探索,维持自己的生存,等待救援。

机器人应该怎样做

  通过以上例子我们可以提取出SALM的概念,首先我们来到陌生的环境之后需要做的两件事:我在哪儿?、周围的环境是什么样的?这就是slam要做的事情,同时进行周围环境的构建以及定位自己的位置。我们通过眼睛观察到周围的环境信息,找到显著的标志物作为参考,由于天生的大量训练,我们对距离的把控已经形成一种反射,因此能够大致推敲出自己与参照物的距离。然后我们开始探索周围的环境,把一些显著的标志添加到大脑中去逐渐的形成环境的地图,每走一段时间便会去参照这些标志,以此来找到自己在地图中的位置。当我们又回到以前经过的地方时,我们经过标志物比对和一些逻辑推理,来形成一个完整的闭环地图,而不至于每次都把探索到的信息当作新的地图,这样便会增加我们大脑的存储量而且会导致记忆混淆的发生。

SLAM分析

  通过对人的探索机制进行分析,我们总结出机器人slam机制也应该如此,至少和人相似(绝对的创新是不存在的,一切发明都是在模拟大自然已经存在的机制)。首先机器人需要搭载能够探索真实世界的设备,比如相机、激光雷达、声纳等传感器,这是机器人能够完成SALM的基本配置,然后机器人通过获取周围环境信息(一般是障碍物和传感器之间的距离信息和图像信息)提取出重要的标志物(特征提取),如高大的建筑物、形状奇怪的大树,每当走过一段距离便会把当前探测到的环境信息和之前的信息进行对比,从而计算自己相对于刚才走了多远(特征匹配),并检测自己是否来到过现在的这个地方(回环检测),从而计算出自己在地图中的那个位置,并把提取到的新的特征添加到已有地图上。这就是简单意义上的slam问题。

总结

  理想情况下,如果机器人传感器的数据获取不会发生误差,那么测量出来的机器人位姿以及构建出来的地图是十分标准的,那么此时就不需要slam来帮助机器人移动了,只需要机器人在移动时有一张已经存在的地图即可实现精准定位。但是现实中总是会存在误差。传感器的误差会导致定位出现偏差,定位有偏差,就会导致构建的地图会有偏差。因此两者是有一定关联的,单独的将两个任务分开是没有意义的,slam的目的就是将地图和定位构成一个关联的整体,这样地图和定位才能表现出一致性。这里比较绕,大致意思就是利用当前时刻的传感器数据来进行建图和定位才是有意义的,将两者分开进行会导致意想不到的错误。这就是为什么要同时定位和建图(SALM)
  以上就是我个人对于salm问题的理解,希望对入门slam的有一定帮助。如有其他更好的理解也欢迎大家指正批评!

slam过去与未来1_what_salm相关推荐

  1. 【泡泡机器人转载】SLAM: 现在,未来和鲁棒年代

    摘要 SLAM是由同步环境地图构建和运行于其中的机器人状态估计组成.SLAM领域过去30年取得了令人瞩目的成就,其在大场景应用成为了可能,这一技术被见证了成功地被应用于工业领域.本文中,我们研究了SL ...

  2. 对比激光SLAM与视觉SLAM:谁会成为未来主流趋势?

    来源:智车科技 摘要:SLAM(同步定位与地图构建),是指运动物体根据传感器的信息,一边计算自身位置,一边构建环境地图的过程,解决机器人等在未知环境下运动时的定位与地图构建问题. 目前,SLAM 的主 ...

  3. SLAM:现在,未来和鲁棒感知时代

    文章目录 SLAM 研究的时代划分 the classical age (1986 - 2004) the algorithmic-analysis age (2004 - 2015) the rob ...

  4. Comparison of Laser SLAM and Visual SLAM

    Comparison of Laser SLAM and Visual SLAM 目前,SLAM技术广泛应用于机器人.无人机.无人机.AR.VR等领域,依靠传感器可以实现机器的自主定位.测绘.路径规划 ...

  5. 两篇大而全的SLAM综述

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:iceytan | 来源:知乎 https://zhuanlan.zhihu.com/p/111 ...

  6. SLAM 学习与开发经验分享

    导语 毫无疑问,SLAM是当前最酷炫的技术.在这里,我给大家分享一些在学习SLAM的过程中的一些资料与方法(不断更新中...) AR开发者社区: 目录 入门 基础 进阶 优秀文章 技术博客 网站与研究 ...

  7. 最详细的SLAM综述

    论文:Past, Present, and Future of Simultaneous Localization And Mapping: Towards the Robust-Perception ...

  8. 视觉SLAM十四讲学习笔记-第一讲

    第一讲:预备知识 SLAM介绍 SLAM 是 Simultaneous Localization and Mapping 的缩写,中文译作"同时定位与地图构建".它是指搭载特定传感 ...

  9. SLAM综述阅读笔记二:Simultaneous Localization and Mapping: A Survey of Current Trends in Autonomous(2017)

    转自[第八篇 SLAM:自动驾驶当前趋势综述 - 知乎] 说明该总结主要是针对自动驾驶 <Simultaneous Localization And Mapping: A Survey of C ...

最新文章

  1. 飞书与IAI国际广告奖,协同实现国内营销史上的创新“云终审”
  2. roadflow2.1版oracle,RoadFlowVue3.0.2更新日志
  3. 外设驱动库开发笔记18:MS5837压力变送器驱动
  4. mysql 在结果集中随机_MySql从表结果集中随机取一条数据
  5. Java使用easyexcel读大文件
  6. linux指定cpu运行程序,进程/线程绑定到特定CPU核的linux实现(有代码有实例)
  7. 从零开始学Koa2(一)
  8. 同步互斥阻塞 (2)
  9. 医院管理数据库课程设计
  10. 使用原生js发送请求
  11. history linux 位置,Linux基础知识之history的详细说明
  12. 如何获得TTF字体中字符对应的编码?
  13. 中国人霸屏奥运会乒乓球赛这事 外国人怎么看?
  14. CXPlain: Causal Explanations for Model Interpretation under Uncertainty
  15. 中秋赏月地图出炉,跟随锦江之星去赏月
  16. 服务器网页连不上网络怎么回事啊,网络连接正常网页打不开怎么办? dns服务器问题解决[多图]...
  17. OKR工作法——宏观总结
  18. 授时服务器物理隔离,GPS授时设备配备的必要性及其特点
  19. excel中数字如何自动换行
  20. 吴思里:字节前端面试经历

热门文章

  1. 简单宠物网页设计作业 静态HTML动物介绍网页作业 DW宠物网站模板下载 大学生简单野生动物网页作品代码
  2. 爬虫爬取京东商品详细数据 (品牌、售价、各类评论量(精确数量)、热评词及数量等)json解析部分数据
  3. 电商收付通系统,可视化进件二级商户
  4. 电脑输入法不能切换的解决办法
  5. 自定义 Typora 皮肤主题
  6. Linux学习(4)---cp(复制命令)
  7. java对PNG图片圆角处理 保持PNG透明背景
  8. 这个618别错过、值得入手的数码好物推荐
  9. shell常用正则命令
  10. 一个名叫 c语言 的手机题库软件,C语言二级考试题库