Skip to content

頭部動作とまばたきを用いた非接触文字入力インタフェース( Contactless Japanese text input interface using head movement and blinking)

Notifications You must be signed in to change notification settings

yuzukq/HeadFlickIME

Repository files navigation

Head Movement and Blinking Non-Contact Character Input Interface

概要 (Overview)

このシステムは大学内の実験で作成したArduinoとProcessingを使ったシステムです。頭部動作とまばたきを用いて日本語の文字入力を行う、非接触型インターフェースシステムです。筋萎縮性側索硬化症(ALS)や進行性核上性麻痺(PSP)など、身体動作が制限される方々のための意思疎通手段としての応用を目指し、既存の入力システムが抱える高コストや複雑な導入といった課題を解決するために開発しました。

システム外観

システム外観

特徴 (Features)

  • 低コスト・非接触・ハンズフリー: 高価な外部カメラや複雑な画像解析を必要とせず、メガネに装着可能なフォトリフレクタと六軸加速度センサーのみで文字入力を実現します。
  • 直感的なフリック入力: スマートフォンのフリック入力に類似した操作体系を、頭部の傾き(ポインティング)と瞼の開閉(決定)にマッピングすることで、直感的な操作を可能にしました。
  • 子音・母音選択レイヤー: 瞼を閉じることで子音選択レイヤーから母音選択レイヤーへシームレスに切り替わり、効率的な文字入力フローを提供します。
  • 誤検出防止ロジック: 無意識的なまばたきと意図的な瞼の動作を識別するロジックを実装し、誤入力を防ぎます。

システム構成 (System Architecture)

本システムは主に以下の要素で構成されています。

  1. ハードウェア:
    • フォトリフレクタ (POPOLU QTR-1A): メガネのレンズ部分に装着し、瞼の開閉による光の反射率変化を検出します。これにより、外部カメラなしで瞼の状態を電気的に観測します。
    • 六軸加速度センサー (FORIOT MPU-6050): メガネのフレームに装着し、頭部の姿勢角(Roll方向とYaw方向)を検出します。このデータを用いて、画面上のポインター位置を決定します。
    • マイコンボード (Arduino UNO Rev3): 各センサーからのデータを読み込み、瞼の開閉判定や頭部姿勢角に基づくポインター座標の計算、およびProcessingへのシリアル通信を行います。
  2. ソフトウェア:
    • Arduino スケッチ: センサーデータの処理、意図的な瞼の動きの判別、頭部姿勢角に応じたポインター位置の決定ロジックを実装しています。移動平均フィルタを適用することで、センサー値の揺らぎを補正しています。
    • Processing スケッチ: Arduinoからのシリアル通信を受け取り、文字盤の表示、ポインターのハイライト表示、そして最終的な日本語文字のPCへの標準入力を行います。日本語入力にはJava Robotライブラリとクリップボード連携を利用しています。
    • Webインタフェース (HTML/CSS/JavaScript): 実験時の測定ツールとして使用されました。ユーザーへの指示表示、入力テキストのフィードバック、実験データの収集、およびアンケート表示機能を含みます。(script.js にて入力の正確性評価、速度計算、SUS評価など実験に関する主要なロジックが実装されています。)

システム動作原理 (How It Works)

  1. 子音の選択: ユーザーは頭部の向きを変えることで画面上の文字盤(子音)にポインターを合わせます。
  2. 母音選択レイヤーへの遷移: 選択したい子音にポインターが合っている状態で、意図的に瞼を250ms以上閉じると、母音選択レイヤーへ切り替わります。
  3. 母音の選択: 母音選択レイヤーでも同様に頭部を動かし、目的の母音にポインターを合わせます。
  4. 文字確定: 瞼を開くことで、選択された子音と母音の組み合わせに対応する日本語の文字が確定され、PCに入力されます。

動作風景

動作風景デモ動画

成果 (Results)

本システムは、システム設計者による評価および初見の実験協力者10名によるユーザビリティ評価を実施しました。

  • 高い入力精度と速度: 3文字の単一方向入力タスク(例:「なかの」、「ひなた」)において、100%の入力精度と平均0.38〜0.49文字/秒の入力速度を達成しました。特に縦方向の入力速度が横方向よりも速い傾向が見られました。
  • 良好なユーザビリティ (SUS): 初見のユーザーによるSUS評価では、平均74.0点(許容可能とされる68点以上)を記録し、良好なユーザビリティを示しました。特に、瞼の開閉によるレイヤー切り替えと頭部ポインティングの組み合わせは高く評価されました。

今後の展望 (Future Enhancements)

  • 入力精度の向上: 斜め方向入力や長文入力時の精度低下(最大20.8%のCER)が課題として挙げられます。六軸加速度センサーのYaw軸におけるドリフト蓄積を抑制するため、地磁気センサーなどを用いたセンサーフュージョンの導入を検討します。

  • UXのカスタマイズ: 利用者ごとの身体的特性や習熟度に応じた閾値の動的な調整機能や、ハードウェア設計の改善により、さらなるユーザビリティ向上を目指します。

  • 新たな応用分野への展望: 本システムで実現した「カメラを用いない頭部トラッキングおよび瞼検出技術」は、福祉分野に限らず、Webカメラを使わずにVtuberのようなアバター操作を行うインターフェースとしても応用可能です。実際に、カメラ非依存でアバターを操作するデモ動画も作成しました。 カメラ非依存Vtuber操作デモ動画

About

頭部動作とまばたきを用いた非接触文字入力インタフェース( Contactless Japanese text input interface using head movement and blinking)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published