HandGaze is a state-of-the-art gesture-recognition pipeline designed to bridge the gap between physical motion and digital input. By combining MediaPipe's high-fidelity hand tracking with a custom weighted similarity engine, HandGaze enables real-time, fluid text input without ever touching a keyboard.
Whether for accessibility, sterilized environments, or futuristic interfaces, HandGaze provides a robust and extensible platform for gesture-based control.
- 🎯 Intelligent Recognition: Uses a dual-metric similarity engine (joint angles + relative distances) for high-accuracy gesture detection.
- 💎 Glassmorphic UI: A stunning, modern interface featuring semi-transparent panels, neon accents, and smooth circular progress indicators.
- 📝 Smart Autocomplete: Integrated suggestion engine powered by an optimized offline dictionary for rapid typing.
- ⚡ High-Performance Pipeline: Multi-threaded camera handling and optimized AI inference for 30+ FPS performance.
- 🔄 Gesture Trainer: A built-in utility to train and personalize the system for your own unique hand gestures.
- 📚 Optimized Dictionary: Custom-formatted 370k+ word dictionary optimized for low memory footprint and fast lookup.
HandGaze 2.0 features a Cyber-Industrial aesthetic:
- Glassmorphism: Frosted panels that blend seamlessly with the camera feed.
- Dynamic Feedback: Interactive hand bounding boxes with neon corner brackets.
- Circular Progress: Intuitive gesture confirmation rings that prevent accidental inputs.
- Neural Splash: High-tech initialization sequence for a premium start-up experience.
- Core Logic: Python 3.11+
- Computer Vision: OpenCV
- AI/ML Model: MediaPipe (Hands v0.10)
- Natural Language: PySpellChecker (for smart suggestions)
- Data Persistence: Pickle-based gesture profiles
Ensure you have Python 3.11 or higher installed.
# Clone the repository
git clone https://github.com/notcaliper/HandGaze.git
cd HandGaze
# Setup virtual environment
python -m venv venv
./venv/Scripts/activate # Windows
# Install dependencies
pip install -r requirements.txt# Launch the main recognition system
python hand_recognition.py- Initialization: Allow the "Neural Pipeline" to initialize your camera.
- Positioning: Place your hand within the camera's view.
- Gestures:
- Perform a letter gesture (A-Z).
- Hold the gesture until the Circular Ring completes (100%).
- Use the SPACE gesture (closed fist) to complete a word.
- Use BACKSPACE (open palm sideways) to delete.
- Suggestions: The top 3 suggestions appear in the text panel. Hold the corresponding gesture to select.
Contributions are welcome! Please feel free to submit a Pull Request or open an issue for feature requests.
