专栏算法工具链关于yolov5模型转换的问题

关于yolov5模型转换的问题

已解决
gxwyxajh882021-12-25
136
11

基于Yolov5 v6.0版本的yolon.pt权重文件自定义训练的数据集,转成onnx以后通过AI工具链1.7.5版本mapper工具做的模型转换,根据视频和问的说明已经执行了01 模型检测、02 预处理、03 模型编译,前面三步都已经完成了,执行04 的时候提示错误,异常输出附在内容后面,根据训练模型修改了输入尺寸为640,也替换了预处理的图片,其他的没有修改,请问下这个异常怎么处理?

python3 -u ../../det_inference.py \

--model ${model} \

--image ${infer_image} \

--input_layout ${layout} \

--input_offset ${input_offset}

no display found. Using non-interactive Agg backend

Traceback (most recent call last):

File "../../det_inference.py", line 71, in <module>

main()

File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 829, in __call__

return self.main(*args, **kwargs)

File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 782, in main

rv = self.invoke(ctx)

File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 1066, in invoke

return ctx.invoke(self.callback, **ctx.params)

File "/usr/local/lib/python3.6/dist-packages/click/core.py", line 610, in invoke

return callback(*args, **kwargs)

File "../../det_inference.py", line 67, in main

inference(sess, image, input_layout, input_offset)

File "../../det_inference.py", line 36, in inference

postprocess(output, model_hw_shape, origin_image)

File "/open_explorer/ddk/samples/ai_toolchain/horizon_model_convert_sample/04_detection/03_yolov5/mapper/postprocess.py", line 58, in postprocess

85]).transpose([0, 3, 1, 2, 4])

ValueError: cannot reshape array of size 2142000 into shape (1,84,84,3,85)

算法工具链
评论2
0/1000
  • 颜值即正义
    Lv.2

    您好,注意到您自定义训练后导出的onnx模型输入为640,而OE包里YOLOv5模型的输入为672,这种情况下需要您检查修改后处理示例代码,对齐模型输出,不建议直接复用后处理示例代码。

    2023-06-15
    0
    8
    • ziyifly回复颜值即正义:

      再次确认了:export 的输入为672,train.py 的输入也为672,素材分辨率也为672

      export.py

      train.py

      images.jpg

      最后推理报错:

      此问题已耽误好几周开发进度,能否帮忙给一些具体点的修改建议?您的举手之劳可能为开发者剩下几周几个月的时间。

      2023-06-19
      0
    • ziyifly回复颜值即正义:
      @颜值即正义
      2023-06-19
      0
    • 颜值即正义回复ziyifly:

      你好,可以看一下模型输出shape

      后处理中shape是否对应哈

      2023-06-19
      0
    • 颜值即正义回复颜值即正义:

      实在不行,可以看一下你的model_output是什么样的shape

      2023-06-19
      0
    • ziyifly回复颜值即正义:

      谢谢你的回复

      我用Netron查看,确实模型的输出和输入没对应,但yolov5 2.0版本中没有找到后处理部分的代码,不清楚 model_ouput[0] 在哪里,去修改它的 reshape 值。希望能告知。

      2023-06-20
      0
    • 颜值即正义回复ziyifly:
      以J5 OE1.1.52为例,代码在horizon_j5_open_explorer_v1.1.52a-py38_20230605/ddk/samples/ai_toolchain/horizon_model_convert_sample/04_detection/03_yolov5x/mapper/postprocess.py里面

      这里也解释一下,通常我们主要解决工具链的相关问题,比如转换失败等。提供的参考示例我们会确保它们可以正常运行,如果大家在算法层面进行了修改,非常欢迎大家参考我们的示例代码进行调试,但我们一般不参与用户自己算法层面的代码调试与答疑哦,毕竟大家的算法千变万化,各不相同~

      2023-06-20
      0
    • ziyifly回复颜值即正义:

      感谢回复

      最后一个问题:如何将onnx的ouput输出为1,84,84,255 ?

      现在的值是:

      2023-06-20
      0
    • 颜值即正义回复ziyifly:

      建议从开源网站了解一些yolo算法基础知识,这里是8还是255取决你算法层面的设置

      2023-06-20
      0
  • ywh_tuoba
    Lv.1

    yolo5在旭日3开发板上跑起来了吗?

    2021-12-27
    0
    1
    • gxwyxajh88回复ywh_tuoba:

      还没有,这不是遇到问题来求助了么

      2021-12-27
      0