deepcam-cn / yolov5-face

YOLO5Face: Why Reinventing a Face Detector (https://arxiv.org/abs/2105.12931) ECCV Workshops 2022)
GNU General Public License v3.0
2.12k stars 504 forks source link

转化ONNX时如何得到与推理相同的输出格式? #86

Open suncheng-s opened 3 years ago

suncheng-s commented 3 years ago

转化ONNX时如何得到与推理相同的输出格式?目前转化为ONNX时,输出为三个特征图的结果。怎么修改能得到和推理时一样的输出结果呢?如下图所示。 image

我修改了model.model[-1].export = False,输出格式相同,但是提示错误: image

请问该如何解决?

derronqi commented 3 years ago

你的右图是yolov5的onnx,如果你想得到类似的结构,修改yolo.py

bobo0810 commented 2 years ago

@suncheng-s 已支持,请参考https://github.com/deepcam-cn/yolov5-face/pull/108#issue-1083085258

sssssshf commented 2 years ago

@suncheng-s 已支持,请参考#108(评论)

可以提供正确转onnx 和推理onnx的代码吗 感谢 期待您的回复

bobo0810 commented 2 years ago

@suncheng-s 已支持,请参考#108(评论)

可以提供正确转onnx 和推理onnx的代码吗 感谢 期待您的回复

已经合并到主分支了,直接用就可以。

sssssshf commented 2 years ago

您的意思是说yolo5face 的代码库 已经更新过 ? 下载最新的git项目 需要重新训练 然后在运行转onnx就没问题了吗

bobo0810 commented 2 years ago

您的意思是说yolo5face 的代码库 已经更新过 ? 下载最新的git项目 需要重新训练 然后在运行转onnx就没问题了吗

目前权重可以直接转为onnx 后处理只需要NMS等了。

sssssshf commented 2 years ago

您的英文 olo5face 的代码库更新过吗?

当前权重可以转为onnx后处理只需要NMS等直接了。

我现在转onnx的过程会报错,代码已经按照上述的两个地方作了修改: model.model[-1].export = False # set Detect() layer export=True model.model[-1].export_cat = True 报错如下: aten::view(Tensor(a) self, int[] size) -> (Tensor(a)): Expected a value of type 'Tensor' for argument 'self' but instead found type 'None'. :

bobo0810 commented 2 years ago

最新代码试试

sssssshf commented 2 years ago

最新尝试代码

理解了 刚重新下载了一下工程 已经转成功了 。多谢大佬。不过测onnx的demo有现成的吗?

HGS-1998 commented 1 year ago

最新尝试代码

理解了 刚重新下载了一下工程 已经转成功了 。多谢大佬。不过测onnx的demo有现成的吗?

请问测试onnx的demo你找到了吗/?现在十分需要它