百度Apollo基础入门(感知与融合)
本文是整理 感知模块需要大量计算机视觉技术(计算机看待和理解世界的方式)。
1.计算机视觉
四项任务: 检测、分类、跟踪、语义分割 以“分类”任务为例概述流程,如下图所示
1. 1 摄像头图像
计算机看到的图像只是一个二维网格(黑白),下图是将图像分解为二维灰度像素值网格的示例 彩色图像过程类似,但更复杂一点
1. 2 激光雷达图像(lidar)
激光雷达传感器创建环境的点云表征,可提供摄像头无法获取的数据(如:距离、高度)
2. Apollo感知
2.1 信号灯分类(HD map + 摄像头)
Apollo先使用高精度地图来确定前方是否存在交通信号灯,如果有则高精度地图会返回灯的位置,这侧重于摄像头搜索范围。在摄像头捕获到交通信号灯图像后,Apollo使用检测网络对图像中的灯进行定位,然后从较大的图像中提取信号灯。Apollo将剪裁的交通灯图像提供给分类网络以确定灯颜色 如果有许多灯,系统则需要选择哪些灯与其车道相关
2.2 Apollo使用YOLO来检测车道线和动态物体
在经过YOLO检测网络后在线检测模块会并入来自其他传感器的数据,对车道线预测进行调整,车道线最终被并入名为“虚拟车道”的单一数据结构中。同样也通过其他传感器对YOLO网络所检测到的动态对象进行调整,以获得每个对象的类型、位置、速度和前进方向,虚拟通道和动态对象均被传递到规划与控制模块。
2.3 传感器数据比较
下图为相机、激光雷达、雷达的性能比较
在Apollo中摄像头主要用于交通信号灯分类和车道线检测。激光雷达优势在于障碍物检测。雷达在探测范围和应对恶劣天气方面占优势
2.4 感知融合策略
Apollo使用激光雷达和雷达来检测障碍物,用于融合输出的主要算法为***卡尔曼滤波***。
-
预测状态( predict state) 更新测量结果(update measurement):同步、异步 卡尔曼滤波算法是预测和更新步骤的无限循环 1) 同步方式(激光雷达与雷达同时更新) 2) 异步方式(逐个更新所收到的传感器测量结果)
3. 预测
Apollo两种预测模式: 1)基于模型的预测:更具分析性 2)数据驱动预测:使用机器学习算法通过观察结果来训练模型 基于模型的优点在于直观,并且结合现有的物理知识以及交通法规还有人类行为多方面知识 数据驱动优点:训练数据越多,模型效果越好。
3.1 基于车道的预测
首先将道路分成多个部分,每个部分都覆盖了一个易于描述车辆运动的区域
车道序列:将车辆的行为划分为一组有限的模式组合,并将这些模式组合描述为车道序列。例如车辆直行的车道序列为0137
3.1.1 预测目标车道
将预测问题简化为车道选择问题,计算概率。并赋予模型学习新行为的能力 使用观测数据对模型进行经验性训练,在训练中。将真实的车辆行为提供给模型,包括车道序列和对象的状态。模型可以实现自我迭代更新,精确度不断提升
3.1.2 RNN在预测目标车辆中的应用
RNN是一种利用时间序列数据特征的一种预测方法
具有最高概率的即为预测车辆将遵循的序列
3.1.3 轨迹生成
轨迹生成是预测的最后一步 可以先通过设置约束条件,来去除大部分候选轨迹。首先,假定汽车将与目标车道的中心对齐然后去除车辆实际无法行走的轨迹 通过考虑车辆当前的速度和加速度,从剩余的轨迹中进行选择