21xrx.com
2024-09-19 23:59:31 Thursday
登录
文章检索 我的文章 写文章
OpenCV行人检测代码:轻松实现安全监控
2023-11-10 17:46:52 深夜i     --     --
OpenCV 行人检测 代码 安全监控 轻松实现

在当今科技高度发达的社会中,安全成为了人们关注的重点。而对于大型场所的安全监控来说,行人检测成为了一项必不可少的技术。OpenCV作为一个开源的计算机视觉库,提供了简单易用的行人检测代码,可以帮助我们轻松实现安全监控。

首先,我们需要安装OpenCV库并导入相关模块。OpenCV可以通过pip安装,命令行中输入"pip install opencv-python"即可安装。导入模块的代码如下:

python

import cv2

import numpy as np

接下来,我们需要加载训练好的行人检测模型。OpenCV提供了一个预训练好的行人检测器,可以直接使用。加载模型的代码如下:

python

# 加载行人检测器

body_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_fullbody.xml')

然后,我们需要从视频或摄像头中获取帧,并对每一帧进行行人检测。对视频文件进行行人检测的代码如下:

python

# 加载视频

cap = cv2.VideoCapture('video.mp4')

while cap.isOpened():

  ret, frame = cap.read()

  if not ret:

    break

  # 转换为灰度图像

  gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

  # 行人检测

  bodies = body_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))

  # 绘制矩形框标记行人

  for (x, y, w, h) in bodies:

    cv2.rectangle(frame, (x, y), (x + w, y + h), (255, 0, 0), 2)

  # 显示结果

  cv2.imshow("Pedestrian Detection", frame)

  # 按下q键退出

  if cv2.waitKey(1) & 0xFF == ord('q'):

    break

cap.release()

cv2.destroyAllWindows()

通过上述代码,我们可以轻松地检测行人并在视频中标记出来。代码中的"video.mp4"可以替换为实际的视频文件名,如果要从摄像头中实时获取帧,则可以将该行代码修改为"cap = cv2.VideoCapture(0)"。

此外,行人检测代码还可以进行一些参数的调节。scaleFactor表示每次图像大小减小的比例,minNeighbors表示每个候选矩形应该保留多少个邻居,minSize表示检测目标的最小尺寸。通过调整这些参数,可以适应不同场景的行人检测需求。

综上所述,使用OpenCV行人检测代码,我们可以轻松实现安全监控。通过加载训练好的行人检测模型,从视频或摄像头中获取帧并进行行人检测,我们可以实时地对行人进行监控,提升安全水平。此外,我们还可以根据实际需求调整行人检测的参数,以适应不同场景的需求。OpenCV行人检测代码的简单易用性,使得安全监控变得更加简单高效。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复