YOLOv8 ONNX
时间: 2023-11-28 09:46:11 浏览: 268
YOLOv8s+YOLOv9c的onnx文件
YOLOv8是一种基于ONNX的目标检测模型,其结构类似于YOLOv5,但是在性能和精度方面有所提升。下面是使用ONNX进行YOLOv8模型推理的步骤:
1.从YOLOv8开源地址下载预训练模型,由于测试在CPU上进行,就只下载最小的YOLOv8n模型。
2.使用ONNX Runtime进行模型推理。首先,需要将输入图像转换为模型所需的格式,然后将其传递给模型进行推理。最后,将输出结果进行处理,提取出bbox置信度。
下面是一个使用ONNX Runtime进行YOLOv8模型推理的Python代码示例:
```python
import onnxruntime as ort
import numpy as np
import cv2
# 加载模型
model_path = 'yolov8n.onnx'
sess = ort.InferenceSession(model_path)
# 加载图像
img_path = 'test.jpg'
img = cv2.imread(img_path)
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
img = cv2.resize(img, (640, 640))
img = img.transpose(2, 0, 1)
img = np.expand_dims(img, axis=0).astype(np.float32)
# 进行推理
outputs = sess.run(None, {'input': img})
# 后处理
output = outputs[0]
output = output.reshape((1, 8400, 85))
confidences = output[:, :, 4:5] * output[:, :, 5:]
max_confidences = np.max(confidences, axis=-1)
```
阅读全文