Jetson AGX ORIN 配置 FGVC-PIM 神经网络(包含 arm64 下面 torch 和 torchvision 配置内容)
Jetson AGX ORIN 配置 FGVC-PIM 神经网络
文章目录
- Jetson AGX ORIN 配置 FGVC-PIM 神经网络
- 配置 ORIN 环境
- 创建 FGVC-PIM 虚拟环境
- 安装 PyTorch
- 安装 torchvision
- 安装其他依赖包
配置 ORIN 环境
首先先配置 ORIN 的环境,可以参考这个链接:
Jetson AGX ORIN 初始化&配置CUDA&Anaconda&带CUDA的OpenCV
创建 FGVC-PIM 虚拟环境
终端输入命令:
conda create -n fgvc python=3.8
conda activate fgvc
即可创建名为 fgvc 的虚拟环境,之后需要向环境中添加需要的安装包。python 一定要安装 38 版本,因为安装 PyTorch 的时候需要对照版本进行安装。如果直接使用这个命令进行安装 pip install torch torchvision torchaudio
,则会出现无法调用 CUDA 的问题。
安装 PyTorch
安装 PyTorch 之前先要查看一下 ORIN 的版本信息:
- L4T:35.3.1
- Jatpack:5.1.1
然后在官网里面下载安装包。网址如下:
PyTorch for Jetson
我的 ORIN 信息如上,选择对应的 python=3.8 系列,最终确定 PyTorch 版本为 1.12.0,进行下载。
如图所示:
然后激活对应的虚拟环境,进行包的安装。
conda activate fgvc
pip install torch-1.12.0a0+2c916ef.nv22.3-cp38-cp38-linux_aarch64.whl
显示成功安装后,进行 python 界面,测试是否可以导入,以及 CUDA 是否可用。出现如下结果说明一切正常,可以进行下一步 torchvision 安装。如下所示:
(fgvc) abc@ubuntu:~$ python
Python 3.8.19 (default, Mar 20 2024, 19:53:40)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.__version__
'1.12.0a0+2c916ef.nv22.3'
>>> torch.cuda.is_available()
True
>>>
中间可能会出现一个小问题,显示没有 libopenblas-dev 东西,用如下命令进行安装即可解决:
sudo apt-get install libopenblas-dev
安装 torchvision
安装之前先运行以下命令:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
在环境变量里面添加内容:
export CUDA_HOME=/usr/local/cuda-11.4
# 然后更新
source ~/.bashrc
再看这个对照表
使用 git clone 下载 torchvision 的对应安装代码。
git clone --branch v0.13.0 https://github.com/pytorch/vision torchvision
然后在虚拟环境终端里面输入:
cd torchvision
export BUILD_VERSION=v0.13.0
然后再输入:
python3 setup.py install --user
之后进行调试,还是会有问题,但是具体基本都是一些库需要下载,进行下载即可。
可以参考这个链接:(里面的 export 不要加 v,不然版本会不匹配)
jetson agx orin 的pytorch、torchvision、tensorrt安装最全教程
# 下载 torchvision 时候报错 需要 numpy
Downloading https://files.pythonhosted.org/packages/51/fe/e4dab289c176ea4e13f97f11f281cc22d4a3b0add9883406db62d4f94d65/numpy-2.0.0b1.tar.gz#sha256=e0bb33a37d0d0b9a19cd41a093877f830e06bd4d989341b9792896cf08e629f7
Best match: numpy 2.0.0b1
Processing numpy-2.0.0b1.tar.gz
error: Couldn't find a setup script in /tmp/easy_install-di_cher0/numpy-2.0.0b1.tar.gz
# 下载 numpy 和 numpy 需要的其他库
(fgvc) abc@ubuntu:~/torchvision$ pip install certifi idna charset-normalizer numpy urllib3
# 参考上面的链接提前安装一些 torchvision 的依赖库
再运行之后问题解除
然后在 python 里面导入 torchvision,看是否有问题,结果如下,能出来 ‘v0.13.0’ 则可以继续安装其他依赖包:
(fgvc) be@ubuntu:~/torchvision$ python
Python 3.8.19 (default, Mar 20 2024, 19:53:40)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> import torchvision
/home/be/torchvision/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension: warn(f"Failed to load image Python extension: {e}")
/home/be/torchvision/torchvision/__init__.py:28: UserWarning: You are importing torchvision within its own root folder (/home/be/torchvision). 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()))
>>> torch.__version__
'1.12.0a0+2c916ef.nv22.3'
>>> torchvision.__version__
'0.13.0'
>>>
安装其他依赖包
进入 pycharm,并在 Setting 设置好代码的虚拟环境之后,根据缺少的库的内容,使用 pip install 命令下载库。
需要的库及其命令如下,不需要找了,可以直接下载。
pip install numpy pandas matplotlib wandb psutil
pip install opencv-python
pip install scipy scikit-learn
如果下载中断,可以使用镜像源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas
或者使用参数 –default-timeout:
pip install --default-timeout=600 pandas
然后再运行训练数据集的命令。
提前下载权重文件:
swin_large_patch4_window12_384_22k.pth,网址如下:
https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_large_patch4_window12_384_22k.pth
下载好之后,将权重文件放置在这个路径下:
/home/abc/.cache/torch/hub/checkpoints
然后就发现可以训练了(这个不打算训练,所以 Ctrl + c 强行中断了),配置结束!
相关文章:

