请给我一段完整的python程序,要求使用yolov5s训练好的best模型对一张图片进行检测,并显示检测结果。
时间: 2023-06-25 21:01:52 浏览: 56
好的,以下是一段使用yolov5s训练好的best模型对一张图片进行检测并显示结果的Python程序:
```python
import torch
import cv2
import numpy as np
from PIL import Image
# 加载模型
model = torch.hub.load('ultralytics/yolov5', 'yolov5s')
# 读取图片
img = Image.open('test.jpg')
# 转成numpy数组
img = np.array(img)
# 进行检测
results = model(img)
# 获取检测结果
results.print()
results.show()
# 显示检测结果
img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)
for result in results.xyxy[0]:
x1, y1, x2, y2, conf, cls = result
x1, y1, x2, y2 = int(x1), int(y1), int(x2), int(y2)
cv2.rectangle(img, (x1, y1), (x2, y2), (0, 255, 0), 2)
cv2.putText(img, f'{cls}:{conf:.2f}', (x1, y1 - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.7, (0, 0, 255), 2)
cv2.imshow('result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
需要注意的是,这段代码中需要安装以下库:
- torch
- cv2
- numpy
- PIL
- ultralytics/yolov5
其中,ultralytics/yolov5可以使用以下命令安装:
```
pip install git+https://github.com/ultralytics/yolov5.git
```
同时,需要将代码中的'test.jpg'替换成实际的图片路径。