cartographer 使用 定位_对SLAM定位和自动驾驶车辆定位的思考

本文探讨了SLAM技术,特别是Cartographer在自动驾驶领域的应用。虽然SLAM的回环检测能提高定位精度,但自动驾驶车辆更注重实时定位。在GPS信号不稳定或缺失的场景,如地下车库和隧道,SLAM技术可以辅助定位。文章强调了自动驾驶对算法安全性、鲁棒性和实时性的高要求,并指出V2X可能在回环检测中发挥作用。
摘要由CSDN通过智能技术生成

6f9857851530d8bf4b7e7451e34550bc.png

前沿

SLAM作为机器人领域深耕已久的方向,在我看来已经比较成熟了。从开始的EKF SLAM到现在的RTAB-MAP, ORB-SLAM, Cartographer各种SLAM算法百花齐放。SLAM的回环检测在提高机器人的定位精度上,让我眼前焕然一新。

“SLAM拥有实时定位和构建地图的能力,这对于自动驾驶来说不是非常利好?既可以定位,又可以同时构建低配版HD map, 而且还可以通过这个低配版地图进行重定位?”

我是抱着这么个想法,开始琢磨着可不可以把基于激光雷达的Cartographer应用在自动驾驶上。

ec7c926c18be36b8ce2c8f8258549444.png

SLAM应用在自动驾驶后的思考

所以上周就开始分析Cartographer。cartographer 是谷歌的开源SLAM项目。它是一个以低配硬件实现大型场景实时精确(5cm)SLAM的项目。

涉及到的内容很多很多,算法也比较复杂。单纯看他们的论文是看不出啥东西的。像这种大型项目,必须得是论文+文献+tutorial+其他人的说明。

googlecartographer/cartographer​github.com
33fef84ef63903e6c6c6c6b53998b7d8.png

总之,现在看过了各种文章,论文也读过了,tutorial过了好几遍,tuning了一些参数,在KITTI数据集做的rosbag上运行并观察了一些情况。还是蛮有意思的└(^_^)┘

但是

突然意识到些都不是重点。

我之前一直觉得回环好炫,好厉害,必须通过回环提升定位精度。

不过,想了一想,自动驾驶车辆的定位,不能依靠回环啊!车都跑偏了,还调整一起的位姿干啥?

●▽●

Carto里面利用lidar的 tt-1 的点云数据得到robot motion, 同时利用IMU进行补偿。补偿机制是啥还不知道,可能是贝叶斯滤波。如果用了基于贝叶斯理论的滤波器的话,那么基于LIDAR的motion估计值和基于贝叶斯滤波器的估计值,哪个会更准确呢? 因为在构建submap的时候,submap的构图的基准点,也就是车辆位置越准确,之后的pose和全局回环的时候才会更准确。哪个更准确呢, 这个有待测试。。

所以,问题又回来了。对于自动驾驶车辆来说,回环的比重不像在SLAM里那么重要。

实时定位才是自动驾驶真正应该关心的事情。自动驾驶回环也重要,但是没有实时定位重要。

一般的高精度的定位方法是基于RTK DGPS。这种研究已经进行了很久了,也比较成熟了。成熟到啥程度呢, 就是买个DGPS硬件系统和软件,就能直接调取1~2cm误差范围的位置数据。商用的没钱看。开源的RTK GPS有兴趣可以看看下面的开源RTKGPS项目。

An Open Source Program Package for GNSS Positioning​www.rtklib.com
04ac2b24d34f2cf7251825504ed364e5.png

SLAM如何应用在自动驾驶车辆定位上?

SLAM强大的回环检测在自动驾驶实时定位上, 帮不上太大忙。那是因为实时定位依靠的gps系统可以得到较高的准确度。

不过,影响gps的数据准确性的原因有很多,天气啊,遮挡物啊,高楼啊。典型的场景就是,地下车库,隧道,高楼比较多的市区。这种情况下,现阶段的自动驾驶车辆会依赖高精地图。也就是说,如果没有高精地图的, GPS不被信赖的场景,是完全可以嫁接SLAM的技术的。如果有对应地形的地图,那么就可以通过有地图情况下的SLAM算法,没有的话,跟一般SLAM是没什么区别的。

我认为,机器人算法和自动驾驶算法有以下区别。

  1. *自动驾驶对算法安全性的要求高。是首要因素。比什么都重要
  2. 自动驾驶车辆的可移动自由度比机器人要
  3. *自动驾驶车辆的速度相对于机器人要很多
  4. *自动驾驶车辆对算法的鲁棒性要求高
  5. *自动驾驶车辆的实时定位更为重要
    或许可以通过V2X的手段,检测回环,提高自身定位精度。
  6. (研发车辆,不是量产)自动驾驶车辆对算力没什么上限。
    (量产)就需要权衡硬件性能,计算量,算法的效率等等。
  7. 自动驾驶车辆的路况相当复杂,没有统一性。所以算法要有普适性。
  8. 自动驾驶车厂有自己的平台,不可能随便换平台。跟机器人有较大的区别。

总结

通过这些天的学习,观察了cartographer应用在自动驾驶上的问题。SLAM的即时定位是可以直接应用在自动驾驶车辆上的,尽管他的稳定性和精确度有待测试。但是回环检测这个大杀器在自动驾驶的应用,感觉非常有限。因为车辆不能在任何一个瞬间丢失自身的位置。由于每个瞬间都很重要,所以不可能等到被检测到回环的时候才提升定位精度。但是,我们并不能说回环在提高定位精度方面没有任何贡献。相反,如果通过V2V共享&合并轨迹检测回环或是自身检测回环,是可以提升车辆以后的定位精度的。

最重要的是,得知道车辆的场景&要解决的问题。

在这里,我关注的点是在隧道场景中的车辆的实时定位问题。

涉及到的有车辆动力学(kinematic model), 基于VIO & LIO的T, T-1 的motion model, 贝叶斯滤波。

附录

  • KITTI转换为bag的repo:
tomas789/kitti2bag​github.com
58f4f5c32f567cb6a9018d52bd96f539.png
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值