Skip to content
Menu
IT-DRAFTS
  • About
  • Privacy policy
IT-DRAFTS
February 27, 2025

project of face detection Python v.1

import cv2
import mediapipe as mp

# Initialize MediaPipe Face Mesh
mp_face_mesh = mp.solutions.face_mesh
face_mesh = mp_face_mesh.FaceMesh()

# Capture video from the webcam
cap = cv2.VideoCapture(0)

while True:
ret, frame = cap.read()
if not ret:
break

# Convert frame to RGB (MediaPipe requires RGB images)
rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)

# Process the frame to detect facial landmarks
results = face_mesh.process(rgb_frame)

if results.multi_face_landmarks:
for face_landmarks in results.multi_face_landmarks:
for landmark in face_landmarks.landmark:
# Get the x and y coordinates of each landmark
x = int(landmark.x * frame.shape[1]) # Scale to frame width
y = int(landmark.y * frame.shape[0]) # Scale to frame height
# Draw each landmark as a small green dot
cv2.circle(frame, (x, y), 1, (0, 255, 0), -1)

# Display the frame with detected landmarks
cv2.imshow(“Face Landmarks”, frame)

# Exit the loop if ‘q’ is pressed
if cv2.waitKey(1) & 0xFF == ord(‘q’):
break

# Release resources
cap.release()
cv2.destroyAllWindows()

 

Now explanation, this code detects faces in real-time using a webcam and identifies 68 facial landmarks (key points) on each detected face. It uses OpenCV for video capture and image processing, and Dlib for face detection and landmark prediction.

Step-by-Step Description

  1. Import Libraries:
    • cv2: OpenCV for video capture and image processing.
    • dlib: For face detection and facial landmark prediction.
  2. Load Models:
    • detector = dlib.get_frontal_face_detector(): Initializes Dlib’s face detector.
    • predictor = dlib.shape_predictor("shape_predictor_68_face_landmarks.dat"): Loads the pre-trained model for detecting 68 facial landmarks.
  3. Capture Video:
    • cap = cv2.VideoCapture(0): Starts capturing video from the default webcam.
  4. Main Loop:
    • The loop continuously reads frames from the webcam.
    • Converts each frame to grayscale (gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)) to improve face detection performance.
    • Detects faces in the grayscale frame using Dlib’s face detector (faces = detector(gray)).
  5. Detect Facial Landmarks:
    • For each detected face, the code predicts 68 facial landmarks using Dlib’s landmark predictor (landmarks = predictor(gray, face)).
    • Each landmark is drawn as a small green circle on the frame using cv2.circle.
  6. Display Results:
    • The frame with detected faces and landmarks is displayed in a window (cv2.imshow("Face Landmarks", frame)).
  7. Exit Condition:
    • The loop continues until the user presses the q key, at which point the program exits.
  8. Release Resources:
    • The webcam is released (cap.release()) and all OpenCV windows are closed (cv2.destroyAllWindows()).

Categories

  • 365
  • Active Directory
  • announcement
  • App-V
  • Artificial intelligence
  • AZURE
  • Cisco
  • Dell
  • en Français
  • Entra
  • GDPR
  • How its works
  • Intelligence Artificielle
  • juste des pensées
  • Licensing
  • Microsoft Product Name
  • Microsoft will end support
  • Migration
  • MS Teams
  • Network
  • new items
  • Office
  • OWASP
  • SAM
  • Security
  • Servers
  • Troubleshooting
  • Uncategorized
  • Updates
  • Virtualization
  • Windows10
  • Windows11

Archives

  • May 2025
  • February 2025
  • October 2024
  • September 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024

Recent Comments

No comments to show.

Recent Posts

  • How to- Azure Front Door with your Power Pages website (includes step by step)
  • Work around the OCSP validation issue in Azure Application Gateway
  • Windows 11 Insider Preview Build 27842
  • Microsoft will end support for App-V in 2026 (plan for migration to MSIX)
  • project of face detection Python v.1
©2025 IT-DRAFTS | Powered by WordPress and Superb Themes!