An end-to-end framework for Moroccan Sign Language (LSM) recognition using Mediapipe for keypoint extraction and LSTM (Long Short-Term Memory) neural networks for sequence classification
# LSM Darija - Sign Language Recognition System
An end-to-end framework for Moroccan Sign Language (LSM) recognition using Mediapipe for keypoint extraction and LSTM (Long Short-Term Memory) neural networks for sequence classification.
---
## Overview
This project provides a complete pipeline to collect, train, and deploy a real-time sign language recognition system tailored for Moroccan Darija. It leverages high-resolution hand and body landmarks to understand temporal gesture sequences.
### Key Features
- **Real-time Inference**: Interactive webcam interface with visual feedback and confidence scoring.
- **Automated Data Collection**: Streamlined recording process for building custom gesture datasets.
- **Deep Learning Pipeline**: PyTorch implementation of an LSTM-based architecture for sequential data.
- **Visual Feedback**: UX-enhanced displays during both collection and prediction phases.
---
## Project Structure
```text
├── data_collection/ # Tools for recording gestures and extracting keypoints
│ ├── main_data.py # Main script for automated data gathering
│ └── utils/ # Helpers for folder initialization and keypoint extraction
├── src/ # Core library
│ ├── LSTM_models/ # Model architectures (LSTM, etc.)
│ ├── utils/ # Mediapipe handlers and UI visualization tools
│ └── config.py # Global settings (actions, sequence length, paths)
├── train_model/ # Model training environment
│ ├── train.py # Training script
│ ├── model.py # Model definition for training
│ └── dataset.py # PyTorch Dataset for loading .npy keypoints
├── main_inference.py # Main application for real-time recognition
├── requirements.txt # Project dependencies
└── models/ # (Created upon training) Storage for .pth weight files
```
---
## Installation
1. **Clone the repository:**
```bash
git clone
github.com
cd LSM_Darija_Backend
```
2. ** …