- Leidy Daniela Londoño
- Danna Valentina
- Isabella Huila
Este proyecto es un sistema completo para la detección y clasificación de actividades humanas en videos, utilizando técnicas de visión por computadora y aprendizaje automático. El sistema incluye módulos para la recolección de datos, extracción de características, anotación de videos, preprocesamiento de datos, entrenamiento de modelos y una interfaz para detección en tiempo real.
- Grabación de videos: Captura de videos de actividades humanas con metadatos integrados.
- Anotación flexible: Soporte para anotación.
- Extracción de poses: Detección de landmarks corporales usando MediaPipe.
- Procesamiento de datos: Suavizado de landmarks y extracción de características de movimiento.
- Modelos de ML: Entrenamiento de múltiples modelos (Random Forest, SVM, XGBoost) con selección automática del mejor.
VideoRecorder: Graba videos de actividades con etiquetas integradas.VideoAnnotator: Herramienta para anotar videos con diferentes métodos.PoseExtractor: Extrae landmarks corporales y características derivadas.DataProcessor: Preprocesa y prepara los datos para entrenamiento.ActivityClassifierTrainer: Entrena y evalúa modelos de clasificación.RealTimeActivityClassifier: Clasifica actividades en tiempo real.
- Clona el repositorio:
https://github.com/DaniLond/motionClassifier.git
- Instala las dependencias:
pip install -r requirements.txt
- Pipeline completo
Ejecuta el pipeline completo (recolección de datos, procesamiento, entrenamiento):
python src/train_model.py
- Demo en tiempo real
python src/demo.py --model models/best_activity_classifier.pkl
El sistema puede detectar las siguientes actividades:
-
walk_forward: Caminar hacia adelante
-
walk_back: Caminar hacia atrás
-
turn: Girar
-
sit: Sentarse
-
stand: Pararse