JP2006309459A - 画像処理方法、画像処理装置 - Google Patents
画像処理方法、画像処理装置 Download PDFInfo
- Publication number
- JP2006309459A JP2006309459A JP2005130481A JP2005130481A JP2006309459A JP 2006309459 A JP2006309459 A JP 2006309459A JP 2005130481 A JP2005130481 A JP 2005130481A JP 2005130481 A JP2005130481 A JP 2005130481A JP 2006309459 A JP2006309459 A JP 2006309459A
- Authority
- JP
- Japan
- Prior art keywords
- image
- virtual space
- virtual
- viewpoint
- virtual object
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
【課題】 複合現実空間を体験する体験者とは別のオペレータが自在に仮想空間を編集することのできるような技術を提供すること。
【解決手段】 観察者視点から見える現実空間の画像と、観察者視点から見える仮想空間の画像とを合成した合成画像をユーザ用モニタ104に対して出力する傍ら、仮想空間を編集する為の仮想物体を仮想空間中に配置し(S406)、この仮想物体が操作された場合には、その操作内容に応じて仮想空間を更新し(S411)、この仮想物体が配置された仮想空間を、オペレータ用視点から見た場合に見える画像を生成し(S408)、生成された仮想空間の画像をオペレータ用モニタ112に対して出力する(S409)。
【選択図】 図4
【解決手段】 観察者視点から見える現実空間の画像と、観察者視点から見える仮想空間の画像とを合成した合成画像をユーザ用モニタ104に対して出力する傍ら、仮想空間を編集する為の仮想物体を仮想空間中に配置し(S406)、この仮想物体が操作された場合には、その操作内容に応じて仮想空間を更新し(S411)、この仮想物体が配置された仮想空間を、オペレータ用視点から見た場合に見える画像を生成し(S408)、生成された仮想空間の画像をオペレータ用モニタ112に対して出力する(S409)。
【選択図】 図4
Description
本発明は、現実空間と合成する仮想空間を編集する為の技術に関するものである。
仮想現実(Virtual Reality)の技術は、従来のシミュレーション装置による現実環境の模倣に留まらず、仮想の新たな環境を自由に構築することができるというメリットを持っている。そして、近年では、カメラを内蔵したHMD(ヘッドマウントディスプレイ)を体験者の頭部に装着し、カメラにより撮像された現実の風景とコンピュータ映像とを合成させる装置を用いて、実写風景を背景として、その上にコンピュータグラフィックス(以下、CGと記述)を重畳してHMDに提示する技術が開発されている。即ち、体験者に対して、あたかもその場に仮想の物体が存在するかのような体験を行わせる複合現実感の技術が登場し、その環境の中で人間は現実空間と仮想空間とが融合した空間を体験するという、新たな体験を行うことが可能になってきている。
上記の複合現実感の技術を応用した例として、体験者の目の前に存在する現実のチェスボードには、相手の駒が仮想物体としてCGで描かれ体験者に提示され、仮想空間構築者(以下、オペレータと略記する)には、現実のチェスボードを仮想空間に再現したものが提示されるというシステムが、2004年に開催されたISMAR(IEEE and ACM International Symposium on Mixed and Augmented Reality)において展示されていた。このシステムにより、オペレータは体験者の目の前にある現実空間の駒の状態をディスプレイで把握しながら仮想空間の編集を行うことができる。
また、従来から行われている一般的な複合現実空間の構築方法としては、オペレータが予めグラフィックスワークステーション(以下、GWSと略記する)上で仮想空間を構築しておき、最終的なCGオブジェクトの配置調整およびCGオブジェクトの質感調整等は、実際にHMDを通した体験者の視点で確認する方法が一般的であった。さらに、複合現実空間の観察時には物体に照射された光の反射を計算し、体験者に到達した結果のみを提示するため、仮想空間の構築の際に設定(色や輝度)および配置する光源は可視化せずに、仮想空間を構築していた。
C.D.Correa,A.Agudelo,A.M.Krebs,I.Marsic,J.Hou,A.Morde,and S.K.Ganapathy,The Parallel Worlds System for Collaboration among Virtual and Augmented Reality Users,Demo at the IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR’04) Arlington,VA,November 2−5,2004.
C.D.Correa,A.Agudelo,A.M.Krebs,I.Marsic,J.Hou,A.Morde,and S.K.Ganapathy,The Parallel Worlds System for Collaboration among Virtual and Augmented Reality Users,Demo at the IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR’04) Arlington,VA,November 2−5,2004.
したがって、従来の確認方法では、最終的に提示される複合現実空間の視点位置・姿勢は体験者の視点位置に限定されてしまっていた。つまり、体験者の視点を計測しているセンサの計測領域内でしか複合現実空間を観察することができない。そのため、必然的にオペレータが環境を確認できる視点位置・姿勢が限定されてしまうため、任意の視点で観察することができなかった。
また、上述の複合現実空間の構築方法において、体験者に提示を行うことが必要のない光源情報を如何にしてオペレータのみに提示して、現実空間に即した形で仮想空間に光源を配置するのかといったことや、オペレータが現実空間を把握して仮想環境を構築することができるかが課題になっていた。
本発明は以上の問題に鑑みてなされたものであり、複合現実空間を体験する体験者とは別のオペレータが自在に仮想空間を編集することのできるような技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、第1の視点から見える現実空間の画像と、当該第1の視点から見える仮想空間の画像とを合成した合成画像を第1の表示装置に対して出力する画像処理方法であって、
前記仮想空間を編集する為の仮想物体を前記仮想空間中に配置する配置工程と、
前記仮想物体が操作された場合には、その操作内容に応じて前記仮想空間を更新する更新工程と、
前記仮想物体が配置された仮想空間を、前記第1の視点とは異なる第2の視点から見た場合に見える画像を生成する生成工程と、
前記生成工程で生成された仮想空間の画像を前記第1の表示装置とは異なる第2の表示装置に対して出力する出力工程と
を備えることを特徴とする。
前記仮想空間を編集する為の仮想物体を前記仮想空間中に配置する配置工程と、
前記仮想物体が操作された場合には、その操作内容に応じて前記仮想空間を更新する更新工程と、
前記仮想物体が配置された仮想空間を、前記第1の視点とは異なる第2の視点から見た場合に見える画像を生成する生成工程と、
前記生成工程で生成された仮想空間の画像を前記第1の表示装置とは異なる第2の表示装置に対して出力する出力工程と
を備えることを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、第1の視点から見える現実空間の画像と、当該第1の視点から見える仮想空間の画像とを合成した合成画像を第1の表示装置に対して出力する画像処理装置であって、
前記仮想空間を編集する為の仮想物体を前記仮想空間中に配置する配置手段と、
前記仮想物体が操作された場合には、その操作内容に応じて前記仮想空間を更新する更新手段と、
前記仮想物体が配置された仮想空間を、前記第1の視点とは異なる第2の視点から見た場合に見える画像を生成する生成手段と、
前記生成手段で生成された仮想空間の画像を前記第1の表示装置とは異なる第2の表示装置に対して出力する出力手段と
を備えることを特徴とする。
前記仮想空間を編集する為の仮想物体を前記仮想空間中に配置する配置手段と、
前記仮想物体が操作された場合には、その操作内容に応じて前記仮想空間を更新する更新手段と、
前記仮想物体が配置された仮想空間を、前記第1の視点とは異なる第2の視点から見た場合に見える画像を生成する生成手段と、
前記生成手段で生成された仮想空間の画像を前記第1の表示装置とは異なる第2の表示装置に対して出力する出力手段と
を備えることを特徴とする。
本発明の構成により、複合現実空間を体験する体験者とは別のオペレータが自在に仮想空間を編集することができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
本実施形態では、仮想空間と現実空間を合成した複合現実空間の画像を観察している観察者とは別個のオペレータが、この仮想空間を編集する為のシステムについて説明する。
本実施形態では、仮想空間と現実空間を合成した複合現実空間の画像を観察している観察者とは別個のオペレータが、この仮想空間を編集する為のシステムについて説明する。
図1は、本実施形態に係るシステムのハードウェア構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、コンピュータ100、ユーザ用モニタ104、位置姿勢計測装置105により構成されている。
先ず、ユーザ用モニタ104について説明する。ユーザ用モニタ104は、複合現実空間を観察する観察者(ユーザ)が、自身の頭部に装着するもので、所謂HMDである。従ってユーザ用モニタ104は、常に観察者の眼前に画像を提供するものであり、その画像は後段のコンピュータ100が生成する。また、このユーザ用モニタ104には、現実空間の動画像を撮像するカメラが備わっており、撮像した各フレームの画像は、後段のコンピュータ100に出力される。
次に、位置姿勢計測装置105について説明する。位置姿勢計測装置105は、観察者の視点の位置姿勢を計測するためのものである。観察者の視点の位置姿勢を計測するための技術については様々なものが考えられ、本実施形態でもこの技術については何れの方法を用いても良いので、特に限定するものではないが、以下にその一例について説明する。 例えば、上記カメラは、観察者が自身の頭部にユーザ用モニタ104を装着した場合に、できるだけ観察者の目(視点)の位置に近いところに取り付ける。また、このカメラに近い位置に磁気センサを取り付ける。この磁気センサは磁気の発信源の位置を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系(センサ座標系)における自身の位置姿勢を計測する。この磁気センサは計測した自身の位置姿勢を示す信号をセンサの制御器に入力するので、センサの制御器は、入力された信号が示す位置姿勢に、視点と磁気センサとの位置姿勢関係を示すバイアスを加算することで、センサ座標系における視点の位置姿勢を求める。なお、周知の技術を用いれば、この視点の位置姿勢を世界座標系(現実空間中の所定の位置を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系)におけるものとすることもできるが、これについては以下の説明の趣旨ではないので、ここでの説明は省略する。
なお、位置姿勢計測装置105が求めた視点の位置姿勢を示すデータは後段のコンピュータ100に出力される。
次に、コンピュータ100について説明する。コンピュータ100には、例えば一般のPC(パーソナルコンピュータ)やGWS(グラフィックスワークステーション)等が適用可能である。
実写画像DB(データベース)102は、ユーザ用モニタ104に備わっているカメラから順次送出される各フレームの画像(現実空間画像)を順次記憶するためのものである。なお、実写画像DB102は後段の外部記憶装置106内に設けるようにしても良い。
CGデータDB103は、仮想空間を構成する各仮想物体を描画するために必要なデータ(仮想空間データ)を記憶するためのものである。仮想空間データには、例えば仮想物体がポリゴンで構成されている場合には、仮想物体の配置位置姿勢データ、各ポリゴンの法線ベクトルデータ、ポリゴンを構成する各頂点の位置データ、ポリゴンの質感、色データ、また、この仮想物体にテクスチャマッピングを施す場合には、テクスチャ画像データが含まれている。また、仮想空間データには、仮想空間中に設定される光源の位置姿勢データ等、仮想空間環境を示すデータも含まれている。
また、この仮想空間データには、仮想空間中で動的に変化する仮想物体がある場合には、その変化則を規定するデータが含まれていたり、音を発生させる場合には音のデータも含まれている。なお、仮想空間データに含まれうるものについてはこれ以外にも様々なものが考えられ、これに限定するものではない。
なお、CGデータDB103は後段の外部記憶装置106内に設けるようにしても良い。また、それぞれのDB(実写画像DB102、CGデータDB103)はI/Fを介してバス120に接続されている。
オペレータ用モニタ112は、コンピュータ100を操作するオペレータに対して画像や文字などを表示するものであり、CRTや液晶画面などにより構成されている。なお、オペレータ用モニタ112は、I/Fを介してバス120に接続される。
外部記憶装置106は、ハードディスクドライブ装置に代表される大容量情報記憶装置であり、ここにはOS(オペレーティングシステム)や、コンピュータ100が行う後述の各処理をCPU108に実行させるためのプログラムやデータなどが保存されている。これらのプログラムやデータは、CPU108による制御に従って適宜RAM109にロードされ、CPU108による処理対象となる。なお、外部記憶装置106は、I/Fを介してバス120に接続される。
ROM107には、コンピュータ100の設定データや、ブートプログラムなどが格納されている。
CPU108は、RAM109やROM107に格納されているプログラムやデータを用いてコンピュータ100全体の制御処理を行うと共に、コンピュータ100が行う後述の各処理を実行する。
RAM109は、上記各DB102,103や外部記憶装置106からロードされたデータを一時的に記憶するためのエリア、位置姿勢計測装置105から入力された視点の位置姿勢を示すデータを一時的に記憶するためのエリア、CPU108が各処理を実行する際に用いるワークエリア等、各種のエリアを適宜提供することができる。
マウス110,キーボード111は、オペレータが操作することにより、各種の指示をCPU108に対して入力することができる。なお、マウス110、キーボード111は、I/Fを介してバス120に接続される。
以上の構成を有するコンピュータ100の動作について簡単に説明する。ユーザ用モニタ104に備わっているカメラは現実空間の動画像を撮像し、撮像した各フレームの画像は、I/Fを介して本コンピュータ100内に入力され、実写画像DB102内に順次格納される。一方、位置姿勢計測装置105からは、観察者の視点の位置姿勢を示すデータがI/Fを介して順次本コンピュータ100内に入力され、RAM109、若しくは外部記憶装置106内に格納される。
CPU108は、実写画像DB102に格納された順に現実空間画像をRAM109内の所定のエリアにロードする。次に、位置姿勢計測装置105から得た視点の位置姿勢を示すデータ、及びCGデータDB103内に格納されている仮想空間データを用いて、この視点から見える仮想空間の画像を生成する。なお、所定の位置姿勢を有する視点から見える仮想空間の画像を生成するための技術については周知のものであるので、ここでの説明は省略する。
そしてCPU108は、生成した仮想空間画像をRAM109内の上記所定のエリア上に描画する。これにより、上記所定のエリア上には、現実空間画像上に仮想空間画像が重畳された画像、即ち、複合現実空間画像が生成されるので、CPU108は生成した複合現実空間画像をI/Fを介してユーザ用モニタ104に出力する。
これにより、ユーザ用モニタ104に備わっている表示画面上には、観察者の視点の位置姿勢に応じて見える複合現実空間画像が表示されることになるので、観察者は眼前にそれを見ることができる。
なお、観察者の視点の位置姿勢が変化しないような場合には、予め既知の位置姿勢を有する視点から見える現実空間の画像を実写画像DB102に登録しておき、これを用いて複合現実空間画像を生成するようにしても良い。
一方、コンピュータ100は、観察者の視点とは別に、オペレータが指定した視点から見える仮想空間の画像を生成して、オペレータ用モニタ112に出力する。これは、オペレータが、このオペレータ用モニタ112に表示されている仮想空間の画像を見、この仮想空間を編集する目的で表示する。
以下に、このオペレータによる仮想空間の編集について説明する。オペレータは仮想空間を編集する場合には、GUI(グラフィカルユーザインターフェース)を用いて行う。図2は、仮想空間を編集するために用いられるGUIの表示例を示す図である。同図のGUIはオペレータ用モニタ112の表示画面上に表示されるものである。
同図のGUIには、上記仮想空間を編集するための仮想物体を配置した仮想空間を、オペレータがキーボード111やマウス110でもって指定した位置姿勢を有する視点(以下、オペレータ用視点と呼称する場合がある)から見た場合に見える仮想空間が表示されている。
同図において、200はマウスカーソルであり、マウス110でもって画面上の位置を移動させることができる。204は背景物として仮想空間中に配置する仮想物体である。仮想物体204の配置位置を変更する場合には、仮想物体204周辺に配置されているマニピューレータ204a〜204cを操作する。マニピューレータ204a〜204cは、仮想物体204の位置を原点とし、この原点で互いに直交する3軸のそれぞれの上に配置されるものである。
マウスカーソル200をマニピューレータ204a上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ204aが位置する軸上で仮想物体204を移動させることができる。また、マウスカーソル200をマニピューレータ204b上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ204bが位置する軸上で仮想物体204を移動させることができる。また、マウスカーソル200をマニピューレータ204c上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ204cが位置する軸上で仮想物体204を移動させることができる。
また、仮想物体204の姿勢を変更する場合には、表示されている点線部分204x〜204zを操作する。点線部分204x〜204zはそれぞれ、仮想物体204を包含する楕円体において、マニピューレータ204cが位置する軸周りを示す点線、マニピューレータ204aが位置する軸周りを示す点線、マニピューレータ204bが位置する軸周りを示す点線である。
マウスカーソル200を点線部分204x上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ204cが位置する軸周りに仮想物体204を回転させることができる。マウスカーソル200を点線部分204y上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ204aが位置する軸周りに仮想物体204を回転させることができる。マウスカーソル200を点線部分204z上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ204bが位置する軸周りに仮想物体204を回転させることができる。
このようにして、仮想物体204の位置や姿勢は変更することができる。なお、変更するための操作方法については特に限定するものではない。
205は仮想空間中に設定する光源を示す仮想物体であり、この仮想物体205の配置位置が光源の位置となり、配置姿勢が光源の姿勢となる。ここで、一般に光源には平行光源、点光源、スポットライト等、複数の種類が存在するので、オペレータは、キーボード111やマウス110を用いて、仮想空間中に配置したい種類の光源を示す仮想物体を指定する。よって、205は、オペレータが指定した種類の光源を示す仮想物体となる。また、オペレータは、光源の種類だけでなく、光源の色や光源の強さ等を設定することもでき、光源の仮想物体は設定したこれらを表現したものであることが好ましい、
仮想物体205の配置位置を変更する場合には、仮想物体205周辺に配置されているマニピューレータ205a〜205cを操作する。マニピューレータ205a〜205cは、仮想物体205の位置を原点とし、この原点で互いに直交する3軸のそれぞれの上に配置されるものである。
仮想物体205の配置位置を変更する場合には、仮想物体205周辺に配置されているマニピューレータ205a〜205cを操作する。マニピューレータ205a〜205cは、仮想物体205の位置を原点とし、この原点で互いに直交する3軸のそれぞれの上に配置されるものである。
マウスカーソル200をマニピューレータ205a上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ205aが位置する軸上で仮想物体205を移動させることができる。また、マウスカーソル200をマニピューレータ205b上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ205bが位置する軸上で仮想物体205を移動させることができる。また、マウスカーソル200をマニピューレータ205c上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ205cが位置する軸上で仮想物体205を移動させることができる。
また、仮想物体205の姿勢を変更する場合には、表示されている点線部分205x〜205zを操作する。点線部分205x〜205zはそれぞれ、仮想物体205を包含する楕円体において、マニピューレータ205cが位置する軸周りを示す点線、マニピューレータ205aが位置する軸周りを示す点線、マニピューレータ205bが位置する軸周りを示す点線である。
マウスカーソル200を点線部分205x上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ205cが位置する軸周りに仮想物体205を回転させることができる。マウスカーソル200を点線部分205y上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ205aが位置する軸周りに仮想物体205を回転させることができる。マウスカーソル200を点線部分205z上に移動させ、そこでドラッグした状態でマウスカーソル200を移動させると、マニピューレータ205bが位置する軸周りに仮想物体205を回転させることができる。
このようにして、光源の仮想物体205の位置や姿勢は変更することができる。なお、変更するための操作方法については特に限定するものではない。
207は、観察者の視野錐体を示す仮想物体で、観察者の視点の位置姿勢でもって配置されるものである。また、この仮想物体が示す「視野」は、予めHMDの仕様情報から算出した視野に基づいている。
これにより、オペレータは、現在観察者がどの位置でどの方向を向いているのかを把握することができるので、例えば、観察者が観察している場所に仮想物体204を配置する等、観察者に観察させたいものを、観察者が観察している場所に移動させることが容易となる。
209は、観察者の視点の位置が計測可能な範囲を示す仮想物体で、例えば、上述の磁気センサを用いて観察者の視点の位置姿勢を計測する場合には、仮想物体209は磁気レシーバの計測可能範囲を示す。この計測可能範囲は、予めセンサの仕様情報から算出した「センサの計測範囲」に基づくものである。これにより、オペレータは、観察者が現在視点計測範囲内に位置しているのかをこのGUI上で確認することができ、観察者が計測範囲外に出そうになった場合には、その旨を観察者に伝え、オペレータは観察者に観察位置を直感的に指示することが可能になる。
ここで、仮想空間を編集すると、編集した仮想空間のデータ、即ち上記仮想空間データは更新されることになる。また、ユーザ用モニタ104に出力する複合現実空間画像を生成したり、オペレータ用モニタ112に出力する仮想空間画像を生成したりする場合には同じ仮想空間データを用いるので、結果としてユーザ用モニタ104には、編集された仮想空間の画像を現実空間の画像上に重畳させた画像が表示されることになる。
従って、オペレータは仮想空間を編集する為には、編集する部分が現実空間とどのような位置関係にあるかなど、常に仮想空間と現実空間との関係を把握しておく必要がある。そこで、現実空間を模した仮想空間(疑似現実空間)のデータを予めCGデータDB103に登録しておき、このデータを用いて、疑似現実空間のち、現在GUI上に表示されている仮想空間に相当する部分の空間の画像を生成する。このときの視点は、オペレータ用視点を用いる。そして生成したこの画像をテクスチャとして1枚ポリゴンにマッピングしたものをダミーモデル203として仮想空間中に配置する。
オペレータは、実際に観察者が観察対象となる仮想物体をどのように見ているのかを即座に知るために、任意の視点位置姿勢から瞬時に観察者の視点位置姿勢に移ることが可能である。オペレータは、位置姿勢計測センサより取得された観察者の視点位置姿勢をオペレータの視点位置姿勢にコピーすることで、観察者の視点位置姿勢に移動する。その際、観察者の視野を示す仮想物体および計測範囲を示す仮想物体は非表示とする。
なお、図2に示したGUIにおいて、仮想物体204の位置や姿勢を変更するために配置したマニピューレータ204a〜204c、及び点線204x〜204z、光源の位置や姿勢を視覚的に示すために配置した仮想物体205、光源の位置や姿勢を変更するために配置したマニピューレータ205a〜205c、及び点線205x〜205z、ダミーモデル203、仮想物体207,209は全て、オペレータが仮想空間を編集するために仮想空間中に配置したものであり、観察者にとっては不要なものである。従って、これらの仮想物体(以下、表示オプションと呼称する場合がある)は、観察者に対して提示する画像中には表示されないようにする。これについての詳細は後述する。
図3は、本実施形態に係るシステムの機能構成を示すブロック図である。なお、同図において、図1と同じ部分については同じ番号を付けており、その説明は省略する。画像生成部300は、仮想物体管理部301、3次元CG画像生成部302、実写+CG画像融合部303により構成されている。
仮想物体管理部301にはCGデータDB103から仮想空間データが入力されると共に、キーボード111やマウス110から、仮想空間を編集するための操作指示が入力される。
3次元CG画像生成部302には、仮想物体管理部301から仮想空間データが入力されると共に、オペレータ用視点の位置姿勢を示すデータが入力されるので、これらのデータに基づいてオペレータ用視点から見える仮想空間を生成し、オペレータ用モニタ112に出力する。なお、オペレータ用視点から見える仮想空間の画像を生成する際には、上記表示オプションを仮想空間中に配置するのであるが、視野錐体を示す仮想物体207は、観察者の視点の位置姿勢でもって仮想空間中に配置することから、位置姿勢計測装置105から入力される「観察者の視点の位置姿勢を示すデータ」も用いる。
また、3次元CG画像生成部302には位置姿勢計測装置105から観察者の視点の位置姿勢を示すデータが入力されると共に、仮想物体管理部301から仮想空間データが入力されるので、これらのデータに基づいて観察者の視点から見える仮想空間を生成し、実写+CG画像融合部303に出力する。
実写+CG画像融合部303には、実写画像DB102から、現実空間画像が入力されると共に、3次元CG画像生成部302からは、観察者の視点から見える仮想空間画像が入力されるので、現実空間画像上に仮想空間画像を重畳させた画像を生成し、これをユーザ用モニタ104に出力する。
図4は、コンピュータ100が行う処理、即ち、複合現実空間画像を生成する処理を行う傍らで、仮想空間を編集する処理を行うという制御処理のフローチャートである。なお、同図のフローチャートに従った処理をCPU108に実行させるためのプログラムやデータは外部記憶装置106内に保存されており、これはCPU108による制御に従って適宜RAM109にロードされ、CPU108がこれを用いて処理を行うことで、コンピュータ100は以下説明する各処理を実行することになる。
先ず、位置姿勢計測装置105からは、観察者の視点の位置姿勢を示すデータがI/Fを介して本コンピュータ100内に入力されるので、CPU108はこれをRAM109内に取得する(ステップS401)。
ここで、以下説明するステップS402〜ステップS405の処理(複合現実空間画像提示処理)と、ステップS406〜ステップS411の処理(仮想空間編集処理)とは並行して行われるもので、例えば、それぞれはマルチタスク処理でもって並行して行われるものである。
先ず、ステップS402〜ステップS405の処理(複合現実空間画像提示処理)について説明する。
ユーザ用モニタ104からは各フレームの現実空間画像が実写画像DB102に順次入力されるので、CPU108は、実写画像DB102に格納された順に現実空間画像をRAM109内の所定のエリアに読み出す(ステップS402)。次に、ステップS401で取得した視点の位置姿勢データ、及びCGデータDB103に保存されている仮想空間データを用いて、観察者の視点から見える仮想空間画像を生成する(ステップS403)。尚、この仮想空間画像は、上記表示オプション以外の仮想物体(例えば、図2では仮想物体204に相当する)のみを配置した仮想空間を観察者の視点から見た場合に見える画像を生成することによって得られるものである。
そして、生成した仮想空間画像をRAM109内で現実空間画像をロードした上記所定のエリア上に描画する(ステップS404)。これにより、現実空間画像上に仮想空間画像が重畳されるので、結果として上記所定のエリア上には複合現実空間画像が生成されることになる。そして、CPU108はこの複合現実空間画像をI/Fを介してユーザ用モニタ104に対して出力する(ステップS405)。これにより、ユーザ用モニタ104を頭部に装着している観察者の眼前には、自身の視点の位置姿勢に応じて見える複合現実空間の画像が表示されることになり、この観察者は、複合現実空間を体験することができる。
次に、ステップS406〜ステップS411の処理(仮想空間編集処理)について説明する。
先ず、上記表示オプションを仮想空間中に配置する(ステップS406)。次に、キーボード111やマウス110でもって指示されたオペレータ用視点のデータを取得する(ステップS407)。次に、表示オプションを配置した仮想空間中に、更に表示オプション以外の仮想物体(観察者用の仮想空間画像を生成する際に仮想空間中に配した仮想物体で、例えば、図2では仮想物体204に相当する)を配置した仮想空間を、オペレータ用視点から見た場合に見える仮想空間画像を生成する(ステップS408)。
図5は、仮想空間中に配置する全ての仮想物体のうち、観察者用の仮想空間画像、オペレータ用の仮想空間画像のそれぞれの生成時に、仮想空間中に配置するものを示すテーブルの構成例を示す図である。同図では、仮想空間中に配置する全ての仮想物体としては、目的のCGオブジェクト、仮想光源、ダミーモデル、センサ、視野錐体である。そのうち、観察者用に仮想空間画像を生成する際には(ステップS403では)、目的CGオブジェクトのみを配置し、それ以外の仮想物体については配置しない。一方、オペレータ用に仮想空間画像を生成する際には、目的CGオブジェクトは必ず配置し、仮想光源、ダミーモデル、センサ、視野錐体に関しては、オペレータがキーボード111やマウス110を操作することで、配置/非配置を切り替えることができる。ここで「表示」は配置する旨を示すフラグ値で、「非表示」は配置しない旨を示すフラグ値で、「表示/非表示」は配置/非配置をオペレータが選択可能な旨を示すフラグ値である。よって、「表示/非表示」のフラグ値は、オペレータが適宜キーボード111やマウス110を用いて「表示」、「非表示」の何れかに切り替えるようにする。
また、オペレータが観察者の視点追従を行っている場合は、オペレータのセンサ、視野錐体のフラグ値は自動的に「非表示」に設定される。
このように、各仮想物体について、観察者とオペレータの両方に対して表示するのか、観察者に対しては表示せずにオペレータのみに表示するのか、表示/非表示が切り替え可能であるのかの何れかを示すフラグ値を設定しておく。
従って、上記ステップS403では、同図のテーブルを参照して、各仮想物体のうち、観察者に対して「表示」のフラグ値を有するもののみを仮想空間中に配置し、これを観察者の視点から見た場合に見える画像を生成する。
また、ステップS406では、同図のテーブルを参照して、各仮想物体のうち、オペレータに対して「表示」のフラグ値を有するもの(「表示/非表示」のフラグ値を有するもののうち「表示」に切り替えられている仮想物体も含む)のみを仮想空間中に配置する。
図4に戻って、次にCPU108は、ステップS408で生成した仮想空間画像を、I/Fを介してオペレータ用モニタ112に出力する(ステップS409)。これにより、オペレータ用モニタ112には、オペレータ用視点から見える仮想空間であって、この仮想空間を編集する為の仮想物体が配置された仮想空間の画像が表示されることになるので、オペレータはこの画面を見ながら、キーボード111やマウス110を用いて、この仮想空間を編集することができる。また、編集するために配置した表示オプションは、観察者には見えないので、観察者にとって邪魔なものをこの観察者に見せることなく、仮想空間を編集することができる。
よって、キーボード111やマウス110でもって仮想空間を編集する操作(例えば何れかのマニピュレータが操作されたなど)が入力されたことをCPU108が検知した場合には処理をステップS410を介してステップS411に進め、操作内容に応じて仮想空間データを更新し(ステップS411)、その後処理をステップS408に進める。
ステップS408では、更新した仮想空間データを用いて仮想空間画像を生成する。また、本ステップと並行して実行されているステップS403でもこの更新された仮想空間データを用いて仮想空間画像を生成する。これにより、観察者、オペレータの何れに提示する仮想空間画像にも更新結果が反映されていることになる。
一方、仮想空間を編集する旨の指示をCPU108が検知しなかった場合、また、上記ステップS405における処理の後には、処理をステップS412に進め、本処理を終了する場合、例えば本処理を終了する旨の指示がキーボード111やマウス110から入力されたことをCPU108が検知した場合には本処理を終了するが、検知していない場合には処理をステップS401に戻し、以降の処理を繰り返す。
以上の説明により、本実施形態によれば、オペレータには必要とされる仮想物体をオペレータのみに表示し、複合現実空間を体験している観察者には必要とされない情報は区別して提示することで、オペレータは直感的に仮想空間、ひいては複合現実空間の編集を行うことができる。
[第2の実施形態]
観察者が複数人存在する場合、即ち、観察者の人数分ユーザ用モニタ104、位置姿勢計測装置105のセットがコンピュータ100に接続されている場合には、それぞれの観察者についてステップS402からステップS405の処理を行う。
観察者が複数人存在する場合、即ち、観察者の人数分ユーザ用モニタ104、位置姿勢計測装置105のセットがコンピュータ100に接続されている場合には、それぞれの観察者についてステップS402からステップS405の処理を行う。
[その他の実施形態]
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
Claims (10)
- 第1の視点から見える現実空間の画像と、当該第1の視点から見える仮想空間の画像とを合成した合成画像を第1の表示装置に対して出力する画像処理方法であって、
前記仮想空間を編集する為の仮想物体を前記仮想空間中に配置する配置工程と、
前記仮想物体が操作された場合には、その操作内容に応じて前記仮想空間を更新する更新工程と、
前記仮想物体が配置された仮想空間を、前記第1の視点とは異なる第2の視点から見た場合に見える画像を生成する生成工程と、
前記生成工程で生成された仮想空間の画像を前記第1の表示装置とは異なる第2の表示装置に対して出力する出力工程と
を備えることを特徴とする画像処理方法。 - 前記仮想物体は、前記第1の視点から見える画像上には表示されないことを特徴とする請求項1に記載の画像処理方法。
- 更に、前記第2の視点の位置姿勢を指示する指示工程を備えることを特徴とする請求項1に記載の画像処理方法。
- 前記仮想物体は、前記第1の視点から見える画像上に見える仮想物体の位置姿勢を操作するためのものであることを特徴とする請求項1に記載の画像処理方法。
- 前記仮想物体は、前記仮想空間中に設定される光源を表す仮想物体、及び当該光源の位置姿勢を操作するためのものであることを特徴とする請求項1に記載の画像処理方法。
- 前記仮想物体は、前記第1の視点から見える視野の錐体を示すものであることを特徴とする請求項1に記載の画像処理方法。
- 前記仮想物体は、前記第1の視点の位置姿勢が計測可能な範囲を示すものであることを特徴とする請求項1に記載の画像処理方法。
- 第1の視点から見える現実空間の画像と、当該第1の視点から見える仮想空間の画像とを合成した合成画像を第1の表示装置に対して出力する画像処理装置であって、
前記仮想空間を編集する為の仮想物体を前記仮想空間中に配置する配置手段と、
前記仮想物体が操作された場合には、その操作内容に応じて前記仮想空間を更新する更新手段と、
前記仮想物体が配置された仮想空間を、前記第1の視点とは異なる第2の視点から見た場合に見える画像を生成する生成手段と、
前記生成手段で生成された仮想空間の画像を前記第1の表示装置とは異なる第2の表示装置に対して出力する出力手段と
を備えることを特徴とする画像処理装置。 - コンピュータに請求項1乃至7の何れか1項に記載の画像処理方法を実行させることを特徴とするプログラム。
- 請求項9に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005130481A JP2006309459A (ja) | 2005-04-27 | 2005-04-27 | 画像処理方法、画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005130481A JP2006309459A (ja) | 2005-04-27 | 2005-04-27 | 画像処理方法、画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006309459A true JP2006309459A (ja) | 2006-11-09 |
Family
ID=37476279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005130481A Withdrawn JP2006309459A (ja) | 2005-04-27 | 2005-04-27 | 画像処理方法、画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006309459A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013101599A (ja) * | 2011-10-13 | 2013-05-23 | Toshiba Corp | 3次元画像処理装置 |
JP2016197393A (ja) * | 2015-04-03 | 2016-11-24 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
-
2005
- 2005-04-27 JP JP2005130481A patent/JP2006309459A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013101599A (ja) * | 2011-10-13 | 2013-05-23 | Toshiba Corp | 3次元画像処理装置 |
US9746989B2 (en) | 2011-10-13 | 2017-08-29 | Toshiba Medical Systems Corporation | Three-dimensional image processing apparatus |
JP2016197393A (ja) * | 2015-04-03 | 2016-11-24 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7095189B2 (ja) | 多ソース仮想コンテンツ合成を伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法 | |
JP7055815B2 (ja) | 仮想コンテンツをワーピングすることを伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法 | |
Hilfert et al. | Low-cost virtual reality environment for engineering and construction | |
JP7009494B2 (ja) | カラー仮想コンテンツワーピングを伴う複合現実システムおよびそれを使用して仮想コンテンツ生成する方法 | |
JP4739002B2 (ja) | 画像処理方法、画像処理装置 | |
US8994729B2 (en) | Method for simulating operation of object and apparatus for the same | |
KR20230048457A (ko) | 증강 현실 데이터를 레코딩하기 위한 기술 | |
JP2009123018A (ja) | 画像処理装置、画像処理方法 | |
JP2006127158A (ja) | 画像処理方法、画像処理装置 | |
JP2005108108A (ja) | 三次元cg操作装置および方法、並びに位置姿勢センサのキャリブレーション装置 | |
JP2005346468A (ja) | 画像処理方法、画像処理装置 | |
JP6920057B2 (ja) | 画像処理装置、画像処理方法、コンピュータプログラム | |
JP2009134681A (ja) | 画像処理装置、画像処理方法 | |
JP2007004713A (ja) | 画像処理方法、画像処理装置 | |
JP2005339377A (ja) | 画像処理方法、画像処理装置 | |
JP4307222B2 (ja) | 複合現実感提示方法、複合現実感提示装置 | |
JP2009087161A (ja) | 画像処理装置、画像処理方法 | |
JP4683639B2 (ja) | 画像処理方法、画像処理装置 | |
JP2008217119A (ja) | システム、画像処理装置、画像処理方法 | |
JP2006309459A (ja) | 画像処理方法、画像処理装置 | |
JP2006215750A (ja) | 画像処理方法、画像処理装置 | |
JP2017010228A (ja) | 情報処理装置、情報処理方法、プログラム | |
JP4689344B2 (ja) | 情報処理方法、情報処理装置 | |
JP2005251118A (ja) | 画像処理方法、画像処理装置 | |
JP3413145B2 (ja) | 仮想空間の編集方法及び仮想空間の編集装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080701 |