情報処理学会 インタラクション 2015
IPSJ Interaction 2015

B22
2015/3/6

高速手指動作認識による携帯端末向け多指 AR タイピングインタフェース
樋口 政和1,a)

小室 孝1,b)

概要：本稿では, 携帯端末の背面に設置されたカメラからユーザの手指を含む実画像を取得し, オプティカ
ルフローにより手指の動きを認識することで, 実画像上に重畳した仮想キーボードで多指による空中タイ
ピングを可能にするインタフェースを提案する. このインタフェースを備えたシステムでは, ユーザの視線方向とカメラの向きが同じであり, キーボード上にユーザ自身の手が重畳されるので, 実際にキーボードがそこにあるかのような感覚でタイピングが可能である. また, 手や指の姿勢認識は行わず, その動きのみの認識を行うので, 複雑な処理を必要とせず高速で安定した動作が見込まれる. PC ベースの実験システム
では, 1 フレーム当たり約 8.33 [ms](フレームレートに換算して約 120 [fps]) で手指の動き認識を実現した.
提案インタフェースの性能を評価するため, キーボードアプリケーションを実験システムに実装し, 多指による実時間空中タイピングを実現した.

Multi-finger AR Typing Interface for Mobile Devices
Using High-Speed Hand Motion Recognition
Higuchi Masakazu1,a)Komuro Takashi1,b)

Abstract: In this paper, we propose a new user interface designed to improve the usability of mobile devices.
The interface overlays a virtual keyboard on real images captured by a camera attached to the back of amobile device and recognize user’s hand motions by using optical flow information. The user can operate thevirtual keyboard with his/her multiple fingers in the space behind the mobile device. In the experimental
system equipped with our interface, the user can perform multi-finger typing with his/her hand as if there
were a real keyboard because the viewing directions of the camera and his/her eyes are the same and his/her
hand is overlaid on the virtual keyboard. The interface recognizes only hand motions and does not recognize poses of a hand or fingers, which enables high-speed stable recognition without complicated processing.
The interface recognized hand motions with a processing time of about 8.33 [ms/frame] (about 120 [fps]).
We implemented a keyboard application using our interface on the experimental system and evaluated theperformance. In the application, we realized real-time multi-finger typing in the air.

1. はじめに便性を損ねている. この問題は特に, 文字入力において顕著であり, その改善のために, 特別な機器を装着しての入力

近年, タッチパネルを搭載したスマートフォンなどの携やキーボードを平面上に投影して入力を行うなどの研究が帯端末が広く普及し, 我々の日常に欠かすことのできない

行われている [1], [2]. しかし, 特殊な入力方式による操作ものとなっている. スマートフォンの利点は, 文書の編集訓練の必要性, 機器を身に着ける煩わしさ, キーボード投影など, 今まで PC で主に行われてきた作業を携帯端末でものための場所の確保などの問題が挙げられる.

行えることである. しかし, スマートフォンはその携帯性

一方, 空中で指の動きを認識し, 特別な機器無しで入力操のために画面が小さく, 狭い画面での操作のしづらさが利作を可能とするシステムが開発されている [3]. このシステ

1

ムでは, 特別な装置を装着することなく, 空中で携帯端末a)b)

埼玉大学大学院理工学研究科 埼玉県さいたま市桜区下大久保 255
mhiguchi@mail.saitama-u.ac.jp
komuro@mail.saitama-u.ac.jp© 2015 Information Processing Society of Japanの操作を行う事ができる. しかし, 操作がカーソルを通じ520

そこで, 本稿では [4] で提案されているアプローチを踏襲しつつ, システムが高速で動作するように手指の動き認識手法の大幅な改善を図った. その結果, 1 フレー
ム当たり約 8.33 [ms] の時間 (フレームレートに換算して約 120 [fps]) で手指の動き認識を実現した. また, 提案手法の性能を評価するため, キーボードアプリケーションを PC
ベースの実験システムに実装した. そのアプリケーション
において多指による実時間空中タイピングを実現し, 提案
手法の有用性を確認した. 提案手法を利用することで, 端末上でのユーザの手指の動きの遅れが解消され, 快適なキー
タイピングが可能となった.

