Showing posts with label 【PYTHON OPENCV】Face detection using haar feature-based cascade classifiers. Show all posts
Showing posts with label 【PYTHON OPENCV】Face detection using haar feature-based cascade classifiers. Show all posts

Wednesday, 14 April 2021

【PYTHON OPENCV】Face detection using haar feature-based cascade classifiers

 """

Face detection using haar feature-based cascade classifiers """ # Import required packages: import cv2 import numpy as np from matplotlib import pyplot as plt def show_img_with_matplotlib(color_img, title, pos): """Shows an image using matplotlib capabilities""" img_RGB = color_img[:, :, ::-1] ax = plt.subplot(2, 2, pos) plt.imshow(img_RGB) plt.title(title) plt.axis('off') def show_detection(image, faces): """Draws a rectangle over each detected face""" for (x, y, w, h) in faces: cv2.rectangle(image, (x, y), (x + w, y + h), (255, 0, 0), 5) return image # Load image and convert to grayscale: img = cv2.imread("test_face_detection.jpg") gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # Load cascade classifiers: cas_alt2 = cv2.CascadeClassifier("haarcascade_frontalface_alt2.xml") cas_default = cv2.CascadeClassifier("haarcascade_frontalface_default.xml") # Detect faces: faces_alt2 = cas_alt2.detectMultiScale(gray) faces_default = cas_default.detectMultiScale(gray) print(cv2.face.getFacesHAAR(img, "haarcascade_frontalface_alt2.xml")) retval, faces_haar_alt2 = cv2.face.getFacesHAAR(img, "haarcascade_frontalface_alt2.xml") faces_haar_alt2 = np.squeeze(faces_haar_alt2) retval, faces_haar_default = cv2.face.getFacesHAAR(img, "haarcascade_frontalface_default.xml") faces_haar_default = np.squeeze(faces_haar_default) # Draw face detections: img_faces_alt2 = show_detection(img.copy(), faces_alt2) img_faces_default = show_detection(img.copy(), faces_default) img_faces_haar_alt2 = show_detection(img.copy(), faces_haar_alt2) img_faces_haar_default = show_detection(img.copy(), faces_haar_default) # Create the dimensions of the figure and set title: fig = plt.figure(figsize=(10, 8)) plt.suptitle("Face detection using haar feature-based cascade classifiers", fontsize=14, fontweight='bold') fig.patch.set_facecolor('silver') # Plot the images: show_img_with_matplotlib(img_faces_alt2, "detectMultiScale(frontalface_alt2): " + str(len(faces_alt2)), 1) show_img_with_matplotlib(img_faces_default, "detectMultiScale(frontalface_default): " + str(len(faces_default)), 2) show_img_with_matplotlib(img_faces_haar_alt2, "getFacesHAAR(frontalface_alt2): " + str(len(faces_haar_alt2)), 3) show_img_with_matplotlib(img_faces_haar_default, "getFacesHAAR(frontalface_default): " + str(len(faces_haar_default)), 4) # Show the Figure: plt.show()

BREAKING: North Carolina automotive group acquires 7 Upstate dealerships

Breaking news from GSA Business Report Click here to view this message in a browser window. ...