This project implements traffic sign recognition using the YOLO (You Only Look Once) object detection algorithm. The goal is to accurately detect and classify various traffic signs in images or video streams in real-time.
Traffic sign recognition is a critical component of advanced driver-assistance systems (ADAS) and autonomous driving. This project leverages the YOLO algorithm to perform efficient and accurate detection of traffic signs.
- Real-time detection and classification of traffic signs
- High accuracy with optimized YOLO architecture
- Support for custom datasets
-
Clone the repository:
git clone https://github.com/dev0052/ROADMARK-AI-Sign-Recognition-System.git cd ROADMARK-AI-Sign-Recognition-System
-
Create a virtual environment (optional but recommended):
python3 -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate`
-
Install the required dependencies:
pip install -r requirements.txt
-
Prepare the dataset:
- Ensure your dataset is organized and labeled appropriately. Refer to the Dataset section for more details.
-
Train the model:
-
Configure the training parameters as needed.
-
Run the training script:
python train.py --data data.yaml --cfg cfg/yolov5s.yaml --weights yolov5s.pt --epochs 50
-
-
Evaluate the model:
-
After training, evaluate the model's performance:
python val.py --data data.yaml --weights runs/train/exp/weights/best.pt
-
-
Detect traffic signs in new images or videos:
-
Use the trained model to perform detection:
python detect.py --weights runs/train/exp/weights/best.pt --source path/to/your/image_or_video
-
To train the model, you'll need a dataset of traffic sign images with corresponding annotations. You can use publicly available datasets or create your own. Ensure that the dataset is in a format compatible with YOLO training.
The training process involves configuring the YOLO model architecture and hyperparameters. Adjust the settings in the configuration files as needed to suit your dataset and requirements.
Evaluate the trained model using validation datasets to assess its performance. Metrics such as precision, recall, and mean Average Precision (mAP) are commonly used.
Include visualizations of detection results, performance metrics, and any other relevant findings here.
Contributions are welcome! If you'd like to contribute to this project, please fork the repository and submit a pull request.
This project is licensed under the MIT License.