更换文档检测模型
This commit is contained in:
99
paddle_detection/deploy/end2end_ppyoloe/README.md
Normal file
99
paddle_detection/deploy/end2end_ppyoloe/README.md
Normal file
@@ -0,0 +1,99 @@
|
||||
# Export ONNX Model
|
||||
## Download pretrain paddle models
|
||||
|
||||
* [ppyoloe-s](https://paddledet.bj.bcebos.com/models/ppyoloe_crn_s_300e_coco.pdparams)
|
||||
* [ppyoloe-m](https://paddledet.bj.bcebos.com/models/ppyoloe_crn_m_300e_coco.pdparams)
|
||||
* [ppyoloe-l](https://paddledet.bj.bcebos.com/models/ppyoloe_crn_l_300e_coco.pdparams)
|
||||
* [ppyoloe-x](https://paddledet.bj.bcebos.com/models/ppyoloe_crn_x_300e_coco.pdparams)
|
||||
* [ppyoloe-s-400e](https://paddledet.bj.bcebos.com/models/ppyoloe_crn_s_400e_coco.pdparams)
|
||||
|
||||
|
||||
## Export paddle model for deploying
|
||||
|
||||
```shell
|
||||
python ./tools/export_model.py \
|
||||
-c configs/ppyoloe/ppyoloe_crn_s_300e_coco.yml \
|
||||
-o weights=ppyoloe_crn_s_300e_coco.pdparams \
|
||||
trt=True \
|
||||
exclude_nms=True \
|
||||
TestReader.inputs_def.image_shape=[3,640,640] \
|
||||
--output_dir ./
|
||||
|
||||
# if you want to try ppyoloe-s-400e model
|
||||
python ./tools/export_model.py \
|
||||
-c configs/ppyoloe/ppyoloe_crn_s_400e_coco.yml \
|
||||
-o weights=ppyoloe_crn_s_400e_coco.pdparams \
|
||||
trt=True \
|
||||
exclude_nms=True \
|
||||
TestReader.inputs_def.image_shape=[3,640,640] \
|
||||
--output_dir ./
|
||||
```
|
||||
|
||||
## Check requirements
|
||||
```shell
|
||||
pip install onnx>=1.10.0
|
||||
pip install paddle2onnx
|
||||
pip install onnx-simplifier
|
||||
pip install onnx-graphsurgeon --index-url https://pypi.ngc.nvidia.com
|
||||
# if use cuda-python infer, please install it
|
||||
pip install cuda-python
|
||||
# if use cupy infer, please install it
|
||||
pip install cupy-cuda117 # cuda110-cuda117 are all available
|
||||
```
|
||||
|
||||
## Export script
|
||||
```shell
|
||||
python ./deploy/end2end_ppyoloe/end2end.py \
|
||||
--model-dir ppyoloe_crn_s_300e_coco \
|
||||
--save-file ppyoloe_crn_s_300e_coco.onnx \
|
||||
--opset 11 \
|
||||
--batch-size 1 \
|
||||
--topk-all 100 \
|
||||
--iou-thres 0.6 \
|
||||
--conf-thres 0.4
|
||||
# if you want to try ppyoloe-s-400e model
|
||||
python ./deploy/end2end_ppyoloe/end2end.py \
|
||||
--model-dir ppyoloe_crn_s_400e_coco \
|
||||
--save-file ppyoloe_crn_s_400e_coco.onnx \
|
||||
--opset 11 \
|
||||
--batch-size 1 \
|
||||
--topk-all 100 \
|
||||
--iou-thres 0.6 \
|
||||
--conf-thres 0.4
|
||||
```
|
||||
#### Description of all arguments
|
||||
|
||||
- `--model-dir` : the path of ppyoloe export dir.
|
||||
- `--save-file` : the path of export onnx.
|
||||
- `--opset` : onnx opset version.
|
||||
- `--img-size` : image size for exporting ppyoloe.
|
||||
- `--batch-size` : batch size for exporting ppyoloe.
|
||||
- `--topk-all` : topk objects for every image.
|
||||
- `--iou-thres` : iou threshold for NMS algorithm.
|
||||
- `--conf-thres` : confidence threshold for NMS algorithm.
|
||||
|
||||
### TensorRT backend (TensorRT version>= 8.0.0)
|
||||
#### TensorRT engine export
|
||||
``` shell
|
||||
/path/to/trtexec \
|
||||
--onnx=ppyoloe_crn_s_300e_coco.onnx \
|
||||
--saveEngine=ppyoloe_crn_s_300e_coco.engine \
|
||||
--fp16 # if export TensorRT fp16 model
|
||||
# if you want to try ppyoloe-s-400e model
|
||||
/path/to/trtexec \
|
||||
--onnx=ppyoloe_crn_s_400e_coco.onnx \
|
||||
--saveEngine=ppyoloe_crn_s_400e_coco.engine \
|
||||
--fp16 # if export TensorRT fp16 model
|
||||
```
|
||||
#### TensorRT image infer
|
||||
|
||||
``` shell
|
||||
# cuda-python infer script
|
||||
python ./deploy/end2end_ppyoloe/cuda-python.py ppyoloe_crn_s_300e_coco.engine
|
||||
# cupy infer script
|
||||
python ./deploy/end2end_ppyoloe/cupy-python.py ppyoloe_crn_s_300e_coco.engine
|
||||
# if you want to try ppyoloe-s-400e model
|
||||
python ./deploy/end2end_ppyoloe/cuda-python.py ppyoloe_crn_s_400e_coco.engine
|
||||
# or
|
||||
python ./deploy/end2end_ppyoloe/cuda-python.py ppyoloe_crn_s_400e_coco.engine
|
||||
```
|
||||
Reference in New Issue
Block a user