当前位置: 首页 > 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. 验证
  • 4. 更便捷的安装方式
    • 4.1 JetPack 5.1.2
    • 4.2 JetPack 6.1

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

在这里插入图片描述


2025-2-4 19:47:09更新:发现了更便捷的安装方式,ultralytics官方已经提供了编译好的torchvision whl包。

4. 更便捷的安装方式

在安装完torch和torchvision的依赖之后,运行下述两行命令即可。若下载慢,出现WARNING: Retrying,直接先下载到本地PC再上传jetson安装即可。
在这里插入图片描述

4.1 JetPack 5.1.2

安装 torch 2.1.0torchvision 0.16.2

pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.16.2+c6f3977-cp38-cp38-linux_aarch64.whl

4.2 JetPack 6.1

安装 torch 2.5.0torchvision 0.20

pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torch-2.5.0a0+872d972e41.nv24.08-cp310-cp310-linux_aarch64.whl
pip install https://github.com/ultralytics/assets/releases/download/v0.0.0/torchvision-0.20.0a0+afc54f7-cp310-cp310-linux_aarch64.whl

安装 cuSPARSELt 的依赖性问题 torch 2.5.0

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/arm64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install libcusparselt0 libcusparselt-dev

相关文章:

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

Jetson配置YOLOv11环境&#xff08;6&#xff09;PyTorch&Torchvision安装 文章目录 1. 安装PyTorch1.1安装依赖项1.2 下载torch wheel 安装包1.3 安装 2. 安装torchvisiion2.1 安装依赖2.2 编译安装torchvision2.2.1 Torchvisiion版本选择2.2.2 下载torchvisiion到Downloa…...

【Vitest】单元测试

文章目录 测试&#xff1a;Vitest一、安装二、断言三、回调测试四、对象方法五、模拟第三库 测试&#xff1a;Vitest 一、安装 npm install vitest创建文件&#xff1a;example.test.ts 运行测试&#xff1a; npx vitest example二、断言 import { expect, test } from vi…...

使用conda创建自己的python虚拟环境,与其他python版本独立区分

使用 Conda 创建和使用自己的运行环境非常简单&#xff0c;以下是详细步骤&#xff1a; 1. 安装 Anaconda 或 Miniconda 如果你尚未安装 Anaconda 或 Miniconda&#xff0c;可以访问 Anaconda 官网 或 Miniconda 官网 下载并安装。 2. 创建新的 Conda 虚拟环境 创建虚拟环境…...

Java进阶14 TCP日志枚举

Java进阶14 TCP&日志&枚举 一、网络编程TCP Java对基于TCP协议得网络提供了良好的封装&#xff0c;使用Socket对象来代表两端的通信端口&#xff0c;并通过Socket产生IO流来进行网络通信。 1、TCP协议发数据 1.1 构造方法 方法 说明 Socket(InetAddress address…...

Vue混入(Mixins)与插件开发深度解析

Vue混入&#xff08;Mixins&#xff09;与插件开发深度解析 Vue混入&#xff08;Mixins&#xff09;与插件开发深度解析1. Vue混入&#xff08;Mixins&#xff09;核心概念1.1 什么是混入1.2 基础使用方式1.3 选项合并策略1.4 全局混入及其风险1.5 混入的优缺点分析 2. 混入实战…...

[LVGL] 在VC_MFC中移植LVGL

前言&#xff1a; 0. 在MFC中开发LVGL的优点是可以用多个Window界面做辅助扩展 1.本文基于VC2022-MFC单文档框架移植lvgl8 2. gitee上下载lvgl8.3 源码&#xff0c;并将其文件夹改名为lvgllvgl: LVGL 是一个开源图形库&#xff0c;提供您创建具有易于使用的图形元素、漂亮的…...

leetcode_双指针 125.验证回文串

125.验证回文串 如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后&#xff0c;短语正着读和反着读都一样。则可以认为该短语是一个回文串 。 字母和数字都属于字母数字字符。 给你一个字符串 s&#xff0c;如果它是回文串 &#xff0c;返回 true &#xff…...

14.适配器模式(Adapter Pattern)

定义 适配器模式&#xff08;Adapter Pattern&#xff09; 是一种结构型设计模式&#xff0c;它允许将一个类的接口转换成客户端所期望的另一种接口。适配器模式通常用于将已有的类或遗留系统中的接口与新系统或目标接口进行兼容&#xff0c;从而能够在系统中无缝地使用不兼容…...

