自动驾驶高精度定位如何在复杂环境进行

相比我们最常见的 GPS 定位,高精度定位最大的特征就是将定位精度提升到米级,甚至是厘米级。而在自动驾驶的场景之下,高精度定位最大的好处就是可以给汽车提供精确到车道的导航功能。

来源 / DataFun&小马智行 出品 / 公众号“智能交通技术”(ID:ITSTech)

首先,定位(Location)和导航(Navigation)技术是负责实时提供载体(如自动驾驶车辆)的运动信息,包括载体的位置、速度、姿态、加速度、角速度等

1.自动驾驶对定位系统的四点要求

自动驾驶对于定位系统有哪些具体的要求呢?我认为有以下四点:

高精度:定位精度须达到厘米级。

高可用性:定位需要保持稳定性,自动驾驶测试已经从封闭的场景转移到更开放的场景,这也要求自动驾驶的定位系统能处理更多、更复杂的场景。

高可靠性:定位系统每一项输出其实是自动驾驶感知、规划与控制的输入,因此定位系统不能出现偏差,否则将导致很严重的后果。

自主完好性检测:虽然定位系统的可靠性能够做到极其接近100%,但是难以达到真正的100%。这就要求定位系统在没办法提供准确的输出时,及时警告用户,采取措施,避免发生任何事故。所以,自动驾驶的定位系统应保证较低的虚警率与漏警率。

2.实现自动驾驶定位的五种方法

既然自动驾驶对导航和定位的要求不低,定位系统该如何满足要求?我将详细介绍以下五种定位方法。

惯性导航(INS) 
全球导航卫星定位系统(GNSS) 
高精地图与线上激光雷达点云匹配定位 
轮式传感器(里程计) 
结合车辆运动特性的运动约束 

惯性测量单元(IMU)

目前自动驾驶常用的惯性测量单元(IMU),按照精度分可以为两类:

第一类是基于光纤陀螺(FOG)的IMU,它的特点是精度高,但同时成本也高,一般应用于精度要求较高的地图采集车辆。

第二类是基于微机电系统(MEMS)器件的IMU,它的特点是体积小,成本低,环境适应性强,但缺点是误差大。如果把它应用在自动驾驶车辆中,其需要经过比较复杂的处理。

为了从IMU的原始数据得出导航定位输出,定位系统需要进行捷联惯性导航(SINS)解算,解算包括下面四个模块:

  1. 通过陀螺输出的角速度信息积分得到姿态信息
  2. 通过姿态信息对加速度计输出的比力进行转换,由载体坐标系得到导航坐标系
  3. 进行重力计算,有害加速度、地球自转角速度等补偿计算
  4. 由加速度信息积分得到速度与位置

不过需要注意的是,积分过程造成的输出误差会随着工作时间发生积累。 

全球导航卫星定位(GNSS)

全球导航卫星定位是基于测距的绝对定位方案,其输出误差不会随着工作时间以及载体运动而发生变化。

全球导航卫星定位的一个显著特点是由单频单系统向多频多系统转变,例如中国北斗导航系统、俄罗斯格洛纳斯系统(Glonass),欧盟的伽利略系统(Galileo)等。

下图是北京某一天所能接收到的卫星信号的星空图,基本可以保证在任意时间我们都能收到35颗以上的卫星。多频多系统在极大的程度上提高了我们导航系统的可靠性与可用性。

另一个显著特点是精密定位,已在民用领域得到广泛应用。尤其是基于载波相位动态差分的RTK技术,在智能驾考、无人机、精密农业等领域都有所应用。

对于自动驾驶领域而言,精密定位的优点在于厘米级定位精度,以及能提供双天线测向功能

为了提高精密定位的定位精度,自动驾驶定位系统增加了对于基站(基站服务提供商)和网络信号的依赖。

然而由于GNSS是基于卫星定位的导航,它的脆弱性不可忽视——例如城市里经常会遇到各种城市“峡谷”场景(下图),导致定位系统无法接收低仰角的卫星信号,这极大增加了定位的影响因子,也增大了定位结果的不确定性。

另外一个脆弱性体现在信号干扰上。如果自动驾驶车辆本身以及加装设备导致车辆的电磁环境非常恶劣,处理不得当时,就会严重影响卫星定位接收机的收星及观测值的质量。

高精度地图匹配定位

