最近在做高精地图方面的工作,有一些疑问,这里把一些想法记录下来,希望能够抛砖引玉,对大家有所帮助。
高精地图的作用:一方面为我们提供地理位置信息,另一方面也为我们提供道路的辅助信息(红绿灯,路口,道路曲率,坡度,路况等)。
自动驾驶定位
我们先看一下无人车如何定位。众所周知,自动驾驶的第一步就是定位,知道自己在哪里,才能进行路径规划,控制汽车行驶。当前汽车主要用GPS导航,由于GPS不是很精准,95%的情况都可以在2米以内,在人驾驶汽车的情况下,只需要知道大概位置就可以了,人可以根据周围的环境来判断自己的位置,而自动驾驶目前还没那么智能,所以对位置的要求要更高,如果误差太大,可能出现定位错误的情况,比如你不在路口,定位到路口了,这个时候车可能会做出错误的预判。
其实我认为自动驾驶后面的方向也是,只知道大概位置,然后靠感知去控制局部的驾驶,这个时候感知接管了驾驶。
GPS定位也有一些问题,首先精度不够高,然后人们又利用RTK技术,即建立一个基站,基站的位置是已知的精确坐标(可以事先测量),然后通过基站和终端同时发送GPS定位,通过基站查询的位置和基站的绝对位置得出一个偏差,然后终端通过偏差来校正自己的位置。在信号比较好的情况下,得到的精度可以达到厘米级别,这样的精度已经达到要求了。另外的问题是GPS的频率是10hz,所以位置信息0.1s才更新一次,这0.1s里的位置发生了变化,可以通过IMU和里程计来计算,即通过计算汽车的姿态,初速度,加速度来计算出汽车的实时位置,通过上述的技术解决了自动驾驶汽车的定位问题。
目前我们需要的高精度定位,用上面介绍的技术就可以实现了,为什么我们还需要点云地图呢?而且如果要绘制点云地图,我们还是会依赖位置信息来绘制,所以,单纯的绘制点云没有太大意义,假设我们的点云绘制过程如下,开车转圈,先采集一圈的点云数据,然后逐圈迭代,得出一个点云的地图,问题是点云的世界坐标基准又从哪里来呢,又是从GPS来的。所以点云的位置信息,实际也是依赖GPS,因此在有GPS的情况,都可以采用GPS去定位,除非遇到GPS失效的情况下,我们才需要用到点云去定位。
那么哪些情况下GPS会失效呢,可以想到的情况是:一是天气,在下大雨有云层这种情况下连自动驾驶的感知都会失效;然后是地形,隧道,高架桥这种场景会出现小号弱或者多径效应