专栏算法工具链J6上部署Bevformer模型问题请教

J6上部署Bevformer模型问题请教

已解决
Yang~2025-07-04
117
7

环境:OE3.0.31 J6M部署Bevformer

问题描述:部署Bevformer模型时,需要两个输入文件:reference_points0.bin以及prev_reference_points.bin;使用prepare_batch_tensor_and_quanti函数读取两个文件的时候会出现报错:input_file length does not match! file length: 480000; input valid size: 60000; input aligned size: 0;导致最终申请的内存为0,从而程序崩了;检查发现reference_points0.bin的validShape: [6, 1, 2500, 4]正常的,但是对齐后的alignedShape: [5, 1, 0, -870561440]数值出现0和负值,这会导致申请内存为0。另外一个prev_reference_points.bin会出现同样的情况。请问这个怎么解决呢?

算法工具链
征程6
评论5
0/1000
  • Huanghui
    Lv.5

    你好,你的bin文件里面的数据类型是什么呢?

    2025-07-08
    0
    0
  • Huanghui
    Lv.5

    根据 file length: 480000 和 input valid size: 60000,实际文件中的每个元素所占字节数应该是 480000 / 60000 = 8 字节。

    2025-07-08
    0
    0
  • Huanghui
    Lv.5

    它尝试根据 4 字节的假设来计算内存地址或对齐时,有可能会导致严重的偏移和错误,最终出现 alignedShape 中的 0 和负数。

    2025-07-08
    0
    1
    • Yang~回复Huanghui:

      其实reference_points0.bin完整的shape是(6,1,2500,4,2),数据类型是float,所以length是480000。所以按照4字节去对齐应该是对的吧。

      2025-07-08
      0
  • Huanghui
    Lv.5

    验证一下~~~

    2025-07-08
    0
    0
  • Yang~
    Lv.1

    这里我用的是自己的真实相机,不是OE包中的输入数据,然后相机的内外参变了,这两个bin文件是不是也需要重新生成?如果不重新生成,会造成alignedShape出现0和负数吗?

    2025-07-08
    0
    1
    • 费小财回复Yang~:

      从日志看,你的尺寸有一个width 等2的吗

      2025-07-18
      0