An AI-powered system designed to enhance transportation safety by detecting distracted driving behavior in real time and providing tailored alerts to the driver.
- Develop and AI Model: Implement a deep learning multi-class classification model to detect and classify distracted driving behaviors.
- Alert Drivers: Generate personalized and tailored alerts based on distraction severity.
- Route Optimization: Suggest safer routes if the driver is distracted.
-
Data:
- The
datadirectory contains categorized images of driver behaviors in five classes:other_activities,texting_phone,talking_phone,turning, andsafe_driving. - Each class is crucial for training and testing the classification model.
- The
-
Scripts:
- cnn_model.ipynb: Contains the code for a Convolutional Neural Network (CNN) to classify driver distractions into five classes.
- route_optimization_ny.py: A Python script that uses Dijkstra's algorithm to optimize routes based on distraction level.
- predicate.py: Applies logical predicates to classify driver behavior and decide alerts and route changes.
- message_dict.txt: Contains classification categories and the alerts associated with each.
- state_dict.txt: Contains the five possible driver states.
-
AI Model Framework:
- Developed a Convolutional Neural Network (CNN) using TensorFlow and Keras for real-time facial analysis and classification of driver behaviors.
-
Data Processing:
- Trained the CNN on a diverse dataset featuring various driving behaviors to ensure accurate classification results.
-
Alert System:
- Created a Python script that generates tailored safety alerts based on the AI model's classification results, seamlessly integrating with the vehicle’s onboard system.
-
Dash Camera:
- Implemented algorithms to analyze live video feeds captured from dash cameras.
-
Model Deployment:
- Deployed the trained model to the dash camera system for immediate analysis of live footage.
-
User Interface:
- Designed a user-friendly display with bimodal feedback, ensuring alerts do not overly disturb the driver.
-
Training the CNN Model:
- Run
cnn_model.ipynbto train the model using the data provided. - Save the trained model for use in distraction detection.
- Run
-
Generating Alerts:
- The
predicate.pyscript will analyze the driver's state and generate alerts based on the classification results.
- The
-
Optimizing Routes:
- Use
route_optimization_ny.pyto calculate optimal driving routes.
- Use
- Integration with external data sources for route optimization.
- Adding more nuanced classifications to the distracted driving categories.
- Incorporating additional sensors for broader safety coverage.
- Incentive Program: Develop a reward system to incentivize safe driving habits.
Our deep learning model effectively classifies driver behavior into five categories, issuing tailored alerts that significantly enhance driver safety by mitigating risky behaviors in real time.
- NHTSA, Distracted Driving in 2022
- Kaggle, Driver Behavior Dataset
- Bridget, A. et al. (2017). "Effectiveness of Bimodal Versus Unimodal Alerts for Distracted Drivers," pp. 376-382. DOI: 10.17077/DRIVINGASSESSMENT.1515