Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ferasaljoudi/driverdrowsinessdetection

Driver Drowsiness Detection using Machine Learning
https://github.com/ferasaljoudi/driverdrowsinessdetection

drowsiness-detection keras-tensorflow machine-learning matplotlib numpy pandas python pytorch tensorflow

Last synced: 7 days ago
JSON representation

Driver Drowsiness Detection using Machine Learning

Awesome Lists containing this project

README

        


Class Schedules


This project was developed as part of ENSE-412, a Machine Learning course within my engineering degree program. The Driver Drowsiness Detection System showcases the application of skills and knowledge acquired through my studies, reflecting a comprehensive approach to enhancing road safety by addressing the critical issue of driver fatigue.




Overview


This repository contains all the necessary components of the Driver Drowsiness Detection. This project aimed to enhancing road safety by identifying signs of driver fatigue through image analysis. Utilizing machine learning algorithms and deep learning techniques, this system detects key fatigue indicators such as closed eyes and yawning.




Demo



Demo Gif




Technologies Used


Languages



Python

Libraries and Frameworks



Pandas


Tensorflow


Numpy


Keras


Matplotlib


Pytorch




Contents


- DriverDrowsinessDetection.ipynb: Jupyter notebook detailing the model development process, including the exploration of machine learning algorithms like Random Forest, K-Nearest Neighbor (KNN), and Decision Trees, culminating in the implementation of a Convolutional Neural Network (CNN) using the VGG16 architecture.
- model.h5: The saved final CNN model that can be used for making predictions.
- index.html and app.py: Files constituting a Flask web application for local demonstration of the project, which was used to as a demo in the class presentation.
- requirements.txt: A list of Python libraries required to run the local demo.




Model Details


The final model utilizes the VGG16 architecture as a feature extractor. The pre-trained VGG16 model was employed to capture complex features from the images, which was then used by custom layers to perform classification. This approach leverages the powerful feature detection capabilities of VGG16 without additional training on my part.