芯片:J6P
工具链版本:horizon_j6_open_explorer_v3.5.0-py310_20250927
板端linux版本(/proc/version):
工具链版本:horizon_j6_open_explorer_v3.5.0-py310_20250927
板端linux版本(/proc/version):
问题:通过hb_compile将自己魔改的yolo的onnx模型转换为hbm模型,在上位机docker环境中使用Python里HBRuntime测试hbm模型输出一切正常,到板端部署后输出结果完全错误,刚开始在想是不是板端的cpp代码写错了,但是用同样的代码尝试了示例中给出的resnet50_224x224_rgb.hbm模型,上位机和板端却又输出了相同的结果。
附件:通过网盘分享的文件:J6P
链接: https://pan.baidu.com/s/1b8GD0d_J6tXDjEY513JlHA?pwd=3g13 提取码: 3g13
链接: https://pan.baidu.com/s/1b8GD0d_J6tXDjEY513JlHA?pwd=3g13 提取码: 3g13
Question:是否因相关依赖库版本不一致导致?以及如何解决?
代码功能
上位机与板端代码均为:推理后获取每个输出节点中的最大值、最大值索引以及最小值并打印(代码在附件中已经给出)
推理结果对比
自己转换的hbm模型
上位机输出结果(正常):
附上上位机结果可视化图:


- 板端输出结果(完全错误):
工具链给出的resnet50_224x224_rgb.hbm模型
上位机输出结果(正常):
- 下位机输出结果(依旧正常):
代码实现
上位机代码 infer.py(已经在附件压缩包里给出)
下位机代码 infer_test.cpp(已经在附件压缩包里给出)
补充说明
模型量化使用的校准图片(.npy)在上位机文件夹output/coco_tl/384x640中,量化结果均在output/coco_tl中,实际使用上位机文件夹中onnx2j6.py脚本进行转换(其中还是调用os.system执行hb_compile命令),命令为: