Inspiration
Handwritten text is still used in many forms like notes, forms, and exams. But reading and digitizing it by hand takes time and effort. We wanted to create a system that can automatically recognize handwritten characters quickly and with good accuracy.
What it does
Our project recognizes handwritten digits (0–9) and capital letters (A–Z). Users can draw a character on a web interface, and the system predicts the character instantly. It also shows confidence scores and alternative predictions.
How we built it
We used the EMNIST dataset with thousands of handwritten characters. We trained a Convolutional Neural Network (CNN) with layers for feature extraction and classification. The backend was built with Flask to connect the model to a web interface. The interface lets users draw on a canvas and get predictions in real-time.
Challenges we ran into
Handling characters that look very similar (like 0 and O, 1 and I). Making the web interface smooth and easy to use. Training the model to work well for different handwriting styles. Accomplishments that we're proud of Achieved over 92% validation accuracy across all classes. Built a working web app where users can try the model live. Made the project easy to deploy with Docker and Flask.
What we learned How to preprocess image data and train CNNs for classification. How to connect a deep learning model to a simple web app. The importance of testing with real user input, not just the dataset.
What's next for Handwritten Character Recognition Adding support for lowercase letters and symbols. Improving accuracy on tricky characters.
Built With
- machine-learning
- python
- tensorflow

Log in or sign up for Devpost to join the conversation.