Jetson Nano 配置YOLOX(保姆级教程)

本文档提供了一步一步的教程,指导如何在Jetson Nano上配置YOLOX,包括版本说明、CUDA配置、Pytorch的安装、YOLOX环境搭建以及测试YOLOX模型的过程。涉及的内容包括修改Nano板显存、安装Pytorch 1.8、下载YOLOX权重文件并进行图片、视频和摄像头的检测测试。
摘要由CSDN通过智能技术生成

Jetson Nano 配置YOLOX(保姆级教程)

一、版本说明

JetPack 4.6——2021.8

pytorch——1.8.0

二、配置CUDA

打开终端输入

sudo gedit ~/.bashrc

在打开的文档的末尾添加如下内容:

export CUDA_HOME=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.2/bin:$PATH

保持并退出,执行

source ~/.bashrc
nvcc -V	#如果配置成功可以看到CUDA的版本号

三、修改Nano板显存

1.打开终端输入:

sudo gedit /etc/systemd/nvzramconfig.sh

2.修改nvzramconfig.sh文件

修改mem = $((("${totalmem}"/2/"${NRDEVICES}")*1024))
为mem = $((("${totalmem}"*2/"${NRDEVICES}")*1024))

3.重启Jetson Nano

4.终端中输入:

free -h

可查看到swap已经变为7.7G

三、配置Pytorch1.8

1.下载torch-1.8.0-cp36-cp36m-linux_aarch64.whl

下载地址:nvidia.box.com/shared/static/p57jwntv436lfrd78inwl7iml6p13fzh.whl

网盘分享:链接:https://pan.baidu.com/s/1tS51E3a-a-w9_OdCNraoAg
提取码:30qr

说明:建议在电脑上下载后拷贝到Jetson Nano的文件夹下,因为该网站的服务器在国外,可能下载比较慢或网页加载不出来,可以打开VPN进行下载。

2.安装所需的依赖包及pytorch

打开终端输入:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev

因为下面用pip指令安装时用默认选用的国外源,所以下载比较费时间,建议更换一下国内源,我这里使用的是阿里源。具体步骤如下:

打开终端输入:

mkdir ~/.pip
sudo gedit ~/.pip/pip.conf

在空白文件中输入如下内容保存并退出:

以下为豆瓣源

[global]
timeout=6000
index-url=https://pypi.doubanio.com/simple
trusted-host=pypi.doubanio.com

以下为阿里源

