Handwritten Digit Recognition

An iOS App that recognizes handwritten digits using Swift and TensorFlow Lite

AI & Machine LearningSwiftMIT

Abstract

Handwritten Digit Recognition is an open-source AI & Machine Learning project. An iOS App that recognizes handwritten digits using Swift and TensorFlow Lite. It is built using Swift, TensorFlow, Python, Computer Vision, Keras. The complete source code is publicly available on GitHub under the MIT License, making it a useful reference for students building an AI & Machine Learning mini project or final-year project.

1. Introduction

An iOS App that recognizes handwritten digits using Swift and TensorFlow Lite. TesnorFlow NN was trained on MNIST Dataset with Keras. The app has two trained NNs: baseline (97.4% accuracy) (FCNN) and advanced (99.5% accuracy) (CNN) models.

Keras is a minimalist, highly modular neural networks library, written in Python and capable of running on top of either TensorFlow or Theano. It was developed with a focus on enabling fast experimentation. Being able to go from idea to result with the least possible delay is key to doing good research.

allows for easy and fast prototyping (through total modularity, minimalism, and extensibility). supports both convolutional networks and recurrent networks, as well as combinations of the two. supports arbitrary connectivity schemes (including multi-input and multi-output training). runs seamlessly on CPU and GPU. Read the documentation Keras.io

2. Objective

An iOS App that recognizes handwritten digits using Swift and TensorFlow Lite

This project demonstrates how Swift, TensorFlow, Python can be applied to a real-world AI & Machine Learning problem.

4. Technology Stack

SwiftTensorFlowPythonComputer VisionKeras

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Xcode on macOS
  • Python 3.8 or later
  • pip / virtualenv for dependencies
  • VS Code, PyCharm or Jupyter Notebook
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/sevakon/handwritten-digit-recognition.git
cd handwritten-digit-recognition

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Deploy the model as a web app with Streamlit, Flask or FastAPI
  • Compare against an additional model and report the metric difference
  • Add explainability (SHAP / Grad-CAM)

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. What dataset does the project use and how was it pre-processed?
  2. Which algorithm / model architecture is used and why was it chosen over alternatives?
  3. How are training and testing data split, and how is overfitting avoided?
  4. Which evaluation metrics (accuracy, precision, recall, F1) are reported and what do they mean here?
  5. How would you deploy this model for real users?

9. Source Code & License

This project is developed by sevakon and published on GitHub under the MIT License. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on an AI & Machine Learning project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for AI & Machine Learning Internship