apollo框架简述
百度apollo的框架,modules文件夹下一共有18个文件夹(想想就好多啊)!!那么肯定要首先熟悉每个文件夹下面的代码都是负责什么功能的。每个文件夹下面的README文件都清楚地写了这个模块是做什么的,但是还是整理一下比较好。
总体模块框架
简单的示例图如下
- calibration:用于传感器配准
- canbus:can总线,负责与底盘进行数据通信
- common:一些通用模块,包括数值计算、配置文件、log系统等
- control:基于计划航线和车辆状态,使用不同的控制算法来控制车辆
- data:数据处理模块
- dreamview:web交互、可视化模块
- drivers:驱动程序
- e2e:端到端的深度学习模型,目前只能下载release版本
- elo:baidu高精地图定位系统,可以下载
- localization:定位!!,和上面的有什么区别呢,通过gps
- map:地图相关应用,应该是提供了地图信息的接口
- monitor:监视系统,包括硬件、软件等
- preception:感知模块,这个模块就比较重要了,里面包括了雷达、相机等设备的信息,并且实现障碍物识别、分类等功能,应该是整个Apollo系统中非常重要的一个模块
- planning:决策模块(我觉得这么叫挺好的),收集定位、车况、地图