在Nvidia ORIN进行Pytorch,TorchVision,MMtracking的部署

背景

在Orin上进行Pytorch以及Torchvision的部署, 不能够直接通过pip3 Install命令进行部署安装,该命令默认是使用X86的安装版本, 我们需要使用nvidia的cuda架构, 并且orin是arm架构的芯片, 所以, 应当通过英伟达官方发布的版本进行安装, 当然也可以使用源码进行pytorch编译。

安装Pytorch

pytorch的版本和python的版本以及cuda的版本是严密挂钩的, 但是在orin上, 我们可以通过查询jetpack版本号, 就可以直接下载安装nvidia编译好的现成的whl文件。

  1. 通过jtop查询jetpack的版本。如图, 我们的jetpack版本是5.0.1。在Nvidia ORIN进行Pytorch,TorchVision,MMtracking的部署_第1张图片
  2. 英伟达的pytorch文件下载地址:
    https://developer.download.nvidia.com/compute/redist/jp/v$JP_VERSION/pytorch/
    其中,$JP_VERSION变量是我们jetpack的版本, 我的安装地址如下: https://developer.download.nvidia.cn/compute/redist/jp/v50/pytorch/, 访问结果如下图所示,
    我选择torch-1.13.0a0+340c4120.nv22.06-cp38-cp38-linux_aarch64.whl文件,这里面有个非常坑的问题, 就是我明明下载的是1.13的pytorch版本, 但实际安装之后, 它是1.12的版本,英伟达这个低级的错误,令我后续安装torchvision浪费了很多时间。
    在这里插入图片描述
    安装命令:
    sudo pip3 install torch-1.13.0a0+340c4120.nv22.06-cp38-cp38-linux_aarch64.whl 
    

安装Torchvision

  1. torchvision的版本是需要与pytorch相对应才能够正确编译。https://github.com/pytorch/vision
    在Nvidia ORIN进行Pytorch,TorchVision,MMtracking的部署_第2张图片
    由于我们安装的pytorch版本是1.12的, 所以,torchvision需要下载0.13.0版本。
    在Nvidia ORIN进行Pytorch,TorchVision,MMtracking的部署_第3张图片
    export BUILD_VERSION=0.13.0 
    sudo python3 setup.py install --user
    

安装成功的测试脚本

import torch
print(torch.__version__)
print('CUDA available: ' + str(torch.cuda.is_available()))
print('cuDNN version: ' + str(torch.backends.cudnn.version()))
a = torch.cuda.FloatTensor(2).zero_()
print('Tensor a = ' + str(a))
b = torch.randn(2).cuda()
print('Tensor b = ' + str(b))
c = a + b
print('Tensor c = ' + str(c))
import torchvision
print(torchvision.__version__)

测试结果如下图所示:
在Nvidia ORIN进行Pytorch,TorchVision,MMtracking的部署_第4张图片

部署MMTracking

mmtracking需要依赖mmcv以及mmdetection, 所以, 需要先部署安装mmcv以及mmdetection。具体的教程, 可以参考以下官方链接: https://mmtracking.readthedocs.io/zh_CN/latest/install.html#id2

git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
MMCV_WITH_OPS=1 pip install -e .  # package mmcv-full will be installed after this step
cd ..

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -r requirements/build.txt
pip install -v -e .

git clone https://github.com/open-mmlab/mmtracking.git
cd mmtracking
pip install -r requirements/build.txt
pip install -v -e .  

你可能感兴趣的:(机器视觉,pytorch,python,人工智能)