JP2014165660A - バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム - Google Patents

バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム Download PDF

Info

Publication number
JP2014165660A
JP2014165660A JP2013034915A JP2013034915A JP2014165660A JP 2014165660 A JP2014165660 A JP 2014165660A JP 2013034915 A JP2013034915 A JP 2013034915A JP 2013034915 A JP2013034915 A JP 2013034915A JP 2014165660 A JP2014165660 A JP 2014165660A
Authority
JP
Japan
Prior art keywords
input
virtual keyboard
image
fingertip
finger
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013034915A
Other languages
English (en)
Inventor
Sei Hoshino
聖 星野
Hodaka Watarai
穂高 渡會
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Tsukuba NUC
Original Assignee
University of Tsukuba NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Tsukuba NUC filed Critical University of Tsukuba NUC
Priority to JP2013034915A priority Critical patent/JP2014165660A/ja
Publication of JP2014165660A publication Critical patent/JP2014165660A/ja
Pending legal-status Critical Current

Links

Abstract

【課題】カメラで、使用者の両手の位置が移動しても正しく両手のキー入力動作を検出できるバーチャルキーボードの入力方法を提供する。
【解決手段】左右の手の画像を細線化して画像の端点から指先位置を求めるステップS7と、左右の手の画像を細線化した画像の分岐点の位置、及び指先位置を特徴点として取得するステップS10と、左右の手の画像の変化に追従させて分岐点の位置から指先位置までの長さと傾斜角度を計算して各指に沿わせて各々の矩形枠を描画し、その際に曲げられていない場合の指先の少なくとも一部が外にはみ出るように各矩形枠を描画するステップS11と、各矩形枠で略指幅方向に描画された指先側の短辺の外側における指の肌色画素の有無により、各指の指先位置が少なくとも各矩形枠の内か外かを検出するステップS12と、矩形枠内に指先位置がある指の指先位置と、バーチャルキーボードの各入力キー領域とから入力キーを推定するステップS13を含む処理を実行するバーチャルキーボードシステムの入力方法。
【選択図】図4

Description

