0%

apollo学习笔记-day9

百度Apollo高精地图

高精地图与自动驾驶的关系

高精地图与自动驾驶

  • 百度阿波罗做的是L3级别以上的自动驾驶,其内部分为L3和L4
  • L3级别以下不需要高精地图,但在L3、L4级别,高精地图是标配,如果没有高精地图,L3、L4级别的自动驾驶很难实现

什么是高精地图

  • 高精地图对整个道路的描述更加准确、清晰和全面
  • 除了传统地图的道路级别,还有道路之间的连接关系,专业术语叫Link
  • 最主要的特征是需要描述车道、车道的边界线、道路上各种交通设施和人行横道
  • 第二个特征是实时性
  • 高精地图并不是特指精度,它在描述上更加的全面,对实时性的要求更高

高精地图与导航地图

  • 电子导航地图的表述形式倾向“有向图”结构,把道路抽象成一条条的边,各边连通关系构成整体上的有向图,是根据人的行为习惯来设计的。
  • 高精地图完全为机器设计的。因为对于道路的各种情况、人都能理解,但是对于车辆来说它完全不理解。
  • 高精地图包含人行横道、红绿灯、限速标牌、车道左转右转类型等信息

高精地图是无人驾驶的核心基础模块

  • 高精地图可以作为自动驾驶的大脑。大脑里面最主要是地图、感知、定位、预测、规划、安全。综合处理成自动驾驶车辆能接受的外部信息,并统一运行在实时的操作系统上。
  • 车上配备的传感器类似于人的感知系统,用来感知外部环境;自动驾驶车辆会把感知的结果通过大脑处理后发送给控制系统。

高精地图与定位模块的关系

  • 现在主流的自动驾驶的定位方案有两种:一种是基于点云,另一种是基于Camera,其本身都是一种对周围环境的感知。
  • 通过将感知得到的特征信息与高精地图里的环境特征信息进行比对,从而确定自身所处的精确位置坐标
  • 高精地图里面由定位提供的Feature有很多,例如电线杆、车道线、停止线和人行横道等都能提供很多的约束信息

高精地图与感知模块的关系

  • 自动驾驶车辆搭载的传感器类型有很多,如64线激光雷达、Camera和Radar等传感器,但都有一定局限性
    • 64线激光雷号称有一百米的检测距离,但实践中超过60米之后,点云已非常稀疏,60米外检测的可信度会继续下降
    • 遭遇洒水车、碰到雾霾天气,对激光雷达的检测可信度也会有很大影响
    • Camera的局限更大,在夜间、逆光的情况下很难达到非常好的视觉效果
    • Radar的穿透能力很强,但精度不高
  • 基于这些传感器本身的局限性,高精地图能够提供非常大的帮助,开发者可以把高精地图看作是离线的传感器,在高精地图里,道路元素的位置都被标注好了
    • 由于物体的遮挡影响,自动驾驶车辆在某些地方看不到左下侧/比较远的红绿灯,在高精地图里提前标注红绿灯的三维空间位置后,感知模块就可以提前做针对性的检测
  • 这样做不仅可以减少感知模块的工作量,而且可以解决Deep Learning 的部分缺陷,识别可能会有些误差,但先验之后可提高识别率

高精地图与规划、预测、决策模块的关系

  • 规划模块完成的工作主要有两个:
    • 第一是A点到B点的长距离规划
    • 第二个是短距离规划
      • 自动驾驶车辆在行驶过程中面临动态环境,我们要根据障碍物的实时位置及时地做局部规划
  • 预测模块的作用是把其他道路参与者的可能行驶的路径轨迹和行动预测出来
  • 决策模块主要是根据规划和预测的结果决定自动驾驶车辆是跟车、超车还是在红绿灯灯前停下等决策
  • 控制模块是把决策结果分解为一系列的控制行动,然后分发给控制模块执行
  • 高精地图给规划、预测和决策模块提供先验的知识,高精地图能够让车辆的决策更加准确

高精地图与安全模块的关系

  • 自动驾驶的主要目标是能够取代人类司机,能够取代的前提是自动驾驶车辆必须足够的安全

  • 自动驾驶车辆可能遭受4个维度的攻击:传感器、操作系统、控制系统和通信系统

  • 高精地图能提供离线的标准信息

  • 比如说,激光雷达在场景中扫描到物体,通过与高精地图中的信息进行对比匹配。如果结果不一致,我们可以大概率地认为此地有问题,这就是通过多传感器的融合来解决安全问题。

