Skip to content

About

Sistema de Detección de Fatiga Facial en Tiempo Real

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

👁️ Sistema de Detección de Fatiga Facial en Tiempo Real

Este proyecto utiliza visión por computadora para monitorear el estado de alerta de una persona mediante la cámara web. Detecta ojos cerrados, bostezos, ceño fruncido y pérdida de rostro, activando alarmas visuales y sonoras cuando se detecta fatiga prolongada.

Ideal para:

  • Sistemas de alerta de somnolencia al volante (simulación)
  • Monitoreo de atención en entornos educativos o laborales
  • Proyectos de arte interactivo o biofeedback

🚀 Características

✅ Versión 3.0 (2026) — Funcionalidades actuales

  • Detección robusta de ojos mediante Eye Aspect Ratio (EAR)
  • Calibración automática del umbral EAR al inicio (se adapta a cada usuario)
  • Detección avanzada de fatiga:
    • Bostezos (apertura de boca)
    • Ceño fruncido (estrés/fatiga)
  • Modo "Conducción": desactiva alarmas si el usuario gira la cabeza (mirando a los lados)
  • Ajuste por iluminación: sensibilidad adaptativa según brillo ambiental
  • Alarma dual: sonora (con pygame) + visual (parpadeo rojo en pantalla)
  • Registro automático: guarda eventos en eye_detection_log.csv
  • Interfaz intuitiva: contornos de ojos/boca, indicadores de estado y métricas en tiempo real

🌟 Version 2.0 (2026) - Otras Mejoras

  • Ajuste dinámico del umbral EAR
  • En lugar de usar un valor fijo (0.25), calcula el EAR promedio cuando los ojos están abiertos al inicio y ajusta el umbral automáticamente (útil si hay diferencias entre usuarios).
  • Visualización mejorada
  • Dibuja contornos alrededor de los ojos (no solo puntos).
  • Muestra el valor actual de EAR en pantalla.
  • Usa colores o iconos intuitivos (🟢/🔴).
  • Alarma visual + sonora
  • Además del sonido de alarma, parpadea la pantalla o muestra un mensaje grande en rojo.
  • Guardar logs o estadísticas

Guarda en un archivo .csv:

  • Momentos en que se activó la alarma
  • Duración de ojos cerrados
  • Tiempo total sin rostro

🔮 Próximas mejoras (en desarrollo)

  • Soporte para múltiples personas
  • Reemplazo de dlib por MediaPipe (más rápido y ligero)
  • Grabación automática de clips al activar alarma
  • Interfaz gráfica (PyQt/Tkinter) con ajustes en tiempo real
  • Notificaciones remotas (Telegram, correo, IFTTT)

💫 Toque personal

  • Diseño visual inspirado en naturaleza y retro-futurismo
  • Sonidos ambientales suaves (opcional)
  • Modo "meditación": inversión del propósito (cuenta tiempo con ojos cerrados intencionadamente)

⚙️ Requisitos

Dependencias de Python

opencv-python
dlib
pygame
numpy
scipy

📥 Instalación y ejecución

# 1. Crear y activar entorno virtual (recomendado)
python3 -m venv eyes-env
source eyes-env/bin/activate  # En Windows: eyes-env\Scripts\activate

# 2. Instalar dependencias
pip install opencv-python dlib pygame numpy scipy

# 3. Descargar el modelo de dlib
curl -O http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2
bunzip2 shape_predictor_68_face_landmarks.dat.bz2

# 4. Añadir tu archivo de alarma (ej. alarm.wav) en esta carpeta

# 5. Ejecutar (usa la versión más reciente)
python detect-eyes-v3.py

💡 Nota: Durante los primeros 3 segundos, mira a la cámara con los ojos abiertos para calibrar el sistema.


🎮 Controles

  • q / Q / ESC: salir del programa

📂 Estructura del proyecto

.
├── detect-eyes.py             # Script en primera version con logica basica
├── detect-eyes-v2.py          # Script con mejoras
├── detect-eyes-v3.py          # Script principal (versión actual)
├── shape_predictor_68_face_landmarks.dat  # Modelo de dlib
├── alarm.wav                  # Sonido de alarma (personalizable)
└── eye_detection_log.csv      # Registro automático de eventos

📜 Licencia

MIT License — libre para uso personal, educativo o comercial.


🙌 Autor

Desarrollado con ❤️ por Natxo Varona
Febrero 2026


✨ Consejo: ¡Personaliza alarm.wav con tu sonido favorito o un audio relajante para hacer la experiencia más amigable!


About

Sistema de Detección de Fatiga Facial en Tiempo Real

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages