(57)【要約】【課題】  仮想空間の周囲環境が現実空間における物体と関わるような現象を再現すること。また、現実空間と仮想空間の違和感を抑制すると共に、より高い没入感を得られる複合現実感を提示すること。【解決手段】  仮想空間中に配置する仮想物体の周囲環境のうち、時間の経過と共に変化する環境に関する画像、時間の経過と共には変化しない環境に関する画像を生成し（ステップＳ８０１）、画像を、現実空間中に投影する（Ｓ８０２）。【選択図】  図８
2005165973.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間中に配置する仮想物体の周囲環境の画像を生成する画像処理方法であって、
前記周囲環境のうち、時間の経過と共に変化する環境に関する画像を生成する第１の生成工程と、
前記周囲環境のうち、時間の経過と共には変化しない環境に関する画像、及び前記第１の生成工程で生成した画像を合成した画像を生成する第２の生成工程と、
前記第２の生成工程で生成した画像を、現実空間中に投影する投影工程と
を備えることを特徴とする画像処理方法。
【請求項２】
前記第１の生成工程では、前記仮想物体の影の画像を生成することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記投影工程では、プロジェクタにより、前記第２の生成工程で生成した画像を現実空間中の床に投影することを特徴とする請求項１に記載の画像処理方法。
【請求項４】
更に、前記仮想空間における複数のシーン毎に、シーン中の仮想物体、当該仮想物体の周囲環境に係るデータをメモリに保持させておく保持工程と、
前記仮想空間のシーンを変更する変更工程と、
前記変更工程で変更されたシーン中の仮想物体、当該仮想物体の周囲環境に係るデータを、前記保持工程で前記メモリに保持されたデータ群から特定する特定工程とを備え、
前記第１の生成工程、前記第２の生成工程では、前記特定工程で特定した周囲環境に係るデータを用いて画像生成処理を行うことを特徴とする請求項１乃至３の何れか１項に記載の画像処理方法。
【請求項５】
現実空間映像と仮想空間画像を合成してユーザに複合現実感を提示するための画像処理方法であって、
仮想物体の周囲環境に関する画像を、投影装置によって現実空間に投影させる工程と、
現実空間映像を入力する入力工程と、
仮想物体を描画し仮想画像を生成する仮想画像生成工程と、
前記現実空間映像と前記仮想画像を合成する合成工程とを有することを特徴とする画像処理方法。
【請求項６】
前記仮想物体の周囲環境に関する画像は動画像であることことを特徴とする請求項５に記載の画像処理方法。
【請求項７】
さらに、前記仮想物体に応じて前記仮想物体の周囲環境に関する画像を生成する工程を有することを特徴とする請求項５又は６に記載の画像処理方法。
【請求項８】
仮想空間中に配置する仮想物体の周囲環境の画像を生成する画像処理装置であって、
前記周囲環境のうち、時間の経過と共に変化する環境に関する画像を生成する第１の生成手段と、
前記周囲環境のうち、時間の経過と共には変化しない環境に関する画像、及び前記第１の生成手段が生成した画像を合成した画像を生成する第２の生成手段と、
前記第２の生成手段が生成した画像を、現実空間中に投影する投影手段と
を備えることを特徴とする画像処理装置。
【請求項９】
前記投影手段はプロジェクタであることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
コンピュータに請求項１乃至７の何れか１項に記載の画像処理方法を実行させることを特徴とするプログラム。
【請求項１１】
請求項１０に記載のプログラムを格納することを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間に配置する仮想物体の周囲環境に関する画像を生成し、提示する技術に関するものである。
【背景技術】
【０００２】
ＭＲ（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ）技術、ＡＲ（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）技術は共に、現実空間の画像（実写画像）とＣＧ（Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ）とを合成し、観察者に提示することにより、仮想のＣＧ物体があたかも観察者の前に存在するかのように見せる技術である。
【０００３】
このようなＭＲ技術、ＡＲ技術を用いた典型的なアプリケーションでは、観察者はビデオシースルー型のＨＭＤ（Ｈｅａｄ  Ｍｏｕｎｔｅｄ  Ｄｉｓｐｌａｙ）を自身の頭部に装着し、このＨＭＤが有する表示装置が観察者の眼前に位置するようにする。そして、この表示装置にＨＭＤに備わっているカメラが撮像する現実空間の画像と、ＨＭＤに接続されているコンピュータが生成した仮想空間の画像（ＣＧ）とを合成した画像を表示することにより、この観察者にこの合成画像を提示する。
【０００４】
ここで、カメラは観察者の頭部の向いている方向の現実空間の画像を撮像する。仮想空間の画像については、頭部の向きをセンサで計測することで観察者の視点から見える仮想空間の画像を作成する。これらの現実空間の画像と仮想空間の画像を合成することで、この観察者に、あたかも現実空間中に仮想のＣＧが存在しているような映像を見せることができる。
【０００５】
このようなＭＲ技術、ＡＲ技術を用いた例として、ＭＲ技術を用い、現実空間である部屋の画像に、ＣＧ物体である魚を合成した画像の例を図１に示す。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来のＭＲ技術、ＡＲ技術では、現実空間中の照明条件と、仮想空間中の照明条件とを合わせることが困難となっていた。
【０００７】
図１に示した画像を例にとって説明すると、ＣＧ物体としての魚の背中には、水面からの光があたり、波紋が描画されている。だが現実空間の画像中には波紋は描画されていない、すなわち、一方の空間では物体に波紋が表示されているのに、一方の空間には波紋は表示されていないので、このような照明条件の違いにより、夫々の空間の画像を合成して観察者に提示しても、観察者は不自然さを感じることになる。
【０００８】
このような問題を解決するための技術としては以下のようなものがある（例えば特許文献１を参照）。すなわち、仮想空間内で爆発を生じさせ、爆発している仮想空間の画像と現実空間の画像とを合成する場合、爆発前には現実空間の画像の輝度を下げて、現実空間の画像と合成する。そして、爆発が生じたら現実空間の画像の輝度を上げて、現実空間の画像と合成する。これにより、仮想空間における爆発により発生する光が現実空間にも派生しているように見え、夫々の空間における照明に関する違和感を軽減している。
【０００９】
しかしこのような技術を用いても、例えば観察者の手に、仮想空間における波紋が写るといったような、仮想空間における照明が現実空間における物体と関わるような現象は再現が困難であった。
【００１０】
本発明は以上の問題に鑑みてなされたものであり、仮想空間の周囲環境が現実空間における物体と関わるような現象を再現することを目的とする。
【００１１】
また、現実空間と仮想空間の違和感を抑制すると共に、より高い没入感を得られる複合現実感を提示することを目的とする。
【特許文献１】特開２０００−３５２９６０号公報
【課題を解決するための手段】
【００１２】
本発明の目的を達成するために、例えば本発明の画像処理方法は以下の構成を備える。
【００１３】
即ち、仮想空間中に配置する仮想物体の周囲環境の画像を生成する画像処理方法であって、
前記周囲環境のうち、時間の経過と共に変化する環境に関する画像を生成する第１の生成工程と、
前記周囲環境のうち、時間の経過と共には変化しない環境に関する画像、及び前記第１の生成工程で生成した画像を合成した画像を生成する第２の生成工程と、
前記第２の生成工程で生成した画像を、現実空間中に投影する投影工程と
を備えることを特徴とする。
【００１４】
本発明の目的を達成するために、例えば本発明の画像処理方法は以下の構成を備える。
【００１５】
即ち、現実空間映像と仮想空間画像を合成してユーザに複合現実感を提示するための画像処理方法であって、
仮想物体の周囲環境に関する画像を、投影装置によって現実空間に投影させる工程と、
現実空間映像を入力する入力工程と、
仮想物体を描画し仮想画像を生成する仮想画像生成工程と、
前記現実空間映像と前記仮想画像を合成する合成工程とを有することを特徴とする。
【００１６】
本発明の目的を達成するために、例えば本発明の画像処理装置は以下の構成を備える。
【００１７】
即ち、仮想空間中に配置する仮想物体の周囲環境の画像を生成する画像処理装置であって、
前記周囲環境のうち、時間の経過と共に変化する環境に関する画像を生成する第１の生成手段と、
前記周囲環境のうち、時間の経過と共には変化しない環境に関する画像、及び前記第１の生成手段が生成した画像を合成した画像を生成する第２の生成手段と、
前記第２の生成手段が生成した画像を、現実空間中に投影する投影手段と
を備えることを特徴とする。
【発明の効果】
【００１８】
本発明の構成により、仮想空間の周囲環境が現実空間における物体と関わるような現象を再現することができる。
【００１９】
また、現実空間と仮想空間の違和感を抑制することができ、より高い没入感を得られる複合現実感を提示することができる。
【発明を実施するための最良の形態】
【００２０】
以下、添付の図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００２１】
［第１の実施形態］
図３は、本実施形態に係る画像処理システムの基本構成を示す図である。同図に示すように、本実施形態に係るシステムは大まかには、ＨＭＤ１００、計算機３００、３次元センサ固定局２１０、３次元センサ本体２００、プロジェクタ４００により構成されている。
【００２２】
ＨＭＤ１００には、３次元センサ移動局１２０、右目用カメラ１１０、左目用カメラ１１１、右目用ＬＣＤ（液晶画面）１３０、左目用ＬＣＤ１３１が備わっている。本実施形態では、３次元センサ移動局１２０、３次元センサ本体２００、３次元センサ固定局２１０は夫々磁気センサであるとする。この場合、３次元センサ移動局１２０は、磁界の発生源である３次元センサ固定局２１０から発せられる磁界を検知し、３次元センサ固定局２１０の位置を原点とし、夫々直交する３軸をｘ、ｙ、ｚ軸とした座標系（センサ座標系）における自身の位置姿勢（ｘ、ｙ、ｚ、ヨー、ピッチ、ロールの６自由度）を計測する。より具体的には、実際に３次元センサ移動局１２０が検知するのは自身の位置姿勢に応じた磁気であるので、検知した磁気を示す信号を３次元センサ本体２００に出力する。３次元センサ本体２００はこの信号に基づいて、３次元センサ移動局１２０のセンサ座標系における位置姿勢を求め、求めた位置姿勢のデータを後段の計算機３００に出力する。
【００２３】
なお、磁気センサによる位置姿勢の計測方法については周知の技術であるのでここでの詳細な説明は省略する。また、以上のセンサ群は磁気センサに限定するものではなく、例えば超音波センサを用いても良いが、いずれにせよ３次元センサ移動局１２０、３次元センサ本体２００、３次元センサ固定局２１０により、３次元センサ移動局１２０のセンサ座標系における位置姿勢を計測する。
【００２４】
右目用カメラ１１０、左目用カメラ１１１は夫々ＨＭＤ１００を頭部に装着する観察者の右目に対応する現実空間の画像、左目に対応する現実空間の画像を撮像するものであり、撮像した画像は夫々後段の計算機３００に出力する。
【００２５】
右目用ＬＣＤ１３０、左目用ＬＣＤ１３１は夫々画像を表示するための液晶画面であり、夫々に表示した画像は、ＨＭＤ１００を頭部に装着する観察者の右目、左目に対して提示されることになる。この右目用ＬＣＤ１３０、左目用ＬＣＤ１３１に表示される画像は後述する計算機３００により生成された画像である。図４は、ＨＭＤ１００の外観例を示す図である。
【００２６】
プロジェクタ４００は、後述する計算機３００から出力された画像を現実空間中に投影する為のものである。プロジェクタ４００の詳細については後述する。
【００２７】
計算機３００は、シリアルＩ／Ｏ３１０、ビデオキャプチャカード３２０，３２１、ビデオカード３３０，３３１，３３２、ＰＣＩブリッジ３０３、ＣＰＵ３０１、メモリ３０２，外部記憶装置３０４により構成されている。
【００２８】
シリアルＩ／Ｏ３１０は３次元センサ本体２００と繋がっており、３次元センサ本体２００から出力される「３次元センサ移動局１２０のセンサ座標系における位置姿勢を示すデータ」はこのシリアルＩ／Ｏ３１０を介して後段のメモリ３０２に出力される。
【００２９】
ビデオキャプチャカード３２０、３２１は夫々右目用カメラ１１０、左目用カメラ１１１と繋がっており、右目用カメラ１１０、左目用カメラ１１１から出力される右目用の現実空間の画像、左目用の現実空間の画像は夫々ビデオキャプチャカード３２０、３２１を介して後段のメモリ３０２に出力される。
【００３０】
ビデオカード３３０、３３１は夫々右目用ＬＣＤ１３０、左目用ＬＣＤ１３１と繋がっており、計算機３００が生成した右目用の合成画像（現実空間の画像と仮想空間の画像とが合成された画像）、左目用の合成画像は夫々ビデオカード３３０、３３１を介して右目用ＬＣＤ１３０、左目用ＬＣＤ１３１に出力される。
【００３１】
ＰＣＩブリッジ３０３は、同図に示すようにＰＣＩに接続されている各部とメモリ３０２、ＣＰＵ３０１、外部記憶装置３０４とのデータ通信を可能にするためのものであり、このＰＣＩブリッジ３０３を介して互いにデータ通信が可能となる。
【００３２】
ＣＰＵ３０１は、外部記憶装置３０４からメモリ３０２に読み出されたプログラムやデータを用いて計算機３００全体の制御を行うと共に、後述する各処理を実行する。
【００３３】
メモリ３０２は外部記憶装置３０４からロードされたプログラムやデータを一時的に記憶するためのエリアや、ビデオキャプチャカード３２０、３２１を介して入力される現実空間の画像のデータ、シリアルＩ／Ｏ３１０を介して入力される３次元センサ移動局１２０のセンサ座標系における位置姿勢を示すデータ等を一時的に格納する為のエリア、ＣＰＵ３０１が各種の処理を行うために用いるワークエリアを備える。
【００３４】
３０４はハードディスクドライブ装置に代表される大容量情報記憶装置として機能する外部記憶装置であって、ここにＯＳ（オペレーティングシステム）や、仮想空間における各オブジェクト（仮想物体）を描画するために必要なデータ、３次元センサ固定局２１０の世界座標系（現実空間中の１点を原点とし、この原点から互いに直交する３軸をｘ、ｙ、ｚ軸とする空間）における位置を示すデータ、ＣＰＵ３０１に後述する各処理を実行させるためのプログラムやデータ等を保存しており、これらは必要に応じてＣＰＵ３０１による制御により、メモリ３０２に読み出される。
【００３５】
図２は、以上のシステムの外観例を示す図である。同図において図１と同じ部分については同じ番号を付けており、その説明は省略する。
【００３６】
観察者２８０は頭部にＨＭＤ１００を装着しており、このＨＭＤ１００の左目用ＬＣＤ１３１、右目用ＬＣＤ１３０には夫々、計算機３００が生成した左目用、右目用の合成画像が表示されている。従って、この観察者２８０は、自身の頭部の位置姿勢に応じた現実空間と共に、自身の頭部の位置姿勢に応じた仮想物体２９０，２９１の画像を見ることができる。
【００３７】
また、プロジェクタ４００は、観察者２８０の存在する現実空間において、観察者２８０の上方から下方に向けて計算機３００が生成した画像を投影する。この投影処理に係る詳細な説明は後述する。
【００３８】
なお、同図において仮想物体２９０，２９１はＨＭＤ１００を頭部に装着した観察者２８０のみしか見えないのであるが、同図では説明上、明示的に示している。
【００３９】
先ず、現実空間の画像に仮想物体としての魚や亀などの画像を合成した合成画像を観察者に提示することで、観察者にあたかも水族館にいるような感覚を与える処理について説明する。すなわち、図５に示すように、ＨＭＤ１００に備わっているカメラ（右目用カメラ１１０、左目用カメラ１１１）が撮像した現実空間の画像５０１上に、計算機３００が生成した仮想空間の画像としての魚の画像５０２を重畳させて、現実空間中にあたかも仮想の魚が存在するかのような画像である合成画像５０３をＨＭＤ１００のＬＣＤ（右目用ＬＣＤ１３０、左目用ＬＣＤ１３１）に表示する。これにより、観察者にあたかも水族館にいるような感覚を与えることができる。
【００４０】
ＨＭＤ１００を頭部に装着した観察者は現実空間中において所望の位置姿勢をとることができる。当然、この観察者の頭部の位置姿勢も所望の位置姿勢をとることができる。ＨＭＤ１００に備わっている右目用カメラ１１０、左目用カメラ１１１は夫々、観察者の右目、左目に対応した現実空間の画像（当然、観察者の頭部の向いている方向、頭部の位置から見える現実空間の画像）を撮像しており、撮像された夫々の画像はビデオキャプチャカード３２０、３２１を介してメモリ３０２中の所定のエリアに入力される。
【００４１】
一方、ＨＭＤ１００のセンサ座標系における位置姿勢（厳密には３次元センサ移動局１２０の位置姿勢）は逐次計測されている。この計測は上述の通り、３次元センサ固定局２１０が発生する磁界を３次元センサ移動局１２０が検知し、この検知した信号に基づいて３次元センサ本体２００が求める事により成される。３次元センサ本体２００が求めた３次元センサ移動局１２０のセンサ座標系における位置姿勢を示すデータはシリアルＩ／Ｏ３１０を介してメモリ３０２中の所定のエリアに入力される。
【００４２】
ＣＰＵ３０１はメモリ３０２に入力されたこのデータ、及び外部記憶装置３０４からメモリ３０２に読み出した「３次元センサ固定局２１０の世界座標系における位置を示すデータ」を参照し、３次元センサ固定局２１０と、３次元センサ移動局１２０との相対的な位置姿勢関係を求める。これにより、３次元センサ移動局１２０の世界座標系における位置姿勢を求めることができる。
【００４３】
このように、所定の座標系における原点の世界座標系における位置が既知である場合に、所定の座標系における位置姿勢から世界座標系における位置姿勢を求める処理については周知の技術であるので、これ以上の説明は省略する。
【００４４】
また、予め観察者の右目、左目と３次元センサ移動局１２０との位置姿勢関係（バイアス）を求めておき、それをメモリ３０２に保持させておけば、求めた３次元センサ移動局１２０の世界座標系における位置姿勢に夫々のバイアスを加算することにより、世界座標系における観察者の右目、左目の位置姿勢を求めることができる。
【００４５】
これにより観察者の右目、左目の世界座標系における位置姿勢が得られるので、ＣＰＵ３０１は、外部記憶装置３０４からメモリ３０２に読み出された「仮想空間における各仮想物体を描画するために必要なデータ」と、仮想空間の画像を生成するためのプログラムを用いて、仮想空間中に仮想物体を配置した場合に、右目、左目によって見える仮想物体の画像を生成することができる。このように、世界座標系における視点の位置姿勢が得られた場合に、この視点から見える仮想物体の画像を生成する処理については周知の技術であるので、ここでの説明は省略する。
【００４６】
以上の処理によって、観察者の右目、左目から見える仮想空間の画像（仮想空間中に配置した仮想物体の画像）が生成される。なお、生成した右目用の仮想空間の画像、左目用の仮想空間の画像は夫々、先にメモリ３０２に入力された右目用の現実空間の画像、左目用の仮想空間の画像上に重畳されるので、結果として、右目用の合成画像、左目用の合成画像をメモリ３０２上に生成することができる。
【００４７】
そして右目用の合成画像はビデオカード３３０を介して右目用ＬＣＤ１３０に出力し、左目用の合成画像はビデオカード３３１を介して右目用ＬＣＤ１３１に出力する。
【００４８】
従って、ＨＭＤ１００を頭部に装着した観察者の右目には右目用ＬＣＤ１３０に表示された合成画像が見え、左目には左目用ＬＣＤ１３１に表示された合成画像が見えるので、この観察者に仮想空間中に仮想物体が存在するかのような画像を提供することができる。
【００４９】
一方、外部記憶装置３０４には、「仮想空間における各オブジェクト（仮想物体）を描画するために必要なデータ」に含まれる、「仮想物体の周囲環境の画像に係るデータ」が保存されている。
【００５０】
ここで「仮想物体の周囲環境」とは、例えば本実施形態の場合は、仮想物体が魚や亀などの水生生物であるので、波紋や水生生物の影などがこれに相当する。すなわち、仮想空間において、照明に係るものである。
【００５１】
このような仮想物体の周囲環境を観察者に提示しないと上述の通り、図１に示す如く、現実空間の画像中には波紋は描画されない。すなわち、一方の空間では物体に波紋が表示されているのに、一方の空間には波紋は表示されていないので、このような照明条件の違いにより、夫々の空間の画像を合成して観察者に提示しても、観察者は不自然さを感じることになる。
【００５２】
従って本実施形態では右目用カメラ１１０、左目用カメラ１１１により撮像される現実空間に、プロジェクタ４００を用いて仮想物体の周囲環境の画像を投影する。より詳しくは、プロジェクタ４００を用いて、観察者の移動しうる範囲内の床に仮想物体の周囲環境の画像を投影し、現実空間に仮想空間における周囲環境を反映させる。
【００５３】
図６は、プロジェクタ４００による仮想物体の周囲環境の画像の投影を示す模式図である。同図において図２，４と同じ部分については同じ番号を付けており、その説明を省略する。
【００５４】
図６において６００は観察者２８０が移動しうる領域内の床を示しており、この床６００に対して、観察者２８０が存在する空間内の上部（例えば天井）に取り付けられたプロジェクタ４００から、仮想物体の周囲環境の画像を投影する。投影する画像の例を図７に示す。
【００５５】
同図において７００は、仮想物体２９０，２９１が存在する水領域（仮想空間）の水面上に仮想空間内の光が当たり、それが水領域内の底部に投影されるであろう波紋の画像を示す。７０１，７０２は夫々、仮想物体２９０、２９１の影の画像を示している。
【００５６】
画像７００は、上記「仮想物体の周囲環境の画像に係るデータ」に含まれているものであり、仮想空間を観察者に提示する際には、メモリ３０２に読み出される。なお、画像７００は所定のフレーム内で変化する動画像としても良い。
【００５７】
画像７０１，７０２については、世界座標系におけるプロジェクタ４００の位置姿勢が既知であり、世界座標系における仮想物体の位置姿勢が既知であり、世界座標系における床６００を示す平面の式が既知である場合に、プロジェクタ４００の位置から仮想物体の輪郭部に延長した直線が床６００と交差する点の集合が形成する領域を求め、この領域内を黒で描画することで生成されるものである。
【００５８】
このように影の画像を生成する場合には、これら既知とされるものに係るデータについては予め外部記憶装置３０４に保存されており、必要に応じてメモリ３０２にロードされるものであるとする。
【００５９】
図１２は、このような仮想物体の影の画像を生成する処理を説明する図で、上述の通り、プロジェクタ４００の位置から仮想物体２９０の輪郭部に延長した直線が床６００と交差する点の集合が形成する領域は、同図において７０１で示す部分の領域であり、この領域内を黒で描画することで生成される画像が７０１で示す画像である。
【００６０】
なお、世界座標系における光源の位置姿勢、世界座標系における仮想物体の位置姿勢、投影する平面（図１２では床６００を表す平面）の式（より詳しくは、投影する先の形状を示す式）が既知である場合に、仮想物体の影の画像を生成する処理、また一般に仮想物体の任意の投影面（平面以外を含む）上に生成される影の画像の生成処理については以上の処理に限定されるものではないが、このような処理は周知の技術であるので、ここでの説明は省略する。
【００６１】
従って、ＣＰＵ３０１は、メモリ３０２上に波紋の画像７００、及び仮想物体２９０、２９１の影の画像７０１，７０２を合成して描画する。この合成画像の一例が図７に示した画像である。そして合成後の画像をビデオカード３３２のメモリ上に描画する。プロジェクタ４００はこのメモリ上に描画された画像を床６００に投影する。
【００６２】
以上の処理により、現実空間に仮想空間における周囲環境を反映させることができるので、この現実空間を右目用カメラ１１０で撮像した画像と右目用の仮想物体の画像との合成画像、左目用カメラ１１１で撮像した画像と左目用の仮想物体の画像との合成画像を夫々右目用ＬＣＤ１３０、左目用ＬＣＤ１３１に出力することにより、例えば観察者２８０の手に波紋や仮想物体の影などが映り込むような現実空間が観察者２８０には見え、仮想空間における照明環境が現実空間に関わることになる。これにより、より仮想空間と現実空間との融合の度合いを高めることができ、より観察者２８０をＭＲ空間に没入させることができる。
【００６３】
図９は、プロジェクタ４００に出力する画像の一例を示す図である。図１０は、図９に示した画像をプロジェクタ４００で投影せずに、ＨＭＤ１００の位置姿勢に応じて見える仮想物体と現実空間とを合成した画像の一例を示す図であり、観察者２８０の右目、もしくは左目でもって見える合成画像の一例を示す図である。図１１は、プロジェクタ４００による仮想物体の周囲環境の画像の投影を行った現実空間でもって、ＨＭＤ１００の位置姿勢に応じて見える仮想物体と現実空間とを合成した画像の一例を示す図であり、観察者２８０の右目、もしくは左目でもって見える合成画像の一例を示す図である。
【００６４】
図１１に示すように、現実空間に仮想物体（同図では魚）の周囲環境の画像を現実空間に投影することにより、このような現実空間と仮想空間との合成画像を見ている観察者に、あたかも自身が水中にいるかのような感覚を与えることができる。
【００６５】
なお、本実施形態では仮想物体の周囲環境として波紋、影を例に取り説明したが、「周囲環境」としてはこれ以外の要素を含みうるものであり、そのような要素の画像をプロジェクタ４００でもって現実空間に投影することにより、現実空間と仮想空間との境界をより観察者２８０に意識させることなく、観察者２８０をＭＲ空間に没入させることができる。
【００６６】
また、「周囲環境」に含まれる要素には、
１  時間の経過と共に変化しないもの
２  仮想物体の存在に起因して、時間の経過と共に変化するもの
３  仮想物体の存在とは無関係に、時間の経過と共に変化するもの
の３つが考え得る。「１」については、予め「時間の経過と共に変化しないもの」を示す静止画を外部記憶装置３０４からメモリ３０２にロードすれば良い。
【００６７】
「２」については、仮想物体の位置姿勢、移動速度など、必要な項目を用いて「仮想物体の存在に起因して、時間の経過と共に変化するもの」の画像を生成する。例えば仮想物体の影については、上述の通り、プロジェクタ４００の世界座標系における位置姿勢、床６００を表す式、仮想物体の世界座標系における位置姿勢を用いて影の形状、位置を求める事で、影の画像をメモリ３０２上に描画する。
【００６８】
「３」については、予め「仮想物体の存在とは無関係に、時間の経過と共に変化するもの」を動画像として外部記憶装置３０４からメモリ３０２にロードされるものを、各フレームを順次メモリ３０２上に描画する。
【００６９】
このようにして「１」〜「３」の何れもメモリ３０２上の同じ領域に描画する。その結果、この領域に描画された画像はすなわち、現在プロジェクタ４００でもって現実空間に投影すべき周囲環境の画像であるので、これをビデオカード３３２のメモリ上に描画し、プロジェクタ４００でもって現実空間に投影する。
【００７０】
以上の処理により、周囲環境に含まれる何れの要素であっても、プロジェクタ４００でもって現実空間に投影すべき画像を生成することができる。
【００７１】
図８は、以上説明した、観察者へのＭＲ空間の提示処理のフローチャートである。なお、同図に示したフローチャートに従ったプログラムは外部記憶装置３０４からメモリ３０２にロードされ、ＣＰＵ３０１がこれを実行することにより、計算機３００は以上説明した各処理を行うことになる。
【００７２】
先ず、上記「仮想物体の周囲環境の画像に係るデータ」を用いて、以上説明したような、仮想物体の周囲環境の画像をメモリ３０２上に生成する（ステップＳ８０１）。そして生成した画像のデータをビデオカード３３２のメモリ上に描画する（ステップＳ８０２）。プロジェクタ４００は常にビデオカード３３２のメモリ上に描画されている画像を現実空間に投影する処理を行っているので、ステップＳ８０２の処理によって、プロジェクタ４００は現実空間に仮想物体の周囲環境の画像を投影することになる。
【００７３】
次に、このようにプロジェクタ４００によって仮想物体の周囲環境の画像が投影された現実空間の画像を右目用カメラ１１０、左目用カメラ１１１によって撮像し、撮像した右目用の画像、左目用の画像をビデオキャプチャカード３２０、３２１を介してメモリ３０２に取り込む（ステップＳ８０３）。
【００７４】
次に、センサ本体２００から得られる「センサ座標系におけるＨＭＤ１００の位置姿勢を示すデータ」と、外部記憶装置３０４からメモリ３０２にロードされた「センサ本体２００の世界座標系における位置姿勢を示すデータ」、及び上記バイアスを用いて、観察者の右目、左目の世界座標系における位置姿勢を求め、この位置姿勢から見える仮想物体の画像を生成する（ステップＳ８０４）。すなわち、観察者の右目用の画像、左目用の仮想空間の画像を生成する。
【００７５】
なお、仮想物体の位置姿勢が時間経過と共に変化する場合、この位置姿勢を制御するプログラムは別のスレッドとしてＣＰＵ３０１により実行されており、ステップＳ８０４では、この別スレッドでもって制御された位置姿勢の仮想物体の画像を生成する。
【００７６】
また、水面からの光の波紋を伴った魚の画像の描画に関しては、Microsoft（Ｒ）社のDirectX（Ｒ）のサンプルプログラムなどでよく知られているのでここでは説明を省略する。
【００７７】
そしてステップＳ８０４で生成した画像を先にメモリ３０２に取り込んだ画像上に重畳する（ステップＳ８０５）。すなわち、先にメモリ３０２に取り込んだ右目用の現実空間の画像にステップＳ８０４で生成した右目用の仮想物体の画像を重畳し、先にメモリ３０２に取り込んだ左目用の現実空間の画像にステップＳ８０４で生成した左目用の仮想物体の画像を重畳する。これにより、右目用の合成画像、左目用の合成画像を生成することができる。
【００７８】
そしてステップＳ８０４で生成した右目用の合成画像をビデオカード３３０を介して右目用ＬＣＤ１３０に出力し、左目用の合成画像をビデオカード３３１を介して左目用ＬＣＤ１３１に出力する（ステップＳ８０６）。
【００７９】
以上の説明により、本実施形態によって、仮想空間の周囲環境が現実空間における物体と関わるような現象を再現することができる。
【００８０】
尚、本実施形態では現実空間を撮像するカメラは右目用と左目用とを設けたが、これに限定されるものではなく１つであっても良い。この場合、この１つのカメラにより撮像した現実空間の画像は仮想空間の画像を重畳させて右目、左目の両方に提示されることになる。また重畳させる仮想空間の画像は、この１つのカメラの視点位置から見えるものである。
【００８１】
また本実施形態ではＨＭＤ１００はビデオシースルー型のものであったが、これに限定されるものではなく、光学シースルー型のものであっても良い。
【００８２】
［第２の実施形態］
第１の実施形態では仮想空間のシーンとして水領域を設定したが、シーンとして他にも空中や、ゲームを行うための特殊な空間など、いくつかのシーンからこれから観察者に体感させるシーンを選択させるようにしても良い。
【００８３】
その場合には、仮想物体を描画するためのデータをシーン毎に外部記憶装置３０４に保存させておく必要がある。そして計算機３００に例えばキーボードやマウスを接続し、これを用いて１つシーンを選択することにより、ＣＰＵ３０１は選択されたシーンにおける各オブジェクト（仮想物体）を描画するために必要なデータをメモリ３０２に読み出し、これを用いて選択されたシーンにおける各仮想物体の画像を生成すると共に、プロジェクタ４００が現実空間に投影すべき画像を生成する。
【００８４】
これにより、水領域内だけでなく、任意の空間の周囲環境が現実空間における物体と関わるような現象を再現することができる。
【００８５】
［その他の実施形態］
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８７】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８８】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００８９】
【図１】ＭＲ技術、ＡＲ技術を用いた例として、ＭＲ技術を用い、現実空間である部屋の画像に、ＣＧ物体である魚を合成した画像の例を示す図である。
【図２】本発明の第１の実施形態に係るシステムの外観例を示す図である。
【図３】本発明の第１の実施形態に係る画像処理システムの基本構成を示す図である。
【図４】ＨＭＤ１００の外観例を示す図である。
【図５】現実空間の画像、仮想空間の画像、合成画像を示す図である。
【図６】プロジェクタ４００による仮想物体の周囲環境の画像の投影を示す模式図である。
【図７】プロジェクタ４００により投影する画像の例を示す図である。
【図８】観察者へのＭＲ空間の提示処理のフローチャートである。
【図９】プロジェクタ４００に出力する画像の一例を示す図である。
【図１０】図９に示した画像をプロジェクタ４００で投影せずに、ＨＭＤ１００の位置姿勢に応じて見える仮想物体と現実空間とを合成した画像の一例を示す図である。
【図１１】プロジェクタ４００による仮想物体の周囲環境の画像の投影を行った現実空間でもって、ＨＭＤ１００の位置姿勢に応じて見える仮想物体と現実空間とを合成した画像の一例を示す図であり、観察者２８０の右目、もしくは左目でもって見える合成画像の一例を示す図である。
【図１２】仮想物体の影の画像を生成する処理を説明する図である。
【図１】
2005165973.tif 000003
【図２】
2005165973.tif 000004
【図３】
2005165973.tif 000005
【図４】
2005165973.tif 000006
【図５】
2005165973.tif 000007
【図６】
2005165973.tif 000008
【図７】
2005165973.tif 000009
【図８】
2005165973.tif 000010
【図９】
2005165973.tif 000011
【図１０】
2005165973.tif 000012
【図１１】
2005165973.tif 000013
【図１２】
2005165973.tif 000014