顔インターフェイス (HeadSwitch) ユーザーガイド


www.aeroTAP.com

HeadSwitchとは?

HeadSwitchは、Windows PCをキーボードやマウスを使わずに、顔 (頭) の傾きや表情( 口を開く/閉じる )を使って操作するUI ツール、タッチレスインターフェイスです。

キーボードのEnterキーを押す代わりに、顔を傾けることでEnterキーを押すことができます。
例えば、顔を左に向けることで、ブラウザのページをスクロール アップ/ダウンしたり、顔の傾きでマウスカーソルを移動して、口を開いてクリックしたりできます。
手が塞がっていて使えない場合に、何も触らずに離れたまま顔でコンピュータを操作することができます。

顔の傾きは、下の図の様に顔を中心としたXYZ軸の回転角を検出します。つまり、Y軸の回転が左右、X軸の回転が上下、Z軸の回転が左右回転に対応します。

HeadPose

アクションは、各軸の回転の大きさの閾値を超えると実行されます。閾値を変更することでカスタマイズが可能です。


利用用途

楽器(ギター、ピアノ、マリンバなど)で両手がふさがっている状態で譜面ソフトをめくるなどの用途に向いています。

PowerPointをめくるなどが行えます。

キーボードやマウスを使えない状態でアプリを動かしたい場合に利用できます。

本ソフトウェアは、dlibを使った顔検出ライブラリを利用して顔を検出し、顔の傾き(左右、上下、左右回転)を計測することでキーボードなど予め設定したアクションを実行します。

ご意見、ご要望などありましたら: www.aeroTAP.com よりお問い合わせください。


システム要件


起動方法

本ソフトウェアは、顔の検出を行います。マスクなどは、外した状態で利用してください。また、頭、顔を動かしますが、大きく動かす必要はありません。無理に動かして首を傷めないように注意してください。

1. HeadSwitch.exeを実行します。

2. 設定画面が表示されます。

設定画面の詳細については、設定画面ページを参照してください。

FaceSwitch
3.設定を変更/確認したら、[開始]ボタンをクリックして、開始します。設定画面が最小化され、フィードバック画面が画面上部に表示されます。
HeadSwitch_feedback
4. 実行中、画面上部にフィードバック画面が表示されます。
フィードバック画面は、マウスでドラックして、任意の位置に移動できます。
フィードバック画面には、現在の頭の傾き X,Y,Z および口の開きの値が表示されてます。閾値の設定時に参照してください。また、傾きの値は、緑(X軸)、赤(Y 軸)、および青(Z軸)のバーの長さでも表示されています。バーが閾値を超えていると太く表示されます。

5. プログラムを終了するには、設定画面(ALT+TABキーでアプリを切り替えて)表示して[終了]ボタンをクリック して終了します。


設定画面

アプリケーションを開始する前に、設定画面の内容を確認してください。

FaceSwitch

アクション設定
チェックボックス
アクションを有効にするには、チェックボックスをチェックします。

アクション
アクションは、キーボード(ホットキー)で定義します。
エディットボックスを選択し、目的のキー、または、キーの組み合わせを押して設定します。
閾値設定
上下閾値
上下(顔を上、または下向ける)角度の閾値を回転角度の値で設定します。
上下への回転は、体の構造上大きくしない方が使いやすい。
face_upface_down
左右閾値
左右(顔を右、または左向ける)角度の閾値を回転角度の値で設定します。
face_downface_up

口の開き閾値
これは、マウス(口)クリックのための閾値です。どれくらい口を開くかの大きさです。
(同じ値でも距離に応じて値が変化しますので注意してください)
回転閾値
左右回転(首を右、または左向ける)角度の閾値を回転角度の値で設定します。


フィードバックを常に最前面に表示
有効にすると、フィードバック画面は、常に最前面に表示され ます。
カーソルを動かす
上下左右の回転でカーソルを移動します。設定した閾値の半分の値でカーソルは移動し始めます。

クリックアクション
マウス(口)を使った、クリックアクションも有効になります。
マウス(口)クリックは、口を開けて、閉じることで実行されます。開けている時間を長く(0.8秒以上)すると、ダブルクリックを実行します。


閾値設定のためのヒント

