apollo安装指南之安装示例工程

简介: apollo安装指南之安装示例工程

步骤四:安装示例工程

1. 选择示例工程

Apollo 目前提供了3个示例工程,您可以根据需要选择其一

application-core , 包含 Apollo 所有开源软件包,可以基于此工程搭建自己的应用

application-pnc , 仅包含规划控制相关的软件包,适合仅关注规划控制方向的用户

application-perception , 仅包含感知相关的软件包,适合仅关注感知方向的用户

2. 克隆工程

以 x86 架构的 application-core 为例

git clone https://github.com/ApolloAuto/application-core.git application-core


如果您使用的是 arm 架构,请使用 application-core-arm 工程

git clone https://github.com/ApolloAuto/application-core-arm.git application-core


3. 启动 Apollo 环境容器

# 先进入工程目录
cd application-core
# 启动容器
aem start

4. 进入 Apollo 环境容器

# 先进入工程目录
cd application-core
# 进入容器
aem enter

5. 安装软件包

示例工程中包含一个名为 core 目录,其中 core/cyberfile.xml 文件中描述了工程所依赖软件包,可以通过 buildtool 工具进行依赖包的安装

buildtool build -p core

‍此操作真正含义是编译工程中 core 这个包,但 core 本身并没有需要编译的代码,所以此操作仅会安装 core/cyberfile.xml 中声明的依赖包

6. 播放数据包

获取数据包
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record -P $HOME/.apollo/resources/records/

启动 Dreamview+

aem bootstrap start --plus
在 Dreamview+ 中播放数据包

启动 Dreamview+ 之后,在浏览器输入 localhost:8888 进入 Dreamview+ 界面,您可以选择默认模式,也可以选择其他模式播放数据包。本小节以默认模式为例。

选择 Default Mode 。

勾选 Accept the User Agreement and Privacy Policy/接受用户协议和隐私政策 ,并单击 Enter this Mode 进入 Mode Settings/模式设置 页面。

在 Mode Settings/模式设置 页面,设置播包参数。

在 Operations/操作 中选择 Record 。

在 Environment Resources/环境资源 中,单击 Records/数据包 ,并选择具体想要播放的数据包。

在 Environment Resources/环境资源 中,单击 HDMap/高精地图 ,并选择 Sunnyvale Big Loop 。

单击底部区域播放按钮。

可以在 Vehicle Visualization/车辆可视化 中看到数据包播放的画面。

通过命令行播放数据包

进入 docker 环境,

  1. 在 Dreamview+ 中 Resource Manager/资源管理 > Records/数据包 中先下载需要的数据包。输入以下命令播放数据包:
cyber_recorder play -f ~/.apollo/resources/records/数据包名称 -l


‍注意:如果您想要循环播放数据包,添加 -l,如果不循环播放数据包,则不需要添加 -l。

7. 安装目录结构说明

至此,Apollo 安装已经完成

整个工程的目录结构如下

application-core
├── .aem
│   └── envroot
│       ├── apollo          # 会挂载到容器内的 /apollo 目录
│       └── opt             # 会挂载到容器内的 /opt/ 目录,而 Apollo 的软件包会默认安装到 /opt/ 下,因此该目录可以起到缓存的作用
├── core                    # 工程依赖包
│   ├── BUILD
│   └── cyberfile.xml       # 包的描述文件,描述整个工程的所有依赖
├── CPPLINT.cfg
├── data                    # 数据目录,会挂载到 /apollo/data
│   ├── calibration_data    # 标定配置目录,会挂载到 /apollo/modules/calibration/data
│   ├── kv_db.sqlite
│   ├── log                 # 日志目录,会挂载到 /opt/apollo/neo/data/log
│   └── map_data            # 地图目录,会挂载到 /apollo/modules/map/data
├── profiles                # 新版配置目录
│   ├── current -> default  # 当前启用的配置目录
│   └── default             # 名为 default 的配置目录
├── third_party
├── tools -> /opt/apollo/neo/packages/bazel-extend-tools/latest/src
├── .vscode                 # 默认的 vscode 配置
│   ├── c_cpp_properties.json
│   └── settings.json
├── WORKSPACE               # bazel 的配置
└── .workspace.json         # apollo 工程配置,可以在这指定软件包版本

接下来,您可以通过实践教程来学习放了解更多 Apollo 的使用方法

  • Apollo规划实践
  • Apollo感知实践




目录
相关文章
|
并行计算 Ubuntu Docker
百度Apollo探索之旅:迈出第一步基础软件安装指南(文末赠送apollo周边)
百度Apollo探索之旅:迈出第一步基础软件安装指南(文末赠送apollo周边)
577 0
|
Android开发 图形学
在Unity中对程序进行 Android 真机断点调试
首先在手机上开启USB调试功能,并安装驱动(这一步很多手机助手都可以完成) .用USB电缆连接手机和电脑 确保手机和电脑在一个局域网内,简单的说就是电脑和手机共用一个路由器,网段一样 打开电脑上CMD窗口,输入以下命令: adb tcpip 5555(该命令打开手机adb网络调试功能) 正常情况下.
4019 0
|
存储 数据采集 传感器
一文多图搞懂KITTI数据集下载及解析
一文多图搞懂KITTI数据集下载及解析
14993 3
一文多图搞懂KITTI数据集下载及解析
|
7月前
|
人工智能 边缘计算 弹性计算
阿里云连续两年入选沙利文中国企业出海云服务市场领导者梯队
阿里云连续两年综合竞争力位居领导者梯队,是唯一进入领导者梯队的中国云厂商
|
12月前
|
关系型数据库 MySQL 数据处理
探索Python中的异步编程:从asyncio到异步数据库操作
在这个快节奏的技术世界里,效率和性能是关键。本文将带你深入Python的异步编程世界,从基础的asyncio库开始,逐步探索到异步数据库操作的高级应用。我们将一起揭开异步编程的神秘面纱,探索它如何帮助我们提升应用程序的性能和响应速度。
|
12月前
|
SQL 移动开发 Oracle
SQL语句实现查询连续六天数据的方法与技巧
在数据库查询中,有时需要筛选出符合特定时间连续性条件的数据记录
|
11月前
|
存储 安全 Java
Java多线程编程的艺术:从基础到实践####
本文深入探讨了Java多线程编程的核心概念、应用场景及其实现方式,旨在帮助开发者理解并掌握多线程编程的基本技能。文章首先概述了多线程的重要性和常见挑战,随后详细介绍了Java中创建和管理线程的两种主要方式:继承Thread类与实现Runnable接口。通过实例代码,本文展示了如何正确启动、运行及同步线程,以及如何处理线程间的通信与协作问题。最后,文章总结了多线程编程的最佳实践,为读者在实际项目中应用多线程技术提供了宝贵的参考。 ####
|
存储 缓存 分布式数据库
数据库性能优化方向的三大类别
【6月更文挑战第6天】本文介绍了数据库优化策略,包括集中式数据库的反规范化设计(如增加冗余列、派生列、重组合表、水平和垂直分表)和数据一致性保障;这些方法旨在提升性能、确保数据安全和适应大规模数据场景。
302 1
数据库性能优化方向的三大类别
|
Java 数据库连接 API
十二.Spring源码剖析-Transactional 事务执行流程
上一篇《[Transactional源码解析](https://blog.csdn.net/u014494148/article/details/118398677)》我们介绍了Spring对Transactional的解析,也就是事务的初始化工作,这一篇我们接着来分析事务的执行流程。