Git Product home page Git Product logo

pganguli / sign-language-detection Goto Github PK

View Code? Open in Web Editor NEW

This project forked from priyanka-maz/sign-language-detection

0.0 0.0 0.0 391.78 MB

EchoSign was made as part of an IBM internship project which we won with this project. It uses transfer learning on MobileNet on a hand-curated dataset of ASL images. The website for this classification was developed in Flask and it uses TTS technology for ASL text to speech conversion.

License: MIT License

JavaScript 6.89% Python 25.34% CSS 24.20% HTML 43.57%

sign-language-detection's Introduction

Sign Language (ASL) Detection System using MobileNet, TensorFlow v2, Python, Flask, OpenCv2, Web Speech API


Logo

EchoSign

Working Gif

This gif shows ASL sign detetcion and recognition of the class which is written as interpreted text.
To hear the text-to-speech, navigate to Live_ASL_detection_TTS.mp4

Setup using Python virtual environment

First we create the virtual environment and clone the repository into it. Then, we install all dependencies before running the application.

python3 -m venv /path/to/venv
cd /path/to/venv
git clone https://github.com/priyanka-maz sign-language-detection
source bin/activate
cd sign-language-detection
python3 -m pip install -r requirements.txt
python3 app.py

Usage

  • Click on 'Start' on the homepage to begin sign language detection on your video feed

  • Permissions for video feed usage must be set to 'Allow'

  • Write letters in American Sign Language to form words or phrases which show up on the console on the right

  • Click on 'Play' button below the console to convert your sentences from text-to-speech for seamless communication

  • For non-ASL users, you can refer to the English to ASL converter on the homepage

  • Follow 'Tips' under console for further instructions

Screenshots

HomePage Info about ASL ASL alphabets clipart English to ASL convertor ASL Detection with confidence percentage Backend_video_feed and Tips Text to speech settings About US Our Vision Our Team Links and references

Features (asl-support-inclusive)

  • This website was developed using Python, Flask, HTML, CSS & Javascript.
  • Users who wish to converse in ASL, may use this detection system to convert the interpreted text to speech for communicating without bounds.
  • Users who aren't equipped with ASL may use the English to ASL converter to learn relevant symbols.
  • The voice for TTS technology may be changed in settings.
  • Developers may check the raw footage opened using SocketIO and the prediction on top of that OpenCV feed.
  • Text-to-speech translation uses SpeechSynthesisUtterance() of the Web Speech API.
  • TensorFlow 2.0 and Keras library is used in the development of our model. The final model used for testing and deployment is MobileNet.
  • Other machine learning techniques employed are:
    • Data Augmentation
    • Transfer Learning
    • Validation Set for Accuracy metric
    • Early Stopping
    • Nadam Optimizer
    • Exponential Decay Learning Rate
    • Categorical Cross Entropy Loss

File Structure

.
├── app.py.............................Runs the Flask application and deploys all webpages
│                                      as well as calls necessary computational functions
├── datasets...........................Contains tar.gz file of the dataset and 
│                                      some necessary statistics for the dataset
├── LICENSE............................MIT LICENSE
├── models.............................TFLITE version models of MobileNet and EfficientNet
│   ├── model_efficientnet_v2s.tflite
│   └── model_mobilenet_v2.tflite
├── README.md
├── requirements.txt
├── screenshots........................Contains necessary visualizations about the 
│                                      model performance, data and website
├── static.............................Contains all js, css files and images used in the website
│   ├── connection.js
│   ├── opencv.js
│   └── style.css
├── templates..........................Contains all HTML templates deployed in the website
│   ├── about.html
│   ├── index.html.....................HTML template of the page where sign detection occurs
│   ├── landing.html
│   └── layout.html
├── train.py...........................Used to train the entire model, contains all 
│                                      ML techniques mentioned above
├── webcam_detect.py...................Loads the model and predicts the class from the 
│                                      frame input given as softmax probability which is sent 
│                                      back to the client's end
└── webcam.py..........................Used for testing ASL Sign Detection and preiction locally

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.