人脸跟踪代码
要实现人脸跟踪,可以使用OpenCV库中的人脸识别功能。以下是一个简单的示例代码:
import cv2
# 加载人脸识别器
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# 打开摄像头
cap = cv2.VideoCapture(0)
while True:
# 读取摄像头帧
ret, frame = cap.read()
# 将帧转换为灰度图像
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# 检测人脸
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# 在人脸周围绘制矩形框
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
# 显示图像
cv2.imshow('Face Tracking', frame)
# 按下“q”键退出循环
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放摄像头和销毁窗口
cap.release()
cv2.destroyAllWindows()
在上述代码中,首先加载了一个预训练的人脸识别器(haarcascade_frontalface_default.xml)。然后,通过打开摄像头来获取视频帧。每一帧都会被转换为灰度图像,并使用人脸识别器检测人脸。最后,通过在人脸周围绘制矩形框来标记人脸,并在窗口中显示图像。
注意:为了使代码正常运行,你需要提前下载并将人脸识别器的XML文件(haarcascade_frontalface_default.xml)放置在与代码相同的目录下。你可以从OpenCV的GitHub存储库中找到该文件
原文地址: https://www.cveoy.top/t/topic/ibdJ 著作权归作者所有。请勿转载和采集!