This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] SK-TDA4VM:如何在 edgeai-tidl-tools 中为自定义 YOLOv8-s 模型编写有效的协议

Guru**** 2560390 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1552694/sk-tda4vm-how-to-write-a-valid-prototxt-for-custom-yolov8-s-model-in-edgeai-tidl-tools

器件型号:SK-TDA4VM


工具/软件:

我正在使用进行模型部署 BeagleBone AI-64 一方 TI SDK 10.00.00.08 edgeai-tidl-tools (10_00_08_00)

我已成功导出我的 定制 YOLOv8-s 模型 到 ONNX、我正在尝试使用 TIDL 导入器进行编译。
但是、我在编译过程中会遇到以下错误:

onnxruntime.capi.onnxruntime_pybind11_state.RuntimeException:
[ONNXRuntimeError]: 6 : RUNTIME_Exception :运行 ReorderInput 节点时返回的非零状态代码。
名称:“ReorderInput"</s>“
状态消息:... X_rank == 4 为 false。

我的问题:

  1. 我是否需要应用模型手术 (edgeai_torchmodelopt.surgery) 在为 TIDL 编译 YOLOv8-s 模型之前?
    如果是、建议使用哪个版本 (v1 或基于 FX 的 v2)、使用 YOLOv8 型号时是否存在任何已知限制?

  2. 我明白这一点 .prototxt需要一个文件 以便导入模型、尤其是对象检测模型。
    但是、edgeai-tidl-tools 中使用的 protottxt 格式似乎与传统的 ONNX/Caffe 格式不同。

    • 是否有任何专门用于生成 prototxt 文件的官方文档或工具 定制 YOLOv8 模型?

    • 我目前参考的是 edgeai-tidl-tools 中包含的示例 YOLOv8 prototxt、
      但我不确定如何为我的模型正确修改它(例如,自定义输入/输出层名称和尺寸)。

.prototxt如果您对如何为我的 YOLOv8-s 模型正确编写文件有任何指导、我们将不胜感激。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Yura:

    我必须对此进行一些研究、然后返回给您。   如果我没有通过星期一回复、请 ping 我。

    此致、

    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Chris、

    我只是想提醒您我们上周讨论的 YOLOv8 编译问题。 如果您有机会进行调查、请告诉我。

    再次感谢您的支持。

    此致、
    Yura

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Yura:

    您并不总是需要 prototal 文件。  这取决于应用。  请将您的模型和 import.cfg 发送给我、以便进行 TIDL 导入。  您是否尝试过 OSRT 方法来解决此问题?  这位于 examples/osrt_python/ort 中。   

    最简单的成功途径是 OSRT 方法。  设置 edgeai-tidl-tools 后。

    1.转到  edgeai-tidl-tools/examples/osrt_python/ort

    2. 制备管道清洁剂。 我们知道可以通过以下方式实现您的设置的标准模型:   python3 ./onnxrt_ep.py -c -m cl-ort-resnet18-v1.  

    3.通过以下方式运行管道清洁器模型:  python3 ./ onnxrt_ep.py -m cl-ort-resnet18-v1.  

    4.编辑../ model_configs.py 并将您的模型添加到 ONNX 部分

    5.编译模型:  python3 ./onnxrt_ep.py -c -m <model_name_you_set_in_model_configs>

    模型工件将位于  edgeai-tidl-tools/model-artifacts/中 。

    此致、

    Chris