[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

以下为清华源

[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host=https://pypi.tuna.tsinghua.edu.cn

终端输入:

pip install --upgrade pip
pip3 install Cython
pip3 install numpy
pip3 install torch-1.8.0-cp36-cp36m-linux_aarch64.whl		#注意要在存放该文件下的位置打开终端并运行
sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
git clone --branch v0.9.0 https://github.com/pytorch/vision torchvision  #下载torchvision,会下载一个文件夹
cd torchvision	#或者进入到这个文件夹,右键打开终端
export BUILD_VERSION=0.9.0
python3 setup.py install --user
#验证torch和torchvision这两个模块是否安装成功
python3
import torch
print(torch.__version__)	#注意version前后都是有两个横杠
#如果安装成功会打印出版本号
import torchvision
print(torchvision.__version__)
#如果安装成功会打印出版本号

四、搭建yolox环境

YOLOX官方下载地址: https://github.com/Megvii-BaseDetection/YOLOX.git

网盘分享地址:链接:https://pan.baidu.com/s/1u3ExDjpHeyO2SKjjBqKGEQ
提取码:6jyg

git clone https://github.com/Megvii-BaseDetection/YOLOX.git	#不科学上网很容易下载失败,上面分享了yolox的网盘地址
#将下载好yolox后拷贝到jetson nano中,放入某一文件夹下
unzip YOLOX-main.zip
cd YOLOX-main
#打开requirements.txt,对scikit-image,onnx,onnx-simplifier前加#注释掉,保存退出,后面会单独安装这几个包.
pip3 install -r requirements.txt
pip3 install scikit-image==0.17.1 -vv	#安装scikit-image
pip3 install onnx==1.8.1 -vv	#安装onnx可不配置,onnx-simplifier暂未配置成功,如果未用到onnx转模型,则不影响yolox使用
pip3 install -v -e .	#因为pip源的问题,可能这一步会报错,错误及解决办法在下方。
pip3 install 'git+https://gitee.com/wsyin/cocoapi.git#subdirectory=PythonAPI'	#官方指令为pip3 install cython; pip3 install 'git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI',但是由于科学上网的原因,需要更换国内源,成功后会看到Successfully installed pycocotools-2.0

问题1:运行pip3 install -v -e . 出现如下错误

ERROR:Command errored out with exit status -4: python setup.py egg_info check the logs for full command output.

解决:将换成的pip国内源换成原始的

sudo gedit ~/.pip/pip.conf
#将该文档内的内容清空,保存并退出
pip3 install -U pip
pip3 install -v -e .	#如果成功会看到Successfully installed yolox-0.1.0

到这里,运行yolox的环境就搭建成功了,接下来进行测试。

五、测试yolox

1.下载权值文件

YOLOX-Nano

官方地址:https://github.com/Megvii-BaseDetection/YOLOX/releases/download/0.1.1rc0/yolox_nano.pth

网盘分享地址:链接:https://pan.baidu.com/s/1Sqp0GFEkp0Z-Huy3jmA16Q
提取码:tzcw

YOLOX-S

官方地址:https://github.com/Megvii-BaseDetection/YOLOX/releases/download/0.1.1rc0/yolox_tiny.pth

网盘分享地址:链接:https://pan.baidu.com/s/1Q0Kv_7qFV4Eao6Ba98yCBA
提取码:upqa

2.测试

①图片测试
python tools/demo.py image -n yolox-nano -c /path/to/your/yolox_nano.pth --path assets/dog.jpg --conf 0.25 --nms 0.45 --tsize 640 --save_result --device gpu	#调用yolox-nano.pth检测

在YOLOX_outputs/nano下可以看到

②视频检测

测试视频下载地址:链接:https://pan.baidu.com/s/10TFhK-19Hihuq-2augJWCw
提取码:89ey

python tools/demo.py video -n yolox-nano -c /path/to/your/yolox_nano.pth --path /path/to/your/video --conf 0.25 --nms 0.45 --tsize 640 --save_result --device gpu
③调用摄像头
python tools/demo.py webcam -n yolox-nano -c /path/to/your/yolox_nano.pth --camid 0 --conf 0.25 --nms 0.45 --tsize 640 --save_result --device gpu

源代码中是把摄像头检测的效果存储成了mp4文件,同样在YOLOX_outputs/nano下可以看到

六、参考

1.https://github.com/Megvii-BaseDetection/YOLOX

  • 5
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
### 回答1: 要在Jetson Nano上部署YoloX,您可以按照以下步骤进行操作: 1. 安装JetPack SDK:JetPack SDK是NVIDIA Jetson平台的软件开发工具包,包括操作系统、CUDA、TensorRT等必要组件。您可以从NVIDIA官网下载并安装适用于Jetson Nano的JetPack SDK。 2. 安装PyTorchYoloX是基于PyTorch框架实现的,因此您需要在Jetson Nano上安装PyTorch。您可以使用pip命令安装PyTorch,也可以从源代码编译安装。 3. 下载YoloX代码:您可以从YoloX的GitHub仓库下载源代码,并将其复制到Jetson Nano上。 4. 下载预训练模型:YoloX需要使用预训练模型进行目标检测。您可以从YoloX的GitHub仓库下载预训练模型,并将其复制到Jetson Nano上。 5. 运行YoloX:在Jetson Nano上运行YoloX,您需要使用Python脚本调用YoloX的API,并传入相应的参数。您可以参考YoloX的文档和示例代码进行操作。 需要注意的是,由于Jetson Nano的计算资源有限,可能会影响YoloX的性能。您可以通过调整模型参数、使用更高效的算法等方式来优化YoloX的性能。 ### 回答2: Jetson Nano是一款小型、低功耗的人工智能计算机,而YOLOX则是一种基于目标检测的模型,用于实时识别图像中的对象。在Jetson Nano上部署YOLOX可以让我们使用这个强大的小型计算机进行高效的目标检测。 首先,我们需要准备Jetson Nano开发板和一台电脑。在电脑上,我们需要进行一些准备工作,包括安装JetPack和配置SSH远程连接。JetPack是一种能够在Jetson Nano上安装所需软件的软件包,其中包括CUDA、cuDNN等开发工具,这些工具可以支持将YOLOX部署到Jetson Nano上。SSH远程连接可以使我们在Jetson Nano上直接使用电脑的命令行。 接下来,我们需要下载YOLOX的源代码,并进行配置和编译。具体来说,我们需要安装Python3、Numpy、Pillow、torch、opencv-python等软件包,并将其与Jetson Nano的架构匹配。这些工具可以使我们更加方便地进行模型训练和推理。 然后,我们需要选择适合我们的数据集并进行训练。这里我们可以使用COCO数据集或其他开源数据集进行训练。在训练过程中,我们需要进行超参数的调整和优化,以达到最佳的目标检测效果。 最后,在经过训练的YOLOX模型上运行推理,并确定模型在不同场景下的准确率。为了实现实时目标检测,我们可以使用OpenCV库将摄像头的实时图像输入到YOLOX模型中,以检测图像中的对象。 总之,在Jetson Nano上部署YOLOX需要执行一系列复杂的步骤,包括软件安装、数据集训练和模型推理。我们需要耐心和精力投入,才能最终实现高效的目标检测。 ### 回答3: Jetson Nano是针对边缘计算开发的一款小型计算机,而YoloX是一种新型的目标检测算法,可以在低功耗设备上快速识别目标。在Jetson Nano上部署YoloX可以让我们在嵌入式设备上实现实时目标检测,非常有用。 部署YoloX的过程相对复杂,但是我们可以按照下面的步骤逐步实现: 1. 安装JetPack 4.4+: JetPack是NVIDIA官方提供的一套软件开发工具包,其中包含了CUDA、cuDNN等深度学习库。首先需要下载并安装 JetPack 4.4+,具体安装步骤可以参考官网提示。 2. 安装OpenCV:在Jetson Nano上运行YoloX需要使用OpenCV库,下载之后进行安装,安装命令如下: ``` sudo apt-get update sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev libv4l-dev ``` 3. 下载并编译YoloX源码:从 GitHub 下载 YoloX 源码,然后进行编译。编译命令如下: ``` git clone https://github.com/Megvii-BaseDetection/YOLOX.git cd YOLOX sudo apt-get install python3-pip pip3 install Cython numpy sudo apt-get install ninja-build python3 setup.py build develop ``` 注:为了编译 YoloX 代码,您需要一张 NVIDIA GPU 卡,并配置好 CUDA 和 cuDNN。 4. 下载预训练的模型权重:在进行模型训练之前,需要准备一个已经训练好的模型权重。您可以从 YoloX 官方仓库 处下载预训练的权重,或是使用自己的数据集训练出自己的模型权重。 5. 测试模型:在部署完成后,我们可以使用 YoloX 官方提供的测试脚本来测试模型,具体的测试命令如下: ``` python tools/demo.py image -n yolox-s-416 --path assets/dog.jpg --conf 0.25 --nms 0.45 ``` 这个脚本将会加载预训练的 yolox-s 模型,然后使用一张测试图片(dog.jpg)进行测试,并将结果保存到 output 文件夹下。 总结: 在这篇文章中,我们介绍了在Jetson Nano上部署YoloX的过程及方法,从安装基本的JetPack到编译源代码,再到下载预训练模型,最后通过测试脚本检验模型的准确性。这个过程可能比较繁琐,需要好好的理解和操作。随着AI的深入应用,我们相信越来越多的开发者、技术爱好者们会对边缘计算的优化、应用上有更多的发现和深入研究。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值