Real-time AI-powered pothole detection, road severity estimation, and intelligent drive mode recommendation using Computer Vision and Machine Learning.
An AI-powered Advanced Driver Assistance System (ADAS) that detects potholes using a custom-trained YOLO model and recommends intelligent driving modes through a Random Forestโbased decision engine.
DriveSentury is an AI-powered Advanced Driver Assistance System (ADAS) designed to improve road safety by automatically detecting potholes and road anomalies from recorded road videos.
The system combines deep learning-based object detection with machine learning-driven decision making to identify road hazards, estimate their severity, and recommend an appropriate driving mode. All predictions are visualized through an interactive Flask dashboard that provides real-time analytics, hazard alerts, and safety recommendations.
Unlike traditional object detection projects that only locate potholes, DriveSentury extends the detection pipeline by incorporating an intelligent recommendation engine capable of assisting drivers based on current road conditions.
A demonstration video showcasing the complete workflow of DriveSentury is available in the repository.
- Real-time pothole detection
- Live dashboard analytics
- Dynamic drive mode recommendation
- Road severity estimation
Demo Video:
docs/demo.mp4
A GIF preview will be added in a future update for quick visualization directly on GitHub.
Poor road conditions contribute significantly to vehicle damage and road accidents. Drivers often receive no prior warning about potholes or deteriorating road surfaces, especially under poor visibility or unfamiliar routes.
DriveSentury addresses this problem by providing an intelligent AI-based system capable of:
- Detecting potholes and road anomalies
- Estimating road severity
- Recommending an appropriate driving mode
- Providing real-time visual feedback through an interactive dashboard
- Real-time pothole detection using a custom-trained YOLO model
- Intelligent drive mode recommendation using a Random Forest classifier
- Road severity classification
- Minimal
- Very Low
- Low
- Moderate
- High
- Critical
- Live confidence monitoring for AI predictions
- Interactive Flask dashboard
- Road analytics and hazard visualization
- Dynamic safety recommendations
- Portable project structure using relative paths
- Modular architecture for future deployment on embedded systems
Road Video
โ
โผ
YOLO Object Detection
โ
โผ
Pothole Detection & Localization
โ
โผ
Feature Extraction Layer
(Pothole Count, Confidence, History)
โ
โผ
Random Forest Drive Mode Recommender
โ
โผ
Severity Classification Engine
โ
โผ
Flask Web Dashboard (UI)
โ
โผ
Driver Alerts & Safety Recommendations
The system consists of two independent AI components working together.
The first module uses a custom-trained YOLO model to detect potholes from every frame of an input road video.
The detector predicts:
- Bounding boxes
- Object confidence
- Road anomaly class
Detection results are passed to a Random Forest classifier which analyses:
- Current pothole count
- Average pothole count
- Detection confidence
- Rate of change
- Historical road conditions
- Recent hazard patterns
The model predicts an appropriate driving mode together with a road severity level.
The system supports six intelligent driving modes.
| Drive Mode | Description |
|---|---|
| Smooth Drive | Excellent road conditions |
| Highway Mode | Safe high-speed driving |
| Comfort Mode | Minor road imperfections |
| Caution Mode | Moderate hazards detected |
| Rough Road Mode | Significant road damage |
| Danger! Slow Down | Critical road conditions |
| Severity | Description |
|---|---|
| Minimal | Excellent road condition |
| Very Low | Minor surface imperfections |
| Low | Manageable potholes |
| Moderate | Multiple hazards present |
| High | Significant road damage |
| Critical | Dangerous road conditions |
| Category | Technology |
|---|---|
| Programming Language | Python |
| Backend | Flask |
| Computer Vision | OpenCV |
| Object Detection | YOLOv12 (Training) |
| Inference Engine | YOLOv8 |
| Machine Learning | Random Forest |
| ML Library | Scikit-learn |
| Visualization | Supervision |
| Frontend | HTML, CSS, JavaScript |
| Numerical Computing | NumPy |
DriveSentury
โ
โโโ app.py
โโโ drivemode.py
โโโ requirements.txt
โโโ README.md
โโโ .gitignore
โ
โโโ models
โ โโโ drivesentury_yolo.pt
โ โโโ drive_mode_model.pkl
โ
โโโ static
โ โโโ css
โ โโโ js
โ โโโ img
โ โโโ screenshots
โ โโโ sample_video.mp4
โ
โโโ templates
โ
โโโ docs
Clone the repository.
git clone https://github.com/your-username/DriveSentury.gitNavigate into the project.
cd DriveSenturyInstall dependencies.
pip install -r requirements.txtRun the application.
python app.pyOpen your browser.
http://127.0.0.1:5000
DriveSentury successfully integrates computer vision and machine learning into a unified ADAS pipeline capable of:
- Detecting potholes from recorded road videos using a custom-trained YOLO model.
- Estimating road severity across six hazard levels.
- Recommending intelligent driving modes using a Random Forest classifier.
- Displaying real-time detections, confidence scores, and safety recommendations through an interactive Flask dashboard.
- Maintaining a modular architecture suitable for future extensions such as edge deployment, live camera support, and multi-sensor integration.
- Live webcam support
- Real-time GPS integration
- Lane detection
- Vehicle speed estimation
- Edge AI deployment
- Mobile application
- Cloud dashboard
- Driver notification system
- Multi-sensor fusion
- Depth estimation for pothole severity
| Name | Role |
|---|---|
| Chandan S Bhat | Developer โข Artificial Intelligence & Data Science Engineer |
| Syed Zain | Developer โข Artificial Intelligence & Data Science Engineer |
If you have suggestions, encounter issues, or would like to collaborate, feel free to open an issue or submit a pull request.
This project is intended for educational and research purposes.
DriveSentury is an independent academic project developed for educational and research purposes.
Any vehicle brands, names, or visual assets that may appear in demonstration screenshots or videos are used solely for illustrating the dashboard interface and do not imply any affiliation with, endorsement by, or ownership from their respective trademark holders.




