DigitRecognition / README.md
Adhithpasu's picture
Update README.md
a352395 verified
---
language:
- en
license: apache-2.0
tags:
- image-classification
- computer-vision
- digit-recognition
- mnist
- tensorflow
- keras
pipeline_tag: image-classification
metrics:
- accuracy
---
# Digit Recognition Model
## Model Summary
A convolutional neural network (CNN) trained to classify handwritten digits (0–9) from image input. Trained on the MNIST dataset, this model serves as a foundational computer vision project demonstrating image classification with deep learning.
---
## Model Details
- **Developed by:** Chandrasekar Adhithya Pasumarthi ([@Adhithpasu](https://github.com/Adhithpasu))
- **Affiliation:** Frisco ISD, TX | AI Club Leader | Class of 2027
- **Model type:** Convolutional Neural Network (CNN)
- **Framework:** TensorFlow / Keras
- **License:** Apache 2.0
- **Related work:** Part of a broader ML/CV portfolio including research on Vision Transformers vs CNNs β€” *JCSTS Vol. 8(2), January 2026*
---
## Intended Uses
**Direct use:**
- Handwritten digit classification (0–9)
- Educational demonstrations of CNNs and image classification pipelines
- Baseline model for comparing against more advanced architectures (ViT, ResNet, etc.)
**Out-of-scope use:**
- Multi-character or multi-digit recognition (e.g., full number strings)
- Non-MNIST-style digit distributions without fine-tuning
---
## Training Data
Trained on the **MNIST dataset** β€” 60,000 training images and 10,000 test images of 28Γ—28 grayscale handwritten digits.
---
## Evaluation
| Metric | Value |
|----------|-------|
| Accuracy | TBD |
| Loss | TBD |
*(Fill in with your actual test set results)*
---
## How to Use
```python
import tensorflow as tf
import numpy as np
from PIL import Image
# Load model
model = tf.keras.models.load_model("digit_recognition_model")
# Load and preprocess a 28x28 grayscale image
img = Image.open("digit.png").convert("L").resize((28, 28))
img_array = np.array(img) / 255.0
img_array = img_array.reshape(1, 28, 28, 1)
# Predict
prediction = model.predict(img_array)
print(f"Predicted digit: {np.argmax(prediction)}")
```
---
## Model Architecture
```
Input (28x28x1)
β†’ Conv2D(32, 3x3, relu) β†’ MaxPooling2D
β†’ Conv2D(64, 3x3, relu) β†’ MaxPooling2D
β†’ Flatten
β†’ Dense(128, relu) β†’ Dropout(0.5)
β†’ Dense(10, softmax)
```
*(Update to match your actual architecture)*
---
## Limitations & Bias
- Performs best on MNIST-style centered, normalized digits
- May degrade on real-world handwriting without preprocessing or fine-tuning
- Limited to single digit classification
---
## Citation
```bibtex
@misc{pasumarthi2026digitrecognition,
author = {Chandrasekar Adhithya Pasumarthi},
title = {Digit Recognition Model},
year = {2026},
publisher = {Hugging Face},
url = {https://huggingface.co/Chandrasekar123/DigitRecognition}
}
```
---
## Contact
- GitHub: [@Adhithpasu](https://github.com/Adhithpasu)