2. 関連研究
携帯端末の狭い画面上での操作性を向上させる研究はいくつか行われている. [5] では, 携帯端末の画面上での操作を工夫することで, 操作性の向上を図っている. この手法では, 携帯端末の画面上で指を動かす方向に応じて入力を行うことができ, 従来のスマートフォン向けの入力方式で起図 1 多指タイピングインタフェースシステムの操作の様子

こる目的のキーの隣を誤って押すというリスクを減らすこ

Fig. 1 Multi-finger typing interface system.

とができる. しかし, 特殊な操作方法であるため, 入力にはある程度の訓練が必要であることが問題として挙げられる.

た間接的なものであるため直感的な入力操作が難しいこと

操作領域を実空間に移すことで, 携帯端末表面上の操作や, 一本指にしか対応していないことが問題点として挙げ領域の狭さに関する問題を回避している研究もある. [1]られる.

では, ユーザの手や手に持った紙面などに仮想物体を重畳

この問題を解決するため, 携帯端末の背面空間においてし, ユーザの手指でそれらを操作できる Omnitouch が提仮想キーボードからユーザ自身の手指を使ってキー入力可

案されている. しかし, ユーザの肩に小型プロジェクタと能なシステムが開発された [4]. このシステムでは, 携帯端

深度カメラを装着する必要があり, これは現実的ではない.

末の背面に設置されたカメラからユーザの手指を含んだ実[2] では, 赤外線照射モジュールを利用して, 任意の平面に

画像を取得し, 拡張現実感 (AR: Augmented Reality) の技

キーボードを表示しその平面上で文字入力を可能にする術を用いて仮想キーボードとユーザ自身の手指を実画像上Canesta Keyboard が提案されている. しかし, 赤外線モに重畳する. そして, オプティカルフローにより手指の動ジュールを設置する場所やキーボードを投影するための平きを認識し, 仮想キーボードで多指による空中タイピング

面が必要であるという制約がある.

を可能にしている. 図 1 にこのシステムの操作の様子を示

それらに対し, 特別な外部機器を必要とせず, 携帯端末にす. ユーザの視線方向とカメラの向きは同じであり, 仮想搭載されたカメラを利用して指認識を行うことで, その機

キーボード上にユーザ自身の手が重畳されるので, 実際に器を空中で操作可能にするユーザインタフェースシステム

キーボードがそこにあるかのような感覚でタイピングが可が開発されている [3]. このシステムでは, 外部機器等の煩能である. また, 手や指の姿勢認識を行わず, その動きのみ

わしさは解消され, ユーザへの情報提示は携帯端末のディの認識を行うので, 手指姿勢認識の失敗による動作不安定

スプレイに行われるため, 使用環境も制限されないが, 機器化の問題は回避され, 安定した動作が見込まれる. 加えて,前面に取り付けられたカメラを使用するため, カメラ画像

一本指ではなく, 多指での操作が可能であるため, より高速に蛍光灯やユーザの顔などが写り込み指認識が困難になる.

なキー入力が行える. 原理上, 手を動かすことのできる領

また, 機器操作は機器ディスプレイ上のカーソルを通して域があれば, 空中に限らず机上や膝上でも使用が可能であ行われるので, 操作が直感的でない. 加えて, 入力は一本指る. この利点はユーザーのキー入力の際の疲労を減らすこにしか対応していない.

とに繋がる. しかしながら, このシステムでは手指領域全

携帯端末の正面ではなく背面のカメラを用いたインタ体に対してオプティカルフローを計算しているので, 手指フェースの研究も行われている. [6] では 3 次元的な仮想物の動き認識に時間が掛かっていた. そのため, 端末画面上

