Skip to content

Latest commit

 

History

History
59 lines (43 loc) · 1.75 KB

readme_en.md

File metadata and controls

59 lines (43 loc) · 1.75 KB

Paddle2ONNX: Converting To ONNX and Deployment

This section introduce that how to convert the Paddle Inference Model ResNet50_vd to ONNX model and deployment based on ONNX engine.

1. Installation

First, you need to install Paddle2ONNX and onnxruntime. Paddle2ONNX is a toolkit to convert Paddle Inference Model to ONNX model. Please refer to Paddle2ONNX for more information.

  • Paddle2ONNX Installation
python3.7 -m pip install paddle2onnx
  • ONNX Installation
python3.7 -m pip install onnxruntime

2. Converting to ONNX

Download the Paddle Inference Model ResNet50_vd:

cd deploy
mkdir models && cd models
wget -nc https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/inference/ResNet50_vd_infer.tar && tar xf ResNet50_vd_infer.tar
cd ..

Converting to ONNX model:

paddle2onnx --model_dir=./models/ResNet50_vd_infer/ \
--model_filename=inference.pdmodel \
--params_filename=inference.pdiparams \
--save_file=./models/ResNet50_vd_infer/inference.onnx \
--opset_version=10 \
--enable_onnx_checker=True

After running the above command, the ONNX model file converted would be save in ./models/ResNet50_vd_infer/.

3. Deployment

Deployment with ONNX model, command is as shown below.

python3.7 python/predict_cls.py \
-c configs/inference_cls.yaml \
-o Global.use_onnx=True \
-o Global.use_gpu=False \
-o Global.inference_model_dir=./models/ResNet50_vd_infer

The prediction results:

ILSVRC2012_val_00000010.jpeg:   class id(s): [153, 204, 229, 332, 155], score(s): [0.69, 0.10, 0.02, 0.01, 0.01], label_name(s): ['Maltese dog, Maltese terrier, Maltese', 'Lhasa, Lhasa apso', 'Old English sheepdog, bobtail', 'Angora, Angora rabbit', 'Shih-Tzu']