百度Apollo定位技术
无人车定位技术入门与应用
什么是无人车自定位系统
无人车的自动定位系统,简单来说,就是相对一个坐标系,无人车的定位系统知道汽车的位置和姿态
坐标系还分为:
- 局部坐标系
- 局部坐标系可以说是一个较小范围地区的一个坐标系,比如一个园区,局部坐标系建好后,可以相对于这个坐标系来得到车辆的位置和姿态
- 全局坐标系
- 比如全球坐标系,可以知道一个很精确的位置
位置和姿态分别有三个自由度:
- 位置
- 位置对应X,Y,Z,即相当于某个坐标系
- 姿态
- 姿态是三个方向的一个旋转,一般会用欧拉角来表示
- 横滚、俯仰和航向,分别相对于X,Y,Z三个坐标轴
自定位系统需要别的的基础信息:除了位置和姿态这两个维度,自定位系统还要输出很多信息。除去速度、加速度和角速度外,自定位系统还需要对位置和姿态加上一个置信度,表示这次输出的定位结果好不好。
对于无人车的定位系统还有一些指标要求:大概分为三个部分:精度、鲁棒性、场景:
- 定位精度必须控制在10厘米以内
- 鲁棒性一般情况下用最大值来衡量,也就是最大的误差不要超过30厘米,因为超过30厘米的误差对前后距离的控制会有很大风险
- 定位模块需要覆盖很多场景,需要确保它在白天、黑夜、不同照明条件下,落叶、风雪等极端天气情况下,楼宇、林荫道、隧道、地下车等特殊环境下都能够正常工作
为什么无人车需要精确的定位系统
- 无人车需要精准的定位系统用来获取自己在什么地方,前方是什么情况,哪里是行驶区等
- 无人车的决策和感知能力并没有达到像人类这样的程度,所以需要定位和地图
- 对于无人车来讲,速度信息来源于定位模块,定位模块告知前面可能要开慢一点,然后控制模块接收到指令后会控制车辆慢一点
- 另外定位模块还能输出加速度和角速度等信息,这对人的乘坐体验非常重要,控制模块会根据这些信息对控制做一定的优化
定位的方法大体上可以分为三个部分:
- 基于电子信号的定位
- 基于电子信号的定位方法中最有特点的就是GNSS(全球导航卫星系统)
- 它是通过观测距离和时间差来得知无人车现在的位置
- 航迹的推算
- 航迹推算最有特点的就是IMU
- 航迹推算是根据上一时刻的位置和姿态,并叠加一些观测信息,可知道现在的位置和姿态
- IMU是一个惯性测量单元,它包含了加速度计和陀螺仪,可以输出车辆加速度,重力加速度等信息
- 环境特征的匹配
- 环境特征匹配相对较多,比如激光雷达的匹配
- 使用激光雷达的数据和已经建立的点云定位地图数据进行匹配
GPS的定位精度比较低,对于车辆定位是远远不够的。但现在有一些差分的技术来弥补这一方面的遗憾。差分技术分为:
- 物理差分
- 距离差分
- 伪距差分
- 它的精度不会特别高,大概在米级这么一个量级
- 载波相位差分
- 它的精度不会特别高,大概在米级这么一个量级
- 需要硬件成本,例如基站的设置与维护
- 容易受到电磁环境的干扰
- 伪距差分
激光定位
- 激光定位是预先制作一个地图,可能是3D地图、点云地图,也可能是2D的概率地图
- 2D概率地图是把所有的这个点云数据铺到一块,压成了一个2D地图,它分成很多小格子,每个格子里面存储了颜色信息,位置
视觉定位
- 视觉定位受照明环境的影响较大
惯性导航
- 惯性导航是基于IMU的,里面包含有加速度计和陀螺仪
- 加速度即提供瞬时的加速度与重力加速度,陀螺仪提供瞬时的角速度
- 无人车现在使用的比较多的型号定价在一二十万
多传感器融合定位
- 多传感器融合定位的核心是中间的卡尔曼滤波器,这是一个状态误差的卡尔曼滤波器
- 接收惯性导航输出的递推,作为它的时间更新,保证滤波器往前走和高频的输出,还接受GPS、激光点云定位,或者是视觉定位的输出去做低频的状态更新
三维几何变换和坐标系
三维几何变换
- 根据各个轴位置关系的不同,空间中的坐标系可以分为左手坐标系和右手坐标系,最常用的是右手坐标系
坐标系
- 惯性传感器中的陀螺仪和加速度计的输出中均可以认为是在该参考坐标系下的量测输出
- XY轴不随着地球的自转转动,是固定的以地球为基准
百度无人车定位技术
- 百度无人车定位进化历程
- 百度自动驾驶汽车的车型,比较早的有宝马、北汽,后来有奇瑞到现在的MKZ
- 该系列的车叫做探路者,意思是要去探索未知的路
- 主要用于探索一些新的算法,复杂场景、有挑战的场景
- 紧接着又有两种车型:
- 无人驾驶微循环车
- 阿波龙
- 无人驾驶物流车
- 一般情况下可以用于小区的无人快递车或者是广场上面去卖饮料的无人车
- 无人驾驶微循环车
定位技术
- GNSS定位技术
- GNSS定位技术中最著名的是GPS
- GPS授时
- 载波定位技术
- 载波定位技术具体分为两类,RTK技术和PPP技术,它们都是为了确定载波的整周数,然后消除噪声,达到更精准的定位
- RTK的工作原理如下:卫星把观测数据给基站,也给车端的移动站。基站根据多个卫星的钟差计算出误差项,然后把误差项传递给车端,车端用这个误差项消除观测误差,得到精准的位置。
- PPP可以简单理解为一个很强的单点,它有很多种基础基站的建设。这些基站通过卫星数据,把这些误差都在基站做分离处理,再传递给卫星。卫星已经做了误差的消除,再去对车端进行定位,得到一个非常高精度的定位信息。
- 激光点云定位技术
- 图像对齐主要用于航向角的优化
- SSD平方差总合
- 视觉定位技术
- 特征匹配定位
- 采用粒子滤波框架,基于蒙特卡洛采样来逼近车辆的位姿概率密度
- 捷联惯性导航系统
- 组合导航系统