Skip to content

JAINAM576/Sign-Language-digit-Classification

Repository files navigation


Sign Language Digit Recognition Model

This repository contains a Convolutional Neural Network (CNN) model designed to recognize hand gestures representing digits in sign language. The model has been trained on a carefully curated dataset, achieving high accuracy and reliability, making it suitable for various applications, including educational tools, accessibility solutions, and communication aids.

Model Details

Model Description

The Sign Language Digit Recognition Model was developed to assist in recognizing digits from sign language hand gestures. The dataset used for training consists of approximately 200 images per digit, organized into 9-10 different folders. The data was split into 80% for training and 20% for testing.

  • Developed by: Jainam Sanghavi
  • Model Type: Convolutional Neural Network (CNN)
  • License: Open Database License (ODbL)

Model Sources

Usage

Direct Use

This model can be directly integrated into systems requiring digit recognition from hand gestures. It's particularly suitable for real-time applications where speed and accuracy are critical.

Out-of-Scope Use

The model is not intended for recognizing gestures beyond the digits it was specifically trained on. For general gesture recognition tasks, additional training would be required.

Bias, Risks, and Limitations

The model was trained on a specific dataset that may not represent all variations of hand gestures across different populations or environments. Users should consider these limitations when deploying the model and validate its performance in the target application.

Recommendations

Before deploying the model in production, it's recommended to validate its performance in the specific environment where it will be used. This will ensure that the model meets the application’s requirements and performs as expected.

Getting Started

Prerequisites

  • Python 3.x
  • TensorFlow-Keras

Installation

Clone this repository:

git clone "https://github.com/JAINAM576/Sign-Language-digit-Classification.git"
cd sign-language-digit-recognition

Install the required dependencies:

pip install -r requirements.txt

How to Use

Load and use the model as shown below:

from tensorflow.keras.models import load_model

# Load the trained model
model = load_model('path_to_your_model.h5')

# Example usage:
# img = load_your_image_function('path_to_image')
# prediction = model.predict(img)

Add further instructions on how to use the model in your application.

Training Details

Training Data

The dataset consists of images of hand gestures representing digits, organized into folders by digit. The data was split into 80% for training and 20% for testing.

Training Procedure

The model was trained using a CNN architecture with the following callbacks:

  • EarlyStopping: To prevent overfitting by stopping training when the validation loss stops improving.
  • TensorBoard: For visualizing training metrics such as accuracy and loss.
  • ModelCheckpoint: To save the best model during training.

Training Hyperparameters

  • Batch Size: 32
  • Epochs: 100

Accuracy and Loss Curves

The following plots illustrate the model's training and validation accuracy, as well as training and validation loss over epochs.

  • Accuracy vs. Validation Accuracy accuracy_curve

  • Loss vs. Validation Loss loss_curve

These plots indicate that the model's accuracy improves steadily with minimal overfitting, as demonstrated by the close alignment between the training and validation curves.

Evaluation

Testing Data and Metrics

The model was evaluated on a held-out test set, comprising 20% of the original dataset. The following metrics were used for evaluation:

  • Accuracy: 0.9282
  • Precision: 0.9333
  • Recall: 0.9282
  • F1 Score: 0.9283

Results

The model achieved high accuracy and reliability in recognizing sign language digits, making it suitable for practical applications.

Technical Specifications

Model Architecture and Objective

The model uses a CNN architecture specifically designed for image classification tasks, focusing on recognizing hand gestures representing digits in sign language.

Compute Infrastructure

The model was trained on cloud GPU (kaggle).

Hardware

  • GPU: GPU T4 x2(kaggle)

Software

  • Framework: TensorFlow-Keras
  • Python Version: 3.10.14
  • Operating System: Windows11

Contributing

Contributions are welcome! Please submit a pull request or open an issue to discuss the changes you'd like to make.

Acknowledgments

Special thanks to Github Repo.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published