图片识别人脸
import cv2
img = cv2.imread("./xb1.jpg")
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
face_cascade = cv2.CascadeClassifier("D:\pycharm\opencv-master\data\haarcascades\haarcascade_frontalface_default.xml")
faces = face_cascade.detectMultiScale(
gray,
scaleFactor=1.15,
minNeighbors=3,
minSize=(5, 5))
for(x, y, w, h) in faces:
cv2.rectangle(img, (x, y),(x+w, y+h), (0, 255, 0), 2)
cv2.imshow('img', img)
cv2.waitKey(0)
摄像头识别人脸
import cv2
cap = cv2.VideoCapture(0)
face_cascade = cv2.CascadeClassifier("D:\pycharm\opencv-master\data\haarcascades\haarcascade_frontalface_default.xml")
while(True):
ret, frame = cap.read()
faces = face_cascade.detectMultiScale(
frame,
scaleFactor=1.15,
minNeighbors=5,
minSize=(5, 5))
for(x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
cv2.imshow('Face Recognition', frame)
if cv2.waitKey(1) & 0xff == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
识别视频中的人脸
import cv2
import datetime as dt
from time import sleep
cap = cv2.VideoCapture("./dl.mp4")
face_cascade = cv2.CascadeClassifier("D:\pycharm\opencv-master\data\haarcascades\haarcascade_frontalface_default.xml")
while(True):
if not cap.isOpened():
print('Unable to load camera.')
sleep(5)
pass
ret, frame = cap.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
print(gray)
faces = face_cascade.detectMultiScale(
frame,
scaleFactor=1.15,
minNeighbors=5,
minSize=(5, 5))
for(x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
cv2.resizeWindow('Video', 500, 500)
cv2.imshow('Video', frame)
if cv2.waitKey(60) & 0xff == ord('q'):
break
cap.release()
cv2.destroyAllWindows()