Apollo星火计划学习笔记第一讲——学习自动驾驶

Apollo学习笔记

  • 零、目录
  • 一、 Apollo开源平台介绍
  • 二、如何使用Apollo学习
    • 2.1 上机
      • 2.1.1 Cyber RT(通信)
      • 2.1.2 感知
      • 2.1.3 决策规划
    • 2.2 上车
      • 2.2.1 **车辆适配**
      • 2.2.2 **车辆集成**
      • 2.2.3 **测试与调车**
  • 三、概述
  • 四、问题解答:

零、目录

Apollo星火计划学习笔记第一讲——学习自动驾驶_第1张图片

准备工作:自动驾驶工作原理

人开车与自动驾驶开车转换

Apollo星火计划学习笔记第一讲——学习自动驾驶_第2张图片
Apollo星火计划学习笔记第一讲——学习自动驾驶_第3张图片

一、 Apollo开源平台介绍

Apollo开源平台架构图:

Apollo星火计划学习笔记第一讲——学习自动驾驶_第4张图片

自动驾驶核心:软件平台
RTOS操作系统:Ubuntu18.04
Apollo Cyber RT:实时系统/通讯框架
自动驾驶处理逻辑模块:静态→动态→预测,地图引擎、高精定位、感知、预测、规划、控制、、、

Apollo星火计划学习笔记第一讲——学习自动驾驶_第5张图片
算法(大脑)
Apollo星火计划学习笔记第一讲——学习自动驾驶_第6张图片

实时系统/通讯框架(血管)

Apollo星火计划学习笔记第一讲——学习自动驾驶_第7张图片
作用:将自动驾驶中的各个模块、算法组织起来,并保证数据处理中的实时性和可靠性。
优点:1、易于部署(不用关注底层调度就可以良好的实时可靠性)
2、可通过可视化诊断工具加速自动驾驶开发
3、对比ROS,Cyber RT专注自动驾驶开发、简化自动驾驶搭建时间。
左侧为Cyber RT的运作流程图

硬件相关(装备)

Apollo星火计划学习笔记第一讲——学习自动驾驶_第8张图片
Apollo工具链(技能训练场)

Apollo星火计划学习笔记第一讲——学习自动驾驶_第9张图片
Apollo通过与仿真结合,降低实车测试成本;研发流程上,Apollo车端通过数据采集器可以生成开放数据集再通过云端的大规模集成训练生成各种模型和数量配置,再通过仿真验证最后部署到车端。
涉及两个循环:1、模型的迭代循环;2、代码的迭代循环

二、如何使用Apollo学习

两个阶段:上机和上车

2.1 上机

Apollo星火计划学习笔记第一讲——学习自动驾驶_第10张图片
电脑配置:4核以上CPU,16G以上内存,Ubuntu18.04,联网(感知相关——显卡)
Cyber RT→Dreamview/Dreamland→感知

2.1.1 Cyber RT(通信)

Apollo星火计划学习笔记第一讲——学习自动驾驶_第11张图片
学习Cyber RT两个任务:

1、学习分布式系统开发模式
2、Cyber RT的各种工具调试

2.1.2 感知

Apollo星火计划学习笔记第一讲——学习自动驾驶_第12张图片
顺序:从左往右

1) 传感器特性与数据集
2) 感知流程算法:使用Apollo提供的训练交互工具Dreamview以及感知相关的可视化工具直观地了解数据感知在整个处理流程中的结果
3)感知调试:可进一步解决自身遇到的实际问题,比如Apollo自带模型无法满足的特定场景
4)3)中的特定场景,可根据Apollo提供的模型部署向导部署自定义的模型
5) 进一步,自行采集数据、训练/验证工具链(8.0中更新)

CyberVisualizer工具
Apollo星火计划学习笔记第一讲——学习自动驾驶_第13张图片
Dreamview

集成了调试操作、数据可视化、仿真系统配置与数据采集于一体。
Apollo星火计划学习笔记第一讲——学习自动驾驶_第14张图片
白色线条:高精地图中的车道
不同颜色的3D框代表不同类物体

可切换查看点云图
Apollo星火计划学习笔记第一讲——学习自动驾驶_第15张图片

2.1.3 决策规划

Apollo星火计划学习笔记第一讲——学习自动驾驶_第16张图片
顺序:从左到右
同理感知

2.2 上车

Apollo星火计划学习笔记第一讲——学习自动驾驶_第17张图片

解决集成验证问题,实现闭环。

Apollo星火计划学习笔记第一讲——学习自动驾驶_第18张图片

2.2.1 车辆适配

Apollo星火计划学习笔记第一讲——学习自动驾驶_第19张图片

2.2.2 车辆集成

Apollo星火计划学习笔记第一讲——学习自动驾驶_第20张图片

1) 传感器布置:视角、有效距离等等,以最小减少盲区提升整体安全性
2)硬件链接
3)车辆动力学标定:不同速度下油门踏板开合度所获取的加速度
4)传感器标定:不同传感器的自身坐标系是不同的,需要将其统一到车身坐标系
5) 循迹闭环:验证

2.2.3 测试与调车

Apollo星火计划学习笔记第一讲——学习自动驾驶_第21张图片
上述所有工作完成后,包括软件系统已安装,需要做的最后一步。

三、概述

基础课程推荐:Udacity合作的课程,小小白可观看入门。

系列课程:
Apollo星火计划学习笔记第一讲——学习自动驾驶_第22张图片

四、问题解答:

1) 云端服务器:上课期间可使用;后续若需要可进行购买。

2) 语言:C++和Python,核心模块算法——C++,工具脚本——Python。

3)edu版本和GitHub版本区别:edu——8.0的beta版,代码较小,编译依赖较少,根据学习需要简化后的版本。

你可能感兴趣的:(人工智能,#,Apollo,自动驾驶,自动驾驶,学习,人工智能)