体に携帯端末を通して触ることができるシステムが提案さでユーザの手指の動きに遅れが発生し, 快適なキータイピれており, その著者らはこのシステムは携帯端末の操作領ングが実現できないという問題があった.

域を拡張し, 仮想物体との直感的なインタラクションも可© 2015 Information Processing Society of Japan

521

実画像

手指領域

縮小凸包

オプティカルフロー

PC

Device front

Device back図 3 オプティカルフロー取得までの処理

Fig. 3 The calculation of optical flow.
図 2

実験システムの外観

Fig. 2 Photographs of the experimental system.

に提示される.

能にする, と述べている. [7] では, 特別な装置を装着せず

3.2 オプティカルフローを用いた手指動作の認識に多指の指先を認識することができ, 実画像上に重畳表示

3.2.1 オプティカルフローの取得した仮想物体に触れることもできる. [8] では, マーカーをまず, HSV 色空間を利用して肌色領域を取得すること用いることで 1, 2 本の指で様々な 3 次元操作を実現していで, カメラ画像から手指領域を取得する. 得られた手指領るが, この種の空中操作は娯楽用途のみにしか活用できな域に対して凸包を計算し, 一定の割合で縮小させた凸包内

い, とその著者らは結論付けている. これらの研究では, 拡

部からはみ出した手指領域で, かつ手指領域の重心より上

張現実感 (Augmented Reality: AR) の技術を用いることの領域に対してオプティカルフローを計算する. これによで, 仮想物体の直感的な操作を実現している. しかし, 仮想り, 指先の領域に対してのみオプティカルフローが計算さ物体とのインタラクションが主な目的となっており, 手のれることになるので, 手指領域全体に対して計算した場合高速動作に対応していないなどの問題点もあり, キータイに比べて計算時間は飛躍的に短縮される. 一連の処理をピングに適した手法とは言えない.

図 3 に示す. オプティカルフローの取得には, Pyramidal

3. 多指 AR タイピングインタフェース
3.1 ハードウェア構成

Lucas-Kanade 法 [9] を用いた. これは, 他の手法と比べ計算時間が速く, 動きの強さに応じたフローがある程度正確に求まり, 手の動きを検出しやすいためである. 今回, オプ

本稿は提案インタフェースの操作性の評価が目的である

ティカルフローを計算する点の間隔は 4pixel とし, フローため, 実際の携帯端末の代わりに PC ベースの実験システの計算に用いるブロックサイズは 30 × 30 とした. フロー

ムを用いた. 実験システムは, 4.3 インチの小型ディスプレ点を計算する点の間隔を狭くすると計算時間は増え, 広く

イ, 小型単眼カメラ, PC から構成される. 小型ディスプレすると計算時間は短縮されるが得られる情報量は少なくな

イはスマートフォンなどの携帯端末と同程度の大きさのもる. また, ブロックサイズを小さくすると, 計算時間は短縮のを採用した. カメラは Point Grey Research 社の Firefly

されるが, フローの精度は低下する. 逆に大きくすると, フ

MV を用い, 小型ディスプレイの背面に取り付けた. レンズ

ローの精度は向上するが, 計算時間が増える.

の焦点距離は 1.68mm であり, カメラのフレームサイズと3.2.2 手指動作の認識

フレームレートはそれぞれ 320 × 240pixel, 112fps である.

PC は Intel(R) Core(TM) i7-3770 (8M Cache, 3.40 GHz)

手指動作認識のフローチャートを図 4 に示す. これにより, 指の押下動作が認識できる.

CPU と 4.00 GB RAM を搭載したマシンを用いた. 図 2

まず, オプティカルフローの強度情報を閾値処理するこに実験システムの外観を示す. カメラで取得した画像は PCとによって動き領域を検出する. ある指がほかの指と比で処理され, 実画像上に仮想キーボードとユーザの手指をべて大きく動いた場合, その周辺に大きなオプティカルフ

重畳した結果がアプリケーションと共に小型ディスプレイ

