女主宣言

2018年年初,360推出了扫地机器人。这款机器人应用了SLAM技术。SLAM技术可以对未知环境自动建立地图,并为智能设备导航。这一技术广泛地应用于各种可移动的智能设备。不论是自动驾驶汽车、机器人、VR/AR设备都离不开SLAM技术。本次360人工智能研究院副院长谭平教授将结合扫地机器人这一应用,简要介绍扫地机器人在规划导航(SLAM)方面的技术原理。

PS:丰富的一线技术、多元化的表现形式,尽在“HULK一线技术杂谈”,点关注哦!

18年初,360正式推出了智能业务线最新产品——360扫地机器人

360扫地机器人搭载了人工智能黑科技,采用激光SLAM的规划式,高效率、无漏扫;扫拖一体设计;独家指定禁区功能——扫地机中的战斗机,欧耶!

那么问题来了

什么是SLAM?

哪些人在研究SLAM?

这些应用离我们互联网公司有点遥远,那么我们近一点的,就是这两年比较火的AR/VR

为什么用AR要解决SLAM 的问题?

图片为微软的HoloLens眼镜。

假想我现在带的是一副AR眼镜,那么带了AR眼镜以后,我的面前就应该能出现一个虚拟的人物站在这,从不同的角度可以看到他不同的样子。

比如,我现在正对着笔记本,那我就要看到笔记本的正面的屏幕,朝下要看到键盘,走到背面就要看到笔记本的背面。

这些要怎么实现呢?如果有一个SLAM系统的话,这一切就就都可以做到。

我站在笔记本前面时,SLAM系统就定位出我的位置,从而相应地在眼镜片上投射电脑屏幕的图像。所以要做好AR眼镜,SLAM是里面最关键的一个问题。

另一个和今天的话题直接相关的就是机器人。研究机器人的人都很关注SLAM。

下面为大家介绍一下SLAM的概念。

SLAM的两种形态

Sparse SLAM

– 地图中只有少量的环境点
– 如:火箭/潜艇导航、地图绘制

上图是一个用相机做Sparse SLAM的例子。如图有一些绿色的点,在做Sparse SLAM时,只能把这些绿色的点的三维坐标恢复出来,最终的地图里面只有这些绿色的点,其他绝大多数的像素都被丢掉了。

Dense SLAM

– 地图中有完整的环境信息
– 如: AR/VR、 机器人

对比来说,Dense SLAM就会得到一张比较Dense的图,比如上图是一个房间,右上角那里,床铺的细节都可以看得到。

机器人的基本问题

扫地机器人方案

1

扫地机方案一:醉鬼走路

代表产品

工作方式

第一代扫地机器人的基本技术思想很简单,机器人沿任意方向直行,碰撞后按随机方向折返。理论上讲,给足够长的时间,机器人可以清扫房间的每一个角落。但这只是理论上。实际情况是,机器人往往会被卡在狭小的区域,反复碰撞,怎么也不能摆脱困境。

如图,这个机器人就被卡在床和墙壁之间的缝里,红色部分就是无法扫到的区域。

这让我想起大学时学《随机过程》的情景。为了说明随机游走的这种困境,老师用交大人工湖在图书馆前的一个狭长部分为例。每当湖面的落叶飘到那个狭窄的“盲肠”就很难再漂出来,于是“盲肠”成了天然的垃圾收集器,清洁工只需要打扫那个“盲肠”就能保持整个湖面干净。据说高明的建筑师都会这样设计人工湖。只是在扫地这事上,机器人成了漂浮的落叶,家里的每个拐角都是危险的“盲肠”。

2

扫地机方案二:盲人摸象(ESLAM)

代表产品

工作方式

机器人通过轮速记和IMU来记录自己的运行轨迹。

●轮速记可以记录轮子转了多少圈。

