HandSignAI: Hybrid CNN-PSO Framework for American Sign Language Recognition Using Sign Language MNIST Dataset
A hybrid deep learning approach for classifying American Sign Language (ASL) hand gestures using a Convolutional Neural Network (CNN) optimized with Particle Swarm Optimization (PSO), followed by fine-tuning through backpropagation.
- 🔗 Website: https://noorcs39.github.io/Nooruddin
- 📬 Contact: Nooruddin – [email protected]
- Source: Sign Language MNIST - Kaggle
- Format: 28x28 grayscale images of hand gestures for ASL alphabets A–Y (excluding J and Z due to motion)
- File Used:
sign_mnist_train.csv
- Conv2D Layer (32 filters) → MaxPooling2D
- Conv2D Layer (64 filters) → MaxPooling2D
- Flatten → Dense(128) → Output Layer (25 classes)
- Activation: ReLU + Softmax
- Optimizer:
- Phase 1: Particle Swarm Optimization (PSO)
- Phase 2: Backpropagation (Adam)
- 📥 Load and preprocess data (normalize, reshape, one-hot encode)
- 🧱 Create a CNN model using Keras
- 🔀 Optimize initial weights using Particle Swarm Optimization (PSO)
- 🔧 Fine-tune using backpropagation
- 📊 Evaluate model performance
- 📈 Visualize accuracy, F1-score, and confusion matrix
- ✅ Accuracy
- ✅ Weighted F1 Score
- ✅ Confusion Matrix Visualization
The model was trained using the below ASL gestures from the dataset:
pip install numpy pandas matplotlib scikit-learn tensorflowpython main.pyMake sure the dataset file sign_mnist_train.csv is in the same directory.
- Integrate webcam-based real-time prediction
- Extend model to handle dynamic gestures (J, Z)
- Deploy using Streamlit or Flask for a web interface
This project is licensed under the MIT License. See the LICENSE file for details.
