ASL_Pytorch:GISLR向けPyTorchベースライン(ASL単語認識)

AI/ML

概要

このリポジトリは、Kaggle の GISLR(グローバル/学術用の ASL 単語データセット)を対象とした PyTorch 実装のベースラインです。入力は MediaPipe 形式のランドマーク(合計543点)で、前処理ステップにより唇(lips)・優位手(dominant hand)・小さな姿勢サブセットを抽出し、座標を左利き(left-dominant)に揃える変換を行います。学習は Transformer ベースのネットワークを用いた単語単位(isolated word)認識を想定しており、さらに推論結果の単語列を Google Generative AI(Gemini)に渡して簡易な文章へと組み立てるデモ(app.py)を含みます。軽量なランドマークベースのパイプラインにより、映像データを用いない高速な前処理と推論が可能です。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 13
  • ファイル数: 6
  • メインの言語: Python

主な特徴

  • MediaPipe 形式(543点)のランドマークを利用したランドマークベースのパイプライン。
  • 前処理で唇・優位手・姿勢の小サブセットを抽出し、左利き(left-dominant)に正規化。
  • Transformer を用いた PyTorch ベースラインで isolated ASL 単語認識を実装。
  • 推論デモ(app.py)で認識した単語列を Gemini に渡して簡単な文章へ変換する機能を搭載。

技術的なポイント

このプロジェクトの技術的な核は「ランドマークベースの軽量入力設計」と「Transformer を用いた時系列処理」の組み合わせです。MediaPipe スキーマに基づく 543 点のランドマークから、手話認識に特に有用と考えられる唇と優位手、さらに小さな姿勢(pose)サブセットを選別することで、不要な次元を削減し学習安定性を高めています。また、左右の利き手差を補正するために座標を左優位(left-dominant)にフリップする前処理を行い、左右反転によるデータばらつきを低減します。モデル側は Transformer アーキテクチャを採用しており、自己注意機構によりランドマーク時系列に含まれる空間・時間的相関を捉えます。Transformer は畳み込み系より長期依存の扱いに強く、手話のような時間的なパターン検出に適しています。さらに、推論パイプラインは単語列を外部の大規模生成モデル(Google Gemini)へ送って簡易文章化するデモを備え、認識結果を即座に“読み物”として提示する UX を実現します。実装は比較的コンパクトで、requirements.txt による依存管理、.env による API キー管理(Gemini 等)を想定した構成です。注意点としては、対象が isolated word(単語単位)であるため連続手話(continuous sign)や文脈依存の翻訳には追加の設計が必要であり、ランドマークのみを用いるため映像由来の表情や背景情報を捉えられない点です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .env: file
  • README.md: file
  • app.py: file
  • data: dir
  • requirements.txt: file

…他 1 ファイル

※ 想定のワークフロー:requirements.txt で依存をインストール → data 配下に GISLR の前処理済みランドマークを配置 → 学習・評価スクリプト(リポジトリ内にある場合)でモデルを訓練 → app.py で推論デモ(Gemini 連携は .env に API キーを設定)を実行、という流れです。

まとめ

ランドマーク中心で軽量、Gemini 連携の文章生成デモまで備えた実用的な ASL 単語認識ベースライン。

リポジトリ情報: