JimeFioni / ELAS-Proyect

El proyecto de Reconocimiento de Emociones fue pensado para variadas utilidades; en este caso lo planteamos en el Aula teniendo como objetivo principal analizar y comprender el estado emocional de los estudiantes durante una clase específica, y conocer como se relaciona éste estado emocional con la comprensión de lo enseñado .

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Proyecto Data-BI/ Machine Learning: Reconocimiento de Emociones 🤖

Python Pandas Azure GitHub Actions Apache Spark OpenCV Power Bi

Descripcion 🤖

El proyecto de Reconocimiento de Emociones fue pensado para variadas utilidades; en este caso lo planteamos en el Aula teniendo como objetivo principal analizar y comprender el estado emocional de los estudiantes durante una clase específica, y conocer como se relaciona éste estado emocional con la comprensión de lo enseñado y los resultados finales en las calificaciones. Pudiendo ser un modelo de Machine Learning que ayude a mejorar el proceso de apredizaje. Para lograr esto, se propone grabar las interacciones en el aula y extraer datos relevantes sobre las emociones expresadas por los estudiantes.

Objetivos 🤖

  • Grabar sesiones de clase para capturar la interacción y las expresiones emocionales de los estudiantes.
  • Analizar los datos recopilados para identificar patrones de emociones dentro del aula.
  • Utilizar técnicas de análisis de datos para comprender cómo las emociones afectan el rendimiento y la participación de los estudiantes.
  • Proponer recomendaciones o intervenciones basadas en los hallazgos para mejorar el ambiente emocional y el aprendizaje en el aula.

Estructura del proyecto 🤖

  • data: Contiene los datos utilizados en el proyecto.
    • imagenes: Imágenes utilizadas para el reconocimiento de emociones.
    • pruebas: Contiene videos de las clases grabadas y los resultados del análisis.
      • reconocidos: Imágenes reconocidas por el modelo.
      • emociones: Imágenes clasificadas por emociones.
    • resultados: Resultados del análisis de datos.
  • modelos: Contiene los modelos entrenados utilizados en el proyecto.
  • src: Contiene los archivos fuente del proyecto.
    • Archivos .py para la captura de imágenes, entrenamiento del modelo y pruebas.

Instalacion y uso 🤖

  1. Clona este repositorio en tu maquina local
git clone https://github.com/tu-usuario/s14-26-ft-data-bi.git
  1. Crea tu entorno virtual
python3 -m venv env
  1. Activa el entorno virtual
    • En wimdows
    venv\Scripts\activate
    
    • En macOS y Linux
    source venv/bin/activate
    
  2. Instala las dependencias del proyecto
pip install -r requirements.txt
  1. Crea la carpeta pruebas en el directorio data, en esta carpeta subiras todos los videos
mkdir pruebas
  1. Dentro de la carpeta pruebas crearas la carpeta emociones y reconocidos que seran donde se guardaran las imagenes que se necesitan para entrenar el modelo a partir de los videos
mkdir emociones
mkdir reconocidos

Proceso de Creación 🤖

Se utilizaron diferentes videos y datos para entrenar al modelo, comenzando por un dataset de Kaggle con imagenes de emociones que puedes encontrarlo en el siguiente enlace Link
Una vez creado el modelo con la librería Open CV, se utilizó el framework Flet para la creación de una interfaz amigable y fácil de utilizar por el usuario en una escuela por ejemplo; tratando los archivos como locales a fin de lograr mantener privacidad en los datos. Aqui una demostración de su funcionamiento.

Alt text


Para el análisis de los datos de emociones recolectados por el Modelo, hemos utilizado el servicio en la nube de Azure, con variadas herramientas. Si bien, en una aplicación real debería poder utilizarse sólo Azure Storage y Azure Synapse Analytics. Hemos aprovechado la instancia de proyecto para probar herramientas como Azure Data Factory, Databricks, Apache Spark con lenguaje Pyspark para alhunas consultas y transformaciónes en los datos a finde llegar a Azure Synapse para su conexión e ingesta de datos a travès de Power Bi

En la carpeta data/proceso_deploy pueden verse imágenes de cada paso en el proceso y de las consultas realizadas para la transformación e ingesta de datos, aquí el Enlace



Contribución 🤖

¡Se agradecen las contribuciones! Si deseas colaborar en el proyecto, por favor sigue estos pasos:

  1. Crea una nueva rama (git checkout -b feature/nueva-caracteristica).
  2. Realiza tus cambios y haz commit de ellos (git commit -am 'Añade nueva característica').
  3. Haz push de tu rama (git push origin feature/nueva-caracteristica).
  4. Abre un Pull Request y describe tus cambios detalladamente.

Contacto 🤖

Integrantes Rol Contacto
Jimena Fioni Data Analyst GitHub LinkedIn
Jorge Henriquez Novoa ML Engineer GitHub LinkedIn
Hernán Hernández Data Engineer GitHub LinkedIn

About

El proyecto de Reconocimiento de Emociones fue pensado para variadas utilidades; en este caso lo planteamos en el Aula teniendo como objetivo principal analizar y comprender el estado emocional de los estudiantes durante una clase específica, y conocer como se relaciona éste estado emocional con la comprensión de lo enseñado .


Languages

Language:Jupyter Notebook 71.8%Language:Python 28.2%