SignToWords is a high-performance, real-time Sign Language to Speech translator. Using Google's MediaPipe for ultra-fast hand tracking and a custom gesture recognition engine, it bridges the communication gap by converting hand signs into spoken words instantly.
- ⚡ Real-Time Recognition: Minimal latency using asynchronous processing.
- 🔊 Voice Synthesis: Integration with
pyttsx3for high-quality, continuous speech output. - 📐 Auto-Scaling UI: Premium OpenCV interface with "Glassmorphism" effects and letterboxed scaling to maintain aspect ratio on any screen size.
- 🧠 Temporal Stabilization: Advanced buffer logic to filter out "jumpy" detections and ensure only deliberate signs are spoken.
- 📝 Sentence Mode: Intelligent silence detection automatically groups signs into complete sentences.
- 📂 No Training Required: Works out of the box with a pre-tuned heuristic model.
- Python 3.8 or higher
- A webcam
-
Clone the repository:
git clone https://github.com/Ankur3509/SignToWords.git cd SignToWords -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python main_pretrained.py
Alternatively, Windows users can simply double-click
run_pretrained.bat.
| Category | Gestures |
|---|---|
| Numbers | One, Two, Three, Four |
| Greetings | Hello, Thank You, Stop |
| Responses | Yes (Fist), OK, Good (Thumbs up) |
| Expressions | Peace, I Love You, Help |
For detailed visual instructions, see the Visual Gesture Guide.
- MediaPipe: Used for robust 21-point hand landmark detection.
- OpenCV: Handles video stream processing and the custom UI overlay.
- Pyttsx3: Offline Text-to-Speech synthesis with multi-threading support.
- NumPy: Optimized vector math for gesture geometry calculations.
- Hand Landmark Extraction: MediaPipe identifies 21 spatial coordinates of the hand.
- Gesture Heuristics: The
PretrainedSignDetectoranalyzes finger extension angles and palm orientation. - Stabilization: A sliding window buffer ensures a gesture is held for a minimum duration before recognition.
- TTS Queue: Words are pushed to a thread-safe queue for seamless, non-blocking audio output.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Created with ❤️ by Ankur and the SignToWords Team