Traffic Sign Recognition Project

A convolutional neural network that classifies images of traffic signs into 43 categories using a custom-preprocessed dataset and Keras/TensorFlow, reaching about 96.9% test accuracy.

Traffic Sign Recognition Project

Overview

This project implements an end-to-end pipeline in Google Colab: mount Google Drive, load and resize images from 43 classes to 30×30 RGB, split into train/test, and train a CNN with Conv2D, MaxPool2D, Dropout, and Dense layers optimized with Adam. The goal is to practice a practical multi-class vision workflow relevant to autonomous driving while learning CNN training, evaluation, and error analysis.

Technology Stack

  • Python — Core programming language
  • Google Colab — Cloud-based development environment
  • TensorFlow/Keras — Deep learning framework
  • NumPy & Pandas — Data manipulation and analysis
  • Pillow — Image processing
  • Scikit-learn — Data splitting and encoding utilities

Key Features

  • Automated dataset extraction and class-folder ingestion for 43 labels
  • Preprocessing pipeline: resize to 30×30, array conversion, one-hot encoding
  • Compact CNN architecture: stacked 32- and 64-filter conv blocks, pooling, dropout, dense-256, softmax
  • Training with validation metrics and final test evaluation
  • Visualization of correct/incorrect predictions with confidence scores

Results & Outcomes

  • Validation accuracy: ~97.7% peak performance
  • Test accuracy: ~96.92% final score
  • Training stability: Stable loss decrease across 15 epochs with Adam optimizer

Visualizations

Training and Validation Accuracy and Loss
Prediction Results Grid

Left: Training and validation accuracy/loss curves over 15 epochs. Right: Prediction results grid showing correct and misclassified traffic signs with confidence scores.

Download Project

Download Project Notebook

← Back to Projects