此页面由 AI 自动翻译。查看英文原版

本页目录

  • 概述
  • 转换
  • 故障排除

详细转换

概述

为了充分利用设备上的 AI 模型,必须首先将它们转换为目标平台的 RVC 编译格式。 如果您想了解什么是转换、为什么需要转换以及其中涉及的一些关键概念,请参阅 转换 部分。虽然 Hub 通过“快速转换”工具提供了一种快速简化的选项,但某些工作流需要更深入的控制。 详细转换”工作流专为这些更高级的用例而设计,提供细粒度的配置参数以及版本/变体管理。 如果您更喜欢一次性快速转换且设置最少,请参阅 快速转换 部分。

转换

要在 Hub 中转换模型:
  • 打开 Hub,然后在左侧边栏导航到 模型 部分。
  • 点击所需模型(公共或私有)的图标,向下滚动到“模型变体”部分,然后点击感兴趣变体旁边的“转换”按钮。
  • 这将打开一个弹出窗口,列出模型可以转换的所有(RVC)平台。 点击感兴趣的平台。 请注意,选项取决于上传的模型文件的格式。 简而言之,只有 ONNX 格式允许转换为所有支持的平台。
  • 接下来,您需要填写模型描述符和转换参数(如果模型文件是 NN-Archive,则某些参数可能已预定义)。 根据所选平台,系统会要求您提供:
    • 模型实例名称: 在 Hub 中显示的转换后模型的名称(例如 RVC2)。
    • Ir 版本 / Snpe 版本: 模型转换到的格式版本。
    • 禁用 ONNX 简化(可选): 选择此选项可禁用转换期间的 ONNX 模型简化(用其常量输出来替换冗余算子)。
    • Mo 参数(可选): 对于 RVC2 和 RVC3,使用 OpenVINO 模型优化器将模型转换为 IR 格式。 您可以在此处指定自定义参数。如果自定义参数与默认参数冲突,自定义参数将始终优先。 有关更多信息,请参阅 官方文档
    • 编译工具参数(可选): 对于 RVC2,使用 OpenVINO 编译工具来编译模型以进行推理。 您可以在此处指定自定义参数。如果自定义参数与默认参数冲突,自定义参数将始终优先。 有关更多信息,请参阅 官方文档
    • POT 目标设备: POT 的目标设备(仅限 RVC3)。最好设置为 VPU,如果失败则设置为 ANY。
    • 转换为 blob: 启用此选项可将模型导出为 .blob 而不是默认的 .superblob(有关这两种格式的详细信息,请参阅 转换概念 部分)。 主要在转换为 DepthAI v2 时使用此选项,此时必须为固定数量的 SHAVE(使用下面的滑块手动设置)编译模型。 对于 DepthAI v3,强烈建议不要选中此选项,而是使用默认的 .superblob 格式。
    • 形状: 网络的输入形状。
    • 缩放值: 要用于每个通道的缩放值列表(例如,ImageNet 的 123.675、116.28 和 103.53)。
    • 平均值: 要用于每个通道的平均值列表(例如,ImageNet 的 58.395、57.12 和 57.375)。
    • 编码从 / 编码到: 转换所需的输入通道顺序(例如,从 RGB 到 BGR 或反之亦然)。 编码从定义了基础模型的输入通道顺序,编码到定义了转换后模型所需的顺序。 如果为两者传递相同的顺序,则模型将在不修改输入通道顺序的情况下进行转换。
    • 量化数据: 对于 RVC3 和 RVC4 平台转换,会执行量化以降低模型的计算和内存成本(在 转换概念 部分阅读更多内容)。 此过程需要将示例输入数据传递给模型。 目前没有选项可以上传自定义量化数据集,但我们提供了一些通用的数据集供您选择 (来自 Open Images V7forklift-1 数据集的 1024 张图像的精选集)。 为了获得最佳量化结果,请选择与模型训练数据集最相似的数据集(或切换到使用 Modelconverter 工具进行本地转换,该工具允许指定自定义量化数据集):
      • 驾驶: 街道和车辆的图像(OIv7 类,如 Vehicle、Car、Traffic light 等);
      • 食物: 水果、蔬菜、生食和熟食的图像(OIv7 类,如 Apple、Salad、Pizza 等);
      • 通用: 代表各种对象和场景的 OIv7 图像的随机子集;
      • 室内: 室内空间的图像(OIv7 类,如 Table、Chair、Fireplace 等);
      • 随机: 随机像素图像;
      • 仓库: 仓库内部的图像(forklift-1 图像的随机子集);
    • 最大量化图像: 量化中使用的最大图像数量。
    • 目标精度: 量化的目标精度(仅限 RVC4)。 提供两个选项:FP16(半精度浮点量化)和 INT8(整数量化)。 如果您需要速度和准确性之间的平衡,并且量化效果最小,请选择 FP16;如果您想要最大的性能和模型压缩,并且可以接受潜在的轻微准确性权衡,请选择 INT8。
  • 填写完参数后,单击 Export 按钮。 这将通过创建新的模型变体实例并将其状态标记设置为 Pending 来启动转换过程。转换过程将需要几分钟时间才能完成,具体取决于模型的大小和复杂性。
  • 转换完成以 Success 状态标记表示。 现在可以下载模型,或通过 DepthAI API 引用模型(请参阅 推理 指南)。

故障排除

并非所有模型都可以转换为所需的平台。 您可以按如下方式检查失败的转换日志:
  • Failed Conversions 部分找到失败的转换作业,然后单击其名称。
  • 单击右上角的 Logs 按钮下载转换日志,或通过滚动页面底部的 Conversion process logs 直接查看日志。