本発明は、ジェスチャー入力でキー入力するバーチャルキーボードシステムに関し、特に一台のカメラで撮像した使用者の指先を正確に検出してキー入力の精度を高めたバーチャルキーボードシステムに関する。
従来から情報機器への入力を行う入力インタフェースとして「バーチャルキーボード」が知られている。バーチャルキーボードは、実際のキーボードではなく机上、画像出力装置上あるいは仮想空間上に表示(又は空間に定義)されたキーボードに対して、その表示(又は空間に定義)されたキーボードを打つストロークのジェスチャー入力動作を検出することにより入力する装置である。換言すれば、バーチャルキーボードは、実体のキーボードが使えないか、あるいは使いにくい環境において、キーボードを入力する動作を任意平面又は空中で行うことにより、目的のキーの入力を意図通りに行うことを可能にする光学式のキーボードである。本物のキーボードが使いにくい環境とは、例えば、キーボードを置くスペースが無い場合や、3Dディスプレイに向かって入力操作を行う場合である。特に、3Dディプレイを使って入力操作を行う3Dデスクトップマネージャーの場合には、本物のキーボードの代わりにバーチャルキーボードを使用してジェスチャー入力する方が使い勝手がよくなる。
バーチャルキーボードを大まかに分類すると以下の4方式に分類できる。
(イ)使用者の腕や手指に装置を装着し、手指のジェスチャー入力動作を認識する、機器装着方式(例えば、非特許文献1、2参照)。
(ロ)使用者の機器装着は不要だが、キーボード投影面と、カメラ撮像画像から手指のジェスチャー入力動作を認識する、投影有り画像処理方式(例えば、非特許文献3、4参照)、
(ハ)使用者の機器装着が不要で、キーボードの投影も不要で、カメラ撮像画像のみで1本指キーのジェスチャー入力動作を認識する、投影無し単指画像処理方式(例えば、非特許文献5、6参照)。
(ニ)以上の(1)〜(3)の方式に当てはまらない(キーボードの投影無し、腕や手指への機器装着が無く、全指の画像を認識)ジェスチャー入力動作を認識する方式(例えば、非特許文献7参照)。より具体的には、例えば実際のキーボードに類似するバーチャルキーボードシステムを設定して各指にホームポジションと各指の移動先の位置に複数のキーを割り当てる。その一方で、カメラで撮像した手の画像にエッジ処理等で用いられる細線化処理を用いて擬似的な骨格化処理を施し、その骨格化された細線の先端を指先と設定する。そして、手の画像中の移動した指先の位置が割り当てられたキーの位置と一致して、例えば3フレーム以上経過した場合にキーが入力として検出する。つまり、指ごとに入力できるキーを割り当て、ホームポジションからの指先の移動が所定期間(3フレーム)以上でキー入力を判断する。なお、細線化の際の指先以外のノイズの先端については手の重心座標からの距離が一致値以内は無効として排除している。
なお、従来の一般的なジェスチャー入力は、カメラで使用者を撮像した手指画像の輪郭線形状から、3次元手指形状推定(hand pose estimation)等を用いて手の移動方向や移動量(hand tracking)を検出する。しかし、「手の形や姿勢」をカメラで撮像した画像中から検出する場合、以下の(a)、(b)、(c)の3点から、輪郭線形状により、手指形状、手の形や姿勢を正確に推定する事は困難であることが知られている。
(a)手指は、多関節構造であるため形状変化が複雑である点。
(b)手指は、関節を曲げたり、握った場合に、輪郭線形状としては手の甲や手のひらに手指が隠れてしまう自己遮蔽が多い点。
(c)手指は、身体全体に対する部位の占める比率は小さいが、可動空間が広い点。
福本雅朗、 平岩明、 曽根原登:"ウェアラブルコンピュータ用キーボード"、電子情報通信学会論文誌。A、基礎・境界 J79-A(2)、 460-470、1996-02-25。 藤本昌宏、井村誠孝、安室喜弘、眞鍋佳嗣、千原國宏:"小型カメラと傾斜センサを用いたバーチャルキーボード"日本バーチャルリアリティ学会論文誌9(4)、413-422、2004-12-31。 バーチャルキーボードVKB(製造元i-Tech Dynamic)の製品紹介記事:http://park16.wakwak.com/~ex4/kb/main_vkb.htm Typing in thin air: the Canesta Projection Keyboard - a new method of interaction with electronic devices: CHI '03 Extended Abstract on Human Factors in Computing Systems Pages 712-713、 ACM New York、 NY、 USA c2003: http://delivery.acm.org/10.1145/770000/765944/p712-roeber.pdf?ip=130.158.95.176&acc=ACTIVE%20SERVICE&CFID=274451767&CFTOKEN=30972174&__acm__=1360300133_fb6b1b811dacaa375dc65a5224df46fc 廣部祐樹、船橋一訓、新倉雄大、渡辺義浩、小室孝、石川正俊:"単眼カメラを用いた携帯機器向け空中タイピングインターフェース(インタラクティブシステム・画像入力デバイス・方式、及び一般)"映像情報メディア学会技術報告33、65-68、2009-06-15 村磯友子、小川賀代、小室孝:"携帯機器向け三次元ジェスチャインターフェースにおける主成分分析を用いた入力動作識別(インタラクティブシステム・画像入力デバイス・方式、及び一般)" 映像情報メディア学会技術報告36(21)、9-12、2012-06-04 松井望、 山本喜一: "バーチャルキーボード:ビデオ画像からの頑健な実時間指先検出の実現" 日本ソフトウェア科学会 第3回プログラミングおよび応用のシステムに関するワークショップSPA2000 オンライン論文集 3月21日(火)セッション8:データベースとアプリケーション:http://www.jaist.ac.jp/SPA2000/proceedings/matsui.pdf
しかし、上記(イ)の方式は腕や手指に装置を装着するので使用者を拘束して動作が制限され、上記(ロ)の方式は使用者が起立した状態では使用し難く、投射面となる平坦な机等が必須で入力が制限され、上記(ハ)の方式は画像処理方式である点では好ましいが一本指キー入力では入力効率が悪くなるという問題があった。
また、上記(ニ)の方式は、手全体の移動に伴う指先の移動と、タイピングによる指先の移動との判別が困難であるので、例えばバーチャルキーボード入力時に体動があったり、作業休憩等の中断や他の動作を間に挟む等により手全体が移動して手の指先位置がホームポジションから少しでも移動した場合にはキー認識が困難になっていた。そのため、使用者が机上等で一度ホームポジションを決めるとそこから手を動かせないので、表示画像内で自由に手を動かしキーを入力することができず、また使用者が3Dディプレイを使って入力操作を行う場合には、空中にかざした手の位置を動かすことができないという問題があった。
また、上記(ニ)の方式は、指先検出時に指間の影、机上の他の物体や汚れ等の指先以外のノイズの影響を充分に除去できず指先が正しく検出できないため、使用者が意図しない誤認識と同じキーが続く重複認識等の過剰な認識が多かった。また、指ごとに入力に使用できるキーが割り当てられているので、割り当てられた指以外では、目的のキー入力ができなかった。従って、初心者には、入力時に目的のキーを探すだけでなく、どの指に目的のキーが割り当てられているかを探しながら入力する必要があり、実体のキーボードよりも入力動作が煩雑であった。
また、従来の一般的なジェスチャー入力については、3次元手指形状推定をより正確にして、例えば、手の移動方向や移動量を検出するだけでなく、その手を検出する技術を利用して「手の形や姿勢」を検出して、ジェスチャー入力動作に対応させることが要望されている。
そこで本発明は、上記の課題を解決するために、少なくとも1台のカメラで、使用者の両手の位置が移動しても正しく両手のキー入力動作を検出できるバーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステムを提供することを目的とする。
(1)上記課題を解決するために、本発明に係るバーチャルキーボードの入力方法は、左右の手の画像を撮像可能に設置された少なくとも1台のカメラと、カメラから入力する左右の手の画像とから入力キーを推定する情報処理装置とを含むバーチャルキーボードシステムの入力方法であって、情報処理装置は、左右の手の重心位置を計算するステップを含む処理を実行し、入力キーを推定するステップでは、重心位置を手の位置とし、当該位置の情報を用いてバーチャルキーボードの各入力キー領域から入力可能なキーを絞込んで入力キーを推定することを特徴とする。
本バーチャルキーボードの入力方法では、重心位置を計算して手の位置とした位置情報を用いて入力可能なキーを絞込んで入力キーを推定するので、入力可能なキーの絞込み精度を高めることができる。
(2)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに左右の手の画像を細線化して画像の端点から指先位置を求めるステップと、左右の手の画像を細線化した画像の分岐点の位置、及び指先位置を特徴点として取得するステップと、左右の手の画像の変化に追従させて分岐点の位置から指先位置までの長さと傾斜角度を計算して各指に沿わせて各々の矩形枠を描画し、その際に曲げられていない場合の指先の少なくとも一部が外にはみ出るように各矩形枠を描画するステップと、各矩形枠で略指幅方向に描画された指先側の短辺の外側における指の肌色画素の有無により、各指の指先位置が少なくとも各矩形枠の内か外かを検出するステップと、矩形枠内に指先位置がある指の指先位置と、バーチャルキーボードの各入力キー領域とから入力キーを推定するステップを含む処理を実行するようにしてもよい。
本バーチャルキーボードの入力方法では、手の画像の変化に追従させて描画される各矩形枠の短辺の外側における指の肌色画素(モノクロ画像の場合は肌色相当の階調の画素)の有無により指先位置を検出して、バーチャルキーボード画像から入力キーを推定するので、使用者の両手の位置が移動しても正しく両手のキー入力動作を検出できる。また、本バーチャルキーボードの入力方法では、指毎に手の動きに追従する矩形枠を設定し、各矩形枠内の指先位置を検出することで、手の移動とタイピング動作による指先の移動を区別することができ、手の位置が変化しても入力が可能となる。そのため画像内における手の位置情報から精度の高い指先位置情報を得ることができ、例えば3次元空間内で手の位置が変化しても入力が可能となるので、2次元平面ディスプレイ上に手とバーチャルキーボードを出力する場合に限らず、3次元の平面ディスプレイやヘッドマウントディスプレイ上に手とバーチャルキーボードを出力してキー入力することができる。
(3)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに左右の手の画像の輪郭線から左右手首の位置を検出するステップと、左右手首よりも先の左右の手を処理対象領域として設定するステップを含む処理を実行するようにしてもよい。
本バーチャルキーボードの入力方法では、手首よりも先の左右の手を処理対象領域として設定することで前腕により重心位置の誤差を減少させることができる。そのため、入力可能なキーの絞込み精度さらに高めることができる。
(4)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに左右の手の画像の輪郭線から各前腕の角度を求め、入力キーを推定するステップでは、各前腕の角度と重心位置により各指の位置を推定し、当該各指の位置の情報を用いてバーチャルキーボードの各入力キー領域から入力可能なキーを絞込んで入力キーを推定するようにしてもよい。
本バーチャルキーボードの入力方法では、各前腕の角度を求め、各前腕の角度と重心位置により各指の位置を推定するので、各前腕の角度による各指の位置の誤差を軽減できる。そのため、入力可能なキーの絞込み精度さらに高めることができる。
(5)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに左右の手の画像の輪郭線から各手の大きさを求め、入力キーを推定するステップでは、当該各手の大きさの情報を用いてバーチャルキーボードの各入力キー領域の範囲を拡大又は縮小してから入力可能なキーを絞込んで入力キーを推定するようにしてもよい。
本バーチャルキーボードの入力方法では、各手の大きさを求め、バーチャルキーボードの各入力キー領域の範囲を拡大又は縮小する。そのため、入力可能なキーの絞込み精度さらに高めることができる。
(6)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに指先位置が5個得られない場合に輪郭線から指先位置を求めるステップを含む処理を実行するようにしてもよい。
本バーチャルキーボードの入力方法では、指先位置が5個得られない場合に輪郭線から指先位置を求める。そのため、指先位置の位置精度を高めることができ、入力可能なキーの絞込み精度を高めることができる。
(7)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに各矩形枠を描画するステップでは、各矩形枠の内部に、指先側の短辺と同様に略指幅方向に少なくとも1本の短辺を追加して描画し、各指の指先位置が各矩形枠内か外かを検出するステップでは、さらに各矩形枠内部に追加された少なくとも1本の短辺の外側における指の肌色画素の有無により、各指の指先位置が各矩形枠において追加された短辺の内か外かを検出し、入力キーを推定するステップでは、指先側の短辺の外側に指の肌色画素が無い場合の入力キーと、追加された短辺の外側に指の肌色画素が無い場合の入力キーとでは異なる入力キーを推定するようにしてもよい。
本バーチャルキーボードの入力方法では、各矩形枠の内部に短辺を追加して描画し、当該短辺の外側における指の肌色画素の有無によって、異なる入力キーを推定する。そのため、一本の指に対して2個の異なる入力キーを推定させることができる。
(8)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに各矩形枠を描画するステップでは、追加された短辺は複数であり、各指の指先位置が各矩形枠内か外かを検出するステップでは、指先側から順に各短辺の外側における指の肌色画素の有無により、各指の指先位置が各短辺の内か外かを検出し、入力キーを推定するステップでは、指先側の短辺及び追加された各短辺の外側における指の肌色画素の有無により、各々異なる入力キーを推定するようにしてもよい。
本バーチャルキーボードの入力方法では、各矩形枠の内部に複数の短辺を追加して描画し、当該各短辺の外側における指の肌色画素の有無によって、各々異なる入力キーを推定する。そのため、一本の指に対して3個以上の異なる入力キーを推定させることができる。
(9)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに入力キーを推定するステップでは、指先側の短辺による入力キーの推定から、最後の追加された短辺による入力キーの推定までの時間が所定時間内であり、左右の手の画像及び複数の入力キー領域が配置されたバーチャルキーボード画像を使用者に目視可能に出力する画像出力装置にキャプチャされた画像から推定された回数が最も多いキーを入力キーとして推定するようにしてもよい。
本バーチャルキーボードの入力方法では、入力キーの推定時間を所定時間内としてその時間内の推定回数により入力キーとして推定する。そのため、入力キーの推定精度を高めることができる。
(10)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに画像出力装置に左右の手の画像及びバーチャルキーボード画像を使用者に目視可能に出力する際に、入力キーを推定するステップで推定されたキーについては、バーチャルキーボード画像内の当該キー画像領域についての色反転処理、線部分又は背景の色変更処理、線部分の太さ変更処理、背景画像追加処理を含む強調のための画像処理から少なくとも一つを実行するようにしてもよい。
本バーチャルキーボードの入力方法では、推定されたキーを強調させて画像出力装置に出力する。そのため、推定されたキーの視認性を高めることができる。
(11)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに画像出力装置に左右の手の画像及びバーチャルキーボード画像を使用者に目視可能に出力する際に、左右の手の重心位置により、バーチャルキーボードにおける左右の手で入力可能なキーについて、当該キー画像領域についての色反転処理、線部分又は背景の色変更処理、線部分の太さ変更処理、背景画像追加処理を含む強調のための画像処理から少なくとも一つを実行するようにしてもよい。
本バーチャルキーボードの入力方法では、左右の手で入力可能なキーを強調させて画像出力装置に出力する。そのため、左右の手で入力可能なキーの視認性を高めることができる。
(12)好ましくは、本発明に係るバーチャルキーボードの入力方法では、情報処理装置は、さらに 画像出力装置に左右の手の画像及びバーチャルキーボード画像を使用者に目視可能に出力する際に、入力キーを推定するステップで推定されたキーについては、バーチャルキーボード画像とは別個の文字出力画面に当該キーを表示するようにしてもよい。
本バーチャルキーボードの入力方法では、推定されたキーを別個の文字出力画面に表示する。そのため、キー入力の確認が容易で入力効率を高めることができる。
(13)上記課題を解決するために、本発明に係るプログラムは、上記した何れか一つのバーチャルキーボードの入力方法における各ステップを実施する。
本プログラムでは、プログラムにより情報処理装置で上記何れか一つのバーチャルキーボードの入力方法における各ステップを実行させることで、任意の情報処理装置を利用して、カメラにより撮像された撮像画像データから本発明のバーチャルキーボードの入力方法で、任意の使用者に対して使用者の両手の位置が移動しても正しく両手のキー入力動作を検出でき、入力キーの推定精度を高めることができる。
(14)上記課題を解決するために、本発明に係る記憶媒体は、上記したプログラムを記憶する。
本記憶媒体では、記憶媒体に本発明に係るプログラム記憶させることで、プログラムに可搬性を持たせて、記憶媒体を移動させるのみで、異なる場所の任意の情報処理装置で、本発明に係るバーチャルキーボードの入力方法を実行することができる。
(15)上記課題を解決するために、本発明に係るバーチャルキーボードシステムは、左右の手の画像を撮像可能に設置された少なくとも1台のカメラと、左右の手の画像及び複数の入力キー領域が配置されたバーチャルキーボード画像を使用者に目視可能に出力する画像出力装置と、カメラから入力する左右の手の画像及びバーチャルキーボード画像とから入力キーを推定する情報処理装置とを含んで構成され、情報処理装置は、上記したプログラムがインストールされたプログラム記憶部と、プログラムを実行可能にするための構成を含むことを特徴とする。
本バーチャルキーボードシステムは、上記したプログラムを実行できるので、手の画像の変化に追従させて描画される各矩形枠の短辺の外側における指の肌色画素の有無により指先位置を検出して、バーチャルキーボード画像から入力キーを推定することから、使用者の両手の位置が移動しても正しく両手のキー入力動作を検出できる。
(16)上記課題を解決するために、本発明に係るバーチャルキーボードシステムは、左右の手の画像を撮像可能に設置された少なくとも1台のカメラと、左右の手の画像及び複数の入力キー領域が配置されたバーチャルキーボード画像を使用者に目視可能に出力する画像出力装置と、カメラから入力する左右の手の画像及びバーチャルキーボード画像とから入力キーを推定する情報処理装置とを含んで構成され、情報処理装置は、左右の手の画像を細線化する細線化部と、細線化された画像から端点と分岐点を特徴点として検出する特徴点検出部と、端点又は左右の手の画像の輪郭線から指先位置を検出する指先位置検出部と、左右の手の画像の変化に追従させて分岐点の位置から指先位置までの長さと傾斜角度を計算して各指に沿わせて各々の矩形枠を描画し、その際に曲げられていない場合の指先の少なくとも一部が外にはみ出るように各矩形枠を描画する矩形枠描画部と、各矩形枠で略指幅方向に描画された指先側の短辺の外側における指の肌色画素の有無により、各指の指先位置が少なくとも各矩形枠の内か外かを検出する枠内指先位置検出部と、矩形枠内に指先位置がある指の指先位置と、バーチャルキーボードの各入力キー領域とから入力キーを推定する入力キー推定部とを有することを特徴とする。
本バーチャルキーボードシステムは、汎用の情報処理装置を用いて、手の画像の変化に追従させて描画される各矩形枠の短辺の外側における指の肌色画素の有無により指先位置を検出して、バーチャルキーボード画像から入力キーを推定するので、使用者の両手の位置が移動しても正しく両手のキー入力動作を検出できる。
本発明のバーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステムによれば、画像出力装置を用いて装置上又はバーチャル空間に画像処理方式で表示させ、少なくとも1台のカメラで、使用者の両手の位置が移動しても正しく両手のキー入力動作を検出できる。
本発明に係るバーチャルキーボードシステムの一例の概略構成を示す図である。 本発明に係るバーチャルキーボードの表示の一例を示す図である。 第1実施形態の概略の構成の一例を示すブロック図である。 本発明に係る第1実施形態の概略の入力キー推定方法を示すフローチャートである。 第1実施形態の二値化された手の画像の左右の分離と、輪郭線処理と、ポリライン近似による単純化により線分同士の角度変化で手首位置を求められることを示す図である。 第1実施形態の二値化された手の画像の細線化と輪郭線を示す図である。 手の画像への矩形枠の描画合成を示す図である。 矩形枠による指先の検出を示す図である。 バーチャルキーボード上の推定されたキーを示す図である。 タイピング速度と検出の関係を調べる実験結果を示す図である。 タイピング速度と検出の関係を調べる実験結果を示す図である。 実験回数と正答率又は入力時間の関係を調べる実験結果を示す図である。
<システム概要>
図1、2及び3を用いて本発明のバーチャルキーボードシステムの概要について説明する。図1(a)は、本発明に係るバーチャルキーボードシステムの一例として、ヘッドマウントディスプレイの画像出力装置150により空間上に3D投影されたバーチャルキーボード画像900等を示す図である。本図は、本発明のバーチャルキーボードシステムを用いれば、空間座標でバーチャルキーボード画像900の位置と両手画像の位置を検出することで、空間上に3D投影されたバーチャルキーボード画像900でも入力が可能であることを示している。なお、画像出力装置150は、例えば手指をホームポジションからほとんど動かさない使用者が使用する場合には必要ない。
図1(b)は、本発明に係るバーチャルキーボードシステムの実際的な一例として、机上の上側空間に固定(環境設置型)されたカメラ100により撮像された使用者の両手画像200(左手画像210と右手画像220)とバーチャルキーボード画像900をフラットディスプレイの画像出力装置150上に表示させた状態を示す図である。カメラ100は、使用者がフラットディスプレイの正面で、ディスプレイに向かって手を伸ばした時に、かざした両手が画像内に入るようにしてジェスチャー入力を行うことを想定して、机上にかざした両手の上側空間であって、使用者の両手画像200(左手画像210と右手画像220)を撮像できる位置に設置されている。また、机上の両手の下には黒幕を敷いて、肌色の両手の前景に対する黒色の単色背景となるようにした。なお、本発明は、原理的にはモノクロカメラでも実施可能であるが、カラーカメラの方が両手の検出により好ましいためカラーカメラを用いた。
バーチャルキーボード画像900は、数十個の入力キーが並べられており、キーの位置に対応する領域を指でタイプする動作が検出されることによって、当該入力キーの文字を入力することが可能である。本発明のバーチャルキーボード画像900は、熟練者にはブラインドタッチを可能にするが、初心者には、各指にキーを割り当てて指毎に入力するキーを探させることなく、任意の指で目的のキーを入力することが可能である。
また、本発明の情報処理装置1については、机の下等に設置されているため図1(b)には示されていないがカメラ100と画像出力装置150に接続されている。両手画像200の上には文字出力部201が示される。図1(c)は、図1(b)のカメラ100と画像出力装置150を正面から見た図である。本発明のシステムは、例えば、画像のキャプチャサイズは640×480ピクセル、キャプチャレートは30fpsとし、システムの動作レートは10〜13fpsである。情報処理装置1の動作プログラムは、プログラム記憶部61に格納される。
図2(a)は、図1(b)に示された画像出力装置150に表示された両手画像200(左手画像210と右手画像220)のみを拡大して表示した図である。図2(b)は、図1(b)に示された画像出力装置150に表示された両手画像200(左手画像210と右手画像220)にバーチャルキーボード画像900の一例を合成した場合を拡大して表示した図である。
図3は本発明に係るバーチャルキーボードシステムの概略の構成の一例として、カメラ100と画像出力装置150、及びそれらに接続される情報処理装置1の内部構成を示すブロック図である。なお、図3において情報処理装置1は、一般的なパーソナルコンピュータ/サーバ等の情報処理装置であり、その内部構成の各ブロックは、本発明の説明のために関係する要素のみを抽出した一例の構成であり、その他の要素は記載を省略されている。従って、本発明に係る情報処理装置1は、以下と同様な情報処理が可能であれば、図3に示された構成に限られるものではない。
カメラ100は、設置されており、情報処理装置1に接続されている。カメラ100で撮像された画像は、情報処理装置1に送出される。情報処理装置1では、図2(b)のような両手画像200とバーチャルキーボード画像900を合成し、その画像を表示装置200に送出する。本発明では、両画像を合成する際に、両画像から曲げた指による入力キーの推定処理を行い、バーチャルキーボード900からの入力として、当該推定された入力キーを画像出力装置150に、画像又は文字で表示させる。
<情報処理装置における入力キーの推定処理>
図4のフローチャートの各ステップに基づき、図3の情報処理装置1の内部ブロックを参照しながら、本発明のバーチャルキーボードシステムの動作の流れの概要について説明する。
(ステップS1:両手画像の撮像処理)
図1(b)、(c)に示したように、使用者の両手画像200(左手画像210と右手画像220)を撮像可能に設置されたカメラ100は、図2(a)に示したような両手画像200を撮像する。撮像された両手の画像データは、カメラ100から情報処理装置1に入力される。
(ステップS2:入力画像の二値化処理)
キーボードでの入力動作の性質上、左右の手が重なる、または交差するといった状況にはならないと考えられる
情報処理装置1に入力した両手の画像データは、画像データ記憶部11に一旦格納され、さらに画像二値化部12で、図5(a)の上段に示したような二値化両手画像230となる。二値化処理では、例えば、元の両手の画像における肌色の手が前景領域として白抜きされた白領域になり、後の机上の画像が背景領域として黒く塗りつぶされた黒領域となって、白領域と黒領域のみの両手の二値化両手画像230が得られる。
(ステップS3:左右手領域の分離処理)
左右手領域分離部13では、両手の二値化両手画像230を、図5(a)の下段に示したような二値化左手画像240と二値化右手画像250に分離する。例えば、左右手領域分離部13は、二値化両手画像230の白抜きされた前景領域に対してラベリング処理を行い、左右に分離された前景領域のうちの右側にある前景領域を二値化右手画像250とし、左側にある前景領域を二値化左手画像240として、左右の手領域の画像を二枚作成するようにして分離を行う。なお、ステップS4以降は左右の手領域の二枚の画像について同じ処理を2回行うことになるが、二枚の画像について同じ処理を2回記載すると煩雑になるため、以降の処理については二値化右手画像250のみを代表として説明する。
(ステップS4:手首位置の検出処理)
次に輪郭線検出部14で、二値化右手画像250から図5(b)に示すような手指領域の二値化輪郭線画像260を取得する。次いで、手首位置検出部15で、取得した手指領域の輪郭線を用いて、図5(c)に示すようにポリライン近似して単純化することで線分の群へ変化させて二値化輪郭線単純化線分群画像270を取得することができる。この二値化輪郭線単純化線分群画像270における線分同士の角度変化が大きい線分群大角度変化点(手首位置表示点)271を求めることで手首位置に相当する点の位置を検出することができる。
ここで手首位置を検出する理由としては、後段でキーの絞り込みが正しく行える両手の各重心600の位置を得るためである。その各重心位置のために、前腕を除いた手指領域を「処理対象領域(ROI:Region of interest、処理対象領域/特定絞り込み領域)として設定する」必要があり、その前腕を除いた手指領域を取得するために、二値化右手画像250における手首の位置を得る必要があるためである。仮に、両手の各重心位置を前腕を含む手指領域全体から求めると、使用者の手の移動量と重心の移動量が一致せず、キーの絞り込みが正しく行えないという問題が生じる。そこで、前腕の影響をなくすために手首位置を求め、前腕を除いた手首より先の手指領域を処理対象領域として取得することで、使用者の手の移動量と重心600の移動量が一致して、キーの絞り込みが正しく行える重心位置を得ることができる。
(ステップS5:処理対象領域の設定処理)
処理対象領域検出部16は、二値化右手画像250において、線分群大角度変化点(手首位置表示点)271のy座標を手首位置とする。そうすると二値化右手画像250の左上が原点なので、これより線分群大角度変化点のy座標よりも絶対値が小さい領域を処理領域であって、求めた手首位置と輪郭線のx、y 座標がそれぞれ最大、最小となる点から、前腕を除いた手指領域である図6(a)の処理対象領域二値化右手画像301を取得することができる。本バーチャルキーボードシステムでは、前腕の回旋、手首の内外転などの変化が小さいため、この手法による手首位置の算出が可能である。
(ステップS6:重心位置の計算処理)
重心位置検出部51は、前腕を除いた手指領域である処理対象領域二値化右手画像301から手指領域の重心を計算し、その計算結果を手の重心位置とする。このように前段で処理対象領域が設定されることにより、前腕の影響を受けることなく重心の検出が可能となる。そして最終的には、その重心位置の情報を用いて入力可能なキーの絞込みが行われる。
(ステップS7:画像の細線化処理)
細線化部17では、処理対象領域二値化右手画像301から図6(b)に示した処理対象領域細線化画像330を得ている。細線化を行う前に、手指領域のうち深さが一定上の領域を除去し背景と同じ色にすることによって細線化による分岐点の取得を容易にすることが可能としている。
((深さ一定以上の領域の除去処理))
ここで述べる深さとは処理対象領域二値化右手画像301内の図6(e)に示したような手指領域の処理対象領域二値化輪郭線画像350に隣接する背景画素と前景画素との距離のことであり、以下の方法で図6(f)の手首領域ラベル付け表示図351に示したように各画素に付けられるラベルが深さとなる。例えば、処理対象領域二値化右手画像301内の処理対象領域二値化輪郭線画像350部分のような輪郭線の全ての画素にラベル番号1を与える。次に、ラベル番号1に隣接する、ラベル番号を持たない手指領域の画素にラベル番号2を与える。同様に、ラベル番号nを持つ画素に隣接する画素にラベル番号n+1を与える処理を繰り返し、手指領域の全ての画素にラベルを与える。このとき、最も大きなラベル番号をMaxLabelとする。手指領域の画素のラベル番号LabelNumが以下の数式(1)を満たす場合、その画素を除去し背景画素とする処理を加える。
((手指領域の細線化処理))
深さ領域の削除後に細線化を行うことにより図6(b)のような画像を取得でき、指の根元にある分岐点を取得しやすくなる。細線化にはHilditchの細線化アルゴリズムを使用した。Hilditchの細線化アルゴリズムは細線化を行う過程で、周辺画素連結数検出部18により注目画素の連結数を調べており、連結数を見ることでその注目画素がどういった点であるかを知ることができる。中心にある注目画素xとその周辺にある画素を図6(c)のように表記すると、連結数を調べる式は以下の数式(2)のように表される。
周辺画素xが前景画素の場合f(x)=1、 背景画素の場合はf(x)=0となる。この式では、注目画素の4近傍について反時計回りに「自身が前景で次か次の次が背景」の画素の数を数えており、例えば連結数N=0の時、その画素は孤立点または内部画素ということになる。
(ステップS8:細線化端部(指先)の数(5)の判断処理)
特徴点検出部19は、N =1の点を端点331とし、図6(d)に示されたように細線化された線の端点331(端部)を指先と判断し、端点331の数を数えることで指先の数を判断することができる。特徴点検出部19は、細線化端部(指先)の数が5に達していない場合、例えば、指先位置検出部44に通知し、擬似的な指先位置を特徴点検出部19及び指の傾き検出部20に送信させる。
(ステップS9:輪郭線を用いた指先位置の検出処理)
((輪郭線画素走査による指先検出処理))
後述する矩形枠500は各指の根元の点から各指先の端点方向に向かって描画されるが、タイピング動作によって指先が下向きに隠れて遮蔽が起こった状態だと矩形枠500が正しく描画されない。これは細線化処理を行うと図7(e)のようになり、遮蔽された指の端点が抽出できないために起こってしまう。そこで例外処理として、輪郭線画素の角度変化を用いた指先の検出を行う。
輪郭線角度変化検出部41は、輪郭線画素の角度変化を用いて指先を検出し、例えば、処理対象領域内の手指領域の輪郭線上のすべての点について曲率を求め、曲率の大きい点が集中している箇所を指先として検出する。まず、図6(e),(f)のように処理対象領域内の手指領域の輪郭線の画素を一番右下から手首領域ラベル付け方向352に示したように反時計回りにラベル付けしていく。次に輪郭線上にある点Pi(xi,yi)からラベル番号がn離れた点Pi―n(xi―n,yi―n)と点Pi+n(xi+n,yi+n)それぞれがX軸となす角度θi i-nとθi+n iを求める。θi i-nとθi+n iはそれぞれ以下の数式(3)、数式(4)と表される。
θi i-nとθi+n iを用いてθiを以下の数式(5)と表される。

