(57)【特許請求の範囲】
【請求項１】
複数のアプリケーションを操作するポインタを表示対象物に投影して表示する表示部と、
前記ポインタが投影された前記表示対象物までの第１の距離を算出する算出部と、
前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出する抽出部と、
前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する決定部と
を有し、
前記表示部は、
前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する、表示装置。
【請求項２】
前記表示対象物を撮像して画像を得る撮像部を有し、
前記抽出部は、
前記画像における前記表示対象物の画素及び前記第１の距離に基づいて、前記表示対象物において、前記領域を抽出する、請求項１に記載の表示装置。
【請求項３】
前記決定部は、
さらに、前記ポインタ及び前記複数のオブジェクトの拡縮倍率を、前記画像に基づいて決定する、請求項２に記載の表示装置。
【請求項４】
前記決定部は、
前記複数のオブジェクトの間の距離、前記ポインタと前記複数のオブジェクトとの間の距離、及び前記領域の境界と前記複数のオブジェクトと間の距離を示す第２の距離に基づいて、前記位置を決定する、請求項１ないし３のいずれか１項に記載の表示装置。
【請求項５】
前記決定部は、
前記第２の距離を用いた斥力モデルに基づいて、前記位置を決定する、請求項４に記載の表示装置。
【請求項６】
複数のアプリケーションを操作するポインタを表示対象物に投影して表示し、
前記ポインタが投影された前記表示対象物までの第１の距離を算出し、
前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出し、
前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する
処理を表示装置に実行させ、
前記表示する処理は、
前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する、プログラム。
【請求項７】
複数のアプリケーションを操作するポインタを表示対象物に投影して表示し、
前記ポインタが投影された前記表示対象物までの第１の距離を算出し、
前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出し、
前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する
処理を表示装置が実行し、
前記表示する処理は、
前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する、表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示装置、プログラム、及び表示方法に関する。
【背景技術】
【０００２】
背景（投影面）に表示された投影画像に、投影装置の動きに合わせて動くポインタを重ねることで、投影画像に対してポインティング操作を行う技術が知られている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２６６４７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、投影画像が投影される領域が平面な投影面に収まらない場合、ポインティング操作の対象となるオブジェクト（例えば、アプリケーションを操作するためのアイコン等）の一部が平面の外に表示されることがある。このような場合、ユーザは、各オブジェクトの位置関係を把握することが難しくなり、ポインティング操作を行いにくいことがある。
【０００５】
これに対して、ユーザが手動で、ポインティング操作を行い易い位置に各オブジェクトの表示を調整することは手間である。
【０００６】
そこで、一側面では、本発明は、投影して表示されるオブジェクトのポインティング操作を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
一つの案では、複数のアプリケーションを操作するポインタを表示対象物に投影して表示する表示部と、前記ポインタが投影された前記表示対象物までの第１の距離を算出する算出部と、前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出する抽出部と、前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する決定部とを有し、前記表示部は、前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する表示装置が提供される。
【発明の効果】
【０００８】
一側面によれば、投影して表示されるオブジェクトのポインティング操作を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に係る表示システムの全体構成例を示す図。
【図２】投影画像が１つの平面に収まらない場合の例を示す図。
【図３】第１の実施形態に係る表示システムのハードウェア構成例を示す図。
【図４】第１の実施形態に係る表示システムの機能構成例を示す図。
【図５】第１の実施形態に係るポインティング操作の開始処理を示した一例のフローチャート。
【図６】ポインティング操作を行う平面を選択するための一例を示す図。
【図７】抽出された領域の一例を示す図。
【図８】オブジェクトのサイズ及び位置の一例を示す図。
【図９】投影画像を投影したときの一例を示す図。
【図１０】第１の実施形態に係る領域抽出処理の一例のフローチャート。
【図１１】ポインタを囲むバウンディングボックスの一例を示す図。
【図１２】第１の実施形態に係る拡縮倍率の決定処理の一例のフローチャート。
【図１３】撮像画像における領域の面積とポインタの面積を説明する一例の図。
【図１４】第１の実施形態に係る位置の決定処理の一例のフローチャート。
【図１５】オブジェクトが他の荷電粒子から受ける斥力を説明する一例の図。
【図１６】第１の実施形態に係るポインティング操作処理の一例のフローチャート。
【図１７】姿勢変化によるオブジェクトの位置の変化量について説明する一例の図。
【図１８】第２の実施形態に係る表示システムの機能構成例を示す図。
【図１９】第２の実施形態に係る位置の決定処理の一例のフローチャート。
【図２０】オブジェクトの位置の決定について説明する一例の図。
【図２１】第３の実施形態に係る表示システムの機能構成例を示す図。
【図２２】第３の実施形態に係る拡縮倍率の決定処理の一例のフローチャート。
【図２３】拡縮倍率の決定のための距離について説明する一例の図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について添付の図面を参照しながら説明する。
【００１１】
＜第１の実施形態＞
［システムの全体構成］
まず、第１の実施形態に係る表示システム１の構成について、図１を参照しながら説明する。図１は、第１の実施形態に係る表示システムの全体構成例を示す図である。本実施形態に係る表示システム１は、ポインティング端末１０及び携帯端末２０を有する。ポインティング端末１０及び携帯端末２０は、有線又は無線により通信可能に接続されている。
【００１２】
ポインティング端末１０は、図１に示すようにウェアラブル型の端末であり、携帯端末２０から受け取った画像データ（投影画像データ）を投影して、投影画像Ｓを投影面に表示させる。また、ポインティング端末１０は、後述するように、モーションセンサから得られる姿勢変化量データを用いて、ポインタＰにより投影画像Ｓに表示されている各オブジェクトＡ〜Ｃに対してポインティング操作を行うことができる。
【００１３】
ここで、オブジェクトとは、例えば、携帯端末２０に搭載されたアプリケーションを操作するためのアイコン等である。したがって、ユーザは、ポインティング端末１０を用いて、投影画像Ｓにおいて各オブジェクトＡ〜Ｃに対してポインティング操作を行うことにより、操作されたオブジェクトに対応するアプリケーションを利用することができる。ただし、オブジェクトは、アプリケーションを操作するためのアイコン等に限られず、例えば、オブジェクトとしてソフトウェアキーボードの各キーを表示させて、文字入力等を行えるようにしてもよい。
【００１４】
また、ポインティング操作とは、投影画像Ｓ内においてポインタＰでオブジェクトＡ〜Ｃを指し示す、又は選択してアプリケーションを実行させる等のユーザが行う操作のことである。
【００１５】
携帯端末２０は、ユーザが携帯可能な情報処理装置であり、上述した各種アプリケーションやポインティング端末１０により投影される投影画像データの元データである投影元画像データが格納されている。また、携帯端末２０は、後述するように、ユーザの操作に応じて投影画像における各オブジェクトＡ〜Ｃの位置やサイズ（拡縮倍率）等を決定して、投影元画像データから投影画像データを生成する。より詳しくは、携帯端末２０は、ユーザの操作に応じて、ポインティング端末１０が投影する表示対象物に基づき各オブジェクトの位置や拡縮倍率等を、ユーザがポインティング操作を行い易いように決定して、投影元画像データから投影画像データを生成する。
【００１６】
なお、図１では、ポインティング端末１０及び携帯端末２０がそれぞれ異なる端末である例を示したが、これに限られず、ポインティング端末１０及び携帯端末２０は１台の端末で実現されてもよい。すなわち、携帯端末２０は、ポインティング端末１０に含まれていてもよい。
【００１７】
ここで、上述した各オブジェクトの位置やサイズ（拡縮倍率）等をユーザがポインティング操作を行い易いように決定する必要がある場合について、図２を参照しながら説明する。図２は、投影画像が１つの平面に収まらない場合の例を示す図である。図２では、投影画像Ｓにおいて、ポインタＰによるポインティング操作の対象となるオブジェクトＡ〜Ｄのうち、オブジェクトＡ及びＢは１つの平面Ｌ内に投影されている。一方で、オブジェクトＣは、平面Ｌとは角度の異なる平面に投影されており、オブジェクトＤは、一部が平面Ｌからはみ出して、平面Ｌの奥に投影されている。このような場合、ユーザは、オブジェクトＣやオブジェクトＤの位置関係を把握し難いため、ポインタＰを操作して、オブジェクトＣやオブジェクトＤの選択等を的確に行えないことがある。
【００１８】
そこで、本実施形態に係る表示システム１では、ポインタＰが投影されている平面Ｌからポインティング操作に適した領域を抽出し、ポインタＰ及びオブジェクトＡ〜Ｄの位置やサイズ（拡縮倍率）を調整した上で、抽出した領域に含まれるように投影する。これにより、本実施形態に係る表示システム１では、ユーザのポインティング操作を向上させることができる。
【００１９】
［ハードウェア構成］
次に、本実施形態に係る表示システム１のハードウェア構成について、図３を参照しながら説明する。図３は、第１の実施形態に係る表示システムのハードウェア構成例を示す図である。
【００２０】
ポインティング端末１０は、投影装置１０１、撮像装置１０２、モーションセンサ１０３、入力装置１０４、Ｉ／Ｆ装置１０５、ＣＰＵ（Central Processing Unit）１０６、ＲＡＭ（Random Access Memory）１０７、及びＲＯＭ（Read Only Memory）等を備える。これら各ハードウェアは、それぞれがバスＢ１で相互に接続されている。
【００２１】
投影装置１０１は、プロジェクタ等であり、Ｉ／Ｆ装置１０５を介して携帯端末２０から受け取った投影画像データを投影して、投影画像を表示させる。撮像装置１０２は、距離を測定することができるカメラ（測距カメラ）等であり、所定の範囲を撮像して、撮像装置１０２から撮像対象物までの距離を含む撮像画像データを生成する。撮像装置１０２により生成された撮像画像データは、Ｉ／Ｆ装置１０５を介して携帯端末２０に送信される。ここで、撮像画像データは、後述するように、携帯端末２０において、各オブジェクトのサイズ（拡縮倍率）等を決定する際に用いられる。モーションセンサ１０３は、ポインティング端末１０の姿勢変化量を測定し、姿勢変化量データを出力する。なお、撮像装置１０２により測定される距離を、便宜上、以降では「第１の距離」と表す。
【００２２】
入力装置１０４は、例えば各種ボタン等であり、ユーザによる各種の入力操作を受け付ける。Ｉ／Ｆ装置１０５は、携帯端末２０とのインタフェースであり、各種データの送受信を行う。ＣＰＵ１０６は、例えばＲＯＭ１０７等からプログラムや各種データをＲＡＭ１０８上に読み出し、各種処理を実行する演算装置である。ＲＡＭ１０７は、プログラムやデータを一時保存する揮発性の半導体メモリである。ＲＯＭ１０８は、電源を切ってもデータを保持することができる不揮発性の半導体メモリである。
【００２３】
携帯端末２０は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、補助記憶装置２０４を備える。また、携帯端末２０は、入力装置２０５、出力装置２０６、Ｉ／Ｆ装置２０７、ドライブ装置２０８、通信装置２０９等を備える。これら各ハードウェアは、それぞれがバスＢ２で相互に接続されている。
【００２４】
ＣＰＵ２０１は、例えば補助記憶装置２０４やＲＯＭ２０３等からプログラムや各種データをＲＡＭ２０２上に読み出し、各種処理を実行する演算装置である。ＲＡＭ２０２は、プログラムやデータを一時保存する揮発性の半導体メモリである。ＲＯＭ２０３は、電源を切ってもデータを保持することができる不揮発性の半導体メモリである。補助記憶装置２０４は、プログラムや各種データを格納している不揮発性のメモリであり、例えばＳＳＤ（Solid State Drive）等である。格納されるプログラムやデータには、携帯端末２０の全体を制御する基本ソフトウェアであるＯＳ（Operating System）やＯＳ上で動作する各種プログラム等がある。
【００２５】
入力装置２０５は、例えばタッチパネル等であり、ユーザによる各種の入力操作を受け付ける。出力装置２０６は、例えばディスプレイ等であり、各種の処理結果を表示する。Ｉ／Ｆ装置２０７は、ポインティング端末１０とのインタフェースであり、各種データの送受信を行う。ドライブ装置２０８は、記録媒体２０８ａとのインタフェースである。記録媒体２０８ａには、例えば、ＳＤメモリカード(SD memory card）、ＵＳＢメモリ（Universal Serial Bus memory）等がある。通信装置２０９は、ネットワークに接続するためのインタフェースである。
【００２６】
本実施形態に係る表示システム１は、図３に示すハードウェア構成により、後述する各種処理が実現される。
【００２７】
［機能構成］
次に、本実施形態に係る表示システム１の機能構成について、図４を参照しながら説明する。図４は、第１の実施形態に係る表示システムの機能構成例を示す図である。
【００２８】
ポインティング端末１０は、入力部１１、投影部１２、撮像部１３、及び変化量取得部１４を有する。これらの各部は、ポインティング端末１０にインストールされたプログラムが、ＣＰＵ１０６に実行させる処理により実現される。
【００２９】
入力部１１は、ユーザからのポインティング操作を開始するための入力操作を受け付ける。このとき、入力部１１は、ユーザからポインティング操作を開始するための入力操作を受け付けると、投影画像生成部２６を介してポインタを投影するための投影画像データを投影部１２により投影させる。
【００３０】
投影部１２は、携帯端末２０から受け取った投影画像データを投影して、投影画像データに基づく投影画像を表示させる。
【００３１】
撮像部１３は、投影部１２により表示されたポインタを含む所定の範囲を撮像して、撮像画像データを生成する。ここで、撮像部１３により生成される撮像画像データには、撮像装置１０２から撮像対象物までの第１の距離が含まれる。すなわち、撮像部１３は、撮像装置１０２から撮像対象物までの第１の距離を算出し、算出された第１の距離を含む撮像画像データを生成する。なお、所定の範囲は、投影部１２により表示される投影画像を少なくとも含む範囲であれば良い。
【００３２】
変化量取得部１４は、ポインティング端末１０の姿勢変化に応じてモーションセンサ１０３から出力される姿勢変化量データを取得する。ここで、姿勢変化量データは、ポインティング端末１０の姿勢変化の前後における角度の変化量で表される。
【００３３】
携帯端末２０は、ポインタ特定部２１、領域抽出部２２、オブジェクト決定部２３、拡縮倍率決定部２４、位置決定部２５、投影画像生成部２６、及び変化量算出部２７を有する。これらの各部は、携帯端末２０にインストールされたプログラムが、ＣＰＵ２０１に実行させる処理により実現される。また、携帯端末２０は、画像データ記憶部２８及びオブジェクト管理データ記憶部２９を有する。これら各記憶部は、補助記憶装置２０４を用いて実現可能である。
【００３４】
ポインタ特定部２１は、撮像部１３により生成された撮像画像データに含まれるポインタを特定する。
【００３５】
領域抽出部２２は、撮像部１３により生成された撮像画像データに基づき、ポインタ及び各オブジェクトを投影して表示させる領域を抽出する。
【００３６】
オブジェクト決定部２３は、オブジェクト管理データ記憶部２９を参照し、領域抽出部２２により抽出された領域に投影して表示させるオブジェクトを決定する。
【００３７】
拡縮倍率決定部２４は、領域抽出部２２により抽出された領域に投影して表示させる各オブジェクト及びポインタのサイズ（拡縮倍率）を決定する。
【００３８】
位置決定部２５は、領域抽出部２２により抽出された領域に投影して表示させるポインタ及び各オブジェクトの位置を決定する。より詳しくは、位置決定部２５は、領域に投影して表示させるポインタ及び各オブジェクトの位置を、オブジェクト間の距離、オブジェクトとポインタとの距離、及びオブジェクトと領域の境界との距離に基づいて決定する。なお、このようなオブジェクト間の距離、ポインタとオブジェクトとの距離、及びオブジェクトと領域の境界との距離を、上述した第１の距離と区別するため、便宜上、以降では「第２の距離」と表す。
【００３９】
投影画像生成部２６は、拡縮倍率決定部２４により決定された拡縮倍率と、位置決定部２５により決定された位置とに基づき、抽出された領域に投影して表示させるポインタ及び各オブジェクトの投影元画像データから投影画像データを生成する。また、投影画像生成部２６は、変化量算出部２７により算出されたオブジェクトの位置の変化量に基づき、投影画像データを生成する。
【００４０】
変化量算出部２７は、変化量取得部１４が取得した姿勢変化量データに基づき、ポインティング端末１０の姿勢変化に応じて、オブジェクトの位置が変化する量（位置の変化量）を算出する。算出された位置の変化量に基づき、投影画像生成部２６により位置の変化量を相殺した投影画像データを生成することで、ポインティング端末１０の姿勢変化の前後において、背景（表示対象物）に対してオブジェクトを静止させることができる。
【００４１】
画像データ記憶部２８は、投影元画像データを格納している。ここで、画像データ記憶部２８に格納されている投影元画像データは、例えば、ポインタの投影画像を表示するための画像データ（ポインタ画像データ）やオブジェクトの投影画像を表示するための画像データ（オブジェクト画像データ）等がある。上述した投影画像生成部２６は、画像データ記憶部２８から１以上の投影元画像データを取得し、取得した投影元画像データから投影画像データを生成する。なお、ポインタ画像データ及びオブジェクト画像データは、投影画像として表示された場合における投影画像内における位置（初期位置）が関連付けられている。ここで、本実施形態では、ポインタ画像データの初期位置は投影画像の中心であるとする。
【００４２】
オブジェクト管理データ記憶部２９は、オブジェクトに対する操作履歴等のオブジェクト管理データが格納されている。上述したオブジェクト決定部２３は、オブジェクト管理データ記憶部２９からオブジェクト管理データを取得し、取得したオブジェクト管理データに基づき、領域抽出部２２により抽出された領域に投影して表示させるオブジェクトを決定する。
【００４３】
［ポインティング操作の開始処理］
次に、本実施形態に係る表示システム１のポインティング操作の開始処理について、図５を参照しながら説明する。図５は、第１の実施形態に係るポインティング操作の開始処理を示した一例のフローチャートである。以降では、ユーザがポインティング操作を行うためにオブジェクト等を投影する表示対象物を選択してからポインタ及び各オブジェクトを当該表示対象物に投影して表示するまでの処理について説明する。
【００４４】
まず、ユーザは、入力部１１を介して、ポインティング操作を開始するための操作を行う。すると、投影画像生成部２６は、画像データ記憶部２８からポインタ画像データを取得し、ポインタを投影画像の中心に表示させる投影画像データを生成し、投影部１２に送信する。投影部１２は、投影画像生成部２６から受信した投影画像データに基づき投影画像Ｓ１を投影して表示させる。
【００４５】
そして、ユーザは、図６に示すように、ポインティング操作を行いたいと所望する表示対象物（ここでは、平面Ｌ）に、投影画像Ｓ１に含まれるポインタＰ１を投影して表示させる（ステップＳ５０１）。
【００４６】
次に、撮像部１３は、ポインタＰ１が所定の時間の間、同一の場所に表示されていることを契機として、又はユーザからの入力部１１を介した入力操作を契機として、投影画像Ｓ１を含む所定の範囲を撮像して、撮像画像データを生成する（ステップＳ５０２）。なお、このとき、撮像部１３により生成された撮像画像データには、例えば、各画素毎に、撮像装置１０２から撮像対象物までの第１の距離が関連付けられている。
【００４７】
ポインタ特定部２１及び領域抽出部２２は、撮像画像データに基づき、ポインタと、ポインティング操作の対象となる各オブジェクトを表示する領域を、撮像画像データから抽出する（ステップＳ５０３）。すなわち、ポインタ特定部２１及び領域抽出部２２は、例えば図７に示すように、撮像画像Ｗから平面Ｌに含まれる領域Ｒを抽出する。ここで、領域抽出部２２により抽出される領域Ｒは、例えば、ポインティング端末１０から表示対象物までの第１の距離等が滑らかに変化している領域等である。このような領域Ｒを抽出するための領域抽出処理については、図１０を用いて後述する。
【００４８】
オブジェクト決定部２３は、オブジェクト管理データ記憶部２９を参照し、領域抽出部２２により抽出された領域に投影して表示するオブジェクトを決定する（ステップＳ５０４）。より具体的には、オブジェクト決定部２３は、オブジェクトに対する操作履歴等を示すオブジェクト管理データをオブジェクト管理データ記憶部２９から取得する。そして、オブジェクト決定部２３は、オブジェクト管理データから領域Ｒに投影して表示させるオブジェクトを決定する。
【００４９】
例えば、直前のポインティング操作において、オブジェクトＡ〜Ｄがポインティング端末１０により投影して表示されていた場合、オブジェクト決定部２３は、オブジェクトＡ〜Ｄを領域Ｒに表示させると決定する。また、例えば、携帯端末２０に搭載されたアプリケーションＡに対応するオブジェクトＡが、直前のユーザの操作によりオブジェクトＡ'に変更された場合、オブジェクト決定部２３は、オブジェクトＡ'を領域Ｒに表示させると決定する。以降では、オブジェクト決定部２３は、オブジェクトＡ１〜Ｄ１を領域Ｒに表示させると決定したものとする。
【００５０】
次に、拡縮倍率決定部２４は、領域抽出部２２により抽出された領域Ｒに投影して表示されるポインタＰ１及び各オブジェクトＡ１〜Ｄ１のサイズ（拡縮倍率）を決定する（ステップＳ５０５）。また、位置決定部２５は、領域抽出部２２により抽出された領域Ｒに投影して表示されるポインタＰ１及び各オブジェクトＡ１〜Ｄ１の領域Ｒ内における表示位置を決定する（ステップＳ５０６）。すなわち、拡縮倍率決定部２４及び位置決定部２５は、図８に示すようにポインタＰ１及びオブジェクトＡ１〜Ｄ１の位置及びサイズが、領域Ｒ内においてポインティング操作がし易い位置及びサイズとなるように決定する。このような拡縮倍率の決定処理及び位置の決定処理については、それぞれ図１２及び図１４を用いて後述する。
【００５１】
なお、ステップＳ５０６において位置決定部２５は、ポインタＰ１の領域Ｒ内における表示位置を、上記のステップＳ５０２でポインタＰ１が投影して表示されている位置に決定してもよい。
【００５２】
次に、投影画像生成部２６は、拡縮倍率決定部２４により決定された拡縮倍率と、位置決定部２５により決定されたポインタＰ１及び各オブジェクトＡ１〜Ｄ１の位置とに基づき、画像データ記憶部２８から取得した投影元画像データから投影画像データを生成する。そして、投影部１２は、投影画像データに基づく投影画像を表示させる。これにより、図９に示すような投影画像Ｓ２が表示される。
【００５３】
図９に示す投影画像Ｓ２において、ポインタＰ２及びオブジェクトＡ２〜Ｄ２は、それぞれポインタＰ１及びオブジェクトＡ１〜Ｄ１のサイズ及び位置を拡縮倍率決定部２４により決定されたサイズ及び位置決定部２５により決定された位置で調整したものである。すなわち、投影画像生成部２６は、例えばポインタＰ１のポインタ画像データを、拡縮倍率決定部２４により決定された拡縮倍率で調整し、位置決定部２５により決定された位置に表示させる投影画像データを生成する。同様に、投影画像生成部２６は、例えばオブジェクトＡ１のオブジェクト画像データを、拡縮倍率決定部２４により決定された拡縮倍率で調整し、位置決定部２５により決定された位置に表示させる投影画像データを生成する。オブジェクトＢ１〜Ｄ１についても同様である。投影部１２は、このように生成された各投影画像データを重畳させて投影することで、図９に示すような投影画像Ｓ２を表示させることができる。
【００５４】
以上のように、本実施形態に係る表示システム１では、ポインティング操作を行いたいとユーザが所望する平面Ｌから領域Ｒを抽出する。そして、本実施形態に係る表示システム１では、抽出した領域Ｒ内に、ポインタＰ１及びオブジェクトＡ１〜Ｄ１のサイズ及び位置を調整したポインタＰ２及びオブジェクトＡ２〜Ｄ２を投影して表示させる。これにより、ユーザのポインティング操作を向上させることができる。
【００５５】
［領域抽出処理］
次に、図５のステップＳ５０３における領域抽出処理について、図１０を参照しながら説明する。図１０は、第１の実施形態に係る領域抽出処理の一例のフローチャートである。
【００５６】
まず、ポインタ特定部２１は、撮像画像からポインタを特定し、バウンディングボックスで囲む（ステップＳ１００１）。すなわち、ポインタ特定部２１は、画像データ記憶部２８からポインタＰ１のポインタ画像データを取得し、ポインタ画像データを用いて撮像画像データに対してテンプレートマッチング等の手法を用いることにより、ポインタＰ１を特定する。そして、ポインタ特定部２１は、図１１に示すように、特定したポインタＰ１を、ポインタＰ１を含む枠（バウンディングボックスＱ）で囲む。
【００５７】
次に、領域抽出部２２は、バウンディングボックスＱの各辺に対応する撮像画像データにおける画素の画素値ｐ１、・・・、ｐｎ（ｎは１以上の整数）を取得し、取得した画素値ｐ１、・・・、ｐｎの中央値Ｍ１を算出する（ステップＳ１００２）。
【００５８】
次に、領域抽出部２２は、撮像画像データにおいて、バウンディングボックスＱによって囲まれる範囲の各画素に関連付けられている第１の距離ｄ１、・・・、ｄｍ（ｍは１以上の整数）を取得し、取得した第１の距離ｄ１、・・・、ｄｍの中央値Ｍ２を算出する（ステップＳ１００３）。
【００５９】
続いて、領域抽出部２２は、撮像画像データにおいて、Ｍ１との差が予め設定された第１の閾値以下の画素で、かつ、Ｍ２との差が予め設定された第２の閾値以下となる第１の距離と関連付けられている画素を抽出する（ステップＳ１００４）。なお、第１の閾値及び第２の閾値は、本実施形態を実現するプログラムの設計時等に予め定められる。第１の閾値及び第２の閾値を適切に設定することで、ポインタＰ１の付近の画素の色が大きく変化しない画素であって、かつ、ポインタＰ１の付近と第１の距離が大きく変化しない画素を抽出することができる。
【００６０】
領域抽出部２２は、ステップＳ１００４で抽出された画素について、オープニング処理及びクロージング処理を行う（ステップＳ１００５）。このようなオープニング処理及びクロージング処理により、ステップＳ１００４で抽出された画素を描画した場合における穴や突起物を除去することができる。これにより、領域抽出部２２は、撮像画像データに基づき描画された撮像画像において、オープニング処理及びクロージング処理後の画素により描画される１以上の領域を得ることができる。
【００６１】
最後に、領域抽出部２２は、上記のステップＳ１００５で得られた１以上の領域のうち、ポインタＰ１が含まれる領域を抽出する（ステップＳ１００６）。このようにして領域抽出部２２により抽出された領域が、図７で示した領域Ｒである。
【００６２】
なお、領域抽出部２２は、ステップＳ１００２の処理を行わなくてもよい。この場合、領域抽出部２２は、ステップＳ１００４において中央値Ｍ２との差が第２の閾値以下となる第１の距離と関連付けられている画素を抽出すればよい。このように、領域抽出部２２は、第１の距離に基づき領域Ｒを抽出してもよい。ただし、領域抽出部２２は、図１０で説明したように第１の距離と画素値とに基づいて領域を抽出した方が、よりポインティング操作に適した領域を抽出することができる場合が多い。
【００６３】
［拡縮倍率の決定処理］
次に、図５のステップＳ５０５における拡縮倍率の決定処理について、図１２を参照しながら説明する。図１２は、第１の実施形態に係る拡縮倍率の決定処理の一例のフローチャートである。
【００６４】
まず、拡縮倍率決定部２４は、撮像画像におけるポインタの面積と、領域抽出部２２により抽出された領域の面積とを算出する（ステップＳ１２０１）。すなわち、拡縮倍率決定部２４は、図１３に示すように、撮像画像Ｗにおいて、バウンディングボックスＱで囲まれる範囲の面積をポインタＰ１の面積Ｂｐとして算出する。また、拡縮倍率決定部２４は、領域抽出部２２により抽出された領域Ｒの面積Ｂｒを算出する。ここで、面積ＢｐはバウンディングボックスＱに含まれる画素数、面積Ｂｒは領域Ｒに含まれる画素数を面積として算出すればよい。
【００６５】
次に、拡縮倍率決定部２４は、投影画像におけるポインタの面積とオブジェクトの面積とを算出する（ステップＳ１２０２）。すなわち、拡縮倍率決定部２４は、ポインタＰ１のポインタ画像データを画像データ記憶部２８から取得し、ポインタ画像データの画素数を投影画像におけるポインタＰ１の面積Ａｐとする。また、拡縮倍率決定部２４は、オブジェクトＡ１〜Ｄ１それぞれのオブジェクト画像データを画像データ記憶部２８から取得し、各オブジェクト画像データの画素数の合計を投影画像におけるオブジェクトＡ〜Ｄの面積Ａｏとする。
【００６６】
最後に、拡縮倍率決定部２４は、以下の式（１）〜（３）により、拡縮倍率ｓを算出する（ステップＳ１２０３）。そして、拡縮倍率決定部２４は、このように算出された拡縮倍率ｓを、領域抽出部２２により抽出された領域に投影して表示するポインタＰ１及び各オブジェクトＡ１〜Ｄ１のサイズ（拡縮倍率）と決定する。上述したように、投影画像生成部２６は、投影元画像データに対して拡縮倍率ｓで調整することで、投影画像に表示されるポインタ及びオブジェクトのサイズを調整する。
【００６７】
まず、拡縮倍率決定部２４は、以下の式（１）により、拡縮倍率ｓで調整せずにオブジェクトＡ１〜Ｄ１を投影して表示した場合に、撮像部１３で撮像することにより生成される撮像画像データにおけるオブジェクトＡ１〜Ｄ１の面積の合計Ｂｏを算出する。
【００６８】
【数１】
0006435964.tif 000002
【００６９】
次に、拡縮倍率決定部２４は、面積Ｂｐと面積Ｂｏの合計を拡縮倍率ｓの二乗で拡縮させた面積と、面積Ｂｒとの比が、予め設定された面積比ｋとなることなることが、以下の式（２）が導出される。なお、面積比ｋの値は、本実施形態を実現するプログラムの設計時等に予め定められる。面積比ｋを大きな値に設定することで領域に対してポインタ及びオブジェクトが示す割合を大きくすることができる一方で、面積比ｋを小さな値に設定することで領域に対してポインタ及びオブジェクトが占める割合を小さくすることができる。
【００７０】
【数２】
0006435964.tif 000003
【００７１】
拡縮倍率決定部２４は、式（１）及び（２）を用いて、以下の式（３）により拡縮倍率ｓを算出する。
【００７２】
【数３】
0006435964.tif 000004
【００７３】
［位置の決定処理］
次に、図５のステップＳ５０６における位置の決定処理について、図１４を参照しながら説明する。図１４は、第１の実施形態に係る位置の決定処理の一例のフローチャートである。図１４に示す位置の決定処理は、ポインタＰ１及びオブジェクトＡ１〜Ｄ１を電荷ｑの荷電粒子と見做して、斥力モデルでシミュレーションを行うことにより、ポインタＰ１及びオブジェクトＡ１〜Ｄ１の位置を決定する。
【００７４】
まず、位置決定部２５は、領域抽出部２２により抽出された領域の境界に、所定の間隔毎に、電荷ｑの荷電粒子を配置する（ステップＳ１４０１）。すなわち、図１５に示すように、領域Ｒの境界に、所定の間隔毎に、電荷ｑの荷電粒子を配置する。
【００７５】
次に、位置決定部２５は、後述するステップＳ１４０３〜ステップＳ１４０５の処理を所定の回数繰り返したかを判定する（ステップＳ１４０２）。位置決定部２５は、ステップＳ１４０３〜ステップＳ１４０５の処理を所定の回数繰り返した場合、ステップＳ１４０６に進む。一方、位置決定部２５は、ステップＳ１４０３〜ステップＳ１４０５の処理を所定の回数繰り返していない場合、ステップＳ１４０３に進む。ここで、所定の回数としては、例えば、数千回乃至数万回が挙げられる。
【００７６】
ステップＳ１４０２において、所定の回数繰り返していないと判定された場合、位置決定部２５は、ポインタＰ１及びオブジェクトＡ１〜Ｄ１について、他の荷電粒子から受ける斥力の和を算出する（ステップＳ１４０２）。
【００７７】
例えば、図１５に示すように、オブジェクトＣ１について、ポインタＰ１から受ける斥力Ｆ１と、他のオブジェクトＡ１〜Ｂ１及びＤ１からそれぞれ受ける斥力Ｆ２と、領域Ｒの境界の荷電粒子からそれぞれ受ける斥力Ｆ３との和を算出する。このような各斥力Ｆｎ（ｎは１以上の整数）は、クーロンの法則により、荷電粒子間の第２の距離をｒ、クーロン定数をｋ１、とすれば、以下の式（４）により表される。したがって、各斥力Ｆｎの和Ｆは、各斥力Ｆｎのベクトルの和により算出することができる。
【００７８】
【数４】
0006435964.tif 000005
【００７９】
位置決定部２５は、ポインタＰ１及び他のオブジェクトＡ１〜Ｂ１及びＤ１についても、上記と同様に、それぞれ他の荷電粒子から受ける斥力の和を算出する。
【００８０】
次に、位置決定部２５は、時点ｔにおけるポインタＰ１及びオブジェクトＡ１〜Ｄ１の加速度を算出する（ステップＳ１４０４）。なお、時点ｔとは、位置決定部２５によりステップＳ１４０３〜ステップＳ１４０５の処理を繰り返す際に１ずつ加算されるカウンタ変数である。時点ｔは、初期値を０として、位置決定部２５によりステップＳ１４０３〜ステップＳ１４０５が実行される都度、１ずつ加算される。
【００８１】
例えば、オブジェクトＡ１について、ステップＳ１４０３で算出された斥力の和Ｆ（ここで、時点ｔにおける斥力の和ＦをＦｔと表す）を用いて、運動方程式により、以下の式（５）により表される。
【００８２】
【数５】
0006435964.tif 000006
【００８３】
なお、上記の式（５）において、質量ｍは、加速度ａｔを調整するための予め定められた値である。質量ｍは、ポインタＰ１及びオブジェクトＡ１〜Ｄ１のそれぞれについて、同一の値としてもよいし、異なる値としてもよい。
【００８４】
位置決定部２５は、ポインタＰ１及び他のオブジェクトＢ１〜Ｄ１についても、上記と同様に、ステップＳ１４０３で算出された斥力の和を用いて、時点ｔにおける加速度を算出する。
【００８５】
続いて、位置決定部２５は、ステップＳ１４０４で算出された時点ｔにおけるポインタＰ１及びオブジェクトＡ１〜Ｄ１それぞれの加速度を用いて、それぞれの領域Ｒ内における位置を算出する（ステップＳ１４０５）。
【００８６】
例えば、オブジェクトＡ１について、ステップＳ１４０４で算出された時点ｔにおける加速度ａｔを用いて、時点ｔ＋１における速度ｖｔ＋１及び位置ｘｔ＋１は、それぞれ以下の式（６）及び式（７）で表される。ここで、Δｔは、時点ｔから時点ｔ＋１となる間に経過した時間として予め設定された値である。
【００８７】
【数６】
0006435964.tif 000007
【００８８】
【数７】
0006435964.tif 000008
【００８９】
なお、式（６）において、時点ｔ＝０の速度ｖ０は、例えばｖ０＝０とすればよい。また、式（７）において、時点ｔ＝０の位置ｘ０は、ポインタＰ１やオブジェクトＡ１〜Ｄ１の初期位置とすればよい。このようにして、位置決定部２５は、時点ｔにおいてポインタＰ１及びオブジェクトＡ１〜Ｄ１が受ける斥力から時点ｔ＋１におけるポインタＰ１及びオブジェクトＡ１〜Ｄ１の位置ｘｔ＋１を算出する。
【００９０】
位置決定部２５は、ポインタＰ１及び他のオブジェクトＢ１〜Ｄ１についても、上記と同様に、ステップＳ１４０４で算出された加速度を用いて、時点ｔ＋１における位置を算出する。
【００９１】
ステップＳ１４０２において、所定の回数繰り返したと判定された場合、位置決定部２５は、ステップＳ１４０５で算出されたポインタＰ１及びオブジェクトＡ１〜Ｄ１の位置を、ポインタＰ２及びオブジェクトＡ２〜Ｄ２の位置に決定する（ステップＳ１４０６）。
【００９２】
なお、上記のステップＳ１４０５において、式（５）の代わりに、式（５）に対して予め設定された所定の定数ｋ２を用いた抵抗を示す項を追加した以下の式（８）を用いてもよい。これにより、よりポインティング操作を行い易い位置にポインタＰ１及びオブジェクトＡ１〜Ｄ１の位置を決定できる場合がある。
【００９３】
【数８】
0006435964.tif 000009
【００９４】
また、図１４では、ポインタＰ１及びオブジェクトＡ１〜Ｄ１の電荷並びに領域Ｒの境界に配置される荷電粒子の電荷をいずれも同一の値ｑとしたが、これに限られず、それぞれ異なる値としてもよい。例えば、ポインタＰ１の電荷をｑ１、オブジェクトＡ１〜Ｄ１をｑ２、領域Ｒの境界に配置される荷電粒子の電荷をｑ３としてもよい。さらに、オブジェクトＡ１〜Ｄ１のそれぞれの電荷を異なるようにしてもよいし、領域Ｒの境界に配置されるそれぞれの荷電粒子の電荷も異なるようにしてもよい。例えば、領域Ｒの形状に応じて、境界に配置される荷電粒子の電荷を異なるようにすることで、よりポインティング操作を行い易い位置にポインタＰ１及びオブジェクトＡ１〜Ｄ１の位置を決定できる場合がある。
【００９５】
また、上記の説明では、ポインタＰ１及びオブジェクトＡ１〜Ｄ１ついてステップＳ１４０３〜ステップＳ１４０５の処理を繰り返し実行したが、ポインタＰ１についてはステップＳ１４０３〜ステップＳ１４０５の処理を実行しないようにしてもよい。すなわち、位置決定部２５は、ポインタＰ１の位置を、図５のステップＳ５０２でポインタＰ１が投影して表示されている位置に決定してもよい。
【００９６】
［ポインティング操作処理］
次に、本実施形態に係る表示システム１においてポインティング操作を行う処理について、図１６を参照しながら説明する。図１６は、第１の実施形態に係るポインティング操作処理の一例のフローチャートである。上述したように、本実施形態に係る表示システム１では、ポインティング端末１０に搭載されたモーションセンサ１０３から得られる姿勢変化量データを用いて、ポインタによりオブジェクトに対してポインティング操作を行う。なお、以降では、ポインティング端末１０により図９に示す投影画像Ｓ２が表示されているものとして説明する。
【００９７】
まず、変化量取得部１４は、ポインティング端末１０の姿勢が変化したか否かを判定する（ステップＳ１６０１）。これは、変化量取得部１４がモーションセンサ１０３から姿勢変化量データを取得したか否かにより判定すればよい。変化量取得部１４によりポインティング端末１０の姿勢が変化したと判定されていない場合、何もしない。一方、変化量取得部１４によりポインティング端末１０の姿勢が変化したと判定された場合、ステップＳ１６０２に進む。
【００９８】
ステップＳ１６０１において、変化量取得部１４によりポインティング端末１０の姿勢が変化したと判定された場合、変化量取得部１４は、モーションセンサ１０３から取得した姿勢変化量データを変化量算出部２７に送信する。そして、変化量算出部２７は、姿勢変化量データに基づき、ポインティング端末１０の姿勢の変化に伴うオブジェクトＡ２〜Ｄ２の位置の変化量を算出する（ステップＳ１６０２）。これについて、オブジェクトＡ２の位置の変化量を算出する場合について、図１７を参照しながら説明する。なお、以降では、姿勢変化後のオブジェクトＡ２を「オブジェクトＡ２'」とする。
【００９９】
まず、図１７に示すように、姿勢変化前の投影画像Ｓ２において、投影面と水平にｘ軸として、中心を原点と定める。このとき、図１７に示すように、投影画像Ｓ２のｘ軸方向の幅の半分をｘｗ（画素）、オブジェクトＡ２のｘ軸方向の位置をｘａ（画素）、ポインティング端末１０の画角をθｗ、オブジェクトＡ２のｘ軸の原点からの角度をθａ、姿勢変化量データをΔθとする。また、オブジェクトＡ２'のｘ軸方向の位置をｘｂ（画素）とする。このとき、ｘｗ：ｘａ＝ｔａｎθｗ：ｔａｎθａより、以下の式（９）が算出される。
【０１００】
【数９】
0006435964.tif 000010
【０１０１】
また、ｘｗ：ｘｂ＝ｔａｎθｗ：ｔａｎ（θａ＋Δθ）より、以下の式（１０）が算出される。
【０１０２】
【数１０】
0006435964.tif 000011
【０１０３】
したがって、変化量算出部２７は、式（９）及び式（１０）から姿勢変化に伴うオブジェクトＡ２のｘ軸方向の位置の変化量ｘｂ−ｘａを算出することができる。同様に、投影画像Ｓ２においてｘ軸と直交するｙ軸においても上記と同様の計算を行うことにより、変化量算出部２７は、姿勢変化に伴うオブジェクトＡ２のｙ軸方向の位置の変化量ｙｂ−ｙａを算出することができる。これにより、変化量算出部２７は、投影画像Ｓ２において姿勢変化に伴うオブジェクトＡ２の位置の変化量を算出することができる。なお、他のオブジェクトＢ２〜Ｄ２についても上記と同様に位置の変化量が算出される。
【０１０４】
投影画像生成部２６は、ステップＳ１６０２で算出された位置の変化量に基づき、各オブジェクトＡ２〜Ｄ２の位置が、姿勢変化により変化しないように、投影画像データを生成する。そして、投影部１２は、投影画像生成部２６により生成された投影画像データを投影して、投影画像を表示させる（ステップＳ１６０３）。
【０１０５】
例えば、投影画像生成部２６は、上記で算出されたオブジェクトＡ２〜Ｄ２の位置の変化量を、姿勢変化後の投影画像データのオブジェクトＡ２'〜Ｄ２'の位置から減算した投影画像データを生成する。これにより、投影部１２により投影される姿勢変化後の投影画像は、ポインタＰ２の位置は姿勢変化に応じて変化して表示される一方で、オブジェクトＡ２〜Ｄ２の位置は姿勢変化に関わらず変化せずに表示される。このため、ユーザは、ポインティング端末１０を用いて、ポインタＰ２でオブジェクトＡ２〜Ｄ２に対してポインティング操作を行うことができる。
【０１０６】
＜第２の実施形態＞
次に、第２の実施形態に係る表示システム１について説明する。第２の実施形態の説明では、第１の実施形態との相違点について説明し、第１の実施形態と実施的に同様の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【０１０７】
［機能構成］
図１８は、第２の実施形態に係る表示システムの機能構成例を示す図である。第２の実施形態に係る表示システム１の携帯端末２０が有する位置決定部２５Ａは、第１の実施形態と異なる手法により、領域抽出部２２により抽出された領域に投影して表示させるポインタ及び各オブジェクトの位置を決定する。より詳しくは、位置決定部２５Ａは、抽出された領域を囲むバウンディングボックスを、所定の回数、分割する。そして、分割により得られた領域の所定の位置を、ポインタ及び各オブジェクトの位置と決定する。
【０１０８】
［位置の決定処理］
次に、図５のステップＳ５０６における位置の決定処理について、図１９を参照しながら第２の実施形態を説明する。図１９は、第２の実施形態に係る位置の決定処理の一例のフローチャートである。
【０１０９】
まず、位置決定部２５Ａは、撮像画像において、領域抽出部２２により抽出された領域Ｒ'をバウンディングボックスＱ'で囲む（ステップＳ１９０１）。すなわち、位置決定部２５Ａは、図２０（ａ）に示すように、領域Ｒ'をバウンディングボックスＱ'で囲む。
【０１１０】
なお、位置決定部２５Ａは、領域Ｒ'をバウンディングボックスＱ'で囲む際に、有向バウンディングボックスを用いてもよい。有効バウンディングボックスを用いることで、位置決定部２５Ａは、領域Ｒ'を囲む際により適した（すなわち、領域Ｒ'に外接する点が多い）バウンディングボックスを求めることができる。
【０１１１】
次に、位置決定部２５Ａは、バウンディングボックスＱ'の長手方向を等分するように、バウンディングボックスＱ'により囲まれる範囲を分割する（ステップＳ１９０２）。すなわち、位置決定部２５Ａは、図２０（ａ）に示す「１回目の分割」を行う。これにより、バウンディングボックスＱ'で囲まれる範囲を分割して、２つの四角形が得られる。
【０１１２】
なお、バウンディングボックスＱ'が正方形である場合、位置決定部２５Ａは、所定の１つの辺を等分するように分割すればよい。
【０１１３】
続いて、位置決定部２５Ａは、バウンディングボックスＱ'により囲まれる範囲の分割により得られた四角形の数が、投影して表示するポインタとオブジェクトの数以上であるかを判定する（ステップＳ１９０３）。分割して得られた四角形の数が、投影して表示するポインタとオブジェクトの数未満である場合、ステップＳ１９０４に進む。一方、分割して得られた四角形の数が、投影して表示するポインタとオブジェクトの数以上である場合、ステップＳ１９０５に進む。
【０１１４】
ステップＳ１９０３において、分割して得られた四角形の数が、投影して表示するポインタとオブジェクトの数未満である場合、位置決定部２５Ａは、分割して得られた四角形を、さらに、長手方向を等分するように分割する（ステップＳ１９０４）。すなわち、位置決定部２５Ａは、図２０（ａ）に示す「２回目の分割」を行う。このように、位置決定部２５Ａは、分割により得られた四角形の数が、投影して表示するポインタとオブジェクトの数以上となるまで、繰り返し分割を行う。
【０１１５】
ステップＳ１９０３において、分割して得られた四角形の数が、投影して表示するポインタとオブジェクトの数以上である場合、位置決定部２５Ａは、分割して得られた各四角形の重心の位置を、ポインタ及びオブジェクトの位置と決定する（ステップＳ１９０５）。すなわち、位置決定部２５Ａは、図２０（ｂ）に示すように、分割により得られた各四角形の重心の位置を、ポインタＰ２及びオブジェクトＡ２〜Ｄ２それぞれの位置と決定する。
【０１１６】
ここで、どの四角形の重心の位置をポインタＰ２の位置とするか、また、一の四角形の重心の位置をオブジェクトＡ２〜Ｄ２のいずれの位置とするかは、次のように決定すればよい。すなわち、例えば、領域Ｒ'の中心又は重心の位置に最も近い四角形の重心の位置をポインタＰ２の位置とし、このポインタＰ２の位置から所定の順序（例えば、時計回り）で、各四角形の重心の位置をオブジェクトＡ２〜Ｄ２の位置とすればよい。
【０１１７】
なお、ステップＳ１９０３において、四角形の重心の位置が、例えば、領域Ｒ'の境界から所定の範囲内にある場合には、この重心をポインタ又はオブジェクトを配置する位置から除外してもよい。四角形の重心の位置が領域Ｒ'の境界の付近にあるような場合、この位置にオブジェクト等を配置すると、投影されるオブジェクトが領域Ｒ'の外にはみ出てしまうことがあるためである。
【０１１８】
＜第３の実施形態＞
次に、第３の実施形態に係る表示システム１について説明する。第３の実施形態の説明では、第１の実施形態との相違点について説明し、第１の実施形態と実施的に同様の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【０１１９】
［機能構成］
図２１は、第３の実施形態に係る表示システムの機能構成例を示す図である。第３の実施形態に係る表示システム１の携帯端末２０が有する拡縮倍率決定部２４Ａは、位置決定部２５により投影して表示させるポインタ及び各オブジェクトの位置が決定された後に、サイズ（拡縮倍率）を決定する点が第１の実施形態と異なる。
【０１２０】
［拡縮倍率の決定処理］
次に、図５のステップＳ５０５における拡縮倍率の決定処理について、図２１を参照しながら第３の実施形態を説明する。図２２は、第３の実施形態に係る拡縮倍率の決定処理の一例のフローチャートである。ここで、上述したように、本実施形態では、図５のステップＳ５０５の処理の前に、ステップＳ５０６の処理が行われる。すなわち、以降で説明する拡縮倍率の決定処理は、ポインタＰ２及びオブジェクトＡ２〜Ｄ２の位置が位置決定部２５により決定された後に行われる。なお、ポインタＰ２及びオブジェクトＡ２〜Ｄ２の位置の決定は、第２の実施形態の位置決定部２５Ａにより行われてもよい。
【０１２１】
以降では、オブジェクトＡ１の拡縮倍率ｓａを決定する場合について、説明する。ポインタＰ１及びオブジェクトＢ１〜Ｄ１の拡縮倍率を決定する場合についても、以降のステップＳ２２０１〜ステップＳ２２０３の処理をそれぞれ行えばよい。したがって、本実施形態では、ポインタＰ１及びオブジェクトＡ１〜Ｄ１のそれぞれに対して、異なる拡縮倍率が決定される。
【０１２２】
まず、拡縮倍率決定部２４Ａは、拡縮倍率ｓａで調整せずにオブジェクトＡ１を投影して表示した場合に、撮像部１３で撮像することにより生成される撮像画像データにおけるオブジェクトＡ１の外接円の半径ｒａを算出する（ステップＳ２２０１）。このような半径ｒａは、オブジェクトＡ１のオブジェクト画像データの外接円の半径に対して、上述した式（１）で用いたＢｐ／Ａｐの正の平方根√（Ｂｐ／Ａｐ）を乗じることで算出することができる。なお、オブジェクトＡ１のオブジェクト画像データと、撮像画像データにおけるオブジェクトＡ１との長さの比を、例えばそれぞれのバウンディングボックスの横幅の比として算出してもよい。
【０１２３】
次に、拡縮倍率決定部２４Ａは、位置決定部２５により決定された位置にポインタＰ１及びオブジェクトＡ１〜Ｄ１が配置された場合における他のオブジェクト等との第２の距離を算出する。すなわち、拡縮倍率決定部２４Ａは、オブジェクトＡ１とポインタＰ１との第２の距離Ｔ１、オブジェクトＡ１と他のオブジェクトＢ１〜Ｄ１それぞれとの第２の距離Ｔ２〜Ｔ４、及びオブジェクトＡ１と領域Ｒの境界との第２の距離Ｔ５を算出する。そして、拡縮倍率決定部２４Ａは、算出されたＴ１〜Ｔ５のうち、最小の第２の距離を算出する（ステップＳ２２０２）。ここでは、拡縮倍率決定部２４Ａは、最小の第２の距離としてＴ５を算出したものとする。
【０１２４】
最後に、拡縮倍率決定部２４Ａは、予め設定された所定の値ｋ３を用いて、以下の式（１１）により拡縮倍率ｓａを算出する（ステップＳ２２０３）。これにより、オブジェクトＡ１に対する拡縮倍率ｓａが算出される。本実施形態では、このようにポインタＰ１及びオブジェクトＡ１〜Ｄ１に対して、それぞれ拡縮倍率が算出される。なお、ｋ３の値は、本実施形態を実現するプログラムの設計時等に予め定められる。
【０１２５】
【数１１】
0006435964.tif 000012
【０１２６】
以上に一例を説明したように、第１の実施形態に係る表示システム１によれば、ユーザは、ポインティング操作を行うための平面を選択することができる。このとき、第１の実施形態に係る表示システム１によれば、選択された表示対象物からポインティング操作を行い易い領域を抽出して、この抽出した領域内に、ポインティング操作を行い易いようにポインタやオブジェクトのサイズや位置を調整した上で投影して表示する。これにより、第１の実施形態に係る表示システム１によれば、ユーザが所望する表示対象物から抽出された領域内においてポインティング操作を行うことができ、ユーザのポインティング操作を向上させることができる。
【０１２７】
また、第２の実施形態に係る表示システム１によれば、抽出した領域内に投影されるポインタ及びオブジェクトの位置を、簡易な方法で決定することができる。
【０１２８】
さらに、第３の実施形態に係る表示システム１によれば、抽出した領域内容に投影されるポインタ及びオブジェクトのサイズを、ポインタ及びオブジェクト毎に決定することができる。これにより、第３の実施形態に係る表示システム１によれば、抽出された領域内に投影させるポインタ及びオブジェクトのサイズをそれぞれ異なるようにすることができる。
【０１２９】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【０１３０】
以上の説明に関し、更に以下の項を開示する。
（付記１）
複数のアプリケーションを操作するポインタを表示対象物に投影して表示する表示部と、
前記ポインタが投影された前記表示対象物までの第１の距離を算出する算出部と、
前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出する抽出部と、
前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する決定部と
を有し、
前記表示部は、
前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する、表示装置。
（付記２）
前記表示対象物を撮像して画像を得る撮像部を有し、
前記抽出部は、
前記画像における前記表示対象物の画素及び前記第１の距離に基づいて、前記表示対象物において、前記領域を抽出する、付記１に記載の表示装置。
（付記３）
前記決定部は、
さらに、前記ポインタ及び前記複数のオブジェクトの拡縮倍率を、前記画像に基づいて決定する、付記２に記載の表示装置。
（付記４）
前記決定部は、
前記複数のオブジェクトの間の距離、前記ポインタと前記複数のオブジェクトとの間の距離、及び前記領域の境界と前記複数のオブジェクトと間の距離を示す第２の距離に基づいて、前記位置を決定する、付記１ないし３のいずれか１項に記載の表示装置。
（付記５）
前記決定部は、
前記第２の距離を用いた斥力モデルに基づいて、前記位置を決定する、付記４に記載の表示装置。
（付記６）
複数のアプリケーションを操作するポインタを表示対象物に投影して表示し、
前記ポインタが投影された前記表示対象物までの第１の距離を算出し、
前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出し、
前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する
処理を表示装置に実行させ、
前記表示する処理は、
前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する、プログラム。
（付記７）
前記表示対象物を撮像して画像を得る処理を前記表示装置に実行させ、
前記抽出する処理は、
前記画像における前記表示対象物の画素及び前記第１の距離に基づいて、前記表示対象物において、前記領域を抽出する、付記６に記載のプログラム。
（付記８）
前記決定する処理は、
さらに、前記ポインタ及び前記複数のオブジェクトの拡縮倍率を、前記画像に基づいて決定する、付記７に記載のプログラム。
（付記９）
前記決定する処理は、
前記複数のオブジェクトの間の距離、前記ポインタと前記複数のオブジェクトとの間の距離、及び前記領域の境界と前記複数のオブジェクトと間の距離を示す第２の距離に基づいて、前記位置を決定する、付記６ないし８のいずれか１項に記載のプログラム。
（付記１０）
前記決定する処理は、
前記第２の距離を用いた斥力モデルに基づいて、前記位置を決定する、付記９に記載のプログラム。
（付記１１）
複数のアプリケーションを操作するポインタを表示対象物に投影して表示し、
前記ポインタが投影された前記表示対象物までの第１の距離を算出し、
前記第１の距離に基づいて、前記表示対象物において、前記ポインタにより操作される前記複数のアプリケーションに対応する複数のオブジェクトを表示する領域を抽出し、
前記領域内において前記複数のオブジェクトが重畳しない位置を、前記複数のオブジェクト及び前記ポインタのそれぞれの相対位置に基づいて決定する
処理を表示装置が実行し、
前記表示する処理は、
前記ポインタと、前記決定された位置に前記複数のオブジェクトとを投影して表示する、表示方法。
（付記１２）
前記表示対象物を撮像して画像を得る処理を表示装置が実行し、
前記抽出する処理は、
前記画像における前記表示対象物の画素及び前記第１の距離に基づいて、前記表示対象物において、前記領域を抽出する、付記１１に記載の表示方法。
（付記１３）
前記決定する処理は、
さらに、前記ポインタ及び前記複数のオブジェクトの拡縮倍率を、前記画像に基づいて決定する、付記１２に記載の表示方法。
（付記１４）
前記決定する処理は、
前記複数のオブジェクトの間の距離、前記ポインタと前記複数のオブジェクトとの間の距離、及び前記領域の境界と前記複数のオブジェクトと間の距離を示す第２の距離に基づいて、前記位置を決定する、付記１１ないし１３のいずれか１項に記載の表示方法。
（付記１５）
前記決定する処理は、
前記第２の距離を用いた斥力モデルに基づいて、前記位置を決定する、付記１４に記載の表示方法。
【符号の説明】
【０１３１】
１：表示システム
１０：ポインティング端末
１１：入力部
１２：投影部
１３：撮像部
１４：変化量取得部
２０：携帯端末
２１：ポインタ特定部
２２：領域抽出部
２３：オブジェクト決定部
２４：拡縮倍率決定部
２５：位置決定部：
２６：投影画像生成部
２７：変化量算出部
２８：画像データ記憶部
２９：オブジェクト管理データ記憶部
【図１】
0006435964.tif 000013
【図２】
0006435964.tif 000014
【図３】
0006435964.tif 000015
【図４】
0006435964.tif 000016
【図５】
0006435964.tif 000017
【図６】
0006435964.tif 000018
【図７】
0006435964.tif 000019
【図８】
0006435964.tif 000020
【図９】
0006435964.tif 000021
【図１０】
0006435964.tif 000022
【図１１】
0006435964.tif 000023
【図１２】
0006435964.tif 000024
【図１３】
0006435964.tif 000025
【図１４】
0006435964.tif 000026
【図１５】
0006435964.tif 000027
【図１６】
0006435964.tif 000028
【図１７】
0006435964.tif 000029
【図１８】
0006435964.tif 000030
【図１９】
0006435964.tif 000031
【図２０】
0006435964.tif 000032
【図２１】
0006435964.tif 000033
【図２２】
0006435964.tif 000034
【図２３】
0006435964.tif 000035