paddle并不支持将动态图导出为支持动态size的onnx模型。参考:https://blog.csdn.net/ab0902cd/article/details/120200557 ,对导出后的onnx模型进行修改。最终实现,使paddle导出的模型支持动态size。以下以语义分割模型为例,将导出的静态size模型修改为动态size。
pip install paddle2onnx
pip install onnx
pip install onnxruntime-gpu
其中paddle2onnx用于实现将静态图模型转换为onnx模型,onnx库用于修改模型的输入输出节点,onnxruntime-gpu库用于推理onnx模型
该操作非必要,只是对一个动态图模型进行wrap操作,方便修改模型的输入和输出结果。
import paddle
from paddle import nn
from paddle.static import InputSp