Jetson AGX ORIN 配置 FGVC-PIM 神经网络
配置 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 强行中断了),配置结束!