第一次写博客,先上opencv人脸识别代码:
import cv2
import sys
cascPath = “./haarcascade_frontalface_alt.xml”#附上opencv自带的人脸识别模块
faceCascade = cv2.CascadeClassifier(cascPath)#调用函数
video_capture = cv2.VideoCapture(0, cv2.CAP_DSHOW)#打开摄像头
while True:
# 捕获每一帧的图像
ret, frame = video_capture.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces = faceCascade.detectMultiScale(
gray,
scaleFactor=1.1,
minNeighbors=3,
minSize=(30, 30),
flags=cv2.CASCADE_SCALE_IMAGE # 这里是opencv版本的问题,3.0以上的版本
)
# 在人脸的周围画上矩形
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
# 显示结果的每一帧
cv2.imshow(‘Video’, frame)
if cv2.waitKey(1) & 0xFF == ord(‘q’):
break
#布置关闭摄像头函数
video_capture.release()
cv2.destroyAllWindows()