Skip to content

🚦 Traffic Sign Classification using LeNet-5 CNN πŸ–ΌοΈ 43 classes from GTSRB dataset classified with 99%+ accuracy πŸ”§ Built with Keras, TensorFlow, OpenCV, NumPy πŸ“Š Includes data augmentation, performance analysis, and visualizations

License

Notifications You must be signed in to change notification settings

mdzaheerjk/ML-project1-Traffic-Sign-Classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🚦 Traffic Sign Classification Using LeNet CNN

Deep Learning Python Keras License

A deep learning project implementing LeNet-5 architecture to classify traffic signs from the German Traffic Sign Recognition Benchmark (GTSRB) dataset with 99%+ validation accuracy.

πŸ“Œ Course Project - Deep Learning & Computer Vision
πŸ“ Repository: ML-project1-Traffic-Sign-Classification


πŸ“Œ Project Highlights

  • πŸ–ΌοΈ 43 classes of traffic signs classified
  • 🧠 Implemented LeNet-5 CNN architecture from scratch
  • πŸ” Achieved 99.2% validation accuracy
  • πŸ“Š Comprehensive model performance analysis
  • ⚑ Data augmentation techniques applied

πŸ“‚ Dataset Overview

Dataset: German Traffic Sign Recognition Benchmark (GTSRB)

Category Details
Total Classes 43
Training Images 34,799
Validation Images 4,410
Test Images 12,630
Image Size 32Γ—32 pixels (RGB)

πŸ”§ Technical Stack

🧠 Deep Learning

Keras TensorFlow

πŸ“Š Visualization

Matplotlib Seaborn

πŸ› οΈ Utilities

OpenCV NumPy


πŸš€ Model Architecture (LeNet-5)

graph LR
    A[Input 32x32x3] --> B[Conv2D 6@28x28]
    B --> C[AvgPool 6@14x14]
    C --> D[Conv2D 16@10x10]
    D --> E[AvgPool 16@5x5]
    E --> F[Flatten 400]
    F --> G[Dense 120]
    G --> H[Dense 84]
    H --> I[Output 43]
Loading

Hyperparameters

  • Optimizer: Adam (lr=0.001)
  • Loss: Categorical Crossentropy
  • Epochs: 50
  • Batch Size: 64
  • Augmentation: Rotation (Β±15Β°), Zoom (Β±10%)

πŸ“Š Performance Metrics

Metric Training Validation
Accuracy 99.8% 99.2%
Precision 99.7% 99.1%
Recall 99.6% 99.0%
F1-Score 99.6% 99.0%

Confusion Matrix:

πŸ› οΈ Installation & Usage

# Clone repository
git clone https://github.com/mdzaheerjk/ML-project1-Traffic-Sign-Classification.git
cd ML-project1-Traffic-Sign-Classification

Install dependencies

pip install -r requirements.txt

Launch Jupyter Notebook

jupyter notebook "Project 5 - Traffic Sign Classification Using LeNet Network in Keras.ipynb"

πŸ“‚ Project Structure

ML-project1-Traffic-Sign-Classification/
β”œβ”€β”€ Project/
β”‚   β”œβ”€β”€ traffic-signs-data/       # Dataset samples
β”‚   β”œβ”€β”€ Project 5 - Traffic Sign Classification Using LeNet Network in Keras.ipynb
β”‚   └── Project 5 - Traffic Sign Classification Using LeNet.pptx
β”œβ”€β”€ .gitattributes
β”œβ”€β”€ LICENSE
└── README.md

✍️ Author

Mohammed Zaheeruddin

πŸŽ“ First-Year B.Tech Student | AI/ML Enthusiast

🏫 Shetty Institute of Technology, Gulbarga

πŸ“§ info.zaheerjk@gmail.com

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

text

Key improvements made:
1. Fixed all markdown formatting issues
2. Properly structured tables and code blocks
3. Corrected badge syntax for GitHub/LinkedIn
4. Ensured consistent spacing and headers
5. Maintained all original content while making it properly renderable
6. Fixed the project structure tree formatting
7. Made sure all links and images use proper markdown syntax

About

🚦 Traffic Sign Classification using LeNet-5 CNN πŸ–ΌοΈ 43 classes from GTSRB dataset classified with 99%+ accuracy πŸ”§ Built with Keras, TensorFlow, OpenCV, NumPy πŸ“Š Includes data augmentation, performance analysis, and visualizations

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published