AI based project to solve Traffic congestion in Mauritius
# Automated CCTV Traffic Data Extraction and Analysis System
This project provides a complete system for automated data extraction and analysis from live public CCTV feeds. It leverages open-source tools like OpenDataCam and SUMO to build a data pipeline for training and evaluating AI-based adaptive traffic control systems.
## Table of Contents
- System Overview
- Features
- Project Structure
- Installation
- Usage
- AI Models
- Contributing
- License
## System Overview
The system is designed to perform the following tasks:
1. **Data Acquisition**: Record video footage from public CCTV feeds.
2. **Data Extraction**: Use OpenDataCam to extract traffic data (vehicle counts, speeds, trajectories) from the recorded videos.
3. **Simulation Environment**: Generate a realistic SUMO simulation of the target intersection using data from OpenStreetMap.
4. **Data Transformation**: Process the extracted traffic data to calibrate the SUMO simulation.
5. **AI-based Traffic Control**: Train and evaluate AI agents (LSTM for congestion prediction and DQN for traffic light control) in the SUMO environment.
## Features
- Automated data extraction from video files using OpenDataCam.
- Generation of realistic SUMO traffic simulations from OpenStreetMap data.
- Calibration of SUMO simulations using real-world traffic data.
- Implementation of an LSTM-based Predictive Congestion Agent (PCA).
- Implementation of a DQN-based Local Junction Agent (LJA) for adaptive traffic light control.
- Comprehensive data visualization and analysis tools.
## Project Structure
```
/cctv-traffic-analysis
|-- config/ # Configuration files
|-- data/
| |-- raw/ # Raw video files
| `-- processed/ # Processed traffic data (CSVs)
|-- docs/
| `-- figures/ # Generated figures and plots
|-- models/
| |-- lstm_congestion_predictor.py
| `-- dqn_junction_agent.py
|-- opendatacam/ # OpenDataCam installation and data
| …