(57)【要約】【課題】ユーザのジェスチャ入力における画面の操作性を向上させる。【解決手段】ジェスチャによる入力を行うジェスチャ入力装置であって、ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出する総遅延時間算出部と、前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する画面表示部と、を有するジェスチャ入力装置が提供される。【選択図】図２
2015132992.tif 000002
【特許請求の範囲】
【請求項１】
ジェスチャによる入力を行うジェスチャ入力装置であって、
ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出する総遅延時間算出部と、
前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する画面表示部と、
を有するジェスチャ入力装置。
【請求項２】
前記総遅延時間算出部は、
前記ぶれ量に基づく遅延時間と前記機器の処理又は通信に基づく遅延時間とから総遅延時間を算出する、
請求項１に記載のジェスチャ入力装置。
【請求項３】
前記画面表示部は、
前記総遅延時間及びユーザと画面との位置関係に基づいて、オブジェクトを表示する、
請求項１又は２に記載のジェスチャ入力装置。
【請求項４】
前記総遅延時間から画面操作の難易度を示す操作難度を算出する操作難度算出部を有し、
前記画面表示部は、
前記操作難度が予め定められた閾値以下の画面のオブジェクトを表示する、
を有する請求項１〜３のいずれか一項に記載のジェスチャ入力装置。
【請求項５】
前記操作難度算出部は、
ジェスチャを行うユーザの身体部分の位置に基づいてカーソルの初期位置の分布を算出し、算出されたカーソルの初期位置の分布に応じて操作難度を算出する、
請求項４に記載のジェスチャ入力装置。
【請求項６】
前記ぶれ量に基づく遅延時間を、前記ジェスチャに応じて取得されたカーソルの位置を平滑化する平滑化強度に基づき算出する平滑遅延時間算出部を有する、
請求項１〜５のいずれか一項に記載のジェスチャ入力装置。
【請求項７】
ジェスチャによる入力を行うジェスチャ入力方法であって、
ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出し、
前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する、
処理をコンピュータが実行するジェスチャ入力方法。
【請求項８】
ジェスチャによる入力により画面を操作するプログラムであって、
ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出し、
前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する、
処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジェスチャ入力装置、ジェスチャ入力方法及びプログラムに関する。
【背景技術】
【０００２】
使用者によるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）画面での操作やその他のＵＩに従って動作する装置がある（例えば、特許文献１、２を参照。）。また、より直感的に、自然な感覚で指示を入力することが可能なＵＩの開発が要求されている。例えば、画面を離れて操作する際のユーザインタフェースとして、ユーザの身振りや手振りにより画面操作を行う空間ジェスチャによるＵＩの開発が提案されている（例えば、特許文献３を参照。）。空間ジェスチャによるＵＩでは、入力装置は、例えば、手などの身体の一部の位置をセンサにより取得し、離れている画面上において、センサにより取得した位置に応じた位置にカーソルを表示し、そのカーソルで画面上のアイコン等のオブジェクトを操作する。
【０００３】
その際、事前に測定した手のぶれ量に応じて画面に表示されるオブジェクトを変更する手法が提案されている。例えば、ぶれ量が小さい場合、画面上のオブジェクトを小さく表示して画面上の一覧性を高める。一方、ぶれ量が大きい場合、画面上のオブジェクトを小さく表示するとユーザのジェスチャ入力に対する操作エラーが生じ易くなる。このため、ぶれ量が大きい場合、画面の操作性を考慮して画面上のオブジェクトを大きく表示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１３４９１２号公報
【特許文献２】特開平８−１６３５３号公報
【特許文献３】国際公開第２０１２／００５００５号公報
【非特許文献】
【０００５】
【非特許文献１】I. Scott MacKenzie and Colin Ware. 1993. Lag as a determinant ofhuman performance in interactive systems. In Proceedings of the INTERACT’93 and CHI’93 Conference onHuman Factors in Computing Systems (CHI’93). ACM, pp.488-493
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ぶれ量の大小だけでは、ユーザのジェスチャ入力における画面の操作性を高める際の情報としては十分でない場合がある。例えば、ぶれ量自身が、使用するセンサの精度によって変わる。センサの精度は使用するセンサの性能やユーザとセンサとの位置関係により変わる。例えば、ユーザとセンサとの位置が近ければセンサの精度は高くなり、該位置が遠ければセンサの精度は低くなる。
【０００７】
また、例えば、ジェスチャをセンシングした位置は、ローパスフィルタなどで平滑化してジェスチャに応じた位置に表示されているカーソルのぶれをなくす又は減らす処理を施すことが多い。このため、ジェスチャ入力時に使用するぶれ量は、実際のぶれ量と同じとは限らない。また、平滑化の処理に基づく遅延が、ジェスチャ入力による画面操作エラーに影響を与えることがある。
【０００８】
そこで、一側面では、ユーザのジェスチャ入力における画面の操作性を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
一つの案では、ジェスチャによる入力を行うジェスチャ入力装置であって、ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出する総遅延時間算出部と、前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する画面表示部と、を有するジェスチャ入力装置が提供される。
【発明の効果】
【００１０】
一態様によれば、ユーザのジェスチャ入力における画面の操作性を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態にかかるジェスチャ入力装置の概要を示した図である。
【図２】一実施形態にかかるジェスチャ入力装置の機能構成の一例を示した図である。
【図３】一実施形態にかかる遅延時間を説明するための図である。
【図４】一実施形態にかかるカーソルの位置の分布の一例を示した図である。
【図５】一実施形態に係る遅延量算出処理の一例を示したフローチャートである。
【図６】一実施形態に係る画面表示処理の一例を示したフローチャートである。
【図７】一実施形態に係る操作難度の算出処理の一例を示したフローチャートである。
【図８】一実施形態に係る遅延時間及びユーザと画面との距離（位置関係）を変化させた場合の画面表示の一例を示した図である。
【図９】一実施形態に係るジェスチャ入力装置のハードウェア構成の一例を示した図である。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１３】
［ジェスチャ入力装置の概要］
まず、本発明の一実施形態に係るジェスチャ入力装置１の概要について、図１を参照しながら説明する。図１は、一実施形態に係るジェスチャ入力装置１の概要を示した図である。ジェスチャ入力装置１としては、例えば、ＰＣやＴＶ等の画面を有する端末が挙げられる。ジェスチャ入力装置１は、身振りや手振り等のユーザの動作でＰＣやＴＶなどの画面を操作可能な装置である。ユーザの動作を、以下「ジェスチャ」という。
【００１４】
なお、ジェスチャを行うユーザの身体部分は、ユーザの身体の一部または全部であり得る。ジェスチャは、手、腕、足、胴体、頭、視線等の動きや方向であってもよい。ジェスチャは、口の動きや音声であってもよい。
【００１５】
ジェスチャ入力装置１は、カメラ１０とディスプレイ２０とを有し、その上で動作するソフトウェアにより、ジェスチャによる画面操作、すなわち、ジェスチャ入力を実現する。ソフトウェアの部分は等価な働きをするハードウェアによって実現されてもよい。
【００１６】
ジェスチャ入力装置１は、ハードウェアの機構に関し、特定のものに依存しない。例えば、カメラ１０は、ユーザの身体の一部の位置を取得できればよい。例えば、カメラ１０は、距離センサ、単眼カメラ、ステレオカメラ等のセンサと物体トラッキング装置とを組み合わせて使用してもよい。カメラ１０に替えてジャイロセンサ、加速度センサ、超音波などを用いて位置取得を行える端末を、ユーザが装着してもよい。
【００１７】
ディスプレイ２０は、ＰＣのモニタや、ＴＶ、プロジェクタ、ＨＭＤ（Ｈｅａｄ  Ｍｏｕｎｔｅｄ  Ｄｉｓｐｌａｙ）等、画面表示ができるものであればよい。
【００１８】
ジェスチャ入力装置１では、例えば、カメラ１０によりユーザＵの手の位置が検出される。検出された手の位置に基づき、離れている画面２１上の手の位置に応じた位置にカーソル２１ａが表示される。そして、表示されたカーソル２１ａにより画面２１上のアイコンの選択等のＧＵＩ操作が行われる。このようにして、ユーザＵが行うジェスチャによりユーザＵは、離れた画面の操作を行うことができる。
【００１９】
本実施形態に係るジェスチャ入力装置１は、ジェスチャをするユーザの身体部分（以下では、主に「手」を例に挙げる。）のぶれ量だけでなく、カメラ１０により取得したセンサデータの処理による遅延時間も考慮して、ジェスチャ入力に対する操作性のよい画面を表示する。本実施形態では、操作性に影響するぶれ量を「ぶれを平滑化し、そのぶれ量を十分小さくする処理による遅延時間」とする。これにより、本実施形態に係るジェスチャ入力装置１は、ぶれ量による遅延時間と機器の性能による遅延時間とに基づき、カーソル移動が遅延することによる使いにくさを考慮した画面を表示する。以下では、本実施形態に係るジェスチャ入力装置１について詳細に説明する。
【００２０】
（機能構成）
まず、一実施形態にかかるジェスチャ入力装置１の機能構成の一例について説明する。図２は、一実施形態にかかるジェスチャ入力装置１の機能構成の一例を示した図である。
【００２１】
（遅延量算出機能）
ジェスチャ入力装置１は、遅延量を算出する機能を有する。この機能を実現するために、ジェスチャ入力装置１は、センサの精度およびユーザの身体のぶれに基づくカーソルの位置の精度を算出し、ぶれを十分に小さくするようにカーソルの位置を平滑化する際の平滑化強度を算出する。そして、算出された平滑化強度からユーザのジェスチャが画面上のカーソル操作に反映されるまでの遅延時間が算出される。ここで算出される遅延時間は、「ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間」であり、「ぶれ量」にはユーザの身体が揺れることで生じるものと、ユーザの身体を観測するときのセンサの精度、つまり、センサによる位置検出時の検出値の誤差（実際の身体位置と検出した身体位置との差分）が含まれる。この遅延時間は、主に平滑化処理時に発生する位相のずれにより生じる遅延時間である。また、ジェスチャ入力装置１は、センサの内部処理にかかる時間や画面表示装置等の機器性能に基づく遅延時間を算出する。ジェスチャ入力装置１は、ぶれ量の平滑化による遅延時間と機器性能による遅延時間とに基づき総遅延時間を算出する。
【００２２】
（画面表示機能）
ジェスチャ入力装置１は、算出された総遅延時間に基づき画面を表示する機能を有する。この機能を実現するために、ジェスチャ入力装置１は、総遅延時間とカーソルの初期位置の分布とに基づいて、画面上のオブジェクトの操作難度を算出する。操作難度は、画面操作の難易度を示す。ジェスチャが画面上のカーソル操作に反映されるまでの遅延時間と操作難度とは、遅延時間が大きい程操作難度が高くなるという相関関係を有する。よって、どのくらい遅延したらどのくらい操作が難しくなるかを示す操作難度を遅延時間から算出できる。
【００２３】
ジェスチャ入力装置１は、ユーザと画面との位置関係に基づいて、画面上のオブジェクトが視認できる表示条件を算出する。表示条件としては、ユーザと画面との距離が遠ければオブジェクトを大きく表示し、ユーザと画面との距離が近ければオブジェクトを小さく表示するというような条件が挙げられる。ジェスチャ入力装置１は、算出された操作難度と表示条件とに基づいて画面上のオブジェクトを表示する。ジェスチャ入力装置１は、ジェスチャによる画面操作が難しくなりすぎないように操作難度が一定の値以下になる大きさのオブジェクトを表示する。その際、オブジェクトの大きさが大きくなるほど画面の一覧性は低下する。よって、生成された画面には、操作難度が一定の値以下であって、画面の一覧性を無用に低下させない程度の大きさのオブジェクトが表示される。
【００２４】
本実施形態では、遅延量算出機能は、主に、位置取得部３１、位置蓄積部３２、精度算出部３３、平滑化強度算出部３４、平滑遅延時間算出部３５、機器遅延時間算出部３６、及び総遅延時間算出部３７の各機能により実現される。
【００２５】
位置取得部３１は、ユーザの手の位置やポインティングデバイスの位置を取得し、画面上のカーソルの位置を計算する。手の座標系は、表示装置の画面の法線方向をｚ軸とし、画面から離れる方向を正とする。画面の平面内の水平方向をｘ軸、垂直方向をｙ軸とする。この座標系で位置取得部３１は適宜、ユーザの手の座標（ｘｈ、ｙｈ、ｚｈ）を取得し、取得した手の位置に従って、画面上のカーソル座標（ｘ、ｙ）を計算する。カーソルの座標系は、画面の平面内の水平方向をｘ軸（右方向を正）、垂直方向をｙ軸（下方向を正）とする。手の座標からカーソルの座標ｐを算出する計算式の一例として式（１）を挙げる。
【００２６】
【数１】
2015132992.tif 000003
【００２７】
ここで、ａｘ、ｂｘ、ａｙ、ｂｙは、実数の定数で、画面の解像度などから、実験的に定める値である。
【００２８】
位置蓄積部３２は、位置取得部３１で算出したカーソルの座標ｐ（ｘ、ｙ）を一定の時間毎に蓄積する。蓄積したカーソルの座標は、カーソルの移動速度・方向を算出する際に用いられる。一定の時間毎とは、例えば１秒間に３０回などである。位置蓄積部３２は、カーソルの座標を蓄積するだけでなく、カーソルの座標を破棄してもよい。例えば、一定の時間より以前に蓄積されたカーソルの座標を破棄することで、位置蓄積部３２に一定の量以上のカーソルの座標が蓄積されないようにすることもできる。
【００２９】
精度算出部３３は、位置蓄積部３２に蓄積された一定の長さのカーソルの座標列を用いて、カーソルの位置の精度を算出する。具体的には、精度算出部３３は、ぶれ量を測定し、ぶれ量からカーソルの位置の精度を算出する。「ぶれ量」は、手を静止し、センサで位置を一定の回数取得した時の標準偏差と定義することができる。
【００３０】
カーソルの位置の精度を算出する方法の一例としては、まず、精度算出部３３は、精度を算出する旨をユーザに通知する。ユーザは、通知に応じてカーソルをできるだけ静止させる。静止させたまま一定の時間が経過し、カーソルの位置が位置蓄積部３２に十分に蓄積されたとき、精度算出部３３は、式（２）に従ってカーソルの位置の精度を算出する。カーソルの位置の精度は、式（２）のように分散として算出される。精度算出部３３は、ユーザにカーソルの位置の精度が算出できた旨を通知する。ここでＶ（Ｘ）、Ｖ（Ｙ）は標準偏差であり、ｍは標準偏差の計算に使用する座標列の長さであり、
および はｘ座標およびｙ座標の平均である。
【００３１】
【数２】
2015132992.tif 000004
【００３２】
以上のようにして、精度算出部３３は、ユーザの手のぶれ量を測定し、ぶれ量に基づきカーソルの位置の精度を算出する。なお、カメラ１０で取得した画像上の長さを現実世界の長さに変換して扱う場合、ぶれ量は距離に比例する。よって、センサ及びユーザの距離とぶれ量とは比例関係になる。この比例関係が既知の場合は、精度算出部３３は、ユーザとセンサとの距離が変わったときに再測定する必要はなく、センサ及びユーザの距離とぶれ量との既知の関係に基づき、カーソルの位置の精度を算出すればよい。
【００３３】
平滑化強度算出部３４は、カーソルの位置のぶれが十分に小さくなるように、所定の時間蓄積されたカーソルの位置を平滑化する際の強度を算出する。平滑化強度算出部３４による平滑化の強度の算出の仕方は、平滑化をどのような関数によって行うかによって異なる。例えば、移動平均で平滑化する場合、平滑化強度算出部３４は、平均に使う観測点の数を算出する。観測点の数は、平滑化の強度の一例である。
【００３４】
また、例えば、指数平滑移動平均で平滑化する場合、平滑化強度算出部３４は、指数平滑移動平均で平滑化するときの係数を算出する。ここで、係数の値は、平滑化の強度の一例である。
【００３５】
より具体的には、例えば、式（３）のような単純な移動平均を用いる場合、平滑化強度算出部３４は、式（４）によって平滑化後の分散を計算することができる。算出された平滑化後の分散は、カーソルの位置の精度を示す。
【００３６】
【数３】
2015132992.tif 000005
【００３７】
【数４】
2015132992.tif 000006
【００３８】
ここで、ｘ（ｔ）は平滑化前の座標列（入力座標列）、Ｘｓ（ｔ）は平滑化後の座標列、ｎは移動平均に用いる座標列の長さ（平均に使用する入力点の数）、Ｖ（Ｘｓ）は平滑化後の分散である。ただし、式（３）及び式（４）ではｘ座標のみについて記述したが、ｙ座標についても同様である。
【００３９】
平滑化強度算出部３４は、式（４）で計算される平滑化後の分散を十分小さくするという条件（平滑化後の分散Ｖ（Ｘｓ）＜閾値Ｔｖ；ただしＴｖは十分小さな分散を示す閾値）下で座標列の長さｎについて解く。平滑化強度算出部３４は、そのｎ（移動平均に用いる座標列の長さ）を平滑化強度とみなすことで平滑化強度を算出してもよい。
【００４０】
また、例えば、式（５）のような指数平滑移動平均を用いる場合、平滑化強度算出部３４は、式（６）によって平滑化後の分散を計算することができる。算出された平滑化後の分散は、カーソルの位置の精度を示す。
【００４１】
これによれば、単純な移動平均の場合と同様に、平滑化強度算出部３４は、係数αの値を平滑化強度とみなすことで平滑化強度を算出してもよい。つまり、式（６）で計算される平滑化後の分散を十分小さくするという条件（平滑化後の分散Ｖ（Ｘｓ）＜閾値Ｔ；ただしＴは十分小さな分散を示す閾値）下で係数αについて解く。ここで、係数αは、平滑化定数であり、小さい値ほど平滑化強度が高いことを示す。
【００４２】
【数５】
2015132992.tif 000007
【００４３】
【数６】
2015132992.tif 000008
【００４４】
また、これら以外の平滑化方法についても、同様な考え方を適用して平滑化強度を算出することができる。すなわち、平滑化強度算出部３４は、平滑化後のカーソルのぶれ量（例えば分散）が十分に小さくなるよう、平滑化に関わるパラメータを決定すればよい。平滑化強度算出部３４は、そのときのパラメータを平滑化強度とみなすことで平滑化強度を算出してもよい。
【００４５】
図３に示されるように、遅延時間には、主に機器による遅延時間と平滑化に基づく遅延時間とがある。図３の（ａ）に示される機器による遅延時間は、ジェスチャに応じた機器の処理又は通信に基づく遅延時間である。機器による遅延時間の一例としては、センサ内部の処理時間や、センサからサーバ等の機器へ情報を転送するときの通信時間が挙げられる。機器による遅延時間の他の例としては、転送された画像を画面上に表示するためのレンダリング等の処理時間、処理後の画像を画面へ表示するためのＵＩ画面の計算にかかる時間等が挙げられる。機器による遅延時間に基づくカーソルの移動軌跡は、図３の（ａ）のグラフの実線で示した本来のカーソルの移動軌跡に対して、破線で示した単純な遅延を持つ。
【００４６】
機器遅延時間算出部３６は、図３の（ａ）に示される機器による遅延時間を算出する。機器遅延時間算出部３６は、センサや画面の表示機器の性能に基づいて遅延時間を算出する。機器遅延時間算出部３６により算出される遅延時間は、事前にセンサや情報処理機器の処理時間を測定することで取得できる。また、機器遅延時間算出部３６は、使用する機器の処理時間を事前に測定し、機器の性能と処理時間との対応表を作成しておき、その対応表に基づき使用する特定の機器の性能から処理時間を取得しても良い。
【００４７】
また、機器遅延時間算出部３６は、例えば、機器の性能を定めた仕様書から機器による遅延時間を算出することができる。また、機器遅延時間算出部３６は、ジェスチャ入力装置１が平滑化を行わない状態で、ユーザがジェスチャによる操作を行ってからその操作が画面上に反映されるまでの時間を、センサとは別のカメラで撮影された画像から測定し、機器による遅延時間として算出してもよい。
【００４８】
一方、図３の（ｂ）に示される平滑化に基づく遅延時間は、周波数（速度）に依存する遅延である。その遅延の一例は、（ｂ）のグラフの実線で示した本来のカーソルの移動軌跡に対して、破線で示したように単純な遅延ではない。例えば、平滑遅延時間算出部３５は、図３の（ｂ）に示される平滑化に基づく遅延時間を算出する。平滑遅延時間算出部３５は、平滑化フィルタの時定数を平滑化に基づく遅延時間として使用することができる。平滑遅延時間算出部３５による具体的な算出の仕方は、平滑化および平滑強度の算出をどのように行うかによって異なる。単純な移動平均で平滑化した場合の平滑化フィルタの時定数の算出、又は指数平滑移動平均で平滑化した場合の平滑化フィルタの時定数の算出について以下に具体的に説明する。
【００４９】
例えば、単純な移動平均で平滑化した場合には、平滑遅延時間算出部３５は、式（７）によって時定数τを算出することができる。ここで時定数τは遅延時間、Ｔは位置蓄積部３２が位置を蓄積する時間間隔（サンプリング周期）、ｅは自然対数の底である。
【００５０】
【数７】
2015132992.tif 000009
【００５１】
指数平滑移動平均を用いる場合には、平滑遅延時間算出部３５は、式（８）により遅延時間（時定数）τを計算することができる。ここで、α（０≦α≦１）は平滑化定数、時定数τは遅延時間、Ｔは位置蓄積部３２が位置を蓄積する時間間隔（サンプリング周期）、である。αが小さい程強く平滑化する。
【００５２】
【数８】
2015132992.tif 000010
【００５３】
総遅延時間算出部３７は、機器遅延時間算出部３６で算出した遅延時間と、平滑遅延時間算出部３５で算出した遅延時間とに基づき総遅延時間を算出する。例えば、総遅延時間算出部３７は、平滑遅延時間と機器遅延時間との和を総遅延時間としてもよい。総遅延時間算出部３７は、平滑遅延時間と機器遅延時間とのいずれかを遅延時間としてもよい。
【００５４】
なお、平滑遅延時間は、ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間の一例である。機器遅延時間は、ジェスチャに応じた機器の処理又は通信に基づく遅延時間の一例である。
【００５５】
（画面表示機能）
本実施形態では、画面表示機能は、主に操作難度算出部４１、表示条件算出部４２及び画面表示部４３により実現される。操作難度算出部４１は、総遅延時間と、カーソルの初期位置の分布の仕方とに基づいて、画面上のオブジェクトの操作難度を算出する。オブジェクトは、画面上に表示され、選択可能な図形やアイコン等の画像やテキストを含む。ポインティングは、オブジェクト上にカーソルを重ねる操作をいう。
【００５６】
操作難度算出部４１は、オブジェクトのポインティングにかかる時間を操作難度として算出する。オブジェクトの操作難度は、カーソルの初期位置とオブジェクトの距離に対して増加し、オブジェクトの大きさに対して減少し、総遅延時間に対して増加する量である。
【００５７】
操作難度算出部４１は、以下の式に基づき操作難度を算出できる。操作難度を算出する一例として式（９）及び式（１０）を以下に示す。
【００５８】
【数９】
2015132992.tif 000011
【００５９】
【数１０】
2015132992.tif 000012
【００６０】
ここで、ａ、ｂ、ｃは定数であり、実験的に定められる値である。ＭＴはポインティング時間、ＩＤは難度（Ｉｎｄｅｘ  ｏｆ  Ｄｉｆｆｉｃｕｌｔｙ）、Ａはカーソルの初期位置からオブジェクトまでの距離、Ｗはオブジェクトの大きさ、Ｌａｇは遅延時間を表す。カーソルの初期位置は、後述されるカーソルの初期位置の分布を使用して定められる。
【００６１】
式（９）で算出されるポインティング時間ＭＴは、画面操作に対する難易度を示す操作難度の一例である。
【００６２】
式（９）及び式（１０）では、表示の候補とされるオブジェクトに対して、カーソルの位置毎にカーソルの初期位置からオブジェクトまでの距離Ａが算出される。操作難度算出部４１は、表示の候補とされるオブジェクトのそれぞれに対して、カーソルの初期位置の分布から想定されるカーソルの位置のそれぞれについて距離Ａを算出する。オブジェクトの大きさＷは、例えば、５ｃｍ、１０ｃｍ、１５ｃｍと仮定してもよい。よって、操作難度算出部４１は、大きさの異なるオブジェクト毎であって、カーソルの位置毎にカーソルの初期位置からオブジェクトまでの距離Ａを用いてポインティング時間ＭＴを算出する。
【００６３】
また、操作難度を算出する操作難度を算出する他の例として式（１１）、式（１２）及び式（１３）を以下に示す。
【００６４】
【数１１】
2015132992.tif 000013
【００６５】
【数１２】
2015132992.tif 000014
【００６６】
【数１３】
2015132992.tif 000015
【００６７】
ここで、ａ、ｂ、ｃ、ｄは定数であり、実験的に定められる値である。ＭＴはポインティング時間、Ａはカーソルの初期位置からオブジェクトまでの距離、Ｗはオブジェクトの大きさ、Ｌａｇは遅延時間を示す。また、φは平均０、分散１の累積正規分布、Ｎは正規分布、Ｆは任意のＢ＞０に対して等式（１３）を満たす関数である。操作難度算出部４１は、式（１１）を用いてポインティング時間ＭＴを算出する。算出されたポインティング時間ＭＴは、操作難度の一例である。
【００６８】
（カーソルの初期位置）
カーソルの初期位置は一般には不明である。なぜなら、画面表示部４３の処理は、実際に画面表示が行われる前に実行されるため、操作難度算出部４１の実行時に、ユーザがカーソルを操作しているとは限らないからである。よって、カーソルの初期位置からオブジェクトまでの距離Ａの算出ができないことになる。
【００６９】
そこで、操作難度算出部４１は、カーソルの初期位置の分布を仮定し、仮定されたカーソルの初期位置の分布に従ったそれぞれのカーソルの位置における操作難度を算出する。操作難度算出部４１は、それぞれのカーソルの位置での操作難度の平均値を算出し、操作難度としてもよい。カーソルの初期位置の分布の一例としては、図４の（ａ）に示されるように、カーソルの存在確率が画面２１内で一様な分布の場合が挙げられる。また、カーソルの初期位置の分布の他の例としては、図４の（ｂ）に示されるように、カーソルの存在確率が、画面２１内でユーザＵの肩の位置に対応する点Ｏを中心とした紡錘形の分布の場合が挙げられる。
【００７０】
表示条件算出部４２は、画面の大きさと、ユーザ及び画面の位置関係とに基づいて、画面上のオブジェクトが視認できる表示条件を算出する。表示条件算出部４２は、オブジェクトの大きさの閾値条件を設定する。表示条件算出部４２は、オブジェクトの大きさの閾値Ｔｓを画面の大きさに対して増加し、ユーザと画面との距離に対して増加する値に設定する。これによれば、ユーザから画面までの距離が遠い場合に、表示が大きくなり、近づくと小さく表示されるため、ユーザと画面との距離が変わっても、ユーザが視聴しやすい画面表示を提供できる。例えば、ユーザと画面との距離が距離ｄ１である場合のオブジェクトの大きさの閾値をＴｓ＝ｔ１とする。また、ユーザと画面との距離が距離ｄ１よりも大きい距離ｄ２である場合のオブジェクトの大きさの閾値をＴｓ＝ｔ２とする。このとき、閾値ｔ２は閾値ｔ１よりも大きい値（ｔ２＞ｔ１）に設定されてもよい。ここで、ｔ１、ｔ２、ｄ１、ｄ２は開発者により定められる値である。閾値Ｔｓは、例えば、図示しない記憶領域に記憶されてもよい。
【００７１】
画面表示部４３は、操作難度算出部４１で算出した操作難度と、表示条件算出部４２で算出した表示条件とに基づいて、オブジェクトを表示した画面を生成する。一例としては、画面表示部４３は、操作難度が予め定められた操作難度の閾値Ｔｍ以下になるよう、生成する画面上のオブジェクトの大きさを調整する。オブジェクトの大きさの調整は、操作難度が十分小さい（つまり、閾値Ｔｍ以下）の範囲で画面での表示の一覧性が増すよう、できるだけ多くのオブジェクトが表示できるサイズに設定してもよい。閾値Ｔｍは、例えば、図示しない記憶領域に記憶されてもよい。
【００７２】
例えば、オブジェクトの大きさの候補が、ｓ１、ｓ２、ｓ３（ｓ１＜ｓ２＜ｓ３）である場合を想定する。操作難度算出部４１は、オブジェクトの大きさｓ１、ｓ２、ｓ３（ｓ１＜ｓ２＜ｓ３）に対する操作難度ｍ１、ｍ２、ｍ３を算出する。画面表示部４３は、操作難度ｍ１、ｍ２、ｍ３に基づき、オブジェクトの大きさがｓ１、ｓ２、ｓ３の候補のうち操作難度（ｍ１、ｍ２、ｍ３）が一定の閾値Ｔｍ以下となるオブジェクトであって、オブジェクトの大きさが最も小さいものを採用する。仮にｍ１＞Ｔｍ、ｍ２＜Ｔｍ、ｍ３＜Ｔｍの場合、画面表示部４３は、候補ｓ３より大きさの小さいオブジェクトの候補ｓ２を採用する。更に、表示条件を考慮すると、オブジェクトの大きさの候補ｓ２が大きさの閾値Ｔｓよりも大きければよい。もし、候補ｓ２が大きさの閾値Ｔｓよりも小さい場合、画面表示部４３は、候補ｓ２よりも大きいオブジェクトの候補ｓ３が、大きさの閾値Ｔｓよりも大きければ候補ｓ３を採用する。画面表示部４３は、採用された候補の大きさでオブジェクトを表示する。
【００７３】
［ジェスチャ入力処理］
次に、本実施形態に係るジェスチャ入力装置１が行うジェスチャ入力処理の一例について、図５及び図６を参照しながら説明する。以下では、本実施形態に係るジェスチャ入力処理を、ジェスチャ入力に基づく遅延量算出処理とジェスチャ入力に応じた画面表示処理とに分けて説明する。図５は、一実施形態に係る遅延量算出処理の一例を示したフローチャートである。図６は、一実施形態に係る画面表示処理の一例を示したフローチャートである。図５の遅延量算出処理、図６の画面表示処理の順に各処理を説明することで、ユーザがジェスチャを行ってからジェスチャに応じた画面が表示されるまでを説明する。
【００７４】
（遅延量算出処理）
位置取得部３１は、ポインティングデバイスやユーザの手など身体の一部の位置から画面上の操作位置（カーソルの位置）を計算する。位置蓄積部３２は、位置取得部３１で取得したカーソルの位置を予め定められた所定の時間間隔で蓄積する。位置蓄積部３２は、カーソルの位置が所定の時間蓄積されたかを判定する（ステップＳ１０）。位置蓄積部３２は、カーソルの位置が所定の時間蓄積されるまでステップＳ１０の処理を繰り返す。
【００７５】
カーソルの位置が所定時間蓄積された場合、精度算出部３３は、カーソルの位置のぶれに基づき、カーソルの位置の精度を算出する（ステップＳ１２）。カーソルの位置のぶれは、例えば、センサの精度およびユーザの身体のぶれ（手振れ）に基づき生じる。
【００７６】
次に、平滑化強度算出部３４は、精度算出部３３で算出したカーソルの位置の精度に基づいて、カーソルの位置のぶれが十分に小さくなるように、カーソルの位置を平滑化する際の強度を算出する（ステップＳ１４）。次に、平滑遅延時間算出部３５は、平滑化強度算出部３４で算出した平滑化強度に基づく平滑化による遅延時間（ぶれ量に基づく遅延時間；以下、「平滑遅延時間」ともいう。）を算出する（ステップＳ１６）。
【００７７】
次に、機器遅延時間算出部３６は、センサや機器の性能に基づく遅延時間（機器に基づく遅延時間；以下、「機器遅延時間」ともいう）を算出する（ステップＳ１８）。総遅延時間算出部３７は、平滑遅延時間と機器遅延時間とを加算することで総遅延時間を算出する（ステップＳ２０）。
【００７８】
（画面表示処理）
次に、図６の画面表示処理について説明する。表示条件算出部４２は、位置取得部３１からユーザの位置（ユーザの手の位置等）をカメラ１０から取得できたかを判定し（ステップＳ３０）、ユーザの位置を取得するまでステップＳ３０の処理を繰り返す。
【００７９】
ユーザの位置を取得した場合、表示条件算出部４２は、画面の大きさとユーザと画面との位置関係に基づいて、画面上のオブジェクトが視認できる表示条件を算出する（ステップＳ３２）。
【００８０】
画面表示部４３は、表示条件を満たした画面の表示候補となるオブジェクトを生成する（ステップＳ３４）。次に、操作難度算出部４１は、候補となるオブジェクトの操作難度を算出する処理を行う（ステップＳ３６）。
【００８１】
ステップＳ３６にて呼び出される操作難度の算出処理について、図７を参照しながら説明する。図７は、一実施形態に係る操作難度の算出処理の詳細を示したフローチャートである。
【００８２】
まず、操作難度算出部４１は、カーソルの初期位置の分布に従って、カーソルの位置の一つを算出する（ステップＳ４０）。次に、操作難度算出部４１は、カーソルの初期位置からオブジェクトまでの距離Ａを算出する（ステップＳ４２）。次に、操作難度算出部４１は、例えば、式（９）及び式（１０）を用いて操作難度（ポインティング時間ＭＴ）を算出する（ステップＳ４４）。操作難度は、他の式（１３）等の方法により算出することもできる。次に、操作難度算出部４１は、すべてのカーソルの位置に対する操作難度が算出したかを判定する（ステップＳ４６）。すべてのカーソルの位置に対する操作難度が算出されていない場合、ステップＳ４０に戻り、ステップＳ４０からＳ４６の処理が行われる。
【００８３】
一方、すべてのカーソルの位置に対する操作難度が算出されている場合、操作難度算出部４１は、例えば、操作難度の平均値を操作難度の代表値として算出し（ステップＳ４８）、図６に戻ってステップＳ３８の処理を行う。
【００８４】
画面表示部４３は、操作難度が十分に小さいかを判定する（ステップＳ３８）。操作難度が所定の閾値より大きいと判定された場合、ステップＳ３４に戻り、操作難度が所定の閾値以下になるまでステップＳ３４〜ステップＳ３８の処理を繰り返す。
【００８５】
例えば、ステップＳ３８にて操作難度が所定の閾値より大きいと判定された場合、ステップＳ３４で生成される画面の表示候補のオブジェクトの大きさを前回の候補としたオブジェクトの大きさより大きくする。例えば、前回候補としたオブジェクトの大きさが５ｃｍの場合、操作難度算出部４１は、今回候補としたオブジェクトの大きさを１０ｃｍと大きくし、式（１０）のＷに代入し、式（９）から操作難度を算出してもよい。その場合においてもステップＳ３８にて操作難度が所定の閾値より大きいと判定された場合、操作難度算出部４１は、候補としたオブジェクトの大きさを１５ｃｍと大きくし、式（１０）のＷに代入し、式（９）から操作難度を算出してもよい。
【００８６】
ステップＳ３８にて操作難度が十分に小さいと判定された場合、画面表示部４３は、生成された画面を表示し（ステップＳ３９）、本処理を終了する。
【００８７】
以上、本実施形態にかかるジェスチャ入力処理について説明した。本実施形態にかかるジェスチャ入力装置１は、遅延時間と表示条件とに基づいて画面上のオブジェクトの大きさを調整して表示する。
【００８８】
図８は、一実施形態に係る画面表示の一例を示す。図８の横軸は遅延時間、縦軸はユーザと画面との距離を示す。操作難度は遅延時間に基づき算出される。図８に示される画面上のオブジェクトは、操作難度が一定の閾値以下となるオブジェクトであって、オブジェクトの大きさが最も小さいものを採用する。これにより、操作性と一覧性を両立させることができる。
【００８９】
一例としては、遅延時間が小さくかつ距離が近い場合には、小さいオブジェクトが表示される。例えば、遅延時間が中程度でかつ距離が中程度の場合には、中程度の大きさのオブジェクトが表示される。例えば、遅延時間が大きくかつ距離が遠い場合には、大きいオブジェクトが表示される。
【００９０】
ぶれ量が大きい場合、画面上のオブジェクトを小さく表示するとユーザのジェスチャ入力に対する操作エラーが生じ易くなる。これに対して、以上に説明した本実施形態に係るジェスチャ入力装置１によれば、ぶれ量を遅延時間として算出し、遅延時間に基づき画面上のオブジェクトの大きさを調整して表示する。例えば、ぶれ量が大きい場合には、遅延時間が大きいため、ジェスチャ入力に対する操作エラーを抑制するためにオブジェクトを大きく表示する。これにより、ユーザのジェスチャ入力における画面の操作性を向上させることができる。
【００９１】
特に、カーソルの位置の分布が一様でない場合、オブジェクトの位置によって操作難度の値が異なるため、同一画面上で許容されるオブジェクトの大きさが異なる場合が生じる。その場合には、各オブジェクトの位置に対して許容されるオブジェクトの大きさのうちの最も大きいオブジェクトの大きさを採用してもよい。これにより、ユーザの操作性を向上させることができる。
【００９２】
（ハードウェア構成例）
最後に、ジェスチャ入力装置１のハードウェア構成例について簡単に説明する。図９は、本実施形態にかかるジェスチャ入力装置１のハードウェア構成例を示す図である。ジェスチャ入力装置１は、入力装置１０１、表示装置１０２、外部Ｉ／Ｆ１０３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０４、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０５、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０６、通信Ｉ／Ｆ１０７及びＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０８を備え、それぞれがバスＢで相互に接続されている。
【００９３】
入力装置１０１は、カメラ１０やキーボードやマウスなどを含み、ジェスチャ入力装置１に各操作を入力するのに用いられる。表示装置１０２は、ディスプレイ２０を含み、ユーザのジェスチャ入力に応じて画面上のアイコン操作等を行い、その結果を表示する。
【００９４】
通信Ｉ／Ｆ１０７は、ジェスチャ入力装置１をネットワークに接続するインタフェースである。これにより、ジェスチャ入力装置１は、通信Ｉ／Ｆ１０７を介して他の機器と通信可能となる。
【００９５】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、装置全体を制御する基本ソフトウェアであるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、及びＯＳ上において各種機能を提供するアプリケーションソフトウェアなどがある。また、ＨＤＤ１０８は、上記精度算出処理、平滑化強度算出処理、平滑遅延時間算出処理、機器遅延時間算出処理、総遅延時間算出処理、操作難度算出処理、表示条件算出処理、画面表示処理を行うためにＣＰＵ１０６により実行されるプログラムを格納する。
【００９６】
外部Ｉ／Ｆ１０３は、外部装置とのインタフェースである。外部装置には、記録媒体１０３ａなどがある。ジェスチャ入力装置１は、外部Ｉ／Ｆ１０３を介して、記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体１０３ａには、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）、及びＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ならびに、ＳＤメモリカード（ＳＤ  Ｍｅｍｏｒｙ  ｃａｒｄ）やＵＳＢメモリ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ  ｍｅｍｏｒｙ）等がある。
【００９７】
ＲＯＭ１０５は、不揮発性の半導体メモリ（記憶装置）であり、起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、ＯＳ設定、及びネットワーク設定などのプログラムやデータが格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記記憶装置（例えば「ＨＤＤ」や「ＲＯＭ」など）から、プログラムやデータをＲＡＭ上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。
【００９８】
精度算出部３３、平滑化強度算出部３４、平滑遅延時間算出部３５、機器遅延時間算出部３６、総遅延時間算出部３７、操作難度算出部４１、表示条件算出部４２、画面表示部４３、画面表示部４３の各部は、ＨＤＤ１０８にインストールされたプログラムがＣＰＵ１０６に実行させる処理により実現される。
【００９９】
位置取得部３１は、入力装置１０１を用いて実現可能である。位置蓄積部３２は、例えば、ＲＡＭ１０４、ＨＤＤ１０８、又はジェスチャ入力装置１にネットワークを介して接続される記憶装置を用いて実現可能である。
【０１００】
以上、ジェスチャ入力装置、ジェスチャ入力方法及びプログラムを上記実施形態により説明したが、本発明は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
【０１０１】
例えば、本実施形態に係るジェスチャ入力装置１は、ぶれ量に基づく遅延時間と機器の処理又は通信に基づく遅延時間とから総遅延時間を算出した。しかしながら、これに限られず、本発明に係るジェスチャ入力装置は、例えば、ぶれ量に基づく遅延時間を総遅延時間としてもよいし、ジェスチャに応じた機器の処理又は通信に基づく遅延時間を総遅延時間としてもよい。ぶれ量に基づく遅延時間のみ、又は、機器の処理又は通信に基づく遅延時間のみによっても、遅延時間が大きい場合にはジェスチャ入力に対する操作エラーが生じ易いと判断できる。よって、上記遅延時間のいずれかを総遅延時間とした場合であっても総遅延時間が大きい場合にはオブジェクトを大きく表示することにより、ユーザのジェスチャ入力における画面の操作性を向上させることができる。
【０１０２】
また、本実施形態に係るジェスチャ入力装置１は、総遅延時間及びユーザと画面との位置関係に基づいて、オブジェクトを表示した。しかしながら、これに限られず、本発明に係るジェスチャ入力装置は、総遅延時間に基づいて、オブジェクトを表示してもよい。この場合、ユーザと画面との位置関係に拘らず、遅延時間に基づいて画面上のオブジェクトの大きさが調整される。
【０１０３】
この場合の一例としては、図８の最上段に示したように、遅延時間が小さい場合、小さいオブジェクトが表示される。遅延時間が中程度の場合、中程度の大きさのオブジェクトが表示される。遅延時間が大きい場合には、大きいオブジェクトが表示される。
【０１０４】
以上の説明に関し、更に以下の項を開示する。
（付記１）
ジェスチャによる入力を行うジェスチャ入力装置であって、
ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出する総遅延時間算出部と、
前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する画面表示部と、
を有するジェスチャ入力装置。
（付記２）
前記総遅延時間算出部は、
前記ぶれ量に基づく遅延時間と前記機器の処理又は通信に基づく遅延時間とから総遅延時間を算出する、
付記１に記載のジェスチャ入力装置。
（付記３）
前記画面表示部は、
前記総遅延時間及びユーザと画面との位置関係に基づいて、オブジェクトを表示する、
付記１又は２に記載のジェスチャ入力装置。
（付記４）
前記総遅延時間から画面操作の難易度を示す操作難度を算出する操作難度算出部を有し、
前記画面表示部は、
前記操作難度が予め定められた閾値以下の画面のオブジェクトを表示する、
付記１〜３のいずれか一項に記載のジェスチャ入力装置。
（付記５）
前記操作難度算出部は、
ジェスチャを行うユーザの身体部分の位置に基づいてカーソルの初期位置の分布を算出し、算出されたカーソルの初期位置の分布に応じて操作難度を算出する、
付記４に記載のジェスチャ入力装置。
（付記６）
前記ぶれ量に基づく遅延時間を、前記ジェスチャに応じて取得されたカーソルの位置を平滑化する平滑化強度に基づき算出する平滑遅延時間算出部を有する、
付記１〜５のいずれか一項に記載のジェスチャ入力装置。
（付記７）
ジェスチャによる入力を行うジェスチャ入力方法であって、
ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出し、
前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する、
処理をコンピュータが実行するジェスチャ入力方法。
（付記８）
前記ぶれ量に基づく遅延時間と前記機器の処理又は通信に基づく遅延時間とから総遅延時間を算出する、
付記７に記載のジェスチャ入力方法。
（付記９）
前記総遅延時間及びユーザと画面との位置関係に基づいて、オブジェクトを表示する、
付記７又は８に記載のジェスチャ入力方法。
（付記１０）
前記総遅延時間から画面操作の難易度を示す操作難度を算出し、
前記操作難度が予め定められた閾値以下の画面のオブジェクトを表示する、
付記７〜９のいずれか一項に記載のジェスチャ入力方法。
（付記１１）
ジェスチャを行うユーザの身体部分の位置に基づいてカーソルの初期位置の分布を算出し、算出されたカーソルの初期位置の分布に応じて操作難度を算出する、
付記１０に記載のジェスチャ入力方法。
（付記１２）
前記ぶれ量に基づく遅延時間を、前記ジェスチャに応じて取得されたカーソルの位置を平滑化する平滑化強度に基づき算出する、
付記７〜１１のいずれか一項に記載の記載のジェスチャ入力方法。
（付記１３）
ジェスチャによる入力により画面を操作するプログラムであって、
ジェスチャを行うユーザの身体部分のぶれ量に基づく遅延時間と、前記ジェスチャに応じた機器の処理又は通信に基づく遅延時間と、の少なくともいずれかからジェスチャによる入力の総遅延時間を算出し、
前記ジェスチャによる入力の総遅延時間に基づいて、オブジェクトを表示する、
処理をコンピュータに実行させるためのプログラム。
（付記１４）
前記ぶれ量に基づく遅延時間と前記機器の処理又は通信に基づく遅延時間とから総遅延時間を算出する、
付記１３に記載のプログラム。
（付記１５）
前記総遅延時間及びユーザと画面との位置関係に基づいて、オブジェクトを表示する、
付記１３又は１４に記載のプログラム。
（付記１６）
前記総遅延時間から画面操作の難易度を示す操作難度を算出し、
前記操作難度が予め定められた閾値以下の画面のオブジェクトを表示する、
付記１３〜１５のいずれか一項に記載のプログラム。
（付記１７）
ジェスチャを行うユーザの身体部分の位置に基づいてカーソルの初期位置の分布を算出し、算出されたカーソルの初期位置の分布に応じて操作難度を算出する、
付記１６に記載のプログラム。
（付記１８）
前記ぶれ量に基づく遅延時間を、前記ジェスチャに応じて取得されたカーソルの位置を平滑化する平滑化強度に基づき算出する、
付記１３〜１７のいずれか一項に記載の記載のプログラム。
【符号の説明】
【０１０５】
１：ジェスチャ入力装置
１０：カメラ
２０：ディスプレイ
３１：位置取得部
３２：位置蓄積部
３３：精度算出部
３４：平滑化強化算出部
３５：平滑化総遅延時間算出部
３６：機器遅延時間算出部
３７：総遅延時間算出部
４１：操作難度算出部
４２：表示条件算出部
４３：画面表示部
【図１】
2015132992.tif 000016
【図２】
2015132992.tif 000017
【図３】
2015132992.tif 000018
【図５】
2015132992.tif 000019
【図６】
2015132992.tif 000020
【図７】
2015132992.tif 000021
【図８】
2015132992.tif 000022
【図９】
2015132992.tif 000023
【図４】
2015132992.tif 000024