最常见的轮速记就是用在出租车上,出租车打表就是用轮速记,根据轮子转了多少圈计算行驶路程来计费。所以据说有司机把车轮换成小一点的轮子,这样就可以多挣大家的钱。

扫地机器人通过轮速记记录自己转了几圈,乘以周长,就可以计算自己走了多远。

●IMU记录转弯的方向。

行走距离+转弯方向就可以知道自己的行走轨迹。

这个方案就像一个生活经验丰富的盲人,光靠记转弯、数步数也能弄清楚自己的行走轨迹一般。有了这样的“航迹推算”,机器就可以按预设的、覆盖全平面的轨迹行走,撞到障碍物就标出并折返。这个方案是规划式的最初级形态——建图基本靠走,避障基本靠撞。

这个方案的问题是机器只能获得对环境的粗糙感知。家庭场景常有狭窄通道,比如床和墙之间的走道。机器很可能在通道入口发生碰撞(设想一位不熟悉环境的盲人试图进入该通道的情形),然后就会折返,留下一整条通道没有打扫。

如图,墙的边界线和床的外围用虚线表示,代表这些机器人是看不到的。红色部分就是机器人扫不到的区域。

另一个典型困境是密集障碍物,比如环绕餐桌放置的椅子,机器人很难在那里顺利通行。具体的原因是,每次碰撞轮子都会有不同程度的打滑,导致轮速记不准,而频繁的旋转又会导致陀螺仪累积误差剧增。机器人就像是一位误入树林的盲人,被打滑、碰撞弄得晕头转向,很难脱身。

3

扫地机方案三:眯缝眼(LSLAM)

代表产品

工作方式

这一代产品是近几年出现的,在智能化程度、用户体验上提升很大,激活了用户的购买欲,并迅速抢走第二代产品的市场。第三代扫地机器人开始配备能直接观测环境的传感器,并根据这个传感器不同,细分为激光雷达方案、摄像头方案。激光雷达安装在机器人顶部(突起部分),描绘一副离地面约9厘米高的平面地图。但单线激光雷达就像一个“眯缝眼”,这个平面外的东西一概看不见。

如图,墙角线用实线表示,因为这些是机器人能看到的。而鞋的边框用虚线表示,代表机器人看不到,因为鞋子太低了,机器人能识别的是一副离地面约9厘米高的平面地图,这个平面外的东西一概看不见,导致机器人会推着鞋子跑。这其实是这种方案目前面临的最大挑战。

4

扫地机方案四:视觉方案(VSLAM)

代表产品

工作方式

摄像头拍摄照片,并用这些照片来建立环境地图。但受限于算法和计算能力,摄像头只能在所谓“特征点”上解算出三维信息用于建立地图。而这些特征点是稀疏地分布在图像中,其数目并不多。

摄像头的好处是视野更大,有机会识别地板上一些需要规避的东西,如宠物粪便、鞋子。单线激光看不到低矮的东西,并可能导致灾难性的后果——扫地机均匀地把宠物粪便涂满屋子。但摄像头的缺点是无法精准定位障碍物。如我前面所说,由于是Sparse 地图,摄像头建立的地图只包含“特征点”。而很多障碍物上很可能一个特征点都没有。于是在障碍物密集区域或是狭窄通道处,摄像头方案都会明显弱于激光雷达。特别是在弱光下摄像头方案几乎会退化到第二代的“盲人摸象”式。

我们实测了Dyson和iRobot几款明星级摄像头方案产品,验证了这个技术判断。最终我们选定用激光方案来做360扫地机器人,因为有密集餐桌椅的家庭远多于有随地大小便宠物的家庭。

方案一vs方案二VS方案三

测试场景

清扫效果对比

躲避障碍物

穿行狭缝

测试结论

三大类方案

– ESLAM (盲人摸象) 科沃斯DD35、浦桑尼克790
– LSLAM (眯缝眼) 小米扫地机、 360 S6
– VSLAM   iRobot 980、科沃斯DJ35

结论

