(57)【特許請求の範囲】
【請求項１】
表示装置と通信可能な情報処理装置であって、
表示装置と現実空間とを対応付けて管理する管理手段と、
複数の現実空間のうち第１の現実空間にいるユーザの着目点を特定する特定手段と、
前記管理手段により管理された表示装置のうち、前記第１の現実空間とは異なる第２の現実空間に対応付けて管理されている表示装置を特定し、当該特定された表示装置に、前記特定手段により特定された前記第１の現実空間にいるユーザの前記着目点にかかる情報を表示させるべく制御する表示制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記複数の現実空間とは、複数の部屋または建物であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記特定手段は、前記ユーザの表示装置の位置姿勢から特定されるユーザの視線方向と、当該視線方向にある物体の情報から、当該物体にかかる前記ユーザの着目点を特定することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記表示装置の現実空間上の位置は、現実空間に対応する１または複数の仮想空間において管理され、
前記情報処理装置は、
前記表示装置の位置が管理されている仮想空間における、前記ユーザの着目点の位置を決定する決定手段と、
を備え、
前記表示制御手段は、前記表示装置において、前記決定手段により決定された仮想空間上の前記着目点の位置に応じて、現実に重ねて前記着目点にかかる情報を表示させるべく制御することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記表示制御手段は、前記ユーザの着目点の表示指示がされた表示装置に対して、前記着目点にかかる情報を表示させるべく制御することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記特定手段は、前記表示装置において前記着目点にかかる情報の表示指示がされたユーザの着目点を特定することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
表示装置と通信可能な情報処理装置の制御方法であって、
管理手段が、表示装置と現実空間とを対応付けて管理する管理工程と、
特定手段が、複数の現実空間のうち第１の現実空間にいるユーザの着目点を特定する特定工程と、
表示制御手段が、前記管理工程により管理された表示装置のうち、前記第１の現実空間とは異なる第２の現実空間に対応付けて管理されている表示装置を特定し、当該特定された表示装置に、前記特定工程により特定された前記第１の現実空間にいるユーザの前記着目点にかかる情報を表示させるべく制御する表示制御工程と、
を含む制御方法。
【請求項８】
表示装置と通信可能な情報処理装置を、
表示装置と現実空間とを対応付けて管理する管理手段と、
複数の現実空間のうち第１の現実空間にいるユーザの着目点を特定する特定手段と、
前記管理手段により管理された表示装置のうち、前記第１の現実空間とは異なる第２の現実空間に対応付けて管理されている表示装置を特定し、当該特定された表示装置に、前記特定手段により特定された前記第１の現実空間にいるユーザの前記着目点にかかる情報を表示させるべく制御する表示制御手段として機能させるためのプログラム。
【請求項９】
表示装置と情報処理装置を含む情報処理システムであって、
表示装置と現実空間とを対応付けて管理する管理手段と、
複数の現実空間のうち第１の現実空間にいるユーザの着目点を特定する特定手段と、
前記管理手段により管理された表示装置のうち、前記第１の現実空間とは異なる第２の現実空間に対応付けて管理されている表示装置を特定し、当該特定された表示装置に、前記特定手段により特定された前記第１の現実空間にいるユーザの前記着目点にかかる情報を表示させるべく制御する表示制御手段と、
を備えることを特徴とする情報処理システム。
【請求項１０】
表示装置と情報処理装置を含む情報処理システムの制御方法であって、
管理手段が、表示装置と現実空間とを対応付けて管理する管理工程と、
特定手段が、複数の現実空間のうち第１の現実空間にいるユーザの着目点を特定する特定工程と、
表示制御手段が、前記管理工程により管理された表示装置のうち、前記第１の現実空間とは異なる第２の現実空間に対応付けて管理されている表示装置を特定し、当該特定された表示装置に、前記特定工程により特定された前記第１の現実空間にいるユーザの前記着目点にかかる情報を表示させるべく制御する表示制御工程と、
を含む制御方法。
【請求項１１】
表示装置と情報処理装置を含む情報処理システムを制御するプログラムであって、
前記情報処理システムを、
表示装置と現実空間とを対応付けて管理する管理手段と、
複数の現実空間のうち第１の現実空間にいるユーザの着目点を特定する特定手段と、
前記管理手段により管理された表示装置のうち、前記第１の現実空間とは異なる第２の現実空間に対応付けて管理されている表示装置を特定し、当該特定された表示装置に、前記特定手段により特定された前記第１の現実空間にいるユーザの前記着目点にかかる情報を表示させるべく制御する表示制御手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
従来、カメラで撮影することで得られる現実空間の画像とコンピュータで生成された仮想空間の画像（仮想オブジェクト）とを重畳させて、ヘッドマウントディスプレイ（ＨＭＤ）やスマートフォンに表示させる技術が存在する。例えば、複合現実感（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ、以下、ＭＲ）技術や拡張現実感（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ、以下、ＡＲ）技術などがある。
【０００３】
特にＭＲ技術は、ユーザが装着したＨＭＤに現実空間の画像と仮想空間の画像とを重畳させてリアルタイムに表示するので、あたかも現実空間の中に仮想空間の画像が表示されているかのように見え、臨場感が非常に高い。このため、ＭＲ技術を用いた様々な活用が考えられている。
【０００４】
例えば特許文献１では、上述した複合現実の仕組みを利用して、ＨＭＤの位置姿勢に応じてユーザの注目する対象物を特定してアノテーションを生成し、他のユーザに当該アノテーションを提示する技術が公開されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−０６２７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば、東京の部屋（Ａ地点）・大阪の部屋（Ｂ地点）等、遠隔地間でＭＲの技術を利用した会議が行われている。ＭＲ空間（現実空間に仮想空間を重ね合わせた空間）に配置された仮想オブジェクトを視覚的に共有することで、遠隔地であっても、例えば仮想オブジェクトで形状を再現した製品のデザイン検討や、仮想オブジェクトで再現したショールームの内装検討等を円滑に行うことができる。
【０００７】
しかし、遠隔地間で共有されるのは仮想オブジェクトの形状及び座標情報、音声等であり、現実空間の画像は共有されないため、例えばＢ地点のユーザがある仮想オブジェクトを指差してＡ地点のユーザに話しかけたとしても、Ａ地点のユーザにはＢ地点のユーザの手が見えず、Ｂ地点のユーザが指差している対象・指差している位置が分からない。
【０００８】
特許文献１の技術を用いて他のユーザが注目している位置にアノテーションを付与することが考えられるが、ＭＲ空間を共有している全てのユーザの注目している対象物についてアノテーションを出してしまうと会議の参加人数に応じてアノテーションも増加してしまい、画面の表示が煩雑になってしまうことが考えられる。
【０００９】
本発明は、ある空間のユーザの着目点を他の空間のユーザに共有することが可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の情報処理装置は、複数の異なる拠点の現実空間画像を表示する表示装置と接続され、前記拠点における表示装置の位置姿勢を記憶する記憶手段を備えた情報処理装置であって、第１の表示装置に対応するユーザの着目点を特定する特定手段と、前記特定手段で特定した第１の表示装置に対応する前記着目点を識別する仮想オブジェクトである着目点識別オブジェクトを取得する取得手段と、前記取得手段で取得した着目点識別オブジェクトを、前記第１の表示装置に表示することなく前記第１の表示装置の拠点とは異なる拠点の第２の表示装置に識別表示させるべく、当該第２の表示装置の拠点における、前記着目点を示す位置に設定する設定手段と、前記設定手段で設定された位置の前記着目点識別オブジェクトを前記第２の表示装置の位置姿勢に応じて前記現実空間画像に重畳した複合現実画像を生成する生成手段と、前記生成手段で生成した複合現実画像を前記第２の表示装置に表示させるべく制御する表示制御手段と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ある空間のユーザの着目点を他の空間のユーザに共有することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態における情報処理システムのシステム構成の一例を示す図である。
【図２】本発明の実施形態における情報処理装置２００及びＨＭＤのハードウェア構成の一例を示す図である。
【図３】本発明の実施形態における情報処理装置２００の機能構成の一例を示す図である。
【図４】本発明の第１の実施形態における一連の処理の流れの一例を示すフローチャートである。
【図５】本発明の第１の実施形態における着目点の識別表示処理の流れを示すフローチャートである。
【図６】本発明の第１の実施形態における着目点の特定処理の詳細を示すフローチャートである。
【図７】本発明の実施形態における各種データの構成の一例を示す図である。
【図８】本発明の実施形態における各種データの構成の一例を示す図である。
【図９】本発明の実施形態におけるオブジェクトテーブルの構成の一例を示す図である。
【図１０】本発明の実施形態における選択デバイス１０５の一例を示す模式図である。
【図１１】本発明の実施形態における着目点識別オブジェクトの表示の様子を示す図である。
【図１２】本発明の実施形態における着目点識別オブジェクトの表示の様子を示す図である。
【図１３】本発明の実施形態におけるモード設定画面の構成の一例を示す図である。
【図１４】本発明の第２の実施形態における着目点の特定処理の詳細を示すフローチャートである。
【図１５】本発明の第３の実施形態における着目点の特定処理の詳細を示すフローチャートである。
【図１６】本発明の第５の実施形態における着目点の識別表示処理の流れを示すフローチャートである。
【図１７】本発明の第５の実施形態における着目点識別オブジェクトの表示の様子を示す図である。
【図１８】本発明の第５の実施形態における各種データの構成の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００１４】
図１は、本発明の情報処理システムの構成の一例を示す。本発明の情報処理システムは、情報処理装置２００、ＨＭＤ１００（ヘッドマウントディスプレイ１００＝表示装置）、光学式センサ１０４、選択デバイス１０５等から成るシステムが複数組み合わさることで構成される。情報処理装置２００とＨＭＤ１００、光学式センサ１０４、選択デバイス１０５は、図１に示すＬＡＮ１０１や、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブル等を介して相互にデータ通信可能に接続されている。
【００１５】
情報処理装置２００は、外部メモリ２１１内に、ＭＲ空間に配置して表示する仮想オブジェクトであり、複数の情報処理装置２００に共通の仮想オブジェクトを記憶している。情報処理装置２００は、ＨＭＤ１００から受信した現実画像に仮想オブジェクトを重畳した複合現実画像（ＭＲ画像）を生成して、ＨＭＤ１００に送信する。ＭＲ技術の仕組みの詳細については、前述した従来技術の通りである。
【００１６】
本発明の実施形態において、情報処理装置２００は、自機に接続されるＨＭＤ１００の数だけ、各ＨＭＤ１００用の仮想空間を記憶部に記憶、管理している。
【００１７】
情報処理装置２００にはホスト端末である情報処理装置２００−Ｂとクライアント端末である情報処理装置２００−Ａがある。情報処理装置２００−Ｂは情報処理装置２００−Ａから受け付けた仮想オブジェクトの位置座標の変更（例えば、選択デバイス１０５に基づく仮想オブジェクトの移動指示）を受信して記憶部に当該変更後の座標を記憶し、当該記憶した座標位置に仮想オブジェクトを移動する処理を行う。当該位置・座標の変更の情報の共有、他の拠点の情報処理装置２００から共有された移動後の座標に基づく仮想オブジェクトの配置・移動の処理により、例えば場所を異とする遠隔地間であっても、それぞれの拠点の情報処理装置で記憶しているＭＲ空間上の仮想オブジェクトの位置・座標を同期させることができる。よって、各拠点でＨＭＤ１００を装着しているユーザは共通の仮想空間とそれぞれの現実空間とを重畳したＭＲ画像をＨＭＤ１００を通して視認することが可能となる。情報処理装置２００−Ａと情報処理装置２００−Ｂの機能は同じものとする。本実施例は便宜的に情報処理装置２００−Ｂを報処理装置２００−Ａに対するホスト端末としたが、どちらの情報処理装置２００でもホストの役割を行うことが可能である。よって情報処理装置２００−Ａと情報処理装置２００−Ｂとそれぞれの用途が限定されることはない。
【００１８】
ＨＭＤ１００は、右目・左目ビデオカメラ２２１で撮影することにより得られた現実空間の画像データを情報処理装置２００に送信する。そして情報処理装置２００から受信した複合現実画像を右目・左目ディスプレイ２２２に表示する。各ＨＭＤ１００は、各情報処理装置２００と直接的、又は間接的に接続されている（以下、説明の中で、情報処理装置と接続されている、という表現を用いる場合は、情報処理装置と直接接続されていることを示す）。
【００１９】
選択デバイス１０５は、ＭＲ空間上に配置された仮想オブジェクトを選択して、移動するためのデバイスである。例えば、図１０に示す選択デバイス１０５である。選択デバイス１０５は選択ボタン１００１と光学式マーカ１０３を備える。選択ボタン１００１の押下を受け付けると、情報処理装置２００は選択デバイス１０５の位置から一定の範囲（図１０で示す１００２の範囲内）にある仮想オブジェクトの位置座標を選択デバイス１０５の位置座標と同期させる。これによりユーザは選択ボタン１００１を押下することで選択デバイス１０５の一定の距離にある仮想オブジェクトを移動させることを可能にする。選択ボタン１００１の押下が検知されなくなるのを検知すると、仮想オブジェクトと選択デバイス１０５の位置座標の同期を中止する。
【００２０】
ＨＭＤ１００と選択デバイス１０５には、それぞれ光学式マーカ１０３が設置されており、光学式センサ１０４が当該光学式マーカ１０３を撮影（検知・検出）することで、ＨＭＤ１００と選択デバイス１０５の位置向き（座標Ｘ，Ｙ，Ｚ／位置姿勢）を特定し、情報処理装置２００に送信する。
【００２１】
拠点Ａと拠点Ｂは、現実の世界において異なる空間・場所である。例えば、拠点Ａ＝東京支店の部屋、拠点Ｂ＝大阪支店の部屋である。
【００２２】
尚、現実空間とＭＲ空間（原点座標Ｘ，Ｙ，Ｚ＝０，０，０を原点として、仮想オブジェクトを配置した仮想空間）との位置合わせ（キャリブレーション）は既に行われているものとして、以下、本発明の実施形態について説明する。
【００２３】
図２は、情報処理装置２００のハードウェア構成を示す図である。尚、図２の情報処理装置２００のハードウェアの構成は一例であり、用途や目的に応じて様々な構成例がある。
【００２４】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２５】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ）やオペレーティングシステムや、各種装置の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２６】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２７】
また、入力コントローラ（入力Ｃ）２０５は、キーボードやマウス等のポインティングデバイス（入力デバイス２０９）からの入力を制御する。
【００２８】
ビデオコントローラ（ＶＣ）２０６は、ＨＭＤ１００が備える右目・左目ディスプレイ２２２等の表示器への表示を制御する。右目・左目ディスプレイ２２２に対しては、例えば外部出力端子（例えば、Ｄｉｇｉｔａｌ  Ｖｉｓｕａｌ  Ｉｎｔｅｒｆａｃｅ）を用いて出力される。また、右目・左目ディスプレイ２２２は、右目用のディスプレイと左目用のディスプレイとから構成されている。
【００２９】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３０】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。また、通信Ｉ／Ｆコントローラ２０８は、ギガビットイーサネット（登録商標）等を通じて光学式センサ１０４との通信も制御する。
【００３１】
汎用バス２１２は、ＨＭＤ１００の右目・左目ビデオカメラ２２１からの映像を取り込むために使用される。右目・左目ビデオカメラ２２１からは、外部入力端子（例えば、ＩＥＥＥ１３９４端子）を用いて入力される。右目・左目ビデオカメラ２２１は、右目用のビデオカメラと左目用のビデオカメラとから構成されている。
【００３２】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３３】
本発明の情報処理装置２００が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。以上が図２の説明である。
【００３４】
次に図３を用いて情報処理装置２００の機能構成について説明する。
【００３５】
情報処理装置２００は、通信制御部３０１、仮想オブジェクト記憶部３０２、ＨＭＤ情報取得部３０３、現実空間画像取得部３０４、着目点特定部３０５、距離特定部３０６、複合現実画像生成部３０７、仮想空間管理部３０８、表示制御部３０９、拠点判定部３１０を備えている。
【００３６】
通信制御部３０１は、ＰＣ２００と通信可能に接続されているＨＭＤ１００や光学式センサ１０４、および他の情報処理装置２００との通信を制御する機能部である。通信制御部３０１は、前述したビデオコントローラ２０６、通信Ｉ／Ｆコントローラ２０８、汎用バス２１２等を通じてこれらの装置と情報の送受信を行う。
【００３７】
仮想オブジェクト記憶部３０２は、ＨＭＤ１００で現実画像と重畳して表示させるための仮想オブジェクトを記憶する機能部である。
【００３８】
ＨＭＤ情報取得部３０３はＨＭＤ１００の現実空間における位置及び向き（位置姿勢＝ユーザの位置姿勢）を示す情報を光学式センサ１０４から取得する機能部である。現実空間画像取得部３０４は、ＨＭＤ１００の右目・左目ビデオカメラ２２１から現実空間画像を取得する機能部である（ＨＭＤ１００から、右目・左目ビデオカメラ２２１で撮像された現実画像を取得する）。
【００３９】
着目点特定部３０５は、例えば、ＨＭＤ情報取得部３０３で取得したＨＭＤ１００の現実空間における位置及び向きから、ＨＭＤ１００を装着しているユーザ（ＨＭＤ１００に対応するユーザ）の視線及び視線の先にあるユーザの着目点を特定する機能部である。着目点とは、例えば、ＨＭＤの位置からＨＭＤの向きに伸ばした直線（視線）が最初にぶつかった仮想オブジェクト上の点であるものとする。
【００４０】
距離特定部３０６は、ＨＭＤ１００と着目点との距離を算出して特定する。また、ユーザ操作に応じて移動している仮想オブジェクトと着目点との距離を算出して特定する機能部である。なお、距離の算出の仕方は仮想空間上の２点間の座標を用いて計算する従来技術を用いるものとする。
【００４１】
複合現実画像生成部３０７は、ＨＭＤ１００の右目・左目ビデオカメラ２２１から送信される現実空間の画像と、ＨＭＤ情報取得部３０３から取得したＨＭＤ１００の位置向きに基づいて撮像した仮想空間の画像とを重畳した画像（複合現実画像＝ＭＲ画像）を生成する機能部である。
【００４２】
仮想空間管理部３０８は、仮想空間における仮想オブジェクトの座標情報を管理する機能部である。各情報処理装置２００は当該仮想空間管理部において、自機に接続される、自機と同じ拠点のＨＭＤごとに、現実空間と位置あわせを行った仮想空間の座標や形状（を記憶管理しているものとする。つまり、自機に対応するＨＭＤ  ＩＤごとに、当該ＨＭＤ  ＩＤに対応する仮想空間の形状や、現実空間の原点を基準とした仮想空間の原点座標を示すＭＲ空間の情報を記憶している。よって、例えばＨＭＤ１００−Ａ１に対しては、ＨＭＤ１００−Ａ１から取得した現実空間画像とＨＭＤ１００−Ａ１に対応する仮想空間に仮想オブジェクトを配置して撮像した仮想空間画像を合成した複合現実画像を送信し、表示させる。また、１００−Ａ２に対しては、ＨＭＤ１００−Ａ２から取得した現実空間画像とＨＭＤ１００−Ａ２に対応する仮想空間に仮想オブジェクトを配置して撮像した仮想空間画像を合成した複合現実画像を送信し、表示させる。
【００４３】
また、クライアント端末である情報処理装置２００−Ａの場合は、仮想オブジェクトの移動指示をユーザから検知すると、当該移動指示による仮想オブジェクトの移動後の座標値をホスト端末である情報処理装置２００−Ｂに対して送信する。ホスト端末である情報処理装置２００−Ｂは、例えばクライアント端末である情報処理装置２００−Ａから送信される、仮想オブジェクトを移動した情報（仮想オブジェクトの座標が変更された旨を示す情報と移動後の座標）を受信すると、当該受信した移動後の座標を自機の記憶装置に記憶している当該仮想オブジェクトの座標値に上書きして更新する。また、仮に情報処理装置２００−Ａの他にクライアント端末としての情報処理装置２００（例：不図示の情報処理装置２００−Ｃ）が存在する場合は当該クライアント端末（情報処理装置２００−Ｃ）に更新後の座標の情報を送信して共有する。情報処理装置２００−Ｃは当該更新後の座標の情報を受信して、自機の外部メモリ上の当該仮想オブジェクトの座標の値を更新する。
【００４４】
表示制御部３０９は、ＨＭＤ１００の右目・左目ディスプレイ２２２に対して表示の制御を行う機能部である。拠点判定部３１０は、他拠点のＨＭＤの着目点をＨＭＤに表示すべく、着目点を特定するＨＭＤが着目点表示対象のＨＭＤと同じ拠点のＨＭＤか他拠点のＨＭＤかを判定する。
【００４５】
＜第１の実施形態＞
【００４６】
以下、図４〜図１３を参照して本発明の第１の実施形態について説明する。
【００４７】
図４を参照して、本発明の実施形態におけるホスト機である情報処理装置２００−Ｂ、クライアント機である情報処理装置２００−Ａによって行われる一連の処理について説明する。
【００４８】
ステップＳ４０１では、情報処理装置２００−ＡのＣＰＵ２０１は、ユーザからのＭＲアプリケーションの起動指示を受け付けることにより、ＭＲアプリケーションを起動させる。ＭＲアプリケーションを起動したのち、処理をステップＳ４０２に移す。
【００４９】
ステップＳ４０２では、情報処理装置２００−ＡのＣＰＵ２０１は、別の情報処理装置である情報処理装置２００−Ｂに対して接続要求の送信を行う。尚、情報処理装置２００−Ｂはこの時点で既に起動済みであるものとする。
【００５０】
ステップＳ４０３では、情報処理装置２００−ＢのＣＰＵ２０１は、ステップＳ４０２で情報処理装置２００−Ａから送信された接続要求を受信する。
【００５１】
ステップＳ４０４では、情報処理装置２００−ＢのＣＰＵ２０１は、接続要求の送信元の情報処理装置２００−Ａに対して、情報処理装置２００−Ｂの外部メモリに記憶されている仮想オブジェクトのデータをすべて送信する。例えば、図９に示すオブジェクトテーブル９００と、ファイルパス９０５に示すファイルとを送信する。これにより、以降は仮想オブジェクトの座標情報のやり取りだけで自機内に保存された仮想オブジェクトを当該座標の示す位置に配置し、ＨＭＤ１００への仮想オブジェクトのリアルタイムな表示制御（仮想オブジェクトの仮想空間上の位置の変更及び変更後の位置を用いたＭＲ画像の生成）を行うことを可能にする。
【００５２】
具体的には、選択デバイス１０５Ｂの操作を受け付けた情報処理装置２００−Ｂが当該操作に応じた仮想オブジェクトの移動を行い、当該移動を示す移動途中／移動後の仮想オブジェクトの座標９０３をリアルタイムで情報処理装置２００−Ａに送信することで、情報処理装置２００−Ａが当該仮想オブジェクト位置の変更、移動の表示制御をすることが可能となる。
【００５３】
また、ホスト端末である情報処理装置２００−Ｂは、図７に示すような拠点情報７００を外部メモリに記憶しており（拠点情報記憶手段に該当）、ステップＳ４０４で当該拠点情報も合わせて情報処理装置２００−Ａに送信するものとする。拠点情報７００は、情報処理装置２００が設置されている拠点であり各ＨＭＤ１００が所属する拠点の識別情報である拠点ＩＤ７０１と、各ＨＭＤ１００の識別情報であるＨＭＤ  ＩＤから構成されている。つまり、いずれのＨＭＤがいずれの拠点に属するか（いずれの拠点の情報処理装置２００に対応するか）を示す情報である。以上が図７の説明である。
【００５４】
ここで図９を参照して、仮想オブジェクトの情報を示すオブジェクトテーブル９００について説明する。オブジェクトテーブル９００は、オブジェクトＩＤ９０１、属性９０２、座標９０３、サイズ９０４、ファイルパス９０５、選択中フラグ９０６、選択禁止フラグ９０７から構成される。
【００５５】
オブジェクトＩＤ９０１は、各仮想オブジェクトのデータの識別情報である。属性９０２は、各仮想オブジェクトが、選択デバイス１０５に対応する仮想オブジェクト（属性＝選択デバイス）か、選択デバイス１０５の仮想オブジェクトに接触することで選択される選択対象の仮想オブジェクト（属性＝被選択）か、例えばＨＭＤの視線と仮想オブジェクトとの交点の位置として決定されるユーザの着目点を示す仮想オブジェクト（属性＝着目点識別）か、を示す情報である。
【００５６】
座標９０３は、各仮想オブジェクトの、ＭＲ空間上の配置位置（Ｘ．Ｙ．Ｚ＝０００．０００．０００  を原点とするＸＹＺ座標）を示す。例えば、図９によれば、オブジェクトＩＤ＝Ｍ１１１の仮想オブジェクトは、Ｘ．Ｙ．Ｚ＝０００．０００．０００を原点とした仮想空間上の座標９０３＝ＸＸ１．ＹＹ１．ＺＺ１に配置されている。原点は前述したキャリブレーションの時に設定されており、例えば仮想空間の原点と現実空間の原点が一致するＭＲ空間が設定されているものとする。また、各座標９０３の座標値は、各仮想オブジェクトの中心点の座標であるものとする。
【００５７】
尚、選択デバイス１０５の座標９０３は、光学式センサにより補足されており、例えばユーザが選択デバイス１０５を移動させることで、当該移動に応じて座標値がリアルタイムに更新される。当該更新に用いる選択デバイス１０５のリアルタイムの座標９０３の情報は、光学式センサ１０４から情報処理装置２００に送信され、情報処理装置２００が、当該光学式センサ１０４から受信した座標の情報を、選択デバイス１０５の座標９０３に上書きすることで更新を行う。
【００５８】
サイズ（スケール）９０４は、各仮想オブジェクトの大きさを示す。ここではファイルパス９０５に記憶されている仮想オブジェクトのファイルに保存された仮想オブジェクトのサイズそのもの（拡大・縮小率＝１倍）が記憶されているものとする。ファイルパス９０５は、各仮想オブジェクトのファイルが記憶されている、ＰＣ２００の記憶領域上のアドレスを示す。各仮想オブジェクトのファイルは、情報処理装置２００の、ＭＲ空間への仮想オブジェクトの配置・ＭＲ画像を生成するプログラムで読み取り可能な形式で記憶されている。例えばｖｒｍｌ形式で記憶されているものとする。
【００５９】
選択中フラグ９０６は、被選択用の仮想オブジェクトが選択デバイス１０５により選択されている状態か否かを示すフラグである。選択中フラグ９０６＝０の場合、選択されていない状態であり、選択中フラグ９０６＝１の場合、選択中であることを示す。
【００６０】
選択禁止フラグ９０７は、被選択用の仮想オブジェクトが選択デバイス１０５による選択を受け付けないように制御するためのフラグである。選択禁止フラグ９０７＝０の場合、選択デバイス１０５の選択を受け付けることを可能とし、選択禁止フラグ９０７＝１の場合には、選択デバイス１０５による選択を受け付けないように制御する。これにより、選択デバイス１０５で選択行為を行ったとしても、被選択用の仮想オブジェクトの移動を不可能とする効果がある。以上が図９の説明である。
【００６１】
図４の説明に戻る。ステップＳ４０５では、情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ４０４で情報処理装置２００−Ｂから送信されたオブジェクトテーブル９００と、ファイルパス９０５に示すファイルとを受信して外部メモリに記憶する。また拠点情報７００を受信して外部メモリに記憶する。
【００６２】
ステップＳ４０６では、情報処理装置２００−ＡのＣＰＵ２０１は、光学式センサ１０４を用いてＨＭＤ１００−Ａに付された光学式マーカを検知し、ＭＲ空間上のＨＭＤ１００−Ａの位置や向き（位置情報及び向き情報）を取得する。取得したＨＭＤ１００−Ａの位置や向きは、情報処理装置２００−Ａの外部メモリに記憶されたＨＭＤ情報テーブル８００に格納する。例えば図８に示すＨＭＤ情報テーブル８００である。ＨＭＤ情報テーブル８００には、ＨＭＤ  ＩＤ８０１とＨＭＤ位置・向き８０２が格納されている。ＨＭＤ  ＩＤ８０１は、ＨＭＤ１００の識別情報である。ＨＭＤ位置・向き８０２は、各ＨＭＤのＭＲ空間上の座標情報と、向き情報（向き）を記憶している。当該ＨＭＤ位置・向き８０１の座標と向きが、ＨＭＤ１００を装着したユーザの視線を示す。つまり、ユーザがどの位置からどの方向を見ているかを示す情報である。
【００６３】
ステップＳ４１３では、情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ４０６で取得したＨＭＤ位置・向き８０２をホスト端末に共有すべく、ＨＭＤ情報テーブル８００の情報を情報処理装置２００−Ｂに送信する。ステップＳ４１４では、情報処理装置２００−ＢのＣＰＵ２０１は、当該ＨＭＤ情報テーブル８００の情報を受信して、ステップＳ４１５で外部メモリに記憶する。例えば、図８のＨＭＤ情報テーブル８１０に示すように、各情報処理装置２００の管理しているＨＭＤ情報（ＨＭＤ  ＩＤ及びＨＭＤの位置姿勢（位置・向き））を合わせて管理するリストに、ステップＳ４１４で受信した情報を追記する。既に同じＨＭＤ  ＩＤのレコードがある場合には、ＨＭＤ当該同じＨＭＤ  ＩＤ８０１の位置・向き８０２にステップＳ４１４で受信した位置・向きの値を上書きする。なお、ＨＭＤ１００−Ｂ１及びＨＭＤ１００−Ｂ２の位置・向きの情報は、情報処理装置２００−Ｂが自機に接続されている光学センサを用いて特定し、ＨＭＤ情報テーブル８１０に格納している。ＨＭＤ情報テーブル８１０は、情報処理装置２００−Ｂと接続されたＨＭＤ１００、及び情報処理装置２００−Ｂと接続されたクライアント端末の管理するＨＭＤ１００の位置姿勢を一括管理するテーブルである。
【００６４】
ステップＳ４０７では、情報処理装置２００−ＡのＣＰＵ２０１は、ＨＭＤ１００−Ａの右目・左目ビデオカメラ２２１から送信される現実空間画像を、取得し、ＲＡＭ２０３等に記憶する。右目・左目ビデオカメラ２２１は、ユーザの右目に相当するビデオカメラと左目に相当するビデオカメラとの２つが存在するため、右目用と左目用の現実空間画像を取得する。
【００６５】
ステップＳ４０８では、情報処理装置２００−ＡのＣＰＵ２０１は、仮想空間画像（仮想空間の画像）を取得しＲＡＭ２０３等に記憶する。
【００６６】
具体的には、ステップＳ４０７で格納したＨＭＤ１００−Ａの位置・向き８０２を読み出し、仮想空間上の仮想のカメラ（仮想空間上に配置され仮想空間を撮像する、ＨＭＤ１００と同じ画角を持つ仮想のカメラ）の位置及び向きに設定する。そして、当該仮想のカメラにより仮想空間を撮像・生成する。つまり、現実画像を含まない、仮想カメラの視点から見た、座標９０３に仮想オブジェクトを配置した仮想空間の画像を撮像。尚、前述した現実空間画像と同様に、ＨＭＤ１００−Ａの右目・左目ディスプレイ２２２のそれぞれに表示するために右目用の仮想空間画像と左目用の仮想空間画像の２枚を取得する。
【００６７】
ステップＳ４０９では、情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ４０７で取得した現実空間画像とステップＳ４０８で取得した仮想空間画像とをＲＡＭ２０３等から読み出し、複合現実画像生成部３０７を用いて当該現実空間画像に当該仮想空間画像を重畳し、複合現実画像を生成する。生成した複合現実画像はＲＡＭ２０３等に記憶する。前述したとおり、現実空間画像と仮想空間画像にはそれぞれ右目用と左目用の２枚ずつの画像がＲＡＭ２０３等に記憶されている。そして右目用の現実空間画像に右目用の仮想空間画像を重畳し、左目用の現実空間画像に左目用の仮想空間画像を重畳することで、より没入感の高い視覚をユーザは得ることができる。
【００６８】
ステップＳ４１０では、情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ４１０で生成した右目用の複合現実画像と左目用の複合現実画像とをＲＡＭ２０３等から読み出し、ＨＭＤ１００−Ａの右目・左目ディスプレイ２２２に表示させるように制御する。前述したように、右目用の複合現実画像を右目・左目ディスプレイ２２２の右目のディスプレイに表示するよう制御し、左目用の複合現実画像を右目・左目ディスプレイ２２２の左目のディスプレイに表示するよう制御する。つまり、ＨＭＤ１００−Ａ（現実空間画像の送信元のＨＭＤ）に複合現実画像を送信して表示させる処理を行う。
【００６９】
ステップＳ４１１では、情報処理装置２００−ＡのＣＰＵ２０１は、着目点の識別表示処理を実行する。当該着目点の識別表示処理は、あるＨＭＤに、当該ＨＭＤとは別の拠点のＨＭＤのユーザの着目点を当該あるＨＭＤにおいて識別表示させる処理である。当該着目点の識別表示処理の詳細は図５の説明で後述する。例えば、拠点ＡのＨＭＤ１００−Ａには、拠点ＢのＨＭＤ１００−Ｂのユーザの着目点をＨＭＤ１００−Ａにおいて識別表示する（同じ拠点のＨＭＤ１００−Ａのユーザの着目点は識別表示しない）。
【００７０】
ステップＳ４１２では、情報処理装置２００−ＡのＣＰＵ２０１は、ユーザからＭＲアプリケーションの終了指示を受け付けたか否かを判定する。例えば情報処理装置２００−Ａの操作部においてアプリケーション終了ボタンの押下を受け付けるなど、ユーザからのアプリケーション終了指示を受け付けたと判定された場合には処理を終了させ、ユーザからのアプリケーション終了指示を受け付けなかったと判定された場合には処理をステップＳ４０６に戻す。以上が図４の説明である。
【００７１】
次に図５を参照して、本発明の第１の実施形態における着目点の識別表示処理の流れについて説明する。
【００７２】
ステップＳ５０１では、ＨＭＤ１００−Ａは他者の着目点を識別表示する操作を受け付け、ステップＳ５０２で当該操作による着目点の識別表示の指示を情報処理装置２００−Ａに送信する。ステップＳ５０３で、情報処理装置２００−Ａは当該着目点の識別表示の指示を受け付ける。具体的には、ＨＭＤ１００−Ａと接続された情報処理装置２００−ＡのＣＰＵ２０１が、例えばＨＭＤ１００−Ａに設置された不図示のボタンが押下された（押下されている状態である）ことを検知・特定し、着目点の識別表示指示を受信したものと判断する。例えばＨＭＤ１００−Ａに設置された不図示のボタンが押下されていない状態の場合、ステップＳ５０４〜ステップＳ５１９の処理を行うことなく、図５の処理を終了する。
【００７３】
ステップＳ５０４では、報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ５０３で着目点の識別表示指示を受け付けたＨＭＤ１００−Ａ（例えばＨＭＤ１００−Ａ１）のＨＭＤ  ＩＤと、着目点の特定指示をホスト端末である情報処理装置２００−Ｂに送信する。また、報処理装置２００−ＡのＣＰＵ２０１はステップＳ５０５で、ステップＳ５０３で指示を受け付けた指示元のＨＭＤ１００の位置姿勢（位置・向き８０２）をＨＭＤ情報テーブル８００を参照して特定・取得する。
【００７４】
ステップＳ５０６では、情報処理装置２００−ＢのＣＰＵ２０１は、ステップＳ５０４で送信された着目点の識別表示指示と当該指示の元となる操作がされたＨＭＤ１００−Ａ１の識別情報を受信する。ステップＳ５０７で、外部メモリに記憶されている拠点情報７００と、ＨＭＤの位置姿勢のリスト（ＨＭＤ情報テーブル８１０）を取得して、ＨＭＤ１００−Ａ１以外の、リスト内の全てのＨＭＤの情報に対してステップＳ５０８〜ステップＳ５１０の処理を行う。
【００７５】
ステップＳ５０８では、ＨＭＤ情報テーブル８１０から未処理のＨＭＤのデータを取得し、拠点情報７００に基づいて、着目点の識別表示の操作がされたＨＭＤ１００−ＡとステップＳ５０８で取得したＨＭＤが異なる拠点のＨＭＤか判定する（ステップＳ５０９）。
【００７６】
同じ拠点のＨＭＤである場合（例えばＨＭＤ１００−Ａ２である場合／ステップＳ５０９でＮＯ）であって、未処理のＨＭＤの情報が残っている場合は、処理をステップＳ５０８に戻す。
【００７７】
他拠点のＨＭＤである場合（例えばＨＭＤ１００−Ｂ１である場合／ステップＳ５０９でＹＥＳ）、処理をステップＳ５１０に移行し、着目点の特定処理を実行する。つまり、ＨＭＤ１００−Ａ１とは異なる拠点ＢのＨＭＤ１００−Ｂのユーザが着目しているＭＲ空間上の座標（点）を特定する処理を行う。当該着目点の特定処理の詳細については図６の説明で後述する。
【００７８】
ここで図６を参照して、本発明の実施形態における、着目点の特定処理の詳細について説明する。
【００７９】
ステップＳ６０１では、情報処理装置２００−ＢのＣＰＵ２０１は、図５のステップＳ５０９で他拠点のＨＭＤであると判定された、例えばＨＭＤ１００−Ｂ１の位置姿勢（座標・向き）の情報を、ＨＭＤ情報テーブル８１０から取得する。
【００８０】
そして、ステップＳ６０２で当該ＨＭＤ１００−Ｂ１の位置姿勢、及び仮想空間に配置されている仮想オブジェクトの座標９０３に基づいて、ＨＭＤ１００−Ｂ１の位置からＨＭＤ１００−Ｂ１の向く、ＨＭＤ１００−Ｂ１の正面方向に伸ばした直線（視線）が突き当たった（交差する）仮想オブジェクトを特定して、ステップＳ６０３で当該視線と最初にぶつかる（交差する）仮想オブジェクトの面上の点の座標を着目点として特定して記憶する。また、当該着目点を特定した時点でのＨＭＤ１００−Ｂ１の位置姿勢の情報を記憶する。例えば図８の着目点情報８２０を外部メモリに記憶する。ＨＭＤ１００の位置（重心位置）に対して、どの方向がＨＭＤ１００の正面方向（ＨＭＤ１００が向いている方向）かは予め決定され、外部メモリに記憶されている。
【００８１】
着目点情報８２０は、ＨＭＤ  ＩＤ８２１の示すＨＭＤ１００が、仮想空間上のどの座標８２２に着目しているかを示す情報である。座標８２２＝ＭＲ空間におけるＨＭＤ１００の着目点の座標である。位置・向き８２３は、座標８２２を特定した時点におけるＨＭＤ  ＩＤ８２１のＨＭＤの位置姿勢の情報である。時刻８２４は、座標８２２、位置・向き８２３の値を記憶した日時の情報である。
【００８２】
情報処理装置２００−ＢのＣＰＵ２０１は、所定時間（例えば３秒間）の間ステップＳ６０３による着目点の特定・記憶の処理を繰り返し行い、ステップＳ６０４で、ＨＭＤ１００−Ｂ１のユーザが所定時間の間同じ場所に着目していたか判定する。
【００８３】
具体的には、図６の処理を開始してから最初に特定したＨＭＤ１００−Ｂ１の着目点の座標８２２と、最初に着目点が特定されてから３秒後に特定したＨＭＤ１００−Ｂ１の着目点の座標８２２との仮想空間上の距離が所定の距離以内（例えば１０ｃｍ以内）の場合に、所定時間の間同じ場所（近似する座標）に着目していたと判定する。当該所定時間及び所定距離の情報は、例えば図８の所定時間８３０、所定距離８４０に示す形式で、予め各情報処理装置２００の外部メモリに記憶されているものとする。
【００８４】
図６の説明に戻る。所定時間同じ場所に着目していると判定した場合に（ステップＳ６０４でＹＥＳ）、ステップＳ６０５で、図６の処理で最初に着目点が特定されてから３秒後に特定したＨＭＤ１００−Ｂ１の着目点の座標を情報処理装置２００−Ａに通知する着目点として決定し、着目点の座標８２２に当該決定した着目点の座標を記憶する。また、当該着目点として決定した時点でのＨＭＤ１００−Ｂ１の位置姿勢をＨＭＤ位置・向き８２３に、当該決定をした時点での日時を時刻８２４に記憶する。
【００８５】
尚、ここではステップＳ６０４で、ＨＭＤ１００−Ｂ１が所定時間の間同じ場所に着目していなかったと判定した場合、情報処理装置２００−Ａに通知する着目点を特定できなかった（決定できなかった）ものとして図６の処理を終了する。以上が図６の説明である。
【００８６】
図５の説明に戻る。情報処理装置２００−ＢのＣＰＵ２０１は、ＨＭＤ情報テーブル８１０の全てのＨＭＤのデータに対してステップＳ５０８〜ステップＳ５１０の処理を実行した場合、処理をステップＳ５１１に移行して、図６のステップＳ６０５で決定して記憶した各ＨＭＤの着目点の座標８２２の情報と、各ＨＭＤの位置・向き８２３及びＨＭＤ  ＩＤを対応付けたリストを情報処理装置２００−Ａに送信する。
【００８７】
ステップＳ５１２では、情報処理装置２００−Ａは着目点の座標８２２と、ＨＭＤ１００−Ａ１とは異なる拠点の（情報処理装置２００−Ａの管理下にない／対応していない）ＨＭＤの位置・向き８２３、ＨＭＤ  ＩＤを受信して外部メモリに記憶する。そして、ステップＳ５１３、ステップＳ５１４の処理を全ての着目点の情報に対して実行する。
【００８８】
ステップＳ５１３では、情報処理装置２００−Ａは、ステップＳ５１２で受信したリストからＨＭＤ  ＩＤ、着目点の座標、着目時のＨＭＤの位置姿勢の組を１つ取得し、ステップＳ５１４で外部メモリから着目点識別オブジェクトを外部メモリから取得して、着目点の座標に応じて仮想空間上に配置する。
【００８９】
尚、当該ステップＳ５１４では、ＨＭＤ１００−Ａ１用の仮想空間に対して、当該着目点識別オブジェクトの配置を行うものとする。つまり、着目点識別オブジェクトの表示操作をしていないＨＭＤ１００−Ａ２には当該着目点識別オブジェクトは表示されないように制御する（ＨＭＤ１００−Ａ２用の仮想空間には着目点識別オブジェクトを配置しない）。
【００９０】
着目点識別オブジェクトとは、着目点を識別表示するために仮想空間上に配置する仮想オブジェクトであり、属性９０２に「着目点識別」の値が設定されているオブジェクトである。着目点識別オブジェクトの一例は図１１の１１０４に示す。
【００９１】
図１１の１１００によれば、拠点ＢにおいてＨＭＤ１００−Ｂ１の視線１１０２の先に仮想オブジェクト１１０１がある。情報処理装置２００−ＢによりステップＳ６０５で決定された着目点の座標８２２は着目点１１０３を示す。１１１０は、ＨＭＤ１００−Ａ１に表示される複合現実画像を示す。１１０４は着目点識別オブジェクトであり、拠点ＢにおいてＨＭＤ１００−Ｂ１が着目している座標に配置されている。
【００９２】
尚、本実施形態の説明においては、着目点識別オブジェクト１１０４に当該着目点に着目しているＨＭＤ１００の識別情報を対応付けて配置、表示している（１１０５）。当該ＨＭＤ１００の識別情報の表示方法は、例えば情報処理装置２００−Ａが、所定のサイズの直方体の仮想オブジェクトを生成して、着目点識別オブジェクトの位置に着目しているＨＭＤ１００のＨＭＤ  ＩＤのテキスト画像をテクスチャ画像として貼り付ける（つまり仮想オブジェクト１１０５を生成する）。そして、当該仮想オブジェクト１１０５を着目点識別オブジェクトと対応付けて（例えば線の画像でつないで）、着目点識別オブジェクトの近傍の所定の位置に配置する。所定の位置とは、例えば着目点識別オブジェクトの配置位置（仮想空間上の座標）をＸ，Ｙ，Ｚ＝０，０，０とした場合のＸ，Ｙ，Ｚ＝ＸＸ，ＹＹ，ＺＺの座標として予め外部メモリに記憶しているものとする。
【００９３】
情報処理装置２００−ＡのＣＰＵ２０１は、情報処理装置２００−Ｂから受信した全ての着目点、着目点に着目しているＨＭＤの情報に対してステップＳ５１３、Ｓ５１４の処理を実行した後、処理をステップＳ５１５に移行する。
【００９４】
ステップＳ５１５では、情報処理装置２００−ＡのＣＰＵ２０１は、ＨＭＤ１００−Ａ１から受信した現実空間画像と、ステップＳ５０５で取得したＨＭＤ１００−Ａ１の位置姿勢と同じ位置姿勢で仮想空間を撮像した仮想空間画像を取得し、ステップＳ５１６で、２つの画像を合成した複合現実画像を生成して、ステップＳ５１７でＨＭＤ１００−Ａ１に送信する。ステップＳ５１８でＨＭＤ１００−Ａ１が当該複合現実画像を受信して、ステップＳ５１９で表示画面に表示する。以上が図５の説明である。
【００９５】
以上説明したように、本発明によれば、ある空間のユーザの着目点を他の空間のユーザに共有することができる。
【００９６】
例えば、同じ拠点のユーザの着目点の情報を表示することなく、他の拠点のユーザの着目点を識別表示することで、ユーザにとって現実画像として見えていない他のユーザ（他の拠点にいるユーザ）の着目点を適切に通知することができる。
【００９７】
また、同じ建物にある複数の異なる部屋をそれぞれ拠点Ａ、拠点Ｂとしてもよい。（本発明の課題は、ＭＲ空間における仮想オブジェクトの画像は共有できるが、現実空間が異なるために各々の現実空間画像を共有できないことで発生するためである。）
【００９８】
つまり、本発明によれば、例えば、同じ部屋のユーザの着目点の情報を表示することなく、他の部屋のユーザの着目点を識別表示することで、ユーザにとって現実には見えていない他のユーザの視点を適切に通知することができる。
【００９９】
また、例えば、同じ情報処理装置に対応するＨＭＤの着目点の情報を通知することなく、他の情報処理装置のＨＭＤの着目点を識別表示することができる。
【０１００】
尚、上述した本発明の実施形態においては、着目点識別オブジェクトは、図１１の１１０４に示すような、着目点の座標に配置する仮想オブジェクトであるものとしたが、着目点識別オブジェクトの形状、配置方法はこれに限るものではない。
【０１０１】
例えば、ＨＭＤ１００−Ｂ１の位置から着目点の位置に伸びる矢印型の仮想オブジェクトを着目点識別オブジェクトとして仮想空間上に配置するようにしてもよい。当該ＨＭＤ１００−Ｂ１の位置から着目点の位置に伸びる仮想オブジェクトを生成・配置することで、ＨＭＤ１００−Ｂ１のユーザがどこを見ているのかだけでなく、どこからどこを見ているのか（ＨＭＤ１００−Ｂ１の座標から着目点を見ている）をユーザに通知することができる。
【０１０２】
当該矢印型の着目点識別オブジェクトの例、配置方法について説明する。
【０１０３】
矢印型の着目点識別オブジェクトの例を図１２の１２００に示す。情報処理装置２００−Ａは、ステップＳ５１３において、ステップＳ５１２で受信したリストからＨＭＤ  ＩＤ、着目点の座標、着目時のＨＭＤの位置姿勢の組を１つ取得し、着目時のＨＭＤの位置から着目点の座標までの距離の長さを特定し、特定した長さを持つ矢印型の仮想オブジェクト（着目点識別オブジェクト）を生成する。そして、当該矢印型の仮想オブジェクトを、矢印の始点（端の点／端点）をステップＳ５１２で受信したリスト内にある、着目点に着目時のＨＭＤの仮想空間上の位置１２０２とし、矢印の終点（端の点／端点）を着目点の座標とした矢印型の着目点識別オブジェクト１２０１を生成して仮想空間に配置するものである。
【０１０４】
情報処理装置２００−Ａは、ステップＳ５１５で当該矢印型の着目点識別オブジェクト１２０１を配置した仮想空間画像と現実画像を重畳して複合現実画像を生成し、ステップＳ５１６でＨＭＤ１００−Ａ１に送信する。よって、ＨＭＤ１００−Ｂ１のユーザがどこからどこを見ているのかを示す視線の情報（ＨＭＤ１００−Ｂ１の座標から着目点を見ていること）をＨＭＤ１００Ａ−１のユーザに通知することができる。
【０１０５】
なお、図１２の１１０５に示すように、着目点識別オブジェクト１２０１に対応付けて、当該着目点識別オブジェクト１２０１がいずれのＨＭＤ１００−Ａ１の視線を示しているのかを識別表示するようにしてもよい。当該仮想オブジェクト１１０５の生成、配置方法については上述したため詳細な説明は割愛する。
【０１０６】
なお、図１１の着目点識別オブジェクト１１０４と、図１２の着目点識別オブジェクト１２０１を同時に空間上に配置して、現実画像に重畳するようにしてもよい。
【０１０７】
また、上述した実施形態においては、ＨＭＤ１００から他者の着目点の識別表示をする旨の指示を受け付けた場合に、当該ＨＭＤ１００に対して着目点識別オブジェクトを表示するように制御したが、例えば、図１３に示すような情報処理装置２００に表示するモード設定画面１３００において着目点識別オブジェクトの表示モードがオンに設定された場合に、情報処理装置２００のＣＰＵ２０１が図５のステップＳ５０３〜ステップＳ５２０の処理を、自拠点のＨＭＤ１００全てに対して実行するようにしてもよい。モード設定画面１３００は、情報処理装置２００のＣＰＵ２０１がユーザ操作に応じて表示する、情報処理装置２００に接続されたＨＭＤ１００の着目点識別オブジェクトの表示モードを設定するための画面である。各ＨＭＤに対応するＯＮのチェックボックス１３０１又はＯＦＦのチェックボックス１３０２にチェックが入っている状態で「ＯＫ」ボタン１３０３の押下を受け付けることで、情報処理装置２００のＣＰＵ２０１は、「ＯＫ」ボタン１３０３の押下時点でのチェックボックスのチェックに従って各ＨＭＤ１００の着目点識別オブジェクトの表示モードを設定（ＯＮ又はＯＦＦ）の情報を外部メモリに記憶する。図１３は、情報処理装置２００−Ａのモード設定画面の一例である。情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ４１０の後、外部メモリに記憶された自機に対応するＨＭＤ１００−Ａ１、ＨＭＤ１００−Ａ２の着目点識別オブジェクトの表示モードのＯＮ、ＯＦＦを特定し、モードがＯＮになっているＨＭＤ１００についてステップＳ５０４〜Ｓ５１９の処理を実行する。この場合、図５の説明で上述した、着目点識別表示の指示元のＨＭＤ＝着目点識別オブジェクトの表示モードがＯＮのＨＭＤであるものとする。
【０１０８】
また、上述した実施形態においては、ＨＭＤごとに仮想空間を記憶、管理しているものとして説明したが、例えば１つの仮想空間画像を複数のＨＭＤ１００が参照している場合がある。つまり、１つの仮想空間内に２つ以上ＨＭＤ１００の位置姿勢に応じた２つ以上の仮想カメラを配置してそれぞれ仮想空間画像を撮像・取得し、それぞれ複合現実画像を生成して送信する場合である。当該複数のＨＭＤが参照している仮想空間に、ステップＳ５１４で着目点識別オブジェクトを配置すると、ＨＭＤ１００−Ａ１だけでなく、当該着目点識別オブジェクトの表示を所望していないＨＭＤ１００−Ａ２にまで着目点識別オブジェクトが重畳された複合現実画像が送付されてしまうことがある。よって、例えばステップＳ５１２でＨＭＤの位置姿勢を取得した後、当該ＨＭＤ１００−Ａ１に対応する仮想空間を他のＨＭＤ１００も利用している場合には（過去に当該仮想空間を撮像した仮想空間画像をＨＭＤ１００−Ａ１以外のＨＭＤの複合現実画像に利用している場合には）、ステップＳ５１３の処理の前に、ＨＭＤ１００−Ａ１専用の新たな仮想空間を生成して外部メモリに記憶し、当該新たに生成した仮想空間にオブジェクトテーブル９００の各オブジェクト及びステップＳ５１４での着目点識別オブジェクトを配置して複合現実画像を生成するようにしてもよい。当該新たな仮想空間は、例えばステップＳ５１２の時点でＨＭＤ１００−Ａ１に対応付けられていた仮想空間の情報をコピー（複製）するものである。
【０１０９】
また、上述した実施形態においては、拠点情報＝拠点ＩＤとＨＭＤ  ＩＤとを対応付けた情報であるものとしたが、拠点（拠点に設置されている情報処理装置２００）とＨＭＤとの対応関係が分かればよいため、例えば図７の７１０に示すように、情報処理装置２００のＩＰアドレスと、当該情報処理装置２００に対応するＨＭＤ１００のＩＰアドレスを対応付けた情報を各情報処理装置の外部メモリに記憶して（拠点情報記憶手段に該当）、拠点情報７００の代わりに用いるようにしてもよい。なお、各装置は他装置との通信時に自装置のＩＰアドレスを通信相手の端末に送信するものとする。また、７１０の情報を用いてＨＭＤ１００の拠点を特定する場合、情報処理装置２００−Ａは、ＨＭＤ  ＩＤの代わりにＨＭＤ１００から取得した当該ＨＭＤ１００のＩＰアドレスを情報処理装置２００−Ｂに送信するものとする。情報処理装置２００−Ｂは受信したＩＰアドレスの情報と、自装置の外部メモリに記憶されている７１０のＩＰアドレスの情報とを突合せることで、情報処理装置２００−Ａから受信したＨＭＤ１００の情報がどの拠点のＨＭＤ１００の情報かを特定することが可能となる。
【０１１０】
また、通信にＩＰアドレスを含めることで、情報処理装置２００のＣＰＵ２０１は、ＨＭＤの位置姿勢の取得元が光学センサである（自機が光学センサから直接位置姿勢を取得した）ＨＭＤと、他の情報処理装置２００から位置姿勢を取得したＨＭＤとが異なる拠点のＨＭＤであることを特定可能である。よって、例えば情報処理装置２００は、ＨＭＤの位置姿勢を受信するたびに当該位置姿勢の情報の送信元の装置のＩＰアドレスと当該ＨＭＤの識別情報及び位置姿勢とを対応付けて記憶し（拠点情報記憶手段に該当）、ＨＭＤの位置姿勢の送信元ＩＰアドレスが情報処理装置２００Ａを示す＝拠点ＡのＨＭＤ、拠点ＡのＨＭＤの位置姿勢であり、ＨＭＤの位置姿勢の送信元ＩＰアドレスが光学センサを示す＝拠点ＢのＨＭＤ、拠点ＢのＨＭＤの位置姿勢であると判定するようにしてもよい。
【０１１１】
以上、本発明の第１の実施形態について説明した。
【０１１２】
以下、本発明の他の実施形態の例について説明する。第１の実施形態の説明で上述した処理と共通処理については説明を割愛する。
【０１１３】
＜第２の実施形態＞
【０１１４】
以下、図１４を参照して本発明の第２の実施形態について説明する。
【０１１５】
第２の実施形態においては、ユーザの手が仮想オブジェクトに接触した場合に、当該接触した点を着目点とする。よって、ユーザの所望の位置を着目点として指定することができる。
【０１１６】
第２の実施形態では、図４〜図５のステップＳ５０９までの処理を実行後（ステップＳ５０９でＹＥＳ）、ステップＳ５１０の処理として図１４の処理を実行する。図１４の処理完了後、図５のステップＳ５１１以降の処理を実行する。
【０１１７】
第２の実施形態においては、手の形状をした透明の仮想オブジェクト（属性９０２＝手の仮想オブジェクト）を情報処理装置２００の外部メモリに記憶しておき、ステップＳ４０９において情報処理装置２００のＣＰＵ２０１が、ＨＭＤ１００から受信する現実空間画像の中からユーザの手を検出して、当該手を検出した画像上の位置とＨＭＤ１００の画角・位置姿勢の情報から仮想空間上のユーザの手の位置・向きを特定して、当該特定した位置・向きの値に従って、仮想空間上に当該手の形状をした透明の仮想オブジェクトを現実空間のユーザの手の位置に重ねて配置する。
【０１１８】
ステップＳ１４０１では、情報処理装置２００−ＢのＣＰＵ２０１は、図５のステップＳ５０９で（ＨＭＤ１００−Ａ１にとって）他拠点のＨＭＤであると判定された、例えばＨＭＤ１００−Ｂ１の位置姿勢（座標・向き）の情報を、ＨＭＤ情報テーブル８１０から取得する。
【０１１９】
ステップＳ１４０２では、当該ＨＭＤ１００−Ｂ１の最も近くにある属性９０２＝手（不図示／ＨＭＤ１００−Ｂ１に対応するユーザの手）の仮想オブジェクトを特定し、ステップＳ１４０３で、当該手の仮想オブジェクトと属性９０２＝被選択である他の仮想オブジェクトが接触しているか判定する。当該接触判定は、例えば手の仮想オブジェクトと他の仮想オブジェクトの距離が所定距離以下か判定し、所定距離以下の場合は接触していると判定し、所定距離以下でない場合は接触していないと判定することで実行する。当該所定距離の値は各情報処理装置２００の外部メモリに予め記憶されているものとする。
【０１２０】
接触していないと判定された場合は図１４の処理を終了し、接触していると判定された場合は当該接触している点の座標（仮想空間上の座標）を、ステップＳ１４０１で特定したＨＭＤ１００−Ｂ１の着目点として特定し、ステップＳ５１１で情報処理装置２００−Ａに通知する着目点として決定して、図８のＨＭＤ１００−Ｂ１の着目点の座標８２２に着目点として特定した座標を記憶する。また、当該記憶の処理をした時点での日時を時刻８２４に、時刻８２４時点でのＨＭＤ１００−Ｂ１の位置姿勢をＨＭＤ位置・向き８２３に記憶する。
【０１２１】
第２の実施形態によれば、他の拠点のユーザが任意に選択した点を着目点とし、確認することができる。
【０１２２】
例えば、ユーザの手が仮想オブジェクトに接触した場合に、当該接触した点を着目点とする。よって、ユーザの所望の位置を着目点として指定することができる。
【０１２３】
なお、上述した第２の実施形態の説明においては、手の透明な仮想オブジェクトを用いて着目点を決定するものとしたが、例えば手の仮想オブジェクトの代わりに選択オブジェクトを用いるようにしてもよい。
【０１２４】
＜第３の実施形態＞
【０１２５】
以下、図１５を参照して本発明の第３の実施形態について説明する。
【０１２６】
第３の実施形態においては、所定の音声・言葉を検知した場合に、着目点を特定・決定する。よって、ユーザの所望のタイミングで着目点を特定・決定することができる。
【０１２７】
第３の実施形態においては、ＨＭＤ１００にマイクが搭載されているものとする。例えばＨＭＤ１００−Ａ１のマイク装置で入力された音声情報は、情報処理装置２００Ａに送信され、記憶される。また、情報処理装置２００ＡのＣＰＵ２０１は、図４のステップＳ４１３で当該ＨＭＤ１００−Ａ１から取得して記憶している音声情報を、当該ＨＭＤ１００−Ａ１のＨＭＤ  ＩＤと対応付けて情報処理装置２００−Ｂに送信し、情報処理装置２００−ＢのＣＰＵ２０１がこれ受信して、ＨＭＤ  ＩＤに対応付けて記憶部に記憶する。
【０１２８】
第３の実施形態では、図４〜図５のステップＳ５０９までの処理を実行後（ステップＳ５０９でＹＥＳ）、ステップＳ５１０の処理として図１５の処理を実行する。図１５の処理完了後、図５のステップＳ５１１以降の処理を実行する。
【０１２９】
ステップＳ１５０１では、情報処理装置２００−ＢのＣＰＵ２０１は、図５のステップＳ５０９で他拠点のＨＭＤであると判定された、例えばＨＭＤ１００−Ｂ１の位置姿勢（座標・向き）の情報をＨＭＤ情報テーブル８１０から取得する。また、ＨＭＤ１００−Ｂ１に対応する（ＨＭＤ１００−Ｂ１のマイクから取得した）過去５秒間の音声情報を外部メモリから取得する。
【０１３０】
ステップＳ１５０２では、情報処理装置２００−ＢのＣＰＵ２０１は、ステップＳ１５０１で取得した音声情報を解析し、当該音声情報から所定のキーワードを検出できたか判定する。例えば「ここ」や「見て」等のキーワードを検出したか判定する。当該キーワードの情報は予め各情報処理装置２００の外部メモリに記憶されているものとする。
【０１３１】
キーワードを検出できなかった場合は図１５の処理を終了する。キーワードを検出できた場合は、情報処理装置２００−ＢのＣＰＵ２０１は、ステップＳ６０２及びステップＳ６０３と同じ要領で、ステップＳ１５０３でＨＭＤ１００−Ｂ１の視線が突き当たる浅生オブジェクトを特定し、ステップＳ１５０４で当該視線が最初に突き当たる仮想オブジェクトの面上の点の座標を特定して、ステップＳ５１１で情報処理装置２００−Ａに通知する着目点として決定する。
【０１３２】
第３の実施形態によれば、所定の音声・言葉を検知した場合に、着目点を特定・決定する。よって、ユーザの所望のタイミングで着目点を特定・決定することができる。
【０１３３】
＜第４の実施形態＞
【０１３４】
以下、本発明の第４の実施形態について説明する。
【０１３５】
第４の実施形態においては、着目点識別オブジェクトの表示指示がされた時点で、他のＨＭＤの視線が突き当たった仮想オブジェクト上の点を着目点とする。
【０１３６】
つまり、図６のステップＳ６０３で特定した着目点を、ステップＳ５１１で情報処理装置２００−Ａに通知する着目点として決定し、外部メモリに記憶する。ステップＳ６０４．Ｓ６０５の処理は行わない。
【０１３７】
よって、所定時間同じ場所を注視することなく、着目点を特定し、着目点識別オブジェクを仮想空間に配置、表示することができる。
【０１３８】
＜第５の実施形態＞
【０１３９】
以下、本発明の第５の実施形態について説明する。
【０１４０】
第５の実施形態においては、着目点識別オブジェクトの表示指示をしたＨＭＤの着目点を、他のＨＭＤに識別表示する。
【０１４１】
第５の実施形態では、図４のステップＳ４０１〜ステップＳ４１０の処理を実行後、ステップＳ４１１の処理として図１６の処理を実行する。
【０１４２】
ステップＳ１６０１では、ＨＭＤ１００−Ａ１は自機の着目点（自機を装着したユーザの着目点）を他の拠点のＨＭＤ１００に識別表示させる操作を受け付け、ステップＳ１６０２で当該操作による着目点の識別表示の指示を情報処理装置２００−Ａに送信する。ステップＳ１６０３で、情報処理装置２００−Ａは当該着目点の識別表示の指示を受け付ける。具体的には、ＨＭＤ１００−Ａ１と接続された情報処理装置２００−Ａが、例えばＨＭＤ１００−Ａに設置された不図示の自機着目点表示ボタンが押下された旨の情報を検出し、着目点の識別表示指示を受信したものと判断する。
【０１４３】
ステップＳ１６０４では、報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ５０３で着目点の識別表示指示を受け付けたＨＭＤ１００−Ａ（例えばＨＭＤ１００−Ａ１）のＨＭＤ  ＩＤと、位置姿勢（ＨＭＤ情報テーブル８００の情報）を取得し、ステップＳ１６０５で、情報処理装置２００の外部メモリに記憶されているオブジェクトテーブル１８００を取得して各仮想オブジェクトの座標を特定し、当該ＨＭＤ１００−Ａ１の視線が最初に突き当たる仮想オブジェクトを特定する。
【０１４４】
オブジェクトテーブル１８００は、第１の実施形態におけるオブジェクトテーブル９００に識別表示フラグ１８０８を追加したものである。１８０１〜１８０７は図９の９０１〜９０７と同じであるため説明は割愛する。識別表示フラグ１８０８は仮想オブジェクトに対応付けて記憶される、当該仮想オブジェクトにＨＭＤ１００が着目した場合に当該着目点の情報を識別表示するか否かの設定を示す情報であり、各仮想オブジェクトに事前に設定されているものである。識別表示フラグ１８０８が「０」であれば着目点識別表示オブジェクトの表示はしない仮想オブジェクトであることを示す。識別表示フラグ１８０８が「１」であれば着目点識別表示オブジェクトの表示をする仮想オブジェクトであることを示す。
【０１４５】
ステップＳ１６０６では、情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ１６０５で特定した仮想オブジェクトの当該識別表示フラグ１８０８を参照し、ステップＳ１６０７では、識別表示フラグが着目点識別オブジェクトを表示することを示すか判定する。識別表示フラグが着目点識別オブジェクトを表示することを示していない（識別表示フラグ１８０８＝０）場合、図１６の処理を終了する。識別表示フラグが着目点識別オブジェクトを表示することを示す（識別表示フラグ１８０８＝１）場合、ステップＳ１６０８で、ＨＭＤ１００−Ａ１の視線が最初に突き当たる仮想オブジェクトの面上の点（座標）を着目点として特定する。
【０１４６】
ステップＳ１６０９では、情報処理装置２００−ＡのＣＰＵ２０１は、ステップＳ１０４で取得したＨＭＤ１００−Ａ１の位置姿勢の情報と、ステップＳ１６０８で特定した着目点の座標、及びＨＭＤ１００−Ａ１のＨＭＤ  ＩＤを情報処理装置２００−Ｂに送信する。
【０１４７】
ステップＳ１６１０では、情報処理装置２００−ＢのＣＰＵ２０１は、ステップＳ１６０９で送信された各種情報を受信して外部メモリに記憶し、ステップＳ１６１１では、ＨＭＤ１００−Ｂ１、ＨＭＤ１００−Ｂ２の現実画像を取得して、また、当該受信した着目点の示す、ＨＭＤ１００−Ｂ１、ＨＭＤ１００−Ｂ２のそれぞれの仮想空間上の座標にオブジェクトテーブルから取得した着目点識別オブジェクト（例えば図１７の１７０１）を配置して、それぞれのＨＭＤ１００の位置姿勢に従って仮想空間画像を撮像（取得）する。
【０１４８】
ステップＳ１６１２では、ステップＳ１６１１で取得した２つの画像を重畳（合成）して複合現実画像を生成し、ステップＳ１６１３で当該複合現実画像を各ＨＭＤ１００に送信する。図１６では、ＨＭＤ１００−Ｂ１に複合現実画像を送信する例を示している。複合現実画像の例は図１７に示す。また、着目点識別オブジェクトの配置・生成方法は第１の実施形態の説明で前述したため説明は割愛する。
【０１４９】
つまり、情報処理装置２００−Ｂは、自機に対応するＨＭＤ１００−Ｂに対してのみ、ＨＭＤ１００−Ａ１の着目点を識別表示させる処理を行う。
【０１５０】
ステップＳ１６１４では、ＨＭＤ１００−Ｂ１は当該複合現実画像を受信して、ステップＳ１６１５で表示画面に表示する。
【０１５１】
ステップＳ１６１６では、情報処理装置２００−ＡのＣＰＵ２０１は、ＨＭＤ１００−Ａ１から着目点識別表示の停止指示を受け付けたか判定する。具体的には、ステップＳ１６０１で押下されたＨＭＤ１００−Ａ１上のボタンが再度押下された旨の情報をＨＭＤ１００−Ａ１から受信した場合に、着目点識別表示の停止指示を受け付けたと判定する。着目点識別表示の停止指示を受け付けた場合（ステップＳ１６１６でＹＥＳ）、ステップＳ１６１７で、着目点識別オブジェクトを非表示にするための非表示指示を情報処理装置２００−Ｂに送信する。図１６の処理を終了する。着目点識別表示の停止指示を受け付けていない場合（ステップＳ１６１６でＮＯ）処理をステップＳ１６０４に戻す。
【０１５２】
ステップＳ１６１８では、情報処理装置２００−ＢのＣＰＵ２０１は、着目点識別オブジェクトを非表示にするための非表示指示を受け付けて、ステップＳ１６１９で、着目点識別オブジェクトを各ＨＭＤ１００−Ｂの仮想空間から削除する。以上が図１６の説明である。
【０１５３】
なお、図１３のようなモード設定画面で着目点の識別表示モードがＯＮになっているＨＭＤ１００についてステップＳ１６０３で自機の着目点を他のＨＭＤ１００に表示させる指示がされていると判断し、ステップＳ１６０４〜Ｓ１６１５の処理をするようにしてもよい。モード設定画面で着目点の識別表示モードがＯＦＦになっている場合、ステップＳ１６１６で着目点の非表示の指示がされていると判定して処理をステップＳ１６１７に移行するものとする。
【０１５４】
また、図１６の処理と、図５の処理を並行して実行するようにしてもよい。
【０１５５】
第５の実施形態によれば、着目点識別オブジェクトの表示指示をしたＨＭＤの着目点を、他のＨＭＤに識別表示させることができる。
【０１５６】
つまり、自分がどこに着目しているのかを知ってほしいユーザが、自分がどこに着目しているのか他の拠点のユーザに通知することができる。
【０１５７】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１５８】
なお、ＨＭＤ１００は頭部装着式のものであってもよいし、手に持って使用する双眼鏡型のものであってもよい。また、ＨＭＤのディスプレイはシースルータイプのディスプレイであってもよい。シースルータイプの場合、透明なディスプレイ越しに現実空間が見えるため、ディスプレイ上に仮想空間の画像を表示させることであたかも現実空間画像に仮想空間画像を重畳したように見せる。
【０１５９】
また、上述した複数の実施形態の処理は、自由に組み合わせ可能であり、同時並行的に実行・実現することが可能であるものとする。
【０１６０】
また、本実施例では拠点Ａと拠点Ｂにそれぞれ情報処理装置２００が設置されている構成となっているが、１つの拠点Ａに複数の情報処理装置２００を設置しても構わないし、１つの拠点Ａに１つの情報処理装置２００を設置し、複数のＨＭＤ１００を接続し、それぞれのＭＲ空間を構築することで本発明を実施することもできる。一つの情報処理装置２００で実施する場合には、情報処理装置２００に複数のグラフィックボードを備える必要がある。
【０１６１】
また、上述した実施形態においてはＨＭＤの位置を特定する方法として光学式マーカと光学式センサを用いる形態をとったが、例えば特開２００３−３０８５１４号に示すように、２次元マーカを複数用いることによりＨＭＤ１００の位置姿勢を特定するようにしてもよいし、センサと２次元マーカの両方を用いてＨＭＤ１００の位置姿勢を特定するようにしてもよい。
【０１６２】
２次元マーカを用いてＨＭＤの位置姿勢を特定する場合は、マーカの形状は問わないが、例えば正方形であり、全て同じサイズであるものとする。各マーカにはユニークなマーカ番号が埋め込まれているものとする。そして、ＨＭＤ１００に設けられたカメラで撮像した際に、個々のマーカが識別でき、デコードした際に、そのマーカ番号が得られるものとする。そして、位置検出用マーカについては、ＨＭＤ１００の位置姿勢がどのような状態であっても、内蔵するカメラの視野内に最低でも３つが含まれるように、予め既知の位置に貼り付けられているものとする。ＨＭＤ１００の位置姿勢を検出する原理は、例えば撮像した画像中の３つの位置検出用マーカ（その位置は既知）それぞれのサイズから、ＨＭＤ１００からそれぞれまでの位置検出用マーカまでの距離を求めるものである。そして、３つの位置検出用マーカから求めた３つの距離が重なる位置を、ＨＭＤ１００の位置として決定する。また、ＨＭＤ１００の姿勢は、撮像した画像中の３つの位置検出用マーカの配置から求めればよい。
【０１６３】
なお、マーカの法線方向に視点があるとき、そのマーカ画像が正方形に見えることになる。そして、視点が法線方向からずれると、そのずれの度合いに応じて正方形が歪んで見える。つまり、この歪みから、視点の軸に対するマーカで規定される平面の向きが判明し、マーカのサイズから視点とマーカ間の距離を検出でき、マーカが貼り付けられた平面が規定できる。また、実施形態では、マーカには、互いに識別できる２つの印が設けられ、マーカの中心位置を原点とし、マーカで規定される上記の平面上の、原点からその印に向かう２つのベクトルを２軸、マーカの中心位置から法線方向の１軸で、局所的（ローカル）な３次元座標を規定する３軸を規定しているものとする。
【０１６４】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１６５】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１６６】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１６７】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１６８】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１６９】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１７０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせても実行可能である。
【０１７１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１７２】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１７３】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１７４】
１００  ＨＭＤ
１０１  ＬＡＮ
１０３  光学式マーカ
１０４  光学式センサ
１０５  選択デバイス
２００  情報処理装置
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  入力デバイス
２１０  ディスプレイ
２１１  外部メモリ
２１２  汎用バス
２２１  右目・左目ビデオカメラ
２２２  右目・左目ディスプレイ
【図１】
0006725827.tif 000002
【図２】
0006725827.tif 000003
【図３】
0006725827.tif 000004
【図４】
0006725827.tif 000005
【図５】
0006725827.tif 000006
【図６】
0006725827.tif 000007
【図７】
0006725827.tif 000008
【図８】
0006725827.tif 000009
【図９】
0006725827.tif 000010
【図１０】
0006725827.tif 000011
【図１１】
0006725827.tif 000012
【図１２】
0006725827.tif 000013
【図１３】
0006725827.tif 000014
【図１４】
0006725827.tif 000015
【図１５】
0006725827.tif 000016
【図１６】
0006725827.tif 000017
【図１７】
0006725827.tif 000018
【図１８】
0006725827.tif 000019