このθi を点Piにおける角度とする。角度変化閾値比較部42では、閾値記憶部45から得た閾値と各点における角度とを比較し、閾値以上画素集中度検出部43で、θiが閾値より大きい点Piが集中している箇所を検出し、その点を描画すると図7(d)の薬指指先抽出点704のようになり、親指指先抽出点701、人差親指指先抽出点702、中指指先抽出点703、子指指先抽出点705と比較してみることで、遮蔽時でも指先の抽出ができていることがわかる。
細線化部17で細線化した画像からでは、図7(e)の薬指のように端点の取得が不可能な場合は、指先位置検出部44で、上記したように輪郭線の角度変化による擬似的な指先位置を抽出することで後述する矩形枠500を正しい方向へ描画することができる。
(ステップS10:特徴点の取得処理)
特徴点検出部19は、N=1の点を端点、N=3の点を分岐点として取得することで図6(d)内に示す(細線化画像の)端点331及び(細線化画像の)分岐点332という特徴点を取得することができる。
((特徴点の取得))
特徴点検出部19は、上記のようにして左右に分離し処理対象領域を設定した後に、それぞれの処理対象領域で特徴点の取得を行う。特徴点検出部19は、細線化処理及び指先位置検出部44等による輪郭線画素の角度変化による指先抽出を行うことで、各処理対象領域から端点、分岐点といった特徴点を抽出し、これらの点から矩形枠500を描画する際に必要な各指の「長さ」、「傾き」といった情報を取得する。分岐点については,Hilditchの細線化の際に各画素の連結数を計算し,連結数が3の画素を抽出することで分岐点が取得できる。
(ステップS11:矩形枠の描画処理)
指の傾き検出部20は、特徴点検出部19で得られた各指の端点と分岐点をそれぞれ線分で結ぶ。この線分を各指の「長さ」、分岐点の座標を「指の根元の座標」とし、端点と分岐点の座標から「指の傾き」を計算してそれぞれ記録する。指の傾き検出部20は、後述する指先位置の検出に必要な矩形枠500を描画するためには指ごとに「長さ」、「傾き」、「根元の座標」を取得している。矩形枠描画部21は、特徴点検出部19及び指の傾き検出部20で得られた情報を元に、図7(a)〜図7(d)に示したように、各指の指先方向に各指に矩形枠500を描画することが可能となり、矩形枠/画像合成部22では、例えば矩形枠基本データ記憶部32からの矩形枠データに基づいて、各指の画像上に矩形枠500を合成する。
本発明では、手の移動による指先位置情報の変化の影響をなくすために図7(b)のような手の移動に追従する矩形枠500を指ごとに設定し、その中での指先位置を検出することでタイピング動作の検出を行う。矩形枠500の割り当て位置については、関節ごとに割り当てるわけではなく、指の傾き検出部20で得られた各指の根元の分岐点からの長さに応じて矩形の横線(短辺)を引いる。各指の根元の分岐点を基準として指先に近い順から,指の長さ×0.9,指の長さ×0.7,指の長さ×0.5の位置に短辺を引いている。また,短辺の長さは,一番長い指の長さの1/4にしている。また、矩形枠500は、上段と下段に別れており、対応する領域内に指先位置を移動させることで異なる2種類のキーの入力が可能である。
(ステップS12:各矩形枠内の指先位置の検出処理)
枠内指先位置検出部23は、図8(a)〜(e)に示したように、矩形枠500内での、タイピング動作時の指の曲げ具合によって変化する指の画像上の先端を検出することで指先の位置を検出する。本発明では、矩形枠付加曲げ無し指画像801、矩形枠付加第1段階曲げ指画像802、矩形枠付加第2段階曲げ指画像803に示したような指の曲げ具合によって2種類の入力が可能になるように実装した。矩形枠描画部21は、指に合わせて描画した矩形枠500のうち、指先方面の領域を上段の第1矩形領域510と、下段の第2矩形領域520に分け、さらにその下を第3矩形領域530とする。枠内指先位置検出部23は、第1矩形領域510と第2矩形領域520のそれぞれの領域内に指先(画像上の先端)が移動した場合に対応する出力を行う。本発明の手法では、各指で各領域に対応した「2種類の出力」と「出力なし」の3つの状態を表すことが可能である。領域内に指先が存在するかどうかは、各領域上部の横方向の線上に前景画素である指の肌色画素(二値化画像では白抜画素)が存在するかどうかによって判断する。
例えば図8(d)の場合、第1短辺551の線上には前景画素がなく、第2短辺552の線上には前景画素があるため指先位置は上段の第1矩形領域510にあると判断し、上段の第1矩形領域510に対応した出力を行う。本発明では、肌色領域の面積変化ではなく,矩形枠500の短辺上の前景画素(肌色)の有無によって曲がり具合を判断する。例えば、指先に近い順から3本の短辺(第1短辺551、第2短辺552、第3短辺553)を見た時に,図8(b)又は図8(d)のように最上段の第1短辺551のみ前景画素無しで残り2本(第2短辺552、第3短辺553)にはある場合は,第1短辺551の矩形内に指先があると判断する。また、図8(c)又は図8(e)のように、上から2本の短辺(第1短辺551、第2短辺552)には前景画素がなく,最下段の第3短辺553のみに前景画素がある場合は,2番目の第2矩形領域520内に指先があると判断する。
(ステップS13:入力キーの推定処理)
キーデータ合成部24は、バーチャルキーボードデータ記憶部26から読み出されたバーチャルキーボードデータによるバーチャルキーボード900と、使用者の両手画像200とを合成する。入力キー推定部25は、重心位置検出部51で得られた手の重心情報と、枠内指先位置検出部23で得られたどの矩形枠500のどの部分に指先端が存在するかの矩形内指先情報から、各指の曲がり具合を推定し、その手の重心と指の曲がり具合から、打鍵された入力キーを推定する。
入力キーの推定に当たっては、物理型キーボードの場合キーボード上の手の位置によって入力が可能なキーはある程度絞られてくることから、本発明でも同様に画像内における手の重心位置情報を利用し、重心の位置によって現在入力が可能なキーの絞り込みを行い、矩形枠500内の指先位置情報を用いてその中から入力されているキーの推定を行う。各手で曲げが一番大きな指のみ推定を行うため、同時に推定が可能なキーは左右の手で1つずつである。各指がキー押しする候補キーを決めておけば、絞り込みをより効率よくじっしできる。
本発明のバーチャルキーボードシステムは、図9(a)のようにバーチャルキーボード画像900と文字の出力部分である文字出力部201に分けて画面に表示され、バーチャルキーボード画像900で推定されたキー(指の表示と合っている場合)920が文字出力部201に表示される。バーチャルキーボード画像900は手の重心位置によって入力可能なキーの文字色を変化させており、使用者は画面を見ることでどの指でどのキーを入力できるかがわかるようになっている。また、推定されたキー920の位置には赤い円が表示されることで使用者にフィードバックが与えられる。
また、本発明では、指を伸ばした状態から曲げることによってキーを入力するため、下段(第2矩形領域520)のキーを入力する場合も必ず指先が上段(第1矩形領域510)を通過することになる。そのため、毎フレーム結果の出力を行うと、下段のキーと上段のキー両方が出力されてしまう。また、タイピング速度には個人差があるため、一度のタイピング動作で推定されるキーの数も使用者によって異なってくる。これらの問題を解決するために、予備的にタイピング動作時の指先位置の時間変化を観察する実験を行い、その結果から入力キーの決定方法を決定する。
(タイピング動作時の指先位置の時間変化)
((実験概要))
実験の被験者として熟練者1名と非熟練者4名(男性4名、女性1名)を採用した。非熟練者の被験者は本実験で初めてシステムを使用する。実験の前に被験者にシステムの説明を行い、一度システムを使用してもらった後に、左右6文字ずつ打鍵する文字列を入力してもらった。
((実験結果))
5人分の指先位置の時間変化を入力時間ごとにまとめ図に示す。タイピング速度が速い場合を図10(A)に、並な場合を図10(B)に、遅い場合を図11(A)に示す。各Figureのグラフは上からそれぞれ
(a):「j」を押すときの指先位置の時間変化
(b):「m」を押すときの指先位置の時間変化
(c):使用者が入力を意図していない場合に起こる誤検出
を示しており、グラフ中の破線は使用者が入力しようとしているキーを示す。
本発明のシステムでは、指の曲げ具合で2種類のキーが判別されるので、グラフの縦軸は入力がない状態を表す「伸」、指先位置が上段にある状態(今回は「j」)、指先位置が下段にある状態(今回は「m」)の3つになる。ここでの(c)の誤検出は、指の根元の点のずれにより矩形枠500全体が本来の位置より指先方向にずれることにより、指を曲げない状態にも関わらずキーが推定されてしまう状態のことを示す。
図10(A)の(a)からはタイピングが速い場合も入力に0.4秒以上必要であることが、図10(A)の(b)からは0.6秒ほどで入力が可能であるが入力途中で「j」を誤検出してしまうことがわかる。図10(A)の(c)は図10(A)の(a)よりも入力時間が短く、図10(A)の(a)と比較してもキーを検出している時間に明確な差があることがわかる。
図10(B)はタイピングの速度が並の場合の指先位置の時間変化である。図10(B)の(a)、 (b)ともに図10(A)の(a)、(b)よりも入力に時間を要することがわかる。また図10(A)の(b)では「m」を入力する際に「m」を検出する前後1フレームで「j」を検出していることがわかる。しかし図10(B)の(c)を見ると入力速度が並でも誤検出する場合の時間は図10(B)の(c)とほとんど変わらず、誤検出の場合は図10(B)の(c)も図10(A)の(a)よりキーを検出している時間が短いことがわかる。
図11(A)はタイピングの速度が遅い場合の指先位置の時間変化である。図11(A)の(a)、(b)から「j」、「m」ともに入力時間が長いことがわかる。図11(A)の(b)を見ると「m」を入力する際に「m」を検出する前後数フレームで「j」を検出していることがわかる。また、図11(A)の(c)の誤検出については図10(A)の(c)、図10(B)の(c)と同様に、使用者が意図して入力する場合よりもキーを検出する時間が短いことがわかる。
図10(A)から図11(A)を見ると、どの場合も「m」を入力するときに「m」だけでなく「j」も検出していることがわかる。しかし入力開始から終了までの間に検出されたキーの数を数えてみると、どの場合も「m」の個数が「j」の個数よりも多いことがわかった。また、入力に必要な時間は最大で1.4秒であった。
(入力キー決定のための時間枠と決定方法)
実験の結果から「m」を入力するときに「m」だけでなく「j」も検出してしまう場合があるが、検出されたキーの個数を見ると「m」の個数が「j」の個数よりも多いことがわかった。また、図11(B)に示すように入力時間が一番短い場合と誤検出した場合の入力時間を比較すると0.4秒を境にそれより大きいか小さいかで差が出ることがわかる。したがって、例えば、図3に示したタイマー27、検出回数カウンター28、検出回数記憶部29等を用いて、入力時間の違いと指先位置の時間変化の傾向から「入力が開始されてから終了するまでの時間が0.4秒以上1.5秒以下の場合、その間で検出された回数が最も多いキーを入力キーとする」という方法で入力キーの決定が可能であると考えられる。
(評価実験)
提案した手法を用いて作成したシステムを複数の被験者に使用してもらった結果からシステムの評価を行った。被験者はシステムの熟練者1名と非熟練者2名(男性)を採用した。
((実験概要))
被験者には画面上に表示されたキーボードを見ながらaからzまでアルファベット26文字を順に入力するというタスクを行ってもらった。非熟練者の被験者には実験の前にシステムの説明を交えながら同様のタスクを行ってもらった。システムの初心者と熟練者の違いを見るため、非熟練者が行う練習は1回のみとし、練習1回本番10回の計11回タスクを行ってもらった。本番での正答率や誤入力の傾向、入力に要した時間からシステムの評価を行った。また被験者にはシステムの使いやすさについての聞き取りも行った。
((実験結果))
各被験者の平均正答率と平均入力時間を表1、表2にまとめる。また、実験回数と正答率の関係を図12(a)に、入力に要した時間を図12(b)にまとめる。実験結果の図12中の被験者Aは熟練者、被験者B、Cは非熟練者である。正答率は誤入力を含むすべての入力回数に対して正しく入力できた割合を表す。誤入力には、使用者のミスタイプによる誤入力とシステム側の誤検出による誤入力が想定されたが、後者が原因の誤入力は確認されなかった。
((考察))
表1、表2が示すように、熟練者と非熟練者の間で正答率、入力時間ともに差がある。しかし図12(a)から被験者全員に共通して試行回数と共に正答率が上昇するという傾向が見られ、被験者Cについては被験者Aと同程度の正答率も見られた。入力時間には熟練者と非熟練者で大きな差が見られるが、試行回数と共に入力時間が減少する傾向にあることからシステムへの慣れによって入力時間の短縮が可能であると考えられる。誤入力については、前述の通りシステムの誤検出による文字の入力は無かったため、提案した手法のうち「矩形枠500内の指先位置の変化でタイピング動作を認識する」部分について有効性を示すことができた。
熟練者と非熟練者の正答率の違いが、上記した慣れに関係していると考えられることから、手の姿勢を考慮した絞り込みを行うことで改善できる。キーの絞り込み精度を向上させるために、画像内の重心の位置は同じでも、画像に入り込む前腕の角度が異なると指の位置が異なることがあることから、重心位置に加えて、手の姿勢を考慮させることで改善できる。また、図9(a)に示すようにシステムが入力可能と判断したキーと実際に使用者の指があるキーがずれてしまい、結果としてミスタイプを起こし誤入力となることがある。
また、熟練者と非熟練者の正答率の違いが、この慣れに関係していると考えられることから、キー配置を使用者に合わせて変更することで改善できる。現状のシステムでは画像内のキーボードの位置、大きさ、キー配置などはすべて固定であり、使用者はその表示に合わせる必要がある。しかし、バーチャルキーボード900は、物理型キーボードとは異なりキーの配置や大きさを容易に変更できるという利点がある。その利点を活かし、例えば、例えば、図3に示したバーチャルキーボードデータ記憶部26に異なるサイズのキーボード900を格納し、図3に示した指寸法検出部31で指寸法を計測し、使用者の手の大きさに合わせたキーボード900を描画する、手の姿勢に合わせて使用者がタイピングしやすい位置にキーを配置する等の方法を実装することで、入力性の向上、誤入力の減少に効果を有する。
本実験ではタイピング動作の認識については提案手法の有効性を確認できたが、いっそうキーの絞り込み精度を高めることで、非熟練者も熟練者と同程度に入力が可能にできる。
1 情報処理装置、
11 画像データ記憶部、
12 画像二値化部、
13 左右手領域分離部、
14 輪郭線検出部、
15 手首位置検出部、
16 処理対象領域検出部、
17 細線化部、
18 周辺画素連結数検出部、
19 特徴点検出部、
20 指の傾き検出部、
21 矩形枠描画部、
22 矩形枠/画像合成部、
23 枠内指先位置検出部、
24 キーデータ合成部、
25 入力キー推定部、
26 バーチャルキーボードデータ記憶部、
27 タイマー、
28 検出回数カウンター、
29 検出回数記憶部、
31 指寸法検出部、
32 矩形枠基本データ記憶部、
41 輪郭線角度変化検出部、
42 角度変化閾値比較部、
43 閾値以上画素集中度検出部、
44 指先位置検出部、
45 閾値記憶部、
51 重心位置検出部、
61 プログラム記憶部、
100 カメラ、
150 画像出力装置、
200 両手画像、
201 文字出力部、
210 左手画像、
220 右手画像、
230 二値化両手画像、
240 二値化左手画像、
250 二値化右手画像、
260 二値化輪郭線画像
270 二値化輪郭線単純化線分群画像
271 線分群大角度変化点(手首位置表示点)
290 矩形枠付加両手画像、
300 矩形枠付加処理対象領域右手画像、
301 処理対象領域二値化右手画像、
305 薬指折曲時の指先抽出点付加右手画像、
330 処理対象領域細線化画像、
331 (細線化画像の)端点、
332 (細線化画像の)分岐点、
335 薬指折曲時の細線化画像、
340 注目画素と周辺画その位置関係表記図、
350 処理対象領域二値化輪郭線画像、
351 手首領域ラベル付け表示図、
352 手首領域ラベル付け方向、
360 端点の無い薬指細線化画像部、
500 矩形枠、
510 第1矩形領域、
520 第2矩形領域、
530 第3矩形領域、
551 第1短辺(最指先側短辺)、
552 第2短辺、
553 第3短辺、
600 重心、
701 親指指先抽出点、
702 人差親指指先抽出点、
703 中指指先抽出点、
704 薬指指先抽出点、
705 子指指先抽出点、
801 矩形枠付加曲げ無し指画像、
802 矩形枠付加第1段階曲げ指画像、
803 矩形枠付加第2段階曲げ指画像、
900 バーチャルキーボード画像、
910 推定されたキー(指の表示とずれる場合)、
920 推定されたキー(指の表示と合っている場合)。

