PaddlePaddle / PaddleX

PaddlePaddle End-to-End Development Toolkit(飞桨低代码开发工具)
Apache License 2.0
4.6k stars 909 forks source link

Faster-RCNN和Mask-RCNN模型导出ONNX格式问题 #1503

Open Fred-cell opened 2 years ago

Fred-cell commented 2 years ago

在尝试导出onnx格式,出现不支持的OPS: https://github.com/PaddlePaddle/PaddleX/blob/develop/docs/appendix/model_zoo.md 目标检测模型 image 错误信息入下: There's 6 ops are not supported yet =========== tensor_array_to_tensor =========== =========== lod_array_length =========== =========== conditional_block =========== =========== while =========== =========== select_input =========== =========== write_to_array =========== 目标分割模型 image 错误信息如下: There's 6 ops are not supported yet =========== select_input =========== =========== lod_array_length =========== =========== while =========== =========== write_to_array =========== =========== tensor_array_to_tensor =========== =========== conditional_block ===========

开发环境是:paddlepaddle-2.3.0, onnx=1.11.0, opset=15

Fred-cell commented 2 years ago

百度的专家有什么建议吗?

FlyingQianMM commented 2 years ago

onnx目前不支持控制流,所以不能直接导出成onnx再用trt。您可以开启Paddle Inference里的trt来加速。

Fred-cell commented 2 years ago

请教一下,"onnx目前不支持控制流“是什么意思?推理不是输入一张图片,输出推理结果吗?

jiangjiajun commented 2 years ago

HI, @Fred-cell 请问下你导出ONNX的原因是什么呢?

Fred-cell commented 2 years ago

hi Jianjun, 我想用openvino的INT8方法进行量化加速,对于某些客户需求,是部署在CPU上的。

jiangjiajun commented 2 years ago

OpenVINO现在可以支持Paddle的模型,无需转ONNX. 你可以直接使用OpenVINO的2022版本进行部署

Fred-cell commented 2 years ago

这两个模型,用OpenVINO直接load pdpaddle格式也是有问题的,用的版本是最新的2022.1。

jiangjiajun commented 2 years ago

这个问题可以反馈一下给openvino, 你可以提个issue给他们

Fred-cell commented 2 years ago

已经提交了,多谢提醒!

Fred-cell commented 2 years ago

现在OpenVINO有2条路可做,一个是能成功导出onnx格式,load onnx格式模型,一个是直接load paddle的模型,这2个路我都有提issue,看那条路更快了。

jiangjiajun commented 2 years ago

不建议转onnx。 因为这个模型带控制流,就算转出成onnx,也大概率无法转成openvino

Fred-cell commented 2 years ago

好的好的,多谢提醒!