– ESLAM易漏扫、扫得慢
– LSLAM 在窄缝、障碍物密集场景最优
– VSLAM 的潜力还没有被充分开发

更多测评实验

• 测试区域: 9平米会议室
• 三个场景,分别为简单、中等、较复杂
• 自制设备记录各家扫地机的清扫轨迹
• 对比分析清扫效率

评测结果—简单场景

• 简单场景下VSLAM和激光SLAM效果接近
• ESLAM没有建图功能,路径规划较差

评测结果—中等场景

• 场景中有障碍物时,激光的优势开始体现
– 激光能直接探测到障碍物,视觉不能

评测结果—较复杂场景

• 场景中有较多障碍时,激光的优势明显

为什么要做扫地机?

现存市场大
– 2017年国内扫地机器人零售总额约50亿
– 2017年科沃斯销售28亿

市场持续快速增长
– 目前美国市场渗透率16%
– 中国沿海大城市渗透率4%, 内地0.5%
– 国内扫地机销售总额年增幅30+% (预计2022年总额200亿)
– 科沃斯扫地机单品毛利率45% (小米手机为5%)

为什么360有机会?

• 现有主流产品有明显劣势
– 绝大多数产品采用 ESLAM (轮速记+IMU)
– 激光方案极大提升用户体验

• 市场颠覆正在发生
– 科沃斯品牌优势不明显
– 国外品牌iRobot、 Dyson售价太高(¥8000+)
– 小米发展迅速,两年后占约10%市场份额

• 2016年9月刚发布第一代产品, 9个月后,京东1.7万评论,好评率100%
我们于2017年1月发布第一代产品, 2.5个月后,天猫0.7万评论,好评率99.5%

和小米的比较优势

都采用激光SLAM的规划式,高效率、无漏扫
360 S6采用扫拖一体设计提升新用户购买意愿
– 首次购买扫地机的用户中,选扫拖一体的多10%
– 小米二代扫地机采用同样的扫拖一体设计
360 S6可以软件指定禁区
– 独家功能,用户集中好评
性价比显著优于小米
– 功能与小米二代扫地机相同,价格1699 vs 2499

本文总结了扫地机的几种方案,综合以上分析来看,目前单线激光方案LSLAM占优势,360的扫地机器人就是采用此种方案,在清扫效果与用户体验上都有很好的成绩。

HULK一线技术杂谈

由360云平台团队打造的技术分享公众号,内容涉及云计算、数据库、大数据、监控、泛前端、自动化测试等众多技术领域,通过夯实的技术积累和丰富的一线实战经验,为你带来最有料的技术分享

