当前位置: 首页 > article >正文

【B站保姆级视频教程:Jetson配置YOLOv11环境(六)PyTorchTorchvision安装】

Jetson配置YOLOv11环境(6)PyTorch&Torchvision安装

文章目录

  • 1. 安装PyTorch
    • 1.1安装依赖项
    • 1.2 下载torch wheel 安装包
    • 1.3 安装
  • 2. 安装torchvisiion
    • 2.1 安装依赖
    • 2.2 编译安装torchvision
      • 2.2.1 Torchvisiion版本选择
      • 2.2.2 下载torchvisiion到Downloads目录下
      • 2.2.3 编译安装torchvision
    • 2.3 安装过程可能出现的bug
  • 3. 验证

1. 安装PyTorch

1.1安装依赖项

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目录下。

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 安装

pip install torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl

2. 安装torchvisiion

2.1 安装依赖

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版本对应关系

torchtorchvisionPython
main / nightlymain / nightly>=3.9, <=3.12
2.50.20>=3.9, <=3.12
2.40.19>=3.8, <=3.12
2.30.18>=3.8, <=3.12
2.20.17>=3.8, <=3.11
2.10.16>=3.8, <=3.11
2.00.15>=3.8, <=3.11

2.2.2 下载torchvisiion到Downloads目录下

(1)网络ok的话,直接克隆到本地。

cd ./Downloads
git clone --branch v0.16.2 https://github.com/pytorch/vision

(2)网络不行clone慢的话,直接下载压缩包到PC

在这里插入图片描述
再上传jetson,解压即可

unzip vision-0.16.2.zip

2.2.3 编译安装torchvision

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

(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版本:

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__)"

在这里插入图片描述


http://www.kler.cn/a/529971.html

相关文章:

  • 《Origin画百图》之脊线图
  • 【华为OD-E卷 - 磁盘容量排序 100分(python、java、c++、js、c)】
  • 力扣第149场双周赛
  • 基于Python的简单企业维修管理系统的设计与实现
  • Two Divisors ( Educational Codeforces Round 89 (Rated for Div. 2) )
  • 《苍穹外卖》项目学习记录-Day10订单状态定时处理
  • 浅尝模型微调Getting Started
  • C语言教学第二课:变量与数据类型
  • UE学习日志#19 C++笔记#5 基础复习5 引用1
  • Vue.js组件开发-实现图片浮动效果
  • Docker 部署 Starrocks 教程
  • 为什么就Kafka有分区?
  • Electricity Market Optimization 探索系列(二)
  • 力扣 84. 柱状图中最大的矩形
  • PaddleOCR 截图自动文字识别
  • JavaWeb入门-请求响应(Day3)
  • Kafka SASL/SCRAM介绍
  • 缓存的今生今世
  • python-leetcode-二叉树的右视图
  • 【算法】回溯算法专题② ——组合型回溯 + 剪枝 python
  • 31.Word:科技论文的译文审交稿【31】
  • Vue - Suspense的使用
  • AWS EMR使用Apache Kylin快速分析大数据
  • 第三篇:模型压缩与量化技术——DeepSeek如何在边缘侧突破“小而强”的算力困局
  • 《Origin画百图》之脊线图
  • 精品PPT | 企业大数据治理平台统一指标库建设方案