複合現実感提示装置及びその制御方法、コンピュータプログラム
【課題】 より観察者に違和感を感じさせない複合現実感画像を提示することができる複合現実感提示装置及びその制御方法、コンピュータプログラムを提供する。
【解決手段】 観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する。取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する。現実空間物体の現実空間画像を取得する。取得した現実空間画像を、仮想空間画像が描画されているメモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する。得られる合成画像を出力する。
【解決手段】 観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する。取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する。現実空間物体の現実空間画像を取得する。取得した現実空間画像を、仮想空間画像が描画されているメモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する。得られる合成画像を出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置及びその制御方法、コンピュータプログラムに関するものである。
【背景技術】
【0002】
複合現実感システムでは、操作者の視点位置と視線方向及び空間中にある物体の位置を計測する必要がある。
【0003】
位置姿勢の計測システムとしては、米国Polhemus社製のFASTRAK(商品名)に代表されるような位置姿勢計測装置を使うのが一般的な手法の一つである。また、ジャイロ等の計測機器で姿勢のみを計測し、位置情報及び姿勢のドリフト誤差を画像から計測する方法も取られている。
【0004】
ここで、例えば、特許文献1に示されるような、一般的な複合現実感提示装置のハードウェアの構成、及び一般的な複合現実感提示装置の処理のフローについて、図1及び図2を用いて説明する。
【0005】
本例では、現実空間物体111の現実空間画像に仮想空間画像110(仮想空間物体の画像)を重畳表示することにより、現実空間物体111に仮想空間画像110で示される仮想物体があたかもそこに存在するかのように表示することができる。このような機能は、デザインの検証やエンターテイメントに応用することが可能である。
【0006】
ステップS201で、HMD(ヘッドマウントディスプレイ)101に内蔵された撮像部102から、PC(パーソナルコンピュータ)103が現実空間画像を取得する。
【0007】
次に、ステップS202で、HMD101に固定されたHMD計測センサ105の位置姿勢の計測値、及び現実空間物体111に固定された現実空間物体計測センサ106の位置姿勢を計測する。これらの計測した計測値は、位置姿勢計測部104で収集され、位置姿勢情報として、シリアル通信等の通信部でPC103が取り込む。
【0008】
ステップS203で、現実空間物体111の現実空間画像を、PC103は、PC103内のメモリ上に描画する。
【0009】
ステップS204で、ステップS202で取得した撮像部102の位置姿勢の計測値及び現実空間物体111の位置姿勢の計測値に応じた仮想空間画像を、現実空間画像に重畳するように、PC103のメモリ上に描画する。これにより、メモリ上には、現実空間画像と仮想空間画像の合成画像である複合現実感画像が生成される。
【0010】
ステップS205で、PC103のメモリ上に描画された合成画像(複合現実感画像)を、PC103がHMD101に送信することで、合成画像(複合現実感画像)をHMD101上で表示する。
【0011】
以上、ステップS201からステップS205が1フレーム分の処理である。そして、ステップS206で、PC103はから観察者の操作に基づく処理の終了通知があるか否かを判定する。終了通知がない場合(ステップS206でNO)、ステップS201に戻る。一方、終了通知がある場合(ステップS206でYES)、処理を終了する。
【0012】
次に、上記の処理によって得られる合成画像の一例について、図3を用いて説明する。
【0013】
図3において、画像501から画像505は、撮像部102から得られる現実空間画像を時系列に並べたものである。画像511〜画像514は、現実空間画像と仮想空間画像の合成処理の様子を時系列に並べたものである。
【0014】
この例では、ステップS201で取得した現実空間画像は、画像501であるとする。その後、ステップS202及びステップS203の処理を行う間にも、時間は経過し、現実空間画像は、画像501から画像502の状態になっている。
【0015】
ステップS204で現実空間画像に2つの仮想空間画像を順次重畳して描画した例が、画像513及び画像514となる。
【0016】
最終的に得られる画像(合成画像)514は、ステップS205で出力されるが、この時には、既に現実空間画像の状態は、画像504もしくは、画像505の状態となっている。
【特許文献1】特開2005−107968号公報
【発明の開示】
【発明が解決しようとする課題】
【0017】
上述のような一般的な複合現実感提示装置の構成では、ステップ201で取得した現実空間画像が、HMD101で表示されるまでには多くのステップが存在する。特に、ステップS204の仮想空間画像の重畳描画では、高画質なCG画像によってその描画を実現するために、時間がかかる場合が多い。
【0018】
そのため、HMD101で表示されるときには、図3で示したように、実際に観察者に提示される合成画像中の現実空間画像が、その時点の現実空間画像に対して時間的に遅れたものになっており、観察者に違和感を生じさせる原因となっていた。
【0019】
本発明は上記の課題を解決するためになされたものであり、より観察者に違和感を感じさせない複合現実感画像を提示することができる複合現実感提示装置及びその制御方法、コンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【0020】
上記の目的を達成するための本発明による複合現実感提示装置は以下の構成を備える。即ち、
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得手段と
前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画手段と、
前記現実空間物体の現実空間画像を取得する取得手段と、
前記取得手段で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成手段と、
前記合成手段によって得られる合成画像を出力する出力手段と
を備える。
【0021】
また、好ましくは、前記仮想空間画像の奥行き情報を記憶する奥行きバッファを更に備え、
前記合成手段は、前記奥行きバッファに記憶されている奥行き情報を利用して、前記メモリ上の前記仮想空間画像が描画されていない部分に前記現実空間画像を描画することで、該現実空間画像と該仮想空間画像とを合成する。
【0022】
また、好ましくは、前記仮想空間画像への画像の上書きの可否を制御するための制御情報を記憶するステンシルバッファを更に備え、
前記合成手段は、前記ステンシルバッファに記憶されている制御情報を利用して、前記メモリ上の前記仮想空間画像が前記現実空間画像で上書きされないように該メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する。
【0023】
また、好ましくは、前記合成手段は、前記現実空間画像と前記仮想空間画像とをアルファブレンド合成する。
【0024】
また、好ましくは、前記描画手段による前記仮想空間画像の描画に利用する位置姿勢情報を、前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて予測する予測手段を更に備える。
【0025】
上記の目的を達成するための本発明による複合現実感提示装置の制御方法は以下の構成を備える。即ち、
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御方法であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
を備える。
【0026】
上記の目的を達成するための本発明によるコンピュータプログラムは以下の構成を備える。即ち、
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御をコンピュータに実行させるためのコンピュータプログラムであって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
をコンピュータに実行させる。
【発明の効果】
【0027】
本発明によれば、より観察者に違和感を感じさせない複合現実感画像を提示することができる複合現実感提示装置及びその制御方法、コンピュータプログラムを提供できる。
【発明を実施するための最良の形態】
【0028】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【0029】
<実施形態1>
実施形態1においては、予め前処理として、現実空間画像を取得した撮像部(カメラ)の内部パラメータを取得しておき、画像調整処理を一切を行わない場合に現実空間画像と仮想空間画像の幾何学的整合がとれていることを前提として説明する。
【0030】
正確な現実空間画像と仮想空間画像の幾何学的整合のためには、アスペクト比や歪みパラメータも算出して、現実空間画像の調整の処理中で同時に処理する必要がある。しかしながら、本願発明には、この点については、本質的のものではないので、歪みやアスペクト比の誤差に関しては説明を省略する。
【0031】
以下は、撮像部(カメラ)の内部パラメータの校正や、位置姿勢計測部の校正が完了していることを前提として、本発明に特徴的な画像合成部分に関して説明する。
【0032】
本発明を実現するための複合現実感提示装置の基本的な構成は、図1に示す構成と同様であるが、その内部処理が異なるものである。
【0033】
実施形態1の位置姿勢計測システムとしては、米国Polhemus社製のFASTRAK(商品名)に代表されるような位置姿勢計測装置を使用することが可能である。但し、ジャイロ等の計測機器で、姿勢のみを計測し、位置情報及び、姿勢のドリフト誤差を撮影画像から計測する方法でも実施可能である。
【0034】
次に、実施形態1の複合現実感提示装置による画像合成に関して、図1、図4及び図5を用いて説明する。ここで、図4は本発明の実施形態1の複合現実感提示装置として機能するPCのハードウェア構成を示す図である。また、図5は本発明の実施形態1の複合現実感提示装置が実行する処理を示すフローチャートである。
【0035】
尚、図5に示すフローチャートは、例えば、図4の複合現実感提示装置のCPU301が、メインメモリに記憶されている制御プログラムを実行することで実現される。
【0036】
まず、ステップS401で、CPU301は、HMD101に固定されたHMD計測センサ105の位置姿勢の計測値、及び現実空間物体111に固定された現実空間物体計測センサ106の位置姿勢の計測値から位置姿勢情報を取得する。即ち、各センサで計測された計測値(位置姿勢情報)は、位置姿勢計測部104で収集され、得られる2種類の位置姿勢情報から、観察者の視点と、現実空間中に配した現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を算出する。そして、位置姿勢計測部104は、シリアル通信等の通信部でPC103に算出した結果を送信する。
【0037】
これにより、PC103内部では、通信デバイス307を通じて、メインメモリ302に計測データが送られ、蓄積される。このように、PC103は、位置姿勢計測部104から、観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得部として機能する。
【0038】
次に、ステップS402で、CPU301は、既に取得している位置姿勢情報に基づいて、所定座標系に従う仮想空間画像をメインメモリ302に描画する。通常は、背景となる現実空間画像の上に、仮想空間画像を重畳することで画像合成を行うが、本発明では、仮想空間画像の描画を先に行う。
【0039】
尚、アプリケーションの形態によっては、高精細で高画質な仮想空間画像を描画する必要がある。そして、その場合には、描画においては、ビデオレートにして数フレーム以上の時間を要する場合がある。また、所定座標系とは、現実空間画像と仮想空間画像とを共通の座標系で表示するための3次元座標系であり、その座標系を規定するための起点となる原点は適宜設定することが可能である。
【0040】
本発明では、仮想空間画像を先に描画することにより、合成に利用する現実空間画像に関して、仮想空間画像を描画している間に、合成対象として意図する時点の現実空間画像が、その時点よりも後の現実空間画像に変わってしまうことを防ぐことができる。
【0041】
この時、PC103内では、CPU301がメインメモリ302に蓄積されている仮想空間画像を利用して、グラフィックスアクセラレータ303は、その仮想空間画像をフレームメモリ304に描画する。その際、グラフィックスアクセラレータ303は、奥行きバッファ308の仮想空間画像の奥行き情報も同時に更新する。
【0042】
ここで、ステップS402の描画に2フレーム程度時間がかかる場合、図6の仮想空間画像613、614では、現実空間画像の状態が、画像601から画像604のような状態まで進んでしまっていることを示している。ここで、合成対象となる仮想空間画像の状態は、画像611〜614となっている。
【0043】
ステップS403で、HMD101に内蔵された撮像部102からPC103に現実空間画像を取得する。このとき、PC103内部では、HMD101から受信する現実空間画像が、画像入力デバイス306によって所定の形式に変換され、メインメモリ302に蓄積される。図6の場合では、画像605を取得することになる。
【0044】
ステップS404で、CPU301は、取得した現実空間画像をメインメモリ302に描画する。PC103内部では、メインメモリ302上の現実空間画像は、CPU301によって、フレームメモリ304に描画する。この時、CPU301は、グラフィックスアクセラレータ303を制御することで、奥行きバッファ308の奥行き情報を利用し、フレームメモリ304上で仮想空間画像が描画されていない部分のみに現実空間画像を重畳描画する。この場合、図6の画像615を得ることが可能である。これにより、仮想空間画像に現実空間画像が上書きされないようにすることができる。
【0045】
尚、仮想空間画像に現実空間画像が上書きされないようにする方法としては、仮想空間画像への画像の上書きの可否を制御するための制御情報を記憶するステンシルバッファ309を利用して、上書き可能、禁止を制御することも可能である。
【0046】
ステップS405で、CPU301は、ステップS404で生成した合成画像を、画像出力デバイス305によってHMD101に出力する。
【0047】
以上の処理によって、観察者は、HMD101に表示される画像を見て、あたかも現実空間に仮想物体が存在しているかのような画像を観察することができる。また、本処理によって、観察者が意図する時点の現実空間画像と、表示される現実空間画像との時間的な遅れ(差)は非常に少ないものとなる。
【0048】
以上、ステップS401からステップS405が1フレーム分の処理である。そして、ステップS406で、CPU301は観察者の指示に基づく処理の終了通知があるか否かを判定する。終了通知がない場合(ステップS406でNO)、ステップS401に戻る。一方、終了通知がある場合(ステップS406でYES)、処理を終了する。
【0049】
以上説明したように、実施形態1によれば、仮想空間画像を描画した後に、ユーザが意図する合成対象の現実空間画像を取得して、それを仮想空間画像に重畳描画して合成画像を生成する。これにより、画像処理に伴う画像出力時間の遅延に起因する、現実空間画像の内容の違いを極力軽減して、よりユーザが意図する時点の現実空間画像の内容を有する合成画像を提示することができる。
【0050】
<実施形態2>
実施形態2は、実施形態1の応用例を説明する。複合現実感提示装置においては、出力画像を半透明表示にすることが、観察者の視認性を向上させるために有効である場合が多い。そこで、実施形態2では、この半透明表示を実現する場合の構成について説明する。
【0051】
尚、実施形態2の複合現実感提示装置の構成は、実施形態1の複合現実感提示装置で実現可能なため、その詳細については省略する。
【0052】
次に、実施形態2の複合現実感提示装置による画像合成に関して、図7を用いて説明する。
【0053】
図7は本発明の実施形態2の複合現実感提示装置が実行する処理を示すフローチャートである。
【0054】
尚、図7において、実施形態1の図5と同一の処理については、同一のステップ番号を付加し、その詳細については省略する。
【0055】
図7では、ステップS403の処理後、ステップS704で、CPU301は、グラフィックスアクセラレータ303を制御することで、現実空間画像をアルファブレンド合成する。
【0056】
ここで、具体的な処理例を図8に示す。
【0057】
図8は本発明の実施形態2の画像合成の具体例を説明するための図である。
【0058】
尚、図8において、実施形態1の図6と共通の画像については、同一の参照番号を付加している。
【0059】
図8では、仮想空間画像813及び仮想空間画像814は、黒を背景の描画を行っている。そして、仮想空間画像814に対して、現実空間画像である画像605を、加算等のアルファブレンディング処理を用いて合成することにより、半透明効果を出すことが可能になる。その結果、半透明処理された合成画像815を得ることができる。
【0060】
尚、合成画像815は、模式的に白黒で表現しているが、実際には半透明の合成を行うことが可能になる。
【0061】
以上説明したように、実施形態2によれば、実施形態1で説明した効果に加えて、用途に応じて、出力画像を半透明表示することが可能となる。
【0062】
<実施形態3>
実施形態3は、実施形態1の応用例である。実施形態1や2では、観察者が観察している現時点の現実空間画像の状態と、最終的にHMD101に出力される現実空間画像の状態の時間的な遅れを軽減する構成について説明した。ここで、この構成では、仮想空間画像を生成するためのステップS401で取得する位置姿勢情報は、現実空間画像の取得時の実際の現実空間物体111の位置姿勢に対して時間的な遅れが発生する可能性がある。そこで、実施形態3では、取得した位置姿勢姿勢情報の時間的な遅れを軽減するための画像合成について説明する。
【0063】
まず、実施形態3の複合現実感提示装置による画像合成に関して、図9を用いて説明する。
【0064】
図9は本発明の実施形態3の複合現実感提示装置が実行する処理を示すフローチャートである。
【0065】
尚、図9において、実施形態1の図5と同一の処理については、同一のステップ番号を付加し、その詳細については省略する。
【0066】
特に、図9では、実施形態1の図5のステップS401の処理の後に、ステップS903で、CPU301は、現実空間画像の位置姿勢予測を実行する。そして、ステップS402aで、CPU301は、ステップS903で得られる予測値(位置姿勢情報)に基づいて、仮想空間画像をメインメモリ302に描画する。
【0067】
この処理の詳細について、図10を用いて説明する。
【0068】
図10は本発明の実施形態3の現実空間画像の位置姿勢予測の詳細を示すフローチャートである。
【0069】
ステップS1001で、CPU301は、位置姿勢情報を取得する。ステップS1002で、CPU301は、位置姿勢情報中の位置姿勢成分をクオータニオンに変換する。ここで、位置姿勢情報の線形予測等の予測計算を行うには、クオータニオンに変換することが有効であることが一般的に知られているが、その予測計算方法は線形予測を用いるものに制限されるものではない。つまり、予測計算ができる方法であれば、どのようなものでも良い。
【0070】
ステップS1003で、CPU301は、位置成分を示す値と、ステップS1002にクオータニオンに変換された位置姿勢成分を示す値をメインメモリ302に蓄積する。このステップS1003では、過去2フレーム分に対応する位置姿勢情報(位置成分及び位置姿勢成分を示す値)を蓄積するものとする。より正確でノイズの少ない予測が必要な場合には、3フレーム分以上のフレーム分に対応する位置姿勢情報(位置及び位置姿勢を示す値)を蓄積することも有効である。このフレーム数は、用途や目的に応じて設定すれば良く、その数が制限されるものではない。
【0071】
ステップS1004で、CPU301は、2フレーム分の位置姿勢情報(位置及び位置姿勢を示す値)から、現実空間物体の速度を計算する。ここでの速度は、例えば、等速度移動、等速度回転を前提とすれば、2フレーム分の位置姿勢情報(位置及び位置姿勢を示す値)から線形予測で簡単に予測値を求めることが可能である。
【0072】
ステップS1005で、CPU301は、計算した速度に基づいて、現実空間物体の位置姿勢の予測値を計算する予測計算を実行する。この予測計算方法は、特定の予測計算モデルに当てはめて予測値の推定を行う方法として、様々な方法が知られており、本発明はどのような予測計算方法を用いても構わない。
【0073】
ステップS1006で、計算した予測値を出力する。ステップS1007で、PC103から処理の終了通知があるか否かを判定する。終了通知がない場合(ステップS1007でNO)、ステップS100101に戻る。一方、終了通知がある場合(ステップS1007でYES)、処理を終了する。
【0074】
以上の処理方式によって得られる予測値を用いて仮想空間画像を描画することで、現実空間画像と後に合成する場合でも、現実空間画像の取得時の状態から時間的に遅延が少ない仮想空間画像による画像合成を実現することができる。
【0075】
以上説明したように、実施形態3によれば、実施形態1や2で説明した効果に加えて、仮想空間画像の描画を、後に取得する現実空間画像の取得時の予測値(位置を示す値及び位置姿勢を示す値)に基づいて行う。これにより、現実空間画像の取得時の状態(位置及び位置姿勢)に近い仮想空間画像と現実空間画像とを合成することが可能となる。
【0076】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0077】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0078】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0079】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0080】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0081】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0082】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0083】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【0084】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【0085】
【図1】一般的な複合現実感提示装置のハードウェアの構成を示す図である。
【図2】一般的な複合現実感提示装置の処理を示すフローチャートである。
【図3】一般的な画像合成処理の具体例を示す図である。
【図4】本発明の実施形態1の複合現実感提示装置として機能するPCのハードウェア構成を示す図である。
【図5】本発明の実施形態1の複合現実感提示装置が実行する処理を示すフローチャートである。
【図6】本発明の実施形態1の画像合成処理の具体例を示す図である。
【図7】本発明の実施形態2の複合現実感提示装置が実行する処理を示すフローチャートである。
【図8】本発明の実施形態2の画像合成の具体例を説明するための図である。
【図9】本発明の実施形態3の複合現実感提示装置が実行する処理を示すフローチャートである。
【図10】本発明の実施形態3の現実空間画像の位置姿勢予測の詳細を示すフローチャートである。
【符号の説明】
【0086】
101 HMD
102 撮像部
103 PC
104 位置姿勢計測部
105 HMD計測センサ
106 現実空間物体計測センサ
110 仮想空間画像
111 現実空間物体
【技術分野】
【0001】
本発明は、現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置及びその制御方法、コンピュータプログラムに関するものである。
【背景技術】
【0002】
複合現実感システムでは、操作者の視点位置と視線方向及び空間中にある物体の位置を計測する必要がある。
【0003】
位置姿勢の計測システムとしては、米国Polhemus社製のFASTRAK(商品名)に代表されるような位置姿勢計測装置を使うのが一般的な手法の一つである。また、ジャイロ等の計測機器で姿勢のみを計測し、位置情報及び姿勢のドリフト誤差を画像から計測する方法も取られている。
【0004】
ここで、例えば、特許文献1に示されるような、一般的な複合現実感提示装置のハードウェアの構成、及び一般的な複合現実感提示装置の処理のフローについて、図1及び図2を用いて説明する。
【0005】
本例では、現実空間物体111の現実空間画像に仮想空間画像110(仮想空間物体の画像)を重畳表示することにより、現実空間物体111に仮想空間画像110で示される仮想物体があたかもそこに存在するかのように表示することができる。このような機能は、デザインの検証やエンターテイメントに応用することが可能である。
【0006】
ステップS201で、HMD(ヘッドマウントディスプレイ)101に内蔵された撮像部102から、PC(パーソナルコンピュータ)103が現実空間画像を取得する。
【0007】
次に、ステップS202で、HMD101に固定されたHMD計測センサ105の位置姿勢の計測値、及び現実空間物体111に固定された現実空間物体計測センサ106の位置姿勢を計測する。これらの計測した計測値は、位置姿勢計測部104で収集され、位置姿勢情報として、シリアル通信等の通信部でPC103が取り込む。
【0008】
ステップS203で、現実空間物体111の現実空間画像を、PC103は、PC103内のメモリ上に描画する。
【0009】
ステップS204で、ステップS202で取得した撮像部102の位置姿勢の計測値及び現実空間物体111の位置姿勢の計測値に応じた仮想空間画像を、現実空間画像に重畳するように、PC103のメモリ上に描画する。これにより、メモリ上には、現実空間画像と仮想空間画像の合成画像である複合現実感画像が生成される。
【0010】
ステップS205で、PC103のメモリ上に描画された合成画像(複合現実感画像)を、PC103がHMD101に送信することで、合成画像(複合現実感画像)をHMD101上で表示する。
【0011】
以上、ステップS201からステップS205が1フレーム分の処理である。そして、ステップS206で、PC103はから観察者の操作に基づく処理の終了通知があるか否かを判定する。終了通知がない場合(ステップS206でNO)、ステップS201に戻る。一方、終了通知がある場合(ステップS206でYES)、処理を終了する。
【0012】
次に、上記の処理によって得られる合成画像の一例について、図3を用いて説明する。
【0013】
図3において、画像501から画像505は、撮像部102から得られる現実空間画像を時系列に並べたものである。画像511〜画像514は、現実空間画像と仮想空間画像の合成処理の様子を時系列に並べたものである。
【0014】
この例では、ステップS201で取得した現実空間画像は、画像501であるとする。その後、ステップS202及びステップS203の処理を行う間にも、時間は経過し、現実空間画像は、画像501から画像502の状態になっている。
【0015】
ステップS204で現実空間画像に2つの仮想空間画像を順次重畳して描画した例が、画像513及び画像514となる。
【0016】
最終的に得られる画像(合成画像)514は、ステップS205で出力されるが、この時には、既に現実空間画像の状態は、画像504もしくは、画像505の状態となっている。
【特許文献1】特開2005−107968号公報
【発明の開示】
【発明が解決しようとする課題】
【0017】
上述のような一般的な複合現実感提示装置の構成では、ステップ201で取得した現実空間画像が、HMD101で表示されるまでには多くのステップが存在する。特に、ステップS204の仮想空間画像の重畳描画では、高画質なCG画像によってその描画を実現するために、時間がかかる場合が多い。
【0018】
そのため、HMD101で表示されるときには、図3で示したように、実際に観察者に提示される合成画像中の現実空間画像が、その時点の現実空間画像に対して時間的に遅れたものになっており、観察者に違和感を生じさせる原因となっていた。
【0019】
本発明は上記の課題を解決するためになされたものであり、より観察者に違和感を感じさせない複合現実感画像を提示することができる複合現実感提示装置及びその制御方法、コンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【0020】
上記の目的を達成するための本発明による複合現実感提示装置は以下の構成を備える。即ち、
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得手段と
前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画手段と、
前記現実空間物体の現実空間画像を取得する取得手段と、
前記取得手段で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成手段と、
前記合成手段によって得られる合成画像を出力する出力手段と
を備える。
【0021】
また、好ましくは、前記仮想空間画像の奥行き情報を記憶する奥行きバッファを更に備え、
前記合成手段は、前記奥行きバッファに記憶されている奥行き情報を利用して、前記メモリ上の前記仮想空間画像が描画されていない部分に前記現実空間画像を描画することで、該現実空間画像と該仮想空間画像とを合成する。
【0022】
また、好ましくは、前記仮想空間画像への画像の上書きの可否を制御するための制御情報を記憶するステンシルバッファを更に備え、
前記合成手段は、前記ステンシルバッファに記憶されている制御情報を利用して、前記メモリ上の前記仮想空間画像が前記現実空間画像で上書きされないように該メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する。
【0023】
また、好ましくは、前記合成手段は、前記現実空間画像と前記仮想空間画像とをアルファブレンド合成する。
【0024】
また、好ましくは、前記描画手段による前記仮想空間画像の描画に利用する位置姿勢情報を、前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて予測する予測手段を更に備える。
【0025】
上記の目的を達成するための本発明による複合現実感提示装置の制御方法は以下の構成を備える。即ち、
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御方法であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
を備える。
【0026】
上記の目的を達成するための本発明によるコンピュータプログラムは以下の構成を備える。即ち、
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御をコンピュータに実行させるためのコンピュータプログラムであって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
をコンピュータに実行させる。
【発明の効果】
【0027】
本発明によれば、より観察者に違和感を感じさせない複合現実感画像を提示することができる複合現実感提示装置及びその制御方法、コンピュータプログラムを提供できる。
【発明を実施するための最良の形態】
【0028】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【0029】
<実施形態1>
実施形態1においては、予め前処理として、現実空間画像を取得した撮像部(カメラ)の内部パラメータを取得しておき、画像調整処理を一切を行わない場合に現実空間画像と仮想空間画像の幾何学的整合がとれていることを前提として説明する。
【0030】
正確な現実空間画像と仮想空間画像の幾何学的整合のためには、アスペクト比や歪みパラメータも算出して、現実空間画像の調整の処理中で同時に処理する必要がある。しかしながら、本願発明には、この点については、本質的のものではないので、歪みやアスペクト比の誤差に関しては説明を省略する。
【0031】
以下は、撮像部(カメラ)の内部パラメータの校正や、位置姿勢計測部の校正が完了していることを前提として、本発明に特徴的な画像合成部分に関して説明する。
【0032】
本発明を実現するための複合現実感提示装置の基本的な構成は、図1に示す構成と同様であるが、その内部処理が異なるものである。
【0033】
実施形態1の位置姿勢計測システムとしては、米国Polhemus社製のFASTRAK(商品名)に代表されるような位置姿勢計測装置を使用することが可能である。但し、ジャイロ等の計測機器で、姿勢のみを計測し、位置情報及び、姿勢のドリフト誤差を撮影画像から計測する方法でも実施可能である。
【0034】
次に、実施形態1の複合現実感提示装置による画像合成に関して、図1、図4及び図5を用いて説明する。ここで、図4は本発明の実施形態1の複合現実感提示装置として機能するPCのハードウェア構成を示す図である。また、図5は本発明の実施形態1の複合現実感提示装置が実行する処理を示すフローチャートである。
【0035】
尚、図5に示すフローチャートは、例えば、図4の複合現実感提示装置のCPU301が、メインメモリに記憶されている制御プログラムを実行することで実現される。
【0036】
まず、ステップS401で、CPU301は、HMD101に固定されたHMD計測センサ105の位置姿勢の計測値、及び現実空間物体111に固定された現実空間物体計測センサ106の位置姿勢の計測値から位置姿勢情報を取得する。即ち、各センサで計測された計測値(位置姿勢情報)は、位置姿勢計測部104で収集され、得られる2種類の位置姿勢情報から、観察者の視点と、現実空間中に配した現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を算出する。そして、位置姿勢計測部104は、シリアル通信等の通信部でPC103に算出した結果を送信する。
【0037】
これにより、PC103内部では、通信デバイス307を通じて、メインメモリ302に計測データが送られ、蓄積される。このように、PC103は、位置姿勢計測部104から、観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得部として機能する。
【0038】
次に、ステップS402で、CPU301は、既に取得している位置姿勢情報に基づいて、所定座標系に従う仮想空間画像をメインメモリ302に描画する。通常は、背景となる現実空間画像の上に、仮想空間画像を重畳することで画像合成を行うが、本発明では、仮想空間画像の描画を先に行う。
【0039】
尚、アプリケーションの形態によっては、高精細で高画質な仮想空間画像を描画する必要がある。そして、その場合には、描画においては、ビデオレートにして数フレーム以上の時間を要する場合がある。また、所定座標系とは、現実空間画像と仮想空間画像とを共通の座標系で表示するための3次元座標系であり、その座標系を規定するための起点となる原点は適宜設定することが可能である。
【0040】
本発明では、仮想空間画像を先に描画することにより、合成に利用する現実空間画像に関して、仮想空間画像を描画している間に、合成対象として意図する時点の現実空間画像が、その時点よりも後の現実空間画像に変わってしまうことを防ぐことができる。
【0041】
この時、PC103内では、CPU301がメインメモリ302に蓄積されている仮想空間画像を利用して、グラフィックスアクセラレータ303は、その仮想空間画像をフレームメモリ304に描画する。その際、グラフィックスアクセラレータ303は、奥行きバッファ308の仮想空間画像の奥行き情報も同時に更新する。
【0042】
ここで、ステップS402の描画に2フレーム程度時間がかかる場合、図6の仮想空間画像613、614では、現実空間画像の状態が、画像601から画像604のような状態まで進んでしまっていることを示している。ここで、合成対象となる仮想空間画像の状態は、画像611〜614となっている。
【0043】
ステップS403で、HMD101に内蔵された撮像部102からPC103に現実空間画像を取得する。このとき、PC103内部では、HMD101から受信する現実空間画像が、画像入力デバイス306によって所定の形式に変換され、メインメモリ302に蓄積される。図6の場合では、画像605を取得することになる。
【0044】
ステップS404で、CPU301は、取得した現実空間画像をメインメモリ302に描画する。PC103内部では、メインメモリ302上の現実空間画像は、CPU301によって、フレームメモリ304に描画する。この時、CPU301は、グラフィックスアクセラレータ303を制御することで、奥行きバッファ308の奥行き情報を利用し、フレームメモリ304上で仮想空間画像が描画されていない部分のみに現実空間画像を重畳描画する。この場合、図6の画像615を得ることが可能である。これにより、仮想空間画像に現実空間画像が上書きされないようにすることができる。
【0045】
尚、仮想空間画像に現実空間画像が上書きされないようにする方法としては、仮想空間画像への画像の上書きの可否を制御するための制御情報を記憶するステンシルバッファ309を利用して、上書き可能、禁止を制御することも可能である。
【0046】
ステップS405で、CPU301は、ステップS404で生成した合成画像を、画像出力デバイス305によってHMD101に出力する。
【0047】
以上の処理によって、観察者は、HMD101に表示される画像を見て、あたかも現実空間に仮想物体が存在しているかのような画像を観察することができる。また、本処理によって、観察者が意図する時点の現実空間画像と、表示される現実空間画像との時間的な遅れ(差)は非常に少ないものとなる。
【0048】
以上、ステップS401からステップS405が1フレーム分の処理である。そして、ステップS406で、CPU301は観察者の指示に基づく処理の終了通知があるか否かを判定する。終了通知がない場合(ステップS406でNO)、ステップS401に戻る。一方、終了通知がある場合(ステップS406でYES)、処理を終了する。
【0049】
以上説明したように、実施形態1によれば、仮想空間画像を描画した後に、ユーザが意図する合成対象の現実空間画像を取得して、それを仮想空間画像に重畳描画して合成画像を生成する。これにより、画像処理に伴う画像出力時間の遅延に起因する、現実空間画像の内容の違いを極力軽減して、よりユーザが意図する時点の現実空間画像の内容を有する合成画像を提示することができる。
【0050】
<実施形態2>
実施形態2は、実施形態1の応用例を説明する。複合現実感提示装置においては、出力画像を半透明表示にすることが、観察者の視認性を向上させるために有効である場合が多い。そこで、実施形態2では、この半透明表示を実現する場合の構成について説明する。
【0051】
尚、実施形態2の複合現実感提示装置の構成は、実施形態1の複合現実感提示装置で実現可能なため、その詳細については省略する。
【0052】
次に、実施形態2の複合現実感提示装置による画像合成に関して、図7を用いて説明する。
【0053】
図7は本発明の実施形態2の複合現実感提示装置が実行する処理を示すフローチャートである。
【0054】
尚、図7において、実施形態1の図5と同一の処理については、同一のステップ番号を付加し、その詳細については省略する。
【0055】
図7では、ステップS403の処理後、ステップS704で、CPU301は、グラフィックスアクセラレータ303を制御することで、現実空間画像をアルファブレンド合成する。
【0056】
ここで、具体的な処理例を図8に示す。
【0057】
図8は本発明の実施形態2の画像合成の具体例を説明するための図である。
【0058】
尚、図8において、実施形態1の図6と共通の画像については、同一の参照番号を付加している。
【0059】
図8では、仮想空間画像813及び仮想空間画像814は、黒を背景の描画を行っている。そして、仮想空間画像814に対して、現実空間画像である画像605を、加算等のアルファブレンディング処理を用いて合成することにより、半透明効果を出すことが可能になる。その結果、半透明処理された合成画像815を得ることができる。
【0060】
尚、合成画像815は、模式的に白黒で表現しているが、実際には半透明の合成を行うことが可能になる。
【0061】
以上説明したように、実施形態2によれば、実施形態1で説明した効果に加えて、用途に応じて、出力画像を半透明表示することが可能となる。
【0062】
<実施形態3>
実施形態3は、実施形態1の応用例である。実施形態1や2では、観察者が観察している現時点の現実空間画像の状態と、最終的にHMD101に出力される現実空間画像の状態の時間的な遅れを軽減する構成について説明した。ここで、この構成では、仮想空間画像を生成するためのステップS401で取得する位置姿勢情報は、現実空間画像の取得時の実際の現実空間物体111の位置姿勢に対して時間的な遅れが発生する可能性がある。そこで、実施形態3では、取得した位置姿勢姿勢情報の時間的な遅れを軽減するための画像合成について説明する。
【0063】
まず、実施形態3の複合現実感提示装置による画像合成に関して、図9を用いて説明する。
【0064】
図9は本発明の実施形態3の複合現実感提示装置が実行する処理を示すフローチャートである。
【0065】
尚、図9において、実施形態1の図5と同一の処理については、同一のステップ番号を付加し、その詳細については省略する。
【0066】
特に、図9では、実施形態1の図5のステップS401の処理の後に、ステップS903で、CPU301は、現実空間画像の位置姿勢予測を実行する。そして、ステップS402aで、CPU301は、ステップS903で得られる予測値(位置姿勢情報)に基づいて、仮想空間画像をメインメモリ302に描画する。
【0067】
この処理の詳細について、図10を用いて説明する。
【0068】
図10は本発明の実施形態3の現実空間画像の位置姿勢予測の詳細を示すフローチャートである。
【0069】
ステップS1001で、CPU301は、位置姿勢情報を取得する。ステップS1002で、CPU301は、位置姿勢情報中の位置姿勢成分をクオータニオンに変換する。ここで、位置姿勢情報の線形予測等の予測計算を行うには、クオータニオンに変換することが有効であることが一般的に知られているが、その予測計算方法は線形予測を用いるものに制限されるものではない。つまり、予測計算ができる方法であれば、どのようなものでも良い。
【0070】
ステップS1003で、CPU301は、位置成分を示す値と、ステップS1002にクオータニオンに変換された位置姿勢成分を示す値をメインメモリ302に蓄積する。このステップS1003では、過去2フレーム分に対応する位置姿勢情報(位置成分及び位置姿勢成分を示す値)を蓄積するものとする。より正確でノイズの少ない予測が必要な場合には、3フレーム分以上のフレーム分に対応する位置姿勢情報(位置及び位置姿勢を示す値)を蓄積することも有効である。このフレーム数は、用途や目的に応じて設定すれば良く、その数が制限されるものではない。
【0071】
ステップS1004で、CPU301は、2フレーム分の位置姿勢情報(位置及び位置姿勢を示す値)から、現実空間物体の速度を計算する。ここでの速度は、例えば、等速度移動、等速度回転を前提とすれば、2フレーム分の位置姿勢情報(位置及び位置姿勢を示す値)から線形予測で簡単に予測値を求めることが可能である。
【0072】
ステップS1005で、CPU301は、計算した速度に基づいて、現実空間物体の位置姿勢の予測値を計算する予測計算を実行する。この予測計算方法は、特定の予測計算モデルに当てはめて予測値の推定を行う方法として、様々な方法が知られており、本発明はどのような予測計算方法を用いても構わない。
【0073】
ステップS1006で、計算した予測値を出力する。ステップS1007で、PC103から処理の終了通知があるか否かを判定する。終了通知がない場合(ステップS1007でNO)、ステップS100101に戻る。一方、終了通知がある場合(ステップS1007でYES)、処理を終了する。
【0074】
以上の処理方式によって得られる予測値を用いて仮想空間画像を描画することで、現実空間画像と後に合成する場合でも、現実空間画像の取得時の状態から時間的に遅延が少ない仮想空間画像による画像合成を実現することができる。
【0075】
以上説明したように、実施形態3によれば、実施形態1や2で説明した効果に加えて、仮想空間画像の描画を、後に取得する現実空間画像の取得時の予測値(位置を示す値及び位置姿勢を示す値)に基づいて行う。これにより、現実空間画像の取得時の状態(位置及び位置姿勢)に近い仮想空間画像と現実空間画像とを合成することが可能となる。
【0076】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0077】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0078】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0079】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0080】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0081】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0082】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0083】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【0084】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【0085】
【図1】一般的な複合現実感提示装置のハードウェアの構成を示す図である。
【図2】一般的な複合現実感提示装置の処理を示すフローチャートである。
【図3】一般的な画像合成処理の具体例を示す図である。
【図4】本発明の実施形態1の複合現実感提示装置として機能するPCのハードウェア構成を示す図である。
【図5】本発明の実施形態1の複合現実感提示装置が実行する処理を示すフローチャートである。
【図6】本発明の実施形態1の画像合成処理の具体例を示す図である。
【図7】本発明の実施形態2の複合現実感提示装置が実行する処理を示すフローチャートである。
【図8】本発明の実施形態2の画像合成の具体例を説明するための図である。
【図9】本発明の実施形態3の複合現実感提示装置が実行する処理を示すフローチャートである。
【図10】本発明の実施形態3の現実空間画像の位置姿勢予測の詳細を示すフローチャートである。
【符号の説明】
【0086】
101 HMD
102 撮像部
103 PC
104 位置姿勢計測部
105 HMD計測センサ
106 現実空間物体計測センサ
110 仮想空間画像
111 現実空間物体
【特許請求の範囲】
【請求項1】
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得手段と
前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画手段と、
前記現実空間物体の現実空間画像を取得する取得手段と、
前記取得手段で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成手段と、
前記合成手段によって得られる合成画像を出力する出力手段と
を備えることを特徴とする複合現実感提示装置。
【請求項2】
前記仮想空間画像の奥行き情報を記憶する奥行きバッファを更に備え、
前記合成手段は、前記奥行きバッファに記憶されている奥行き情報を利用して、前記メモリ上の前記仮想空間画像が描画されていない部分に前記現実空間画像を描画することで、該現実空間画像と該仮想空間画像とを合成する
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項3】
前記仮想空間画像への画像の上書きの可否を制御するための制御情報を記憶するステンシルバッファを更に備え、
前記合成手段は、前記ステンシルバッファに記憶されている制御情報を利用して、前記メモリ上の前記仮想空間画像が前記現実空間画像で上書きされないように該メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項4】
前記合成手段は、前記現実空間画像と前記仮想空間画像とをアルファブレンド合成する
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項5】
前記描画手段による前記仮想空間画像の描画に利用する位置姿勢情報を、前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて予測する予測手段を更に備える
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項6】
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御方法であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
を備えることを特徴とする複合現実感提示装置の制御方法。
【請求項7】
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御をコンピュータに実行させるためのコンピュータプログラムであって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項1】
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得手段と
前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画手段と、
前記現実空間物体の現実空間画像を取得する取得手段と、
前記取得手段で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成手段と、
前記合成手段によって得られる合成画像を出力する出力手段と
を備えることを特徴とする複合現実感提示装置。
【請求項2】
前記仮想空間画像の奥行き情報を記憶する奥行きバッファを更に備え、
前記合成手段は、前記奥行きバッファに記憶されている奥行き情報を利用して、前記メモリ上の前記仮想空間画像が描画されていない部分に前記現実空間画像を描画することで、該現実空間画像と該仮想空間画像とを合成する
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項3】
前記仮想空間画像への画像の上書きの可否を制御するための制御情報を記憶するステンシルバッファを更に備え、
前記合成手段は、前記ステンシルバッファに記憶されている制御情報を利用して、前記メモリ上の前記仮想空間画像が前記現実空間画像で上書きされないように該メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項4】
前記合成手段は、前記現実空間画像と前記仮想空間画像とをアルファブレンド合成する
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項5】
前記描画手段による前記仮想空間画像の描画に利用する位置姿勢情報を、前記位置姿勢情報取得手段で取得した位置姿勢情報に基づいて予測する予測手段を更に備える
ことを特徴とする請求項1に記載の複合現実感提示装置。
【請求項6】
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御方法であって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
を備えることを特徴とする複合現実感提示装置の制御方法。
【請求項7】
現実空間画像と仮想空間画像とを合成して提示する複合現実感提示装置の制御をコンピュータに実行させるためのコンピュータプログラムであって、
観察者の視点と、現実空間中の現実空間物体との相対的な位置姿勢関係を示す位置姿勢情報を取得する位置姿勢情報取得工程と
前記位置姿勢情報取得工程で取得した位置姿勢情報に基づいて、仮想空間画像を生成して、メモリ上に描画する描画工程と、
前記現実空間物体の現実空間画像を取得する取得工程と、
前記取得工程で取得した現実空間画像を、前記仮想空間画像が描画されている前記メモリ上に描画することで、該現実空間画像と該仮想空間画像とを合成する合成工程と、
前記合成工程によって得られる合成画像を出力する出力工程と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2008−293209(P2008−293209A)
【公開日】平成20年12月4日(2008.12.4)
【国際特許分類】
【出願番号】特願2007−137014(P2007−137014)
【出願日】平成19年5月23日(2007.5.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成20年12月4日(2008.12.4)
【国際特許分類】
【出願日】平成19年5月23日(2007.5.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]