Crewai框架配置回调函数

官方文档里只指提了一句 不过不太难&#xff0c;在crew.py文件里配置一下就行了&#xff0c;下面是一个demo&#xff0c;这个函数会在research_task任务执行完触发&#xff08;配置LLM这里请看我这篇博客&#xff09; from crewai import Crew, Process, Agent, Taskfrom src.…...

大数据方向知识图谱及发展前景分析

目录 一、知识体系 二、大数据领域前景分析&#xff1a; 1. 市场需求 2. 技术趋势 3. 职业发展路径 4. 学习路线建议 5. 推荐认证体系 一、知识体系 大数据知识体系 ├── 基础理论 │ ├── 数学基础&#xff1a;概率统计、线性代数、离散数学 │ ├── 计算机基…...

Playwright 与 Selenium 的关系

Playwright 与 Selenium 的关系 Playwright 和 Selenium 都是流行的浏览器自动化测试工具&#xff0c;它们都可以用于 Web 应用的端到端测试&#xff0c;但它们在设计理念、架构和功能上存在一些差异。 以下是两者的主要关系对比&#xff1a; 特性PlaywrightSelenium开发语言…...

拧紧“安全阀”,AORO-P300 Ultra防爆平板畅通新型工业化通信“大动脉”

在油气管道泄漏的浓烟中&#xff0c;在矿道坍塌的密闭空间里&#xff0c;在洪水肆虐的救援现场&#xff0c;传统通讯设备频频失效的困境已成为历史。AORO-P300 Ultra防爆平板集5G通讯、红外感知、应急照明等实用功能于一体&#xff0c;以军工级防护与全场景智能应用&#xff0c…...

《C#之集训1-20121019c#基础》

&#xfeff;&#xfeff; C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。它是微软公司研究员Anders Hejlsberg的最新成果。 C#曾经的它在我眼中是很高大上的&#xff0c;一直没有目睹其风采&#xff0c;现在终于揭开了它神秘的面纱&#xf…...

基于docker搭建Kafka集群,使用KRaft方式搭建,摒弃Zookeeper

KAFKA基于docker使用KRaft进行集群搭建 环境&#xff1a;已成功搭建kafka服务 可点击链接跳转至安装kafka-3.8.0版本 并启用SASL认证 教程 使用基于Zookeeper方式搭建集群教程 kafka-3.8.0版本 并启用SASL认证 教程 搭建kafka-ui可视化工具 192.168.2.91 192.168.2.92 192…...

CAD导入与解析,助力工业数据可视化高效呈现

背景 在企业的日常设计与管理中&#xff0c;CAD图纸早已成为不可或缺的重要资产&#xff0c;多年来知识积累的载体&#xff0c;凝聚了大量的心血与智慧。然而&#xff0c;CAD图纸往往只作为静态文件保存&#xff0c;应用场景较为有限。在数字经济时代&#xff0c;如何让CAD图纸…...

基于docker部署kafka-3.8.0版本,并开启SASL认证模式

1、下载安装包 &#xff08;1&#xff09;https://kafka.apache.org/downloads 下载如下图版本 2、解压安装包 执行tar -xvf kafka_2.13-3.8.0.tgz命令对安装包进行解压。 3、增加配置文件 &#xff08;1&#xff09;进入 /kafka_2.13-3.8.0/config 目录 &#xff08;2&a…...

从零开始人工智能Matlab案例-KNN的二维数据分类

基于K最近邻&#xff08;K-Nearest Neighbors, KNN&#xff09;算法的二分类案例&#xff0c;包含完整MATLAB代码、算法原理和核心思想说明。此案例使用合成数据集&#xff0c;无需复杂数据预处理&#xff0c;适合快速理解。 案例&#xff1a;基于KNN的二维数据分类 目标&…...

90.子集||

要求所有可能的子集&#xff0c;不能重复&#xff0c;因此对于相同的数字&#xff0c;要考虑去重&#xff0c;去重的方式就是通过排序&#xff0c;排序后相同的数字相邻&#xff0c;这样进行实现迭代时&#xff0c;若没有选择上一个数&#xff0c;&#xff0c;其当前数字与上一…...

4 HBase 的高级 shell 管理命令