第三类定位方法是基于高清度地图匹配定位。通过事先建立的高精度地图,配合线上的激光点云,定位系统也能实现绝对定位和厘米级高精度。这种方法的局限性则是增加了定位系统对高精地图的依赖。

 轮式传感器

第四种定位方法是轮式传感器/里程计(Wheel Sensor)。自动驾驶获得车轮信息的方式有两种:外接和内置。

外接轮式传感器的特点是分辨率和精度都非常高,缺点是结构复杂,可靠性难以保证,一般更适用于地图采集车。

内置轮式传感器的特点是无需外接设备,缺点是精度低,误差比较大,如果用于自动驾驶车辆,则需要经过多重的处理才行。

不论是采用哪种方式,轮式传感器对于定位系统都十分重要。

首先,由于惯性测量单元(IMU)的敏感轴很难保证与车的运动方向完全平行,因此需要进行精确的标定。而敏感轴的标定就需要轮速的输出,同时也需要获得有用的车速信息和里程信息。

不仅如此,定位系统为了进行推算,也会需要一些车轮的参数,但车轮的参数会随着工况发生变化,所以我们需要对它进行在线估计。需要注意的是,在这个过程中,估计的误差会随着自动驾驶车运动的距离发生积累,并且会受到路况的影响,比如轮胎打滑或者过减速带。

结合车辆运动特性的运动约束

最后,定位系统结合车辆的运动特点进行约束,也能获取某些定位信息。

比如定位系统先通过一些方法检测车辆是否处于静止,那么便可以假设静止时的自动驾驶车辆的速度等于0。

这种运动约束能保证极端的情况下,自动驾驶车辆的定位结果不至于产生极大的误差。当然,定位系统还可以再加入一些车辆横向或者纵向的运动约束条件等。

3.多传感器融合定位

自动驾驶定位的方法不一而足,其涉及传感器也各不相同。因此自动驾驶往往采用的是多传感器融合定位的方式。多传感器融合定位一般包括以下几个部分

数据预处理:包括惯性导航解算,GNSS的质量控制,激光雷达数据的误差补偿,还有基于轮式传感器的计算以及在线估计和补偿。

基于激光雷达数据和高精地图的匹配定位

四个核心模块

  1. ZUPT/ZIHR/NHC,车辆运动约束部分
  2. INS Alignment,惯性导航初始对准部分
  3. Integrated,组合部分
  4. FDI,故障检测与隔离部分

安全相关的模块:对于所有输出的完好性监测。

目前常用的导航定位优化方法,仍然基于传统的卡尔曼滤波器(Kalman Filter),其优化的指标是使状态方差达到最小。一般建立卡尔曼滤波器模型,首先要选择状态变量,目前多是基于导航参数误差和车载传感器误差,进行状态估计。随后,通过一步预测和量测更新,状态方程可以实现在时间域的递推。

另外,定位系统的故障诊断与隔离可采用的传统软件方法有很多,比如卡方检测等,另一方面则可以借助硬件上的冗余实现。例如,通过配备多套 GNSS/IMU,定位系统能够配合软件解析余度实现多传感器冗余,提高可靠性。

4.定位典型场景分析

第一个展示的场景(上图)是最典型的场景,场景非常开阔,可以利用GNSS/RTK等作为量,测量校准IMU和Wheel sensor的误差,并作出补偿。

第二个场景(上图)是在一个纵向特征区别不太明显的桥上,解决办法可以是采用 GNSS,IMU,Wheel Sensor的信息,检测纵向匹配失效情况,使其不影响定位系统输出。

对于卫星定位导航来说,上图的场景是较为恶劣的情况,解决办法可以是从传感器融合部分进行处理,使其具有野值的剔除能力和对参数的自适应调节能力。

第四个场景(上图)的问题在于车辆穿越高架桥时,由于信号弱,卫星定位导航失败,这就要求定位系统能独立于卫星导航,能得到可靠的结果。

MIT自动驾驶公开课系列课程分享
第一课【PPT+视频分享】:Self-Driving Cars State-of-the-Art 2019(58页)
第二课【PPT+视频分享】:Deep Leraning Behind the Wheel 2019(44页)

本文已注明来源和出处,版权归作者所有,如有侵权,您可以告知我们(点击此处)

参与评论

请输入你的评论!
请在这里输入你的名字