OpenCV Face Detection with Haar Cascades

  • Share this:

Code introduction


This function uses the Haar feature classifier in the OpenCV library for face recognition and draws rectangles on the input image.


Technology Stack : OpenCV, Numpy

Code Type : Image processing

Code Difficulty : Intermediate


                
                    
def face_recognition(image_path, face_cascade_path):
    import cv2
    import numpy as np

    # Load the face cascade
    face_cascade = cv2.CascadeClassifier(face_cascade_path)

    # Read the image
    image = cv2.imread(image_path)
    gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

    # Detect faces in the image
    faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))

    # Draw rectangles around the faces
    for (x, y, w, h) in faces:
        cv2.rectangle(image, (x, y), (x+w, y+h), (255, 0, 0), 2)

    # Return the image with face rectangles
    return image                
              
Tags: