SignWave is a program designed to detect American Sign Language (ASL) hand gestures in real-time. It leverages machine learning algorithms and computer vision techniques to detect hand gesture to character translations via webcam. It features capabilities for gathering training data, constructing image data sets, training classifiers, and conducting live recognition of ASL characters. This was developed using Python, OpenCV, MediaPipe, and scikit-learn.
image_collector.py
- Python script to capture ASL character training images from the camera
dataset_generator.py
- Script to generate image datasets for training from collected images
image_classifier.py
- Trains the classifier to recognize ASL hand images
main.py
- Main program for detecting live ASL hand gestures
- Image Collection
- Run
image_collector.py
to collect ASL character training images from the camera. Images are saved in corresponding directories in the./data
directory.
- Run
- Dataset Generation
- Execute
dataset_generator.py
to generate image datasets for training from the collected images. This dataset will be saved indata.pickle
.
- Execute
- Training
- Run
image_classifier.py
to train the classifier on the generated datasets. The trained model is saved asmodel.p
.
- Run
- Live Detection
- Execute
main.py
to detect ASL hand gestures in real-time using the webcam.
- Execute
- Python 3.xx
- OpenCV (
pip install opencv-python
) - MediaPipe (
pip install mediapipe
) - scikit-learn (
pip install scikit-learn
)