高精地图与仿真系统

  • 搭建与真实场景高度一致的仿真场景,协助自动驾驶测试开发工作
  • 自动驾驶车辆的成本很高,在实际情况中,开发者很难把所有的策略迭代都放在车上去测试,所以需要非常强大的仿真系统
  • Apollo的仿真系统主要是基于高精地图/真实场景来构建
  • 高精地图为仿真地图提供了最底层的基础结构,能让仿真系统更好的去模拟真实道路的场景

高精地图的作用

  • 静态的Perception
    • 高精地图是静态的Perception
    • 机器理解不了,我们可以把人理解的经验赋予给驾驶系统,相当于把人的经验传授给它
  • 弥补系统缺陷
    • 自动驾驶需要非常复杂的计算系统,4G的传输速度并不能满足现阶段自动驾驶的海量数据传输需求
    • 5G是否能达到数据传输的要求还需要再验证,所以我们现在把大量的数据都放在终端
    • 自动驾驶车辆想要达到实时级的响应需其他模块的辅助
      • 高精地图告诉感知/控制模块,在你的双向通行的车道中有栅栏隔离,对向车道的车不可能过来,系统就可以放弃检测对向车道上的障碍物,有效地降低系统负担
    • 传感器有局限,但高精地图给自动驾驶提供了超视觉、超过传感器边界的远距离感知

高精地图的采集与生产

  • 传感器和算法相结合,自动驾驶汽车才能生成可用的高精地图
  • 高精地图采集所需要的传感器主要有GPS、IMU、轮速计三类

GPS

  • GPS既可以说非常好用也可以说非常难用
  • 空间点位置的计算过程中,经常要检测四颗或四颗以上卫星,才能实现精确的定位
  • 在空旷地带的GPS精确、好用
  • 一般来说,GPS在城市中定位的平均偏差在50米左右

IMU

  • IMU(惯性测量单元)是自动驾驶汽车的标配
  • IMU是测量三轴加速度的一个装置,通过算出积分,得到任意两帧间的相对运动
  • 实际工作中,由于不可避免的各种干扰因素,如果不对该运动加以校正,IMU的误差会就随着时间的推移变得越来越大

轮速计

  • 目前,轮速计的使用非常普遍,很多汽车都配备了轮速计,但其本身存在缺陷
  • 但由于车型不同、交通环境不一样,路面的摩擦系数也不一样 ,就会导致轮速计统计结果的差异

高精地图采集过程中的制图方案

  • 方案一:激光雷达
    • 激光雷达通过发射和接收激光光束得到两点之间的距离,因此其精确度非常高
    • 各个传感器都存在一定的缺陷,我们无法仅运用单一的传感器,采集出一个精确的数据
    • 通过将GPS、IMU和轮速计测出的数据进行融合,再运用Slam算法,对Pose进行矫正,最终才能得出一个相对精确的Pose
    • 最后把空间信息通过激光雷达扫描出三维点,转换成一个连续的三维结构,从而实现整个空间结构的三维重建
    • 通过扫描的激光点和GPS、IMU的测量数据综合运用,能够计算出一个预测结果与实际结果最小差距的数值信息
  • 方案二:Camera融合激光雷达
    • 激光雷达采集的信息非常精确,但它采集的信息非常少
    • 目前主流自动驾驶研发公司,如百度,采用的是Camera融合激光雷达的方案
    • 通过融合二者的优势,综合运用丰富的图像信息和精确的激光雷达数据,最终得出一个非常精确的高精地图

高精地图的格式规范

  • 目前最主流的通用格式规范分NDSOpenDrive两种

NDS格式规范

  • NDS是一种非常全面的地图表述方式
  • NDS把数据库做了细分,每个细分后的产品都能够独立更新升级
  • NDS不仅包括基本导航技术数据,还支持局部更新
  • NDS中另外一个非常重要的概念叫做Level(尺度),其含义类似于传统手机地图功能中的比例尺
  • 分块技术作为地图领域中一项普遍通用的技术,也被应用到Level中

OpenDrive格式规范

  • OpenDrive是目前国际上较通用的一种格式规范,由一家德国公司制定
  • 在运用OpenDrive格式规范表述道路时,会涉及Section、Lane、Junction、Tracking四个概念
  • 一条道路可以被切分为很多个Section,按照道路车道数量变化、道路实线和虚线的变化、道路属性的变化的原则来对道路进行切分
  • 基于Reference Line,向左表示ID向左递增,向右表示ID向右递减,它是格式规范的标准之一,同时也是固定的、不可更改的
  • Junction是OpenDrive格式规范中的路口概念。Junction中包含虚拟路,虚拟路用来连接可通行方向,用红色虚线来表示
  • Tracking的坐标系是ST,S代表车道Reference Line起点的偏移量,T代表基于Reference Line的横向偏移量

参考资料