/Handwritten-Multiple-Digits-Recognizer

An Intuitive Desktop GUI Application For Recognizing Multiple Handwritten Digits Drawn At The Same Time. Trained On MNIST Dataset and Built With Python, OpenCV and TKinter

Primary LanguagePythonMIT LicenseMIT

Handwritten-Multiple-Digits-Recognizer

Header

Introduction

Hello everyoneđź‘‹, and welcome to this amazing repository which maintains all the code + documentation for the project Handwritten Multiple Digits Recognizer which was created during the third semester of my sophomore year at NMIMS University, Mukesh Patel School Of Technology Management And Engineering, Mumbai.

About

Table Of Contents

SRS Documentation Software Requirements Specification
README Link Click To View
View/Download As PDF Click To View
Code Files For Project 2 Modules + 1 Model
GUI Module View Code
Train_Digit_Recognizer View Code
mnist.h5 Trained Model Saved Model
Complete Code Explanation Total Modules = 2
GUI Module Click to view Explanation
Train_Digit_Recognizer Module Click to view Explanation

How To Use The Project?/Project Installation Guide

Step 1: Clone the Repository to your local system

Step 2: Change the directory from current to the project folder location in your system

Step 2

Step 3: Run the following command and wait till al the libraries and dependencies are loaded.

Step 3

Step 4: If all goes well, you shall see the GUI Window loaded.

Step 5: You've sucessfully got the project running in your local system. Explore it and try all the functionalities!

You can view the live Demo GIFs in the section below.

Project Demonstration

The following GIF depicts how the project works covering all its functionalities!

Draw + Recognize Multiple Handwritten Digits

GIF 1

Clear Output

GIF 2

Feedback Button Functionality

GIF 3

For HD Video Demonstration, refer the following Google Drive Links:

Demo Video Name View Link
Recognize Digits Click To View
Clear Output Click To View
Feedback Button Functionality Click To View

How To Contribute?

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Feel free to add new features and share it with me!

Feature Ideas I would Love To See Be Implemented:

  • Add Text-To-Speech Functionality For Predictions
  • Extend Recognition To Alphabets Using MNIST Alphabets Dataset
  • Transform Into Web App!
  • So much more,....

Donate / Support / Buy Me A Coffee!

Arya Shah | Patreon Arya Shah | Ko-Fi

Follow/Connect With Me:

Arya Shah | Twitter Arya's LinkedIn Arya's Instagram Arya's Reddit Arya's Stackoverlfow Arya's Person Email Arya's Institute Email Arya's Hashnode Blog