/uniform-detection-using-YOLOv5

Korea Girls High School's Inappropriate Uniform Detection Service

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Uniform Detection Using YOLOv5



This repo is a project to detect students inappropriate uniforms using YOLOv5 🚀

Detect your uniform

Korean schools have rules for wearing neat school uniforms to school.However, some students go to school wearing school uniforms that are not neat or mended.Therefore, in Korean schools, student instructors often give penalty points to students who do not wear neat school uniforms.

We decided that this process was very subjective and wasted manpower, so we planned this project to replace it with the role of artificial intelligence. This project not only proposes artificial intelligence that replaces the role of the student instructor, but also proposes a service that can manage penalty points and attendance.

Considering the limitations of data collection, this project was carried out on the premise of certain conditions.
i) It's a girls' high school where skirts and shirts are school uniforms.
ii) Consider summer clothes only


Documentation

Proejct Structure

ERD

image

Model Performance

YOLOv5 🚀

Our model was trained with 1,500 data and exhibits stable performance. (mAP@0.5 : 0.940)
And We trained a total of 400 iterations using W&B, one of MLOps.

Members


Jaewoo Park

Hyunjin Lee

Minah Choi

Eunsu Shin
- Jaewoo Park (jerife@naver.com)
- Hyunjin Lee (shsan0324@gmail.com)
- Minah Choi (mina7245@gmail.com)
- Eunsu Shin (ses2201@g.hongik.ac.kr)

Usage

Installation with virtual environment

$ git clone https://github.com/hynjxn/Uniform-Detection-Using-YOLOv5.git
$ cd Uniform-Detection-Using-YOLOv5

$ conda create -n project python=3.9
$ conda activate project

# PyTorch installation process may vary depending on your hardware (1.7.0 <= pytorch <= 1.9.0)
$ conda install pytorch==1.9.0 torchvision==0.10.0 torchaudio==0.9.0 cpuonly -c pytorch
$ pip install -r requirements.txt

# Edit info.yaml to connect with your DB
$ vim info.yaml

You can set info.yaml as follow:

account:
  mysql:
    host: Input your DB host
    user: Input your id
    password: Input your PW
    db: Input your DB name
    charset: utf8mb4

Run

# Run with python
$ python wsgi.py 

# Run with gunicorn
$ gunicorn --bind 0.0.0.0:5000 wsgi:app