器件型号: TDA4VEN-Q1
您好、我们正在开发自己的应用、方法是引用 dl_demos 存储库、并 io.bin net.bin 通过 TIDL 节点调用 Superpoint 模型(通过和文件)以进行关键点检测。 在此过程中、我们遇到了以下问题、感谢您的支持:
- 模型输出张量的尺寸不匹配。
- 模型的输出张量的数据类型不匹配。
详细说明和验证过程:
1.我们已经确认,我们的 ONNX 模型的输出是:
- 张量 1:
float32 [1x65x30x30] - 张量 2:
float32 [1x256x30x30]
如下图所示
- 2.我们验证了在使用 TI 的预打包可执行文件
TI_DEVICE_armv8_test_dl_algo_host_rt.out调用 Superpoint 模型时、生成的out.bin文件大小正好是[(65×30×30) + (256×30×30)] × 4 bytes。 这与 ONNX 模型的输出规格相匹配、可以成功解析数据。3.然而,在开发我们的应用程序时,从二进制文件中提取的输出张量的维度和数据类型一致:
- 张量 1:
int16 [1x65x45x30] - 张量 2:
int16 [1x256x45x30]
主要问题:
a.padB=15将出现一个意外参数、将空间维度从转换30x30为45x30。 在 ONNX 到二进制转换期间、我们没有配置任何填充相关参数。- 是否预计会出现这种行为?
- 如果有效、我们应该如何处理此输出? 我们 是否应该简单地修整填充的 15 行(即放弃额外的空间维度)?
B. 张量数据类型从
float32(ONNX 输出)更改为int16,因此不清楚如何正确解释这些值。具体的代码和结果如下图所示:
- 张量 1:




