jetsonTX2 nx配置yolov5和D435I相机,完整步骤

转载一篇问题解决博客:问题解决

一、烧录系统

使用SDK烧录

二、安装archiconda3

JETSON TX2 NX的架构是aarch64,与win10,linxu不同,所以不能安装Anaconda,这里安装对应的archiconda。

1. 安装

powershell 复制代码
wget https://github.com/Archiconda/build-tools/releases/download/0.2.3/Archiconda3-0.2.3-Linux-aarch64.sh
powershell 复制代码
bash Archiconda3-0.2.3-Linux-aarch64.sh

2. 配置环境变量

powershell 复制代码
sudo gedit ~/.bashrc
powershell 复制代码
# 在文档最后一行添加
export PATH=~/archiconda3/bin:$PATH

3. 创建虚拟环境

powershell 复制代码
# 创建python3.6的torch1虚拟环境,注意安装python版本为3.6,这样才有对应的torch版本
conda create -n torch1 python=3.6  

其他相关命令(来源:相关命令

powershell 复制代码
conda update -n base conda  # update最新版本的 conda
conda create -n xxxx python=3.X  # 创建python3.X的xxxx虚拟环境
conda activate xxxx  # 开启xxxx环境
conda deactivate  # 关闭环境
conda env list   # 显示所有的虚拟环境
conda info -e   # 显示所有的虚拟环境
conda install -c channel/path //  # 下载包
conda remove --n env_name  package_name  # 卸载包
pip uninstall  package_name  # 先进入环境然后卸载包
conda remove -n env_name --all  # 删除虚拟环境
conda deactivate  # 退出当前conda环境
rm -rf anaconda3 # 卸载conda

换源

powershell 复制代码
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

安装成功截图

三、安装torch和torchvision

注意cuda,torch,torchvision版本对应关系,以及自己jetson板子的jetpack版本。


1. 安装torch

英伟达官网下载torch:torch下载链接

这里我jetpack版本是4.6.4,我下载的是torch1.8.0,可以根据自己需求下载其他版本。

2. 安装torchvision

torchvision下载与torch不一样,jetson系统架构是aarch64的,这里需要去github上下载:torchvision下载链接。下载官方repo,自己编译安装。

powershell 复制代码
sudo apt-get install libjpeg-dev zlib1g-dev
git clone -b v0.9.0 https://github.com/pytorch/vision torchvision  # 版本可以自己选择
cd torchvision
sudo python3 setup.py install

也可以直接下载编译好的包,进行pip安装,本文也是采用这种方式。百度网盘链接 提取码:zsrv

下载完成后直接pip安装

powershell 复制代码
pip install torchvision-0.9.0a0+01dfa8e-cp36-cp36m-linux_aarch64.whl

3. 测试

输入python进入python命令行,安装如下代码进行测试,返回版本信息代表安装成功。


4. 相关问题

  • 使用pip install安装时,报错 非法指令 核心已转储,我的解决方法,重新安装了archiconda3的0.2.2版本,然后创建虚拟环境,进入虚拟环境,执行sudo apt-get install python-pippip install --upgrade pip,再重新安装torch和torchvision后解决。(这里一般是numpy包的问题,numpy包要小于1.20,反复尝试后我安装的1.19.5)
  • conda安装包一直卡在solving environment,换一个源(建议中科大的源),或者更换为默认源。
  • 运行python代码报非法指令,需要在创建的虚拟环境中输入 export OPENBLAS_CORETYPE=ARMV8(临时解决)

四、配置YOLOv5

先去github下载YOLOv5的源码:yolov5下载链接

本文下载的是6.0版本,源码内的requirements.txt文件,把torch和torchvision注释了。

输入命令安装下载编译一般很慢,容易误认为卡死,用--verbose 进行安装命令跟踪安装过程,可以显示详情。

powershell 复制代码
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple --verbose 

安装完成截图

五、配置D435i pyrealsense2包

python调用D435i需要安装pyrealsense2包,但是Jetson中不能直接pip安装,因为系统核心是arrch的,所以需要自己下载源码构建安装。参考文章:链接1
链接2 链接3
1. 下载源码

先去github上下载源码,pyrealsense2源码下载链接,下载zip后解压。

解压后进入到解压后的文件夹内,后续操作基于此。

powershell 复制代码
cd libalsense

2. 执行许可证脚本

powershell 复制代码
./scripts/setup_udev_rules.sh

3. 创建build文件夹,并在build下进行cmake编译

powershell 复制代码
mkdir build && cd build  # 创建build文件并进入
cmake ../ -DBUILD_PYTHON_BINDINGS:bool=true -DPYTHON_EXECUTABLE=/usr/bin/python3.6 #重新编译并安
sudo make uninstall
sudo make clean
make
sudo make install

编译完成之后,可以在/usr/local/lib下发现编译生成的librealsense2动态库文件,值得注意的是,很多教程上会在python3的库包存放位置/usr/local/lib/python3.6/pyrealsense2还看到另外再生成的pyrealsense2相关的动态库文件,但我们在此并没有相关库包。浏览编译的过程,可以看到另外的相关动态库文件生成地址,在OFF文件夹中,将此路径配置到.bashrc文件中。

powershell 复制代码
export PYTHONPATH=SPYTHONPATH:/usr/local/lib:/usr/local/OFF

4. 验证结果

source一下.bashrc文件,运行python3,import pyrealsense2导包看是否报错。

相关推荐
要努力啊啊啊11 小时前
YOLOv3-SPP Auto-Anchor 聚类调试指南!
人工智能·深度学习·yolo·目标检测·目标跟踪·数据挖掘
加油吧zkf17 小时前
AI大模型如何重塑软件开发流程?——结合目标检测的深度实践与代码示例
开发语言·图像处理·人工智能·python·yolo
要努力啊啊啊2 天前
YOLOv2 正负样本分配机制详解
人工智能·深度学习·yolo·计算机视觉·目标跟踪
Ailerx3 天前
YOLOv13震撼发布:超图增强引领目标检测新纪元
人工智能·yolo·目标检测
学技术的大胜嗷3 天前
离线迁移 Conda 环境到 Windows 服务器:用 conda-pack 摆脱硬路径限制
人工智能·深度学习·yolo·目标检测·机器学习
一花·一叶4 天前
基于昇腾310B4的YOLOv8目标检测推理
yolo·目标检测·边缘计算
昵称是6硬币4 天前
YOLOv11: AN OVERVIEW OF THE KEY ARCHITECTURAL ENHANCEMENTS目标检测论文精读(逐段解析)
图像处理·人工智能·深度学习·yolo·目标检测·计算机视觉
OICQQ676580084 天前
创建一个基于YOLOv8+PyQt界面的驾驶员疲劳驾驶检测系统 实现对驾驶员疲劳状态的打哈欠检测,头部下垂 疲劳眼睛检测识别
yolo·pyqt·疲劳驾驶·检测识别·驾驶员检测·打哈欠检测·眼睛疲劳
king of code porter14 天前
目标检测之YOLOv5到YOLOv11——从架构设计和损失函数的变化分析
人工智能·yolo·目标检测
model200514 天前
yolov11转ncnn
yolo·ncnn