Claims (16)

  1. 左右の手の画像を撮像可能に設置された少なくとも1台のカメラと、前記カメラから入力する左右の手の画像から入力キーを推定する情報処理装置とを含むバーチャルキーボードシステムの入力方法であって、
    前記情報処理装置は、
    前記左右の手の重心位置を計算するステップを含む処理を実行し、
    入力キーを推定するステップでは、前記重心位置を手の位置とし、当該位置の情報を用いてバーチャルキーボードの各入力キー領域から入力可能なキーを絞込んで入力キーを推定する
    ことを含む処理を実行することを特徴とするバーチャルキーボードの入力方法。
  2. 前記情報処理装置は、さらに
    前記左右の手の画像を細線化して画像の端点から指先位置を求めるステップと、
    前記左右の手の画像を細線化した画像の分岐点の位置、及び前記指先位置を特徴点として取得するステップと、
    前記左右の手の画像の変化に追従させて前記分岐点の位置から前記指先位置までの長さと傾斜角度を計算して各指に沿わせて各々の矩形枠を描画し、その際に曲げられていない場合の指先の少なくとも一部が外にはみ出るように前記各矩形枠を描画するステップと、
    前記各矩形枠で略指幅方向に描画された指先側の短辺の外側における指の肌色画素の有無により、前記各指の指先位置が少なくとも各矩形枠の内か外かを検出するステップと、
    前記矩形枠内に指先位置がある指の指先位置と、前記バーチャルキーボードの各入力キー領域とから入力キーを推定するステップ
    を含む処理を実行することを特徴とする請求項1に記載のバーチャルキーボードの入力方法。
  3. 前記情報処理装置は、さらに
    前記左右の手の画像の輪郭線から左右手首の位置を検出するステップと、
    前記左右手首よりも先の左右の手を処理対象領域として設定するステップ
    を含む処理を実行することを特徴とする請求項1又は2に記載のバーチャルキーボードの入力方法。
  4. 前記情報処理装置は、さらに
    前記左右の手の画像の輪郭線から各前腕の角度を求め、
    入力キーを推定するステップでは、前記各前腕の角度と前記重心位置により各指の位置を推定し、当該各指の位置の情報を用いて前記バーチャルキーボードの各入力キー領域から入力可能なキーを絞込んで入力キーを推定する
    ことを特徴とする請求項3に記載のバーチャルキーボードの入力方法。
  5. 前記情報処理装置は、さらに
    前記左右の手の画像の輪郭線から各手の大きさを求め、
    入力キーを推定するステップでは、当該各手の大きさの情報を用いて前記バーチャルキーボードの各入力キー領域の範囲を拡大又は縮小してから入力可能なキーを絞込んで入力キーを推定する
    ことを特徴とする請求項3又は4に記載のバーチャルキーボードの入力方法。
  6. 前記情報処理装置は、さらに
    前記指先位置が5個得られない場合に前記輪郭線から指先位置を求めるステップ
    を含む処理を実行することを特徴とする請求項1〜5の何れか1項に記載のバーチャルキーボードの入力方法。
  7. 前記情報処理装置は、さらに
    前記各矩形枠を描画するステップでは、前記各矩形枠の内部に、前記指先側の短辺と同様に略指幅方向に少なくとも1本の短辺を追加して描画し、
    前記各指の指先位置が各矩形枠内か外かを検出するステップでは、さらに前記各矩形枠内部に追加された少なくとも1本の短辺の外側における指の肌色画素の有無により、前記各指の指先位置が各矩形枠において前記追加された短辺の内か外かを検出し、
    入力キーを推定するステップでは、前記指先側の短辺の外側に指の肌色画素が無い場合の前記入力キーと、前記追加された短辺の外側に指の肌色画素が無い場合の前記入力キーとでは異なる入力キーを推定する
    ことを特徴とする請求項1〜6の何れか1項に記載のバーチャルキーボードの入力方法。
  8. 前記情報処理装置は、さらに
    前記各矩形枠を描画するステップでは、前記追加された短辺は複数であり、
    前記各指の指先位置が各矩形枠内か外かを検出するステップでは、指先側から順に各短辺の外側における指の肌色画素の有無により、前記各指の指先位置が各短辺の内か外かを検出し、
    入力キーを推定するステップでは、前記指先側の短辺及び前記追加された各短辺の外側における指の肌色画素の有無により、各々異なる入力キーを推定する
    ことを特徴とする請求項7に記載のバーチャルキーボードの入力方法。
  9. 前記情報処理装置は、さらに
    入力キーを推定するステップでは、前記指先側の短辺による前記入力キーの推定から、最後の前記追加された短辺による前記入力キーの推定までの時間が所定時間内であり、左右の手の画像及び複数の入力キー領域が配置されたバーチャルキーボード画像を使用者に目視可能に出力する画像出力装置画像出力装置にキャプチャされた画像から推定された回数が最も多いキーを入力キーとして推定する
    ことを特徴とする請求項7又は8に記載のバーチャルキーボードの入力方法。
  10. 前記情報処理装置は、さらに
    前記画像出力装置に前記左右の手の画像及びバーチャルキーボード画像を使用者に目視可能に出力する際に、前記入力キーを推定するステップで推定されたキーについては、バーチャルキーボード画像内の当該キー画像領域についての色反転処理、線部分又は背景の色変更処理、線部分の太さ変更処理、背景画像追加処理を含む強調のための画像処理から少なくとも一つを実行する
    ことを特徴とする請求項1〜9の何れか1項に記載のバーチャルキーボードの入力方法。
  11. 前記情報処理装置は、さらに
    前記画像出力装置に前記左右の手の画像及びバーチャルキーボード画像を使用者に目視可能に出力する際に、前記左右の手の重心位置により、前記バーチャルキーボードにおける前記左右の手で入力可能なキーについて、当該キー画像領域についての色反転処理、線部分又は背景の色変更処理、線部分の太さ変更処理、背景画像追加処理を含む強調のための画像処理から少なくとも一つを実行する
    ことを特徴とする請求項1〜10の何れか1項に記載のバーチャルキーボードの入力方法。
  12. 前記情報処理装置は、さらに
    前記画像出力装置に前記左右の手の画像及びバーチャルキーボード画像を使用者に目視可能に出力する際に、前記入力キーを推定するステップで推定されたキーについては、バーチャルキーボード画像とは別個の文字出力画面に当該キーを表示する
    ことを特徴とする請求項1〜11の何れか1項に記載のバーチャルキーボードの入力方法。
  13. 請求項1〜12の何れか一つのバーチャルキーボードの入力方法における各ステップを実施するプログラム。
  14. 請求項13のプログラムを記憶する記憶媒体。
  15. 左右の手の画像を撮像可能に設置された少なくとも1台のカメラと、
    前記左右の手の画像及び複数の入力キー領域が配置されたバーチャルキーボード画像を使用者に目視可能に出力する画像出力装置と、
    前記カメラから入力する左右の手の画像及び前記バーチャルキーボード画像とから入力キーを推定する情報処理装置と
    を含んで構成され、
    前記情報処理装置は、
    請求項13のプログラムがインストールされたプログラム記憶部と、
    前記プログラムを実行可能にするための構成を含む
    ことを特徴とするバーチャルキーボードシステム。
  16. 左右の手の画像を撮像可能に設置された少なくとも1台のカメラと、
    前記左右の手の画像及び複数の入力キー領域が配置されたバーチャルキーボード画像を使用者に目視可能に出力する画像出力装置と、
    前記カメラから入力する左右の手の画像及び前記バーチャルキーボード画像とから入力キーを推定する情報処理装置と
    を含んで構成され、
    前記情報処理装置は、
    前記左右の手の画像を細線化する細線化部と、
    前記細線化された画像から端点と分岐点を特徴点として検出する特徴点検出部と、
    前記端点又は前記左右の手の画像の輪郭線から指先位置を検出する指先位置検出部と、
    前記左右の手の画像の変化に追従させて前記分岐点の位置から前記指先位置までの長さと傾斜角度を計算して各指に沿わせて各々の矩形枠を描画し、その際に曲げられていない場合の指先の少なくとも一部が外にはみ出るように前記各矩形枠を描画する矩形枠描画部と、
    前記各矩形枠で略指幅方向に描画された指先側の短辺の外側における指の肌色画素の有無により、前記各指の指先位置が少なくとも各矩形枠の内か外かを検出する枠内指先位置検出部と、
    前記矩形枠内に指先位置がある指の指先位置と、前記バーチャルキーボードの各入力キー領域とから入力キーを推定する入力キー推定部と
    を有することを特徴とするバーチャルキーボードシステム。
