用yolo获取车辆位置代码示例
时间: 2024-09-21 21:10:51 浏览: 42
yolo入门简介.docx
YOLO(You Only Look Once)是一种流行的实时物体检测算法,用于定位图像中的目标。以下是使用Python中的Darknet框架(YOLO的一个实现)获取车辆位置的基本步骤,这里假设你已经安装了YOLO库并有训练好的模型:
```python
import cv2
from yolov5.yolov5 import YOLOv5
# 加载预训练模型
model = YOLOv5('yolov5s') # 更改路径到你的YOLO模型文件,如'yolov5s.yaml'和'weights/yolov5s.pt'
# 读取图片或摄像头流
img = cv2.imread('car.jpg') # 替换为你需要检测的图片路径
if img is None:
cap = cv2.VideoCapture(0) # 使用摄像头作为输入
while True:
# 进行实时检测
result = model.detect(img)
# 如果检测到车辆
if len(result) > 0:
for detection in result:
x, y, w, h = detection['bbox'] # 获取车辆框的位置信息 (左上角坐标x, y, 宽度w, 高度h)
vehicle_position = (int(x), int(y), int(w), int(h)) # 转换为整数
print("Vehicle position: ", vehicle_position)
# 显示处理后的图像
cv2.imshow('Object Detection', img)
# 按 'q' 键退出
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放资源
cap.release()
cv2.destroyAllWindows()
```
阅读全文