定位、建图与 SLAM

激光雷达 SLAM

激光雷达 SLAM 是机器人用一种叫激光雷达(LiDAR)的激光传感器,来给一个地方画地图、同时弄清自己在这张地图里位于何处的方法。激光雷达每秒朝许多方向发出成千上万个激光脉冲,并测量每个脉冲反弹回来所花的时间,从而算出到撞到的东西的距离。把所有这些距离汇在一起,就得到一张周围墙壁、家具和障碍物的清晰快照——好比给房间画了一幅激光草图。SLAM 是“同步定位与建图”的缩写,指的是一边画地图、一边追踪自己位置的本领;可要把其中一件做好,似乎又得先知道另一件,这正是它的巧妙之处。

机器人是一帧一帧地工作的。每一刻它都拍下一张新的激光草图,然后把它平移、旋转,直到与刚才拍的那些草图对齐。为了让它们对上,机器人需要平移和转动多少,正好就是机器人移动了多少——于是它单凭这些扫描就还原出了自己的运动,而无需事先就有一张完成的地图。一路走下来,它把这些对齐好的草图缝合成一张不断扩大的地图,而它追踪到的路径,就是所有这些小位移累加起来的结果。

激光雷达在这里之所以受重视,是因为它能直接、精确地测出距离,而且在黑暗中、或在相机难以找到特征的空荡房间里照样管用。难处在于:又长又没有特征的走廊、镜子和玻璃都可能骗过它,而每一步里的小误差会慢慢累积成漂移——地图会一点点偏离真实。为对付这一点,激光雷达 SLAM 系统会留意自己以前到过的地方,一旦认出来,就把地图重新拉回正确的形状,这种修正叫做回环检测。

一台仓库机器人沿着货架通道行驶,把每一次激光扫描与上一次对齐;货架对上了,它的位置随之更新,一张干净的地面地图就在它身后不断生长。

一次接一次对齐的激光扫描,既变成了地图,也变成了被追踪的路径。

大多数室内扫地机器人和仓库机器人用的是只扫一个平面的二维(2D)激光雷达,而自动驾驶汽车用的是更丰富的三维(3D)激光雷达,它不仅四周扫描,还会上下扫描。

又称
laser SLAM激光 SLAM雷射 SLAM