(57)【要約】【課題】空間を利用した多様な入力操作を実現することを目的とする。【解決手段】入力制御装置は、認識部と特定部と変更部とを備える。認識部は、表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識する。特定部は、前記認識部が認識した前記指示体の形状に割り当てられた操作を特定する。変更部は、前記特定部が特定した操作に応じて、前記操作を行う空間の大きさを変更する。【選択図】図６
2015210684.tif 000002
【特許請求の範囲】
【請求項１】
表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識する認識部と、
前記認識部が認識した前記指示体の形状に割り当てられた操作を特定する特定部と、
前記特定部が特定した操作に応じて、前記操作を行う空間の大きさを変更する変更部と、
を備える入力制御装置。
【請求項２】
前記操作は、前記指示体の形状または当該形状と前記指示体の動作との組み合わせに割り当てられている、
請求項１記載の入力制御装置。
【請求項３】
前記変更部は、前記表示部に表示されている前記操作対象を選択するときと、前記操作対象を操作するときとで前記操作を行う空間の大きさを変更する、
請求項１または２記載の入力制御装置。
【請求項４】
前記変更部は、前記操作対象の選択が可能な第１の空間から、選択された前記操作対象を固定する第２の空間に前記指示体が移動し、且つ前記指示体の形状が前記選択を行う形状から前記操作を行う形状に変化したことを前記認識部が認識したときに、前記操作に応じて前記第２の空間の大きさを変更する、
請求項３記載の入力制御装置。
【請求項５】
前記操作を行う空間の境界を表示する境界表示部、
を備える請求項１乃至４のうち何れか１項に記載の入力制御装置。
【請求項６】
前記変更部は、前記操作を行う空間の大きさを、前記表示部から前記操作を行うことが可能な空間の境界までの空間に変更する、
請求項１乃至５のうち何れか１項に記載の入力制御装置。
【請求項７】
前記操作対象に対する操作が可能な空間よりも狭く設定された空間を前記操作対象が越えた後に、前記指示体の移動量に対して前記操作対象の移動量を逐次的に減少させる移動量制御部、
を備える請求項１乃至６のうち何れか１項に記載の入力制御装置。
【請求項８】
表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識し、
認識した前記指示体の形状に割り当てられた操作を特定し、
特定した操作に応じて、前記操作を行う空間の大きさを変更する、
制御方法。
【請求項９】
表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識し、
認識した前記指示体の形状に割り当てられた操作を特定し、
特定した操作に応じて、前記操作を行う空間の大きさを変更する、
処理をコンピュータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力制御装置、制御方法および制御プログラムに関する。
【背景技術】
【０００２】
３次元空間を利用した入力操作手法の一例として、ユーザのジェスチャによる操作がある。例えば、ユーザのジェスチャに対応するコマンドが決定され、決定されたコマンドに基づいて、画面に表示される画像オブジェクトが操作される技術が提案されている。
【０００３】
また、グローブにセンサを取り付け、グローブの形状あるいは位置に応じて、所望の操作を指示する技術が提案されている。また、画面の前面に広がる３次元空間を３つの層に分けて、それぞれの層にマウスコマンドを割り当てている技術が提案されている（例えば、特許文献１〜３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１１−５１７３５７号公報
【特許文献２】特開平０６−１２１７７号公報
【特許文献３】特開２００４−３０３０００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
３次元空間を利用したジェスチャによる入力操作を行うときに、入力操作の種類が多様になると、操作を特定するジェスチャの種類も多くなる。このとき、入力操作を行うための３次元空間が固定されていると、多種類のジェスチャにより入力操作を行うことが難しくなる。その結果、多様な入力操作を実現することが難しくなる。
【０００６】
本発明は、１つの側面では、空間を利用した多様な入力操作を実現することを目的とする。
【課題を解決するための手段】
【０００７】
１つの態様では、入力制御装置は、認識部と特定部と変更部とを備える。認識部は、表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識する。特定部は、前記認識部が認識した前記指示体の形状に割り当てられた操作を特定する。変更部は、前記特定部が特定した操作に応じて、前記操作を行う空間の大きさを変更する。
【発明の効果】
【０００８】
１つの側面として、空間を利用した多様な入力操作を実現することができる。
【図面の簡単な説明】
【０００９】
【図１】入力操作を行うシステムの一例を示す図（その１）である。
【図２】入力操作を行うシステムの一例を示す図（その２）である。
【図３】入力操作を行うシステムの一例を示す図（その３）である。
【図４】入力操作を行うシステムの一例を示す図（その４）である。
【図５】処理装置のハードウェア構成の一例を示す図である。
【図６】処理装置の機能ブロックの一例を示す図である。
【図７】指示体の形状の一例を示す図である。
【図８】選択空間の一例を示す図である。
【図９】操作空間の一例を示す図である。
【図１０】指示体に割り当てられる操作の一例を示す図である。
【図１１】実施形態の処理の流れの一例を示すフローチャート（その１）である。
【図１２】実施形態の処理の流れの一例を示すフローチャート（その２）である。
【図１３】実施形態の処理の流れの一例を示すフローチャート（その３）である。
【図１４】実施形態の処理の流れの一例を示すフローチャート（その４）である。
【図１５】実施形態の処理の流れの一例を示すフローチャート（その５）である。
【図１６】表示面に表示されているオブジェクトの選択の一例である。
【図１７】操作可能空間を最大限に広げた場合の一例である。
【図１８】認識可能空間および操作可能空間の３次元モデルの一例である。
【図１９】実施形態の具体例を説明する図（その１）である。
【図２０】実施形態の具体例を説明する図（その２）である。
【図２１】実施形態の具体例を説明する図（その３）である。
【図２２】実施形態の具体例を説明する図（その４）である。
【図２３】実施形態の具体例を説明する図（その５）である。
【図２４】実施形態の具体例を説明する図（その６）である。
【図２５】実施形態の具体例を説明する図（その７）である。
【図２６】実施形態の具体例を説明する図（その８）である。
【図２７】第１の応用例を説明する図である。
【図２８】第２の応用例を説明する図である。
【図２９】第４の応用例を説明する図である。
【図３０】第５の応用例を説明する図である。
【図３１】第６の応用例を説明する図（その１）である。
【図３２】第６の応用例を説明する図（その２）である。
【図３３】第７の応用例を説明する図（その１）である。
【図３４】第７の応用例を説明する図（その２）である。
【図３５】第７の応用例を説明する図（その３）である。
【図３６】第７の応用例を説明する図（その４）である。
【図３７】第８の応用例を説明する図である。
【発明を実施するための形態】
【００１０】
＜情報入力操作を行うシステムの一例＞
以下、図面を参照して、実施形態について説明する。図１は、３次元空間を利用した情報入力を行うシステムの一例を示している。処理装置１は、３次元空間を利用したユーザの指示に応じて、所定の入力操作の処理を行う。処理装置１は、入力制御装置の一例である。
【００１１】
処理装置１は、プロジェクタ２に接続されている。プロジェクタ２は、表示面３に情報を投影する。プロジェクタ２は、表示装置の一例である。表示面３は、例えばスクリーン等を適用することができる。表示面３は、表示部の一例である。
【００１２】
プロジェクタ２と表示面３との間には、指示体４がある。処理装置１は、指示体４の形状や動作、位置等を検出して、指示体４に基づく入力操作を検出する。実施形態では、指示体４は、入力操作を行うユーザの手指である。ユーザは、指示体４を３次元空間で操作することにより、入力操作を行う。
【００１３】
センサ５は、指示体４を認識する。センサ５は、指示体４の位置や形状、動作等を認識する。センサ５としては、距離センサや深度センサ等を適用することができる。なお、センサ５の代わりにカメラを適用してもよい。
【００１４】
表示面３には、プロジェクタ２によりオブジェクト３Ａ〜３Ｆが表示されている。オブジェクト３Ａ〜３Ｆは、操作対象の一例である。オブジェクト３Ａ〜３Ｆとしては、例えばアイコン等がある。表示面３に表示されるオブジェクトの数は６つには限定されない。また、表示面３には、オブジェクト３Ａ〜３Ｆ以外の情報が表示されてもよい。
【００１５】
図２は、図１の構成に対して、センサ６を追加した例である。従って、図２の場合は、２台のセンサ５およびセンサ６を用いて、指示体４の位置や形状、動作等を認識できる。よって、ステレオカメラで指示体４の位置や形状、動作等が認識されるため、指示体４の認識精度が図１の場合よりも向上する。
【００１６】
図３は、表示面３がディスプレイの場合の一例について示している。ディスプレイは処理装置１に接続されており、表示面３には処理装置１の制御により、オブジェクト３Ａ〜３Ｆが表示される。図３の例では、プロジェクタ２は不要である。
【００１７】
図４は、表示面３がディスプレイであり、且つステレオセンサを有する場合の一例を示している。以下、情報入力操作を行うシステムとして、図１の構成を採用した場合について説明する。ただし、入力操作を行うシステムとしては、図２乃至図４の構成を採用してもよい。
【００１８】
次に、処理装置１のハードウェア構成の一例について説明する。図５の一例に示すように、処理装置１は、ＣＰＵ(Central Processing Unit）１１とＲＡＭ(Random Access Memory)１２とＧＰＵ(Graphics Processing Unit)１３と不揮発性メモリ１４と補助記憶装置１５と媒体接続装置１６と入出力インタフェース１７とを備えている。
【００１９】
ＣＰＵ１１またはＧＰＵ１３は、プロセッサのような任意の処理回路である。ＣＰＵ１１およびＧＰＵ１３は、ＲＡＭ１２に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態の処理を実現する制御プログラムを適用することができる。不揮発性メモリ１４は、例えばＲＯＭ(Read Only Memory)を適用することができる。
【００２０】
補助記憶装置１５は、任意の情報を記憶する。補助記憶装置１５としては、例えばハードディスクドライブを適用することができる。媒体接続装置１６は、可搬型記録媒体１８を接続することができる。
【００２１】
可搬型記録媒体１８としては、可搬型のメモリや光学式ディスク（例えば、ＣＤ（Compact Disk)やＤＶＤ（Digital Video Disk)等）を適用することができる。実施形態の処理を行う制御プログラムは、コンピュータ読み取り可能な可搬型記録媒体１８に記録されていてもよい。
【００２２】
ＲＡＭ１２等は、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。入出力インタフェース１７は、プロジェクタ２、センサ５、センサ６およびスピーカ１９と接続されている。スピーカ１９は、音を発生する装置である。
【００２３】
次に、図６を参照して、処理装置１の機能ブロックの一例を説明する。処理装置１は、指示体認識部２１と装置処理部２２と操作特定部２３と範囲変更部２４と表示制御部２５と移動量制御部２６と境界表示部２７とスピーカ制御部２８とを備えている。
【００２４】
センサ５は、指示体４をセンシングしている。指示体認識部２１は、センサ５がセンシングした結果に基づいて、指示体４の位置や形状、動作等を認識する。センサ５が常にセンシングしている場合、指示体認識部２１は、リアルタイムに指示体４の位置や形状、動作等を認識する。指示体認識部２１は、認識部の一例である。
【００２５】
装置処理部２２は、種々の制御を行う。装置処理部２２は、処理部の一例である。操作特定部２３は、指示体認識部２１が認識した指示体４の形状または形状と動作との組み合わせに基づいて、操作を特定する。操作特定部２３は、特定部の一例である。
【００２６】
指示体４の形状または形状と動作との組み合わせには予め操作が割り当てられており、操作特定部２３は、認識された指示体４の形状または形状と動作との組み合わせに割り当てられた操作を特定する。指示体４と操作との対応関係は、例えば、図５で示したＲＡＭ１２等に記憶されていてもよい。
【００２７】
範囲変更部２４は、操作特定部２３が特定した操作に応じて、指示体４が操作する空間の大きさを変更する。範囲変更部２４は、指示体４の操作に応じて、指示体４が操作する空間を広げる場合もあり、狭める場合もある。
【００２８】
表示制御部２５は、表示面３に種々の情報が表示されるように制御を行う。図１乃至図４の場合、表示制御部２５は、表示面３にオブジェクト３Ａ〜３Ｆを表示する制御を行う。境界表示部２７は、指示体４により情報入力操作を行うことが可能な空間（以下、操作可能空間と称する）を明示的に表示する制御を行う。
【００２９】
スピーカ制御部２８は、指示体４が操作可能空間の境界に位置したときに、音を発生するようにスピーカ１９を制御する。スピーカ１９が発生する音は、警告音の一種である。スピーカ制御部２８は、スピーカ（音源）を制御する音源制御部の一例である。
【００３０】
移動量制御部２６は、指示体４が操作するオブジェクトが操作可能空間の境界に近づいたときに、指示体４の移動量よりもオブジェクトの移動量が少なくするように制御する。以上の処理装置１の各部は、例えば、ＣＰＵ１１により実行されてもよい。
【００３１】
＜指示体の形状の一例＞
次に、指示体の形状の一例について、図７の一例を用いて説明する。指示体の形状には、主に選択形状と操作形状とがある。選択形状は、表示面３に表示されているオブジェクト３Ａ〜３Ｆを選択する形状である。操作形状は、操作に割り当てられた指示体４の形状である。
【００３２】
図７の例では、選択形状は、第１の形として示している。第１の形は、指示体４の人差し指を伸ばした形状である。指示体４のうち、選択および操作を行うときの基準となる点を指示点と称する。図７の例では、人差し指の先端が指示点となっている（図７において、十字の交差部分が指示点を示す）。なお、指示点は、人差し指の先端には限定されない。
【００３３】
図７の例では、操作形状は、第２の形から第６の形までの５つの形状がある。それぞれ指示体４の形状が異なっている。従って、実施形態では、操作形状の指示点は、指示体４の重心位置とする。
【００３４】
選択形状および操作形状は、図７に示した例には限定されない。第１の形は、図７の形状と異なる形状であってもよい。第２の形〜第６の形も、図７の形状と異なる形状であってもよい。また、操作形状の数は、５つ以外であってもよい。
【００３５】
＜指示体の変化に基づく操作範囲の変更の一例＞
図８は、表示面３を基準として、４つの空間を設定した一例を示している。図８に示す４つの空間は、表示面３に表示されている操作対象であるオブジェクトを選択するために設定される空間である。この空間は選択空間とも称される。図８では、ＸＹＺ座標系を用いて、４つの空間を示している。表示面３は、ＸＹ平面に平行な面であり、Ｚ軸上ではゼロの座標位置にあるものとする。
【００３６】
最初に、選択不能空間について説明する。選択不能空間は、指示体４が表示面３に表示されているオブジェクトを選択できない空間である。図８では、選択不能空間のＺ軸方向の距離を区間１として示している。区間１は、Ｚ軸方向において、閾値３よりも高い。指示体４が選択不能空間にあるときには、表示面３に対する選択を行うことはできない。
【００３７】
次に、選択可能空間について説明する。選択可能空間は、指示体４が表示面３に表示されているオブジェクトを選択することが可能な空間である。図８では、選択可能空間のＺ軸方向の距離を区間２として示している。区間２は、Ｚ軸方向において、閾値２と閾値３との間にある。選択可能空間は、第１の空間の一例である。
【００３８】
選択可能空間では、表示面３に表示されているオブジェクトを選択することができる。
指示体４の指示点を表示面３に投影した位置によりオブジェクトの選択が行われる。従って、指示体４が移動したことを指示体認識部２１が認識すると、指示体４の指示点を表示面３に投影した位置が変化する。
【００３９】
表示面３で、指示体４の指示点を投影した位置とオブジェクトの位置とが重なると、オブジェクトが選択される。ただし、選択可能空間では、オブジェクトの選択は決定されない。指示体４が移動することにより、選択されるオブジェクト３Ａ〜３Ｆは適宜変化する。オブジェクトが選択されると、表示制御部２５は、選択されたオブジェクトを強調する表示を行う。
【００４０】
次に、選択固定空間について説明する。選択固定空間は、選択可能空間で選択したオブジェクトの選択状態を固定するための空間である。選択状態の固定は、選択状態のロックとも称される。図８では、選択固定空間のＺ軸方向の距離を区間３として示している。区間３は、Ｚ軸方向において、閾値１と閾値２との間にある。選択固定空間は、第２の空間の一例である。
【００４１】
例えば、指示体４の指示点がオブジェクト３Ｃを選択したまま、指示体４の指示点が選択可能空間から選択固定空間に移動したことを指示体認識部２１が認識すると、選択されたオブジェクト３Ｃの選択が固定される。従って、オブジェクト３Ｃが選択された状態が固定される。
【００４２】
選択固定空間では、操作対象のオブジェクト３Ｃが選択されている。従って、指示体４が選択固定空間に位置しているときに、オブジェクト３Ｃに対する操作を行うことが可能になる。実施形態では、オブジェクトに対する選択を行う段階から、選択したオブジェクトに対する操作を行うとき段階に移行するときには、選択固定空間において、指示体４の形状が変化する。
【００４３】
次に、選択決定空間について説明する。選択決定空間は、選択されたオブジェクト３Ｃを決定する空間である。指示体４の指示点が、選択固定空間から選択決定空間に移動したことを指示体認識部２１が認識したときに、オブジェクト３Ｃの選択が決定される。
【００４４】
図８では、選択決定空間のＺ軸方向の距離を区間４として示している。区間４は、表示面３と閾値１との間にある。よって、選択決定空間は、表示面３に最も近い空間になる。以上の４つの空間は、装置処理部２２が予め設定してもよい。
【００４５】
装置処理部２２は、閾値１、閾値２および閾値３を予め設定することで、上記の４つの空間が設定される。装置処理部２２は、閾値１、閾値２および閾値３を任意の値に設定することができる。
【００４６】
図８の例では、指示体４は、選択固定空間に位置している。つまり、オブジェクトの選択が行われ、選択されたオブジェクトが固定された状態になっている。図８の例では、指示体４の形状は、オブジェクトの選択を行うために、指示体４の形状は選択形状（第１の形）になっている。
【００４７】
次に、選択が固定されたオブジェクトに対して行われる操作について、図９の一例を参照して説明する。図９の一例に示すように、指示体４の形状は、選択形状から操作形状（第２の形）に変化している。指示体認識部２１は、指示体４の形状が変化したことを認識する。指示体認識部２１が認識する指示体４の形状は、図９の例では、第２の形である。
【００４８】
このとき、指示体認識部２１が認識した指示体４の形状に基づいて、範囲変更部２４は、表示面３を基準とした空間の設定を変更する。この空間を操作空間と称する。図９の操作空間の例では、区間１は選択不能空間になっている。
【００４９】
区間２は、操作不能空間になっている。操作不能空間は、指示体４による操作が不能な空間である。区間３は、操作可能空間になっている。操作可能空間は、指示体４によるオブジェクト３Ｃに対する操作が可能な空間である。区間４は、区間２と同様、操作不能空間になっている。区間４においても、指示体４に指示体４による操作は不能である。
【００５０】
範囲変更部２４は、操作可能空間の設定を拡大する。このため、範囲変更部２４は、区間２および区間４の空間設定を縮小する。つまり、指示体認識部２１が指示体４の形状が、第２の形であることを認識したことにより、範囲変更部２４は、区間１〜区間４を第２の形に割り当てられた操作に応じた３次元の範囲（空間）に設定変更する。
【００５１】
実施形態では、オブジェクトを移動する操作と拡大または縮小する操作とが第２の形に割り当てられているとする。指示体４が第２の形のまま水平方向に移動すると、指示体認識部２１は指示体４の動作を認識して、表示制御部２５が表示面３のオブジェクト３Ｃを水平方向に移動するように制御する。
【００５２】
また、指示体４が第２の形のまま垂直方向に移動すると、指示体認識部２１は指示体４の動作を認識して、表示制御部２５が表示面３のオブジェクト３Ｃを拡大または縮小するように制御する。
【００５３】
従って、指示体４が垂直方向に移動することにより、選択が固定されたオブジェクト３Ｃの拡大または縮小の操作が行われる。このため、拡大または縮小の操作を行うための十分な空間を垂直方向に確保することが好ましい。
【００５４】
指示体認識部２１が第２の形を認識したときには、範囲変更部２４は、第２の形に応じた広範な空間を操作可能空間として設定する。これにより、指示体４が移動する広範囲な空間を確保することができる。
【００５５】
つまり、指示体認識部２１が認識した指示体４の形状に応じて、範囲変更部２４は操作可能空間の大きさを変更する。例えば、操作で必要な移動量が微細な場合には、範囲変更部２４は操作可能空間を狭い空間に設定してもよい。
【００５６】
従って、指示体４の形状に割り当てられた操作に適した空間に操作可能空間の大きさが変更される。これにより、多様な入力操作を実現することが可能になり、空間を利用した多様な入力操作を実現することが可能になる。
【００５７】
＜指示体に割り当てられる操作の一例＞
図１０は、指示体４に割り当てられる操作の一例を示す。図１０の例１および例２に示されるように、指示体４の形状と動作との組み合わせに操作が割り当てられている。図１０の例１は、垂直方向（Ｚ軸方向）に操作を割り当てる例を示しており、例２は、垂直方向に操作を割り当てない例を示している。
【００５８】
図１０の例では、１つの指示体４の形状に１つの操作が割り当てられている場合もあり、指示体４の形状と動作との組み合わせに１つの操作が割り当てられている場合もある。例えば、例１では、指示体４が第２の形の形状と動作（水平面内移動または垂直方向移動）との組み合わせに対して異なる操作が割り当てられている。一方、縦横比独立の拡大または縮小の操作には、動作にかかわらず、第３の形が割り当てられている。
【００５９】
図１０の例１および例２の両者とも、表示面３の位置指定およびオブジェクト指定は、第１の形が割り当てられている。つまり、位置指定およびオブジェクト指定は、指示体４が選択形状のときに行われる。
【００６０】
例えば、例１の場合、選択固定空間において、指示体４の形状が第２の形に変化したことを指示体認識部２１が認識したときに、操作特定部２３は、オブジェクト３Ｃの移動操作であるか、または縦横比を固定したオブジェクト３Ｃの拡大または縮小の操作であることを認識する。
【００６１】
そして、指示体４が第２の形のまま水平方向に移動したことを指示体認識部２１が認識したときに、操作特定部２３は、指示体４の操作はオブジェクト３Ｃの移動操作であることを特定する。これにより、表示制御部２５は、表示面３に表示するオブジェクト３Ｃを移動させる。
【００６２】
一方、例２の場合において、指示体認識部２１は、指示体４が第３の形で水平面内を斜めに移動したことを認識したとする。このとき、操作特定部２３は、割り当てられた操作である、縦横比固定の拡大または縮小をオブジェクト３Ａに対して行う。
【００６３】
例１の場合は、垂直方向に操作が割り当てられているため、指示体４を第２の形のまま垂直方向に移動させることで、オブジェクト３Ａの拡大または縮小を行うことができる。一方、例２の場合は、垂直方向に操作が割り当てられていないため、指示体４を第３の形に変化させることで、オブジェクト３Ａの拡大または縮小を行うことができる。
【００６４】
図１０の例において、「操作状態維持」は、指示体４が直前の形と操作とを維持したまま、指示体４を移動可能な操作であることを示している。また、「操作キャンセル」は、指示体４により操作中の操作を操作開始前の状態に戻す操作であることを示している。
【００６５】
＜実施形態の処理の一例＞
次に、図１１乃至図１５に一例として示すフローチャートを参照して、実施形態の処理について説明する。最初に、図１１のフローチャートについて説明する。表示制御部２５は、表示面３に情報を表示する（ステップＳ１）。例えば、表示制御部２５がプロジェクタ２を制御して、表示面３に所定の情報を表示する。実施形態では、表示面３にオブジェクト３Ａ〜３Ｆが表示されるようにプロジェクタ２を制御する。
【００６６】
次に、処理装置１は、センサ５からの情報に基づいて、表示面３の位置および形状の認識を行う（ステップＳ２）。なお、表示面３の位置および形状の認識が既に行われている場合は、ステップＳ２は省略することができる。
【００６７】
指示体認識部２１は、センサ５からの情報に基づいて、指示体４の形状を認識する（ステップＳ３）。初期的には、指示体４は、操作対象であるオブジェクトを選択するための形状（第１の形）をしている。以下、オブジェクトを選択するための形状を選択形状と称することもある。
【００６８】
指示体認識部２１は、認識した形状が第１の形であるか否かを判定する（ステップＳ３−２）。認識した形状が第１の形の場合（ステップＳ３−２でＹＥＳ）、処理は次のステップＳ４に進む。一方、認識した形状が第１の形でない場合（ステップＳ３−２でＮＯ）、処理はステップＳ７に進む。
【００６９】
装置処理部２２は、図８で一例として示したような空間設定を行う。装置処理部２２は、ステップＳ３で認識した指示体の形状に対応する空間を設定する（ステップＳ４）。そして、指示体４は第１の形をしているため、指示体認識部２１は、指示点を人差し指の指先に設定する（ステップＳ５）。指示点は、操作基準位置と称することもできる。
【００７０】
次に、指示体認識部２１は、指示点の位置が区間１（選択不能空間）または操作可能領域外であるか否かを判定する（ステップＳ６）。実施形態では、表示制御部２５は、表示面３を基準とした３次元空間における指示点の位置を表示面３に投影して表示する。ただし、指示点の位置が区間１または操作可能領域外にある場合（ステップＳ６でＹＥＳ）、指示体４による操作対象であるオブジェクトを選択できない。このため、実施形態では、表示制御部２５は、指示点の位置を表示面３に投影して表示しない（ステップＳ７）。
【００７１】
一方、指示点の位置が区間１でない場合、処理は「Ａ」に進む。図１２に一例として示すフローチャートを参照して、次の処理について説明する。指示体認識部２１は、指示点の位置が区間２（選択可能空間）であるか否かを判定する（ステップＳ８）。
【００７２】
指示点の位置が区間２にある場合（ステップＳ８でＹＥＳ）、表示制御部２５は、指示体の水平方向の位置と高さに応じたカーソルを表示する（ステップＳ９）。指示体認識部２１は、指示体４の水平方向の位置を認識する。ユーザは、指示体４を水平方向に移動することで、所望のオブジェクトの位置に指示点を移動させる。
【００７３】
指示体認識部２１が認識する指示点の水平面上における位置が表示面３に表示されているオブジェクト３Ａ〜３ＦのＸＹ座標と重なったときに、指示点が示す水平方向に応じたオブジェクトが選択される（ステップＳ１０）。実施形態では、表示制御部２５は、選択されたオブジェクトを強調表示する制御を行う。
【００７４】
ステップＳ１０において、オブジェクトが選択される。ただし、この時点で、オブジェクトの選択は決定されない。従って、指示体４の指示点の位置が別のオブジェクトの位置に移動した場合には、別のオブジェクトが選択される。指示体認識部２１は、指示体４が操作可能領域の範囲外に移動したか否かを判定する（ステップＳ１１）。操作可能領域は、センサ５が指示体４を認識して操作できる空間である。
【００７５】
指示体４が操作可能領域の範囲外に移動した場合（ステップＳ１１でＹＥＳ）、選択されたオブジェクトの選択解除が行われる（ステップＳ１２）。なお、指示体４が選択不能空間に移動した場合にも、選択されたオブジェクトの選択解除が行われてもよい。一方、指示体４が認識可能空間の範囲外に移動していない場合（ステップＳ１１でＮＯ）、選択されたオブジェクトの選択解除は行われない。
【００７６】
ステップＳ１１でＮＯの場合、またはステップＳ１２の処理が終了した場合、処理は「Ｃ」に進む。「Ｃ」に処理が進んだ場合、図１１のフローチャートの例に示すように、処理はステップＳ１に進む。
【００７７】
また、ステップＳ８において、指示体４の指示点が区間２に位置していない場合（ステップＳ８でＮＯ）、処理は「Ｂ」に進む。「Ｂ」以降の処理について、図１３のフローチャートを用いて説明する。
【００７８】
指示体認識部２１は、指示体４の指示点が区間３に位置しているか否かを判定する（ステップＳ１３）。指示体４の指示点が区間３に位置している場合（ステップＳ１３でＹＥＳ）、指示体認識部２１は、指示体４の指示点が区間２から区間３に移動したか否かを判定する（ステップＳ１４）。
【００７９】
つまり、ステップＳ１４では、指示体４の指示点が選択可能空間から選択固定空間に移動したか否かが判定される。選択可能空間では、指示体４の指示点により、所望のオブジェクトが選択される。そして、指示体４の指示点が選択可能空間から選択固定空間に移動された場合（ステップＳ１４でＹＥＳ）、選択中のオブジェクトが固定される（ステップＳ１５）。
【００８０】
これにより、操作対象であるオブジェクトが特定される。一方、指示体４の指示点が前状態から選択固定空間にある場合（ステップＳ１４でＮＯ）、指示体認識部２１は、指示体４の形状を認識する（ステップＳ１５−２）。指示体認識部２１は、指示体の形状が予め定義された形状であるか否かを認識する（ステップＳ１６）。指示体４の形状が不明であるか否かは、指示体４の形状に割り当てられている操作が特定できるか否かに基づいて、判定することができる。
【００８１】
操作対象であるオブジェクトに対する各操作は、指示体４の形状または指示体４の形状と動作との組み合わせに割り当てられている。従って、操作特定部２３は、指示体認識部２１が認識した指示体４の形状により操作を特定できないとき、指示体４の形状が不明であると判定される。例えば、指示体４を第１の形から第２の形に変化させている途中段階では、指示体４の形状に基づいて、操作特定部２３は操作を特定できない。
【００８２】
操作特定部２３は、操作が特定できない状態が一定時間以上連続しているか否かを判定する（ステップＳ１６−２）。操作が特定できない状態が一定時間以上連続していない場合、処理はステップＳ１５−２に進む。一方、操作が特定できない状態が一定時間以上連続している場合、処理は「Ｃ」へ進む。
【００８３】
次に、指示体認識部２１は、認識した指示体４の形状が第１の形であるか否かを判定する（ステップＳ１６−３）。認識した指示体４の形状が第１の形の場合（ステップＳ１６−３でＹＥＳ）、処理はステップＳ１８−２に進む。
【００８４】
一方、指示体認識部２１が認識した指示体４の形状または形状と動作との組み合わせに基づいて、操作特定部２３は操作を特定する。そして、範囲変更部２４は、操作特定部２３が特定した操作に応じた操作可能空間を設定する（ステップＳ１７）。上述したように、操作によっては、図９で一例として示した操作可能空間が広範に必要な場合もあり、狭小に設定する方が好ましい場合もある。このため、範囲変更部２４は、操作可能空間の設定を操作に応じた範囲に変更する。
【００８５】
次に、指示体認識部２１は、指示点を指示体４の重心位置に設定する（ステップＳ１８）。選択形状では、オブジェクトを選択するため、指先を指示点としていた。一方、操作形状では、指示体４は種々の形状に変化する。例えば、図７で一例として示した第４の形では、指先は折り畳まれている状態になっている。
【００８６】
そこで、操作形状では、指示体認識部２１は、指示点を指示体４の重心位置に設定する。これにより、指示体４がどのような形に変化したとしても、指示体認識部２１は、安定的に指示点の認識を行うことが可能になる。
【００８７】
次に、指示点の位置により、指示体４の形状に対応付けられた操作を実行する（ステップＳ１８−２）。指示体認識部２１は、指示体４が操作可能空間から操作可能領域の範囲外に移動したか否かを判定する（ステップＳ１９）。指示体４が操作可能空間から移動していないことを指示体認識部２１が判定したときには（ステップＳ１９でＮＯ）、処理は「Ｅ」に進む。
【００８８】
一方、指示体４が操作可能空間から操作可能領域外に移動したことを指示体認識部２１が認識した場合（ステップＳ１９でＹＥＳ）、指示体認識部２１は、指示体４を再認識した際に、指示体４が操作可能領域の領域外から区間３に移動し、且つ最終形状と同じであるか否かを判定する（ステップＳ２０）。
【００８９】
指示体４が、区間３（操作可能空間）の範囲外に移動したとしても、指示体４が操作可能空間の範囲外に移動したときの形状（最終形状）と同じ形状で戻った場合（ステップＳ２０でＹＥＳ）、ステップＳ１８−２に処理が戻る。このとき、指示体４の最終形状に割り当てられた操作は有効にされる。一方、ステップＳ２０でＮＯと判定された場合には、選択固定しているオブジェクトの選択を解除し（ステップＳ２１）、処理は「Ｃ」に進む。つまり、図１１のフローチャートのステップＳ１に処理が移る。
【００９０】
次に、ステップＳ２０に続行する「Ｅ」の処理について、図１４のフローチャートを参照して、説明する。指示体認識部２１は、指示体４の指示点が区間３に位置しているか否かを判定する（ステップＳ２２）。つまり、指示体４の指示点が操作可能空間に継続的に位置しているか否かが判定される。
【００９１】
指示体４の指示点が区間３に位置していると判定されたとき（ステップＳ２２でＹＥＳ）、指示体認識部２１は指示体４の形状が変化しているか否かを判定する（ステップＳ２３）。
【００９２】
指示体４の形状が変化していないと指示体認識部２１が判定した場合（ステップＳ２３でＮＯ）、処理は「Ｆ」から図１３のステップＳ１８−２に進む。つまり、指示体４の形状または形状と動作との組み合わせに割り当てられた操作が続行される。
【００９３】
一方、指示体４の形状が変化したと指示体認識部２１が判定した場合（ステップＳ２３でＹＥＳ）、指示体認識部２１は、指示体の形状が第１の形以外の定義された形から第１の形に変化したか否かを判定する（ステップＳ２３−２）。指示体４の形状が形１以外の定義された形状から、形１に変化した場合は（ステップ２３−２でＹＥＳ）、操作が確定される（ステップＳ２６）。そして、処理「Ｈ」からステップＳ１５−２に進む。
【００９４】
その他の形状変化の場合には、操作はキャンセルされる（ステップＳ２４）。指示体４の形状が変化すると、操作は変化するため、指示体４の形状が変化したと認識されたときには、操作がキャンセルされる。
【００９５】
指示体認識部２１は、指示体４の指示点が区間３に位置していないと判定した場合（ステップＳ２２でＮＯ）、指示体４の形状が第１の形であるか否かを判定する（ステップＳ２２−２）。指示体４の形状が第１の形であると認識された場合、指示点が区間２に移動したか否かが判定される（ステップＳ２５）。
【００９６】
指示点が区間２に移動したと判定した場合（ステップＳ２５でＹＥＳ）、指示点が選択可能空間に移動し、再選択が可能な状態になったことになる。よって、処理は「Ｇ」からステップＳ８−２に移行し、オブジェクトが選択可能な状態になる。ステップＳ２２−２でＮＯの場合、操作可能空間から外れたということになる。よって、処理はステップＳ２４に移行し、決定された操作がキャンセルされる。
【００９７】
一方、指示体４の指示点が区間２に移動していない場合（ステップＳ２５でＮＯ）、指示体の形状が第１の形で、指示点は区間３に位置しておらず、且つ区間２にも移動していなことになる。この場合、指示体４は区間４に位置していることになり、処理は「Ｄ」に進む。つまり、後述するステップＳ２７が実行される。
【００９８】
図１３のステップＳ１３において、指示体４の指示点が区間３に位置していないと判定された場合（ステップＳ１３でＮＯ）、処理は「Ｄ」に進む。ステップＳ１３でＮＯと判定されたときには、指示体４の指示点が区間１、区間２および区間３の何れにも位置していない。
【００９９】
よって、この場合、指示体４の指示点は区間４に位置している。指示体４の指示点が区間４に位置することにより、図１５の一例に示すように、ステップＳ２７で確定されたオブジェクトに対する操作が実行される（ステップＳ２７）。そして、処理は「Ｃ」からステップＳ１に移行する。
【０１００】
以上により、オブジェクトを選択し、選択されたオブジェクトに対する操作が実行される。オブジェクトの選択および選択されたオブジェクトに対する操作の処理は、図１１乃至図１５に示したフローチャートの例には限定されない。
【０１０１】
＜オブジェクトの選択の一例＞
次に、表示面３に表示されているオブジェクトの選択の一例について、図１６を参照して説明する。指示体４が、表示面３を基準として最も遠い空間である選択不能空間にあるときは、表示制御部２５はオブジェクト３Ａ〜３Ｆの表示を変更しない。その一例を図１６（Ａ）に示す。
【０１０２】
実施形態では、表示制御部２５は、指示体認識部２１が認識した指示体４の指示点を表示面に投影した位置にカーソルを表示する。なお、指示点の表示面３の投影位置を認識できれば、表示制御部２５は、カーソル以外を表示してもよい。図１６の一例では、指示体４が選択可能空間にあることを指示体認識部２１が認識したとき、表示制御部２５は、第１カーソルＣ１を表示面３に表示する。
【０１０３】
図１６（Ｂ）の例は、第１カーソルＣ１とオブジェクト３Ｅとが重なった状態を示している。この場合、表示制御部２５は、オブジェクト３Ｅを強調表示する。指示体４が選択可能空間にあるときには、オブジェクトの選択は確定されない。
【０１０４】
従って、指示体４の位置が移動したことを指示体認識部２１が認識したとき、異なるオブジェクトが選択される。図１６（Ｃ）の例は、指示体４は、オブジェクト３Ｃを選択した場合を示している。このため、指示体４が水平方向に移動されることにより、任意のオブジェクト３Ａ〜３Ｆを選択することができる。
【０１０５】
指示体４が選択可能空間から選択固定空間に移動したとことを指示体認識部２１が認識したときには、表示制御部２５は、第２カーソルＣ２を表示する。第２カーソルＣ２は、３次元空間における指示体４の位置を表示面３に投影した位置に表示される。
【０１０６】
図１６の例では、表示制御部２５は、第１カーソルＣ１と第２カーソルＣ２とを異なる態様で表示する。これにより、表示面３に表示されるカーソルが、指示体４が選択可能空間にあるときの第１カーソルＣ１であるか、指示体４が選択固定空間にあるときの第２カーソルＣ２であるか、が明確に区別される。
【０１０７】
図１６（Ｄ）の例で、指示体４は、オブジェクト３Ｅを選択した状態で、選択可能空間から選択固定空間に移動したものとする。従って、オブジェクト３Ｅの選択が固定される。このため、図１６（Ｅ）のように、指示体４の移動に伴い、第２カーソルＣ２が水平方向に移動したとしても、オブジェクト３Ｅの選択は固定されている。表示制御部２５は、選択を固定したオブジェクト３Ｅを強調表示する。
【０１０８】
図１６（Ｆ）は、指示体４が選択決定空間に移動した場合の一例を示している。指示体４が選択固定空間から選択決定空間に移動したときに、オブジェクト３Ｅの選択が確定する。表示制御部２５は、選択が確定したオブジェクト３Ｅを強調表示する。
【０１０９】
表示制御部２５は、指示体４が選択可能空間と選択固定空間と選択決定空間とにあるときとでオブジェクトの強調表示の態様を変化させている。オブジェクトの強調表示を空間ごとに変化させることで、指示体４が何れの空間があるかが明確になる。
【０１１０】
＜操作可能空間を最大限に広げた場合の一例＞
図１７は、操作可能空間を最大限に広げた場合の一例を示している。図１７の例では、Ｚ軸上における閾値１の座標は、表示面３と同じである。また、Ｚ軸上における閾値２の座標は、閾値３と同じである。
【０１１１】
これにより、選択不能空間と表示面３との間の広範な空間を操作可能空間に設定できる。例えば、水平方向および垂直方向に大きな動作が必要な操作の場合、操作可能空間を最大限に広げることにより、ダイナミックな動きを行うことができる。
【０１１２】
＜認識可能空間および操作可能空間の３次元モデルの一例＞
図１８は、認識可能空間および操作可能空間の３次元モデルの一例を示している。認識可能空間は、センサ５（ステレオセンサの場合は、センサ５およびセンサ６）により認識可能な空間を示している。操作可能空間は、認識可能空間よりも狭小な空間となっている。
【０１１３】
＜具体例＞
次に、具体例について説明する。図１９は、指示体４が選択形状（第１の形）をしている状態で、選択可能空間に位置している例を示している。指示体４の指示点を表示面３に投影した位置は、オブジェクト３Ｅと重なっている。従って、オブジェクト３Ｅは強調表示されている。
【０１１４】
実施形態では、第１カーソルＣ１は、円と十字とを組み合わせたシンボルになっている。実施形態では、第１カーソルＣ１の大きさを、表示面３を基準とした位置に応じて変化させる。図１９の例では、選択可能空間のうち、指示体４の指示点は、表示面３から遠い位置にある。このため、第１カーソルＣ１の円は大きくなっている。
【０１１５】
図２０は、選択可能空間において、指示体４が表示面３に近づいた場合を示している。この場合、表示制御部２５は、第１カーソルＣ１の円を小さく表示する。これにより、選択可能空間において、指示体４の指示点と表示面３との距離関係が認識可能に表示される。
【０１１６】
図２１は、指示体４が選択可能空間から選択固定空間に移動した場合の例を示している。指示体認識部２１は、指示体４の指示点が選択固定空間にあることを認識する。これにより、表示制御部２５は、オブジェクト３Ｅを強調表示する。また、表示制御部２５は、指示体４の指示点の表示面３の位置に第２カーソルＣ２を表示する。これにより、オブジェクト３Ｅの選択が固定される。
【０１１７】
図２２は、指示体４が選択固定空間から選択決定空間に移動した場合の例を示している。指示体認識部２１は、指示体４の指示点が選択決定空間にあることを認識する。これにより、表示制御部２５は、選択固定されたオブジェクト３Ｅを強調表示する。また、表示制御部２５は、指示体４の指示点の表示面の位置に第３カーソルＣ３を表示する。
【０１１８】
第３カーソルＣ３は、指示体４が選択決定空間にあることを示すカーソルである。第３カーソルＣ３は、第１カーソルＣ１および第２カーソルＣ２とは異なる態様で表示される。これにより、指示体４が選択決定空間にあることが明確になる。指示体４が選択固定空間から選択決定空間に移動したことにより、オブジェクト３Ｅの選択が確定し、オブジェクト３Ｅに割り当てられた機能を実行する。
【０１１９】
図２３は、オブジェクト３Ｅを水平方向に移動する操作の一例を示す。オブジェクト３Ｅに対する操作を行うときには、選択固定空間（区間３）において、指示体４の形状は、第１の形から変化する。図２３の例では、指示体４の形状は、第２の形に変化している。
【０１２０】
指示体認識部２１は、指示体４の形状が第１の形から第２の形に変化したことを認識する。これにより、範囲変更部２４は、操作可能空間（区間３）の大きさを、第２の形の操作に応じて拡大または縮小する。図２３の例では、操作可能空間は拡大されている。
【０１２１】
指示体４の形状が第２の形であり、且つ指示体４が水平方向に移動する動作を行ったときに、オブジェクト３Ｅは水平方向に移動する。また、指示体４の形状が第３の形であり、且つ指示体４が垂直方向に移動する動作を行ったときに、オブジェクト３Ｅは拡大または縮小する。
【０１２２】
従って、指示体認識部２１は、指示体４の形状が第２の形に変化したときには、指示体４が垂直方向に移動する動作を行うことが可能な空間を十分な空間を確保できるように、範囲変更部２４は操作可能空間を拡大する。
【０１２３】
操作特定部２３は、指示体４の形状が第２の形であり、且つ指示体４が水平方向に移動する動作を行ったことを認識した場合には、オブジェクト３Ｅを水平方向に移動する。これにより、表示制御部２５は、指示体４の移動に応じて、オブジェクト３Ｅを表示面３上で移動させる。
【０１２４】
図２４は、オブジェクト３Ｅを拡大する操作の一例を示している。指示体４の形状が第２の形であり、且つ指示体４は垂直方向に移動する動作を行ったことを指示体認識部２１が認識する。これにより、操作特定部２３は、オブジェクト３Ｅを拡大または縮小する操作を特定する。
【０１２５】
指示体４が垂直方向に移動したときに、オブジェクト３Ｅの拡大または縮小の操作が行われる。このため、指示体４の第２の形に割り当てられた操作に応じて、操作可能空間が大きくなっているため、オブジェクト３Ｅの拡大または縮小の操作のための空間を十分に確保することができる。
【０１２６】
図２５は、オブジェクト３Ｅを回転する操作の一例を示している。指示体４の形状が第５の形であり、水平面内で指示体４が回転したことを指示体認識部２１が認識した場合、表示制御部２５は、表示面３に表示されているオブジェクト３Ｅを回転させる。
【０１２７】
例えば、指示体４の第５の形が高速に水平面内で回転した場合、そのことを指示体認識部２１が認識して、表示制御部２５は、表示面３に表示されているオブジェクト３Ｅを高速に回転させてもよい。
【０１２８】
上述した各種操作が行われると、最終的に操作を確定する。上述したフローチャートの例では、指示体４の形状で操作を変化させることで、指示体認識部２１が認識したことにより、操作が確定する。図２６は、その一例を示している。オブジェクト３Ｅに対して行った操作を確定する操作を指示体４の形状に割り当てることができる。例えば、図２６の一例に示すように、指示体４が第６の形になったことを指示体認識部２１が認識したときに、操作の確定を行ってもよい。これにより、オブジェクト３Ｅに対する回転操作が確定する。
【０１２９】
一方、指示体４の指示点が区間４に移動することで操作を確定させるようにしてもよい。オブジェクト３Ｅに対して行った操作を確定する操作を指示体４の形状に割り当てることができる。
【０１３０】
従って、範囲変更部２４は、指示体４の形状または形状と操作との組み合わせに割り当てられた操作に応じて、操作可能空間を変更することで、操作の種類に適した３次元空間を確保することができる。これにより、多様な入力操作を実現することができる。
【０１３１】
また、指示体４の指示点は、選択可能空間に位置しているときに決定されない。指示体４の指示点が選択可能空間でオブジェクトを選択し、選択固定空間でオブジェクトの選択が固定されたときに、オブジェクトが選択される。このため、正確な指示位置でオブジェクトの選択を行うことができる。
【０１３２】
＜第１の応用例＞
次に、図２７を参照して、第１の応用例について説明する。図２７（Ａ）は、表示面３に表示されているオブジェクト３Ａおよび３Ｂの一例を示している。また、図２７（Ａ）には、第１の領域と第２の領域とが示されている。第１の領域および第２の領域を示す情報は表示面３には表示されない。ただし、当該情報は表示されてもよい。第２の領域は第１の領域よりも狭い領域になっている。
【０１３３】
第１の領域は、指示体４によるオブジェクトの操作が可能な空間である。第１の領域を超えて、指示体４による操作を行うことはできない。第２の領域は、第１の領域よりも狭い空間に設定される。第２の領域の内側では、指示体４によるオブジェクトの操作が可能である。
【０１３４】
第１の応用例は、オブジェクト３Ａおよびオブジェクト３Ｂを移動する操作を行う例を示している。従って、指示体４の形状は、第２の形となっている。ユーザは、指示体４を第２の形のまま、選択されたオブジェクト３Ａまたは３Ｂを移動する。
【０１３５】
第２の領域の内側にあるオブジェクトは、指示体認識部２１が認識する指示体４の移動量に適した移動量で移動する。つまり、第２の領域の内側では、指示体４の移動速度に応じた速度でオブジェクトが表示面３上を移動する。
【０１３６】
一方、オブジェクトが第２の領域と第１の領域との間に移動すると、指示体４の移動量に対してオブジェクトの移動量は逐次的に遅くなる。そして、オブジェクトが第１の領域の境界に到達すると、オブジェクトの操作が不能になる。
【０１３７】
従って、図２７（Ａ）のオブジェクト３Ｂは、指示体４の移動速度と比べて、遅い速度で移動する。そして、オブジェクト３Ｂの移動速度は逐次的に減少し、オブジェクト３Ｂが第１の領域に到達した時点で、オブジェクト３Ｂに対する操作が不能になる。
【０１３８】
図２７（Ｂ）は、第１の領域と第２の領域との間におけるオブジェクト移動量の一例を示している。オブジェクトが第２の領域の境界に到達するまでは、指示体４の移動速度に適した速度でオブジェクトは移動する。一方、オブジェクトが第２の境界を越えると、移動量が逐次的に減少する。そして、第１の領域に到達すると、移動量はゼロになる。
【０１３９】
従って、オブジェクトが第２の領域を超えると、指示体４の移動量に対して、オブジェクトの移動量が逐次的に減少するため、ユーザは、移動量の減少に基づいて、オブジェクトの操作可能な領域の境界に近づいていることを認識することができる。つまり、ユーザは、オブジェクトの移動量に基づいて、操作可能な領域を認識できる。
【０１４０】
＜第２の応用例＞
次に、図２８を参照して、第２の応用例について説明する。図２８は、指示体４が第１の領域の境界に位置している場合を示している。つまり、指示体４は、操作可能な領域の境界に位置している。なお、第２の応用例も、オブジェクトに対する操作が行われるものとする。従って、指示体４の形状は操作形状になっている。
【０１４１】
指示体認識部２１は、指示体４の位置を認識する。境界表示部２７は、指示体認識部２１が認識した位置に対して、境界を示す映像を投影するように、プロジェクタ２を制御する。図２８の例では、プロジェクタ２は、指示体４に対して、楕円形の映像Ｐを投影している。
【０１４２】
図２８は、楕円形の映像Ｐのうち、第１の領域の内側の部分と外側の部分とでは異なる色で、プロジェクタ２は映像Ｐを投影している例を示している。これにより、第１の領域の境界を認識することができる。
【０１４３】
図２８の例では、映像Ｐは楕円形の例を示したが、映像Ｐは楕円形には限定されない。例えば、投影される映像Ｐは円形や四角形等であってもよい。また、図２８の例では、映像Ｐのうち、第１の領域の内側と外側とで異なる色の例を説明したが、一方を点滅、他方を非点滅とするようにしてもよい。
【０１４４】
また、図２８の例では、映像Ｐのうち第１の領域の内側と外側とで表示態様を異ならせているが、表示態様を異ならせなくてもよい。この場合、第１の領域の境界は明示されないが、ユーザは、指示体４が操作可能な領域の境界近傍にあることを認識することができる。
【０１４５】
＜第３の応用例＞
次に、第３の応用例について説明する。第３の応用例でも、指示体４の形状は操作形状になっているものとする。指示体認識部２１は、指示体４が第１の領域の境界に位置したことを認識したときに、スピーカ制御部２８にその旨を通知する。スピーカ制御部２８は、この通知に基づいて、スピーカ１９を制御して、音を発生させる。これにより、ユーザは、指示体４が操作可能な領域の境界にあることを認識することができる。
【０１４６】
＜第４の応用例＞
次に、図２９を参照して、第４の応用例について説明する。図２９は、指示体４の形状および動作に割り当てられる操作の一例を示している。オブジェクトを選択する選択形状は、第１の形である。選択されたオブジェクトに対する操作を行う操作形状は、第２の形〜第４の形である。
【０１４７】
オブジェクトに対する移動操作と拡大または縮小を行う操作と回転操作とは第２の形に割り当てられている。これら３つの操作は、指示体４が第２の形をしているときに、指示体４の動作によって区別がされる。
【０１４８】
指示体４が第２の形のまま水平面内を移動したことを指示体認識部２１が認識したときに、操作特定部２３はオブジェクトの移動操作であることを特定する。指示体４が第２の形のまま垂直方向に移動したことを指示体認識部２１が認識したときに、操作特定部２３はオブジェクトの拡大または縮小操作であることを特定する。指示体４が第２の形のまま水平面内で回転したことを指示体認識部２１が認識したときに、操作特定部２３はオブジェクトの回転操作であることを特定する。
【０１４９】
そして、例１の場合、指示体４の形状が第１の形になったことを指示体認識部２１が認識したときに、操作特定部２３は、操作確定であることを特定する。また、指示体４の形状が第４の形になったことを指示体認識部２１が認識したときに、操作特定部２３は、操作キャンセルであることを特定する。
【０１５０】
以上のように、操作形状において、オブジェクトに対する各種操作と操作確定と操作キャンセルとに異なる指示体４の形状が割り当てられてもよい。これにより、オブジェクトに対する各種操作（上記の３つの操作）は、１つの指示体４の形状で行うことができる。これにより、オブジェクトに対する操作によって指示体４の形状を変化させなくてもよい。
【０１５１】
＜第５の応用例＞
次に、図３０を参照して、第５の応用例について説明する。図３０は、指示体４の形状に割り当てられる操作の一例を示している。オブジェクトを選択する選択形状は、第１の形である。選択されたオブジェクトに対する操作を行う操作形状は、第２の形〜第６の形である。
【０１５２】
第５の応用例では、指示体４の形状ごとに操作が割り当てられている。図１０または図２９の例では、指示体４の形状と動作との組み合わせごとに操作が割り当てられていたが、指示体４の形状ごとに操作が割り当てられてもよい。
【０１５３】
例えば、例１の場合、オブジェクトの移動操作には第２の形が割り当てられている。オブジェクトに対する拡大または縮小を行う操作には第３の形が割り当てられている。オブジェクトに対する回転操作には第４の形が割り当てられている。操作確定には第５の形が割り当てられている。操作キャンセルには第６の形が割り当てられている。
【０１５４】
第５の応用例では、指示体４の形状ごとに操作が割り当てられているため、ユーザは、操作と指示体４の形状との対応関係をシンプルに認識することができる。従って、第４の応用例のように、指示体４の形状と動作との組み合わせごとに操作が割り当てられてもよいし、第５の応用例のように、指示体４の形状ごとに操作が割り当てられてもよい。
【０１５５】
＜第６の応用例＞
次に、図３１および図３２を参照して、第６の応用例について説明する。図３１の例では、選択固定空間（区間３）が垂直方向に２つの空間に分割されている。選択可能空間に近い分割空間を第１の分割空間とし、選択決定空間に近い分割空間を第２の分割空間とする。
【０１５６】
図３１の例では、選択固定空間を半分に分割している例を示しているが、第１の分割空間と第２の分割空間とは異なる大きさであってもよい。選択固定空間を分割するときのＺ軸方向の閾値を第４の閾値とする。
【０１５７】
選択固定空間は、選択可能空間で選択されたオブジェクトを固定する。従って、指示体４が選択決定空間に移動することにより、選択を固定したオブジェクトの選択が確定する。または、指示体４の形状が選択形状から操作形状に変化することにより、選択を固定したオブジェクトに対して所定の操作が行われる。
【０１５８】
このとき、ユーザが行おうとしている操作に割り当てられている指示体４の形状をユーザが認識できていないとき、ガイダンスを表示することが好ましい。図３２（Ａ）は表示面３にガイダンスＧが表示されていない場合、図３２（Ｂ）は表示面３にガイダンスＧが表示されている場合を示している。
【０１５９】
表示面３にガイダンスＧが表示されることで、操作に慣れていないユーザに対して、操作に割り当てられた指示体４の形状を視覚的に提示することができる。これにより、操作に慣れていないユーザは、ガイダンスＧに表示されている情報を視認して、指示体４を所望の操作に割り当てられている形状に変化させる。一方、操作に慣れているユーザにとっては、ガイダンスＧは不要であることが多い。この場合、常に表示面３にガイダンスＧが表示されると、視認性が低下する。
【０１６０】
そこで、指示体４が、選択可能空間から第１の分割空間に移動したときから、所定時間、指示体４の形状が変化しない場合、または指示体４が第２の分割空間に移動しない場合には、表示面３にガイダンスＧを表示する。
【０１６１】
指示体認識部２１は、選択可能空間から第１の分割空間に指示体４が移動したことを認識する。装置処理部２２は、指示体４が第１の分割空間に指示体４が移動したときから時間の計測を開始する。装置処理部２２には、予め所定時間が記憶されている。この所定時間は任意に設定することができる。
【０１６２】
指示体認識部２１は、指示体４の形状が変化したとき、または指示体４が第１の分割空間から第２の分割空間に移動したことを認識したときに、その旨を装置処理部２２に通知する。装置処理部２２は、所定時間が経過するまでに、指示体認識部２１から通知を入力しないときに、ガイダンスＧが表示面３に表示されるように表示制御部２５を制御する。
【０１６３】
操作に慣れているユーザは、所定時間が経過する前に、指示体４の形状を変化させて操作を行うことが多い。また、当該ユーザは、オブジェクトの選択を決定するときには、所定時間が経過する前に、指示体４を第１の分割空間から第２の分割空間に移動させる。従って、表示面３にガイダンスＧが表示されることがなく、視認性が低下することはない。
【０１６４】
一方、装置処理部２２が、指示体認識部２１から指示体４の形状が変化したこと、または指示体４が第１の分割空間から第２の分割空間に移動したことの通知を入力しないときは、表示制御部２５は、ガイダンスＧを表示面３に表示する制御を行う。これにより、操作に慣れていないユーザに対して、ガイダンスＧによる情報提示を行うことができる。
【０１６５】
＜第７の応用例＞
次に、図３３乃至図３６を参照して、第７の応用例について説明する。図３３は、閾値の設定の一例を示している。図３３は、操作可能空間を決定するための閾値を設定する一例を示している。
【０１６６】
図３３の一例では、操作可能空間は、操作段階１〜操作段階４の４つに分割されている。各操作段階の空間は、１つの操作についてのレベルを指定する空間である。例えば、音量を操作する場合、操作段階１では音量が最も低く、操作段階に応じて音量を段階的に高くするようにしてもよい。
【０１６７】
１つの操作段階に必要な空間は、予め設定されている。例えば、操作の容易性等を基準として、１つの操作段階に必要な空間が設定されてもよい。１つの操作段階の空間のＺ軸方向の距離に操作段階の数を乗じた値を第１の距離とする。
【０１６８】
また、図３３の一例に示すように、操作に割り当てた指示体４を認識するために必要な高さを第２の距離とする。この第２の距離は、指示体４の大きさに依存する。指示体４の大きさは、指示体認識部２１が認識できるため、第２の距離Ｌ２を決定することができる。
【０１６９】
また、操作決定または操作キャンセルにＺ軸方向の空間を使用する場合、それぞれに使用するＺ軸方向の距離を第３の距離とする。図３３の例の場合、閾値１がＺ軸方向の位置が表示面３と一致している。よって、操作決定および操作キャンセルの空間は設定されないため、第３の距離は必要としない。
【０１７０】
第１の距離と第２の距離と第３の距離との合計が、操作可能空間のＺ軸方向の距離よりも短い場合、閾値１は表示面３から第３の距離の位置に設定し、閾値１から閾値２までの距離は、第２の距離と第３の距離との合計に設定する。
【０１７１】
図３３の例の場合、第３の距離を必要としないため、Ｚ軸方向における表示面３の位置に閾値１が設定される。閾値２は、Ｚ軸方向における、閾値１から第１の距離と第２の距離との合計の距離の位置に設定される。
【０１７２】
第１の距離は、各操作段階に必要な距離に４を乗じた距離になる。第２の距離は、指示体４の形状を認識するために必要な高さになる。図３３の例では、第２の距離による空間は、上部空間と下部空間との２つに分割している。Ｚ軸方向の上部空間の距離と下部空間の距離との合計が第２の距離になる。
【０１７３】
従って、第１の距離と第２の距離との合計に基づく空間が操作可能空間として設定される。これにより、４段階の操作を行うための十分な操作可能空間を確保することができる。図３３の例は、Ｚ軸方向に操作を割り当てている場合の閾値の設定を示している。
【０１７４】
次に、図３４の例を参照して、Ｚ軸方向に操作を割り当てない場合の閾値の設定を示す。図３４の例に示すように、表示面３を基準として、操作決定区間が設定されている。従って、Ｚ軸方向において、表示面３から第３の距離の位置に閾値１が設定される。
【０１７５】
図３４の例では、Ｚ軸方向に操作が割り当てられない。従って、複数の操作段階は設定されない。従って、Ｚ軸方向において、閾値１を基準として、第１の距離と第２の距離との合計の距離の位置に閾値２が設定される。従って、閾値１から閾値２までの空間が操作可能空間として設定される。
【０１７６】
次に、図３５を参照して、指示体４の形状を切り替えた時点の条件で閾値を設定する一例について説明する。図３５は、Ｚ軸方向に操作を割り当てており、且つ操作段階が２つの例を示している。
【０１７７】
この場合、閾値１から閾値２までの操作可能空間は、第１の距離と第２の距離との合計の距離となるように設定される。従って、閾値１が決定すれば、閾値２も決定する。閾値１は、「第３の距離＋（第１の距離＋第２の距離−第４の距離）」として設定される。
【０１７８】
第４の距離について説明する。第４の距離は、指示体４の形状が切り替えられた時点のＺ軸方向の位置から操作対象のオブジェクトについて上方に操作可能な距離に設定される。例えば、図３５の例において、指示体４が操作段階２の空間にあるときに、指示体４の形状が切り替わったとする。
【０１７９】
この場合、指示体４を操作段階２から操作段階１に移動可能なように、第４の距離が設定される。図３５の例の場合、指示体４は表示面３から比較的遠い位置で、その形状が切り替わっている。従って、閾値１は、表示面３からある程度の距離を確保できる。図３５の例では、閾値１の空間は操作不能空間であるものとする。
【０１８０】
一方、図３６の例の場合、指示体４は、表示面３に比較的近い位置で、その形状が切り替わっている。従って、閾値１は、表示面３から近い位置に設定される。以上のように、指示体４の形状が切り替わった時点を基準として、閾値を設定することもできる。
【０１８１】
＜第８の応用例＞
次に、図３７を参照して、第８の応用例について説明する。図３７の例に示すように、第８の応用例の表示面３は、非平面形状をしている。選択不能空間、選択可能空間および選択固定空間は、表示面３の形状に沿って設定される。一方、選択決定空間は、表示面３から選択固定空間の最下部までの空間に設定される。
【０１８２】
図３７の例では、選択決定空間も表示面３の形状に沿って設定される。このため、選択決定空間は、図３７の例の選択決定空間よりも狭い空間になっている。従って、表示面３の形状が平面形状でない場合でも、各空間を設定することができる。
【０１８３】
なお、非平面形状の表示面３の形状に沿って設定される各空間には操作可能空間も含まれる。また、表示面３の形状は、センサ５により認識されてもよいし、設計値により認識されてもよい。
【０１８４】
＜第９の応用例＞
次に、第９の応用例について説明する。指示体４が選択形状をしている場合において、指示体４が位置している空間に応じて、表示制御部２５は表示面３に表示する情報の態様を変化させている。
【０１８５】
例えば、表示制御部２５は、選択したオブジェクトについて、指示体４が選択可能空間に位置している場合と選択固定空間に位置している場合と選択決定空間に位置している場合とで、選択したオブジェクトの色を変化させてもよい。
【０１８６】
また、表示制御部２５は、指示体４が位置している空間によって、選択されていないオブジェクトの透過度を段階的に大きくしてもよい。また、表示制御部２５は、選択したオブジェクトを、空間によって縁取りの太さを変化させてもよい。
【０１８７】
また、表示制御部２５は、動的な表現により、空間による表示態様を変化させてもよい。例えば、拡縮、オブジェクトの外側に回転する枠、フレア光等により、空間による表示態様を変化させてもよい。また、表示制御部２５は、選択したオブジェクトの点滅の度合いを変化させることで、空間による表示態様を変化させてもよい。
【０１８８】
また、表示制御部２５は、指示体４の指示点を表示面に投影したカーソルの表示態様を空間によって変化させてもよい。例えば、表示制御部２５は、空間によって、カーソルを回転させてもよいし、カーソルの周囲に波紋表示等を施してもよい。
【０１８９】
＜その他＞
実施形態では、水平面に表示面３を設定していたが、例えば、ＸＺ平面に表示面３を設定してもよい。この場合、各種の空間はＹ軸方向に設定される。つまり、各種の空間は、表示面３の法線方向に設定されるようにしてもよい。
【０１９０】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【０１９１】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識する認識部と、
前記認識部が認識した前記指示体の形状に割り当てられた操作を特定する特定部と、
前記特定部が特定した操作に応じて、前記操作を行う空間の大きさを変更する変更部と、
を備える入力制御装置。
（付記２）
前記操作は、前記指示体の形状または当該形状と前記指示体の動作との組み合わせに割り当てられている、
付記１記載の入力制御装置。
（付記３）
前記変更部は、前記表示部に表示されている前記操作対象を選択するときと、前記操作対象を操作するときとで前記操作を行う空間の大きさを変更する、
付記１記載の入力制御装置。
（付記４）
前記変更部は、前記操作対象の選択が可能な第１の空間から、選択された前記操作対象を固定する第２の空間に前記指示体が移動し、且つ前記指示体の形状が前記選択を行う形状から前記操作を行う形状に変化したことを前記認識部が認識したときに、前記操作に応じて前記第２の空間の大きさを変更する、
付記３記載の入力制御装置。
（付記５）
前記操作を行う空間の境界を表示する境界表示部、
を備える付記１記載の入力制御装置。
（付記６）
前記変更部は、前記操作を行う空間の大きさを、前記表示部から前記操作を行うことが可能な空間の境界までの空間に変更する、
付記１記載の入力制御装置。
（付記７）
前記操作対象に対する操作が可能な空間よりも狭く設定された空間を前記操作対象が越えた後に、前記指示体の移動量に対して前記操作対象の移動量を逐次的に減少させる移動量制御部、
付記１記載の入力制御装置。
（付記８）
前記指示体が前記操作を行う空間の境界に位置していることを認識したときに、音を発生させる音源制御部、
を備える付記１記載の入力制御装置。
（付記９）
前記操作を行う空間外に前記指示体が移動した後に、前記指示体が前記操作を行う空間に再び移動したときに、前記指示体の形状が移動前と同じときには、前記操作を有効にされ、前記移動前と異なるときには、前記操作はキャンセルされる、
付記１記載の入力制御装置。
（付記１０）
前記操作を行う空間は、前記表示部から遠い側の第１の分割空間と前記表示部に近い側の第２分割空間とに分割され、前記第１の分割空間に前記指示体が所定時間位置しているときに、前記操作を行うためのガイダンスを表示する、
付記１記載の入力制御装置。
（付記１１）
前記表示部には前記指示体の指示点を投影した位置を示すカーソルが表示され、前記指示点が前記第１の空間に位置しているときと前記第２の空間に位置しているときとで表示態様が変化する、
付記４記載の入力制御装置。
（付記１２）
前記カーソルは、前記表示部を基準として、前記認識部が認識する前記指示体の位置によって、前記カーソルの形状が変化する、
付記１１記載の入力制御装置。
（付記１３）
前記操作を行うための空間は複数の段階に分割され、各段階の空間は前記操作のレベルを指定する空間である、
付記１記載の入力制御装置。
（付記１４）
前記表示部は非平面形状であり、前記操作を行う空間は前記非平面形状に沿って設定される、
付記１記載の入力制御装置。
（付記１５）
表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識し、
認識した前記指示体の形状に割り当てられた操作を特定し、
特定した操作に応じて、前記操作を行う空間の大きさを変更する、
制御方法。
（付記１６）
表示部に表示された操作対象に対して、空間内で操作を行う指示体の形状を認識し、
認識した前記指示体の形状に割り当てられた操作を特定し、
特定した操作に応じて、前記操作を行う空間の大きさを変更する、
処理をコンピュータに実行させる制御プログラム。
【符号の説明】
【０１９２】
１      処理装置
２      プロジェクタ
３      表示面
４      指示体
５      センサ
６      センサ
１１    ＣＰＵ
１２    ＲＡＭ
１３    ＧＰＵ
１４    不揮発性メモリ
１５    補助記憶装置
１６    媒体接続装置
１７    可搬型記録媒体
１８    入出力インタフェース
１９    スピーカ
２１    指示体認識部
２２    装置処理部
２３    操作特定部
２４    範囲変更部
２５    表示制御部
２６    移動量制御部
２７    境界表示部
２８    スピーカ制御部
【図１】
2015210684.tif 000003
【図２】
2015210684.tif 000004
【図３】
2015210684.tif 000005
【図４】
2015210684.tif 000006
【図５】
2015210684.tif 000007
【図６】
2015210684.tif 000008
【図７】
2015210684.tif 000009
【図８】
2015210684.tif 000010
【図９】
2015210684.tif 000011
【図１０】
2015210684.tif 000012
【図１１】
2015210684.tif 000013
【図１２】
2015210684.tif 000014
【図１３】
2015210684.tif 000015
【図１４】
2015210684.tif 000016
【図１５】
2015210684.tif 000017
【図１６】
2015210684.tif 000018
【図１７】
2015210684.tif 000019
【図１８】
2015210684.tif 000020
【図１９】
2015210684.tif 000021
【図２０】
2015210684.tif 000022
【図２１】
2015210684.tif 000023
【図２２】
2015210684.tif 000024
【図２３】
2015210684.tif 000025
【図２４】
2015210684.tif 000026
【図２５】
2015210684.tif 000027
【図２６】
2015210684.tif 000028
【図２７】
2015210684.tif 000029
【図２８】
2015210684.tif 000030
【図２９】
2015210684.tif 000031
【図３０】
2015210684.tif 000032
【図３１】
2015210684.tif 000033
【図３２】
2015210684.tif 000034
【図３３】
2015210684.tif 000035
【図３４】
2015210684.tif 000036
【図３５】
2015210684.tif 000037
【図３６】
2015210684.tif 000038
【図３７】
2015210684.tif 000039