(57)【要約】【課題】  仮想空間中において所望とする箇所を静止した視点から見ることを可能とする技術を提供すること。【解決手段】  観察者の視点の位置姿勢を取得する毎に、取得した位置姿勢のデータをメモリに上書きして格納し（Ｓ９０５）、第１の指示を検知した場合には、メモリに対する格納処理を行わないよう処理を制御し（Ｓ９０４）、メモリに格納されている位置姿勢を有する視点から見える仮想空間の画像を生成し（Ｓ９０６）、生成した画像を出力する（Ｓ９０８）。【選択図】  図９
2007004716.tif 000002
【特許請求の範囲】
【請求項１】
観察者の視点の位置姿勢を取得する取得工程と、
前記取得工程で位置姿勢を取得する毎に、取得した位置姿勢のデータをメモリに上書きして格納する格納制御工程と、
第１の指示を検知した場合には、前記メモリに対する格納処理を行わないよう、前記格納制御工程による処理を制御する第１の制御工程と、
前記メモリに格納されている位置姿勢を有する視点から見える仮想空間の画像を生成する生成工程と、
前記生成工程で生成した画像を出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記第１の制御工程で、前記メモリに対する格納処理を行わないよう、前記格納制御工程による処理を制御している場合に、
前記第１の指示とは異なる第２の指示を検知した場合には、前記メモリに対する格納処理を再開するよう、前記格納制御工程による処理を制御する第２の制御工程を更に備えることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
更に、
前記視点から見える現実空間の画像を取得する画像取得工程を備え、
前記出力工程では、前記生成工程で生成した仮想空間の画像を、前記画像取得工程で取得した現実空間の画像上に重畳させて出力することを特徴とする請求項１又は２に記載の画像処理方法。
【請求項４】
観察者の視点の位置姿勢を取得する取得手段と、
前記取得手段が位置姿勢を取得する毎に、取得した位置姿勢のデータをメモリに上書きして格納する格納制御手段と、
第１の指示を検知した場合には、前記メモリに対する格納処理を行わないよう、前記格納制御手段を制御する第１の制御手段と、
前記メモリに格納されている位置姿勢を有する視点から見える仮想空間の画像を生成する生成手段と、
前記生成手段が生成した画像を出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項５】
コンピュータに請求項１乃至３の何れか１項に記載の画像処理方法を実行させることを特徴とするプログラム。
【請求項６】
請求項５に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現実空間の画像、特に現実空間に重畳させるための仮想空間の画像を生成するための技術に関するものである。
【背景技術】
【０００２】
近年、複合現実感技術（ＭＲ（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）技術）がもてはやされつつある。複合現実感技術とは、実写とＣＧとを合成表示する為の技術である。例えば、眼前にＣＧの自動車が現れたり、３次元ＣＡＤ（Ｃｏｍｐｕｔｅｒ Ａｉｄｅｄ Ｄｅｓｉｇｎ；以下３Ｄ−ＣＡＤ）で設計中の電子炊飯器があったり、というような体験をさせるためのものである。
【０００３】
工業製品製造業では近年、メカ設計や意匠設計に３Ｄ−ＣＡＤを用いるようになってきている。そのため、従来行っていたような製品の実機モックアップ（模型）を用いたメカ検討や意匠検討を、実機モックアップを作成せずに、あるいは作成する前に、コンピュータ画面上に３Ｄモデルを表示することにより行うことが可能になってきている。
【０００４】
このようなコンピュータ内部の仮想世界で再現された検討用３Ｄモデルのことをディジタルモックアップ（ＤＭ，あるいはＤＭＵ）、デジタルモックアップの映し出された画面を多人数で同時に観察し、検討を行うことをディジタルモックアップレビュー（ＤＭＲ）と呼ぶ。
【０００５】
ＤＭＲでは様々な角度から対象となる製品のディジタルモックアップの観察を行う。特定の部品を動かしたり、止めたりしながら、メカ機構・デザインの評価が最も有効な位置からディジタルモックアップを観察するために、コンピュータ内部のカメラの位置・姿勢を移動したりする。
【０００６】
しかしながら、従来のＤＭＲにおいては、ディジタルモックアップを撮影するコンピュータ内部の仮想世界のカメラの位置・姿勢を所望の場所に移動することが難しく、またコンピュータ内部という完全な仮想世界の画像しか観察できないので、ディジタルモックアップの大きさを把握しにくいという問題があった。
【０００７】
そこで、ＭＲ技術を用いると、コンピュータ内部の仮想世界のカメラの位置・姿勢の移動は単に現実のカメラを移動するだけでよく、現実の世界の中に仮想のディジタルモックアップが重畳されて表示されるので、ディジタルモックアップの大きさを容易に把握できるという利点がある。そのため、ＤＭＲの分野において、ＭＲ技術は有望視されている。
【特許文献１】特開２００５−１０７９７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、被験者が操作するカメラの位置・姿勢の動きにつられて複合現実世界のカメラの位置・姿勢も動いてしまう。そのため、観察する複合現実世界を静止した視点から観測することが困難となり、細かいメカ機構や意匠について多人数で観察するＤＭＲでは、注目したい部分を注目しつづけるのが困難になる。さらに、ある視点から観察した複合現実世界内の特定部分を指示するのが困難、あるいは不可能となる。
【０００９】
本発明は以上の問題に鑑みてなされたものであり、仮想空間中において所望とする箇所を静止した視点から見ることを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１１】
即ち、観察者の視点の位置姿勢を取得する取得工程と、
前記取得工程で位置姿勢を取得する毎に、取得した位置姿勢のデータをメモリに上書きして格納する格納制御工程と、
第１の指示を検知した場合には、前記メモリに対する格納処理を行わないよう、前記格納制御工程による処理を制御する第１の制御工程と、
前記メモリに格納されている位置姿勢を有する視点から見える仮想空間の画像を生成する生成工程と、
前記生成工程で生成した画像を出力する出力工程と
を備えることを特徴とする。
【００１２】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１３】
即ち、観察者の視点の位置姿勢を取得する取得手段と、
前記取得手段が位置姿勢を取得する毎に、取得した位置姿勢のデータをメモリに上書きして格納する格納制御手段と、
第１の指示を検知した場合には、前記メモリに対する格納処理を行わないよう、前記格納制御手段を制御する第１の制御手段と、
前記メモリに格納されている位置姿勢を有する視点から見える仮想空間の画像を生成する生成手段と、
前記生成手段が生成した画像を出力する出力手段と
を備えることを特徴とする。
【発明の効果】
【００１４】
本発明の構成により、仮想空間中において所望とする箇所を静止した視点から見ることができる。
【発明を実施するための最良の形態】
【００１５】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１６】
［第１の実施形態］
＜従来のシステムについて＞
先ず、ＭＲ技術を用いてＤＭＲを行うための従来のシステムについて説明する。
【００１７】
図１は、ＭＲ技術を用いてＤＭＲを行うための従来のシステムの構成例を示す図である。
【００１８】
観察者１００の頭部には、頭部装着型表示装置（所謂ＨＭＤ（ＨｅａｄＭｏｕｎｔ  Ｄｉｓｐｌａｙ））１１０が装着されている。
【００１９】
図２は、ＨＭＤ１１０の構成を示す図である。
【００２０】
ＨＭＤ１１０は、ＬＣＤ等の小型表示装置１１２と、小型ビデオカメラ１１１、及びプリズム１１４、１１５で構成される。本来ならば観察者１００が見ているであろう現実空間は映像として小型ビデオカメラ１１１により撮像され、観察者１００は小型表示装置１１２に表示される映像を見る。
【００２１】
また、小型ビデオカメラ１１１により撮像された現実空間の画像は後段のコンピュータ１４０に対して出力する。なお、以下では、小型ビデオカメラ１１１を「観察者１００の視点」と呼称する場合がある。
【００２２】
位置姿勢センサ１１３はＨＭＤ１１０に一体となって取り付けられており、自身の位置姿勢を計測するものである。このような位置姿勢センサ１１３には、米国Polhemus社製FASTRAK（登録商標）等が利用可能である。なお、位置姿勢センサ１１３がFASTRAKの場合、トランスミッタ１３０、及び本体１３１と組み合わせて使用する。
【００２３】
例えば、位置姿勢センサ１１３が磁気センサの場合、トランスミッタ１３０からは磁場が発生されるので、位置姿勢センサ１１３は自身の位置姿勢に応じた磁気を検知し、検知した結果を示す信号を本体１３１に出力する。本体１３１は、受けた信号に基づいて、位置姿勢センサ１１３の位置姿勢を示すデータを生成する。生成したデータは後段のコンピュータ１４０に対して出力する。このようにして取得される位置姿勢のデータは、現実空間中におけるトランスミッタ１３０の位置を原点とし、この原点で互いに直交する３軸ををそれぞれｘ、ｙ、ｚ軸とする座標系（センサ座標系）における位置姿勢を示すデータである。なお、位置姿勢センサを用いて位置姿勢センサ自身の位置姿勢を取得するための技術については周知のものであるので、これ以上の説明は省略する。
【００２４】
また、同図において１６０は観察者１００に対して複合現実空間を提示可能な領域を示すものであり、観察者１００は同図１６０で示す領域内で現実空間と仮想空間とが合成された複合現実空間を体感することができる。従って、領域１６０内であれば、任意の位置姿勢、サイズでもって仮想物体を配置することができる。同図では、この複合現実空間の領域１６０内には現実物体１７０と仮想物体１８０とが存在している。
【００２５】
コンピュータ１４０は、本体１３１から出力される位置姿勢のデータを用いて、観察者の視点から見える仮想空間の画像を生成する。そして生成した仮想空間の画像を、ＨＭＤ１１０（厳密には小型ビデオカメラ１１１）から出力される現実空間の画像上に重畳させて、ＨＭＤ１１０に備わっている小型表示装置１１２、及び後述する多人数向け表示装置１２０に対して出力する。領域１６０内における仮想物体１８０はこのコンピュータ１４０が生成したものである。
【００２６】
多人数向け表示装置１２０は、観察者１００以外の観察者に対しても、観察者１００が観察する画像（小型表示装置１１２に表示されている複合現実空間の画像）を提供すべく、コンピュータ１４０から出力された画像を表示する。これにより、観察者１００以外に、ＤＭＲに参加する参加者は、多人数向け表示装置１２０に表示される画像を観察しながら、メカ機構や意匠の検討を行うことができる。
【００２７】
図３は、コンピュータ１４０を中心とした上記システムの機能構成を示した図である。同図に示す如く、コンピュータ１４０は、ビデオ映像取得部３０１、カメラ位置姿勢出力部３０２、ＣＧ・ビデオ表示部３０３、ＣＧ・ビデオ合成部３０４、ＣＧ生成部３０５により構成されている。また、カメラ位置姿勢出力部３０２内にはカメラ位置姿勢取得部３０２ａが備わっている。
【００２８】
カメラ位置姿勢取得部３０２ａは、位置姿勢センサ１１３が計測した位置姿勢のデータを用いて、観察者１００の視点の位置姿勢を示すデータ（ＣＧ描画用カメラ位置姿勢データ３０２ｂ）を更新する処理を行う。ここで、周知の通り、位置姿勢センサ１１３と観察者１００の視点との位置姿勢関係を予めバイアスデータとして求めておき、このバイアスデータと、位置姿勢センサ１１３が計測した位置姿勢のデータ（即ち、位置姿勢センサ１１３自身のセンサ座標系における位置姿勢のデータ）とを加算することで、視点の位置姿勢のデータを求めることができる。従って、ＣＧ描画用カメラ位置姿勢データ３０２ｂは、この視点の位置姿勢のデータであり、カメラ位置姿勢取得部３０２ａは、位置姿勢センサ１１３が計測した位置姿勢のデータを取得する毎に、上述のようにして視点の位置姿勢のデータを求め、求めたデータでもってＣＧ描画用カメラ位置姿勢データ３０２ｂを更新する処理を行う。
【００２９】
ＣＧデータ３０６は、仮想空間の画像を生成するために必要なデータ群であり、例えば仮想空間を構成する各仮想物体がポリゴンでもって構成されている場合には、ポリゴンの法線ベクトルデータ、ポリゴンを構成する各頂点の座標データ、ポリゴンカラーデータ、そしてこの仮想物体にテクスチャマッピングを施す場合には、テクスチャデータもこのＣＧデータ３０６に含まれることになる。なお、このＣＧデータ３０６は、上記ディジタルモックアップのデータであっても良いし、３Ｄ−ＣＡＤ等で作成されたもの、あるいはそれを本システム向けに変換したものであっても良い。
【００３０】
ＣＧ生成部３０５は、ＣＧ描画用カメラ位置姿勢データ３０２ｂと、ＣＧデータ３０６とを用いて、観察者１００の視点から見える仮想空間の画像を生成する。なお、所定の位置姿勢を有する視点から見える仮想空間の画像を生成する処理については周知のものであるので、これ以上の説明は省略する。
【００３１】
ビデオ映像取得部３０１は、ＨＭＤ１１０に備わっている小型ビデオカメラ１１１から出力された現実空間の画像を取得し、後段のＣＧ・ビデオ合成部３０４に出力する。ＣＧ・ビデオ合成部３０４は、ビデオ映像取得部３０１から受けた現実空間の画像上に、ＣＧ生成部３０５が生成した仮想空間の画像を重畳させて、複合現実空間の画像を生成し、ＣＧ・ビデオ表示部３０３に出力する。
【００３２】
ＣＧ・ビデオ表示部３０３は、受けた複合現実空間の画像を、ＨＭＤ１１０に備わっている小型表示装置１１２や、多人数向け表示装置１２０に対して出力する。
【００３３】
以上の構成により、観察者１００の視点の位置姿勢に応じて見える複合現実空間の画像を生成し、ＨＭＤ１１０に備わっている小型表示装置１１２や、多人数向け表示装置１２０に対して出力することができる。
【００３４】
＜本実施形態に係るシステムについて＞
次に、本実施形態に係るシステムについて説明する。
【００３５】
図４は、本実施形態に係るシステムの構成例を示す図である。図１と同じ部分については同じ番号を付けており、その説明は省略する。本実施形態に係るシステムは、図１に示した構成に加え、押しボタンスイッチ４０１がコンピュータ１４０に接続されている点が、従来と異なる。
【００３６】
押しボタンスイッチ４０１は、観察者１００が手に保持するものであり、例えば、観察者１００が複合現実空間を観察していて、検討対象の仮想物体が最も観察しやすい位置姿勢に自身の視点を移動させ、小型表示装置１１２に検討対象の仮想物体が最も観察しやすい状態で表示されている時に押下するものである。押しボタンスイッチ４０１を押下すると、押下した旨を示す信号がコンピュータ１４０に出力される。
【００３７】
図５は、本実施形態に係るシステムの機能構成を示すブロック図である。図３と同じ部分については同じ番号を付けており、その説明は省略する。図３に示した構成と異なるのは、コンピュータ１４０の機能構成が図３に示した構成に加え、イベント検出部５０１が更に付加されているとともに、カメラ位置姿勢取得部３０２ａがカメラ位置姿勢取得部３０２ｃとなっている点にある。
【００３８】
イベント検出部５０１は、押しボタンスイッチ４０１が押下された旨を示す信号を押しボタンスイッチ４０１から受けると、これを検知し、カメラ位置姿勢取得部３０２ｃに通知する。カメラ位置姿勢取得部３０２ｃの基本動作についてはカメラ位置姿勢取得部３０２ａの動作に加え、イベント検出部５０１から通知を受けると、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を停止する。即ち、押しボタンスイッチ４０１が押下されると、そのタイミングに応じてＣＧ描画用カメラ位置姿勢データ３０２ｂの更新が停止するので、押しボタンスイッチ４０１が押下されたタイミング以降は同じ位置姿勢の視点から見える仮想空間画像が生成されることになる。即ち、静止した視点から見える仮想空間の画像を得ることができる。
【００３９】
なお、再度押しボタンスイッチ４０１が押下されると、イベント検出部５０１は同様にカメラ位置姿勢取得部３０２ｃに対して通知を行い、カメラ位置姿勢取得部３０２ｃは、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を再開する。つまり、押しボタンスイッチ４０１を押下する毎に、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を行うか否かを切り替えることができる。
【００４０】
図６は、押しボタンスイッチ４０１を押下する毎に、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を行うか否かを切り替える様子を示すステートチャートを示す図である。
【００４１】
コンピュータ１４０を起動したときには、カメラ位置姿勢取得部３０２ｃはＣＧ描画用カメラ位置姿勢データ３０２ｂを更新するよう動作する。即ち、上述の通り、位置姿勢センサ１１３が計測した自身の位置姿勢のデータを本体１３１を介して受けると、受けたデータに基づいて視点の位置姿勢のデータを求め、求めたデータでもって、ＣＧ描画用カメラ位置姿勢データ３０２ｂを更新する。
【００４２】
ここで、観察者１００が押しボタンスイッチ４０１を押下すると、イベント検出部５０１は押下された旨をカメラ位置姿勢取得部３０２ｃに通知するので、カメラ位置姿勢取得部３０２ｃはＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を停止するよう動作する。即ち、上述の通り、位置姿勢センサ１１３が計測した自身の位置姿勢のデータを本体１３１を介して受けても、ＣＧ描画用カメラ位置姿勢データ３０２ｂに対しては何等操作しない。従って、イベント検出部５０１から通知を受けた以降はＣＧ描画用カメラ位置姿勢データ３０２ｂは何等変化しない。
【００４３】
従って、この状態で観察者１００の視点の位置姿勢がどのように変化しようとも、ＣＧ描画用カメラ位置姿勢データ３０２ｂは何等変化しないので、小型表示装置１１２や多人数向け表示装置１２０に表示される複合現実空間の画像中における各仮想物体は静止した視点から見たものとなる。これにより、例えば、観察者１００が、検討対象の仮想物体が最も観察しやすい位置姿勢に自身の視点を移動させ、そこで押しボタンスイッチ４０１を押下すると、多人数向け表示装置１２０には、押しボタンスイッチ４０１を押下した時点における観察者１００の視点から見える仮想空間の画像が現実空間の画像に重畳された状態で表示されるので、この検討対象の仮想物体に対して多人数向け表示装置１２０の表示画面上で指し示すことが容易になり、多人数での検討が行いやすくなる。
【００４４】
なお、再度押しボタンスイッチ４０１が押下されると、イベント検出部５０１は同様にカメラ位置姿勢取得部３０２ｃに対して通知を行い、カメラ位置姿勢取得部３０２ｃは、再度、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を再開する。
【００４５】
図８は、コンピュータ１４０のハードウェア構成を示す図である。なお、このようなコンピュータ１４０としては一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）等が適用可能である。
【００４６】
８０１はＣＰＵで、ＲＡＭ８０２やＲＯＭ８０３に格納されているプログラムやデータを用いてコンピュータ１４０全体の制御を行うと共に、コンピュータ１４０が行う後述の各処理を実行する。
【００４７】
８０２はＲＡＭで、外部記憶装置８０６からロードされたプログラムやデータを一時的に記憶するためのエリア、Ｉ／Ｆ８０７を介して受信した各種のデータを一時的に記憶するためのエリア、ＣＰＵ８０１が各種の処理を実行するために用いるワークエリアなど、各種のエリアを適宜提供することができる。
【００４８】
８０３はＲＯＭで、本コンピュータ１４０の設定データやブートプログラムなどを格納する。
【００４９】
８０４は操作部で、キーボードやマウスなどにより構成されており、本コンピュータ１４０の操作者が操作することで、各種の指示をＣＰＵ８０１に対して入力することができる。この操作部８０４を上記押しボタンスイッチ４０１の代わりに用いても良い。
【００５０】
８０５は表示部で、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ８０１による処理結果を画像や文字などでもって表示することができる。この表示部８０５を上記多人数向け表示装置１２０として用いるようにしても良い。
【００５１】
８０６は外部記憶装置で、ハードディスクドライブ装置に代表される大容量情報記憶装置であって、ここにＯＳ（オペレーティングシステム）や、コンピュータ１４０が行う各種の処理をＣＰＵ８０１に実行させる為のプログラムやデータ（上記バイアスデータやＣＧデータ３０６等を含む）が保存されており、これらは必要に応じてＣＰＵ８０１による制御に従ってＲＡＭ８０２にロードされる。
【００５２】
８０７はＩ／Ｆで、ここに上記ＨＭＤ１１０、本体１３１、多人数向け表示装置１２０、押しボタンスイッチ４０１等を接続することができ、これらの装置とのデータ通信はこのＩ／Ｆ８０７を介して行われる。なお、装置毎にＩ／Ｆ８０７を設けるようにしても良い。
【００５３】
８０８は上述の各部を繋ぐバスである。
【００５４】
次に、このようなコンピュータ１４０によって１フレーム分の複合現実空間の画像を生成する為の処理について、同処理のフローチャートを示す図９を用いて説明する。なお、同図のフローチャートに従った処理をＣＰＵ８０１に実行させるためのプログラムやデータは外部記憶装置８０６内に保存されており、これらは適宜ＣＰＵ８０１による制御に従ってＲＡＭ８０２にロードされ、ＣＰＵ８０１がこれを用いて処理を実行することで、コンピュータ１４０は以下説明する各処理を実行することになる。
【００５５】
ＨＭＤ１１０に備わっている小型ビデオカメラ１１１により撮像された現実空間の画像が順次Ｉ／Ｆ８０７を介して本コンピュータ１４０に入力されるので、ＣＰＵ８０１は順次入力される各画像を、ＲＡＭ８０２内のビデオバッファに格納する（ステップＳ９０１）。
【００５６】
一方、本体１３１からは、位置姿勢センサ１１３の位置姿勢を示すデータがＩ／Ｆ８０７を介して本コンピュータ１４０内に入力されるので、ＣＰＵ８０１は入力した位置姿勢のデータをＲＡＭ８０２内の所定のエリア、若しくは外部記憶装置８０６内に格納する（ステップＳ９０２）。なお、ステップＳ９０１における処理とステップＳ９０２における処理とはこの順に行われることに限定するものではないし、周知のマルチスレッド処理でもって並行して行うようにしても良い。
【００５７】
そしてＣＰＵ８０１は、ステップＳ９０２で取得した位置姿勢のデータと、外部記憶装置８０６からＲＡＭ８０２にロードしたバイアスデータとを加算することで、視点の位置姿勢を求める（ステップＳ９０３）。このように、計測した位置姿勢から、視点の位置姿勢を求めるための処理については周知のものであるので、これに関する説明は省略する。
【００５８】
次に、ＣＰＵ８０１は、観察者１００が押しボタンスイッチ４０１を押下した旨を示す信号が押しボタンスイッチ４０１からＩ／Ｆ８０７を介して本コンピュータ１４０に入力されたかをチェックし（ステップＳ９０４）、押下した旨を検知していない場合には処理をステップＳ９０５に進め、ステップＳ９０３で求めた視点の位置姿勢のデータを、ＲＡＭ８０２内、若しくは外部記憶装置８０６内に設けられているエリア（以下、位置姿勢データ記憶エリアと呼称する）内に上書き格納することで、この位置姿勢データ記憶エリア内に格納されている「視点の位置姿勢のデータ」を更新する処理を行う（ステップＳ９０５）。
【００５９】
そして、次に、ＣＰＵ８０１は、外部記憶装置８０６からＲＡＭ８０２にロードしたＣＧデータ３０６と、位置姿勢データ記憶エリア内に格納されている「視点の位置姿勢のデータ」とを用いて、視点から見える仮想空間の画像を生成する処理を行う（ステップＳ９０６）。なお、コンピュータ１４０が画像処理専用のハードウェアを有している場合には、本ステップにおける処理はこの画像処理専用のハードウェアが行うようにしても良い。
【００６０】
一方、押下した旨を検知した場合には処理をステップＳ９０４からステップＳ９０６に進める。即ち、押しボタンスイッチ４０１の押下を検知した場合には、ステップＳ９０５における処理は行わないので、ステップＳ９０６で生成する仮想空間の画像の視点は、従前に位置姿勢データ記憶エリア内に格納されている「視点の位置姿勢のデータ」に従ったものとなる。
【００６１】
次に、ＣＰＵ８０１は、ステップＳ９０１で上記ビデオバッファ内に格納した現実空間の画像上に、ステップＳ９０６で生成した仮想空間の画像を重畳させることで、複合現実空間の画像を生成し（ステップＳ９０７）、これをＩ／Ｆ８０７を介してＨＭＤ１１０に備わっている小型表示装置１１２、及び多人数向け表示装置１２０に対して出力する（ステップＳ９０８）。
【００６２】
なお、図９のフローチャートに従った処理は、コンピュータ１４０に予め、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納するためのモード（第１のモード）を設定しておき、押しボタンスイッチ４０１が押下されると、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納しないモード（第２のモード）に切り替えるものとして説明している。
【００６３】
また、第２のモードが設定されている場合に、押しボタンスイッチ４０１が押下された場合の処理については、図９のフローチャートにおいて、ステップＳ９０４における分岐先を逆にすればよい。即ち、押しボタンスイッチ４０１の押下を検知した場合には処理をステップＳ９０５に進め、検知していない場合には、処理をステップＳ９０６に進める。
【００６４】
即ち、押しボタンスイッチ４０１を押下する毎に、第１のモードと第２のモードを交互に切り替えることになる。
【００６５】
［第２の実施形態］
第１の実施形態では、押しボタンスイッチ４０１を押下する毎に、第１のモードと第２のモードとを交互に切り替えていたが、押しボタンスイッチ４０１以外のものを用いてモードを切り替えるようにしても良い。例えば、所定の音声を入力する毎にモードを切り替えるようにしても良いし、観察者１００が所定のジェスチャを行い、コンピュータ１４０がこれを認識する毎にモードを切り替えるようにしても良い。
【００６６】
また、第１の実施形態では図６に示す如く、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納することを禁止している際に、押しボタンスイッチ４０１が押下されると、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納する動作を再開する。しかし、図７に示す如く、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納することを禁止している際に、押しボタンスイッチ４０１が押下されると、直接、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納する動作を再開するのではなく、以下説明する処理を行う。
【００６７】
即ち、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納することを禁止している際に、押しボタンスイッチ４０１が押下されると、押下を検知したタイミング近傍で求めた視点の位置姿勢のデータと、位置姿勢データ記憶エリアに格納されている視点の位置姿勢のデータとの差分値（位置同士の差分、姿勢同士の差分）を求め、位置同士の差分値、若しくは姿勢同士の差分が所定値以上である場合には、その差分値を１フレーム毎に所定量（例えば差分値の１／２０）だけ減少させるよう、位置姿勢データ記憶エリアに格納されている視点の位置姿勢のデータを補正する。そして何れかの差分値、若しくは両方の差分値が所定値以下となった場合には、第１の実施形態と同様、視点の位置姿勢のデータを位置姿勢データ記憶エリアに格納する動作を再開する。
【００６８】
また、第１の実施形態では、観察者１００は自身の頭部にＨＭＤ１１０を装着し、このＨＭＤ１１０に備わっている小型表示装置１１２に表示されている複合現実空間の画像を観察しているが、観察者１００もその他の観察者と同様に多人数向け表示装置１２０に表示されている画像を観察して同様の検討を行うために、以下のような変形例も考えられる。
【００６９】
即ち、観察者１００の頭部には少なくとも位置姿勢センサ１１３と小型ビデオカメラ１１１とを装着し、観察者１００の視点から見える現実空間の画像、及び位置姿勢センサ１１３の位置姿勢のデータをコンピュータ１４０に出力する。コンピュータ１４０は上述の通り、観察者１００の視点から見える複合現実空間の画像を生成するので、これを多人数向け表示装置１２０に対して出力する。
【００７０】
これにより、観察者１００はＨＭＤ１１０を介してではなく、多人数向け表示装置１２０を介して、自身の視点から見える複合現実空間の画像を観察し、その他の観察者と同様の検討を行うことができる。
【００７１】
［その他の実施形態］
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００７２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７３】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７４】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００７５】
【図１】ＭＲ技術を用いてＤＭＲを行うための従来のシステムの構成例を示す図である。
【図２】ＨＭＤ１１０の構成を示す図である。
【図３】コンピュータ１４０を中心としたシステムの機能構成を示した図である。
【図４】本発明の第１の実施形態に係るシステムの構成例を示す図である。
【図５】本発明の第１の実施形態に係るシステムの機能構成を示すブロック図である。
【図６】押しボタンスイッチ４０１を押下する毎に、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を行うか否かを切り替える様子を示すステートチャートを示す図である。
【図７】押しボタンスイッチ４０１を押下する毎に、ＣＧ描画用カメラ位置姿勢データ３０２ｂの更新を行うか否かを切り替える様子を示すステートチャートを示す図である。
【図８】コンピュータ１４０のハードウェア構成を示す図である。
【図９】１フレーム分の複合現実空間の画像を生成する為の処理のフローチャートである。
【図１】
2007004716.tif 000003
【図２】
2007004716.tif 000004
【図３】
2007004716.tif 000005
【図４】
2007004716.tif 000006
【図５】
2007004716.tif 000007
【図６】
2007004716.tif 000008
【図７】
2007004716.tif 000009
【図８】
2007004716.tif 000010
【図９】
2007004716.tif 000011