(57)【要約】【課題】ユーザの意図に沿った追加操作が実行されるように動作可能な情報処理装置、情報処理方法およびプログラムを提供する。【解決手段】ユーザが表示面上を指し示す操作における操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、を備え、前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置。【選択図】図１
2018055708.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、
前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、
を備え、
前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置。
【請求項２】
前記制御部は、前記滞留時間が前記操作判定時間を経過する前に、前記滞留時間の増加に応じて前記操作位置に係る表示オブジェクトの表示を変更する、請求項１に記載の情報処理装置。
【請求項３】
前記形態情報は、前記ユーザの腕の伸び具合を示す、請求項１または２に記載の情報処理装置。
【請求項４】
前記判定部は、前記形態情報により示される前記ユーザの動作形態での前記操作の精度に基づいて前記操作判定時間を設定する、請求項１〜３のいずれか一項に記載の情報処理装置。
【請求項５】
前記判定部は、前記形態情報により示される前記ユーザの動作形態での前記操作の精度が高いほど、前記操作判定時間を短い時間に設定する、請求項４に記載の情報処理装置。
【請求項６】
前記制御部は、前記形態情報に基づき前記操作の精度を前記ユーザに知らせるための表示制御を行う、請求項１〜５のいずれか一項に記載の情報処理装置。
【請求項７】
前記制御部は、さらに前記操作位置とユーザの視線との関係に基づいて前記操作判定時間を設定する、請求項１〜６のいずれか一項に記載の情報処理装置。
【請求項８】
前記制御部は、さらに前記ユーザによる操作履歴情報に基づいて前記操作判定時間を設定する、請求項１〜７のいずれか一項に記載の情報処理装置。
【請求項９】
ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かをプロセッサにより判定することと、
前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行うことと、
前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定することと、
を含む、情報処理方法。
【請求項１０】
コンピュータを、
ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、
前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、
を備え、
前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置として機能させるための、プログラム。  
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
近年、人の姿勢または動き（以下、ジェスチャとも称する。）を検出する技術の発展に伴い、ユーザのジェスチャに基づいて機器等を操作する技術が開発されている。特に、ユーザの操作する操作体によって位置を指定する操作（以下、ポインティング操作とも称する。）を認識し、認識されるポインティング操作に基づいて機器の動作を制御する技術が一般に知られている。
【０００３】
例えば、特許文献１では、学習された人体の三次元モデルデータに基づいてユーザの手のジェスチャを認識する情報処理装置に係る発明が開示されている。特許文献１の発明によれば、認識されるユーザの手のジェスチャに基づいてポインティング操作を検出し、検出されるポインティング操作により指定される位置を特定することが可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２０５９８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、特許文献１で開示される発明では、ポインティング操作によって指定される位置（以下、ポインティング位置とも称する。）において追加操作、例えばタッチパネルの操作におけるタッチ操作後のリリース操作等に相当する操作を行うことが困難である。
【０００６】
そこで、本開示では、ユーザの意図に沿った追加操作が実行されるように動作可能な、新規かつ改良された情報処理装置、情報処理方法およびプログラムを提案する。
【課題を解決するための手段】
【０００７】
本開示によれば、ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、を備え、前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置が提供される。
【０００８】
また、本開示によれば、ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かをプロセッサにより判定することと、前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行うことと、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定することと、を含む、情報処理方法が提供される。
【０００９】
また、本開示によれば、コンピュータを、ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、を備え、前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置として機能させるための、プログラムが提供される。
【発明の効果】
【００１０】
以上説明したように本開示によれば、ユーザの意図に沿った追加操作が実行されるように動作可能な情報処理装置、情報処理方法およびプログラムが提供される。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１１】
【図１】本開示の一実施形態に係る情報処理装置の概要を説明するための図である。
【図２】本開示の第１の実施形態に係る情報処理装置の概略的な機能構成を示すブロック図である。
【図３】本実施形態に係る情報処理装置のポインティング位置の検出処理の流れについての例を示す図である。
【図４】本実施形態に係る情報処理装置の処理による、表示領域における表示変化の例を示す図である。
【図５】本実施形態に係る情報処理装置の処理における、操作オブジェクトの初期表示の例を示す図である。
【図６】本実施形態に係る情報処理装置の処理による、操作オブジェクトの表示変化の例を示す図である。
【図７】本実施形態における情報処理装置の処理を概念的に示すフローチャートである。
【図８Ａ】従来の情報処理装置の表示するメニュー操作を説明するための図である。
【図８Ｂ】本実施形態の第２の変形例に係る情報処理装置の処理における、処理メニューの表示の例を示す図である。
【図９】本実施形態の第２の変形例に係る情報処理装置のスクロール処理による表示変化の例を示す図である。
【図１０】従来の情報処理装置における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出処理を説明するための図である。
【図１１】本実施形態の第３の変形例に係る情報処理装置における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出処理の例を説明するための図である。
【図１２】本実施形態の第３の変形例に係る情報処理装置における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出処理の他の例を説明するための図である。
【図１３】本開示の第２の実施形態に係る情報処理装置の処理による操作判定時間の変化を説明するための図である。
【図１４】本実施形態における情報処理装置の処理を概念的に示すフローチャートである。
【図１５】本実施形態の第１の変形例に係る情報処理装置の処理における操作判定領域の設定の例を示す図である。
【図１６】本実施形態の第２の変形例に係る情報処理装置の処理における操作判定領域の設定の他の例を示す図である。
【図１７Ａ】本実施形態の第３の変形例に係る情報処理装置の処理におけるポインティング操作の形態の例を示す図である。
【図１７Ｂ】本実施形態の第３の変形例に係る情報処理装置の処理におけるポインティング操作の形態の他の例を示す図である。
【図１７Ｃ】本実施形態の第３の変形例に係る情報処理装置の処理におけるポインティング操作の形態の別の他の例を示す図である。
【図１８】本実施形態の第５の変形例に係る情報処理装置が表示させる操作判定時間の設定用ＧＵＩの例を示す図である。
【図１９】本開示の第３の実施形態に係る情報処理装置の処理による操作判定領域の変化を説明するための図である。
【図２０】本実施形態における情報処理装置の処理を概念的に示すフローチャートである。
【図２１】本実施形態の第１の変形例に係る情報処理装置の処理による、操作判定領域の変更に伴う処理オブジェクトの表示変化の例を示す図である。
【図２２】本実施形態の第２の変形例に係る情報処理装置の操作判定領域が重複する場合の操作判定処理を説明するための図である。
【図２３】本開示に係る情報処理装置のハードウェア構成を示した説明図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．本開示の一実施形態に係る情報処理装置の概要
２．第１の実施形態（滞留の経過時間に応じて表示制御を行う例）
２−２．情報処理装置の構成
２−３．情報処理装置の処理
２−４．変形例
３．第２の実施形態（操作判定時間を変更する例）
３−２．情報処理装置の構成
３−３．情報処理装置の処理
３−４．変形例
４．第３の実施形態（操作判定領域を変更する例）
４−２．情報処理装置の構成
４−３．情報処理装置の処理
４−４．変形例
５．本開示の一実施形態に係る情報処理装置のハードウェア構成
６．むすび
【００１４】
＜１．本開示の一実施形態に係る情報処理装置の概要＞
まず、図１を参照して、本開示の一実施形態に係る情報処理装置の概要について説明する。図１は、本開示の一実施形態に係る情報処理装置の概要を説明するための図である。
【００１５】
本開示の一実施形態に係る情報処理装置１００は、操作検出機能および表示制御機能を有する。操作検出機能は、ユーザのジェスチャを認識し、当該ジェスチャに対応する操作を検出する機能である。特に、操作検出機能によって、表示オブジェクトの表示可能な領域（以下、表示領域または表示面とも称する。）におけるポインティング操作が検出される。また、表示制御機能は、操作に応じて、表示装置等に表示させる内容を制御する機能である。このため、情報処理装置１００は、ユーザのジェスチャから検出されるポインティング操作に応じて、表示内容を変更させることが可能である。なお、情報処理装置１００は、表示装置等を内蔵し得る。
【００１６】
例えば、情報処理装置１００は、表示内容を投影する投影機能を有し、図１に示したように、表示領域１に表示内容を投影する。また、撮像装置２００は、表示領域１に向かって操作等を行うユーザを撮像可能に配置され、撮像により得られる画像を情報処理装置１００に提供する。情報処理装置１００は、撮像装置２００から提供される画像に基づいてユーザのジェスチャ、例えばユーザの腕および手の姿勢から認識されるジェスチャに対応する操作、例えばポインティング操作を検出する。そして、情報処理装置１００は、検出されるポインティング操作に係るポインティング位置１０に当該ポインティング位置１０を示すカーソルを表示させ得る。
【００１７】
ここで、一般的に、操作を行うユーザが撮像装置２００から遠く離れている場合、細かいジェスチャ、例えば手の押し込みまたは指折り等を特定することが難しい。そのため、ポインティング操作のみに基づいて操作の判定が行われることになるが、ポインティング操作では、ポインティング位置において追加操作、例えばタッチパネルの操作におけるタッチ操作後のリリース操作等に相当する操作を判定することが困難である。
【００１８】
そこで、本開示の一実施形態に係る情報処理装置１００は、表示面から離れた位置において操作体により当該表示面が指し示される操作によって特定される操作位置、すなわちポインティング位置の滞留に基づいて操作の実行有無の判定を行い、操作の実行を行うと判定される場合、当該操作に対応するコマンドを発行する。
【００１９】
例えば、情報処理装置１００は、図１に示したようなポインティング位置１０の滞留を判定する。そして、ポインティング位置１０の滞留開始から所定の時間が経過したと判定される場合、情報処理装置１００は、ポインティング位置１０の滞留位置に対応するコマンド、例えば表示オブジェクトの選択コマンドを発行する。
【００２０】
このように、本開示の一実施形態に係る情報処理装置１００は、ポインティング位置の滞留に基づいて操作の実行有無の判定を行い、当該操作に対応するコマンドを発行する。このため、ポインティング位置の滞留によって追加操作が実現されることにより、ユーザの意図に沿った追加操作が情報処理装置１００によって実行される。なお、図１においては情報処理装置１００の一例として投影装置を示しているが、情報処理装置１００は、ディスプレイまたはテレビジョン等の表示装置であってもよく、また表示装置と接続されるスマートフォン、タブレット端末、パーソナルコンピュータまたはサーバ等の装置であってもよい。また、説明の便宜上、第１〜第３の実施形態に係る情報処理装置１００の各々を、情報処理装置１００−１、情報処理装置１００−２のように、末尾に実施形態に対応する番号を付することにより区別する。
【００２１】
＜２．第１の実施形態（滞留の経過時間に応じて表示制御を行う例）＞
以上、本開示の一実施形態に係る情報処理装置１００の概要について説明した。次に、本開示の第１の実施形態に係る情報処理装置１００−１について説明する。情報処理装置１００−１は、ポインティング位置の滞留の経過時間に応じて、ポインティング位置に係る表示オブジェクトの表示を変更させる。
【００２２】
＜２−１．情報処理装置の構成＞
まず、図２を参照して、本開示の第１の実施形態に係る情報処理装置１００−１の構成について説明する。図２は、本開示の第１の実施形態に係る情報処理装置１００−１の概略的な機能構成を示すブロック図である。
【００２３】
情報処理装置１００−１は、図２に示したように、検出部１０２、判定部１０４、制御部１０６および投影部１０８を備える。なお、情報処理装置１００−１は撮像装置２００と通信を介して接続される。
【００２４】
検出部１０２は、ポインティング位置を検出する。具体的には、検出部１０２は、撮像装置２００から提供される画像等に基づいて、操作位置として、表示面から離れた位置において操作体により当該表示面が指し示される操作によって特定される位置、すなわちポインティング位置を検出する。
【００２５】
より具体的には、検出部１０２は、操作体の空間的な位置もしくは姿勢またはこれらの両方を示す情報（以下、位置姿勢情報とも称する。）に基づいてポインティング位置を検出する。例えば、操作体には、ユーザの手または腕のほか、指し棒等の物体が含まれ、操作体の位置姿勢情報は、提供される画像等から取得される。そのため、ポインティング位置は、過去に検出されたポインティング位置によらず、検出のタイミング毎の操作体の位置姿勢情報に基づいてそれぞれ直接的に検出される。さらに、図３を参照して検出部１０２の処理について詳細に説明する。図３は、本実施形態に係る情報処理装置１００−１のポインティング位置の検出処理の流れについての例を示す図である。
【００２６】
まず、検出部１０２は、撮像装置２００に撮像要求を行い、撮像要求への応答として撮像装置２００から提供される画像に基づいて深度情報を取得する。例えば、検出部１０２は、通信を介して、撮像装置２００に撮像要求を行い、当該撮像要求を受けて撮像装置２００が少なくとも２方向からユーザを撮像して得られた画像の各々を取得する。そして、検出部１０２は、取得される各画像について補正および縮小等の処理を行った後、各画像についてステレオマッチング等の方法を用いて、図３の上段の左図に示したような深度情報、例えばデプスマップ（距離画像とも称される。）を取得する。
【００２７】
次に、検出部１０２は、取得される深度情報から３次元空間の点群情報を取得する。例えば、検出部１０２は、取得されるデプスマップ等の深度情報をポイントクラウドのような３次元空間の点群情報に変換する。なお、図３の上段の右図は、取得される３次元空間の点群情報を示した図である。
【００２８】
次に、検出部１０２は、３次元空間の点群情報から点群抽出のための基準点を特定する。例えば、検出部１０２は、取得される３次元空間の点群情報の示す点群のうちの、図３の下段の左図に示したような、表示領域に向かって突端となる点Ｐを特定する。
【００２９】
次に、検出部１０２は、特定される基準点を中心に点群を抽出する。例えば、検出部１０２は、セグメンテーション処理等を用いて、点群情報の中から、図３の下段の左図に示したような、点Ｐを中心とした所定の距離Ｒの範囲内にある点群を抽出する。抽出された点群は、例えば図３の下段の中図に示した白色部分の点群Ｇ、すなわちユーザの腕の一部であり得る。
【００３０】
次に、検出部１０２は、抽出される点群に基づいてポインティング位置を特定する。例えば、検出部１０２は、抽出される点群Ｇについて主成分分析を行い、第１主成分のベクトルを算出する。そして、検出部１０２は、図３の下段の右図に示したような第１主成分のベクトルの方向Ｄと表示領域との交点をポインティング位置として特定する。
【００３１】
上述のようなポインティング位置の検出は、一般的な画像解析技術を用いた手法等によって行われ得る。また、ポインティング位置の検出は、これらの手法等に限定されず、例えばモーションセンサ等から得られる情報を用いた手法またはその他一般的なポインティング位置の検出手法が用いられ得る。
【００３２】
なお、ポインティング位置は、操作体の操作によって指し示される位置によって特定される位置であってもよい。例えば、ポインティング位置は、操作体の操作によって指し示される位置が複数推定される場合、その推定される各位置を含む円の中心等であり得る。また、ポインティング位置の検出は、所定の時間間隔で行われ得る。
【００３３】
ここで図２に戻ると、判定部１０４は、操作に係る判定処理を行う。具体的には、判定部１０４は、ポインティング位置の滞留開始を判定する。ここで、ポインティング位置の滞留とは、所定の時間ポインティング位置が所定の距離以上変化しないことを含む。例えば、判定部１０４は、所定の時間（以下、滞留開始判定時間とも称する。）、検出部１０２によって検出されるポインティング位置が所定の距離の範囲（以下、滞留開始判定範囲とも称する。）内で留まっているかを判定する。そして、滞留開始判定時間ポインティング位置が滞留開始判定範囲内に留まっていると判定される場合、判定部１０４は、ポインティング位置の滞留が開始されたと判定する。なお、滞留開始判定時間は、例えば０．５秒等であり得るが、これに限定されず、適した値が設定され得る。
【００３４】
また、判定部１０４は、操作判定領域におけるポインティング位置の滞留に基づいて操作の実行有無の判定（以下、操作実行判定とも称する。）を行う。
【００３５】
例えば、判定部１０４は、検出部１０２によって検出されるポインティング位置が操作判定領域と重なる範囲内にあるかを判定する。操作判定領域は、処理オブジェクトに対応付けられ、例えばアプリケーションの起動に係るＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）等の表示範囲と一致し得る。ポインティング位置が操作判定領域と重なる範囲内にあると判定される場合、判定部１０４は、上記の滞留開始判定処理を行う。なお、操作オブジェクトが未表示である場合、判定部１０４は、ポインティング位置が操作判定領域と重なる範囲内になくても滞留開始判定処理を行う。詳細については後述する。
【００３６】
そして、判定部１０４は、ポインティング位置の滞留が開始されたと判定されると、当該ポインティング位置が所定の時間（以下、操作判定時間とも称する。）、操作判定領域と重なる範囲内で留まっているかを判定する。そして、操作判定時間ポインティング位置が操作判定領域と重なる範囲内にあると判定される場合、判定部１０４は、当該操作判定領域に係る操作、例えば表示オブジェクトの選択等を実行すると判定する。なお、操作オブジェクトが未表示である場合、判定部１０４は、ポインティング位置の滞留開始が判定されても当該操作の実行有無の判定処理を行わない。詳細については後述する。また、操作判定時間は、滞留開始判定時間と同様に、例えば０．５秒等であり得るが、これに限定されず、適した値が設定され得る。
【００３７】
制御部１０６は、情報処理装置１００の動作を制御する。具体的には、制御部１０６は、判定部１０４によって操作の実行を行うと判定される場合、当該操作に対応するコマンドを発行する。例えば、制御部１０６は、ポインティング位置が所定の位置、例えば操作判定領域において滞留し、判定部１０４によって操作の実行を行うと判定される場合、当該操作に対応付けられるコマンド、例えば表示オブジェクトの選択実行コマンドを発行する。なお、制御部１０６によって発行されるコマンドは、例えば情報処理装置１００が別途備える処理実行部に提供され、当該処理実行部が提供されるコマンドに基づいて処理を実行する。
【００３８】
また、制御部１０６は、表示領域の表示を制御する。具体的には、制御部１０６は、判定部１０４による操作実行判定前におけるポインティング位置の滞留の経過時間に応じて、ポインティング位置に係る表示オブジェクトの表示を変更させる。さらに、図４を参照して、制御部１０６の処理について詳細に説明する。図４は、本実施形態に係る情報処理装置１００−１の処理による、表示領域における表示変化の例を示す図である。
【００３９】
まず、制御部１０６は、投影部１０８に表示内容を投影させる。例えば、制御部１０６は、投影部１０８に、図４の上段の左図に示したような複数の操作判定領域４０を含む表示を表示領域１に向けて投影させる。なお、操作判定領域４０は、例えばアプリケーションの起動アイコン等の表示範囲と一致し得る。
【００４０】
次に、制御部１０６は、ポインティング位置の滞留開始が判定されると、当該ポインティング位置に操作オブジェクトを新規に表示させる。例えば、図４の上段の中図に示したように、ユーザが表示領域に向けてポインティング操作を行うと、判定部１０４はポインティング位置の滞留開始の判定を行う。ポインティング位置の滞留開始が判定されると、制御部１０６は、当該ポインティング位置にカーソル３０を表示させる。さらに、制御部１０６は、操作オブジェクトが新規に表示された旨をユーザに示す表示を行わせる。操作オブジェクトの初期表示について、図５を参照して詳細に説明する。図５は、本実施形態に係る情報処理装置１００−１の処理における、操作オブジェクトの初期表示の例を示す図である。
【００４１】
（操作オブジェクトの初期表示）
まず、制御部１０６は、ポインティング位置の滞留開始が判定されると、当該ポインティング位置に操作オブジェクトを表示させると共に、操作オブジェクトの表示位置に基づいた表示を行わせる。例えば、制御部１０６は、判定部１０４によってポインティング位置の滞留開始が判定されると、カーソル３０を表示領域１に表示させると共に、カーソル３０を中心とする初期発光円１２を表示させる。
【００４２】
次に、制御部１０６は、操作オブジェクトの表示位置に基づいた表示を、操作オブジェクトの表示位置に向かって変化させる。例えば、制御部１０６は、初期発光円１２の表示からの経過時間に応じて、初期発光円１２の半径を減少させ、初期発光円１２をカーソル３０に近づける。
【００４３】
そして、制御部１０６は、操作オブジェクトの表示位置に基づいた表示を消去させる。例えば、制御部１０６は、初期発光円１２がカーソル３０と重なる位置まで近づけられると、初期発光円１２を表示領域１から消去させる。
【００４４】
ここで図４に戻ると、次に、制御部１０６は、ポインティング位置が移動されると、操作オブジェクトをポインティング位置の移動に合わせて移動させる。例えば、図４の上段の右図に示したように、ユーザが指す位置を移動させると、検出部１０２によって検出されるポインティング位置が変化され、制御部１０６は、当該ポインティング位置の変化に応じてカーソル３０の位置を変更させる。
【００４５】
次に、制御部１０６は、操作判定領域においてポインティング位置の滞留開始が判定されると、操作の実行有無が判定されるまでの間、ポインティング位置に係る表示オブジェクトの表示を滞留開始判定からの経過時間に応じて変更させる。例えば、判定部１０４によって操作判定領域におけるポインティング位置の滞留開始が判定されると、制御部１０６は、ポインティング位置を示す操作オブジェクトの表示を、操作の実行有無の判定までの残り時間を示すように変更させる。さらに、図６を参照して操作オブジェクトの表示変化について詳細に説明する。図６は、本実施形態に係る情報処理装置１００−１の処理による、操作オブジェクトの表示変化の例を示す図である。
【００４６】
（操作オブジェクトの表示変化）
まず、制御部１０６は、ポインティング位置に基づいて操作オブジェクトを表示させる。例えば、制御部１０６は、操作オブジェクトとして、図６の左図に示したような、発光粒子１４および発光円１６で構成されるカーソル３０を表示させる。
【００４７】
発光粒子１４は、検出部１０２によってポインティング位置が検出される際のポインティング位置の候補として検出される複数の位置に表示され得る。なお、ポインティング位置は、当該複数の候補位置について所定のフィルタを用いたフィルタリングにより得られる位置であり得る。
【００４８】
発光円１６は、発光粒子１４を包含し、ポインティング位置を中心とする円であり得る。なお、発光円１６は、発光粒子１４の全てを包含しなくてもよい。また、発光円１６は、発光粒子１４が表示される所定の場合には、表示されなくてもよい。例えば、制御部１０６は、ポインティング位置が閾値以上の速さで移動される場合、発光粒子１４をポインティング位置の移動に追従するように移動させ、発光円１６の表示を停止する。そして、制御部１０６は、ポインティング位置の移動の速さが閾値未満になると、再び発光円１６を表示させる。この場合、ポインティング位置の取得の際にフィルタリングが行われること等によって、ポインティング位置が移動される際に発光円１６の表示位置と発光粒子１４の表示位置とが離隔されることを抑制し、ユーザがポインティング位置を誤認することを防止することが可能となる。
【００４９】
なお、図６の各図に示したように、発光円１６の内部、例えば中心から所定の距離の範囲内が発光粒子１４よりも弱く発光されてもよい。この場合、発光粒子１４が一塊である印象をユーザに与え、仮に発光円１６が表示されないときであっても、ユーザにポインティング位置を認識させやすくすることが可能となる。
【００５０】
そして、制御部１０６は、ポインティング位置の滞留開始が判定されると、操作オブジェクトの表示の変更を開始する。例えば、制御部１０６は、判定部１０４によって滞留開始が判定されると、図６の左中図に示したように、カーソル３０の発光円１６の外側に発光外円１８を表示させる。
【００５１】
次に、制御部１０６は、滞留の経過時間に応じて操作オブジェクトの表示を、操作の実行有無の判定までの残り時間を示すように変更させる。例えば、制御部１０６は、図６の右中図および右図に示したように、滞留開始からの経過時間に応じて発光外円１８の半径を減少させ、発光外円１８を発光円１６に近づけ得る。また、制御部１０６は、操作判定時間が経過するタイミングで発光円１６と発光外円１８が一致する速さで発光外円１８が発光円１６に近づくように表示を変更させる。なお、発光外円１８は、操作判定時間が経過した際に消される。
【００５２】
さらに、制御部１０６は、図６の左中図〜右図に示したように、発光外円１８の半径を減少させると共に、発光外円１８の明るさを強くしてもよい。この場合、操作の実行が判定されるまでの残り時間の減少が強調されることにより、ユーザに操作を実行させるかの判断を促すことが可能となる。
【００５３】
ここで図４に戻ると、次に、制御部１０６は、操作の実行が判定される場合、操作判定領域に係る操作に対応するコマンドを発行する。例えば、制御部１０６は、判定部１０４によって操作の実行が判定されると、当該操作判定領域に表示されるアプリケーションの起動アイコンの選択実行コマンドを発行する。そして、当該コマンドに基づいて、例えば図４の下段の中図に示したように、当該操作判定領域に表示されるアプリケーションの起動アイコンの選択が実行される。
【００５４】
なお、制御部１０６は、ポインティング位置が検出されなくなると、操作オブジェクトの表示を消去させる。例えば、制御部１０６は、検出部１０２によってポインティング位置が検出されなくなってから所定の時間経過すると、カーソル３０の表示を表示領域１から消去させる。
【００５５】
ここで図２に戻ると、投影部１０８は、制御部１０６の指示に基づいて表示内容を投影する。具体的には、投影部１０８は、制御部１０６によって生成される画像または映像等を投影方向に向けて投影する。例えば、投影部１０８は、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）または液晶を用いたプロジェクタ等であり得る。なお、投影部１０８は、液晶または有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）を用いたディスプレイ等の表示部であってもよい。
【００５６】
また、撮像装置２００は、情報処理装置１００−１の要求に応じて撮像を行う。具体的には、撮像装置２００は、検出部１０２から撮像要求を受けると、撮像要求に応じた撮像を行い、撮像により得られる画像を情報処理装置１００−１に提供する。例えば、撮像装置２００は、２以上の撮像部を有し、各撮像部において撮像を行う。なお、撮像装置２００は複数設置されてもよく、各撮像装置２００は情報処理装置１００−１に接続され得る。また、撮像装置２００の設置場所は、図１に示したような表示領域１の下方に限定されず、撮像装置２００は、表示領域１に向かって操作を行うユーザを被写体として撮像可能な位置のいずれかに設置され得る。
【００５７】
＜２−２．情報処理装置の処理＞
次に、図７を参照して、本実施形態における情報処理装置１００−１の処理について説明する。図７は、本実施形態における情報処理装置１００−１の処理を概念的に示すフローチャートである。
【００５８】
まず、情報処理装置１００−１は、ポインティング位置の滞留が開始されたかを判定する（ステップＳ３０２）。具体的には、検出部１０２によってポインティング位置が検出されると、判定部１０４は、当該ポインティング位置が検出されてから滞留開始判定時間の経過までの間、ポインティング位置が滞留開始判定範囲内に留まっているかを判定する。なお、操作オブジェクトが未表示であるため、判定部１０４は、ポインティング位置が操作判定領域になくとも滞留開始判定を行う。
【００５９】
ポインティング位置の滞留が開始されたと判定される場合、情報処理装置１００−１は、操作オブジェクトの初期表示を行う（ステップＳ３０４）。具体的には、判定部１０４によってポインティング位置の滞留開始が判定されると、制御部１０６は、ポインティング位置に操作オブジェクトを表示させると共に、操作オブジェクトの表示位置に基づく初期表示処理を行う。
【００６０】
次に、情報処理装置１００−１は、所定の時間ポインティング位置が未検出であるかを判定する（ステップＳ３０６）。具体的には、制御部１０６は、検出部１０２によってポインティング位置が検出されなくなってから所定の時間経過したかを判定する。
【００６１】
ポインティング位置が検出される場合、情報処理装置１００−１は、操作判定領域においてポインティング位置の滞留が開始されたかを判定する（ステップＳ３０８）。具体的には、ポインティング位置が操作判定領域にある場合、ステップＳ３０２の滞留開始判定処理と実質的に同一の処理が行われる。
【００６２】
ポインティング位置の滞留が開始されたと判定される場合、情報処理装置１００−１は、操作オブジェクトの表示を変更させる（ステップＳ３１０）。具体的には、制御部１０６は、所定の時間経過毎に、操作オブジェクトの表示を、操作判定時間の経過までの残り時間を示すように変更させる。
【００６３】
次に、情報処理装置１００−１は、ポインティング位置の滞留が中止されたかを判定する（ステップＳ３１２）。具体的には、判定部１０４は、ポインティング位置が操作判定領域外へ移動されたかを判定する。
【００６４】
ポインティング位置の滞留が中止されていないと判定される場合、情報処理装置１００−１は、操作判定時間が経過したかを判定する（ステップＳ３１４）。具体的には、ポインティング位置が操作判定領域外に移動されていないと判定される場合、判定部１０４は、滞留開始が判定されてから操作判定時間が経過したかを判定する。
【００６５】
操作判定時間が経過したと判定される場合、情報処理装置１００−１は、操作判定領域に係る操作を実行する（ステップＳ３１６）。制御部１０６は、判定部１０４によって操作判定時間が経過したと判定される場合、操作判定領域に係る操作に対応するコマンドを発行する。そして、発行されるコマンドに基づいた処理、例えば操作判定領域に表示される表示オブジェクトの選択処理が実行される。
【００６６】
このように、本開示の第１の実施形態によれば、情報処理装置１００−１は、表示面から離れた位置において操作体により当該表示面が指し示される操作によって特定されるポインティング位置の滞留に基づいて操作の実行有無の判定を行い、操作の実行を行うと判定される場合、当該操作に対応するコマンドを発行する。このため、表示面から離れた位置における操作体の操作に係るポインティング位置の滞留によって追加操作が実現されることにより、ユーザの意図に沿った追加操作を情報処理装置１００によって実行され、ポインティング操作におけるユーザの利便性を向上させることが可能となる。
【００６７】
また、制御部１０６は、当該判定前における滞留の経過時間に応じて、ポインティング位置に係る表示オブジェクトの表示を変更させる。このため、表示オブジェクトの表示が滞留開始後に変化されていくことにより、ユーザに滞留状態であることを把握させ、ユーザの意図する結果となるように、滞留状態を維持またはキャンセル等の操作をユーザに促すことが可能となる。
【００６８】
また、上記の表示オブジェクトは、ポインティング位置を示す操作オブジェクトを含み、制御部１０６は、操作オブジェクトの表示を滞留の経過時間に応じて変更させる。このため、ユーザのポインティング操作に密接に関係する操作オブジェクトの表示が変化されることより、ユーザにポインティング位置が滞留状態であることを把握させ、意図に沿わない操作実行判定が行われることを抑制することが可能となる。
【００６９】
また、制御部１０６は、操作オブジェクトの表示を、上記の判定までの残り時間を示すように変更させる。このため、ポインティング位置の滞留解除操作についての猶予時間がユーザに示されることにより、ユーザに当該操作を促し、意図に沿わない操作実行判定が行われる可能性をさらに低下させることが可能となる。
【００７０】
＜２−３．変形例＞
以上、本開示の第１の実施形態について説明した。なお、本実施形態は、上述の例に限定されない。以下に、本実施形態の第１〜第３の変形例について説明する。
【００７１】
（第１の変形例）
本実施形態の第１の変形例として、情報処理装置１００−１は、ポインティング位置の滞留中において、滞留の経過時間に応じて、実行する処理を示す処理オブジェクトの表示を変更してもよい。具体的には、制御部１０６は、ポインティング位置に基づいて特定される処理オブジェクトの表示を滞留の経過時間に応じて変更させる。
【００７２】
例えば、制御部１０６は、判定部１０４によってポインティング位置の滞留が開始されたと判定されると、ポインティング位置の滞留開始からの経過時間に応じて処理オブジェクト、例えばアプリケーションの起動アイコン等の表示を変更させる。例えば、処理オブジェクトの表示変更は、処理オブジェクトのサイズ、色彩、形状または模様の変更であり得る。
【００７３】
このように、本実施形態の第１の変形例によれば、制御部１０６は、ポインティング位置に基づいて特定される処理オブジェクトの表示を滞留の経過時間に応じて変更させる。このため、ポインティング位置の滞留により実行有無が判定される操作の対象となり得る処理オブジェクトの表示が変化されることにより、ポインティング位置の滞留を中止させるか否かについてユーザが判断を誤る可能性を低下させることが可能となる。
【００７４】
（第２の変形例）
本実施形態の第２の変形例として、情報処理装置１００−１は、ポインティング位置の滞留に基づく操作実行判定を用いて、様々な表示制御を行ってもよい。具体的には、情報処理装置１００−１は、当該判定処理を用いて、処理メニューの表示またはスクロールの操作等の処理を行う。
【００７５】
（処理メニューの表示）
情報処理装置１００−１は、ポインティング位置の滞留に基づいて操作の実行が判定される場合、処理の優先度に基づいて構成される処理メニューを表示させてもよい。具体的には、制御部１０６は、処理オブジェクトで構成されるメニューを表示させ、優先度が他の処理よりも高い処理に係る処理オブジェクトを、他の処理オブジェクトよりも、優先して配置する。なお、本変形例では、操作判定領域と処理オブジェクトの表示範囲とが一致する場合について説明する。まず、図８Ａを参照して、従来の情報処理装置の表示するメニューの課題について説明する。図８Ａは、従来の情報処理装置の表示するメニュー操作を説明するための図である。
【００７６】
一般的に、ポインティング位置に基づいて表示される処理メニューは、ポインティング位置を中心として配置される複数の矩形の処理オブジェクトで構成される。例えば、図８Ａに示したように、矩形の処理オブジェクトＭ１〜Ｍ４が、ポインティング位置を示すカーソル３０を中心に上下左右に配置される。
【００７７】
ここで、処理メニューにおける処理オブジェクトの選択頻度は、処理オブジェクト毎に異なる場合がある。例えば、「決定」または「戻る」といった処理に係る処理オブジェクトは他の処理に比べて選択される回数が多い。しかし、各処理オブジェクトは、メニュー選択操作の起点であるポインティング位置から等距離かつ同じ広さで配置されることが一般的である。そのため、処理オブジェクトの選択に係る操作時間および誤選択の発生による手数は、選択頻度によらず各処理オブジェクトで差が無く、選択頻度の高い処理オブジェクトの選択操作について改善が求められていた。
【００７８】
そこで、本実施形態の第２の変形例に係る情報処理装置１００−１は、優先度が他の処理よりも高い処理に係る処理オブジェクト（以下、第１の処理オブジェクトとも称する。）を、他の処理オブジェクト（以下、第２の処理オブジェクトとも称する。）よりも、優先して配置する。具体的には、制御部１０６は、第１の処理オブジェクトを、第２の処理オブジェクトよりも広くし、かつメニューの中心から近い位置に配置する。さらに、本変形例の処理について図８Ｂを参照して詳細に説明する。図８Ｂは、本実施形態の第２の変形例に係る情報処理装置１００−１の処理における、処理メニューの表示の例を示す図である。
【００７９】
まず、制御部１０６は、ポインティング位置の滞留により操作の実行が判定されると、当該ポインティング位置を基準として、処理オブジェクトで構成される処理メニューを表示させる。例えば、制御部１０６は、判定部１０４によってポインティング位置の滞留により操作の実行が判定されると、処理メニューを構成する処理オブジェクトＭ１〜Ｍ５を、図８Ｂに示したように、当該ポインティング位置を示すカーソル３０を中心とした同心円上の一部に表示させる。
【００８０】
さらに、処理メニューを構成する処理オブジェクトは、処理の優先度に基づいた位置に表示される。例えば、制御部１０６は、第１の処理オブジェクトであるＭ１およびＭ２をポインティング位置にあるカーソル３０から距離Ｒ１の位置に表示させ、第２の処理オブジェクトであるＭ３〜Ｍ５を距離Ｒ１よりもカーソル３０から遠い距離Ｒ２またはＲ３の位置に表示させる。
【００８１】
また、処理オブジェクトは、処理の優先度に基づいた広さで表示される。例えば、制御部１０６は、第１の処理オブジェクトであるＭ１およびＭ２の広さを、第２のオブジェクトであるＭ３〜Ｍ５よりも広い表示範囲で表示させる。
【００８２】
また、処理メニューを構成する処理オブジェクトの選択は、滞留に基づく操作実行判定による実行に限定されず、操作オブジェクトと処理オブジェクトとの接触、操作オブジェクトによる処理オブジェクトの通過、または処理オブジェクト内の操作オブジェクトの移動距離等に基づいて実行され得る。
【００８３】
このように、制御部１０６は、処理オブジェクトで構成されるメニューを表示する。そして、制御部１０６は、優先度が他の処理よりも高い処理に係る処理オブジェクトの第１の操作判定領域を、他の処理オブジェクトの第２の操作判定領域よりも、優先して配置する。このため、優先度の高い処理に係る処理オブジェクトが選択されやすくされることにより、当該メニューの操作性を向上させることが可能となる。
【００８４】
また、制御部１０６は、上記の第１の操作判定領域を、上記の第２の操作判定領域よりもメニューの中心から近い位置に配置し、かつ第１の操作判定領域を第２の操作判定領域よりも広くする。このため、優先度の高い処理に係る処理オブジェクトまでのポインティング位置の移動距離が他の処理オブジェクトよりも短縮され、またユーザが処理オブジェクトの選択操作を他の処理オブジェクトと誤る可能性が低下され、操作性をさらに向上させることが可能となる。
【００８５】
なお、制御部１０６は、第１の操作判定領域を、第２の操作判定領域よりも広くする、または第２の操作判定領域よりもメニューの中心から近い位置に配置するかのうちのいずれか一方のみを実行してもよい。
【００８６】
（スクロールの操作）
また、情報処理装置１００−１は、ポインティング位置の滞留に基づく操作の実行の判定を利用して、表示領域の表示をスクロールさせてもよい。具体的には、制御部１０６は、スクロールに係る操作判定領域においてポインティング位置の滞留に基づく操作の実行が判定されると、ポインティング位置の変化に応じて表示領域の表示をスクロールさせる。さらに、図９を参照して本変形例のスクロール処理について詳細に説明する。図９は、本実施形態の第２の変形例に係る情報処理装置１００−１のスクロール処理による表示変化の例を示す図である。
【００８７】
まず、制御部１０６は、スクロール操作に係る表示オブジェクトを表示領域に表示させる。例えば、制御部１０６は、表示領域１に図９の上段の左図に示したようなノブ５０および本体５２からなるスクロールバーを表示させる。なお、スクロールバーの初期表示は、表示領域の他の表示と比べて不鮮明、例えば薄くまたは暗く表示され得る。
【００８８】
次に、制御部１０６は、ポインティング位置がスクロール操作に係る表示オブジェクトから所定の距離の範囲内に移動されると、スクロール操作に係る表示オブジェクトの表示を変更させる。例えば、制御部１０６は、ポインティング位置を示すカーソル３０がスクロールバーから所定の距離の範囲内に移動されると、図９の上段の中図および上段の右図に示したように、スクロールバーの表示を鮮明な表示、例えば濃いまたは明るい表示に変更させる。
【００８９】
次に、制御部１０６は、スクロール操作に係る操作オブジェクトと重なる位置においてポインティング位置の滞留に基づく操作の実行が判定されると、スクロール操作に係る操作オブジェクトの状態を移動可能な状態に遷移させる。例えば、制御部１０６は、カーソル３０とノブ５０とが重なる位置で操作の実行が判定されると、ノブ５０の状態を移動可能な状態に遷移させる。
【００９０】
次に、制御部１０６は、スクロール操作に係る操作オブジェクトの移動に応じて、表示領域の表示をスクロールさせる。例えば、制御部１０６は、ノブ５０の状態が移動可能な状態に遷移された後、カーソル３０が本体５２に沿って移動される場合、図９の下段の左図および下段の中図に示したように、当該カーソル３０の移動に応じてノブ５０を移動させる。そして、制御部１０６は、ノブ５０の移動に応じて表示領域に表示されるコンテンツＣ１〜Ｃ６の表示をＣ５〜Ｃ１０の表示にスクロールさせる。なお、ノブ５０は本体５２の中心に初期表示され、制御部１０６は、初期表示位置からノブ５０が離隔されるほどスクロールを速くしてもよい。
【００９１】
そして、制御部１０６は、ポインティング位置がスクロール操作に係る表示オブジェクトから所定の距離の範囲外に移動されると、スクロール操作に係る表示オブジェクトの表示を元に戻す。例えば、制御部１０６は、図９の下段の右図に示したように、カーソル３０がスクロールバーから所定の距離の範囲外に移動されると、スクロールバーの表示を元の表示に戻す。
【００９２】
このように、制御部１０６は、スクロールに係る操作判定領域においてポインティング位置の滞留に基づく操作の実行が判定されると、ポインティング位置の変化に応じて表示領域の表示をスクロールさせる。このため、ポインティング操作によるスクロールの操作が可能とされることにより、利便性を向上させることが可能となる。
【００９３】
（第３の変形例）
本実施形態の第３の変形例として、情報処理装置１００−１は、ポインティング操作を行うユーザの手が表示領域に向かって開いている場合、ユーザが意図するポインティング位置を検出するように検出処理を行ってもよい。まず、図１０を参照して従来の情報処理装置における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出の課題について説明する。図１０は、従来の情報処理装置における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出処理を説明するための図である。なお、第１の実施形態におけるポインティング位置の検出処理と実質的に同一である処理については説明を省略する。
【００９４】
まず、従来の情報処理装置は、手を表示領域に向かって開いているユーザが被写体である画像に基づいて深度情報を取得し、取得される深度情報から３次元空間の点群情報を取得する。例えば、図１０の上段の図に示したような３次元空間の点群情報が取得される。
【００９５】
次に、従来の情報処理装置は、３次元空間の点群情報から点群抽出のための基準点を特定する。例えば、図１０の下段の左図に示したような、表示領域に向かって突端となる点Ｐが特定される。
【００９６】
次に、従来の情報処理装置は、特定される基準点を中心に点群を抽出する。例えば、点群情報の中から、図１０の下段の左図に示したような、点Ｐを中心とした所定の距離Ｒの範囲内にある点群Ｇ１を抽出する。抽出された点群Ｇ１は、例えば図１０の下段の中図に示した白色部分の点群であり得る。
【００９７】
次に、従来の情報処理装置は、抽出される点群に基づいてポインティング位置を特定する。例えば、抽出される点群Ｇ１に基づいて、図１０の下段の右図に示したような方向Ｄ１が算出され、算出される方向Ｄ１と表示領域との交点をポインティング位置として特定する。
【００９８】
ここで、算出される方向Ｄ１は、手のひらが形成する面と平行な方向であり、ユーザが意図する方向と異なる場合がある。そのため、ユーザの意図に沿ったポインティング位置が検出されず、操作性が損なわれる場合があった。そこで、本実施形態の第３の変形例では、ユーザが意図するポインティング位置を検出するための手法を２つ提案する。
【００９９】
（手のひらの垂線方向を検出）
第１の手法として、情報処理装置１００−１は、ユーザの手のひらの垂線方向を検出し、検出される方向に基づいてポインティング位置を検出する。具体的には、検出部１０２は、ユーザの手のひらが表示領域に向かって開いている場合、手のひらによって形成される面についての垂線の方向であってで、当該垂線の表示領域に向かう方向を、操作体の操作によって指し示される方向（以下、ポインティング方向とも称する。）として検出する。そして、検出部１０２は、当該ポインティング方向に基づいてポインティング位置を検出する。さらに、図１１を参照して第１の手法の処理について詳細に説明する。図１１は、本実施形態の第３の変形例に係る情報処理装置１００−１における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出処理の例を説明するための図である。なお、第１の実施形態における処理と実質的に同一である処理については説明を省略する。
【０１００】
まず、検出部１０２は、手を表示領域に向かって開いているユーザが被写体である画像に基づいて深度情報を取得し、取得される深度情報から３次元空間の点群情報を取得する。例えば、図１１の左図に示したような３次元空間の点群情報が取得される。
【０１０１】
次に、検出部１０２は、取得される点群情報の示す点群の中から、ユーザの手のひらにあたる点群を抽出する。例えば、検出部１０２は、深度情報の取得に用いられる画像の解析等によりユーザの手のひらを検出する。そして、検出部１０２は、取得される点群情報の示す点群の中から、図１１の中図に示したような、検出される手のひらの位置に相当する点群を抽出する。
【０１０２】
次に、検出部１０２は、抽出された点群により形成される面に垂直な方向を特定し、特定される方向に基づいてポインティング位置を特定する。例えば、検出部１０２は、抽出された点群により形成される面（以下、手のひらに係る面とも称する。）を特定し、図１１の右図に示したような、特定される面に垂直に交差する方向で、かつ表示領域１に向かう方向Ｄ２を検出する。そして、検出部１０２は、方向Ｄ２と表示領域との交点をポインティング位置として特定する。なお、手のひらに係る面と方向Ｄ２との交点は、様々な点が採用され得る。例えば、当該交点は、手のひらに係る面の中心点であり得る。
【０１０３】
このように、本実施形態の第３の変形例における第１の手法によれば、検出部１０２は、ユーザの手のひらが表示領域に向かって開いている場合、手のひらによって形成される面についての垂線の方向であって、当該垂線の表示領域に向かう方向をポインティング方向として検出する。このため、ポインティング操作に係るユーザの手のひらが開いた状態で検出されるポインティング位置がユーザの意図に沿った位置に近づけられ、操作性の低下を抑制することが可能となる。
【０１０４】
（腕の方向を検出）
第２の手法として、情報処理装置１００−１は、ユーザの腕の方向を検出し、検出される方向に基づいてポインティング位置を検出する。具体的には、検出部１０２は、ユーザのポインティング操作に係るユーザの腕を抽出し、抽出されるユーザの腕が示す方向で、かつ表示領域に向かう方向をポインティング方向として検出する。そして、検出部１０２は、当該ポインティング方向に基づいてポインティング位置を検出する。さらに、図１２を参照して第２の手法の処理について詳細に説明する。図１２は、本実施形態の第３の変形例に係る情報処理装置１００−１における、ユーザの手が表示領域に向かって開いている場合のポインティング位置の検出処理の他の例を説明するための図である。なお、第１の実施形態における処理と実質的に同一である処理については説明を省略する。
【０１０５】
まず、検出部１０２は、手を表示領域に向かって開いているユーザが被写体である画像に基づいて深度情報を取得し、取得される深度情報から３次元空間の点群情報を取得する。例えば、図１２の上段の左図に示したような３次元空間の点群情報が取得される。
【０１０６】
次に、検出部１０２は、３次元空間の点群情報から点群抽出のための基準点を特定し、特定される基準点を中心に点群を抽出する。例えば、検出部１０２は、取得される点群情報の中から、図１２の上段の中図に示したような点Ｐを基準点として特定し、特定される点Ｐを中心とした所定の距離Ｒの範囲内にある点群Ｇ１を抽出する。抽出された点群Ｇ１は、例えば図１２の上段の右図に示した白色部分の点群、すなわちユーザの手および腕の一部であり得る。
【０１０７】
次に、検出部１０２は、抽出される点群から表示領域に近い一部の点群を省く。例えば、検出部１０２は、抽出される点群から、表示領域に向かう方向の突端となる点から所定の距離の範囲内にある点群を省く。なお、当該処理によって得られる点群は、図１２の下段の中図に示したような点群Ｇ２であり得る。また、所定の距離は、例えば１０ｃｍ等であり得る。
【０１０８】
次に、検出部１０２は、抽出される点群に基づいてポインティング位置を特定する。例えば、検出部１０２は、抽出される点群Ｇ２について主成分分析を行い、第１主成分のベクトルを算出する。そして、検出部１０２は、図１２の下段の右図に示したような第１主成分のベクトルの方向Ｄ３と表示領域との交点をポインティング位置として特定する。
【０１０９】
このように、本実施形態の第３の変形例における第２の手法によれば、検出部１０２は、ユーザのポインティング操作に係るユーザの腕を抽出し、抽出されるユーザの腕が示す方向で、かつ表示領域に向かう方向をポインティング方向として検出する。このため、手のひらの状態によらずユーザの意図に沿ったポインティング方向が検出され得ることにより、手のひらの形状による操作性の変化を抑制することが可能となる。
【０１１０】
＜３．第２の実施形態（操作判定時間を変更する例）＞
以上、本開示の第１の実施形態に係る情報処理装置１００−１について説明した。次に、本開示の第２の実施形態に係る情報処理装置１００−２について説明する。情報処理装置１００−２は、操作判定領域におけるポインティング位置に基づいて操作判定時間を変更する。
【０１１１】
＜３−１．情報処理装置の構成＞
情報処理装置１００−２の機能構成は第１の実施形態に係る機能構成と実質的に同一であるが、判定部１０４の機能が一部異なる。なお、第１の実施形態の機能と実質的に同一である機能については説明を省略する。
【０１１２】
判定部１０４は、操作判定領域におけるポインティング位置に基づいて、ポインティング位置の滞留の開始から操作の実行有無の判定までの時間、すなわち操作判定時間を制御する。具体的には、判定部１０４は、ポインティング位置と操作判定領域に係る処理オブジェクトとの位置関係に基づいて操作判定時間を制御する。さらに、図１３を参照して判定部１０４の処理について詳細に説明する。図１３は、本実施形態に係る情報処理装置１００−２の処理による操作判定時間の変化を説明するための図である。
【０１１３】
まず、制御部１０６は、表示領域に操作オブジェクトおよび処理オブジェクトを表示させる。例えば、制御部１０６は、表示領域１に、図１３の左図に示したような、カーソル３０およびアイコン２０Ａ〜２０Ｃを表示させる。なお、アイコン２０Ａ〜２０Ｃの操作判定領域は、それぞれ４０Ａ〜４０Ｃであり得る。
【０１１４】
そして、判定部１０４は、ポインティング位置の滞留開始が判定されると、ポインティング位置と処理オブジェクトとの重なりの有無を判定する。例えば、判定部１０４は、図１３の中図に示した操作判定領域４０Ａ内にカーソル３０が留められると、当該カーソル３０の示すポインティング位置の滞留が開始されたと判定する。そして、判定部１０４は、カーソル３０と操作判定領域４０Ａに表示されるアイコン２０Ａとの重なりの有無を判定する。
【０１１５】
ポインティング位置が処理オブジェクトと重なると判定される場合、判定部１０４は、操作判定時間を第１の時間に設定する。例えば、判定部１０４は、カーソル３０がアイコン２０Ａと重なると判定される場合、操作判定時間を第１の時間、例えば０．５秒に設定し得る。
【０１１６】
その後、ポインティング位置が操作判定領域上であって処理オブジェクトと重ならない位置に移動されると、判定部１０４は、操作判定時間を第２の時間に変更する。例えば、カーソル３０が操作判定領域４０Ａ上にあってアイコン２０Ａと重ならない位置に移動されると、判定部１０４は、操作判定時間を第１の時間よりも長い第２の時間に変更する。例えば、判定部１０４は、操作判定時間を０．５秒から１．０秒に変更し得る。
【０１１７】
＜３−２．情報処理装置の処理＞
次に、図１４を参照して、本実施形態における情報処理装置１００−２の処理について説明する。図１４は、本実施形態における情報処理装置１００−２の処理を概念的に示すフローチャートである。なお、第１の実施形態の処理と実質的に同一である処理については説明を省略する。
【０１１８】
まず、情報処理装置１００−２は、所定の時間ポインティング位置が未検出であるかを判定し（ステップＳ４０２）、ポインティング位置が検出される場合、操作判定領域においてポインティング位置の滞留が開始されたかを判定する（ステップＳ４０４）。そして、ポインティング位置の滞留が開始されたと判定される場合、操作オブジェクトの表示を変更する（ステップＳ４０６）。
【０１１９】
次に、情報処理装置１００−２は、ポインティング位置が処理オブジェクト上に移動されたかを判定する（ステップＳ４０８）。具体的には、判定部１０４は、ポインティング位置と処理オブジェクトとの重なりの有無を判定し、過去のポインティング位置の処理オブジェクトとの重なりの有無と比較する。なお、ポインティング位置が変化した場合にのみ、当該ステップの処理が行われてもよい。
【０１２０】
ポインティング位置が処理オブジェクト上に移動されたと判定される場合、情報処理装置１００−２は、操作判定時間を第１の時間に設定する（ステップＳ４１０）。具体的には、判定部１０４は、ポインティング位置が処理オブジェクトと重なる位置に移動されたと判定される場合、操作判定時間を第１の時間に設定する。なお、初期値が第１の時間である場合、判定部１０４は当該ステップの処理を行わなくてもよい。
【０１２１】
また、ポインティング位置が処理オブジェクト上に変化されていないと判定される場合、情報処理装置１００−２は、ポインティング位置が処理オブジェクト外に移動されたかを判定する（ステップＳ４１２）。具体的には、ポインティング位置が処理オブジェクトと重なる位置に変化されていないと判定される場合、判定部１０４は、ポインティング位置が操作判定領域と重なる位置であって処理オブジェクトと重ならない位置に移動されたかを判定する。
【０１２２】
ポインティング位置が処理オブジェクト外に移動されたと判定される場合、情報処理装置１００−２は、操作判定時間を第２の時間に設定する（ステップＳ４１４）。具体的には、判定部１０４は、ポインティング位置が処理オブジェクトと重ならない位置に移動されたと判定される場合、操作判定時間を第２の時間に設定する。なお、初期値が第２の時間である場合、判定部１０４は当該ステップの処理を行わなくてもよい。
【０１２３】
次に、情報処理装置１００−２は、ポインティング位置の滞留が中止されたかを判定し（ステップＳ４１６）、ポインティング位置の滞留が中止されていないと判定される場合、操作判定時間が経過したかを判定する（ステップＳ４１８）。操作判定時間が経過したと判定される場合、情報処理装置１００−２は、操作判定領域に係る操作をする（ステップＳ４２０）。
【０１２４】
このように、本開示の第２の実施形態によれば、情報処理装置１００−２は、処理オブジェクトに対応付けられる操作判定領域におけるポインティング位置に基づいて、ポインティング位置の滞留開始から操作の実行有無の判定までの操作判定時間を制御する。このため、ポインティング操作の状況に応じて操作判定時間が変更され得ることにより、ユーザの意図に沿う操作結果が得られ易くし、操作性を向上させることが可能となる。
【０１２５】
また、判定部１０４は、ポインティング位置と操作判定領域に係る処理オブジェクトとの位置関係に基づいて操作判定時間を制御する。このため、当該位置関係から推定されるユーザの意図を反映した操作判定時間が設定されることにより、操作性をさらに向上させることが可能となる。
【０１２６】
なお、上記では、判定部１０４は、ポインティング位置と処理オブジェクトとの重なりの有無に応じて操作判定時間を変更する例を説明したが、判定部１０４は、ポインティング位置と処理オブジェクトとの距離に応じて操作判定時間を変更してもよい。例えば、判定部１０４は、ポインティング位置の滞留開始が判定された後、所定の時間間隔でポインティング位置と処理オブジェクトとの距離を算出し、算出される距離が長くなると操作判定時間を長くなるように設定し得る。この場合、操作判定時間の設定が細かく変更されることにより、操作判定時間の変更による違和感をユーザに与えにくくすることが可能となる。
【０１２７】
＜３−３．変形例＞
以上、本開示の第２の実施形態について説明した。なお、本実施形態は、上述の例に限定されない。以下に、本実施形態の第１〜第５の変形例について説明する。
【０１２８】
（第１の変形例）
本実施形態の第１の変形例として、情報処理装置１００−２は、操作判定時間の設定において、複数の操作判定領域が重なる領域を他の領域と区別してもよい。具体的には、判定部１０４は、複数の操作判定領域が重なる領域とポインティング位置との重なりの有無に応じて操作判定時間を制御する。さらに、図１５を参照して本変形例の処理について詳細に説明する。図１５は、本実施形態の第１の変形例に係る情報処理装置１００−２の処理における操作判定領域の設定の例を示す図である。
【０１２９】
まず、複数の操作判定領域が他の操作判定領域と重複するように設定される。例えば、図１５に示したように、アイコン２０Ａ〜２０Ｃに係る操作判定領域４０Ａ〜４０Ｃは、他の操作判定領域と重複するように配置され得る。
【０１３０】
そして、判定部１０４は、ポインティング位置の滞留開始が判定された後、所定の時間間隔で、ポインティング位置が操作判定領域の重複領域に移動されたかを判定する。例えば、判定部１０４は、操作判定領域４０Ａにおけるカーソル３０の示すポインティング位置の滞留開始が判定された後、所定の時間間隔で、操作判定領域４０Ａおよび４０Ｂが重複する領域ならびに操作判定領域４０Ａおよび４０Ｃが重複する領域にカーソル３０の位置が移動されたかを判定する。
【０１３１】
ポインティング位置が操作判定領域の重複領域に移動されたと判定される場合、判定部１０４は、操作判定時間を変更する。例えば、カーソル３０が操作判定領域４０Ａおよび４０Ｃの重複する領域に移動された際に、判定部１０４は、ポインティング位置が操作判定領域４０Ａのみに位置する場合より操作判定時間を長くする。例えば、判定部１０４は、操作判定時間を１．０秒から１．２秒に変更し得る。
【０１３２】
このように、本実施形態の第１の変形例によれば、判定部１０４は、複数の操作判定領域が重なる領域とポインティング位置との重なりの有無に応じて操作判定時間を制御する。このため、操作判定中の操作の実行をユーザが望まない可能性が操作判定領域の他の位置よりも高い位置において、当該他の位置の場合よりも長い操作判定時間が設定され得ることにより、操作性の低下を抑制することが可能となる。
【０１３３】
（第２の変形例）
本実施形態の第２の変形として、情報処理装置１００−２は、操作判定時間の設定において、表示領域外の操作判定領域を他の領域と区別してもよい。具体的には、判定部１０４は、表示領域外における操作判定領域とポインティング位置との重なりの有無に応じて操作判定時間を制御する。さらに、図１６を参照して本変形例の処理について詳細に説明する。図１６は、本実施形態の第２の変形例に係る情報処理装置１００−２の処理における操作判定領域の設定の他の例を示す図である。
【０１３４】
まず、操作判定領域は表示領域内外にわたって設定される。例えば、図１６に示したように、操作判定領域４０Ａ〜４０Ｃの各々は、表示領域１の内部および外部にわたって設定され得る。なお、操作判定領域は表示領域外にのみ設定されてもよい。
【０１３５】
そして、判定部１０４は、ポインティング位置の滞留開始が判定された後、所定の時間間隔で、ポインティング位置が表示領域外の操作判定領域に移動されたかを判定する。例えば、判定部１０４は、操作判定領域４０Ａにおけるカーソル３０の示すポインティング位置１０の滞留開始が判定された後、所定の時間間隔で、表示領域１外の操作判定領域４０Ａにポインティング位置１０が移動されたかを判定する。
【０１３６】
ポインティング位置が表示領域外の操作判定領域に移動されたと判定される場合、判定部１０４は、操作判定時間を変更する。例えば、判定部１０４は、図１６に示したように表示領域１外の操作判定領域４０Ａにポインティング位置１０が移動されたと判定される場合、ポインティング位置１０が表示領域１内の操作判定領域４０Ａに位置する場合より操作判定時間を短くする。例えば、判定部１０４は、操作判定時間を１．０秒から０．８秒に変更し得る。
【０１３７】
このように、本実施形態の第２の変形例によれば、判定部１０４は、表示領域外における操作判定領域とポインティング位置との重なりの有無に応じて操作判定時間を制御する。このため、表示領域内よりもポインティング位置のある領域の判別について正確性が高くなり得る表示領域外の操作判定領域が利用されることにより操作実行判定の正確性を向上され、操作性を向上させることが可能となる。
【０１３８】
（第３の変形例）
本実施形態の第３の変形例として、情報処理装置１００−２は、操作判定領域におけるポインティング位置以外の情報に基づいて、操作判定時間を制御してもよい。具体的には、判定部１０４は、ポインティング位置の精度を変化させる精度要因情報に基づいて操作判定時間を制御する。より具体的には、判定部１０４は、ユーザの態様を示す情報（以下、ユーザ態様情報とも称する。）に基づいて操作判定時間を制御する。さらに、図１７を参照して本変形例の処理について詳細に説明する。図１７は、本実施形態の第３の変形例に係る情報処理装置１００−２の処理におけるポインティング操作の形態の例を示す図である。
【０１３９】
（ユーザの態様に基づく操作判定時間の制御）
まず、判定部１０４は、ポインティング位置の滞留開始が判定されると、ユーザ態様情報を取得する。例えば、ユーザ態様情報は、位置を指し示すユーザの動きの形態を示す情報（以下、ジェスチャ形態情報とも称する。）を含み、判定部１０４は、検出部１０２にジェスチャ形態情報を要求する。当該要求を受けると、検出部１０２は、ポインティング位置の検出の際に用いられた画像等に基づいてジェスチャ形態を検出する。そして、検出部１０２は、検出されたジェスチャ形態を示す情報を判定部１０４に提供する。なお、ジェスチャ形態は、予めパターン化されてもよく、例えば図１７Ａ〜図１７Ｃに示したような３パターンに分類されてもよい。
【０１４０】
次に、判定部１０４は、取得されるユーザ態様情報に基づいて操作判定時間を設定する。例えば、判定部１０４は、取得されるジェスチャ形態情報の示すジェスチャ形態が所定のジェスチャ形態パターンのいずれに相当するかを判定する。例えば、判定部１０４は、ジェスチャ形態情報の示すジェスチャパターンが図１７Ａ〜図１７Ｃに示したようなジェスチャ形態パターンのいずれに相当するかを判定する。そして、判定部１０４は、判定されるジェスチャ形態パターンに対応付けられる操作判定時間を設定する。なお、ジェスチャ形態パターンに対応付けられる情報は標準的な操作判定時間に係る係数であってもよい。
【０１４１】
なお、ジェスチャ形態パターンに対応付けられる操作判定時間は、ユーザの手の身体からの距離およびユーザの腕の伸び具合等に基づいて決定され得る。例えば、図１７Ａに示したジェスチャ形態は、図１７Ｂおよび図１７Ｃのジェスチャ形態に比べて、ユーザの手の身体からの距離が長く、かつユーザの腕が延ばされている。そのため、図１７Ａに示したジェスチャ形態のパターンは、ポインティング位置の精度が高いジェスチャ形態に係るパターンであるとして、他のジェスチャ形態パターンよりも長い操作判定時間が対応付けられる。そして、図１７Ｂ、図１７Ｃに示したジェスチャ形態パターンの順に、ポインティング位置の精度が低くなるとして、対応付けられる操作判定時間が長くなる。
【０１４２】
また、他のジェスチャ形態パターンと比べて対応付けられる操作判定時間が長いジェスチャ形態パターンに相当するジェスチャ形態が検出される場合、制御部１０６は、ユーザにジェスチャ形態を改善させるための表示制御を行ってもよい。例えば、制御部１０６は、検出部１０２によって図１７Ｂまたは図１７Ｃに示したようなジェスチャ形態パターンに相当するジェスチャ形態が検出されると、表示領域にポインティング位置の精度が低い状態である旨を表示させる。この場合、ユーザのジェスチャ形態が改善されることによりポインティング位置の精度が向上され、操作性を向上させることが可能となる。
【０１４３】
なお、ユーザ態様情報は、ユーザの位置を示す情報（以下、ユーザ位置情報とも称する。）であってもよい。具体的には、判定部１０４は、ユーザ位置情報の示す位置に応じて操作判定時間を制御する。例えば、ユーザの位置が表示領域または撮像装置２００から離れるほどポインティング位置の精度が低下し得る。そのため、判定部１０４は、ユーザ位置情報の示す位置が表示領域または撮像装置２００からの距離が長いほど操作判定時間を長くし得る。また、例えば、判定部１０４は、ユーザの位置が所定の位置である場合に、ユーザの位置が他の位置である場合と異なる操作判定時間を設定してもよい。
【０１４４】
また、ユーザ態様情報は、ユーザの視線を示す情報（以下、ユーザ視線情報とも称する。）であってもよい。具体的には、判定部１０４は、ユーザ視線情報の示す視線とポインティング方向との類似度に応じて操作判定時間を制御する。例えば、ユーザの視線とポインティング方向とが類似する場合にはポインティング位置の精度が高くなり得る。そのため、判定部１０４は、ユーザの視線情報の示す視線と検出部１０２によって検出されるポインティング方向とが類似するかを判定し、両方向が類似する場合、操作判定時間を短くし得る。
【０１４５】
このように、判定部１０４は、ユーザの態様を示す情報に基づいて操作判定時間を制御する。このため、ポインティング位置の精度との密接に関係する、ポインティング操作を行う主体の態様に基づいて操作判定時間が制御されることにより、操作実行判定の正確性が高められ、操作性を向上させることが可能となる。
【０１４６】
また、ユーザの態様を示す情報は、位置を指し示すユーザの動作の形態を示す情報を含み、判定部１０６は、当該位置を指し示すユーザの動作の形態に応じて操作判定時間を制御する。このため、ポインティング位置の検出精度にさらに影響を与え得るユーザのジェスチャ形態に基づいて操作判定時間が制御されることにより、操作実行判定の正確性をさらに高めることが可能となる。
【０１４７】
（ユーザの特性に基づく操作判定時間の制御）
また、判定部１０４は、ユーザの特性を示す情報（以下、ユーザ特性情報とも称する。）に基づいて操作判定時間を制御してもよい。具体的には、ユーザ特性情報は、ユーザの年齢、性別または身体的特徴等を示す情報であり得る。例えば、児童、女性または痩身のユーザ等の腕は細い傾向にあり、ユーザの腕が細いとポインティング位置の精度が低下し得る。そのため、判定部１０４は、ユーザ特性情報の示す年齢等が所定の条件を満たすかを判定し、所定の条件が満たされると判定される場合、操作判定時間を変更する。
【０１４８】
この場合、判定部１０４は、ユーザの特性を示す情報に基づいて操作判定時間を制御する。このため、ユーザ態様情報が取得困難な場合であってもユーザ毎に操作判定時間が調整され得ることにより、操作性を向上させることが可能となる。
【０１４９】
（操作履歴に基づく操作判定時間の制御）
また、判定部１０４は、ユーザの操作履歴情報に基づいて操作判定時間を制御してもよい。具体的には、判定部１０４は、ユーザの操作履歴情報から特定される操作、操作を行ったユーザ、ユーザの特性、ユーザの姿勢またはユーザの服装等に基づいて操作判定時間を制御する。例えば、判定部１０４は、ユーザの操作履歴情報から特定される操作、例えば操作頻度または習熟度が他の操作よりも高い操作が行われる場合、他の操作の場合よりも短い操作判定時間を設定する。また、判定部１０４は、ユーザの操作履歴情報から特定されるユーザ、例えばポインティング位置の精度が他のユーザよりも低いユーザによって操作が行われる場合、他のユーザの場合よりも長い操作判定時間を設定する。また、判定部１０４は、ユーザの操作履歴情報から特定される服装、例えばポインティング位置の精度が低くなる服の色彩または模様等の服装をしたユーザによって操作が行われる場合、他の服装のユーザの場合よりも長い操作判定時間を設定する。
【０１５０】
この場合、判定部１０４は、ユーザの操作履歴情報に基づいて操作判定時間を制御する。このため、ポインティング位置の精度が低い操作等が識別され、識別される操作等ごとに操作判定時間が設定されることにより、操作実行判定の正確性が高められ、操作性を向上させることが可能となる。
【０１５１】
（外部環境に基づく操作判定時間の制御）
また、判定部１０４は、情報処理装置１００−２の外部環境を示す情報（以下、外部環境情報とも称する。）に基づいて操作判定時間を制御してもよい。具体的には、外部環境情報は、外光の照度または光源数等の外光の状態を示す情報であり得る。例えば、外光の照度または光源数が増加すると、ポインティング位置の精度が低下し得る。そのため、判定部１０４は、外部環境情報の示す外光の照度等が閾値以上であるかを判定し、外部環境情報の示す値が閾値以上であると判定される場合、閾値未満である場合よりも長い操作判定時間を設定する。また、例えば、外光の照度等が変化し、安定しない場合も、ポインティング位置の精度が低下し得る。そのため、判定部１０４は、外部環境情報の示す外光の照度等の変化値または変化率が閾値以上で変化する場合、閾値未満で変化する場合よりも長い操作判定時間を設定する。
【０１５２】
この場合、判定部１０４は、情報処理装置１００−２の外部環境を示す情報に基づいて操作判定時間を制御する。このため、ユーザの関与し得ない外部環境の変化により意図に沿わない操作実行判定が行われることを抑制することが可能となる。
【０１５３】
このように、本実施形態の第３の変形例によれば、判定部１０４は、ポインティング位置の精度を変化させる精度要因情報に基づいて操作判定時間を制御する。このため、ポインティング位置の精度に合わせて操作判定時間が制御されることにより、ユーザの意図に沿わない操作実行判定の発生が抑制され、操作性を向上させることが可能となる。
【０１５４】
なお、ユーザ態様情報、ユーザ特性情報および外部環境情報から特定される操作判定時間は、機械学習により最適化されてもよい。また、当該機械学習においては、上記の情報の要素同士が組み合わされたパラメータセットが生成され、パラメータセットに基づいて操作判定時間が特定されてもよい。例えば、判定部１０４は、パラメータセットが条件を満たす場合に、当該パラメータセットに基づいて特定される操作判定時間を設定する。パラメータセットは、例えば、操作ユーザおよびユーザの位置の組、またはジェスチャ形態およびユーザの年齢の組等の様々な要素の組合せであり得る。
【０１５５】
また、ユーザ態様情報、ユーザ特性情報および外部環境情報は、検出部１０２等によって生成されてもよく、情報処理装置１００−２の外部装置から通信を介して取得されてもよい。
【０１５６】
（第４の変形例）
本実施形態の第４の変形例として、情報処理装置１００−２は、ユーザ数に基づいて操作判定時間を制御してもよい。具体的には、判定部１０４は、複数のユーザに係るポインティング位置が検出される場合、操作判定時間を長くしてもよい。例えば、検出部１０２は、複数のポインティング位置が検出されると、ポインティング操作を行うユーザの検出を行う。そして、複数のユーザが検出される場合、判定部１０４は、操作判定時間を長くする。
【０１５７】
さらに、各ポインティング位置における処理オブジェクト間の距離が所定の距離の範囲内である場合に、判定部１０４は、操作判定時間を長くしてもよい。例えば、２以上のポインティング位置が異なるアイコン上に滞留される場合、判定部１０４は、当該アイコン間の距離を算出する。そして、判定部１０４は、算出距離が所定の値の範囲内である場合、判定部１０４は操作判定時間を長くする。
【０１５８】
このように、本実施形態の第４の変形例によれば、判定部１０４は、複数のユーザに係るポインティング位置が検出される場合、操作判定時間を長くする。このため、ポインティング位置が錯綜し得る可能性がある状態において操作判定時間が長くされることにより、ユーザの意図に沿わない操作実行判定が行われる可能性を低下させることが可能となる。
【０１５９】
また、判定部１０４は、複数のユーザに係るポインティング位置の各々における処理オブジェクト間の距離が所定の距離の範囲内である場合、操作判定時間を長くする。このため、ポインティング位置が複数検出される状況のうちの特定の状況においてのみ操作判定時間の長期化されることにより、ユーザの意図に沿わない操作実行判定の発生を抑制しながら、ユーザの利便性を向上させることが可能となる。
【０１６０】
（第５の変形例）
本実施形態の第５の変形例として、情報処理装置１００−２は、ユーザによって設定される設定情報に基づいて操作判定時間を設定してもよい。具体的には、判定部１０４は、ユーザによって予め設定される操作判定時間の設定情報を記憶部等から取得し、取得される設定情報に基づいて操作判定時間を設定する。さらに、図１８を参照して本変形例の処理について詳細に説明する。図１８は、本実施形態の第５の変形例に係る情報処理装置１００−２が表示させる操作判定時間の設定用ＧＵＩの例を示す図である。
【０１６１】
まず、制御部１０６は、操作判定時間の設定に係る操作が行われると、表示領域に操作判定時間の設定用ＧＵＩを表示させる。例えば、制御部１０６は、図１８に示したようなＧＵＩ３を表示させる。操作判定時間は、当該ＧＵＩ３の操作バーの位置に応じて設定される。なお、設定される値は記憶部等に操作判定時間の設定情報として記憶される。また、設定される値は操作判定時間であってもよく、操作判定時間の初期値からの差分値であってもよい。
【０１６２】
そして、判定部１０４は、記憶部等に記憶される操作判定時間の設定情報に基づいて操作判定時間を設定する。なお、当該操作判定時間は、上述した操作判定時間の変更処理における初期値であり得る。
【０１６３】
このように、本実施形態の第５の変形例によれば、判定部１０４は、ユーザにより設定される設定情報に基づいて操作判定時間を設定する。このため、操作判定時間についてユーザの意図が直接的に反映されることにより、ユーザの利便性を向上させることが可能となる。
【０１６４】
＜４．第３の実施形態（操作判定領域を変更する例）＞
以上、本開示の第２の実施形態に係る情報処理装置１００−２について説明した。次に、本開示の第３の実施形態に係る情報処理装置１００−３について説明する。情報処理装置１００−３は、ポインティング位置の滞留開始に基づいて操作判定領域を制御する。
【０１６５】
＜４−１．情報処理装置の構成＞
情報処理装置１００−３の機能構成は第１および第２の実施形態に係る機能構成と実質的に同一であるが、判定部１０４の機能が一部異なる。なお、第１および第２の実施形態の機能と実質的に同一である機能については説明を省略する。
【０１６６】
判定部１０４は、ポインティング位置に基づいて操作判定領域を制御する。具体的には、判定部１０４は、操作判定領域におけるポインティング位置の滞留が開始された際に、操作判定領域を変更する。さらに、図１９を参照して判定部１０４の処理について詳細に説明する。図１９は、本実施形態に係る情報処理装置１００−３の処理による操作判定領域の変化を説明するための図である。なお、図１９以降の図面においては、説明の明確化のため、操作判定領域は斜線によって示される。
【０１６７】
まず、処理オブジェクトに係る設定情報等に基づいて操作判定領域の初期設定が行われる。例えば、アイコン２０Ａ〜２０Ｃの各々に係る操作判定領域は、アイコン２０Ａ〜２０Ｃの各々の表示範囲、すなわち図１９の左図に示したような斜線部分であり得る。
【０１６８】
そして、判定部１０４は、操作判定領域におけるポインティング位置の滞留が開始されると、当該操作判定領域を変更する。例えば、判定部１０４は、図１９の右図に示したようなアイコン２０Ａと重なる位置においてカーソル３０の示すポインティング位置の滞留が開始されたと判定された際に、判定部１０４は、操作判定領域をアイコンの表示範囲から当該表示範囲を含む領域４０Ａに広げる。
【０１６９】
＜４−２．情報処理装置の処理＞
次に、図２０を参照して、本実施形態における情報処理装置１００−３の処理について説明する。図２０は、本実施形態における情報処理装置１００−３の処理を概念的に示すフローチャートである。なお、第１および第２の実施形態の処理と実質的に同一である処理については説明を省略する。
【０１７０】
まず、情報処理装置１００−３は、所定の時間ポインティング位置が未検出であるかを判定し（ステップＳ５０２）、ポインティング位置が検出される場合、操作判定領域においてポインティング位置の滞留が開始されたかを判定する（ステップＳ５０４）。
【０１７１】
ポインティング位置の滞留が開始されたと判定される場合、情報処理装置１００−３は、操作判定領域を変更する（ステップＳ５０６）。具体的には、判定部１０４は、操作判定領域におけるポインティング位置の滞留が開始されたと判定される、操作判定領域を元の操作判定領域よりも広げる。
【０１７２】
次に、情報処理装置１００−３は、操作オブジェクトの表示を変更させる（ステップＳ５０８）。そして、情報処理装置１００−３は、ポインティング位置の滞留が中止されたかを判定し（ステップＳ５１０）、ポインティング位置の滞留が中止されていないと判定される場合、操作判定時間が経過したかを判定する（ステップＳ５１２）。操作判定時間が経過したと判定される場合、情報処理装置１００−３は、操作判定領域に係る操作をする（ステップＳ５１４）。
【０１７３】
このように、本開示の第３の実施形態によれば、情報処理装置１００−３は、操作判定領域におけるポインティング位置の滞留が開始された際に操作判定領域を変更する。このため、ポインティング位置の滞留開始から操作判定までの間にポインティング位置が手振れ等に起因して意図せず移動される場合であっても操作判定処理が継続され得ることにより、操作性を向上させることが可能となる。
【０１７４】
＜４−３．変形例＞
以上、本開示の第３の実施形態について説明した。なお、本実施形態は、上述の例に限定されない。以下に、本実施形態の第１、第２の変形例について説明する。
【０１７５】
（第１の変形例）
本実施形態の第１の変形例として、情報処理装置１００−３は、操作判定領域の変更に基づいて、操作判定領域に係る処理オブジェクトの表示を変更させてもよい。具体的には、判定部１０４は、操作判定領域の変更に基づいて、操作判定領域に係る処理オブジェクトの表示を強調させる。さらに、図２１を参照して本変形例の処理について詳細に説明する。図２１は、本実施形態の第１の変形例に係る情報処理装置１００−３の処理による、操作判定領域の変更に伴う処理オブジェクトの表示変化の例を示す図である。
【０１７６】
まず、判定部１０４は、操作判定領域におけるポインティング位置の滞留が開始されたと判定される場合、操作判定領域を変更する。例えば、アイコン２０Ａに係る操作判定領域は、図２１の左図に示したようなアイコン２０Ａの表示範囲に設定され得る。そして、アイコン２０Ａにおいてカーソル３０の示すポインティング位置の滞留が開始されたと判定される場合、判定部１０４は、図２１の中図に示したように、操作判定領域を領域４０Ａに変更する。
【０１７７】
そして、制御部１０６は、操作判定領域が変更される場合、当該操作判定領域に係る処理オブジェクトの表示を変更させる。例えば、制御部１０６は、判定部１０４によってアイコン２０Ａに係る操作判定領域が変更されると、図２１の右図に示したように、アイコン２０Ａの表示を大きくさせる。なお、制御部１０６は、アイコン２０Ａの形状、模様または色彩等を変更させてもよい。また、制御部１０６は、アイコン２０Ａを時間の経過と共に変更させてもよい。
【０１７８】
このように、本実施形態の第１の変形例によれば、制御部１０６は、判定部１０４による操作判定領域の変更に基づいて、操作判定領域に係る処理オブジェクトの表示を変更させる。このため、操作判定領域の変更に係る処理オブジェクトがユーザに強調されることにより、ユーザは、操作判定領域が変更されたことに気づき、意図しない操作実行判定が行われることを回避することが可能となる。
【０１７９】
（第２の変形例）
本実施形態の第２の変形例として、情報処理装置１００−３は、複数の操作判定領域が重なる場合、滞留が開始された操作判定領域を優先させてもよい。具体的には、判定部１０４は、複数の操作判定領域の重なる領域とポインティング位置とが重なる場合、ポインティング位置の滞留が開始された操作判定領域における操作判定処理を継続する。さらに、図２２を参照して本変形例の処理について詳細に説明する。図２２は、本実施形態の第２の変形例に係る情報処理装置１００−３の操作判定領域が重複する場合の操作判定処理を説明するための図である。
【０１８０】
まず、複数の操作判定領域が他の操作判定領域と重複するように設定される。例えば、図２２の左図に示したように、アイコン２０Ａ〜２０Ｃに係る操作判定領域４０Ａ〜４０Ｃは、他の操作判定領域と重複するように配置され得る。
【０１８１】
そして、判定部１０４は、操作判定領域におけるポインティング位置の滞留が開始されたと判定される場合、当該判定領域における操作判定処理を開始する。例えば、図２２の中図に示したような操作判定領域４０Ａにおけるカーソル３０の示すポインティング位置の滞留が開始されたと判定される場合、判定部１０４は、操作判定領域４０Ａにおける操作判定処理を開始する。
【０１８２】
次に、ポインティング位置が他の操作判定領域と重なる位置に移動される場合、判定部１０４は、実行中の操作判定処理を継続する。例えば、図２２の右図に示したように、カーソル３０が操作判定領域４０Ａと４０Ｃとが重なる位置に移動される場合、判定部１０４は、実行中の操作判定領域４０Ａに係る操作判定処理を継続する。なお、判定部１０４は、操作判定領域４０Ａと重ならない位置にカーソル３０が移動されると、当該操作判定処理を中止する。
【０１８３】
このように、本実施形態の第２の変形例によれば、判定部１０４は、複数の操作判定領域の重なる領域とポインティング位置とが重なる場合、ポインティング位置の滞留が開始された操作判定領域における操作判定処理を継続する。このため、操作判定領域に係る処理オブジェクトの表示が近接する場合であっても、ユーザの意図に沿わない操作実行判定が行われる可能性を低下させることが可能となる。
【０１８４】
＜５．本開示の一実施形態に係る情報処理装置のハードウェア構成＞
以上、本発明の実施形態を説明した。上述した情報処理装置１００の処理は、ソフトウェアと、以下に説明する情報処理装置１００のハードウェアとの協働により実現される。
【０１８５】
図２３は、本開示に係る情報処理装置１００のハードウェア構成を示した説明図である。図２３に示したように、情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１３２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３４と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３６と、ブリッジ１３８と、バス１４０と、インターフェース１４２と、入力装置１４４と、出力装置１４６と、ストレージ装置１４８と、ドライブ１５０と、接続ポート１５２と、通信装置１５４とを備える。
【０１８６】
ＣＰＵ１３２は、演算処理部および制御部として機能し、各種プログラムと協働して情報処理装置１００内の検出部１０２、判定部１０４および制御部１０６の動作を実現する。また、ＣＰＵ１３２は、マイクロプロセッサであってもよい。ＲＯＭ１３４は、ＣＰＵ１３２が使用するプログラムまたは演算パラメータ等を記憶する。ＲＡＭ１３６は、ＣＰＵ１３２の実行にいて使用するプログラムまたは実行において適宜変化するパラメータ等を一時記憶する。ＲＯＭ１３４およびＲＡＭ１３６により、情報処理装置１００内の記憶部の一部を実現する。ＣＰＵ１３２、ＲＯＭ１３４およびＲＡＭ１３６は、ＣＰＵバスなどから構成される内部バスにより相互に接続されている。
【０１８７】
入力装置１４４は、マウス、キーボード、タッチパネル、ボタン、マイクロホン、スイッチおよびレバーなどユーザが情報を入力するための入力手段、ならびにユーザによる入力に基づいて入力信号を生成し、ＣＰＵ１３２に出力する入力制御回路などから構成されている。情報処理装置１００のユーザは、入力装置１４４を操作することにより、情報処理装置１００に対して各種のデータを入力したり処理動作を指示したりすることができる。
【０１８８】
出力装置１４６は、例えば、情報処理装置１００の投影部１０８の一例として、液晶ディスプレイ（ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置、ランプなどの装置への出力を行う。さらに、出力装置１４６は、スピーカおよびヘッドフォンなどの音声出力を行ってもよい。
【０１８９】
ストレージ装置１４８は、データ格納用の装置である。ストレージ装置１４８は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置等を含んでもよい。ストレージ装置１４８は、ＣＰＵ１３２が実行するプログラムや各種データを格納する。
【０１９０】
ドライブ１５０は、記憶媒体用リーダライタであり、情報処理装置１００に内蔵、あるいは外付けされる。ドライブ１５０は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記憶されている情報を読み出して、ＲＡＭ１３４に出力する。また、ドライブ１５０は、リムーバブル記憶媒体に情報を書込むこともできる。
【０１９１】
接続ポート１５２は、例えば、情報処理装置１００の外部の情報処理装置または周辺機器と接続するためのバスである。また、接続ポート１５２は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）であってもよい。
【０１９２】
通信装置１５４は、例えば、ネットワークに接続するための通信デバイスで構成された通信インターフェースである。また、通信装置１５４は、赤外線通信対応装置であっても、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）対応通信装置であっても、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）対応通信装置であっても、有線による通信を行うワイヤー通信装置であってもよい。
【０１９３】
＜６．むすび＞
以上、本開示の第１の実施形態によれば、表示オブジェクトの表示が滞留開始後に変化されていくことにより、ユーザに滞留状態であることを把握させ、ユーザの意図する結果となるように、滞留状態を維持またはキャンセル等の操作をユーザに促すことが可能となる。また、本開示の第２の実施形態によれば、ポインティング操作の状況に応じて操作判定時間が変更され得ることにより、ユーザの意図に沿う操作結果が得られ易くし、操作性を向上させることが可能となる。また、本開示の第３の実施形態によれば、ポインティング位置の滞留開始から操作判定までの間にポインティング位置が手振れ等に起因して意図せず移動される場合であっても操作判定処理が継続され得ることにより、操作性を向上させることが可能となる。
【０１９４】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１９５】
例えば、上記実施形態では、判定部１０４は、操作判定領域におけるポインティング位置の滞留開始から操作判定時間の経過後に操作実行判定を行うとしたが、本技術はかかる例に限定されない。例えば、判定部１０４は、ポインティング位置が操作判定領域に接触してから操作判定時間の経過後に操作実行判定を行ってもよい。この場合、操作実行判定までの時間が短縮されることにより、素早く操作を行いたいユーザ等のニーズに応えることが可能となる。
【０１９６】
また、上記の実施形態では、ポインティング位置を示す操作オブジェクトが表示領域に表示される例を説明したが、操作オブジェクトの表示は操作体の種類に応じて異なってもよい。例えば、制御部１０６は、ユーザの手が閉じている場合と手が開いている場合とで異なる操作オブジェクトを表示させ得る。また、制御部１０６は、ポインティング操作が操作機器、例えばレーザポインタ等で行われる場合に操作オブジェクトの表示を変更してもよい。この場合、操作体の種別がユーザに示されることにより、ユーザは自身の意図に沿った操作状態であるかを把握することができ、利便性を向上させることが可能となる。
【０１９７】
また、制御部１０６は、ユーザが複数いる場合、ユーザ毎に異なる操作オブジェクトを表示させてもよい。この場合、複数ユーザの各々が自身の操作と他人の操作を区別することができ、利便性を向上させることが可能となる。
【０１９８】
また、上記の実施形態では、判定部１０４は、１つのポインティング位置の滞留に基づいて操作実行判定を行う例を説明したが、判定部１０４は、２以上のポインティング位置の滞留に基づいて操作実行判定を行ってもよい。具体的には、判定部１０４は、ユーザの一方の手および他方の手の各々に係るポインティング位置の滞留開始が判定される場合、そのポインティング位置の組合せに応じた操作の実行有無の判定を行う。例えば、ユーザは、一方の手によってメニューを表示させ、他方の手でメニューの選択を行う。この場合、ポインティング操作によって実行可能な操作が増加されることにより、利便性を向上させることが可能となる。
【０１９９】
また、上記の実施形態では、ポインティング操作のみが行われる例を説明したが、ポインティング操作と他のインターフェースを介して認識される操作とが組み合わせられてもよい。例えば、ポインティング操作と目線による操作または音声による操作等とが組合せられてもよい。この場合、ポインティング操作の複雑さを増大させることなく操作パターンが増加されることにより、操作性と利便性とを両立させることが可能となる。
【０２００】
また、上記の実施形態では、表示領域が矩形である例を説明したが、表示領域はその他の多角形、円形または楕円形等の様々な形状であってもよい。
【０２０１】
また、上記の実施形態では、情報処理装置１００は、投影部１０８を備える装置である例を説明したが、情報処理装置１００は、別体の投影装置と接続される情報処理装置であってもよい。例えば、情報処理装置１００は、検出部１０２、判定部１０４および制御部１０６を備えるサーバであってもよく、撮像装置２００および別体の投影装置に対して遠隔地に設置されてもよい。
【０２０２】
また、上記の実施形態では、ポインティング位置は、検出のタイミング毎の操作体の位置姿勢情報に基づいてそれぞれ直接的に検出される例を説明したが、ポインティング位置は、操作体の位置姿勢情報の変化に基づいて間接的に検出されてもよい。例えば、検出部１０２は、ポインティング位置が未検出である場合、上記の実施形態に係る処理によってポインティング位置を検出する。次いで、ポインティング位置が過去に検出されている場合、検出部１０２は、操作体の位置姿勢情報の変化および変化量を検出する。そして、操作体の位置姿勢情報が変化したと判定される場合、検出部１０２は、位置姿勢情報の変化量に基づいて、ポインティング位置を検出する。例えば、検出部１０２は、加速度センサまたは角速度センサ（ジャイロセンサ）等から操作体の位置姿勢情報を取得し、過去の位置姿勢情報からの変化を検出する。
【０２０３】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【０２０４】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、
前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、
を備え、
前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置。
（２）
前記制御部は、前記滞留時間が前記操作判定時間を経過する前に、前記滞留時間の増加に応じて前記操作位置に係る表示オブジェクトの表示を変更する、前記（１）に記載の情報処理装置。
（３）
前記形態情報は、前記ユーザの腕の伸び具合を示す、前記（１）または（２）に記載の情報処理装置。
（４）
前記判定部は、前記形態情報により示される前記ユーザの動作形態での前記操作の精度に基づいて前記操作判定時間を設定する、前記（１）〜（３）のいずれか一項に記載の情報処理装置。
（５）
前記判定部は、前記形態情報により示される前記ユーザの動作形態での前記操作の精度が高いほど、前記操作判定時間を短い時間に設定する、前記（４）に記載の情報処理装置。
（６）
前記制御部は、前記形態情報に基づき前記操作の精度を前記ユーザに知らせるための表示制御を行う、前記（１）〜（５）のいずれか一項に記載の情報処理装置。
（７）
前記制御部は、さらに前記操作位置とユーザの視線との関係に基づいて前記操作判定時間を設定する、前記（１）〜（６）のいずれか一項に記載の情報処理装置。
（８）
前記制御部は、さらに前記ユーザによる操作履歴情報に基づいて前記操作判定時間を設定する、前記（１）〜（７）のいずれか一項に記載の情報処理装置。
（９）
ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かをプロセッサにより判定することと、
前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行うことと、
前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定することと、
を含む、情報処理方法。
（１０）
コンピュータを、
ユーザが操作位置を指し示す操作において前記操作位置の滞留時間が操作判定時間を経過したか否かを判定する判定部と、
前記判定部により前記滞留時間が前記操作判定時間を経過したと判定された場合に、前記操作に対応する処理を行う制御部と、
を備え、
前記判定部は、前記ユーザの動作形態を示す形態情報に基づいて、前記操作判定時間を設定する、情報処理装置として機能させるための、プログラム。
【符号の説明】
【０２０５】
１        表示領域
１０      ポインティング位置
２０      アイコン
３０      カーソル
１００    情報処理装置
１０２    検出部
１０４    判定部
１０６    制御部
１０８    投影部
２００    撮像装置
【図１】
2018055708.tif 000003
【図２】
2018055708.tif 000004
【図３】
2018055708.tif 000005
【図４】
2018055708.tif 000006
【図５】
2018055708.tif 000007
【図６】
2018055708.tif 000008
【図７】
2018055708.tif 000009
【図８Ａ】
2018055708.tif 000010
【図８Ｂ】
2018055708.tif 000011
【図９】
2018055708.tif 000012
【図１０】
2018055708.tif 000013
【図１１】
2018055708.tif 000014
【図１２】
2018055708.tif 000015
【図１３】
2018055708.tif 000016
【図１４】
2018055708.tif 000017
【図１５】
2018055708.tif 000018
【図１６】
2018055708.tif 000019
【図１７Ａ】
2018055708.tif 000020
【図１７Ｂ】
2018055708.tif 000021
【図１７Ｃ】
2018055708.tif 000022
【図１８】
2018055708.tif 000023
【図１９】
2018055708.tif 000024
【図２０】
2018055708.tif 000025
【図２１】
2018055708.tif 000026
【図２２】
2018055708.tif 000027
【図２３】
2018055708.tif 000028