Detecta tu cara ,ojos o sonrisa a tiempo real utilizando la webcam en Python

Para detectar tu cara utilizando la webcam en Python, puedes utilizar una biblioteca de procesamiento de imágenes como OpenCV

instalación:

pip install opencv-python

Este script utiliza el clasificador pre-entrenado de Haar Cascade de OpenCV para detectar caras en tiempo real. El script abre una ventana de video que muestra la salida de la webcam, con un rectángulo verde dibujado alrededor de cualquier cara detectada en la imagen. Puedes ajustar los parámetros scaleFactor, minNeighbors y minSize para obtener mejores resultados de detección según tus necesidades.

Este script detecta la cara, para cambiarlo cambia la linea ‘haarcascade_frontalface_default.xml’ por haarcascade_smile.xml o haarcascade_eye.xml:

import cv2

# Cargamos el clasificador de Haar Cascade pre-entrenado para detectar caras
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')

# Inicializamos la captura de video desde la cámara
video_capture = cv2.VideoCapture(0)

while True:
    # Capturamos un fotograma de video
    ret, frame = video_capture.read()

    # Convertimos la imagen a escala de grises para la detección de caras
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # Detectamos las caras en la imagen en escala de grises utilizando el clasificador de Haar Cascade
    faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))

    # Dibujamos un rectángulo alrededor de cada cara detectada
    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)

    # Mostramos el resultado en una ventana
    cv2.imshow('Video', frame)

    # Esperamos a que se presione la tecla 'q' para salir del bucle
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# Liberamos los recursos utilizados por la cámara y la ventana
video_capture.release()
cv2.destroyAllWindows()