Perception 训练与部署——环境配置

百度Apollo自动驾驶仿真平台9.0版本Perception模块相关内容

1. 首先安装nvidia驱动

2. 安装MiniConda

说明:如果已安装Anaconda则无需再安装Miniconda。

官网:MiniConda安装教程

或者参考我的教程:https://yang-makabaka.github.io/posts/4120ac2f.html

3. 安装PaddlePaddle

3.1. 创建并进入 conda 虚拟环境

注:每一步都需要在虚拟环境中进行。

1
conda create -n paddle_env python=3.8
1
source activate paddle_env

3.2. 本地安装cuda和cudnn

注:需要在上面创建的环境paddle_env中安装,如果没有进入,执行source activate paddle_env
执行下面命令,下图所示版本CUDA Version:12.0,需要注意的是此处显示的是当前驱动支持的cuda最大版本:

1
nvidia-smi

Untitled.png

3.2.1. 查看conda支持的cuda版本

执行以下命令,查找源内所有cuda版本及对应下载地址:

1
conda search cudatoolkit --info

Untitled 1.png

3.2.2. 下载cuda

找到自己想要的cuda版本后(以11.7.0版本为例),复制url字段里的下载链接,执行如下代码下载:

1
2
#wget 你刚刚复制的链接地址
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/linux-64/cudatoolkit-11.7.0-hd8887f6_11.conda

3.2.3. 安装cuda

执行如下命令进行安装,因为是通过本地安装的,所以需要写明本地包的路径(上一步不改变下载路径的话,会默认下载到主文件夹,此时路径只写文件名即可):

1
2
#conda install --use-local 本地cuda包所在的路径
conda install --use-local cudatoolkit-11.7.0-hd8887f6_10.tar.bz2

3.2.4. 查看cuda对应的cudnn版本

由下图可知,paddle支持的 CUDA 11.7 对应的 cuDNN 版本为 v8.4.1 :

Untitled 2.png

使用如下命令查看conda支持的cudnn版本,注意cudnn的版本一定要和刚刚下载的cuda版本对应:

1
conda search cudnn --info

Untitled 3.png

3.2.5. 下载cudnn版本

同样复制链接,使用wget命令下载:

1
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/linux-64/cudnn-8.4.1.50-hed8a83a_0.tar.bz2

3.2.6. 安装cudnn

1
2
#conda install --use-local 本地cudnn包所在的路径
conda install --use-local cudnn-8.4.1.50-hed8a83a_0.tar.bz2

3.3. 安装GPU版的PaddlePaddle

注:需要在上面创建的环境paddle_env中安装,如果没有进入,执行source activate paddle_env

3.3.1. 官网获取安装指令:

https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/pip/linux-pip.html

如下图所示,选择对应版本(以11.7版本为例)后,复制安装信息给出的指令到终端执行,等待安装完成:

Untitled 4.png

注:执行命令报错怎么办(ValueError: Trusted host URL must include a host part: ‘#‘):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
##执行下面指令编辑pip配置文件:
vi ~/.pip/pip.conf

#会看到下面类似内容,第四行带有 # 注释,将注释语句删除即可:
1 [global]
2 index-url = https://pypi.tuna.tsinghua.edu.cn/simple
3 [install]
4 trusted-host = https://pypi.tuna.tsinghua.edu.cn # trusted-host 此参数是为了避免麻烦,否则使用的

#修改后是这样的
1 [global]
2 index-url = https://pypi.tuna.tsinghua.edu.cn/simple
3 [install]
4 trusted-host = https://pypi.tuna.tsinghua.edu.cn

#附修改操作指令
#“i” 开始编辑,此时可通过方向键移动光标修改内容
#“Esc” 退出编辑
#“:wq” 保存退出

3.3.2. 验证安装

1
2
3
4
5
6
7
8
9
10
11
12
13
# 输入python进入python解释器
python

# 在python解释器中输入
import paddle

# 再输入
paddle.utils.run_check()

# 如果出现PaddlePaddle is installed successfully!,说明安装成功。

# 输入quit()退出python解释器
quit()

注:如果没有成功:

(1)查看路径

教程是非root用户创建的环境,命名为paddle_env,环境路径为~/.conda/envs/paddle_env,对应的第三方动态链接库地址为~/.conda/envs/paddle_env/lib,根据建立的环境名称,对应的路径为~/.conda/envs/[虚拟环境名称]/lib
若不清楚安装路径,可进入环境 paddle_env ,运行:

1
python -c "import paddle; print(paddle.**file**)"
  输出安装路径,结果为:
1
/home/ubuntu/.conda/envs/paddle_env/lib/python3.8/site-packages/paddle/**init**.py
1
2
3
4
5
对应的路径为
/home/ubuntu/.conda/envs/paddle_env/lib

~/.conda/envs/paddle_env/lib
#建议使用相对路径

(2)添加环境变量

1
2
3
4
5
6
7
8
9
10
#临时方案
#每次在程序运行前设置环境变量
export LD_LIBRARY_PATH=~/.conda/envs/paddle_env/lib
python xxx.py

#永久方案(推荐)
#将环境变量添加到~/.bashrc文件
echo "export LD_LIBRARY_PATH=~/.conda/envs/paddle_env/lib">>~/.bashrc
#添加后需要关闭终端重新打开或者登录。

4. 安装Paddle3D

4.1. 下载Paddle3D源码

建议在之前创建的数据文件夹 apolloDataSet 内打开终端下载,完成后会生成 Paddle3D 文件夹:

1
git clone https://github.com/PaddlePaddle/Paddle3D

Untitled 5.png

4.2. 安装Paddle3D依赖

1
2
3
4
5
6
7
8
# 切换到Paddle3D文件夹
cd Paddle3D

#确保已进入虚拟环境paddle_env(已进入则忽略)
#source activate paddle_env

# 安装requirements.txt中要求的软件包
pip install -r requirements.txt

4.3. 安装Paddle3D

1
2
# 以编辑模式安装
pip install -e .