ローが集中する. 従って, 一定以上の大きさを持つフロー© 2015 Information Processing Society of Japan522

カメラから実画像を取得

押下位置

オプティカルフローを計算
動き領域の検出動きなし or
手全体の動き?

押下動作領域を特定し領域の重心  を記録

Yes

t+7

t

௧

No

図 6

1フレーム前で押下動作領域が検出されているか?

 ←1p̂ が数フレームの間保持されている様子

Fig. 6 p̂ is kept in sequential frames.

No

押下動作領域が検出されないときは, 1 フレーム前で押Yes

下動作領域が検出されているかをチェックし, 検出されて記録された  の平均を押下位置  とする
௧

いたら記録された pt の点列の平均を押下位置 p̂ とする. また, 記録されたフロー強度平均の平均を p̂ における押下強Yes

௧ をクリア

一定時間
経過?

カメラから
実画像を取得No を保持 ←1度とする. p̂ が決定されたら, 一定時間その位置を保持し,その後記録されていた pt のクリアを行う.
指が押下されたとき, 指が動いている最中は pt が記録され, 押下中心で一瞬動きが止まるので, そこで p̂ が決定される. そして, その位置を一定時間保持することで, 押下を

図 4

手指動作認識のフローチャート

Fig. 4 The flowchart of the hand action recognition.

終えた指が元の位置に戻るまでの動作を無視できる. このようにすることで, 押下位置が振動することを防ぐことができる. 1 フレーム毎に押下位置を検出する方法では, キー

押下動作領域

ボードアプリケーション側で押下位置が振動し所望のキーを押すことが困難となる. また, 押下を終えた指が元の位置に戻るまでの動作でが検出されることで同じキーが連続で押されてしまうことを防ぐこともできる. p̂ が決定され指が元の位置に戻るまでの間, その位置が保持されている様子を図 6 に示す.

図 5

動き領域とラベリング

Fig. 5 Motion regions and labeling.

[4] で用いられている手指動作認識手法は, オプティカル
フローを手指領域の左上から走査し, 最初に一定以上の大きさのフローを持つ点を検出している. そして, その点を点を検出することで手指のどの部位が動いたかが検出でき基準点とし, そこから探索範囲を定め, その探索範囲内で最る. 手指が動いていないときは動き領域は検出されない.

も大きなフローを持つ点を検出し, その点のフローの大きまた, 手全体が動いているときはほとんどすべてのフロー

さが予め設定した閾値よりも大きければ, その点の付近で点が動き領域として検出される. この場合, 押下動作の認押下が発生したと認識する. しかし, この手法では手が傾識は行わないことにする.

いているときには対応できない. また, 静止状態のとき押動き領域が 1 フレーム内で複数個検出される場合がある.

下動作が検出されることがあるなどの問題もあり, 押下動

その様子を図 5 の左に示す. この図は, 中指を押下したと作の認識率が低くなっていた. 今回, 改善された手法では,きに同時に左右の人差し指と薬指の領域にも動きが検出さ手が傾いた状態にも対応でき, また静止状態では押下動作れた例である. このようなときは, 図 5 の右に示されるよは検出されない.

うに, ラベリングにより領域分割を行い, 分割された各領域のフロー強度の平均を計算し, 強度平均が最大の領域を押下動作領域とする. 押下動作を行っている指付近に大きな4. AR キーボード
4.1 実装フローが集中するので, この例では中指の領域が押下動作提案した手指動作認識手法を利用して, キーボードアプ

領域として特定される. 押下動作領域が特定されたら, そリケーションを開発した. スナップショットを図 7 の左にの領域の重心 pt = (xt , yt ) を記録する. 同時に, 押下動作示す. このアプリケーションでは AR 技術によりカメラ画

領域のフロー強度平均も記録する.

像に仮想キーボードを重畳し, その上にユーザの手を重畳© 2015 Information Processing Society of Japan523

