Distracted Driver Detection
Real-time Computer Vision Pipeline
Developed a sophisticated computer vision pipeline designed to identify and classify distracted driving behaviors in real-time. The project aimed to mitigate road accidents by categorizing driver actions into four key states: Attentive, Drinking Coffee, Looking at Mirrors, and Adjusting the Radio.
The Challenge
Distracted driving is categorized into three sectors: visual (eyes off the road), manual (hands off the wheel), and cognitive (loss of focus). The technical challenge was to build a model capable of processing complex visual data to distinguish subtle differences between these distractions with high accuracy.
Development & Methodology
I led a comparative analysis of various machine learning models to find the most effective solution for image classification:
Baseline Models (KNN & Decision Trees)
Initially implemented K-Nearest Neighbors (KNN) and Decision Trees to establish a performance baseline. KNN achieved approximately 45% accuracy, while Decision Trees proved even less effective for high-dimensional image data.
Neural Networks (MLP)
Advanced the pipeline using Multi-Layer Perceptrons (MLPs). While better at handling non-linearly separable data, the accuracy remained limited at ~55%.
Deep Learning (CNN & Transfer Learning)
Developed a Convolutional Neural Network (CNN) architecture specifically optimized for feature extraction from images. To further refine performance, I explored Transfer Learning, utilizing pre-trained weights to solve the classification problem more efficiently.
Key Results
- Performance Leap: By transitioning from simple classification to CNNs, the model's validation accuracy increased from 45% to a peak of 80%.
- Optimization: Iteratively refined model architectures by experimenting with different combinations of neurons, layers, and epochs to reach optimal performance.
- Ethical Framework: Integrated a comprehensive analysis of the ethical implications of the tech, addressing user privacy concerns regarding constant surveillance and the necessity of removing demographic bias from training data.