前言
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家 :https://www.captainbed.cn/z
ChatGPT体验地址
文章目录
- 前言
-
- [步骤一:安装 Linux 系统](#步骤一:安装 Linux 系统)
- [(可选)步骤二:安装 NVIDIA GPU 驱动](#(可选)步骤二:安装 NVIDIA GPU 驱动)
- [步骤三:安装 docker](#步骤三:安装 docker)
- [(可选)步骤四:安装 NVIDIA Container Toolkit](#(可选)步骤四:安装 NVIDIA Container Toolkit)
- [步骤五:下载并编译 Apollo 源码](#步骤五:下载并编译 Apollo 源码)
- [步骤六:运行 Dreamview 检验编译是否成功](#步骤六:运行 Dreamview 检验编译是否成功)
Apollo (阿波罗)是一个开放的、完整的、安全的平台,将帮助汽车行业及自动驾驶领域的合作伙伴结合车辆和硬件系统,快速搭建一套属于自己的自动驾驶系统。 开放能力、共享资源、加速创新、持续共赢是 Apollo 开放平台的口号。百度把自己所拥有的强大、成熟、安全的自动驾驶技术和数据开放给业界,旨在建立一个以合作为中心的生态体系,发挥百度在人工智能领域的技术优势,为合作伙伴赋能,共同促进自动驾驶产业的发展和创新。 Apollo 自动驾驶开放平台为开发者提供了丰富的车辆、硬件选择,强大的环境感知、高精定位、路径规划、车辆控制等自动驾驶软件能力以及高精地图、仿真、数据流水线等自动驾驶云服务,帮助开发者从 0 到 1 快速搭建一套自动驾驶系统。
驶向未来的智能出行
步骤一:安装 Linux 系统
Apollo 软件系统依赖于 Linux 操作系统运行,而 Linux 操作系统种类繁多,且又分为服务器版本和桌面版本,这里我们选择当下比较流行的 Ubuntu 桌面操作系统的 64 位版本。安装 Ubuntu 18.04+ 的步骤,参见 官方安装指南。
(可选)步骤二:安装 NVIDIA GPU 驱动
Apollo 8.0 的一些模块的编译和运行需要依赖 NVIDIA GPU 环境(例如感知模块),如果您有编译和运行这类模块的需求,则需要安装 NVIDIA GPU 驱动。
您可以通过以下两种方式在 Ubuntu 上进行安装:
- (推荐) apt-get 命令,参见 How to Install NVIDIA Driver。- 使用官方 runfile。
对于 Ubuntu 18.04+,只需执行以下命令即可:
liunx
sudo apt-get update
sudo apt-add-repository multiverse
sudo apt-get update
sudo apt-get install nvidia-driver-455
安装完毕后,可以输入 nvidia-smi来校验 NVIDIA GPU 驱动是否在正常运行(可能需要在安装后重启系统以使驱动生效)。如果成功,则会出现以下信息:
liunx
Prompt> nvidia-smi
Mon Jan 25 15:51:08 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.27.04 Driver Version: 460.27.04 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 RTX 3090 On | 00000000:65:00.0 On | N/A |
| 32% 29C P8 18W / 350W | 682MiB / 24234MiB | 7% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1286 G /usr/lib/xorg/Xorg 40MiB |
| 0 N/A N/A 1517 G /usr/bin/gnome-shell 120MiB |
| 0 N/A N/A 1899 G /usr/lib/xorg/Xorg 342MiB |
| 0 N/A N/A 2037 G /usr/bin/gnome-shell 69MiB |
| 0 N/A N/A 4148 G ...gAAAAAAAAA --shared-files 105MiB |
+-----------------------------------------------------------------------------+
步骤三:安装 docker
Apollo 8.0 依赖于 Docker 19.03+。要安装 Docker,参见 Install Docker Engine on Ubuntu。
Ubuntu 上的 Docker-CE 也可以通过 Docker 提供的官方脚本安装:
liunx
curl https://get.docker.com | sh
sudo systemctl start docker && sudo systemctl enable docker
您可以自由选择安装方式,安装之后,不要忘记执行 Linux 上的后续操作说明。更多内容,参见 使用非 root 权限运行 docker 和 配置开机启动 docker。
(可选)步骤四:安装 NVIDIA Container Toolkit
为了在容器内获得 GPU 支持,在安装完 docker 后需要安装 NVIDIA Container Toolkit。 运行以下命令安装 NVIDIA Container Toolkit:
liunx
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/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 以使改动生效。
liunx
sudo systemctl restart docker
安装完毕后,可以在APOLLO容器内输入nvidia-smi来校验 NVIDIA GPU 在容器内是否能正常运行(详见步骤五)。
步骤五:下载并编译 Apollo 源码
- 安装 git 并将源码 clone 下来:
liunx
cd ~/
sudo apt update
sudo apt install git -y
git init
git clone https://github.com/ApolloAuto/apollo.git
代码下载的时间视网速的快慢而有所区别,请耐心等待。
- 启动并进入 docker 容器,在终端输入以下命令:
liunx
cd ~/apollo
bash docker/scripts/dev_start.sh
第一次进入 docker 时或者 image 镜像有更新时会自动下载 apollo 所需的 image 镜像文件,下载镜像文件的过程会很长,请耐心等待。
如果一切正常,则会见到以下信息:
liunx
[ OK ] Congratulations! You have successfully finished setting up Apollo Dev Environment.
[ OK ] To login into the newly created apollo_neo_dev_root container, please run the following command:
[ OK ] bash scripts/edu_launcher.sh enter
[ OK ] Enjoy!
这个过程完成后,请输入以下命令以进入 docker 环境中:
liunx
bash docker/scripts/dev_into.sh
如果您在步骤二和步骤四分别安装了 NVIDIA GPU 驱动和 NVIDIA Container Toolkit,您可以输入nvidia-smi来校验 NVIDIA GPU 在容器内是否能正常运行,如果成功,则会出现以下信息:
liunx
root@in-dev-docker:/apollo_workspace# nvidia-smi
Wed Sep 14 11:43:13 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03 Driver Version: 460.32.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 Tesla V100-SXM2... Off | 00000000:03:00.0 Off | 0 |
| N/A 31C P0 38W / 300W | 153MiB / 32510MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 9962 C nvidia-cuda-mps-server 29MiB |
+-----------------------------------------------------------------------------+
- 编译 Apollo 源码。
编译 Apollo,在终端输入以下命令,等待编译完成,编译过程耗时视机器配置的不同而有所区别,请耐心等待:
liunx
bash apollo.sh build
步骤六:运行 Dreamview 检验编译是否成功
进入 Apollo 容器环境。
;
cd ~/apollo
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh
注:如果您已在容器环境内,请忽略此步骤。
- 启动 dreamview。
在终端输入以下命令:
.
bash scripts/bootstrap.sh
如果启动成功,在终端会输出以下信息:
.
nohup: appending output to 'nohup.out'
Launched module monitor.
nohup: appending output to 'nohup.out'
Launched module dreamview.
Dreamview is running at http://localhost:8888
在浏览器中输入以下地址访问 Dreamview:
.
http://localhost:8888
- 回放数据包。
在终端输入以下命令下载数据包:
.
wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record
输入以下命令可以回放数据包,在浏览器 DreamView 中应该可以看到回放画面:
.
cyber_recorder play -f demo_3.5.record --loop
如果成功在浏览器中看到类似以下画面,则表明您的 Apollo 系统已经编译并成功运行。
更全面的Apollo社区官网文档 Apollo社区官网文档,主要为新手开发者提供Apollo相关介绍、以及上机场景和上车场景的实践说明,让新手开发者能快速了解Apollo并上手实操。在8.0中,我们优化了社区官网文档的结构,从开发者使用场景出发,针对不同场景提供应用实践案例指导以及扩展开发指导。