In below code,
we first load the pre-trained face detection model using cv2.CascadeClassifier Then, we load the image we want to detect faces in and convert it to grayscale.
We then use the detectMultiScale function to detect faces in the grayscale image.
Finally, we draw rectangles around the detected faces and display the image with the detected faces using
cv2.imshow
Code for Face detection in Image
import cv2
# Load the pre-trained face detection model
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# Load the image you want to detect faces in
img = cv2.imread('image.jpg')
# Convert the image to grayscale
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Detect faces in the grayscale image using the face detection model
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# Draw rectangles around the detected faces
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2)
# Display the image with the detected faces
cv2.imshow('Detected Faces', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
Code for face detection using Video stream
import cv2
# Load the pre-trained face detection model
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# Open the video stream
cap = cv2.VideoCapture(0) # 0 for default camera, or a file path for a video file
while True:
# Read a frame from the video stream
ret, frame = cap.read()
# Convert the frame to grayscale
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# Detect faces in the grayscale frame using the face detection model
faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# Draw rectangles around the detected faces
for (x, y, w, h) in faces:
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
# Display the frame with the detected faces
cv2.imshow('Video Stream', frame)
# Stop the video stream by pressing 'q'
if cv2.waitKey(1) == ord('q'):
break
# Release the video stream and close all windows
cap.release()
cv2.destroyAllWindows()
The requirements.txt
file is used to list the required Python packages and their versions that your Python code needs to run. Here is an example requirements.txt
file that includes the packages required for the face detection code using OpenCV:
makefileopencv-python==4.5.4.58 numpy==1.22.2
In this example, we need OpenCV and NumPy packages to be installed. The version numbers mentioned in this file are optional, but it's always a good practice to include them, so that the specific versions of the packages are installed.
You can create a requirements.txt
file in the same directory where your Python code is, and run pip install -r requirements.txt
to install all the required packages at once
No comments:
Post a Comment