産業応用工学会全国大会2019 講演論文集,2019 年 9 月 18-20 日 Proceedings of IIAE Annual Conference 2019, September 18-20, 2019
© 2019 The Institute of Industrial Applications Engineers, Japan.
手の情報より操作を行う3
D ユーザインターフェース
西本 渉
a北園 優希
a a北九州工業高等専門学校
1. はじめに
現在マウスやキーボードでの操作やタッチパネルに よる操作がユーザインターフェースの主流となっている。 しかし、マウスやキーボードを使っての操作では汎用性 は高いが3 次元での分かりやすい操作をすることができ ない。 3 次元での分かりやすい動作をするユーザインタ ーフェースの開発が進んでいてよりコンピュータ空間が 現実に近づいてきている。そして、3D 空間での操作も需 要が高まってきている。(1)しかし、タッチディスプレイ では入力情報がタッチポイントの座標しか持たないため 操作のバリエーションが少なく操作に限りがある。 そこで我々は現在主流となっているマウスやキーボー ドでの操作での多彩な操作とタッチディスプレイや VR で可能となっている3 次元での分かりやすい操作の両立 ができるインタラクションの開発の研究を行う。非接触 のデバイスを考える。非接触のデバイスで多彩な操作を 行うにはハンドジェスチャが適していると考える。(2)ハ ンドジェスチャといってもひとくちに手の形でショート カットを作成するだけでなく動的な情報も得ることがで きるためタッチディスプレイよりも情報量が多く現実に より近づけることができる。(3)したがって,本研究では ハンドジェスチャを用いた非接触の 3D ユーザインター フェースを研究する。(4)2. 原理
2.1 構造 構造としてはグローブ型の入力装置と赤外カメラから 成り立つ。グローブ型の入力装置には赤外線LED と超音 波センサを人差し指の指先に取り付け、曲げセンサを各 指に取り付けている。そして、手の甲に加速度センサ、 人差し指の側面には感圧センサを取り付ける。また、セ ンサの制御のために Arduino を用いていて,モデルの作 成をUnity で行っている。 2.2 X-Y 座標の取得 非接触のデバイスでのX-Y 座標の情報を取得するため の方法として赤外カメラと赤外 LED を用いて 2 値化し た画像の光の重心を出すことでX-Y座標を取得する。 2.3 両手のX-Y 座標の取得 手に取り付けたLED をそれぞれ認識する。輪郭を認識 することで2 つ以上の点を検出できる。これをラベリン グしてそれぞれの点の重心を求める。必要のない複数の 小さな点を認識してしまう場合や2 つの点が重なってし まう場合が起こってしまう。縮小処理を繰り返すことで これらの問題を解消できる。8近傍のいずれかが黒であ ればその点を黒にする処理を行う。また、縮小処理を行 っても生活光などのノイズが発生する可能性がある。そ れぞれのひとつなぎの白い点の面積の大きさが大きい順 に 2 つの点を両手に取り付けた LED の光であると認識 する。 2.4 Z 座標の取得 Z 座標の情報を取得するため人差し指の指先に超音 波センサを取り付けスクリーンからの距離を測定しZ 座 標を取得する。 2.5 ジェスチャの取得 手の指の曲げ伸ばしの認識をグローブ型の入力装置の 内部に曲げセンサに設置して行う。曲げセンサからの出 力を Arduino で取得しモデル上で指の曲げ伸ばしの組み 合わせで行動を行うようにすればショートカットが作ら れる。 2.6 手の傾きの取得 手の甲に取り付けた加速度センサを用いて手の傾きの 取得を行う。 2.7 操作の入力の決定 人差し指の側面に取り付けた感圧センサによって圧力 を測定し閾値を設定してジェスチャや操作の確定を行う。 2.8 通信の無線化 両手で制限なく操作するにあたって無線での通信を行 った.Bluetooth モジュールを用いて無線で通信を行う。 2.9 動作確認モデルの作成 片手での基本的な動作を行う動作モデルを Unity 上 で作成した。モデルを作成するに当たって正方形の空間 に対象を作成しその対象の動きを入力装置によって操作 するように設定した。X-Y座標の移動はカメラを中心と して手を動かした場所に移動できるよう対象物を座標移 動させるように設定している。Z 座標の移動はスクリー ンを1 番奥の状態として手を手前や奥に動かした分動く ように設定した。他にも、ジェスチャを複数作成し対象 物の大きさをジェスチャによって変化させるように設定 3D user interface that operates from hand informationWataru Nishimotoa, Yuuki Kitazonoa aNITKIT
© 2019 The Institute of Industrial Applications Engineers, Japan. している。また、左右、奥、下部の壁に違いがわかるよ うに色を変えている。 2.10 実用的なモデルの作成 実装した機能を実用的に使えるようなモデルを作成す る。部屋に家具を配置するシミュレーションを行えるよ うなモデルを作成する。
3. 実験
3.1 X-Y 座標の取得 赤外線 LED の光を赤外カメラで画像を取得した。ま た、画像を赤外線LED の光のみを判別できるように閾値 を200 に設定して 2 値化した。その重心を出してX-Y 座標を取得した。これを Unity 上のモデルで行い、赤外 カメラでグローブに取り付けた赤外 LED を撮影しその 手の動きと同じように動くように設定した.これを図 1 に 示す。 3.2 両手のX-Y 座標の取得 ここでは両手のX-Y座標が正しく取得できるかの実 験を行った。元の画像図2 に示す。ラベリングを行い1 まとまりの点にランダムに色をつけ動作の確認を行った。 これを図2 に示す。次に縮小処理を行い8近傍のいずれ かが黒の場合黒にする様にしてその作業を繰り返した。 これにより2 つの光の重心を求めることが可能となった。 これを図2 に示す。最後に、2 点の重心の距離を求めた。 これを図2 に示す。 3.3 Z 座標の取得 Arduino 上で超音波センサによりスクリーンとの距離 を測定しモデルを操作できるように設定した.これを図 3 に示す。この図はわかりやすいように上から見た図を示 している。 3.4 ジェスチャの入力 Arduino 上で曲げセンサによりジェスチャを認識して Unity 上で作成した.モデルで Z 軸の移動の許可のコマン ドや対象物の大きさの変化のコマンドとして実装した。 3.5 手の傾きの取得 加速度センサを用いて対地角を求めた。実際にxyz 軸 そ れ ぞ れ の 動 作 を 確 認 し た.それぞれの軸に対し傾けた 分の角度が検出できた。 3.6 動作モデルの作成 部屋に家具を配置するシミュレーションを行えるよう なモデルを作成する。原理に記述した機能を実装する。 ジェスチャによって家具を配置する.このイメージを図 4 に示す。作成した家具を手の傾きによって傾ける。この イメージを図5 に示す。手の広げ幅によって家具の大き さを変化させる。このイメージを図6 に示す。これはモ デルの作成を先に行っているので実際の動きに対して動 作を行えていないため設定が必要である。必要なデータ の数値は前に述べた実験で取得できるためモデルとの調 整が必要である。文 献
(1) 児玉浩卓,“手動作を用いた三次元形状操作インタ ーフェース”,pp,1-2,2003. (2) 土屋太二,高橋和彦,“ハンドジェスチャによる拡張 現実感システムの構築”pp,1-2,2009.(3) Hayato Takahashi, Seiichi Serikawa, and Yuhki Kitazono: "Extending Three-Dimensional Space Touch Interaction using Hand Gesture", Social Science 2017 (4) 西本渉,北園優希:「ハンドジェスチャを用いた 3D ユーザインターフェースの提案」,第70 回電気・情 報 関 係 学 会 九 州 支 部 連 合 大 会 講 演 論 文 集 ,pp.189-190,2017 (a)右上 (b)左下 図1 X-Y 座標の実装 (a) 元画像 (d)重心同士の距離 図2. 2 点の重心 (a)手前 (b)奥 図3. Z 座標の実装 (a)曲げなし (b)ジェスチャの入力 図4 ジェスチャの実装 (a)右回転 (b)左回転 図5 回転 (a)縮小 (b)拡大 図6 大きさの変更 51