El proposito de este repositorio es almacenar el código utilizado para entrenar un modelo personalizado de YOLOv4 entrenado con un dataset que contiene fotos de personas con y sin cubrebocas, así como almacenar el código de la parte de Front-End del mismo.
Para entrenar este modelo, primero es necesario descargar el dataset de Detección de cubrebocas de Kaggle. Este archivo, llamado archive.zip
se deberá colocar dentro del directorio Proyecto Sana Distancia/Data/
.
Una vez realizado este proceso, es necesario subir la carpeta Proyecto Sana Distancia
a la raíz de una unidad personal de Google Drive. Este paso es fundamental debido a que la Notebook en Google Colab monta una unidad de Google Drive para poder extraer la información para entrenar el modelo.
Una vez realizados estos pasos, simplemente se deberá de correr la Notebook en su totalidad para poder entrenar el modelo. La Notebook contiene información más detallada acerca del proceso de entrenamiento y la exploración de los datos utilizados.
Al terminar el entrenamiento, para poder utilizar el modelo personalizado, es necesario descargar los weights y el archivo de configuración utilizados en el modelo. Se recomienda que para los pesos se utilice el archivo ya incluido en este repositorio llamado yolov4-obj_last_1.weights
que se encuentra dentro de la carpeta de backup.
Streamlit es un framework para python que permite crear aplicaciones web de manera rápida sin la necesidad de especificar un backend/frontend. Todo se define a través de declaraciones en python.
Para instalar y correr la aplicación crear un venv e instalar las dependencias (requirements.txt) usando pip.
Estando dentro de este directorio. Para crear un ambiente virtual:
python -m venv venv
Para instalar las dependencias
pip install -r requirements.txt
Una vez instaladas, la aplicación se ejecuta:
streamlit run app.py
Algunos vídeos de prueba:
-Verificar tener instalado la versión más actualizada de Microsoft Visual C++ 14, de igual forma puedes consultar a detalle ese problema a través de esta liga de apoyo