sign_talk is a real-time, camera-based sign language recognition system designed to reduce communication barriers for deaf and hard-of-hearing individuals.
Unlike traditional solutions that rely on gloves, sensors, or user-specific calibration, sign_talk works instantly on any camera-enabled device, making it highly accessible, scalable, and deployment-friendly.
This project was built as a Minimum Viable Product (MVP) for the
Microsoft Imagine Cup – Scale Track, with a strong focus on real-world usability and cloud scalability.
Sign language communication often depends on:
- Human interpreters (costly and not always available)
- Hardware-based systems (gloves, sensors, depth cameras)
- AI models that fail under real-world variations such as:
- Different hand sizes
- Orientation changes
- Personal signing styles
These limitations make existing solutions inaccessible, expensive, and unreliable for daily use.
sign_talk approaches sign recognition as a geometry and similarity problem, rather than a rigid classification task.
Instead of memorizing gestures, the system:
- Extracts hand landmarks
- Normalizes their relative geometry
- Creates orientation-robust embeddings
- Matches gestures using similarity search
This enables cross-user generalization without retraining.
- Hand landmark extraction using MediaPipe
- Geometry-based normalization using distances and ratios
- Orientation-invariant gesture embeddings
- Nearest-neighbor similarity matching
- Cloud-hosted inference using Microsoft Azure
- Real-time sign recognition
- Works across different users without retraining
- Uses only a standard RGB camera
- Cloud-based backend for device independence
- Lightweight and scalable MVP architecture
- Programming Language: Python
- Backend Framework: FastAPI
- Frontend Demo: Streamlit
- Computer Vision: MediaPipe, OpenCV
- Cloud Platform: Microsoft Azure App Service
sign_talk_mvp/
│
├── sign_language_backend/
│ ├── app.py
│ ├── requirements.txt
│ ├── recognizer/
│ └── reference_db/
│
├── sign_language_frontend/
│ ├── app.py
│ └── requirements.txt
│
├── sign_language_mvp/
│
└── README.md
cd sign_language_backend
python -m venv venvvenv\Scripts\activatepip install -r requirements.txtuvicorn app:app --reloadBackend API: http://127.0.0.1:8000
cd sign_language_frontend
python -m venv venvvenv\Scripts\activatepip install -r requirements.txtstreamlit run app.pyThe backend is deployed on Microsoft Azure App Service (Linux) using:
- FastAPI
- Gunicorn
- Uvicorn workers
Example deployed endpoint: https://sign-language-api-utkar-g6csdrhweadcgfft.centralindia-01.azurewebsites.net
YouTube Demo Videos:
- User opens the application on any camera-enabled device
- Performs a sign in front of the camera
- Hand landmarks are detected and normalized
- Gesture geometry is compared with stored references
- The closest matching sign is identified
- Result is displayed in real time
- Deaf–hearing communication bridge
- Inclusive education tools
- Public service kiosks
- Telemedicine and accessibility platforms
- Smart assistants with gesture input
- Expanded vocabulary and dynamic gestures
- NLP-based sentence construction
- Native Android and iOS apps
- Multilingual sign language support
- Offline edge deployment