Jetson AGX ORIN 配置 FGVC-PIM 神经网络(包含 arm64 下面 torch 和 torchvision 配置内容)
Jetson AGX ORIN 配置 FGVC-PIM 神经网络 文章目录 Jetson AGX ORIN 配置 FGVC-PIM 神经网络配置 ORIN 环境创建 FGVC-PIM 虚拟环境安装 PyTorch安装 torchvision安装其他依赖包 配置 ORIN 环境 首先先配置 ORIN 的环境,可以参考这个链接: Jetson AGX …...
mybatisplus和mybatis兼容问题
Invalid bound statement (not found) 错误 原xml配置 <bean id"sqlSessionFactory" class"org.mybatis.spring.SqlSessionFactoryBean"><property name"mapperLocations" value"classpath:/META-INF/mapper/*.xml"/>&l…...

nodejs安装使用React
1、react安装 首先,确保电脑上具备nodejs环境,之后用 winr 呼出控制台,输入 cmd 命令弹出cmd控制台(小黑框)之后在默认路径输入如下代码 npm i -g create-react-app //全局安装react环境无需选择特定文件夹安装成功后…...

防御性编程,可能是导致被裁员的更大的原因,别被误导了
裁员与反裁员是当前IT界一个经典的话题,作为打工者的猿人常常讨论了N多的防御性编程,代码不可读、代码不好改、代码深度嵌套、代码留bug等等。 其实防御性编程只会让决策者加速解耦你与业务系统: 1、增加代码走查的环节(增加成本…...
Unity与鼠标相关的事件(自己记忆用)
1. OnMouseDown:当用户按下鼠标按钮时调用。 - 参数:MouseEvent,可以用来确定哪个鼠标按钮被按下。 2. OnMouseUp:当用户释放鼠标按钮时调用。 - 参数:MouseEvent,可以用来确定哪个鼠标按钮被释放。…...
模型权重下载方法
下载方法1:git lfs下载 1、在hf-mirror.com中搜索模型,如搜索text2vec-large-chinese, 点击模型进入页面:https://hf-mirror.com/GanymedeNil/text2vec-large-chinese/tree/main 2、git lfs install 3、git clone https://hf-mir…...
JS基础之 数据浅拷贝与深拷贝
一、拷贝背景 JS引用数据类型有两类:基本数据类型和引用数据类型; 基本类型:String,Number,Boolean,Null,Undefined,symbol这6种基本数据类型它们是直接按值存放的,所以…...
FFmpeg开发笔记(十四)音频重采样的缓存
FFmpeg在很多地方都运用了缓存机制,比如《FFmpeg开发实战:从零基础到短视频上线》一书的“3.3.2 对视频流重新编码”介绍了编解码的数据缓存,不单是视频编码过程和视频解码过程有缓存,甚至连音频重采样都用到了缓存。 也就是说&a…...

详解Python面向对象编程(一)
类和对象 面向过程——怎么做? (1)把完成某一需求的所有步骤、从头到尾,逐步实现 (2)根据开发需求,将某些功能独立的代码块封装成一个又一个的函数 (3)最后完成的代码&a…...

一文带你完整了解Go语言IO基础库
作者 | 百度小程序团队 导读 introduction 对于刚接触Golang学习的同学,估计比较难掌握的知识点之一就是文件IO处理,光在基础库里会发现 golang除了io包提供文件处理外,os包,http包,embed包都有提供类似的处理…...

Java基于微信小程序的校园请假系统
博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇&#…...

Expert Prompting-引导LLM成为杰出专家
ExpertPrompting: Instructing Large Language Models to be Distinguished Experts 如果适当设计提示,对齐的大型语言模型(LLM)的回答质量可以显著提高。在本文中,我们提出了ExpertPrompting,以激发LLM作为杰出专家回…...

Element-Plus下拉菜单边框去除教程
🌟 前言 欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍 &#x…...

免费redis可视化工具windows/mac都可以使用,开源免费
官方地址:RedisInsight | The Best Redis GUI github开源地址:GitHub - RedisInsight/RedisDesktopManager Redis Desktop Manager – Redis可视化管理工具、redis图形化管理工具、redis可视化客户端、redis集群管理工具。 官方下载方式 滚动到页面底…...

PHPCMS v9城市分站插件
PHPCMS自带的有多站点功能,但是用过的朋友都知道,自带的多站点功能有很多的不方便之处,例如站点栏目没法公用,每个站点都需要创建模型、每个站点都需要单独添加内容,还有站点必须静态化。如果你内容很多这些功能当然无…...

学习几个地图组件(基于react)
去年开发时用的公司封装的地图组件,挺方便的,但是拓展性不强,所以看看有哪些优秀的开源地图组件吧 1、React Leaflet 介绍:开源的JavaScript库,用于在web上制作交互式地图,允许你使用React组件的方式在应…...

【测试开发学习历程】计算机编程语言
前言: 学习完数据库,我们便要进入到编程语言的内容当中了。 这里先对编程语言写出大致的分类, 在这之后,我们会以Python为重点, 开始测试开发为重点的编程语言学习。 目录 1 计算机编程语言的发展 2 语言的分类…...

动态内存管理-传值调用错题解析
首先我们来看这个错误代码 首先我们看代码逻辑,首先main函数调用test,test接收的是void类型,设置一个指针变量,指向null,传递给get函数,也就是传递一个空指针给getmemory函数,这个函数接收了&a…...

Java特性之设计模式【装饰器模式】
一、装饰器模式 概述 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装 装饰器模式通过将对象包装在装饰器类中,以…...

Leetcode算法题笔记(2)
目录 图论51. 岛屿数量解法一 52. 腐烂的橘子解法一 53. 课程表解法一 54. 实现 Trie (前缀树)解法一 回溯55. 全排列解法一 56. 子集解法一解法二 57. 电话号码的字母组合解法一 58. 组合总和解法一解法二 59. 括号生成解法一解法二 60. 单词搜索解法一 61. 分割回文串解法一 …...

C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...

黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...

Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...

R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...

算法打卡第18天
从中序与后序遍历序列构造二叉树 (力扣106题) 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 1: 输入:inorder [9,3,15,20,7…...

SQL注入篇-sqlmap的配置和使用
在之前的皮卡丘靶场第五期SQL注入的内容中我们谈到了sqlmap,但是由于很多朋友看不了解命令行格式,所以是纯手动获取数据库信息的 接下来我们就用sqlmap来进行皮卡丘靶场的sql注入学习,链接:https://wwhc.lanzoue.com/ifJY32ybh6vc…...

【多线程初阶】单例模式 指令重排序问题
文章目录 1.单例模式1)饿汉模式2)懒汉模式①.单线程版本②.多线程版本 2.分析单例模式里的线程安全问题1)饿汉模式2)懒汉模式懒汉模式是如何出现线程安全问题的 3.解决问题进一步优化加锁导致的执行效率优化预防内存可见性问题 4.解决指令重排序问题 1.单例模式 单例模式确保某…...