人の被験者で行った. 5 回の実験の結果, 試行回数を重ねるごとにタイピング時間は短くなることが分かった. これ
Input letters

は, 本インタフェースの操作に十分慣れることで高速タイピングが可能になることを示唆している. なお, 5 回とも入力操作は空中で行った. 動作テストから得られたタイ
ピング時間の平均を 1 分あたりの入力単語数 (Words Per

Virtual keyboard

User’s hand image

Minute: WPM)[10] に換算したところ, 9.23[word/min] であった. 本インタフェースはまだ従来システムと比較できる段階ではないが, 参考のため一般に広く普及している物理
キーボードとスマートフォンなどに搭載されているソフト

図 7

キーボードアプリケーションとキー押下の様子

Fig. 7 Screenshot of our keyboard application and key pressingin the application.

キーボードの WPM を述べると, 前者は 59.27[word/min],後者は 21.79[word/min] である [11]. 両手 10 本指を用いる
物理キーボード並みの WPM を本インタフェースを搭載したシステムで達成することは困難であるが, 1 本指で使用する. これにより, 実際にキーボードが手元にあるような感することの多いソフトキーボードの WPM に関しては, 本

覚でキー入力を行うことができる. 手指動作認識により押インタフェースの多指操作という利点を活かせば, それを下動作が検出されたとき, その動作発生位置にあるキーが超えることも可能であると考える.

押されたと見なす. 空中に限らず, 机の上や膝の上でも操作

また, 操作領域は空中なので端末カメラからユーザの手を行うことが可能であり, 携帯端末の背面のあらゆる空間

までの距離を変化させ, ユーザの好みに合わせて手の大きで入力を行うことができる. キーが押された時は, そのキーさを仮想キーボードをタイピングするのに適した大きさには赤く表示され, 押下強度に応じてカメラ光軸に沿って奥調整することができるという点も本インタフェースの利点に押し込まれ, 一定時間経過後, 元の位置に戻る. 仮想キーである.

ボードは 3 次元空間上に配置され透視投影により 2 次元のディスプレイ面に表示されており, 実際の物理キーを押し

5. まとめたときと同じ視覚効果がユーザに提示される. キーが押さ本稿では, 携帯端末の背面に設置されたカメラからユーれている間は画面全体を光らせている. あるキーを押下しザの手指を含む実画像を取得し, オプティカルフローによている様子を図 7 の右に示す. 仮想キーボードのキー配置

り手指の動きを認識することで, 実画像上に重畳した仮想は一般的な物理キーボードに用いられる QWERTY キー

キーボードで多指による空中タイピングを可能にするイ

ボードの配置を用いている. この配置にした理由は, ユー

ンタフェースを提案した. このインタフェースを備えたシザーが普段使い慣れているキーボードに近い配置であれば,ステムでは, 狭い操作空間に制約されることなく仮想キー

特別な訓練も必要とせず, 直感的な入力操作を行うことがボード上でタイピングを行うことができ, キーボード上にできると考えられるからである. このアプリケーションを

ユーザ自身の手が重畳されるので, 実際にキーボードがそ用いて, 連続で文字入力を行っている様子を図 8 に示す.

こにあるかのような感覚でタイピングを可能とした. 手指

図の左から順に, 親指, 人差し指, 中指, 小指, 薬指を用いた動作認識手法は従来のアプローチを踏襲しつつ, システム

文字入力を行っており, 多指でのキータイピングが可能とが実時間で動作するように手指の動き認識手法の大幅な改なっていることが分かる.

善を図った. その結果, 認識の速度と精度の問題を解決し, 1
フレーム当たり約 8.33 [ms] の時間 (フレームレートに換算

4.2 操作性の評価

して約 120 [fps]) で手指の動き認識を実現した. そして, 提提案インタフェースの性能評価のための第一ステップ

案手法の性能を評価するため, キーボードアプリケーショとして小規模な動作テストを行った. このテストは, “theンを実験システムに実装した. そのアプリケーションにおquick brown fox jumps over the lazy dog” という文章の入いて多指による実時間空中タイピングを実現し, 提案手法

