This project uses an AI model trained on the MNIST dataset to predict handwritten numbers with noise(real world data).
Warning
Please note that this model is optimized for predicting very noisy images. As a result, it may not perform with very high accuracy on the standard MNIST validation data. Keep this in mind when evaluating the model’s performance.
The data processing pipeline is optimized to handle noisy images. It includes the following steps:
- Random zooming: The images are randomly zoomed in or out to create variations in the training.
- Random cropping: The images are randomly cropped to create variations in the training data.
- Adding noise: Random noise is added to the images to simulate real-world conditions.
- generating data with random fonts.
- Increasing the number of training records: The data augmentation techniques increase the number of training records from the original 60,000 to around 760,000.
The AI model is a convolutional neural network (CNN) that is trained on the MNIST dataset. The model architecture and hyperparameters are chosen to achieve high accuracy on noisy images(real world data).
To use the model, follow these steps:
- Install the required dependencies by running
pip install -r requirements.txt
. - You can use the pre trained model
...\pre-trained model\MNIST_model.h5
- download the data set with
download dataset.py