缘由
最近观察发现,深度学习的例子有很多,但是模型的转换总是有很多问题,没有一个标准的转换方法。有的是直接用YOLO里面自带的export.py进行转换,也有的人利用TensorRT里面的bin文件夹的trtexec.exe转换,结果两种转换之后的格式不一样。所以最近就整理了网上的转换办法,借鉴了一些大佬的经验,写出了转换脚本,以记录。
转换流程
- (1)如果是YOLO的
export.py文件直接可以将.pt转换为.engine或者.trt。 - (2)如果是
trtexec.exe转换的话,就需要先转为.onnx中间模型,在转换为.engine
/usr/src/tensorrt/bin/trtexec --onnx=yolov8n.onnx --saveEngine=yolov8n.engine --fp16
或者(FP16类型)
/usr/src/tensorrt/bin/trtexec --onnx=yolov8n.onnx --saveEngine=yolov8n.trt --fp16
说明:英伟达只有显卡算力在6.2以上的才支持INT8量化。
- (3)脚本转换
使用polygraphy工具,个人