Skip to content

Handwritten digit recognition using Machine Learning Models on the MNIST dataset in Python.

License

Notifications You must be signed in to change notification settings

AnshulRathee/Handwritten-Digit-Recognition-using-MNIST

Repository files navigation

Handwritten Digit Recognition using MNIST

Overview

This project focuses on detecting handwritten digits using machine learning techniques. It includes preprocessing the MNIST dataset, dimensionality reduction, training models such as Regression and Neural Networks, and deploying a functionality to recognize digits on a screen board and Vocalize the recognized digits.

Technologies Used

- Python
- Jupyter Notebook
- Numpy, Pandas
- TensorFlow, Keras
- Matplotlib
- OpenCV
- pygame
- pyttsx3

Project Structure

  • Data Preprocessing: Includes normalization, reshaping, and visualization of the MNIST dataset.
  • Dimensionality Reduction: Used to reduce feature dimensions for better visualization.
  • Model Training: Implements Logistic Regression and Neural Networks for digit classification.
  • Digit Recognition on Screen Board: Utilizes OpenCV for real-time digit recognition on a screen board, with audio output.

Features

  • MNIST Dataset: Preprocessed and used for training and testing.
  • Model Evaluation: Metrics such as accuracy, confusion matrix, and classification reports are provided.
  • Real-time Digit Recognition: Ability to detect and audibly announce handwritten digits on a screen board.

Result

Result Digit Board -

Result Digit Board

Project Related Images

Accuracy Score -

Accuracy Score

Dataset image -

Dataset image

Model Summary -

Model Summary

Dataset

The project utilizes the MNIST dataset, which is included in many machine learning libraries or can be downloaded from MNIST.

Contributors

  • Anshul Rathee

License

This project is licensed under the Apache License 2.0.

Contributions and improvements to this project are welcome!