閾値は、アプリケーションを開始後、フィードバック画面に表示される現在の各軸の回転値 ( X,Y,Z,M)を参考にしてください。
閾値を小さくすると小さな回転でアクションが実行されます。

誤認識などが多い場合は、閾値を少し高めに設定するとよいでしょう。


キャリブレーション(中央合わせ)

中央位置を合わせるキャリブレーションは、[開始]をクリックした直後、または フィードバック画面をクリックすることで実行されます。
顔を自然に、正面に向けた姿勢でキャリブレーションを行ってください。

重要: 顔を正面に向けている状態が、何も起こらない状態 (X,Y,Zの値が 0 ) になるようにキャリブレーションしてください。実行中、キャリブレーションを行うには、顔の位置を整えて、フィードバック画面をクリックします。


操作方法

 本アプリケーションが正しく動作するには、顔を認識する必要があります。下記の点を注意してください。

1. 部屋の明るさが顔を検出するために十分かどうか

2. 顔が検出できるか。マスクなど外してください。

3. カメラに顔が十分映っているか。フィードバック画面を見て、顔が中央部分にあり、また、顔を上下左右、首を左右に回転してもカメラ内に収まっているかを確認しながらカメラ 位置を合わせてください。
カメラとの距離も同時に確認してください。カメラから離れると顔が認識できなくなります。

4. 首を大きくねじる必要はありません、画面が見える範囲の傾きで十分です。首を痛めないように注意してください。


アクション検出方法

フィードバック画面に表示される、赤(左右)、青(回転)、緑(上下)の回転角度 ゲージを見ながら、顔を動かしてみてください。
これらのゲージは、閾値を超えると太く表示されます。アクションは、閾値を超えてから、戻った際に実行されます。
つまり、ゲージが太くなったら、少し戻すことで簡単にアクションを実行できます。

アクションが実行されると、フィードバック画面がフラッシュします。

右傾き

頭を右に傾けて(  Z軸回転 )、閾値が超えている状態


始めて操作する際は、すべてのアクションを無効にして、アクションの検出方法について、少し練習することをお勧めします。

    例: 左右は、赤色のゲージで表されます。顔の向きをゆっくりと右向けると、ゲージが右に延びます、さらにゆっくりと右に向けると太くなることが分かります。太くなったら、顔の向きを戻します。この時アクション が実行されます。

    太くなったまま(閾値を超えたまま)の状態が長く続くと(2秒)、顔の向きを戻してもアクションは実行されません。


    悪い姿勢

次の姿勢は、Z軸と、Y軸が同時 に傾いているため、不覚に2つのアクションが実行されることになります。XYZ の各軸をそれぞれ独立して傾けることを意識してください。





マウスカーソルの制御とクリック検出方法

[カーソルの移動]をチェックすると、顔の上下、左右の傾きでマウスカーソルを移動す ることができます。

設定した閾値の半分の値でカーソルは移動し始めます。ゆっくりと少し顔を左、または右 に向けてカーソルが移動することを確認してください。

クリックは、口を開き、閉じることで実行できます。ダブルクリッ クは、口を開いている時間が長い( 0.8秒以上 )とダブルクリックになります。口を開く大きさは、閾値で設定できます。



バージョン情報

Version 1.0.1 2020.3.31 最初の公開バージョン


分かっている問題

実行中、アプリケーションが停止することがあります。DLib内でエラーが発生していると思われます。将来対応したいと考えていますが、ご了承ください。


著作権

本アプリケーションは、株式会社ネクステッジテクノロジーにより開発されたものです。一般の利用において自由にご利用ください。

http://www.nextedgetech.com

DLibライブラリを含んでいます。DLibライブラリのライセンスに関しては、License.txt ファイルを参照してください。

本アプリケーションは、aeroTAP (エアロタップ) プロジェクトに関連して作成されました。

http://www.aeroTAP.com

その他、タッチレスインターフェイスに関しての詳細は、www.aeroTAP.com エアロタップを参照ください。

aeroTAP (エアロタップ) は、株式会社ネクステッジテクノロジーの登録商標です。
タッチレスインターフェイス は、株式会社ネクステッジテクノロジーの登録商標です。


Copyright 2020 nextEDGE Technology K.K. All rights reserved.