力を一定回数だけ繰り返すというものである. この文章はの有用性を確認した. 提案手法を利用することで, 端末上

英語のパングラムの一つであり, コンピュータのキーボー

でのユーザの手指の動きの遅れは解消され, 快適なキータドの試験などによく用いられることから, この文章を採用

イピングが可能となった.

した. 1 回の実験で入力に掛かった時間を計測した. なお,

今後の課題としては, 押下動作認識の精度向上が挙げら

間違ったキーを押した場合は文字入力はされないようにれる. 現在の手法では, やや強めに押下動作を行わないと,した. これにより, 修正操作の必要はなくなり, ミスタイ

動作を認識できない. この問題は, 動き領域検出時の閾値プに依存せずに入力時間を評価できる. 今回のテストは一を調整することで対応可能であるが, 判定を緩めにすると© 2015 Information Processing Society of Japan

524

図 8

キーボードアプリケーションでの連続キータイピングの様子

Fig. 8 Sequential key typing using our keyboard application.

指の僅かな動きでも押下動作と認識してしまい, この調整

[9]は現段階では難しい. また, 手の並進動作の際に押下動作と判定されてしまうことが比較的多いので, この点も改善[10]を図る必要がある. これらの問題を解消し, より快適で高速な入力が行えるインタフェースの開発を目指す.
参考文献
[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

C. Harrison, H. Benko, A. D. Wilson, Omnitouch: Wearable multitouch interaction everywhere, Proc. the 24th
annual ACM symposium on User interface softwareand technology, pp.441–450 (2011).
H. Roeber, J. Bacus and C. Tomasi, Typing in thin
air: The canesta projection keyboard – a new methodof interaction with electronic devices, Ext. Abstracts
CHI2003, pp.712–713 (2003).
T. Niikura, Y. Hirobe, A. Cassinelli, Y. Watanabe,
T. Komuro, and M. Ishikawa, In-air Typing Interface for Mobile Devices with Vibration Feedback, ACM
SIGGRAPH 2010 Emerging Technologies Article, 15(2010).
S. Sagara, M. Higuchi, T. Komuro, Multi-Finger AR
Typing Interface for Mobile Devices, Companion Publication of the 19th International Conference on Intelligent User Interfaces (IUI 2014), pp.13–16 (2014).
M. Klima and P. Slavik, Vector Keyboard for Android
Platform-Based Devices, Proceedings of the 2011 international conference on Human interface and the management of information, Volume Part I, pp.435–442(2011).
M. L. Caballero, T. R. Chang, M. Menendez and V. Occhialini, Behand: augmented virtuality gestural interaction for mobile phones, Proceedings of the 12th international conference on Human computer interaction withmobile devices and services, pp.451–454 (2010).
M. Baldauf, S. Zambanini, P. Frohlich, and P. Reichl,
Markerless Visual Fingertip Detection for Natural Mobile Device Interaction, Proceedings of the 13th International Conference on Human Computer Interaction
with Mobile Devices and Services, pp.539–544 (2011).
W. Hurst and C. V. Wezel, Gesture-based interaction
via finger tracking for mobile augmented reality, Multimedia Tools and Applications, Vol.62, No.1, pp.233–258(2013).

© 2015 Information Processing Society of Japan[11]

J. Y. Bouguet, Pyramidal Implementation of the Lucas
Kanade Feature Tracker, Intel Corporation, Microprocessor Research Labs (2000).
A. S. Arif and W. Stuerzlinger, Analysis of Text Entry
Performance Metrics, Science and Technology for Humanity, pp.100–105 (2009).
P. Bao, J. Pierce, S. Whittaker and S. Zhai, Smart Phone
Use by Non-Mobile Business Users, Proceedings of the
13th International Conference on Human Computer Interaction with Mobile Devices and Services, pp.445–454(2011).

525