• Apollo安装全攻略


    在这里插入图片描述

    主页传送门:📀 传送

    概述


      Apollo(阿波罗)是一个流行的开源自动驾驶平台,为汽车行业和自动驾驶领域的合作伙伴提供了一个软件开发平台。本文将介绍Apollo的俩种不同安装方式,可以根据个人需求选择安装方式。

    快速安装


      基于软件包的方式进行安装,方便开发者快速安装、快速体验。

    安装基础软件


    安装 Ubuntu Linux


    根据官网的安装步骤一步步操作 安装 Ubuntu 18.04+ 的步骤,参见 官方安装指南。

    注意:虽然其他发布版本的 Linux 也可能没问题,但只在纯净的 Ubuntu 系统,即 Ubuntu 18.04.5 LTS (Bionic Beaver) 中测试过 Apollo。因此,推荐您使用 Ubuntu 18.04.5+(包括 Ubuntu
    20.04)作为主机的操作系统。

    完成安装后更新相关软件:

    sudo apt-get update
    sudo apt-get upgrade
    
    • 1
    • 2

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

    安装 Docker Engine


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

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

    wget http://apollo-pkg-beta.bj.bcebos.com/docker_install.sh
    bash docker_install.sh
    
    • 1
    • 2

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

    安装 Apollo 环境管理工具


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

    1. 添加 apt 源
      添加源和 key:
    sudo bash -c "echo 'deb https://apollo-pkg-beta.cdn.bcebos.com/neo/beta bionic main' >> /etc/apt/sources.list"
    wget -O - https://apollo-pkg-beta.cdn.bcebos.com/neo/beta/key/deb.gpg.key | sudo apt-key add -
    sudo apt update
    
    • 1
    • 2
    • 3
    1. 安装 apollo-neo-env-manager
      执行以下命令安装:
    sudo apt install apollo-neo-env-manager-dev
    
    • 1

    成功安装后即可使用

    aem -h
    
    • 1

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

    获取 GPU 支持(可选)


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

    车上的 Apollo 运行环境需要依赖 NVIDIA GPU 驱动。

    注意:如果您不需要运行感知模块,只想播放数据包体验 Apollo,则不需要安装 NVIDIA 驱动。

    您可以通过以下两种方式在 Ubuntu 上进行安装:
    (推荐)apt-get 命令。
    使用官方 runfile。

    对于 Ubuntu 18.04+,只需执行以下命令即可:

    sudo apt-get update
    sudo apt-add-repository multiverse
    sudo apt-get update
    sudo apt-get install nvidia-driver-455
    
    • 1
    • 2
    • 3
    • 4

    可以输入 nvidia-smi 来校验 NVIDIA GPU 驱动是否在正常运行(可能需要在安装后重启系统以使驱动生效)。如果成功,则会出现以下信息:

    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 |
    +-----------------------------------------------------------------------------+
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

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

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5

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

    sudo systemctl restart docker
    
    • 1

    创建和进入 Apollo 环境容器


    1. 创建工作空间
      创建并进入目录
    mkdir application-demo
    cd application-demo
    
    • 1
    • 2
    1. 启动 apollo 环境容器
    aem start
    
    • 1

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

    如果一切正常,将会见到类似下图的提示:
    在这里插入图片描述
    3. 进入 apollo 环境容器

    aem enter
    
    • 1

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

    user_name@in-dev-docker:/apollo_workspace# 
    
    • 1

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

    1. 初始化工作空间
    aem init
    
    • 1

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

    源码安装


    帮助用户重新安装 Apollo 8.0 系统环境及 Apollo 8.0 源码 运行软件。

    安装 Linux 系统


    Apollo 软件系统依赖于 Linux 操作系统运行,而 Linux 操作系统种类繁多,且又分为服务器版本和桌面版本,这里我们选择当下比较流行的 Ubuntu 桌面操作系统的 64 位版本。

    (可选)安装 NVIDIA GPU 驱动


    同上

    安装 docker


    同上

    下载并编译 Apollo 源码


    安装 git 并将源码 clone 下来:

    cd ~/
    sudo apt update
    sudo apt install git -y
    git init
    git clone https://github.com/ApolloAuto/apollo.git
    
    • 1
    • 2
    • 3
    • 4
    • 5

    代码下载的时间视网速的快慢而有所区别,请耐心等待。

    启动并进入 docker 容器,在终端输入以下命令:

     cd ~/apollo
     bash docker/scripts/dev_start.sh
    
    • 1
    • 2

    第一次进入 docker 时或者 image 镜像有更新时会自动下载 apollo 所需的 image 镜像文件,下载镜像文件的过程会很长,请耐心等待。

    如果一切正常,则会见到以下信息:

    [ 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!
    
    • 1
    • 2
    • 3
    • 4

    这个过程完成后,请输入以下命令以进入 docker 环境中:

    bash docker/scripts/dev_into.sh
    
    • 1

    编译 Apollo 源码。

    编译 Apollo,在终端输入以下命令,等待编译完成,编译过程耗时视机器配置的不同而有所区别,请耐心等待:

    bash apollo.sh build
    
    • 1

    运行 Dreamview 检验编译是否成功


    进入 Apollo 容器环境。

    cd ~/apollo
     bash docker/scripts/dev_start.sh
     bash docker/scripts/dev_into.sh
    
    • 1
    • 2
    • 3

    注:如果您已在容器环境内,请忽略此步骤。

    启动 dreamview。

    在终端输入以下命令:

    bash scripts/bootstrap.sh
    
    • 1

    如果启动成功,在终端会输出以下信息:

     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
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在浏览器中输入以下地址访问 Dreamview:

    http://localhost:8888
    回放数据包。

    在终端输入以下命令下载数据包:

    wget https://apollo-system.cdn.bcebos.com/dataset/6.0_edu/demo_3.5.record
    
    • 1

    输入以下命令可以回放数据包,在浏览器 DreamView 中应该可以看到回放画面:

    cyber_recorder play -f demo_3.5.record --loop
    
    • 1

    您的 Apollo 系统已经编译并成功运行。

    福利活动

    加入课程

    在这里插入图片描述

    Apollo开发者社区 观看课程学习apollo

    课程进度可以拖动 几秒就能完成。

    学完填表选心仪的奖品领奖就行

    在这里插入图片描述

    表单填写

  • 相关阅读:
    torch.as_tensor()、torch.Tensor() 、 torch.tensor() 、transforms.ToTensor()的区别
    【论文阅读笔记】 Curated Pacific Northwest AI-ready Seismic Dataset
    (附源码)mysql anjule客户信息管理系统 毕业设计 181936
    Linux选择题笔记
    编程之美4 Nim游戏
    20.3 OpenSSL 对称AES加解密算法
    DolphinDB Python API 离线安装教程
    四轴飞行器MiniFly学习笔记01——飞行姿态
    人工智能生成内容AIGC:AIGC for Various Data Modalities: A Survey
    第十七章总结
  • 原文地址:https://blog.csdn.net/wodejiaAA/article/details/133752535