Logo Lanfrica

5TH-SOFTWARE-ENGINEERING/Tigrigna_Alphabet_Sign_Language

Domain:

natural language processing

Record type:

softwaredataset
Creator:
5TH
Host:
# Tigrigna ASL (Fingerspelling) — Data Collection, Training, and Real‑Time Detection This repo contains a full pipeline for collecting hand-sign images for 30 Tigrigna letters, training a CNN, and running real-time detection via MediaPipe + TensorFlow + Flask. ## What’s included - `tigrigna_letters.py` — Shared mapping (30 letters → transliteration folder names). Default target per letter: 665 samples (`SAMPLES_PER_LETTER`). - `asl_data_collector.py` — Camera-based data collection (auto/interactive). Saves JPEGs to `tigrigna_dataset/ /` and keeps `dataset_progress.csv` in sync. - `asl_model_trainer.py` — Loads the dataset, applies the same preprocessing as inference, trains a CNN, saves `tigrigna_model.h5` + `tigrigna_model.h5.labels.txt`. - `image_preprocessing.py` — Normalization and augmentation helpers shared by training and inference. - `real_time_tigrigna_detector.py` — Desktop real-time detector (MediaPipe Hands + model, ROI view). - `app.py` — Flask web UI that streams camera frames and exposes debug endpoints. - `evaluate_model.py` — Batch evaluation with confusion matrix and misclassified samples CSV. - `scripts/verify_progress.py` — Checks `dataset_progress.csv` against files on disk (optional `--fix`). ## Current defaults (keep in sync) - Image size: 120 (width) x 160 (height), portrait 4:3. `config.py` sets `IMAGE_SIZE` and `MODEL_INPUT_SHAPE`. - Preprocessing: Gaussian blur + min-max normalization (`normalize_roi`) during training and inference. - Confidence thresholds: see `config.py` (`CONFIDENCE_THRESHOLD_*`, `CONFIDENCE_MARGIN`). - Target samples per letter: 665 (`tigrigna_letters.py`). Adjust there if you want a smaller/larger target. ## Quick setup (Windows PowerShell) # Create and activate virtual environment (recommended) python -m venv mp-env # On Windows: mp-env\Scripts\Activate.ps1 # On Mac/Linux: source mp-env/bin/activate # Install all packages pip install -r requirement.txt ## Data collection Run the collector: ```powershell python …