JP2013034915A 2013-02-25 2013-02-25 バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム Pending JP2014165660A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013034915A JP2014165660A (ja) 2013-02-25 2013-02-25 バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013034915A JP2014165660A (ja) 2013-02-25 2013-02-25 バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム

Publications (1)

Publication Number Publication Date
JP2014165660A true JP2014165660A (ja) 2014-09-08

Family

ID=51615904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013034915A Pending JP2014165660A (ja) 2013-02-25 2013-02-25 バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム

Country Status (1)

Country Link
JP (1) JP2014165660A (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101559424B1 (ko) 2014-10-10 2015-10-12 한국과학기술원 손 인식에 기반한 가상 키보드 및 그 구현 방법
JP2016143077A (ja) * 2015-01-29 2016-08-08 富士通株式会社 指先位置推定装置、指先位置推定方法、及び、プログラム
CN106020502A (zh) * 2016-05-13 2016-10-12 百度在线网络技术(北京)有限公司 输入法的输入面板的展示方法和装置
US9720513B2 (en) 2015-03-18 2017-08-01 Korea Electronics Technology Institute Apparatus and method for receiving a key input
CN107229380A (zh) * 2016-03-24 2017-10-03 卡西欧计算机株式会社 信息处理装置以及信息处理方法
CN107450672A (zh) * 2017-09-19 2017-12-08 曾泓程 一种高识别率的腕式智能装置
CN107608511A (zh) * 2017-09-14 2018-01-19 张兰梅 输入方法及装置
WO2019004686A1 (ko) * 2017-06-26 2019-01-03 서울대학교산학협력단 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
CN110795019A (zh) * 2019-10-23 2020-02-14 腾讯科技(深圳)有限公司 软键盘的按键识别方法、装置及存储介质
WO2020039703A1 (ja) * 2018-08-21 2020-02-27 株式会社Nttドコモ 入力装置
CN111443831A (zh) * 2020-03-30 2020-07-24 北京嘉楠捷思信息技术有限公司 一种手势识别方法及装置
JP2022115022A (ja) * 2021-01-27 2022-08-08 藤沼 伊代子 エア入力システム
WO2023033301A1 (ko) * 2021-09-06 2023-03-09 삼성전자 주식회사 가상 키보드를 통하여 사용자 입력을 획득하는 전자 장치와 이의 동작 방법
WO2023173668A1 (zh) * 2022-03-16 2023-09-21 中数元宇数字科技(上海)有限公司 一种虚拟场景中的输入识别方法、设备及存储介质
US11941180B2 (en) 2021-09-06 2024-03-26 Samsung Electronics Co., Ltd Electronic device for obtaining user input through virtual keyboard and method of operating the same

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101559424B1 (ko) 2014-10-10 2015-10-12 한국과학기술원 손 인식에 기반한 가상 키보드 및 그 구현 방법
JP2016143077A (ja) * 2015-01-29 2016-08-08 富士通株式会社 指先位置推定装置、指先位置推定方法、及び、プログラム
US9720513B2 (en) 2015-03-18 2017-08-01 Korea Electronics Technology Institute Apparatus and method for receiving a key input
CN107229380A (zh) * 2016-03-24 2017-10-03 卡西欧计算机株式会社 信息处理装置以及信息处理方法
CN106020502B (zh) * 2016-05-13 2019-05-21 百度在线网络技术(北京)有限公司 输入法的输入面板的展示方法和装置
CN106020502A (zh) * 2016-05-13 2016-10-12 百度在线网络技术(北京)有限公司 输入法的输入面板的展示方法和装置
KR102247020B1 (ko) * 2017-06-26 2021-04-30 서울대학교 산학협력단 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
WO2019004686A1 (ko) * 2017-06-26 2019-01-03 서울대학교산학협력단 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
KR20190001559A (ko) * 2017-06-26 2019-01-04 서울대학교산학협력단 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
KR102160297B1 (ko) * 2017-06-26 2020-09-28 서울대학교 산학협력단 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
US10963066B2 (en) 2017-06-26 2021-03-30 Seoul National University R&Db Foundation Keyboard input system and keyboard input method using finger gesture recognition
KR20200112777A (ko) * 2017-06-26 2020-10-05 서울대학교산학협력단 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
CN107608511A (zh) * 2017-09-14 2018-01-19 张兰梅 输入方法及装置
CN107450672A (zh) * 2017-09-19 2017-12-08 曾泓程 一种高识别率的腕式智能装置
CN107450672B (zh) * 2017-09-19 2024-03-29 曾泓程 一种高识别率的腕式智能装置
WO2020039703A1 (ja) * 2018-08-21 2020-02-27 株式会社Nttドコモ 入力装置
JPWO2020039703A1 (ja) * 2018-08-21 2021-08-12 株式会社Nttドコモ 入力装置
US11507181B2 (en) 2018-08-21 2022-11-22 Ntt Docomo, Inc. Input apparatus having virtual keys set on reference plane
JP7199441B2 (ja) 2018-08-21 2023-01-05 株式会社Nttドコモ 入力装置
CN110795019A (zh) * 2019-10-23 2020-02-14 腾讯科技(深圳)有限公司 软键盘的按键识别方法、装置及存储介质
CN110795019B (zh) * 2019-10-23 2023-08-08 腾讯科技(深圳)有限公司 软键盘的按键识别方法、装置及存储介质
CN111443831A (zh) * 2020-03-30 2020-07-24 北京嘉楠捷思信息技术有限公司 一种手势识别方法及装置
JP2022115022A (ja) * 2021-01-27 2022-08-08 藤沼 伊代子 エア入力システム
WO2023033301A1 (ko) * 2021-09-06 2023-03-09 삼성전자 주식회사 가상 키보드를 통하여 사용자 입력을 획득하는 전자 장치와 이의 동작 방법
US11941180B2 (en) 2021-09-06 2024-03-26 Samsung Electronics Co., Ltd Electronic device for obtaining user input through virtual keyboard and method of operating the same
WO2023173668A1 (zh) * 2022-03-16 2023-09-21 中数元宇数字科技(上海)有限公司 一种虚拟场景中的输入识别方法、设备及存储介质

Similar Documents

Publication Publication Date Title
JP2014165660A (ja) バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム
JP6079832B2 (ja) ヒューマンコンピュータインタラクションシステム、手と手指示点位置決め方法、及び手指のジェスチャ決定方法
KR101581954B1 (ko) 실시간으로 피사체의 손을 검출하기 위한 장치 및 방법
Oka et al. Real-time tracking of multiple fingertips and gesture recognition for augmented desk interface systems
US8824802B2 (en) Method and system for gesture recognition
KR101514169B1 (ko) 정보 처리 장치, 정보 처리 방법 및 기록 매체
JP6066093B2 (ja) 手指形状推定装置、手指形状推定方法、及び手指形状推定プログラム
Nair et al. Hand gesture recognition system for physically challenged people using IOT
WO2013180151A1 (ja) 注目位置検出装置、注目位置検出方法、及び注目位置検出プログラム
JP6571108B2 (ja) モバイル機器用三次元ジェスチャのリアルタイム認識及び追跡システム
Kulshreshth et al. Poster: Real-time markerless kinect based finger tracking and hand gesture recognition for HCI
Rossol et al. A multisensor technique for gesture recognition through intelligent skeletal pose analysis
US9836130B2 (en) Operation input device, operation input method, and program
Krejov et al. Multi-touchless: Real-time fingertip detection and tracking using geodesic maxima
Jing et al. Human-computer interaction using pointing gesture based on an adaptive virtual touch screen
Abe et al. Virtual 3-D interface system via hand motion recognition from two cameras
JP2010067062A (ja) 入力システム及び入力方法
JP5526465B2 (ja) 爪位置データ検出装置及び爪位置データ検出方法、並びに爪位置データ検出プログラム
JP6651388B2 (ja) ジェスチャモデリング装置、ジェスチャモデリング方法、ジェスチャモデリングシステム用のプログラム、およびジェスチャモデリングシステム
Abe et al. 3-D drawing system via hand motion recognition from two cameras
Plouffe et al. Natural human-computer interaction using static and dynamic hand gestures
JP5964603B2 (ja) データ入力装置、及び表示装置
Chiang et al. 3D depth information based 2D low-complexity hand posture and gesture recognition design for human computer interactions
Augustauskas et al. Robust hand detection using arm segmentation from depth data and static palm gesture recognition
JP6230666B2 (ja) データ入力装置、データ入力方法、及びデータ入力プログラム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150317

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160222