Skip to content

Arabic sign language recognition system using transfer learning (ResNet101V2) and YOLO-based hand detection. Benchmarks CNN, LSTM, and GNN architectures with multi-metric evaluation framework.

Notifications You must be signed in to change notification settings

aminshennan/Hand-Sign-language-detection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Arabic Sign Language Recognition - Visual Information Processing Project

🎯 Project Overview

This project focuses on developing a comprehensive Arabic Sign Language (ASL) Recognition System using advanced deep learning techniques. Our goal is to bridge communication barriers for the deaf and hard-of-hearing community by creating an accurate and efficient sign language recognition system.

🚀 Project Objectives

  • Develop an Arabic Sign Language recognition system using state-of-the-art deep learning models
  • Compare effectiveness of different neural network architectures:
    • Convolutional Neural Networks (CNNs)
    • Long Short-Term Memory (LSTM) Networks
    • Graph Neural Networks (GNNs)
    • Transfer Learning with pre-trained models
  • Evaluate models based on accuracy, efficiency, and practical usability
  • Create a robust data preprocessing pipeline for sign language recognition

🛠️ Technologies & Tools

Deep Learning Frameworks:

  • TensorFlow/Keras - Primary deep learning framework
  • YOLO - Object detection for hand recognition
  • ResNet101V2 - Transfer learning backbone

Libraries & Dependencies:

  • OpenCV - Computer vision and image processing
  • NumPy - Numerical computations
  • Pandas - Data manipulation and analysis
  • Matplotlib - Data visualization and plotting
  • Jupyter Notebook - Development environment

Programming Language:

  • Python - Primary development language

📁 Project Structure

vip/
├── README.md                    # Project documentation
├── Code/
│   ├── code.ipynb              # Main implementation notebook
│   ├── best.pt                 # Trained YOLO model (14MB)
│   ├── logo.png                # Project logo
│   ├── Input/                  # Input data directory
│   └── Output/                 # Processed output directory
├── Final Report.pdf            # Comprehensive project report
└── [Presentation File]         # Project presentation

🔬 Methodology

1. Data Pipeline

Raw Sign Language Data → YOLO Hand Detection → Data Cleaning → Preprocessing → Model Training → Evaluation

2. Data Preprocessing Steps:

  • Hand Detection: YOLO model identifies and extracts hand regions
  • Data Cleaning: Removes irrelevant background and noise
  • Class Organization: Sorts images into class-specific folders
  • Data Augmentation: Enhances dataset diversity

3. Model Development:

  • Exploratory Data Analysis (EDA): Understanding data distribution and characteristics
  • Feature Extraction: Extracting relevant features for sign recognition
  • Model Architecture Design: Implementing various neural network approaches
  • Hyperparameter Tuning: Optimizing model performance

4. Evaluation Metrics:

  • Accuracy - Overall model performance
  • Precision - Correct positive predictions
  • Recall - Ability to find all positive instances
  • F1-Score - Harmonic mean of precision and recall

🚀 Getting Started

Prerequisites

Python 3.7+
Jupyter Notebook
CUDA-compatible GPU (recommended)

Installation

  1. Clone the repository:
git clone [repository-url]
cd vip
  1. Install required dependencies:
pip install tensorflow opencv-python numpy pandas matplotlib
pip install torch torchvision  # For YOLO model
pip install jupyter notebook
  1. Navigate to the code directory:
cd Code

Usage

  1. Launch Jupyter Notebook:
jupyter notebook
  1. Open the main implementation:

    • Open code.ipynb in Jupyter Notebook
    • Follow the step-by-step implementation
  2. Data Preparation:

    • Place input sign language images in the Input/ directory
    • Run the data preprocessing cells in the notebook
  3. Model Training:

    • Execute the model training sections
    • Monitor training progress and metrics
  4. Evaluation:

    • Run evaluation cells to assess model performance
    • View results and comparative analysis

📊 Key Features

🤖 Advanced Neural Architectures

  • CNN Models: Specialized for image feature extraction
  • LSTM Networks: Capturing temporal dependencies in sign sequences
  • Graph Neural Networks: Modeling hand joint relationships
  • Transfer Learning: Leveraging pre-trained ResNet101V2

🔍 Intelligent Data Processing

  • YOLO Integration: Accurate hand detection and extraction
  • Automated Cleaning: Removes background noise and irrelevant data
  • Smart Organization: Class-based data structuring

📈 Comprehensive Evaluation

  • Multi-metric Assessment: Accuracy, precision, recall, F1-score
  • Comparative Analysis: Side-by-side model performance evaluation
  • Efficiency Metrics: Training time and inference speed analysis

🎯 Expected Outcomes

  • High-Accuracy Model: Achieving optimal recognition rates for Arabic sign language
  • Efficiency Optimization: Balancing accuracy with computational efficiency
  • Practical Implementation: Ready-to-deploy sign language recognition system
  • Research Contribution: Advancing Arabic sign language recognition research

📈 Results & Performance

Note: Detailed results and performance metrics are available in the Final Report.pdf and within the Jupyter notebook implementation.

Key achievements:

  • ✅ Successful implementation of multiple deep learning architectures
  • ✅ Effective YOLO-based hand detection pipeline
  • ✅ Comprehensive comparative analysis of model performance
  • ✅ Robust data preprocessing and augmentation pipeline

🔮 Future Enhancements

  • Real-time Recognition: Implementing live video sign language recognition
  • Mobile Application: Developing mobile app for accessibility
  • Extended Vocabulary: Expanding to larger Arabic sign language vocabulary
  • Multi-language Support: Adding support for other sign languages
  • Edge Deployment: Optimizing models for edge device deployment

📚 Documentation

  • 📄 Final Report: Comprehensive technical documentation in Final Report.pdf
  • 💻 Code Documentation: Detailed comments and explanations in code.ipynb
  • 🎯 Methodology: Step-by-step implementation guide in the notebook

🤝 Contributing

This project is part of an academic VIP (Vertically Integrated Projects) program. For collaboration or questions:

  • Academic Institution: Multimedia University (MMU)
  • Project Type: Visual Information Processing

📧 Contact

For questions or collaboration opportunities, please contact the team members through MMU academic channels.

🙏 Acknowledgments

  • Multimedia University (MMU) - Academic support and resources
  • VIP Program - Providing the platform for this research
  • Open Source Community - For the excellent tools and frameworks
  • Arabic Sign Language Community - For the inspiration and importance of this work

About

Arabic sign language recognition system using transfer learning (ResNet101V2) and YOLO-based hand detection. Benchmarks CNN, LSTM, and GNN architectures with multi-metric evaluation framework.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published