百度开源自动驾驶平台apollo学习(一)

最近百度终于把很久之前就宣称要开源的自动驾驶平台开源了,叫apollo。我也借这个机会学习一波,看看百度是怎么做的。

一、下载源码

首先,进入apollo的官网,这里有对apollo的介绍

apollo主页

接着,进入apollo的github,有个apollo,这就是我们主要需要关注的项目了。


apollo的github

然后

git clone https://github.com/ApolloAuto/apollo

由于硬件要求,安装和使用apollo平台的方法在github的页面上都有详细说明,我在这里就不细说了。

需要指出的是,目前百度使用docker来部署apollo的运行环境,因此准备环境的时候你会发现有个步骤会从dockerhub下载docker容器。

如果想要脱离对docker的依赖,可以自己查看dockerfile里面的步骤,也许我会写一篇文章来说明,不过肯定是很久以后了。。。

二、源码结构

这里我们先来看一下源码的结构

一级目录结构

docker文件夹放的是和docker容器有关的文件

docs文件夹放的是说明文档

modules放的是apollo中各个模块的源代码,也是之后我们将要详细说明的部分

scripts放的是一些百度写的部署和运行apollo的脚本

third_party存放了第三方的依赖库

tools文件夹和其他文件都是和apollo构建有关的配置文件

进入modules文件夹

modules目录结构

可以看到每个模块都分得很清楚,而且模块的功能通过文件夹的名称也能很直观的看懂。

canbus代表从CAN获取数据或将控制指令传给CAN的模块

common表示不同的模块都有可能用到的功能,比如日志,比如工厂模式的实现

control就是控制车辆的部分

decision就是决策的部分

dreamview是webUI显示的一部分

hmi以web UI的方式提供了当前车的状态

其他文件夹的内容还没看,今天就先写这么多吧

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •  Apollo(阿波罗)是百度今年发布的汽车自动驾驶系统,它是不是可以无人驾驶?安全性又如何保证?下面我们就来看看...
    xieyan0811阅读 6,645评论 0 3
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,018评论 25 708
  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,595评论 15 147
  • 昨天定的文件框,到货了。快递小哥速度快,业务熟。我的新办公地点门牌号,快递小哥比我清楚,这回我记住了,511号。 ...
    bigboss妈咪阅读 396评论 0 0
  • 皎月银天,天堂上星光点点,在人间银光洒洒;广袤的天空,因为无云,更显高阔;空荡的山谷,因为无声,更显寂静。 苍鹰矗...
    陈大仙儿阅读 562评论 0 0