🎯 OpenCV目标检测教程
什么是目标检测?
目标检测是计算机视觉中的核心任务之一,旨在识别图像或视频中的特定对象并标注其位置。OpenCV提供了多种预训练模型和API,可快速实现这一功能。
快速入门步骤
安装OpenCV
使用pip安装最新版本:pip install opencv-python
⚠️ 注意:若需更高级功能,建议安装
opencv-contrib-python
扩展包。加载预训练模型
以YOLOv3为例,使用以下代码加载模型:import cv2 net = cv2.dnn.readNet("yolov3.weights", "yolov3.cfg")
读取并处理图像
img = cv2.imread("test.jpg") blob = cv2.dnn.blobFromImage(img, 1/255.0, (416,416), swapRB=True, crop=False)
执行检测
net.setInput(blob) layer_names = net.getUnconnectedOutLayersNames() detections = net.forward(layer_names)
绘制检测框
遍历检测结果并标注目标:for detection in detections: for obj in detection: if obj[4] > 0.5: # 置信度阈值 x1, y1, x2, y2 = map(int, obj[5:9]) cv2.rectangle(img, (x1, y1), (x2, y2), (0,255,0), 2)
常见应用场景
- 安防监控:实时识别可疑行为
- 自动驾驶:检测行人、车辆等交通元素
- 工业质检:定位缺陷区域