参考:
【Yolov5-TensorRT】pt 参数文件转 wts_yolov5s tenssort将.pt转为.wts-CSDN博客
需要下载总的运行代码(为了防止报错,直接参考↑ 下载完整的代码↓)
https://github.com/ultralytics/yolov5
GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
然后下载转换相关的内容,放在上面总文件夹下(与utils文件夹放在同一位置)
步步为赢/tensorrt-yolov5 - Gitee.com
import torch
import struct
from utils.torch_utils import select_device
# Initialize
device = select_device('cpu')
# 加载原始的.pt
model = torch.load('D:/pythonProject/deepsort/yolov5-deepsort/weights/01-1.pt',
map_location=device)['model'].float() # load to FP32
model.to(device).eval()
f = open('yolov8pose2.weights', 'w') #生成的weights文件位置
f.write('{}\n'.format(len(model.state_dict().keys())))
for k, v in model.state_dict().items():
vr = v.reshape(-1).cpu().numpy()
f.write('{} {} '.format(k, len(vr)))
for vv in vr:
f.write(' ')
f.write(struct.pack('>f',float(vv)).hex())
f.write('\n')
运行成功: