Real-Time ASL Hand Gesture Recognition Using Computer Vision
Abstract
This project implements real-time recognition of American Sign Language (ASL) hand gestures using computer vision and machine learning. It leverages Mediapipe for hand tracking and a Random Forest Classifier for gesture prediction. A user-friendly GUI built with Tkinter facilitates data collection, training, and live inference.
Features
Real-Time Detection: Recognizes ASL hand gestures using webcam input.
Data Collection: Streamlined collection of hand gesture images for training.
Dataset Creation: Automatic conversion of collected data into training-ready datasets.
Model Training: Easy training of a Random Forest Classifier with a few clicks.
GUI Interface: Interactive and user-friendly interface built with Tkinter.
How It Works
Hand Tracking: Mediapipe is used to detect and track hand landmarks in real-time.
Feature Extraction: The relative positions of hand landmarks are extracted for each frame.
Machine Learning: A Random Forest Classifier is trained on the collected data to predict ASL letters.
Real-Time Inference: The trained model predicts the ASL letter from the webcam feed.
Results
An example of me starting and capturing data for ASL letters A and B:
An example of me creating a dataset and training the classifier:
A live ASL detection demo:
Installation and Usage
Prerequisites
Ensure you have Python 3.7+ installed.
Installation
Clone the repository:
git clone https://github.com/almoamenahmed/ASL-Detection.git
cd ASL-Detection
Install Required Dependencies:
pip install -r requirements.txt
Running the Application
Launching the GUI:
python gui.py
Future Enhancements
Dynamic Gesture Recognition: Expand to recognize full ASL words and phrases.
Improved Accuracy: Integrate deep learning models (e.g., CNNs) for enhanced predictions.
Mobile App: Develop a mobile version of the application for broader accessibility.