Skip to main content

Live ASL fingerspelling alphabet recognition with a polished webcam UI.

Project description

signspell

Live ASL fingerspelling alphabet recognition — straight from your webcam.

signspell recognises the American Sign Language manual alphabet (A–Z) in real time using MediaPipe hand tracking and an LSTM model trained on 30-frame keypoint sequences. It ships with a pretrained model and a polished webcam UI, and it works both as a command-line tool and an importable library.

ASL fingerspelling alphabet chart

The American Sign Language fingerspelling alphabet that signspell recognises.


Install

pip install signspell

Requires Python 3.9–3.12. A webcam is required for live recognition.

Run it (CLI)

signspell                  # default webcam, bundled model, pro UI
signspell --camera 1       # pick a different camera
signspell --threshold 0.6  # require higher confidence
signspell --no-mirror      # disable mirrored view

In-window keys: q quit · c clear sentence · SPACE add a space.

Use it (library)

Run the full UI from code:

import signspell
signspell.run()

Or drive recognition yourself, frame by frame:

import cv2
import signspell

rec = signspell.Recognizer()
cap = cv2.VideoCapture(0)

while True:
    ok, frame = cap.read()
    if not ok:
        break
    letter, confidence, probs = rec.predict(frame)
    if letter:
        print(letter, f"{confidence:.2f}")

The Recognizer keeps a rolling 30-frame buffer internally, so you just feed frames and read predictions. letter is None until the buffer fills or when confidence is below the threshold.

How it works

  1. MediaPipe Holistic extracts 21 right-hand landmarks per frame.
  2. The last 30 frames of (x, y, z) keypoints form a sequence.
  3. An LSTM classifies the sequence into one of 26 letters.
  4. A short stability window prevents flicker before a letter is committed.

Bring your own model

signspell --model path/to/your_model.h5
signspell.Recognizer(model_path="path/to/your_model.h5")

Your model must accept input shape (1, 30, 63) and output 26 class scores.

License

MIT © Sundar

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

signspell-2.0.1.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

signspell-2.0.1-py3-none-any.whl (2.1 MB view details)

Uploaded Python 3

File details

Details for the file signspell-2.0.1.tar.gz.

File metadata

  • Download URL: signspell-2.0.1.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for signspell-2.0.1.tar.gz
Algorithm Hash digest
SHA256 39497ab90d541e57ec8596cfadba271f030aa937a75a855bdfc649398c0c7e7b
MD5 af68b8bd9c57068904bcf85f79967c75
BLAKE2b-256 8b293e1a85c4a45508160b2fe1b7200c91f1a6b42a51fded9818ed921ffb6d90

See more details on using hashes here.

File details

Details for the file signspell-2.0.1-py3-none-any.whl.

File metadata

  • Download URL: signspell-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for signspell-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3efea2ed5a41fd191d4b6f68374756109ec1d64423624a424b39252534768099
MD5 d521fb7c03a6378340c302a18127b7a8
BLAKE2b-256 e2301e98c372b5db1c76eca6a4c52241a6439e88dc7bf47351f8f6ddabc0ecdd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page