RTSD System can detect traffic signs π© along the road.
This project aims to enable self-driving cars π to see and interact with the road signs.
πββοΈ Who are we ? :
We are a team from Egypt studied at Faculty of Engineering, Electronics and Communications Department in Mansoura University.
These features were created to be used for our graduation project π (RTSD System) to make a system that can detect Roads Traffic Signs in real-time.
We are using YOLOv8 as a base model and we are adding new features to it to make it more suitable for our use case.
Our Gorgeous Team :
- π Introduction
- π Project Steps
- πΎ Dataset
- π Model
- β Results
- β‘ Additional Features
- π References
The main goal of this project is to detect traffic signs π© along the road, this project aims to enable self-driving cars π to see and interact with the road signs. The project is implemented using YOLOv8: Extended Edition and RTSD Dataset and ran on Raspberry Pi 4.
Throughout the project, we followed these steps:
- First we used RoboFlow to create the dataset in YOLO format.
- Then we used Google Colab to train the model.
- Finally we used Raspberry Pi 4 to run the model on the real-time video stream from the camera.
We created collected the data from multiple sources, and then we merged them all into one dataset. The dataset contains 20 classes of traffic signs π©and 1 class of bump. The dataset is divided into 3 parts:
- Training set: 80% of the dataset
- Validation set: 10% of the dataset
- Testing set: 10% of the dataset
The dataset is available on RoboFlow
We used YOLOv8: Extended Edition which is forked from YOLOv8, but with some modifications such as "Night Vision", "Lane Line Detection" and "SPI Communication Protocol to send outputs".
If you want to know more about the model, you can check the YOLOv8: Extended Edition.
The model was trained for 300 epochs, and the results are as follows:
Metric | Value |
---|---|
Precision | 0.97 |
Recall | 0.98 |
mAP50 | 0.99 |
mAP50-95 | 0.87 |
The model was tested on the real-time video stream from the camera, and the results are as follows:
A video of our result :
IMG_7830.MOV
We added some additional features to the project to make it more useful, some of these features are on the model and some are on the dataset.
- Night Vision: The model can detect traffic signs π© at night using the night vision feature.
- Lane Line Detection: The model can detect lane lines using the lane line detection feature.
- SPI Communication Protocol: The model can send the outputs to the Raspberry Pi 4 using the SPI communication protocol.
- Bump Class: We added a bump class to the dataset, which is used to detect bumps on the road.
This project is licensed under the MIT License - see the LICENSE file for details