Jetson配置YOLOv11环境(6)PyTorch&Torchvision安装
文章目录
- [1. 安装PyTorch](#1. 安装PyTorch)
-
- 1.1安装依赖项
- [1.2 下载torch wheel 安装包](#1.2 下载torch wheel 安装包)
- [1.3 安装](#1.3 安装)
- [2. 安装torchvisiion](#2. 安装torchvisiion)
-
- [2.1 安装依赖](#2.1 安装依赖)
- [2.2 编译安装torchvision](#2.2 编译安装torchvision)
-
- [2.2.1 Torchvisiion版本选择](#2.2.1 Torchvisiion版本选择)
- [2.2.2 下载torchvisiion到Downloads目录下](#2.2.2 下载torchvisiion到Downloads目录下)
- [2.2.3 编译安装torchvision](#2.2.3 编译安装torchvision)
- [2.3 安装过程可能出现的bug](#2.3 安装过程可能出现的bug)
- [3. 验证](#3. 验证)
1. 安装PyTorch
1.1安装依赖项
bash
sudo apt install libopenblas-dev
libopenblas-dev作用:提供优化的BLAS(Basic Linear Algebra Subprograms)库,用于高效执行线性代数运算。
影响:PyTorch依赖于高效的线性代数运算来加速深度学习模型的训练和推理。libopenblas-dev提供了优化的BLAS实现,可以显著提升PyTorch的性能,尤其是在CPU上运行时。
1.2 下载torch wheel 安装包
前往PyTorch for Jetson,下载所安装的jetpack版本支持的最高版本的torch wheel 安装包到Downloads目录下。
bash
cd /Downloads
wget https://developer.download.nvidia.cn/compute/redist/jp/v512/pytorch/torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl
例如:jetpack5.1.x对应下图中红框的torch安装包,需注意Python 版本为 3.8。
1.3 安装
bash
pip install torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl
2. 安装torchvisiion
2.1 安装依赖
bash
pip install numpy requests Pillow
sudo apt install libjpeg-dev libpng-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
2.2 编译安装torchvision
torchvision暂未发布直接能pip安装的whl版本,因此直接从源码编译。
2.2.1 Torchvisiion版本选择
以torch2.1.0为例,对应的torchvisiion版本为0.16.x。
torch与torchvision版本对应关系
torch |
torchvision |
Python |
---|---|---|
main / nightly |
main / nightly |
>=3.9 , <=3.12 |
2.5 |
0.20 |
>=3.9 , <=3.12 |
2.4 |
0.19 |
>=3.8 , <=3.12 |
2.3 |
0.18 |
>=3.8 , <=3.12 |
2.2 |
0.17 |
>=3.8 , <=3.11 |
2.1 |
0.16 |
>=3.8 , <=3.11 |
2.0 |
0.15 |
>=3.8 , <=3.11 |
2.2.2 下载torchvisiion到Downloads目录下
(1)网络ok的话,直接克隆到本地。
bash
cd ./Downloads
git clone --branch v0.16.2 https://github.com/pytorch/vision
(2)网络不行clone慢的话,直接下载压缩包到PC
再上传jetson,解压即可
bash
unzip vision-0.16.2.zip
2.2.3 编译安装torchvision
bash
cd vision-0.16.2 # 进入torchvision目录
export BUILD_VERSION=0.16.2 # 将BUILD_VERSION环境变量设置为值 0.16.2
python3 setup.py install --user # 使用 Python 的 setuptools 工具将vision包安装到当前用户的本地目录中
需要等待30min左右,出现以下提示则安装成功
安装成功后退出torchvision的安装目录再import torchvision进行验证,否则会出现以下warning
bash
(pytorch) nx@nx-desktop:~/Downloads/vision-0.15.2$ python
Python 3.8.18 (default, Sep 11 2023, 13:19:25)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torchvision
/home/nx/Downloads/vision-0.15.2/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension: ''If you don't plan on using image functionality from `torchvision.io`, you can ignore this warning. Otherwise, there might be something wrong with your environment. Did you have `libjpeg` or `libpng` installed before building `torchvision` from source?
warn(
/home/nx/Downloads/vision-0.15.2/torchvision/__init__.py:25: UserWarning: You are importing torchvision within its own root folder (/home/nx/Downloads/vision-0.15.2). This is not expected to work and may give errors. Please exit the torchvision project source and relaunch your python interpreter.
warnings.warn(message.format(os.getcwd()))
2.3 安装过程可能出现的bug
若出现error: [Errno 2] No such file or directory: ':/usr/local/cuda/bin/nvcc'
,请参照:
jetson编译torchvision出现 No such file or directory: ':/usr/local/cuda/bin/nvcc'
3. 验证
查看pytorch运行时真正调用的cuda、cudnn版本:
bash
python -c "import torch; import torchvision; print('PyTorch version:', torch.__version__); print('CUDA available:', torch.cuda.is_available()); print('CUDA version:', torch.version.cuda); print('cuDNN enabled:', torch.backends.cudnn.enabled); print('cuDNN version:', torch.backends.cudnn.version()); print('Torchvision version:', torchvision.__version__)"