Apollo学习笔记

Apollo学习笔记

Apollo课程

智能驾驶入门课程

无人驾驶概览

1、软件层分为三层:
实时操作系统(RTOS):确保在给定时间内完成特定任务,实时时确保系统稳定性、驾驶安全性的重要要求。通过在Ubuntu Linux操作系统加入Apollo内核,使其成为RTOS
运行时框架:ROS的定制版,改进了共享内存的功能和性能(一次写入多次读取)加快数据传输速度、去中心化和数据兼容性(ROS需要所有节点通信消息格式相同,当一个节点消息升级后,需要修改其他所有节点,比较麻烦,于是改进protobuf通信,在消息尾部加入新成员,不会影响各节点通信)
应用程序模块层:定位、感知、预测、规划、控制、人机接口等应用程序
2、云服务器的作用:高精地图、仿真、数据平台、安全、OTA和DuerOS智能语音系统

高精地图

定位

确定汽车在高精地图的位置,常用汽车传感器所见路标与地图路标比较,确定位置。Apollo基于GPS、IMU和lidar多传感器融合定位,GNSS定位输出位置和速度信息,lidar定位输出位置和行进方向信息,通过卡尔曼融合两者输出,惯性导航用于预测步,GNSS定位和lidar定位用于更新步
1、GNSS RTK:以GPS为例,其包括三部分:
卫星-有大约30颗卫星在离地面约2万公里外层空间运行
控制站:用于监视、控制卫星和验证GPS广播信 的精确度
GPS接收器:通过信 从卫星到接收器飞行时间乘光速计算距离(影响因素信 在不同介质传播速度有些差别,时间误差),至少需要检测到四颗卫星才能定位。由于光速很大,少量时间误差也会引起巨大误差,每颗卫星配备高精度的原子钟(两个时间怎么同步RTK利用地面基站得到更准确位置,基站已知自己精确位置,也通过卫星测量位置,从而得到测量误差,用于调整接收器位置,得到更精确的定位。手机GPS一般精度1-3m,被高楼、山脉等遮挡时只有10-50m,RTK可到达10厘米以内精度(要求附近16公里范围内有基站),有遮挡时定位精度也会降低,GPS的更新频率较低,为10HZ左右,较难满足快速运动汽车需求
2、惯性导航:已知初始位置后,通过IMU测得加速度和角速度定位,优点是更新频率可达到1000HZ,但长时间漂移较大。
3、激光雷达定位:使用点云匹配算法将当前激光雷达点云数据和高精地图进行匹配,得到初始位姿。优点是定位精度高,难点是高精度构建难度大,动态物体会影响匹配精度。点云匹配方法包括:
ICP:迭代最近点匹配
滤波算法:可去除冗余信息。卡尔曼滤波
直方图滤波算法:(Apollo使用,也叫SSD误差平方和算法SSD)。SSD方法通过传感器扫描的点云滑过地图上的每个位置,在每个位置计算扫描点与地图上的对应点之间的误差或距离,求误差的平方和,平方和越小匹配越好,寻找平方和误差最小的方法。
4、视觉定位:通过粒子滤波定位,可用匹配方法确定在车道线位置,数据易获取,但缺乏三维信息、不便利用三维地图

感知

Apollo可感知障碍物、交通灯和车道等物体,对于三维对象检测,在高精地图上使用感兴趣区域重点关注相关对象,将ROI过滤器应用于点云和图像数据,以缩小搜索范围并加快感知, 然后将已过滤得三维点云输入检测 络构建三维边界框,最后使用检测跟踪关联的算法,跨时间步识别单个对象(分类),该算法先保留每个时间步对象列表,再在下一个时间步找到每个对象的最佳匹配。对于交通灯灯等静态物体,先使用高精地图来确定前方是否存在交通信 灯,若有,返回信 灯位置,使用图像检测 络对灯进行定位,从灯较大的图裁剪信 灯,使用分类 络确定灯颜色,如果有多个灯,需要确定灯与车道的关联关系。使用YOLO检测车道线和动态物体,最后通过融合多传感器数据得到虚拟车道数据结构,融合其他传感器检测每个对象类型、位置、速度和前进方向,虚拟车道和动态对象传到规划与控制模块进行决策。

预测

预测其他物体的运动轨迹,如其他车辆变道、下匝道等,为规划和控制提供决策信息。对实时性、准确性。分为基于模型和基于数据驱动的预测。预测和感知输出的区别是预测了更长得运动轨迹。
1、基于模型方法:先用不同模型作为车辆可能路径,再通过后续信息确定车辆更符合哪个模型,优点是直观,可以结合物理知识、交通规则等信息
2、基于数据驱动预测:使用机器学习算法训练模型
3、基于车道序列预测:将车道分为不同区域,预测车辆在车道如何转换,组成有限模式组合,作为车道序列
4、障碍物状态:结合车辆位置、朝向、速度、加速度和与车道线距离预测车辆轨迹
5、预测目标车道:Apollo使用RNN建立一个模型来预测车辆的目标车道

硬件开发平台

1.Uber出现事故原因:系统未闭环(碰撞前6s传感器发现行人,前1s原车开始制动,因为改装后并没用原车发送刹车指令,造成制动机构未动作)、交互设计缺陷(车辆未提醒驾驶员)、路面照明不足、不符合车规(车体重心较高,容易侧翻)
2.研发流程:软件在环(基于模拟器仿真)、硬件在环(基于必要的硬件平台,数据包)、车辆在环(基于车辆执行,封闭场地)、司机在环(基于实际道路,司机评判)
3.硬件系统:V2X指车车通信、人车通信等;T-BOX是车联 通信 关,上接互联 ,下接CAN总线;远距离用77G激光雷达,近距离用24G激光雷达;

百度Apollo定位技术

1.定位要求:精度小于10cm;鲁棒性,最大误差小于30cm;全天候场景
2.定位方法分类:

4.激光定位:地图可分为3D的体素地图和点云地图,2D的概率地图。航向角优化使用LK的方法优化颜色值和高度值信息,1、2度以内精度较高

5.视觉定位:特征点可能因为光照等影响,检测的重复率较低;但具有语义信息的特征检测率比较高,如灯杆等。

6.惯性导航(SINS):几十块到上千万,无人车用的IMU有1、2十万,5、600ms还很准;

8.地心惯性坐标系(ECI)

百度Apollo高精地图

1.高精度图与自动驾驶关系,从云端下发车端需要保证实时性,

百度Apollo规划技术介绍

规划的本质是搜索,寻找目标函数的最优解。深度优先和广度优先都属于无信息的搜索方式,为了提高搜索效率,常使用启发式的搜索方式。

百度Apollo实战

智能驾驶实践课程

文章知识点与官方知识档案匹配,可进一步学习相关知识算法技能树首页概览35022 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年4月4日
下一篇 2022年4月4日

相关推荐