本文来源: 自动驾驶之心

/ 导读 /


(资料图)

SLAM传统上还是面向室内等缺少GPS信号的应用,例如室内移动机器人导航,而在无人驾驶汽车上,它的意义和作用是什么,已经有高精度的地图和城市GPS信号了,那就是说SLAM只是为了感知么?

回答一

作者:后山

链接:https://www.zhihu.com/question/67473027/answer/253332306

抛砖引玉回答一个。这也算是SLAM问题“终极二问”的其中一问了:Do autonomous robots really need SLAM?

另外一个是:Is SLAM sloved?[1]

题主的 第一个问题,无人驾驶技术与SLAM的契合点在哪里?

回答这个问题,首先要明确SLAM的使命。最初,SLAM的提出就是为了解决未知环境下移动机器人的定位和建图的问题。

所以,笼统的说,SLAM对于无人驾驶的意义就是如何帮助车辆感知周围环境,更好的完成导航、避障、路径规划等高级任务。

题主提到现在已经有高精度的地图,暂且不去考虑这个地图的形式、存储规模和如何用它的问题。首先,这个构建好的地图真的能帮助无人驾驶完成避障或者路径规划等的类似任务吗?至少环境是动态的,道路哪里有一辆车,什么时候会出现一个行人,这些都是不确定的。所以从实时感知周围环境这个角度来讲,提前构建好的地图是不能解决这个问题的。

另外,GPS的定位方式是被动的、依赖信号源的,这一点使得其在一些特殊场景下是不可靠的,比如城市环境中GPS信号被遮挡,野外环境信号很弱,还有无人作战车辆作战中信号被干扰以及被监测等。所以像视觉SLAM这种主动的并且无源的工作方式在上述场景中是有优势的。

从硬件角度讲,目前主流的视觉SLAM方案,在构建低成本,小型化,易于搭载的硬件平台方面也是有优势的。

对于 第二个问题,有什么理由能够让SLAM成为无人驾驶的关键技术?

我个人不是很赞同这个逻辑。SLAM作为一个很庞杂的系统,其本身也有很多关键环节和实际应用中会遇到的难题,作为一种应用场景越来越广泛的技术(如自动机器人,无人机,无人驾驶,AR),它可能永远不会成为无人驾驶的关键技术,与其思考这个问题,不如关注SLAM本身,即围绕定位和建图这两个基本任务,来想想里程计是不是可以估计的更准确,环境地图信息是不是可以建立得更丰富(比如有用的语义信息),场景识别/闭环检测是不是能保证更高的准确率和召回率,是不是可以借助其他传感器完善SLAM系统,接下来在想想SLAM能帮助无人驾驶做些什么?只有技术越来越完善和成熟,才能被应用到更多的实际场景中。

另外,我目前在研究结合深度学习如何解决视觉SLAM场景识别问题,如果各位对这方面有兴趣或者做过相关的工作,欢迎交流!

[1] Cadena, Cesar, et al. "Past, present, and future of simultaneous localization and mapping: Toward the robust-perception age." IEEE Transactions on Robotics 32.6 (2016): 1309-1332.

回答二

作者:路游侠

链接:https://www.zhihu.com/question/67473027/answer/269160217

弱答一发。

目前看来,SLAM/SfM在自动驾驶的一些特定领域会有用,但可能不如目标检测、语义分割、路径规划那样具有普适性。话说,SLAM本身就是个感知方法啊。

高精度地图

高精度地图一般用在L4及以上的无人驾驶。

视觉为主的高精度地图可以利用SLAM/SfM来生成。

采集GPS、IMU和视觉传感器数据

利用SLAM/SfM生成全局地图

从视觉数据中提取(或人工标注)语义信息,如车道线、交通标志等

利用MVG重建出语义信息的几何位置

这里,SLAM/SfM用于提供我们感兴趣的信息的几何空间位置。带有几何位置的语义信息再加工后可以生成高精度矢量地图。SLAM地图本身可以生成视觉特征地图。这两种地图之后都可用于车辆定位。

激光为主的高精度地图类似。

这里面有很多工程化的问题需要思考,比如地图的压缩方法、定位的精度、地图的更新方式。如果用众包方式建图,还要考虑到本地运算的能力、上传的数据量、地图的融合、硬件差异、标定和自标定等实际问题,其中一些问题非常有难度。

