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.

[参考译文] PROCESSOR-SDK-J722S:关于将 onnx 文件转换为 TIDL 格式的问题

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1434528/processor-sdk-j722s-issue-about-convert-onnx-file-to-tidl-format

器件型号:PROCESSOR-SDK-J722S

工具与软件:

嗨、团队:

我尝试按照以下步骤对自定义模型运行推理、但遇到了一个问题:

  1. 引导 RTOS CPU ONNX file --> convert to TIDL format --> run inference

    • 我可以使用 Model Zoo 中的模型成功运行推理。
    • 但是、当我使用edgeai-tidl-tools/tidl_tools/tidl_model_import.out将 ONNX 模型转换为 TIDL 格式、然后尝试运行推理时、会遇到错误、说明param.yaml不存在。

我的转换模型(左侧)与 Model Zoo 中的示例模型(右侧)不同。

问题:

  1. 是否可以生成config.yamldataset.yamlparam.yaml使用tidl_model_import.out? 如果是、如何正确配置它们?

  2. 您能否提供一个将 ONNX 文件转换为 TIDL 格式并运行推理的示例?

  3. 我还尝试了 自定义模型评估 方法。(github.com/.../custom_model_evaluation.md(github.com/.../custom_model_evaluation.md

    • 但是、日志显示错误:EP Error Unknown Provider Type: TIDLCompilationProvider when using ['TIDLCompilationProvider', 'CPUExecutionProvider']
    • 我是否缺少任何设置? 我的代码如下:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import torch
import onnx
import onnxruntime as rt
import subprocess
import os
#
onnx_model_path = "model.onnx"
simplified_onnx_model_path = "model_simplified.onnx"
tidl_artifacts_folder = "./model-artifacts-dir/"
tidl_tools_path = "./app/ken/tda4/TIDL10.00.06.00/edgeai-tidl-tools/tidl_tools/"
# Step 1: ONNX ( PyTorch )
def export_pytorch_model_to_onnx(model, input_shape):
dummy_input = torch.randn(*input_shape)
torch.onnx.export(model, dummy_input, onnx_model_path, opset_version=11)
print(f"ONNX model exported to {onnx_model_path}")
# Step 2:
def check_and_infer_shape(onnx_model_path):
model = onnx.load(onnx_model_path)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

感谢您的帮助。