应用篇#1:YOLOv8模型在Windows电脑摄像头上的部署
一、前言
如何部署YOLOv8模型在摄像头上是完成模型应用必须解决的问题,通过使用“cv2”这个库,可以完成对电脑摄像头的调用(本人Windows联想),实时检测并输出图像。
二、代码实现与解读
import warnings
import cv2
from ultralytics import YOLO# 忽略警告
warnings.filterwarnings('ignore')# 初始化 YOLO 模型
model = YOLO('yolov8n.pt') # 替换为你自己的模型路径# 打开摄像头
cap = cv2.VideoCapture(0) # 0表示默认摄像头,若有多个摄像头可更改为其他编号if not cap.isOpened():print("无法打开摄像头")exit()while True:# 捕获每一帧ret, frame = cap.read()if not ret:print("无法获取摄像头帧")break# 使用 YOLO 模型进行预测results = model(frame)# 获取检测结果(results 是一个列表,取第一个元素)result = results[0]# 渲染检测结果frame = result.plot() # 绘制检测框# 显示摄像头画面和检测结果cv2.imshow('YOLOv8 Detection', frame)# 按 'q' 键退出if cv2.waitKey(1) & 0xFF == ord('q'):break# 释放资源
cap.release()
cv2.destroyAllWindows()
三、小结
除了电脑摄像头以外的其他摄像头也可以调用。此后修改“model=……”的内容就可以修改模型为自己训练的或者其他模型了。
本地部署是最简单的一种,也是真正学会部署前的基础的基础。此后还需要学习在一些单片机等算力、存储空间有限的平台部署,可能需要进行量化等操作。只有将YOLO模型烧录到单片机中并成功调用、返回,才算真正学会部署。