Skip to content

Latest commit

 

History

History
32 lines (23 loc) · 1.83 KB

model_export.md

File metadata and controls

32 lines (23 loc) · 1.83 KB

English | 简体中文

模型导出

您可以使用 tensorrt_yolo 自带的 CLI 工具 trtyolo 导出 ONNX 模型,并使用 EfficientNMS 插件进行后处理。您可以使用命令 trtyolo export --help 查看具体的导出命令。

对于导出 PP-YOLOE 和 PP-YOLOE+ 的 ONNX 模型,仅会修改 batch 维度,heightwidth 维度不会更改。您需要在 PaddleDetection 中进行设置,默认为 640

YOLOv6, YOLOv7, YOLOv9 官方仓库提供带 EfficientNMS 插件的 ONNX 模型导出, 这里不再二次提供。

# 导出使用远程仓库的 yolov3
trtyolo export -w yolov3.pt -v yolov3 -o output

# 导出使用本地仓库的 yolov5
trtyolo export -w yolov5s.pt -v yolov5 -o output --repo_dir your_local_yolovs_repository

# 使用 ultralytics 训练的 yolo 系列模型 (yolov3, yolov5, yolov6, yolov8, yolov9),并指定 EfficientNMS 插件参数, 以动态 batch 导出
trtyolo export -w yolov8s.pt -v ultralytics -o output --max_boxes 100 --iou_thres 0.45 --conf_thres 0.25 -b -1

# PP-YOLOE, PP-YOLOE+
trtyolo export --model_dir modeldir --model_filename model.pdmodel --params_filename model.pdiparams -o output

导出的 ONNX 模型可以使用 trtexec 工具导出 TensorRT 模型。

# 静态 batch
trtexec --onnx=model.onnx --saveEngine=model.engine --fp16
# 动态 batch
trtexec --onnx=model.onnx --saveEngine=model.engine --minShapes=images:1x3x640x640 --optShapes=images:4x3x640x640 --maxShapes=images:8x3x640x640 --fp16