Skip to content

Latest commit

 

History

History
104 lines (64 loc) · 4.07 KB

README.md

File metadata and controls

104 lines (64 loc) · 4.07 KB

Logo

Real-time Detection of Personal-Protective-Equipment (PPE)

Demo

Table of Contents

  1. Introduction
  2. Implementation
  3. Dataset
  4. Pre-trained models
  5. Tutorials

Introduction

The repository presents Tensorflow 2.0 (Keras) implementation of real-time detection of PPE (e.g., hard hat, safety vest) compliances of workers. The detailed procedures can be found in the following paper.

Article

Deep Learning for Site Safety: Real-Time Detection of Personal Protective Equipment
Nipun D. Nath, Amir H. Behzadan, Stephanie G. Paal
Automation in Construction 112, pp. 103085

Please cite the article if you use the dataset, model or method(s), or find the article useful in your research. Thank you!

LaTeX citation:

@article{Nath2020, author = {Nipun D. Nath and Amir H. Behzadan and Stephanie G. Paal}, title = {Deep Learning for Site Safety: Real-Time Detection of Personal Protective Equipment}, journal = {Automation in Construction}, volume = {112}, year = {2020}, pages = {103085}

Implementation

Dependencies

  • tensorflow 2.0
  • numpy
  • opencv
  • matplotlib
  • pandas

Please follow the Detection-Example.ipynb notebook to test the models.

Dataset

Dataset statisctics

The dataset (named Pictor-v3) contains 774 crowd-sourced and 698 web-mined images. Crowd-sourced and web-mined images contain 2,496 and 2,230 instances of workers, respectively. The dataset is available here. A brief statistics of the dataset is shown in the following figure.

Dataset

Annotation example

@TODO: Please stay tuned!

Download the crowd-sourced dataset

The crowd-sourced images and annotated labels can be accessed from the corresponding subfolders in the dataset.

Methods/Approaches

The paper presents three different approaches for verifying PPE compliance:

Methods/Approaches

Approach-1: YOLO-v3-A1 model detects worker, hat, and vest (three object classes) individually. Next, ML classifiers (Neural Network, Decision Tree) classify each worker as W (wearing no hat or vest), WH (wearing only hat), WV (wearing only vest), or WHV (wearing both hat and vest).

Approach-2: YOLO-v3-A2 model localizes workers in the input image and directly classifies each detected worker as W, WH, WV, or WHV.

Approach-3: YOLO-v3-A3 model first detects all workers in the input image and then, a CNN-based classifier model (VGG-16, ResNet-50, Xception) was applied to the cropped worker images to classify the detected worker as W, WH, WV, or WHV.

Results

  • The mean-average-precision (mAP) of YOLO models in detecting classes:

Results

  • The overall mAP of verifying workers' PPE compliance:

Results

  • The best is Approach-2 (72.3% mAP).

Pre-trained Models

You can download the models trained on Pictor-v3 dataset from the "Models" folder in the dataset. These models include:

  • YOLO-v3-A1
  • YOLO-v3-A2
  • YOLO-v3-A3
  • ML Classifiers (Approach-1)
  • CNN Classifiers (Approach-3)

Tutorials

Please follow the notebooks in tutorials folder to learn more about:

  • building YOLO model from scratch using tensorflow 2.0
  • interpret YOLO output and convert to bounding boxes with class label and confidence score.

@TODO: Please stay tuned! More tutorials are coming soon.