ASL 手指スペル認識
Web カメラ入力から American Sign Language の手指スペル用アルファベットを認識し、A から Z までをリアルタイムで判定します。
signspell は、Webカメラから英語のアルファベット指文字をリアルタイム認識する Python パッケージです。CLI とライブラリ API に対応し、モデルと Web カメラ UI を同梱しています。
signspell は、Web カメラからライブの American Sign Language 手指スペル認識を行う Python パッケージです。手アルファベットに焦点を当て、A〜Z をリアルタイムで識別し、洗練された画面上インターフェースで結果を表示します。
このプロジェクトは、MediaPipe の手追跡と、30 フレームのキーポイント系列で学習した LSTM モデルを組み合わせています。学習済みモデルが付属し、コマンドラインまたはインポート可能なライブラリとして使用でき、オフラインの画像分類ではなく、Web カメラベースのライブ認識を求めるユーザー向けです。
Web カメラ入力から American Sign Language の手指スペル用アルファベットを認識し、A から Z までをリアルタイムで判定します。
プロジェクト説明にあるとおり、MediaPipe の手追跡と、30 フレームのキーポイント系列で学習した LSTM モデルを使用します。
学習済みモデルと洗練された Web カメラ UI を同梱しており、最初に自分でモデルを接続しなくても実行できます。
カメラ選択、信頼度しきい値、ミラー表示の切り替え、カスタムモデルパスの指定に対応したコマンドラインツールとして動作します。
ライブラリとしてインポートでき、フル UI 用の `signspell.run()` と、プログラムからフレームごとの予測を行う `Recognizer` を利用できます。
30 フレームのローリングバッファと短い安定化ウィンドウを使い、文字が確定する前のちらつきを抑えます。
ターミナルから signspell を実行し、デフォルトのカメラまたは選択した Web カメラインデックスから手指スペル文字を認識し、必要に応じて信頼度しきい値やミラー表示モードを調整します。
Python アプリケーションにパッケージをインポートし、`signspell.run()` を呼び出してフル Web カメラ UI を自分のワークフローに組み込みます。
フレームを自分で処理し、予測された文字をコードで扱いたい場合は、OpenCV のフレームキャプチャと `Recognizer` クラスを使います。
期待される入出力形状に合う互換モデルをすでに持っている場合は、同梱モデルをカスタム `.h5` ファイルに置き換えます。
リアルタイムの ASL 手指スペル認識を主な操作パターンとする、アクセシブルなデモ、授業例、またはプロトタイプに利用できます。
コマンドラインインターフェースと、インポート可能な Python ライブラリとして利用できます。CLI ではデフォルトの Web カメラまたは選択したカメラを使え、ライブラリでは `signspell.run()` と、フレームごとの予測を行うための `Recognizer` クラスを公開しています。
このプロジェクトの説明では、ライブ認識には Python 3.9〜3.11 と Web カメラが必要とされています。
ソースによると、American Sign Language の手指スペル用アルファベット(A〜Z)をリアルタイムで認識し、文字が確定する前のちらつきを抑えるための安定化ウィンドウも備えています。
PyPI では、このプロジェクトのライセンスは MIT License (MIT) と表示されています。
`--model path/to/your_model.h5` または `Recognizer(model_path=...)` でカスタムモデルを指定できます。ソースでは、モデルは入力形状 `(1, 30, 63)` を受け取り、26 クラスのスコアを出力する必要があるとされています。