(57)【特許請求の範囲】
【請求項１】
表示されたオブジェクトに対する操作を認識する情報処理装置であって、
操作者の手の位置および形状を検出する検出手段と、
仮想光源および前記操作者の手の位置により定まる前記オブジェクトが表示された面上の位置に、前記仮想光源および前記操作者の手の位置により定まるサイズで、前記手の影に相当する仮想画像を表示させる表示制御手段と、
前記手の位置および形状に基づいて、前記手の影に相当する仮想画像内に表示されたオブジェクトを選択状態、あるいは非選択状態とする状態変更手段とを備え、
前記表示制御手段は、前記状態変更手段によって前記オブジェクトが選択状態とされている間に前記操作者の手の位置が変更されたことに応じて、前記手の影に相当する仮想画像のサイズを大きした場合には、前記選択状態のオブジェクトのサイズを大きく変更し、前記手の影に相当する仮想画像のサイズを小さくした場合には、前記選択状態のオブジェクトのサイズを小さく変更することを特徴とする情報処理装置。
【請求項２】
前記表示制御手段は、前記状態変更手段によって前記オブジェクトが選択状態とされている間に前記操作者の手の位置が変更された場合には、前記手の影に相当する仮想画像のサイズ変更するのと同じ比率で前記選択状態のオブジェクトのサイズを変更することで、前記オブジェクトが非選択状態から選択状態に変更された時点での前記手の影に相当する仮想画像と前記オブジェクトのサイズの比率を維持することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
表示されたオブジェクトに対する操作を認識する情報処理装置であって、
操作者の手の位置および形状を検出する検出手段と、
仮想光源および前記操作者の手の位置により定まる前記オブジェクトが表示された面上の位置に、前記仮想光源および前記操作者の手の位置により定まるサイズで、前記手の影に相当する仮想画像を表示させる表示制御手段と、
前記手の位置および形状に基づいて、前記手の影に相当する仮想画像内に表示されたオブジェクトを選択状態、あるいは非選択状態とする状態変更手段とを備え、
前記表示制御手段は、前記状態変更手段によって複数のオブジェクトが選択状態とされている間に前記操作者の手の位置が変更されたことに応じて、前記手の影に相当する仮想画像のサイズを小さくした場合には、前記選択状態の複数のオブジェクトの配置を集合させることを特徴とする情報処理装置。
【請求項４】
前記表示制御手段は、前記状態変更手段によって前記オブジェクトが選択状態とされている間に前記操作者の手の位置が変更された場合には、前記手の影に相当する仮想画像内に表示されたオブジェクトが非選択状態から選択状態に変更された時点での前記手の影に相当する仮想画像のサイズを変更する比率に基づく移動量で、前記選択されたオブジェクトの位置を移動させることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記表示制御手段は、前記オブジェクトが選択状態から非選択状態に変更された時点において、前記手の影に相当する仮想画像の領域内に収まる位置に、前記選択されたオブジェクトの全てを表示させることを特徴とする請求項３又は４に記載の情報処理装置。
【請求項６】
前記表示制御手段は、前記操作者の手の位置が、前記仮想光源から遠い位置に移動した場合に、前記手の影に相当する仮想画像のサイズを小さくし、前記仮想光源に近い位置に移動した場合に、前記手の影に相当する仮想画像のサイズを大きくすることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
コンピュータに読み込み込ませ実行させることで、前記コンピュータを請求項１に記載の表示制御装置として機能させるコンピュータプログラム。
【請求項８】
請求項７に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ可読記憶媒体。
【請求項９】
表示されたオブジェクトに対する操作を認識する情報処理装置の制御方法であって、
検出手段により、操作者の手の位置および形状を検出する検出工程と、
表示制御手段により、仮想光源および前記操作者の手の位置により定まる前記オブジェクトが表示された面上の位置に、前記仮想光源および前記操作者の手の位置により定まるサイズで、前記手の影に相当する仮想画像を表示させる表示制御工程と、
状態変更手段により、前記手の位置および形状に基づいて、前記手の影に相当する仮想画像内に表示されたオブジェクトを選択状態、あるいは非選択状態とする状態変更工程とを備え、
前記表示制御工程で、前記状態変更工程において前記オブジェクトが選択状態とされている間に前記操作者の手の位置が変更されたことに応じて、前記手の影に相当する仮想画像のサイズを大きした場合には、前記選択状態のオブジェクトのサイズを大きく変更し、前記手の影に相当する仮想画像のサイズを小さくした場合には、前記選択状態のオブジェクトのサイズを小さく変更することを特徴とする
制御方法。
【請求項１０】
表示されたオブジェクトに対する操作を認識する情報処理装置の制御方法であって、
検出手段により、操作者の手の位置および形状を検出する検出工程と、
表示制御手段により、仮想光源および前記操作者の手の位置により定まる前記オブジェクトが表示された面上の位置に、前記仮想光源および前記操作者の手の位置により定まるサイズで、前記手の影に相当する仮想画像を表示させる表示制御工程と、
状態変更手段により、前記手の位置および形状に基づいて、前記手の影に相当する仮想画像内に表示されたオブジェクトを選択状態、あるいは非選択状態とする状態変更工程とを備え、
前記表示制御工程では、前記状態変更工程において複数のオブジェクトが選択状態とされている間に前記操作者の手の位置が変更されたことに応じて、前記手の影に相当する仮想画像のサイズを小さくした場合には、前記選択状態の複数のオブジェクトの配置を集合させることを特徴とする制御方法。
【請求項１１】
コンピュータに読み込み込ませ実行させることで、前記コンピュータを請求項３に記載の表示制御装置として機能させるコンピュータプログラム。
【請求項１２】
請求項１１に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上に表示されたオブジェクト画像を操作するグラフィカルユーザインターフェースに関する。
【背景技術】
【０００２】
近年、テーブル型のディスプレイなどが登場し、操作者は、このディスプレイにタッチするなどしてこのディスプレイ上に表示されたオブジェクト画像を操作することができる。
操作者の手が届かないところにあるオブジェクト画像を操作する技術として、仮想的な手の影などを用いて、オブジェクト画像を操作することが知られている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｓｈｏｅｍａｋｅｒ，Ｇ．，Ｔａｎｇ，Ａ．ａｎｄ  Ｂｏｏｔｈ，Ｉｎ  Ｐｒｏｃ．ｏｆ  ＵＩＳＴ  ‘０７，ｐｐ．５３−５６（２００７）
【特許文献】
【０００４】
【特許文献１】特開２０１０−０７２８４０
【特許文献２】特開２０１０−０３６７３１
【特許文献３】特開２００９−２３０１６８
【特許文献４】特開２００７−２７６６１５
【特許文献５】特開２００７−２３７９８６
【特許文献６】特開２００４−２９７７６６
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来、操作者の手の影を用いた操作は、あまり多く存在しない。例えば従来例では、操作者の手が届かないオブジェクト画像に自分の手の影を合わせることによって選択し、そのまま手の影を他の場所に移動して開放することにより、上記オブジェクト画像を移動することができる。しかしながら、上記オブジェクト画像を例えば拡大したりすることまではできない。
【０００６】
本発明は上記従来例に鑑みて成されたものであり、操作者の手が届かないようなオブジェクト画像に対して種々の操作を行えるようにするユーザーインタフェースを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、例えば請求項１に記載の情報処理装置によれば、表示されたオブジェクトに対する操作を認識する情報処理装置であって、操作者の手の位置および形状を検出する検出手段と、仮想光源および前記操作者の手の位置により定まる前記オブジェクトが表示された面上の位置に、前記仮想光源および前記操作者の手の位置により定まるサイズで、前記手の影に相当する仮想画像を表示させる表示制御手段と、前記手の位置および形状に基づいて、前記手の影に相当する仮想画像内に表示されたオブジェクトを選択状態、あるいは非選択状態とする状態変更手段とを備え、前記表示制御手段は、前記状態変更手段によって前記オブジェクトが選択状態とされている間に前記操作者の手の位置が変更されたことに応じて、前記手の影に相当する仮想画像のサイズを大きした場合には、前記選択状態のオブジェクトのサイズを大きく変更し、前記手の影に相当する仮想画像のサイズを小さくした場合には、前記選択状態のオブジェクトのサイズを小さく変更することを特徴とする情報処理装置。
ことを特徴とする。
【発明の効果】
【０００８】
以上の構成によれば、影の大きさが変わるのと類似した直感的な感覚で、操作者の手が届かないようなオブジェクトに対しても、サイズの変更あるいは配置の変更を指示する操作を行うことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】ユーザインタフェース表示装置の機能構成図
【図２】ユーザインタフェース表示装置のフローチャート
【図３】手の影画像を生成する例を示す図
【図４】オブジェクト画像の拡大や縮小を行う様子を示す例
【図５】オブジェクト画像の拡大や縮小を行う様子を示す例
【図６】オブジェクト画像の配置を変更する様子を示す例
【図７】複数の操作者により操作する様子を説明する図
【図８】複数の操作者により操作する様子を説明する図
【図９】ユーザインタフェース表示装置のフローチャート
【発明を実施するための形態】
【００１０】
（実施形態１）
図１は、本発明に適用できる情報処理装置（以降では、ユーザインタフェース表示装置と呼ぶ）の機能構成図である。ユーザインタフェース表示装置１０１は、装置外部のディスプレイ１０２とカメラ１０３に接続している。ここでは、ユーザインタフェース表示装置１０１は、ディスプレイ１０２とカメラ１０３を装置内部に備えていないものとして説明するが、本発明はこれに限らない。例えば、ユーザインタフェース表示装置１０１は、ディスプレイ１０２を装置内部に備えていても良いし、カメラ１０３を装置内部に備えていても良い。
【００１１】
カメラ１０３は、操作者、特に操作者の手を撮影するものである。また、この手の位置や形状は、装置内部の手の位置・形状検出部１０５によって検出される。本実施形態では、カメラ１０３ではなく、手の位置・形状検出部１０５によって操作者の手の位置や形状の詳細を検出することとするが、本発明はこれに限らない。例えば、カメラ１０３が上記検出機能を備え、検出部１０５のほうは検出結果を示す情報だけを取得しても良いであろう。手の位置・形状検出部１０５で検出された手の位置を表す情報（位置情報）は、手の影画像生成部１０７に出力される。手の位置・形状検出部１０５で検出された手の形状を示す情報（形状情報）は、ハンドジェスチャ認識部１０６に送られる。ここでは、公知の技術により操作者の手の形状を認識し、操作者の指示がどのようなシステムコマンドであるかを認識するものとする。例えば、このジェスチャ認識が「選択状態」、「開放状態」を認識するべき場合には、手の形状は、上記２つの認識結果の何れかに対応付けられることになる。「選択状態」の手の形状とは、何かを掴んでいるような手の形状であり、「開放状態」の手の形状とは、「選択状態」以外の手の形状を設定しておく必要がある。ハンドジェスチャ認識部１０６で認識された操作者の手の形状は、オブジェクト操作部１０８に送られる。
【００１２】
手の影画像生成部１０７では、上記手の位置（位置情報）に応じ、操作者の手の影を模した仮想画像（以下、手の影画像と呼ぶ）を生成する。以下に、手の影画像を生成する例を示す。図３は、手の影画像を生成する例を示す図である。まず、ディスプレイ１０２（図３におけるディスプレイ３０３）に表示する手の影画像の位置を算出する。本実施形態では、手の影画像を生成するための基準となる仮想光源を設定する。この仮想光源３０１の位置は、ＸＹＺ座標として（Ａ，Ｂ，Ｃ）とする。また、検出部１０５が検出する操作者の手の位置３０２は、ＸＹＺ座標として（ａ，ｂ，ｃ）であるとする。このとき、この２点を通る直線の方程式は、
（ｘ−Ａ）／（ａ−Ａ）＝（ｙ−Ｂ）／（ｂ−Ｂ）＝（ｚ−Ｃ）／（ｃ−Ｃ）  ．．．（１）
である。このときのｘは、Ｘ軸上の変数、ｙはＹ軸上の変数、ｚはＺ軸上の変数である。
【００１３】
ここで、ディスプレイ（３０３）の高さｚをＴｃと置くと、上記式（１）は
（ｘ−Ａ）／（ａ−Ａ）＝（ｙ−Ｂ）／（ｂ−Ｂ）＝（Ｔｃ−Ｃ）／（ｃ−Ｃ）  ．．．（２）
となる。そしてｘ、ｙの値を求めると、
ｘ＝（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ａ−Ａ）＋Ａ                        ．．．（３）
ｙ＝（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ｂ−Ｂ）＋Ｂ                        ．．．（４）
となる。
【００１４】
以上から、仮想光源３０１から出た光が操作者の手を照らしたときの、ディスプレイ上の手の影画像３０４の座標は、
（（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ａ−Ａ）＋Ａ，（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ｂ−Ｂ）＋Ｂ，Ｔｃ）      ．．．（５）
となる。
【００１５】
ここで、ディスプレイ３０３はテーブル型デバイスであることを想定しているので、ディスプレイ３０３上では、Ｚ軸は考慮しなくても良い。よって、（５）の３次元座標からＺ軸は無視して、
（（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ａ−Ａ）＋Ａ，（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ｂ−Ｂ）＋Ｂ）      ．．．（６）
の２次元上の位置に手の影画像３０４を表示すれば良い。ディスプレイ３０３の高さをＴｃと、仮想光源の位置（Ａ，Ｂ，Ｃ）については、設計時に予め決定することが可能である。よって、手の影画像３０４を表示するべき座標は、上述したような計算によって算出できるであろう。
【００１６】
手の影画像生成部１０７は、ディスプレイ上に投影する手の影画像３０４の大きさも決定する。手の影画像の大きさは、操作者の手の大きさを直径Ｍの球、仮想光源が面積０の点と仮定すると、
手の影の大きさ＝Ｍ＊仮想光源から手の影までの距離／仮想光源から手までの距離  ．．．（７）
となる。さらに、式（７）を展開すると、
手の影の大きさ＝
Ｍ＊（（（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ａ−Ａ））＾２＋（（Ｔｃ−Ｃ）／（ｃ−Ｃ）＊（ｂ−Ｂ））＾２＋（Ｃ−Ｔｃ）＾２）＾０．５／（（Ａ−ａ）＾２＋（Ｂ−ｂ）＾２＋（Ｃ−ｃ）＾２）＾０．５＝Ｍ＊（Ｔｃ−Ｃ）／（ｃ−Ｃ）      ．．．（８）
となる。
【００１７】
仮に、仮想光源の位置が（３００，０，２００）であり、操作者の手の位置が（２５０，０，１２０）であり、テーブルの高さが７０ｃｍ、操作者の手が直径１０ｃｍの球である場合を考える。このとき、高さ７０ｃｍのディスプレイ上に表示される手の影画像の座標は、式（５）により（Ｘ＝２１８．７５，Ｙ＝０、Ｚ＝７０）となり、その手の影画像の大きさは、式（８）により直径１６．２５となる。
【００１８】
以上の方法によって、手の影画像生成部１０７は「手の影画像」を生成し、これをディスプレイ１０２上に表示させる。
【００１９】
オブジェクト操作部１０８は、ハンドジェスチャ認識部１０６で認識された認識結果と、手の影画像生成部１０７で生成された手の影画像に基づき、ディスプレイ１０２（図３ではディスプレイ３０３）上に表示されているオブジェクト画像の操作を行う。以下では、このオブジェクト画像をオブジェクトと呼ぶ。このオブジェクトとは、写真や動画や文書などのコンテンツであり、それらを画面上で変形あるいは移動できるような状態で表示している画像に相当する。例えば、ハンドジェスチャ認識部１０６によるジェスチャ認識結果として、操作者の手の形状が「選択状態」に変わったと判断された場合には、手の影画像の下にあるオブジェクトを選択状態にする。さらに、そのときの手の影画像の大きさも内部データとして保持しておく。一方、ジェスチャ認識結果として、操作者の手の形状が「開放状態」に変わったと判断された場合には、上記選択状態にあるオブジェクトを開放する。さらに、そのときの手の影画像の大きさと、選択状態に変化したときに保持しておいた手の影画像の大きさに応じて、開放時のオブジェクトを変換させる。ここで開放とは、次にそのオブジェクトが選択状態になるまで、現在表示されているディスプレイ上の位置への表示を継続することに相当する。また変換とは例えばオブジェクトの拡大や縮小に相当する。
【００２０】
ユーザインタフェース表示部１０４は、種々の表示制御機能を備えており、特に本実施形態では、ディスプレイ１０２上に表示されているオブジェクトに重ねるようにして、上述した手の影画像の表示を行う。
【００２１】
以上の各部の動作によって、オブジェクトの選択と開放だけでなく、手の影画像を拡大したり縮小したりすることができる。
【００２２】
図２は、ユーザインタフェース表示装置１０１の動作手順を示すフローチャートである。この装置１０１が起動すると、ステップＳ２０１以降の処理を開始する。ステップＳ２０１では、カメラ１０３および手の位置・形状検出部１０５によって、操作者の手の位置・形状を取得する。ステップＳ２０２では、手の影画像生成部１０７によって、上述したような方法を用いて、操作者の手の位置から手の影画像を生成する。ステップＳ２０３では、ユーザインタフェース表示部１０４およびディスプレイ１０２によって、以上で生成された手の影画像が表示される。ステップＳ２０４では、ハンドジェスチャ認識部１０６によって、操作者の手の形状（ハンドジェスチャ）を操作コマンドとして認識する。ステップＳ２０５では、操作コマンドが認識されたかどうか判定する。もし、特定の操作コマンドが認識された場合にはステップＳ２０６に進む。もし特定の操作コマンドが認識されない場合には、ステップＳ２０１からステップＳ２０５までの工程を繰り返す。ステップＳ２０６では、認識結果が「選択状態」に変わったかどうかを判定する。もし「選択状態」に変わったと判定された場合、ステップＳ２０７に進む。もし、認識結果が「選択状態」に変わっていないと判定された場合、ステップＳ２０９に進む。ステップＳ２０７では、内部変数ＳＩＺＥに現在の手の影画像の大きさを代入する。ステップＳ２０８では、現在の手の影画像下にあるオブジェクトを選択状態に変える。ステップＳ２０９では、認識結果が「開放状態」に変わったかどうかを判定する。もし「開放状態」に変わった場合には、現在の手の影画像の大きさ、変数ＳＩＺＥに保持された選択時の手の影画像の大きさ、現在の手の影画像の位置を用いて、これまで選択中であったオブジェクトを拡大あるいは縮小などして変換する。そして、この変換されたオブジェクトが、開放後にディスプレイ１０２に表示されるオブジェクトとなる。以上によって、オブジェクトの選択時および開放時の手の影画像（仮想画像）のサイズに応じて、開放後におけるオブジェクトの表示状態を変更する。
【００２３】
以上のように、本実施形態のユーザインタフェース表示装置を用いることにより、従来の手の影画像を用いたオブジェクトの操作に対して、手の影画像の大きさを利用して、細かい操作が可能となる。本実施形態のユーザインタフェース表示装置は、この手の影画像の大きさ制御に影のメタファを利用しているため、操作者は比較的容易にこの仕組みを理解することが可能となる。
【００２４】
＜オブジェクト変換の例１＞
以下では、操作者によって変動される「手の影画像の大きさ」を利用して、オブジェクトの拡大や縮小を行う例を説明する。図４は操作者４０１が「手の影画像の大きさ」を変動させている様子を横から見た図である。図５は上記図４と同じものをディスプレイの正面から見た図である。図４、図５において、同じものには同じ番号を与えている。更に、図４（ａ）および図５（ａ）は、操作者がオブジェクトの選択を行ったときの「選択状態」の様子を示し、図４（ｂ）および図５（ｂ）は、操作者がオブジェクトの開放を行ったときの「開放状態」の様子を示す。なお、図中のディスプレイ４０６は、以前に説明したディスプレイ３０３、ディスプレイ１０２と同じものであり、操作者４０１は、操作者３０５と同じである。
【００２５】
本実施形態のユーザインタフェース表示装置１０１は、操作者４０１の手４０３の位置と、仮想光源４０２の位置とに基づいて、手の影画像４０４を生成する。なお、手の影画像の作成方法は上述したとおりである。手の影画像４０４はディスプレイ４０６上に表示される。また、ディスプレイ４０６には、手の影画像４０４以外のオブジェクト４０５が表示されており、操作者の手を移動させ、手の影画像４０４を移動させることによって、これらのオブジェクトを操作することができる。
【００２６】
例えば、操作者４０１が手を移動させることでオブジェクト４０５に手の影画像４０４を移動させ、「手で何かを掴む動作」を行うジェスチャを行ったとする。この場合には、ユーザインタフェース表示装置１０１は、上述したように、上記ジェスチャが選択状態を指示する操作コマンドであると認識し、手の影画像が表示されている位置に表示されたオブジェクトを選択状態にする。そして、操作者４０１がその選択状態を保持したまま（即ち、「手で何かを掴んだ状態」を維持したまま）、操作者の手を仮想光源４０２のほうに近づける。上述した手の影画像の生成方法に基づけば、この近づけた状態の手４０７に相当する手の影画像４０８は、手の影画像４０４よりも大きく表示されることになる。
【００２７】
ここで、操作者４０１が「開放状態」に相当するジェスチャを行った場合には、ユーザインタフェース表示装置１０１は、「開放状態」と認識し、現在選択しているオブジェクトを開放する。本実施形態では、この開放が起こったときに、上記オブジェクトが選択状態になったときの手の影画像４０４の大きさと、開放状態になったときの手の影画像４０８の大きさの比率を計算する。言い換えれば、操作者４０１がオブジェクトを選択したときの手の影画像と、オブジェクトを開放したときの手の影画像の大きさの比率を計算する。この比率（開放時の手の影画像の大きさ／選択時の手の影画像の大きさ）によって、選択時と比べて、開放時のオブジェクトの大きさを決定する。この開放時のオブジェクトの大きさ（表示サイズ）は、例えば以下のようにして決定すれば良い。
開放時のオブジェクトの大きさ  ＝
選択時のオブジェクトの大きさ＊（開放時の手の影画像の大きさ／選択時の手の影画像の大きさ）      ．．．（９）
なお、本実施形態では、開放時にオブジェクトの大きさを変更するものとするが、本発明はこれに限らない。例えば、装置１０１が、開放する候補となる手の影画像４０８の大きさをリアルタイムに検知できる計算能力がある場合を考える。このような場合には、開放前であっても、手の影画像４０８の大きさをリアルタイムに検知して、現在選択中のオブジェクト（開放候補であるオブジェクト）の大きさを適宜変更しても良いであろう。
【００２８】
以上によれば、操作者が、「手の影画像の表示位置をオブジェクトに合わせる」「何かを握るジェスチャを行う」「自分の手を仮想光源に近づけたり、遠ざけたりする」「上記ジェスチャをやめる」という簡単な動作で、オブジェクトの大きさも変更できる。
【００２９】
＜オブジェクト変換の例２＞
以下では、手の影画像の大きさを利用し、複数のオブジェクトの配置方法を制御する例を説明する。図６の（ａ）は、上述した「選択状態」に相当する様子を示す図であり、図６（ｂ）は、上述した「開放状態」に相当する様子を示す図である。
【００３０】
図５と図６が異なる点は、図５では、手の影画像のサイズが変化すると、選択中のオブジェクトが拡大したり縮小したりする点に対して、図６では、手の影画像のサイズが変化すると、選択中の複数のオブジェクトの配置関係が変化する点である。なお、ディスプレイ６０３は上述したディスプレイ４０６と同様である。
【００３１】
例えば、操作者によって手の影画像６０１を移動させ、上述したジェスチャを入力することで複数のオブジェクト６０２を「選択状態」とする。次に、操作者は好きな様に手の影画像６０１を移動させる。このとき、操作者は自分の手を仮想光源から遠い位置に移動させることで手の影画像の大きさを小さく変更する。そして、このあと上述したジェスチャを入力することで「開放状態」とする。その結果、選択されていた複数のオブジェクトのそれぞれのサイズは変更されていないが、それら複数のオブジェクトが手の影画像の中央部分に集中的に配置された状態で表示される。即ち、選択中の複数のオブジェクトの配置関係を変化させる。
【００３２】
ここでは、選択時と開放時の手の影画像の大きさに応じて、選択中のオブジェクトの配置情報を変更してもよい。
Ｓ＝開放時の手の影画像の大きさ／選択時の手の影画像の大きさ      ．．．（１０）
とし、個々のオブジェクトをオブジェクトＡｎと（ｎ＝１、２、・・、Ｎの何れかとし、Ｎは選択中のオブジェクトの個数である）すると、
開放時のオブジェクトＡｎのＸ座標  ＝
Ｓ＊（オブジェクトＡｎのＸ座標−選択時の手の影画像のＸ座標）
＋開放時の手の影画像のＸ座標                              ．．．（１１）
開放時のオブジェクトＡｎのＹ座標  ＝
Ｓ＊（オブジェクトＡｎのＹ座標−選択時の手の影画像のＹ座標）
＋開放時の手の影画像のＹ座標                              ．．．（１２）
という式で算出される位置（Ｘ，Ｙ）にそれぞれのオブジェクトＡｎを配置するように、表示すれば良い。
【００３３】
以上によれば、操作者によって、選択時と開放時の手の影画像の大きさを変更することができ、それにより、各オブジェクトの配置を変更することができる。特に上記式１１、１２を用いた配置変更によれば、もともとのオブジェクトの配置関係をある程度保った状態で、開放時の手の影画像の領域に納まるように、それぞれのオブジェクトが再配置できる。
【００３４】
［変形例］
なお、以上の実施形態では、仮想光源の位置は予め設定していたが、本発明はこれに限らない。例えば、この仮想光源は、操作者の姿勢や、顔の向き、あるいは背の高さに応じて、適宜変更しても構わない。具体的には、本実施形態のユーザインタフェース表示装置１０１が操作者の頭頂部の位置を検出し、さらに操作者の顔の向きを取得できる機能を備える。そして、頭頂部の位置から顔の向きの反対方向に例えば５０ｃｍだけ移動した位置を仮想光源とする。このようにすれば、操作者の身長に合わせて適切な仮想光源が設定される。また、操作者が意図的に顔の向きを変更することによって、仮想光源の位置までもジェスチャ入力によって設定できることになる。
【００３５】
また、以上の実施形態は、複数の操作者によって操作されることも可能である。図７にその一例を示す。ここでは、複数の操作者７０１、７０２が存在する。そして、それぞれの仮想光源７０３、７０４を設定することによって、それぞれがオブジェクトに対して独立に操作が可能である。ただし、ディスプレイ上でどの操作者の手の影画像であるかが判別できるように、それぞれの操作者に相当する影画像は、異なる色で表示するものとする。具体的には、黒あるいはグレーで表示するのではなく、一方の操作者に対応する手の影画像はレッドとし、他方の操作者に対応する手の影画像はグリーンとすることにより、それぞれの手の影画像を識別可能となるであろう。さらに操作者が３人以上の場合には、レッド、グリーン、イエローなど出来るだけ別系色の色を採用すれば良いであろう。このようにすれば、万が一、手の影画像が重なった場合にも、その重なった領域まで認識できるであろう。
【００３６】
図８に、図７とは異なる幾つかの例も示す。例えば、複数の操作者によって操作される場合には、図８（ａ）のように、それぞれの手の影画像の周辺に、操作者のＩＤ８０１を表示することで、それぞれの操作者に対応する手の影画像を識別できる。また、図８（ｂ）のように、それぞれの手の影画像を、その向きが判別できるような形状にしても良いであろう。手の影画像８０２には、手の影画像に指を表す画像が付随しているため、その手の影画像に対応する操作者の大まかな向きも識別できる。よって、操作者は、自分と同方向を向いている手の影画像を操作しているというように理解すれば良いであろう。また、上記方向を知るための別の方法として、図８（ｃ）のように、手の影画像の代わりに、人体の影画像８０３を表示しても良いであろう。この人体の影画像８０３は、各操作者が向いている方向と同方向に頭部が存在する人体の形状を表示し、その人体の手の部分に上述した手の影画像に相当する部分を表示したものである。このようにすれば、各操作者が自分の体の方向と人体の影画像８０３の形状とを直感的に対比して、「自分の影画像が何れであるか」を正しく認識できる。
【００３７】
図９は、ユーザインタフェース表示装置１０１によって、上述した図８（ｂ）の手の影画像８０２を表示する動作手順を示したものである。なお、図２と同じ処理に関しては同じ番号を付与し、詳細説明を省略するものとする。また、ここでは、ユーザインタフェース表示装置１０１が、ユーザインタフェース表示装置を操作している操作者が複数いることを検知した場合に、以下の動作手順を実行するものとする。まず、ステップＳ９０１では、変数Ａに、最初に検知した操作者を設定する。例えば、変数Ａに、最初に検知した操作者のＩＤ（操作者Ａ）を代入する。次に、ステップＳ９０２では、その操作者Ａの手の位置と形状を検知する。ステップＳ９０３では、その操作者Ａが持つ仮想光源と検知した手の位置から手の影画像８０２を生成する。この手の影画像８０２は、操作者が、上下方向が理解できるような形状のものである。ステップＳ９０４では、手の影画像８０２をディスプレイに表示する。ステップＳ９０５では、ステップＳ９０２で取得した手の形状に基づいて、ハンドジェスチャの認識を行う。これ以降のハンドジェスチャの認識結果に基づく処理（ステップＳ２０６〜Ｓ２１０）は、図２で説明したものと同じである。ステップＳ９０７では、装置１０１が検知している全ての操作者のうち、操作者ＡとしてステップＳ９０２〜Ｓ９０６の処理をしていない操作者が居るかどうか判定する。もし未処理の操作者が残っている場合には、その操作者の１人を、次の操作者Ａとして設定し、ステップＳ９０２以降の処理を繰り返す。以上の工程により、複数の操作者が居る場合であっても、それぞれの操作者の手の影画像あるいは人体の影画像をディスプレイ上に表示することができる。
【００３８】
なお、上述した各実施形態は、以下の処理を実行することによっても実現される。即ち、上記実施形態の各工程や機能を実現するソフトウェア（制御プログラム）を、ネットワークや記憶媒体を介してシステムに供給し、そのシステムのコンピュータ（またはＣＰＵ等）が上記プログラムを読み込んで実行する処理である。上記コンピュータプログラムや、それを記憶したコンピュータ可読記憶媒体も本発明の範疇に含まれる。
【図１】
0005665396.tif 000002
【図２】
0005665396.tif 000003
【図３】
0005665396.tif 000004
【図４】
0005665396.tif 000005
【図５】
0005665396.tif 000006
【図６】
0005665396.tif 000007
【図７】
0005665396.tif 000008
【図８】
0005665396.tif 000009
【図９】
0005665396.tif 000010