Python opencv 输入视频进行人脸识别,基于opencv开源的已训练好的人脸xml
import numpy as np
import cv2
# 调用xml,可前往github下载:[下载](https://github.com/opencv/opencv/tree/master/data/haarcascades)
face_cascade = cv2.CascadeClassifier('/Users/anker/Desktop/haarcascade_frontalface_default.xml')
cap = cv2.VideoCapture('/Users/anker/Desktop/test/test5.mp4') # 打开视频:我这里的事MacOS环境,win环境自解。
while True:
ret, img = cap.read()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2)
[height, width, pixels] = img.shape # 获取图片大小
# print(height,width,pixels)
new_img = cv2.resize(img, (int(width / 3), int(height / 3)), interpolation=cv2.INTER_CUBIC) # 缩小图像
cv2.imshow('img', new_img)
if cv2.waitKey(25) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
只加入了对人脸的识别,没有眼睛,鼻子等~
欢迎更多同学回复交流~