ML Nexus is an open-source collection of machine learning projects, covering topics like neural networks, computer vision, and NLP. Whether you're a beginner or expert, contribute, collaborate, and grow together in the world of AI. Join us to shape the future of machine learning!
Is your feature request related to a problem? Please describe.
The current system detects facial landmarks, computes the eye aspect ratio (EAR), and raises an alarm if the user is blinking excessively or exhibiting signs of drowsiness. However, there are several potential issues:
The algorithm may not be robust across varying lighting conditions, occlusions, or multiple faces in the frame.
The detection threshold and frame count for the alarm might need tuning for different users.
It lacks real-time feedback to the user about their drowsiness state.
Describe the solution you'd like
To enhance the system, I would like:
Improved robustness: Enhance the eye detection mechanism by using more advanced face and eye tracking models (e.g., using deep learning-based detectors) to ensure accuracy in varying conditions.
Configurable thresholds: Allow users to customize the EAR threshold and the number of consecutive frames required to trigger the alarm.
Visual feedback: Add a real-time visual indicator (like a warning message or color change) on the video stream when drowsiness is detected.
Multiple face handling: Support for detecting drowsiness in multiple people within the same frame.
Audio feedback adjustments: Integrate a more dynamic alarm sound that intensifies based on the duration of drowsiness detection.
Describe alternatives you've considered
Switching to pre-trained deep learning models for facial landmark detection instead of dlib's HOG-based model, which might improve the accuracy of facial and eye region detection.
Using a combination of head pose estimation and eye aspect ratio to more reliably detect drowsiness.
Building a machine learning model that learns personalized thresholds based on user behavior and adapts the EAR values accordingly.
Approach to be followed (optional)
Use more robust face and eye detection models (e.g., Mediapipe or OpenCV DNN-based models).
Add real-time feedback via overlays on the video stream (like drawing rectangles around the eyes with color codes or displaying warning messages).
Create configuration options for the user to adjust sensitivity.
Expand detection to handle multiple faces in the frame and trigger separate alarms for each detected person.
Adjust the alarm sound to dynamically change its volume or frequency as drowsiness is detected for longer periods.
Additional context
Current implementation uses dlib for face detection and landmark prediction, with PyDub for audio playback.
We could integrate different notification systems like visual alerts, pop-ups, or sending alerts to a connected mobile device in the future.
Thanks for creating the issue in ML-Nexus!🎉
Before you start working on your PR, please make sure to:
⭐ Star the repository if you haven't already.
Pull the latest changes to avoid any merge conflicts.
Attach before & after screenshots in your PR for clarity.
Include the issue number in your PR description for better tracking.
Don't forget to follow @UppuluriKalyani – Project Admin – for more updates!
Tag @Neilblaze,@SaiNivedh26 for assigning the issue to you.
Happy open-source contributing!☺️
Is your feature request related to a problem? Please describe. The current system detects facial landmarks, computes the eye aspect ratio (EAR), and raises an alarm if the user is blinking excessively or exhibiting signs of drowsiness. However, there are several potential issues:
The algorithm may not be robust across varying lighting conditions, occlusions, or multiple faces in the frame. The detection threshold and frame count for the alarm might need tuning for different users. It lacks real-time feedback to the user about their drowsiness state. Describe the solution you'd like To enhance the system, I would like:
Improved robustness: Enhance the eye detection mechanism by using more advanced face and eye tracking models (e.g., using deep learning-based detectors) to ensure accuracy in varying conditions. Configurable thresholds: Allow users to customize the EAR threshold and the number of consecutive frames required to trigger the alarm. Visual feedback: Add a real-time visual indicator (like a warning message or color change) on the video stream when drowsiness is detected. Multiple face handling: Support for detecting drowsiness in multiple people within the same frame. Audio feedback adjustments: Integrate a more dynamic alarm sound that intensifies based on the duration of drowsiness detection. Describe alternatives you've considered Switching to pre-trained deep learning models for facial landmark detection instead of dlib's HOG-based model, which might improve the accuracy of facial and eye region detection. Using a combination of head pose estimation and eye aspect ratio to more reliably detect drowsiness. Building a machine learning model that learns personalized thresholds based on user behavior and adapts the EAR values accordingly. Approach to be followed (optional) Use more robust face and eye detection models (e.g., Mediapipe or OpenCV DNN-based models). Add real-time feedback via overlays on the video stream (like drawing rectangles around the eyes with color codes or displaying warning messages). Create configuration options for the user to adjust sensitivity. Expand detection to handle multiple faces in the frame and trigger separate alarms for each detected person. Adjust the alarm sound to dynamically change its volume or frequency as drowsiness is detected for longer periods. Additional context Current implementation uses dlib for face detection and landmark prediction, with PyDub for audio playback. We could integrate different notification systems like visual alerts, pop-ups, or sending alerts to a connected mobile device in the future.