局部定位

这里的定位特指不依赖于高精度地图的局部定位。比如,一些辅助驾驶功能希望获取车辆相对于地面的姿态,或者是车辆相对于车道线的精确位置,或者是周围环境中其它物体的方位、速度等等。

利用GPS、IMU和摄像头,用SLAM、VO甚至更直接的定位方法来获取当前的车辆姿态。目前由于这些功能所用的传感器一般为单个摄像头,因此会遇到初始化、精度不够、尺度漂移等,且平台的运算能力受限,因此可能要结合一些道路的先验知识和目标检测算法来解决。

自动泊车

自动泊车是一个比较特殊的应用,是一个可能较早落地的自动驾驶应用。考虑到激光雷达的成本,短期内大部分想落地的方案还是依赖于摄像头、IMU、里程计和其它现有车辆传感器的数据。自动泊车在不同的环境下会有不同的精度要求。定位的精度会极大影响自动泊车的实用性和可靠性。这时,必须要考虑SLAM累积误差的问题。

还有大咖用SfM生成大规模稠密3D地图来做仿真和验证的。

工作机会的话,目前大部分自动驾驶、辅助驾驶的公司都有SLAM的人才需求。

回答三

作者:小飞

链接:https://www.zhihu.com/question/67473027/answer/1980718236

作为一名无人驾驶公司的高精地图算法工程师,以实际的应用经验尝试回答下您的问题。 首先SLAM确实是无人驾驶中必不可少的技术。

先介绍下无人驾驶的高精地图,一般无人驾驶需要搭载两份高精地图:一份是矢量地图也叫路网地图,用来使无人驾驶车辆按照交通规则在合理的车道内行驶。 还有一份是定位地图,可以理解为是一份稠密点云图,这个地图可以通过SLAM方法离线构建,但这不是SLAM应用的重点。重点是无人驾驶车在实际跑车时,需要用这份地图来定位,这时候就需要SLAM技术了。即通过当前传感器获取的实时数据与地图之间的匹配完成位置的确定。

那么既然室外环境有GPS了,为啥还要靠SLAM来定位。对于自动驾驶来说场景千变万化,典型的城市道路场景,高楼林立,树木丛生,甚至还要经过长隧道。这都对于GPS 信号存在干扰甚至导致GPS缺失。那么自动驾驶车将必然需要一份定位地图,且借助SLAM来定位。

还有SLAM定位比GPS定位的优势在哪儿呢 ,GPS rtk只能获取三维位置数据和一个航向角信息,但3D 激光SLAM可以获取六自由度的位姿,自动驾驶车辆在行驶时,其翻滚和俯仰的姿态获取对于车辆的控制也起到很关键的作用。不能指望每辆车都装有高精度惯导哈,这样成本太高了。

回答四

作者:仁孟

链接:https://www.zhihu.com/question/67473027/answer/259151899

SLAM在观测环节是需要感知周围的landmark,来进行data association 来提高精度来的。本质上来说其并不是为了感知。

就目前的阶段来说,SLAM的相关的技术在无人车中主要用来定位,建图在一些非结构化场景可能会使用,例如停车场、园区(动态变化大,没有提前见图)。 不过在实际中,目前大家大多还是基于高精度地图来做,在高精度地图中,一个处理后的结构化的矢量地图,精度达到10cm级别,另外是点云地图,其中带有压缩后的点云数据(lanemark)。

定位来看,主要是同样采用slam技术方案类似的定位方法,例如EKF,然后通过各种sensor得出来的lanemark进行匹配,从而达到定位的目前。针对特殊的场景,例如在隧道、楼宇间等GPS信号不好的区域,通过将各相sensor一起感知出来的lanemark 来 data association来融合定位,当然实际中可能是单个进行匹配,最后在融合的(互为backup方式)。

在小机器人中,slam到是有很大的发挥空间,例如室内场景等,目前也有一些还可以的开源方案,具体大家可以去仔细看了下。

- End -

免责声明:

凡本公众号注明“来源:XXX(非智车科技)”的作品,均转载自其它媒体,转载目的在于传递和分享更多信息,并不代表本平台赞同其观点和对其真实性负责,版权归原作者所有,如有侵权请联系我们删除。

推荐内容