360扫地机原理大揭秘,竟还有无人驾驶技术?——浅析家用机器人SLAM方案相关推荐

  1. 诗人般的机器学习,ML工作原理大揭秘

    诗人般的机器学习,ML工作原理大揭秘 https://www.cnblogs.com/DicksonJYL/p/9698208.html 选自arXiv 作者:Cassie Kozyrkov 机器之心 ...

  2. vooc充电原理_VOOC闪充原理大揭秘! OPPO为用户跟细节杠上了

    原标题:VOOC闪充原理大揭秘! OPPO为用户跟细节杠上了 身为充电领域的标杆,OPPO在2018年推出高达50W的超级闪充之后,在今年又在快充技术上拿出了新技术,OPPO Reno系列新机全面搭载 ...

  3. php 108张牌洗牌,完美洗牌原理大揭秘 手把手图文教程!呕心沥血的超级干货...

    原标题:完美洗牌原理大揭秘 & 手把手图文教程!呕心沥血的超级干货 先感慨一下,昨晚写到半夜,今天又修改了很多遍,我终于把这篇文章写完了. 然后自夸一下,我敢保证,你从来没有看过像这样的完美洗 ...

  4. 双摄测距原理_“双摄”火遍天 工作原理大揭秘

    OFweek电子工程网讯 手机拍照自功能机时代就已经成为人们日常经常使用的一个功能,自进入智能机以来地位更是被不断的拔高.注意力所在之地往往就是创新的迸发处,这一点在手机拍照上再恰当不过,无数的技术越 ...

  5. 注解不自动导包_玩转SpringBoot2.X:SpringBoot自动配置原理大揭秘

    我们在使用SpringBoot的时候,是不是觉得特方便,根本不需要我们去配置什么端口号,应用名称,又比如我们再整合redis的时候,其实也不需要我们去指定端口号,IP,都会有默认的.是不是特方便.那么 ...

  6. 轻轻一扫立刻扣款,付款码技术原理大揭秘 | 原力计划

    作者 | 楼下小黑哥 责编 | 王晓曼 出品 | CSDN博客 前言 最近由于业务需求,需要开发付款码功能,该接口底层将会聚合市面上主流钱包 APP 的付款码功能,如微信支付,支付宝支付. ps:付款 ...

  7. 电子警察原理大揭秘 注意!不被电子警察拍照的秘密(图解)

    要想不再被电子警察拍照,先要搞清楚电子警察的类型和工作原理.简单来说,一般分五种: 1.在各个市区红绿灯路口安装的闯红灯电子警察,它主要对闯红灯和越过中心黄线的车辆进行拍摄 2.在公路上安装的公路智能 ...

  8. AI能让杨超越跳舞?背后原理大揭秘!

    上个月杨超越编程大赛在github上大火了一段时间,不过随着时间失衡其热度慢慢下降了,不过而该赛事的31号作品<YCY Dance Now>横空出世,能够做到让用户给定一段跳舞的源视频并上 ...

  9. catia怎么测总成重量_CATIA总成批量改名原理大揭秘

    这个时候,我们要引入一个概念,叫做递归,简单来说就是程序调用自身的过程. 如果还想不明白,诸位可以回忆一下你们昨晚看的那些小姐姐的直播:当她们***此处省略若干字***,然后中场休息时,在自己的桌面上 ...

最新文章

  1. 专题8-Linux系统调用
  2. server 2008 mysql 报错 0xc000007b_docker插件部署项目,volumes报错invalid volume specification...
  3. VTK:InfoVis之WordCloudDemo
  4. 程序员的进阶课-架构师之路(18)-图
  5. The 46th ICPC Asia Jinan Regional Contest,2021,46届济南站热身赛
  6. STL 堆 鱼塘钓鱼
  7. 51单片机英文缩写全称
  8. python如何爬有道翻译_python 爬有道翻译
  9. java面试,经常遇到面试官的问题
  10. 一文详解IBM SPSS Modeler 18.0安装教程
  11. 《FireShot》一键滚动截屏整个网页
  12. 46 同位语和同位语从句(以及) to/at/for/with 用法搭配
  13. Linux系统下如何查看Nvidia显卡芯片型号的两种方法
  14. android使用webview
  15. 物联网实战指南 分享
  16. app逆向篇之常用命令及刷机
  17. pycharm启动图片修改
  18. 智联卓聘 卓聘聊聊(IM)开发实践
  19. 华为提出“品质宽带”价值主张 共建宽带产业新生态
  20. b374k php webshell

热门文章

  1. Python matplotlib画图出现No handles with labels found to put in legend
  2. 诗与远方:无题(二十一)
  3. 阿里首推的“SpringBoot+Vue全栈项目”有多牛X?
  4. hive报错:hive create table: Specified key was too long; max key length is 767 bytes
  5. hadoop php mysql_PHP+Hadoop+Hive+Thrift+Mysql实现数据统计分析
  6. 只收藏不点赞的人是什么心理???
  7. java抢购防止多次请求_springboot项目中接口防止恶意请求多次
  8. 有关VUE学习的经验(2)
  9. SpringMVC HandlerMethodReturnValueHandler扩展
  10. IOS9 微信sdk升级指南