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()