4 HBase 的高级 shell 管理命令 1.status 例如&#xff1a;显示服务器状态 hbase(main):058:0> status node012.whoami 显示 HBase 当前用户&#xff0c;例如&#xff1a; hbase> whoami3.list 显示当前所有的表 hbase> list4.count 统计指定表的记录数&#xff0c…...

Spring AOP 扫盲

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…...

DeepSeek 提示词之角色扮演的使用技巧

老六哥的小提示&#xff1a;我们可能不会被AI轻易淘汰&#xff0c;但是会被“会使用AI的人”淘汰。 在DeepSeek的官方提示库中&#xff0c;有“角色扮演&#xff08;自定义人设&#xff09;”的提示词案例。截图如下&#xff1a; 在“角色扮演”的提示词案例中&#xff0c;其实…...

python3中错误与异常初识

一. 简介 在 编写 Python时&#xff0c;经常会遇到一些报错信息。接下来开始学习 Python3 中错误和异常。 本文首先初步了解一下 Python3中的错误和异常。 二. python3 中错误与异常初识 Python 中有两种错误&#xff1a;语法错误与异常。 1. 语法错误 Python 的语法错误…...

设计模式六大原则和单例模式

设计模式 目的 实现可重用解决方案&#xff0c;构筑易维护、可扩展的软件系统。 六大原则 单一职责&#xff1a; 类的职责单一&#xff0c;一个方法做一件事。 开闭原则&#xff1a; 拓展开放&#xff0c;修改关闭。 里氏替换&#xff1a; 父类能出现的地方&#xff0c;子…...

【图像处理】- 基本图像操作

基本图像操作详解 基本图像操作是图像处理的基础&#xff0c;涵盖了对图像进行简单但重要的变换。以下是几种常见的基本图像操作及其详细说明&#xff1a; 1. 裁剪 (Cropping) 描述&#xff1a;从原始图像中提取一个矩形区域。 实现方法&#xff1a; 使用图像的坐标系指定…...

Attention is All You Need-Transformer模型论文精读+架构分析--简单易懂版

Foreword写在前面的话&#xff1a; 大家好&#xff0c;我是一名刚开始学习Transformer的新手。这篇文章是我在学习Transformer过程中的一些笔记和心得&#xff0c;希望能和同样在学习人工智能深度学习模型的朋友们分享。由于我的知识有限&#xff0c;文章中可能存在错误或不准确…...

Qt跨屏窗口的一个Bug及解决方案

如果我们希望一个窗口覆盖用户的整个桌面&#xff0c;此时就要考虑用户有多个屏幕的场景&#xff08;此窗口要横跨多个屏幕&#xff09;&#xff0c;由于每个屏幕的分辨率和缩放比例可能是不同的&#xff0c;Qt底层在为此窗口设置缩放比例&#xff08;DevicePixelRatio&#xf…...

Spark--算子执行原理

一、sortByKey SortByKey是一个transformation算子&#xff0c;但是会触发action&#xff0c;因为在sortByKey方法内部&#xff0c;会对每个分区进行采样&#xff0c;构建分区规则&#xff08;RangePartitioner&#xff09;。 内部执行流程 1、创建RangePartitioner part&…...

javaEE-6.网络原理-http

目录 什么是http? http的工作原理&#xff1a; 抓包工具 fiddler的使用 HTTP请求数据: 1.首行:​编辑 2.请求头(header) 3.空行&#xff1a; 4.正文&#xff08;body&#xff09; HTTP响应数据 1.首行&#xff1a;​编辑 2.响应头 3.空行&#xff1a; 4.响应正文…...

基于 docker 的mysql 5.7 主主集群搭建

创建挂载目录和配置文件 主节点1 mkdir -p /mysql_master_1/mysql/log mkdir -p /mysql_master_1/mysql/data mkdir -p /mysql_master_1/mysql/conf vim /mysql_master_1/mysql/conf/my.cnf[mysqld] datadir/var/lib/mysql #MySQL 数据库文件存放路径 server_id 1 #指定数据…...

windows版的docker如何使用宿主机的GPU

windows版的docker使用宿主机的GPU的命令 命令如下 docker run -it --nethost --gpus all --name 容器名 -e NVIDIA_DRIVER_CAPABILITIEScompute,utility -e NVIDIA_VISIBLE_DEVICESall 镜像名效果 (transformer) rootdocker-desktop:/# python Python 3.9.0 (default, Nov 15 …...