保姆级教程:在Jetson AGX Orin上从零部署YOLOv8(含JetPack 5.1.2、PyTorch 2.1.0、torchvision 0.16.2完整配置流程)

刚拿到Jetson AGX Orin的开发板时,面对这个性能强悍但配置复杂的边缘计算设备,很多开发者会陷入"从哪开始"的迷茫。本文将用最直白的操作步骤,带你完成从系统环境检查到YOLOv8模型运行的完整流程,特别针对JetPack 5.1.2、PyTorch 2.1.0和torchvision 0.16.2的版本组合,解决环境变量设置、Python版本切换等高频问题。

1. 基础环境准备

1.1 确认JetPack版本

开机后首先打开终端,执行以下命令检查预装JetPack版本:

dpkg -l | grep nvidia-jetpack

或使用更详细的查看方式:

sudo apt show nvidia-jetpack

注意:本教程基于JetPack 5.1.2(L4T 35.3.1)开发,不同版本可能需要调整后续步骤中的软件版本。

1.2 系统更新与基础依赖

在安装深度学习框架前,需要确保系统基础环境完整:

sudo apt-get -y update && sudo apt-get -y upgrade
sudo apt-get install -y \
    build-essential \
    cmake \
    libopenblas-dev \
    liblapack-dev \
    libjpeg-dev \
    zlib1g-dev \
    libpython3-dev \
    libavcodec-dev \
    libavformat-dev \
    libswscale-dev

常见问题处理:

  • 若遇到E: Unable to locate package错误,先执行sudo apt-get update
  • 空间不足时可添加--no-install-recommends参数减少安装量

2. PyTorch环境配置

2.1 选择正确的PyTorch版本

JetPack 5.1.2对应的官方PyTorch版本为2.1.0,下载地址为:

https://developer.download.nvidia.com/compute/redist/jp/v512/pytorch/

推荐下载文件:

torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl

2.2 安装PyTorch

下载完成后,在whl文件所在目录执行:

pip3 install numpy torch-2.1.0a0+41361538.nv23.06-cp38-cp38-linux_aarch64.whl

验证安装是否成功:

import torch
print(torch.__version__)  # 应输出2.1.0
print(torch.cuda.is_available())  # 应返回True

环境变量修复(针对常见警告):

echo 'export PATH=$PATH:/home/$USER/.local/bin' >> ~/.bashrc
source ~/.bashrc

3. torchvision安装指南

3.1 版本匹配原则

PyTorch 2.1.0需要搭配torchvision 0.16.0+版本,建议选择0.16.2以获得最佳兼容性。

预编译版本下载建议:

  • 官方GitHub Release页面
  • CSDN资源(需注意文件完整性)

3.2 完整安装流程

先安装系统级依赖:

sudo apt-get install -y \
    libjpeg-dev \
    zlib1g-dev \
    libpython3-dev \
    libavcodec-dev \
    libavformat-dev \
    libswscale-dev

然后安装torchvision(假设whl文件已下载):

pip3 install torchvision-0.16.2+c6f3977-cp38-cp38-linux_aarch64.whl

验证安装:

import torchvision
print(torchvision.__version__)  # 应输出0.16.2

4. YOLOv8部署实战

4.1 安装Ultralytics套件

创建纯净Python环境(可选但推荐):

python3 -m venv yolov8_env
source yolov8_env/bin/activate

安装基础依赖:

pip3 install ultralytics opencv-python

提示:若使用原生环境,建议先升级pip:pip3 install --upgrade pip

4.2 模型测试运行

基础检测示例:

from ultralytics import YOLO

# 加载官方预训练模型
model = YOLO('yolov8n.pt')  

# 执行推理
results = model('https://ultralytics.com/images/bus.jpg')

# 可视化结果
results[0].show()

常见问题解决方案:

问题现象 解决方法
ImportError: libGL.so.1 sudo apt-get install -y libgl1-mesa-glx
缺少sentry_sdk pip3 install sentry_sdk
视频处理报错 sudo apt-get install -y libsm6 libxext6

4.3 性能优化技巧

  1. TensorRT加速
pip3 install nvidia-tensorrt

转换模型为TensorRT格式:

model.export(format='engine', device=0)
  1. 内存配置优化
sudo nvpmodel -m 0  # 开启最大性能模式
sudo jetson_clocks  # 解锁时钟频率限制
  1. 视频流处理建议
# 使用多线程处理
results = model.predict(
    source='rtsp://192.168.1.64:554/stream',
    stream=True,
    imgsz=640,
    half=True  # 启用FP16加速
)

5. 开发环境精调

5.1 Python版本管理

查看当前Python默认版本:

python --version

设置Python3为默认版本:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
sudo update-alternatives --config python

5.2 离线安装方案

当网络环境受限时,可按以下步骤操作:

  1. 在其他设备下载whl文件:

    • PyPI官方仓库:https://pypi.org/
    • 第三方镜像源
  2. 传输到Jetson后安装:

pip3 install --no-deps /path/to/package.whl

5.3 环境备份与恢复

生成requirements.txt:

pip3 freeze > requirements.txt

批量安装依赖:

pip3 install -r requirements.txt

推荐使用conda环境管理:

conda create -n yolov8 python=3.8
conda activate yolov8
Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