专栏算法工具链关于多输入模型使用hrt_model_exec infer的一些问题

关于多输入模型使用hrt_model_exec infer的一些问题

已解决
tiki2023-03-28
95
6
1.芯片型号:X3派
2.天工开物开发包OpenExplorer版本:Ai_Toolchain_Package-release-v1.18.2-OE-v2.4.2
3.问题定位:模型转换<-->板端部署
4.问题具体描述:相关文件与代码见链接:https://pan.baidu.com/s/1PSimqe6Nv5RHTwED_QmOLQ 提取码:79l6

①已经使用工具链转换得到单目标跟踪模型DCMT.bin,但是板端部署后精度异常;

②使用板上的hrt_model_exec infer对上述的三输入模型精度进行调优验证;

③DCMT.bin有三个输入:一个bgr图片(NHWC),一个bgr图片(NHWC),一个featuremap(NCHW);

④三个输入的*.bin文件可以执行百度云链接中的main.py获得(x.bin; z.bin; b.bin);

⑤板端执行指令:hrt_model_exec infer --model_file DCMT.bin --input_file x.bin,z.bin,b.bin --enable_dump True --profile_path ./

⑥上述指令dump若干*.bin文件,其中有model_infer_input_0.bin; model_infer_input_1.bin; model_infer_input_2.bin三个文件;

⑦上述三个hrt_model_exec infer得到的*.bin文件与x.bin; z.bin; b.bin对应不上;

⑧表现为1:np.fromfile('model_infer_input_0.bin', dtype=np.uint8)与np.fromfile('x.bin', dtype=np.uint8)得到的两个numpy数组的shape不一致;

⑨表现为2:np.fromfile('model_infer_input_1.bin', dtype=np.uint8)与np.fromfile('z.bin', dtype=np.uint8)得到的两个numpy数组的shape不一致;

⑩表现为3:np.fromfile('model_infer_input_2.bin', dtype=np.float32)与np.fromfile('b.bin', dtype=np.float32)得到的两个numpy数组的shape一致(没毛病);

补充说明:

x.bin由一张255x255x3的uint8图片存为二进制文件得到;
z.bin由一张127x127x3的uint8图片存为二进制文件得到;

b.bin由一个1x4x1x1的float32数组存为二进制文件得到;

附件:
算法工具链
技术深度解析
+1
评论3
0/1000
  • 颜值即正义
    Lv.2
    你好,经分析,两个输入shape对不上是由于bgr输入时,有内存对齐操作,会自动padding,但有效数据是不会变的,也就是说不会影响推理结果。
    也就是说精度问题不是因为shape不一致导致的哈,请问quantized.onnx模型精度正常吗?建议参考https://developer.horizon.ai/forumDetail/71036815603174578先定位一下哈
    2023-03-29
    6
    3
    • tiki回复颜值即正义:

      Thanks! I have understood that the difference of shape is valid!

      By comparing the original.onnx, optimized.onnx and quantized.onnx, i have found that the outputs of original.onnx and optimized.onnx is good~

      However, the quantized.onnx outputs invalid results.

      I will open a new issue to talk about this situation later.

      2023-03-29
      0
    • luzi回复tiki:

      你们好,我用板上的hrt_model_exec model_info指令看了这个帖子的*.bin的信息:

      输出如下:

      请问bgr输入时的内存对齐操作是红框中的内容吗?

      如果是,请问这种在NHWC的W和C维度进行pad的操作是正常的吗?

      2023-03-29
      0
    • 颜值即正义回复luzi:

      是的,图像输入内部会自动对齐的,这种操作是正常的哈

      2023-03-30
      0
  • 颜值即正义
    Lv.2

    你好,该问题已收到,我们看一下,有消息会及时和你说的哈~

    2023-03-28
    2
    0
  • 颜值即正义
    Lv.2
    2023-04-24
    0
    0