Apollo自动驾驶工程师技能图谱

自动驾驶|无人驾驶|51apollo.com


如何成为开发者, 成为开发者之前应该掌握以下基础

1, 有linux基础

2, 有C/C++语言基础,

3, 有数据结构基础

4, 英语水平4级以上


下面是图片中的一些介绍, 开发者必看

————————————————– ToolBox

ToolBox

ROS

百度apollo是基于ROS开发的, ROS是一套机器人操作系统(ROS,Robot Operating System)是一个机器人软件平台,它能为异质计算机集群提供类似操作系统的功能…

为什么会基于这个平台, 由于我水平有限, 大概猜测应该是, 这个平台主要是面向研究机构的,使用ROS可以大大提高开发速度, 而且有很多公司在使用(研究), 技术也成熟一些, 比自己从0写一套要方便很多…..

 

OpenCV

OpenCV是一套视觉识别的开源框架, 1999年由Intel建立,目前已经非常成熟, 很多领域都在使用,

功能包括但不限于以下:

1、人机互动

2、物体识别

3、图像分割

4、人脸识别

5、动作识别

6、运动跟踪

7、机器人

8、运动分析

9、机器视觉

10、结构分析

11、汽车安全驾驶

Docker

举例: Docker可以理解一个硬盘, 这个硬盘可以在系统上创建文件夹(你可以创建N多的文件夹), 可以对一个文件夹(或者多个)进行管理….

只不过, Docker更高级一点, 你可以吧上面的的文件夹当一个操作系统, N多个文件就是N多个操作系统…

Protobuf

说白了就是用来传输数据的一种方式, 你可以用json或者xml或者protobuf

Protocol Buffer 简称 ProtoBuf,是用于结构化数据串行化的灵活、高效、自动的方法,又如 XML,不过它更小、更快、也更简单。protobuf是google旗下的一款平台无关,语言无关,可扩展的序列化结构数据格式。

bazel

google出的, 具体是什么(我也没用过, 请看github) https://github.com/bazelbuild/bazel

————————————————– Language

C++ apollo底层代码

Bash 脚本(linux)

python/JavaScript(Node, React)

————————————————– Machine Learning Framework / 机器学习框架

PaddlePaddle

PaddlePaddle,百度旗下深度学习开源平台。Paddle(Parallel Distributed Deep Learning,并行分布式深度学习)。

2016年9月27日,百度宣布其全新的深度学习开源平台PaddlePaddle在开源社区Github及百度大脑平台开放,供广大开发者下载使用。

Caffe

Caffe(卷积神经网络框架)

TensorFlow
是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。

————————————————– Cloud Service Platform(Apollo)云服务平台

Data Plaftorm数据平台

Security 安全

OTA

DuerOS (包含中控系统, 汽车中控屏幕)

这个模块就是图片中的Cloud Service部分

自动驾驶|无人驾驶|51apollo.com

 

————————————————– Open Modules(Apoolo) / 开源模块

目前, 已经支持很多了, 端到端, 仿真, 感知, 红绿灯识别等等等等

百度无人驾驶QQ群,519034368

————————————————– Hardware / 硬件部分

需要的硬件有激光雷达,GPS等硬件。