Skip to main content

使用 QAIRT SDK 导出自定义 YOLOv8 模型

前提条件

在装有 Python >= 3.10 和 PyTorch >=1.8 的主机上安装 Qualcomm AI Runtime SDK。 有关更多详细信息,请参阅安装 Qualcomm AI Runtime SDK。 在主机上运行以下命令。
  1. 激活您的虚拟环境。
  2. 安装 Ultralytics 软件包并导出 ONNX 模型。

步骤

  1. 将 ONNX 模型转换为 DLC。
  2. 生成量化 DLC。
    1. 准备校准数据集。
    2. 收集 5-10 张训练时使用的图像,并将这些图像保存到输入目录。
    3. 使用 preprocess.py 脚本将 .jpg 图像转换为量化所需的 RAW 文件。
      在本示例中,模型使用 320x320 的输入尺寸。
      1. 按如下方式下载脚本:
      2. 使用以下选项运行脚本:
        • <INPUT PATH>: 包含原始图像的文件夹
        • <OUTPUT PATH>: 用于生成 RAW 文件的文件夹
    4. 创建一个 input.txt 文件,其中包含所有已生成 RAW 文件的路径。 量化过程需要此文件。
  3. 量化模型,使用 snpe-dlc-quantize 将模型转换为量化 DLC。

运行演示

  1. 下载标签文件。请参阅下载模型和标签文件。
  2. 在主机上,设置用户环境变量:
  3. 将测试视频文件推送到设备的 /etc/media。
  4. 将量化后的 YoloV8 模型推送到设备。
  5. 获取模型的输出张量,例如 output0。 Netron 图查看器中的模型输出张量名称
  6. 使用 SSH 登录设备:
  7. 在新 shell 中,运行以下命令:
    将以下占位符替换为相应的文件路径:
    <video file path>: 输入视频文件的路径
    <model file path>: YOLOv8 DLC 模型文件的路径
    <label file path>: YOLOv8 标签文件的路径

    例如: