説明

画像処理システム及び画像処理方法

【課題】 現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現する。
【解決手段】 現実物体であるモックアップ150の現実画像の入力を行う画像入力部111と、現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部112とを備える頭部装着型画像入出力装置110を備え、情報処理装置130では、モックアップ150および頭部装着型画像入出力装置110の位置・姿勢情報に基づいて、モックアップ150と仮想物体との接触に係る接触判定を行い、当該接触判定の判定結果に基づいて仮想物体の画像を生成し、画像入力部111から入力された現実画像と生成した仮想物体の画像とを合成し、合成した合成画像を画像表示部112に表示する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の処理を行う画像処理システム及び画像処理方法に関するものである。
【背景技術】
【0002】
従来から、設計・製造分野等において、計算機システム上での設計業務が行われている。その手順としては、一般的に、まず、3次元CADシステム上で基本設計が行われる。通常、3次元CADシステムを使って物体の形状やデザインなどの設計業務を行う場合、設計データは、一般的に、それぞれの3次元CADシステム固有のソリッドデータとして保存される。そして、同時に、3次元CADシステムで設計された製品の操作性・メンテナンス、組み立て上の問題を検証するために、ラピッド・プロトタイピングの手法や、アルミ部材・発泡樹脂素材を用いた簡易試作品(モックアップ)のような現実物体の試作品を作成する。
【0003】
この現実物体や仮想物体のデータを用いたデザインレビュー(DMR:Digital_Mockup_Review)の実施においては、仮想物体のデータだけでなく、現実物体であるモックアップも併用される。そして、従来、現実物体の現実画像に仮想物体の画像を重畳表示し、現実にはない仮想物体を可視化して提示する複合現実感(MR:Mixed_Reality)提示装置が提案されている(例えば、下記の特許文献1参照)。この複合現実感提示装置を用いたDMRでは、製品における基本ユニット部分の現実物体のモックアップ上に、設計検討中の部品やオプションの部品等の仮想物体を組み合わせた画像表示が実施可能である。このように現実物体であるモックアップを設計変更のたびに作成しなくても、仮想物体の画像との重畳表示、及び、仮想物体と現実物体の接触を検知できる接触判定機能を併用することにより、設計上、デザイン上の問題点を早期に発見可能である。
【0004】
【特許文献1】特開2003−215494号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の複合現実感提示装置(画像処理システム)では、現実物体(モックアップ)と部分的に仮想物体とで構成された、仮想・現実の混合した部品をDMRでMR表示するような場合には、現実物体の内部を区別して処理することができなかった。例えば、仮想物体及び現実物体が混合した部品の接触判定処理を行う場合、不要なモックアップの内部の接触判定処理も同時に行うことしかできなかった。このように、従来の技術では、重畳表示する対象となる現実物体であっても、そのモックアップの内側及び外側を区別して認識することができず、モックアップの外側の仮想物体だけに適用する処理と内側に適用する処理とを判断することができなかった。
【0006】
一般に、仮想物体の接触判定処理は、表示等に用いる描画用シーングラフの一機能としても利用可能であるが、仮想物体の接触判定処理を行うシステムの負荷は、依然として、システム全体の処理を遅くするほどの高い負荷となっている。そして、この場合、接触判定の処理方法に応じて負荷を抑えるような接触判定用データを生成して利用する場合であっても、当該システムの負荷は、かなり高いものとなる。
【0007】
そのため、従来、モックアップを使用したDMRのように現実物体と仮想物体を混合した1つの製品(部品)をMR表示する場合には、システムの負荷を軽減すべく、冗長な処理を少しでも削減してレビューの目的に必要最小限の処理に留めることが望まれていた。
【0008】
本発明は、このような問題点に鑑みてなされたものであり、現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現する画像処理システム及び画像処理方法を適用することを目的とする。
【課題を解決するための手段】
【0009】
本発明の画像処理システムは、現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段と、前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定手段と、前記接触判定手段の判定結果に基づいて、前記仮想物体の画像を生成する生成手段と、前記画像入力部から入力された現実画像と前記生成手段で生成された仮想物体の画像とを合成する合成手段と、前記合成手段で合成された合成画像を前記画像表示部に表示する表示手段とを有する。
【0010】
本発明の画像処理方法は、現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段を具備する画像処理システムの画像処理方法であって、前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定ステップと、前記接触判定ステップの判定結果に基づいて、前記仮想物体の画像を生成する生成ステップと、前記画像入力部から入力された現実画像と前記生成ステップで生成された仮想物体の画像とを合成する合成ステップと、前記合成ステップで合成された合成画像を前記画像表示部に表示する表示ステップとを有する。
【発明の効果】
【0011】
本発明によれば、現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現することができる。
【発明を実施するための最良の形態】
【0012】
以下に、図面を参照しながら、本発明を実施するための最良の形態(実施形態)について説明する。
【0013】
(システム構成)
まず、本発明の実施の形態を実現するシステム(本例では、画像処理システム)の構成について説明する。
図1は、本発明の実施形態に係る画像処理システム100の概略構成の一例を示す模式図である。ここで、図1に示す画像処理システム100は、設計データから生成されたモックアップの画像(現実画像)と仮想物体の画像(CG画像)とを重畳して表示する複合現実感提示システムを構成するものである。
【0014】
画像処理システム100は、図1に示すように、頭部装着型画像入出力装置110と、位置・姿勢計測装置120と、情報処理装置130と、CADシステム141と、モックアップシステム142と、DMRシステム143を有して構成されている。さらに、画像処理システム100は、図1に示すように、モックアップ150と、磁気トランスミッタ160と、磁気センサ161及び162を有して構成されている。
【0015】
頭部装着型画像入出力装置110は、観察者が頭部に装着して現実空間の画像(映像)と仮想空間の画像(映像)とを合成した合成画像(合成映像)を観察するための装置である。この頭部装着型画像入出力装置110は、例えば、頭部装着型ディスプレイ(HMD:Head_Mounted_Display)などと呼ばれるものである。
【0016】
具体的に、頭部装着型画像入出力装置110は、現実物体であるモックアップ150の現実画像(映像)の入力を行う画像入力部111と、現実画像と仮想物体の画像(映像)とを合成した合成画像を表示する画像表示部112とを備えて構成されている。より詳細には、頭部装着型画像入出力装置110は、画像入力部111及び画像表示部112が、それぞれ、右目用、左目用に2セットずつ組み込まれて構成されている。また、頭部装着型画像入出力装置110には、磁気センサ161が取り付けられている。
【0017】
位置・姿勢計測装置120は、磁気センサ161及び162からの入力に基づいて、頭部装着型画像入出力装置110を装着した観察者やモックアップ150の位置・姿勢を計測する。ここで、観察者の位置・姿勢(視点位置や視線方向を含む)は、頭部装着型画像入出力装置110の位置・姿勢に相当するものとして計測される。
【0018】
情報処理装置130は、画像処理システム100における動作を統括的に制御するものである。具体的に、情報処理装置130は、例えば、位置・姿勢計測装置120からの位置・姿勢情報に合わせたCG画像を生成し、これを画像入力部111から入力した画像(現実画像)に重畳して、合成画像を生成する処理を行う。そして、この場合、情報処理装置130は、生成した合成画像を画像表示部112に出力する。
【0019】
CADシステム141は、製品等の設計データを生成する処理等を行う。モックアップシステム142は、モックアップ150の作成用のモックアップデータを生成する処理等を行う。CADシステム141、モックアップシステム142及びDMRシステム143は、ネットワークを介して情報処理装置130に接続されており、必要に応じて、種々のデータの送受信を行う。なお、図1に示す例では、CADシステム141、モックアップシステム142及びDMRシステム143は、独立したシステムとして設けられている例が示されているが、例えば、1つのシステムの中にそれぞれの機能が設けられている形態であってもよい。更には、情報処理装置130の中に、それぞれのアプリケーションソフトとして構成し、各アプリケーションソフトを動作させることによって実現させるようにしてもよい。
【0020】
モックアップ150は、現実物体であり、このモックアップ150には、画像入力部111により入力された画像(現実画像)から、モックアップ150の位置・姿勢を求める際に利用されるマーカー151が付されている。また、モックアップ150には、磁気センサ162が取り付けられている。
【0021】
具体的に、モックアップ150は、モックアップシステム142で生成されたモックアップデータに基づき、モックアップ製作者により製作された現実物体である。図1に示す例では、モックアップ150としてカメラを適用した例を示すが、他の現実物体を適用することができ、また、本実施形態の画像処理システム100による画像処理方法は、モックアップ150の種類や大きさ等には関係なく適用することができる。
【0022】
磁気トランスミッタ160は、磁場を発生させるものである。磁気センサ161及び162は、磁気トランスミッタ160が発生させた磁場の変化を計測するためのセンサである。磁気センサ161は、上述したように、頭部装着型画像入出力装置110に取り付けられており、磁気センサ162は、モックアップ150に取り付けられている。そして、位置・姿勢計測装置120は、磁気センサ161及び162の計測結果から、その位置・姿勢を求めることにより、それぞれ、頭部装着型画像入出力装置110及びモックアップ150の位置・姿勢を計測する。
【0023】
次に、図1に示す情報処理装置130、CADシステム141、モックアップシステム142及びDMRシステム143の内部の構成について説明する。
図2は、図1に示す情報処理装置130、CADシステム141、モックアップシステム142及びDMRシステム143の内部のハードウェア構成の一例を示す模式図である。
【0024】
図2に示すように、各装置(130、141〜143)は、CPU201、RAM202、ROM203、外部メモリ204、情報入力部205、表示部206、通信I/F部207、及び、バスの各ハードウェア構成を有して構成されている。
【0025】
CPU201は、当該装置における動作を統括的に制御するものであり、バスを介して、当該装置の各構成部(202〜207)を制御する。
【0026】
RAM202は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して、ROM203から必要なプログラム2031等をRAM202にロードし、当該プログラム2031等を実行することで、当該装置の各種の機能動作を実現する。
【0027】
ROM203には、CPU201が処理を実行するために必要なプログラム2031等が記憶されている。なお、プログラム2031は、外部メモリ204に記憶されていてもよい。
【0028】
外部メモリ204には、例えば、CPU201がプログラム2031等を用いた処理を行う際に必要な各種のデータや各種の情報等が記憶されている。また、外部メモリ204には、例えば、CPU201がプログラム2031等を用いた処理を行うことにより得られた各種のデータや各種の情報等が記憶される。
【0029】
情報入力部205は、当該装置に対して、情報の入力を行なうものである。表示部206は、CPU201の制御に基づいて、必要に応じて、各種の情報や各種のデータを表示するものである。
【0030】
通信I/F部207は、外部装置との通信を司るものである。バスは、CPU201と、RAM202、ROM203、外部メモリ204、情報入力部205、表示部206及び通信I/F部207を通信可能に接続するためのものである。
【0031】
図3は、図1に示す画像処理システム100において、情報処理装置130、CADシステム141及びモックアップシステム142の間のデータの流れの一例を示す模式図である。
【0032】
CADシステム141で生成された設計データは、情報処理装置130の内部のデータ管理部300に設計データ301及び303として保存される。ここで、図3に示すデータ管理部300は、例えば、図2に示す情報処理装置130の外部メモリ204に構成される。
【0033】
設計データ303は、設計データ301と同じ製品を対象とした設計データであるが、設計や開発過程において部品点数が異なり、設計データの管理上、設計データ301とは別のバージョンで扱われる設計データを示している。
【0034】
派生データ302は、設計データ301から派生して生成されるデータの一例を示しており、派生データ304は、設計データ303から派生して生成されるデータの一例を示している。この派生データ302及び304としては、モックアップシステム142によるモックアップ150の形状を示すモックアップ形状データや、接触判定を行うための接触判定用データ、頭部装着型画像入出力装置110に表示する際に使用する表示用データがある。上述した各派生データは、本実施形態において必ずしも必須ではない。この場合、設計データ301及び303を流用できる場合もあれば、接触判定用データと表示用データとを兼用するなど、派生データ間において流用することも可能である。また、図3に示すモックアップ150としては、自動車を適用した例が示されており、以降の説明では、モックアップ150として自動車を適用した例で説明を行う。
【0035】
データ管理部300の設計データ及び派生データは、管理テーブルを用いて管理される。図4は、図3に示すデータ管理部300の設計データ及び派生データを管理するための管理テーブルの一例を示す模式図である。
【0036】
図4には、設計データID、差分データID、モックアップ生成データID、モックアップ識別番号ID、モックアップ形状データID、ターゲットID、表示用データID、接触判定用データID、接触判定用データ(差分)IDの各データが示されている。
【0037】
また、モックアップ150は、磁気センサ162やマーカー151により、個別に識別可能である。本実施形態の画像処理システム100(複合現実感提示システム)では、管理テーブルにおいてこれらのモックアップ150にもIDつけて、派生元となる設計データとのバージョン、及び、使用できる設計データのバージョンとも対応付けて使用することができる。
【0038】
(位置姿勢に応じた画像表示と接触判定)
次に、本実施形態の頭部装着型画像入出力装置110とモックアップ150のそれぞれの位置・姿勢に応じた画像表示等の画像処理について、図5のフローチャートを用いて説明する。
【0039】
図5は、本発明の実施形態に係る画像処理システム100による画像処理方法の一例を示すフローチャートである。なお、以下の説明では、画像処理方法として、特に、頭部装着型画像入出力装置110を装着した観察者が、モックアップ150を見る場合の画像表示処理と接触判定処理について説明する。また、データ管理部300及び図4の管理テーブルで管理されている複数の設計データのうち、現実物体であるモックアップ150の作成に係る設計データを第1の設計データとする。
【0040】
まず、ステップS101において、例えば情報処理装置130のCPU201は、例えば情報処理装置130の情報入力部205からの入力指示に応じて、観察者がMR体験中に表示する、仮想物体に係る設計データ(第2の設計データ)を設定する。この際、例えば、設計データをデータ管理部300に設定する。このステップS101の設定時には、事前に記録されているモックアップ150に対し、表示する設計データとバージョンを指定する。この指定方法は、設計データとバージョンとが一意に特定でき、情報処理装置130の管理により、派生データ及びモックアップと対応付けられた各データと対応づけられる方法であれば、どのような方法でもよい。また、このステップS101の設定は、システムの起動開始前の初期値であってもよいし、起動中の設定変更であってもよい。
【0041】
続いて、ステップS102において、例えば情報処理装置130のCPU201は、画像入力部111から入力された画像に基づく現実空間に配置されたマーカー151の位置等や、位置・姿勢計測装置120の計測結果に基づいて、頭部装着型画像入出力装置110及びモックアップ150の位置・姿勢を計測する。この際、情報処理装置130においては、モックアップ150の位置・姿勢情報は、どのモックアップ150に対する位置及び姿勢であるのかをID別に区別されている。
【0042】
続いて、ステップS103において、例えば情報処理装置130のCPU201は、ステップS102で得られた位置・姿勢情報に基づいて、モックアップ150と他の仮想物体との接触判定を行う。この際、接触判定の手法は、様々な手法があるが、本実施形態では、一般的に3Dの形状を表示するサーフェスモデルを扱えるような接触判定方法であれば、どのような判定方法を適用しても実施できる。このとき、仮想物体が、モックアップ150または別の仮想物体にめり込まないように、仮想物体の位置を調整する。なお、各物体の接触を音声や表示で通知するなど、接触判定に伴う処理もこのステップで実施される。
【0043】
続いて、ステップS104において、例えば情報処理装置130のCPU201は、ステップS103の判定結果に基づいて、観察者に複合現実感(MR)を提示するために、3次元の仮想データから2次元の表示画像データ(表示用CG画像データ)を生成する。ここでは、例えば、ステップS103の判定処理で仮想物体の位置の調整等がなされた場合には、これを考慮して画像データが生成される。
【0044】
続いて、ステップS105において、例えば情報処理装置130のCPU201は、ステップS104で生成した表示画像データ(表示用CG画像データ)と、画像入力部111により撮影された現実空間の画像データ(現実画像データ)を合成する処理を行う。そして、例えば情報処理装置130のCPU201は、合成により得られた合成画像データに基づく合成画像を頭部装着型画像入出力装置110の画像表示部112に表示する処理を行う。
【0045】
続いて、ステップS106において、例えば情報処理装置130のCPU201は、モックアップ150に重畳する設計データのバージョンの変更や、表示用データ、接触判定用データの変更など、MR体験に関連する設定変更があるか否かを判断する。このステップS106の判断は、例えば、情報処理装置130の情報入力部205から、上述した設定変更の指示がなされているか否か等に基づいて行われる。
【0046】
ステップS106の判断の結果、MR体験に関連する設定変更がある場合には(S106/YES)、ステップS107に進む。
【0047】
ステップS107に進むと、例えば情報処理装置130のCPU201は、当該設定変更の内容に応じて、図4に示す管理テーブルの各データを適切に選択して、設定変更に対応したデータの準備を行う。
【0048】
ステップS107の処理が終了した場合、或いは、ステップS106でMR体験に関連する設定変更がないと判断された場合には(S106/NO)、ステップS108に進む。
【0049】
ステップS108に進むと、例えば情報処理装置130のCPU201は、例えば、情報処理装置130の情報入力部205からの入力指示に基づいて、処理を終了するか否かを判断する。
【0050】
ステップS108の判断の結果、処理を終了しない場合には(S108/NO)、ステップS102に戻り、ステップS102以降の処理を再度繰り返し行う。
【0051】
一方、ステップS108の判断の結果、処理を終了する場合には(S108/YES)、図5に示すフローチャートの処理を終了する。
【0052】
(設計データ等の準備)
例えば、図5のステップS107等における管理テーブルの各データの準備について、図4を参照して以下に説明する。
【0053】
図4に示す管理テーブルには、CADシステム141で生成された設計データのバージョンごとに、IDをつけて記憶される。なお、本実施形態では、設計データのバージョンの識別方法や、バージョン管理方法には依存しないが、設計データからモックアップ150を生成するような比較的メジャーなバージョンアップ時にリリースされる設計データのバージョンと、モックアップ150を生成しない変更分のみを反映させた設計データのバージョン(バージョンアップ)とは区別されて管理される。本実施形態の管理テーブルの一例では、モックアップ150の製作の有無と、バージョン情報の有無で表されている。
【0054】
まず、始めに、モックアップ150が生成される設計データの場合のデータの準備について説明する。
【0055】
通常、モックアップ150は、設計データをもとに生成されるが、モックアップ150の製作上、設計データより、その内部の省略や隙間を埋めるなど、モックアップ用に簡略化された設計データが作成され、このモックアップ生成用データをもとに製作される。例えば情報処理装置130のCPU201は、この場合の設計データにもIDを付加し、派生元である設計データのIDに対応づけて記録する。
【0056】
また、例えば情報処理装置130のCPU201は、製作されたモックアップ150に対しても、システム内で識別するためのIDを付加し、3次元スキャナなどで製作後のモックアップ150の形状を計測する処理を行う。そして、例えば情報処理装置130のCPU201は、このモックアップ形状データにも個別のIDをつけ、派生元の設計データIDに対応づけて保存する。なお、本実施形態においては、3次元スキャナなどの計測ができない場合は、モックアップ生成用の設計データをモックアップの形状データとして扱うことも可能である。
【0057】
続いて、例えば情報処理装置130のCPU201は、設計データのバージョンに応じた表示用データを生成する。一般的に、CADシステム141で生成されるデータは、ソリッドモデルの3次元データとして作成されているが、表示用データを生成する際には、表示に適切なデータに変換、例えばVRMLのようなサーフェスモデルのデータに変換する。また、例えば情報処理装置130のCPU201は、モックアップ150の形状データから、モックアップ150と他の仮想物体との接触判定に用いる接触判定用データを作成し、IDをつけて関連付けて保存する。
【0058】
また、これらのデータ準備とは別に、例えば情報処理装置130のCPU201は、磁気センサのターゲットIDをモックアップ150に対し、関連付けて記録する。例えば、各モックアップの識別にマーカー151のIDを用いる場合には、モックアップ製作後、個別のIDをもつマーカー151をモックアップ150に貼る。そして、例えば情報処理装置130のCPU201は、マーカー151や位置・姿勢計測装置120を用いて、位置・姿勢の計測時に、各モックアップに対応した適切なデータを検索できるようにする。
【0059】
次に、モックアップ150を生成しない設計データの場合のデータの準備について説明する。
【0060】
例えば情報処理装置130のCPU201は、設計データのリリース時に、以前の設計データのうち、重畳表示可能なモックアップをもつ、以前のバージョンの設計データを検索し、これらの設計データの差分データの作成を行う。
【0061】
ここで、差分データの第1の作成方法としては、リリース時の設計データと、検索されたモックアップをもつ設計データとの差分をとることで作成することができる。この差分データの作成は、CADシステム141のデータ中のシーングラフデータのノードの差、例えば、設計データ中の部品ごとのユニットの増加であれば、その部品に対応するシーングラフのノードの差をとる方法で作成することができる。また、同一の部品に対し、形状が追加される場合には、ソリッドモデルのブーリアン演算で作成することができる。このとき、部品の削減がある場合は、削減された部分を別の形状データとして保存することもできる。
【0062】
差分データの第2の作成方法としては、モックアップ150の設計データを用いる方法である。モックアップの作成に用いたモックアップ用設計データから、第1の方法と同様の手順で差分データを作成することができる。
【0063】
差分データの第3の作成方法としては、3次元スキャナなどで取得したモックアップのソリッドモデルでは、ブーリアン演算と、新たな設計データのうち、モックアップの形状の外側にある部品を追加部品として判定して、差分データを作成することも可能である。
【0064】
(接触判定処理)
次に、例えば、図5のステップS103における接触判定処理について、図4及び図6を参照して以下に説明する。
【0065】
図6は、図5のステップS103における接触判定処理の詳細な処理手順の一例を示すフローチャートである。
【0066】
図5のステップS103における接触判定処理が開始されると、まず、図6のステップS201において、例えば情報処理装置130のCPU201は、表示する設計データの設定を取得する処理を行う。具体的に、ステップS201では、データ管理部300から、現在の表示設定であってモックアップ150への重畳表示が設定されている該当バージョンの設計データの識別子を取得する。この識別子は、アプリケーション固有の表示や識別子でも構わないが、図4に示す管理テーブルの各設計データのIDと対応付けられる識別子である。
【0067】
続いて、ステップS202において、例えば情報処理装置130のCPU201は、モックアップ150の位置・姿勢情報と、モックアップ150に係るIDを取得する処理を行う。具体的に、ステップS202では、画像入力部111から入力された現実画像のマーカー151や位置・姿勢計測装置120によって計測されたモックアップ150の位置・姿勢情報に基づいて、当該取得の処理を行う。
【0068】
続いて、ステップS203において、例えば情報処理装置130のCPU201は、ステップS202で取得したモックアップ150に係るIDを用いて、図4の管理テーブルから、派生元の設計データのIDを検索する。そして、例えば情報処理装置130のCPU201は、検索した設計データが、現在、表示が設定されている設計データのバージョンと同一バージョンであるか否かを判断する。具体的に、同一バージョンであるか否かは、モックアップ150の設計データ(第1の設計データ)と、表示する設計データ(第2の設計データ)とに差分がないか否かにより判断される。
【0069】
ステップS203の判断の結果、同一バージョンでない場合、即ち、表示する設計データとモックアップ150の設計データに差分がある場合には(S203/YES)、ステップS204に進む。
【0070】
ステップS204に進むと、例えば情報処理装置130のCPU201は、図4の管理テーブルに基づいて、モックアップ150製作時の設計データと、設定されている設計データとの差分データを検索する。
【0071】
続いて、ステップS205において、例えば情報処理装置130のCPU201は、図4の管理テーブルに基づいて、ステップS204で検索した差分データに対応した接触判定用データを検索する。
【0072】
続いて、ステップS206において、例えば情報処理装置130のCPU201は、図4の管理テーブルに基づいて、現在、計測中のモックアップ150の接触判定用データを検索する。
【0073】
続いて、ステップS207において、例えば情報処理装置130のCPU201は、S204で検索した差分データと、S205及びS206で検索した2つの接触判定用データを用いて、モックアップ150と他の仮想物体との接触の判定を行う。この際、本実施形態では、S205及びS206で検索した2つの接触判定用データを1つのモックアップの接触判定用データとして使用し、モックアップ150の内部の冗長な判定処理は除き、その表面のみが他の仮想物体と接触していないかの判定を行う。ただし、一体として扱うモデルであるため、モックアップ150の接触判定用データと、差分データ用の接触判定用データとの接触判定は行わない。このように差分データ分の接触判定処理との組合せにより、システム負荷の小さい接触判定処理でありながら、必要な仮想物体とモックアップとの接触判定のすべての実施を両立させるようにしている。
【0074】
一方、ステップS203の判断の結果、同一バージョンである場合、即ち、表示する設計データとモックアップ150の設計データに差分がない場合には(S203/NO)、ステップS208に進む。
【0075】
ステップS208に進むと、例えば情報処理装置130のCPU201は、モックアップ150用の接触判定用データを使用して、モックアップ150と他の仮想物体との接触の判定を行う。
【0076】
ステップS207及びステップS208の処理が終了した場合には、ステップS209に進む。
【0077】
ステップS209に進むと、例えば情報処理装置130のCPU201は、ステップS207またはステップS208における接触判定の結果、モックアップ150と他の仮想物体との接触があったか否かを判断する。
【0078】
ステップS209の判断の結果、モックアップ150と他の仮想物体との接触があった場合には(S209/YES)、ステップS210に進む。
【0079】
ステップS210に進むと、例えば情報処理装置130のCPU201は、モックアップ150と他の仮想物体との接触に伴うユーザへの通知(表示、音声、振動などによる通知)等の処理を行う。また、物理シミュレーションのように、物体が別の物体にめり込まないようにする、などの接触時固有の位置、姿勢の補正があれば、このステップS210で実施する。
【0080】
続いて、ステップS211において、例えば情報処理装置130のCPU201は、ステップS210における接触時の処理を踏まえた表示用データの準備(例えば、位置、姿勢の補正、接触部の表示変更)を行う。
【0081】
ステップS211の処理が終了した場合、或いは、ステップS209でモックアップ150と他の仮想物体との接触がなかったと判断された場合には(S209/NO)、図6に示すフローチャートの処理を終了する。
【0082】
このように、本実施形態では、現実空間に配置してある簡易試作物であるモックアップ150の仮想空間における3次元位置情報を計測し、その計測結果と接触判定結果に応じた表示をシステムの負荷を抑えながら実施することができる。
【0083】
(自動車のオプションパーツの実施例)
次に、頭部装着型画像入出力装置110を用いて、デザインレビュー(DMR)を行う際の表示処理を図7〜図9を用いて以下に説明する。
【0084】
図7は、本発明の実施形態を示し、現実空間上に配置されたモックアップ150の画像と、当該モックアップ150に表示用データを重畳表示した画像の一例を示す模式図である。
【0085】
具体的に、図7(a)は、画像入力部111により撮影されたモックアップ150の画像を表示した例である。また、図7(b)は、モックアップ150に対して、当該モックアップ150と同じバージョンの設計データの表示用データ1500を重畳(合成)させた画像を表示した例である。ここで、図7(b)に示す画像は、頭部装着型画像入出力装置110の画像表示部112に表示される画像を示している。
【0086】
図7(b)に示す表示用データ1500は、モックアップ150の生成時の設計データから生成された表示用データであるため、重畳表示した場合には、モックアップ150の形状と一致している。
【0087】
ここで、設計が進み、設計データに自動車のオプションパーツとして、トランクの設計データとリヤウイングの設計データとがCADシステム141で更新され、新たなモックアップは生成されなかった場合について説明する。この場合、図4に示す管理テーブルの設計データIDは、新しい設計データのIDに更新される。そして、このバージョンの設計データでは、モックアップ150が生成されていないため、モックアップ識別番号IDと、モックアップ形状データID、モックアップを識別するターゲットIDは、生成されない。また、差分データIDとしては、トランクとリヤウイングの設計データにIDを付けて登録される。この差分データに対応して、差分の接触判定用データが生成され、これが接触判定用データID(差分)として登録される。
【0088】
図8は、図7(b)に示す表示用データ1500に対して、差分データを追加した表示用データの一例を示す模式図である。図8に示す表示用データには、図7(b)に示す表示用データ1500に対して、差分データとして、リヤウイングの表示用データ1501と、トランクの表示用データ1502が追加され、重畳表示されたものである。
【0089】
ここで、本実施形態における表示処理では、リヤウイングの表示用データ1501とトランクの表示用データ1502を含む表示用データを用いる。一方、本実施形態における接触判定処理では、モックアップ150の形状データと、リヤウイング、トランクの接触判定用データを用いて、接触判定を行う。即ち、モックアップ150の内部に関しては、設計データ中のモックアップ内部の部品にも対応した接触判定用データではなく、モックアップ150の形状の表面に対応した接触判定用データを使用する。このようにして、本実施形態では、モックアップ150の内部のデータを衝突判定対象から外す。
【0090】
また、設計データの差分であるトランクとリヤウイングに対応した接触判定用データを用い、かつ、モックアップ150と差分データの衝突判定を行わないことにより、冗長な衝突判定処理を大幅に削減する。
【0091】
図9は、本発明の実施形態を示し、複合現実感(MR)の体験中に接触判定を行う場合の表示の一例を示す模式図である。
例えば、仮想データの特徴であるデータ変更の容易さを維持したまま、図9に示すように、リヤウイングの付いたバックドアを開けた場合のように、実寸大のスケールで体感的に車を感じながら、検討中のパーツであるトランク及びリヤウイングの形状や可動部を体感的に検討したり、接触判定したりすることができることから、実物同様の可動範囲の確認を行うことができる。
【0092】
以上のように、各データを使い分けた衝突判定処理を伴う画像処理(複合現実感提示処理)を行うことで、検討対象である新たな設計データに関しては、衝突判定を実施することができる。さらに、現実物体のモックアップ150によりリアルな体験や確認を伴いながら、観察者は、全部品の衝突判定を行うよりもはるかにシステムの負荷が小さい複合現実感を体験することができる。
【0093】
さらに、図4に示す管理テーブルのIDを切り替えることにより、自動車のモックアップ用の表示用データ1500及び接触判定用データのみをモックアップ150に対して重畳表示する場合と、トランク及びリヤウインを伴う表示、接触判定用データをデザインレビュー内で瞬時に切り替えることができる。
【0094】
また、同じ形状のモックアップ150が複数存在する場合には、現実物体であるモックアップ150を複数並べ、モックアップ識別番号IDと各データの対応を切り替えて表示、接触判定を実施するようにする。これにより、複数の現実物体に対し、異なるバージョンの設計データに応じたMR表示と、接触判定を自動的に割り当てて、各バージョンを比較検討も実施できる。
【0095】
なお、本実施形態では、観察者が視認する画像入出力装置としてHMDからなる頭部装着型画像入出力装置110を適用する例で説明を行ったが、これに限定されるものではない。例えば、観察者が視認する画像入出力装置として、観察者の頭部に装着せずに当該画像入出力装置を固定配置するなど他の手段で実現する形態であってもよい。
【0096】
本発明の実施形態によれば、接触判定(図5のS103、図6)の判定結果に基づいて仮想物体の画像を生成するようにしたので、現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現することができる。このシステムの負荷の軽減により、従来では、設計が進み部品の組み合わせ数の増加や大型製品の設計データに接触判定処理を併用することが困難であったケースまでにも、利用範囲を拡大した画像処理システム(複合現実感提示装置)を提供することができる。
【0097】
(本発明の他の実施形態)
前述した本発明の実施に係る画像処理システム100による画像処理方法を示す図5及び図6の各ステップは、コンピュータのCPU(201)がROMなどに記憶されたプログラム(2031)を実行することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【0098】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
【0099】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図5及び図6に示すフローチャートに対応したプログラム)を、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【0100】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0101】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
【0102】
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
【0103】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【0104】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0105】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0106】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0107】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【0108】
なお、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【0109】
【図1】本発明の実施形態に係る画像処理システムの概略構成の一例を示す模式図である。
【図2】図1に示す情報処理装置、CADシステム、モックアップシステム及びDMRシステムの内部のハードウェア構成の一例を示す模式図である。
【図3】図1に示す画像処理システムにおいて、情報処理装置、CADシステム及びモックアップシステムの間のデータの流れの一例を示す模式図である。
【図4】図3に示すデータ管理部の設計データ及び派生データを管理するための管理テーブルの一例を示す模式図である。
【図5】本発明の実施形態に係る画像処理システムによる画像処理方法の一例を示すフローチャートである。
【図6】図5のステップS103における接触判定処理の詳細な処理手順の一例を示すフローチャートである。
【図7】本発明の実施形態を示し、現実空間上に配置されたモックアップの画像と、当該モックアップに表示用データを重畳表示した画像の一例を示す模式図である。
【図8】図7(b)に示す表示用データに対して、差分データを追加した表示用データの一例を示す模式図である。
【図9】本発明の実施形態を示し、複合現実感(MR)の体験中に接触判定を行う場合の表示の一例を示す模式図である。
【符号の説明】
【0110】
100 画像処理システム
110 頭部装着型画像入出力装置
111 画像入力部
112 画像表示部
120 位置・姿勢計測装置
130 情報処理装置
141 CADシステム
142 モックアップシステム
143 DMRシステム
150 モックアップ
160 磁気トランスミッタ
161、162 磁気センサ

【特許請求の範囲】
【請求項1】
現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段と、
前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定手段と、
前記接触判定手段の判定結果に基づいて、前記仮想物体の画像を生成する生成手段と、
前記画像入力部から入力された現実画像と前記生成手段で生成された仮想物体の画像とを合成する合成手段と、
前記合成手段で合成された合成画像を前記画像表示部に表示する表示手段と
を有することを特徴とする画像処理システム。
【請求項2】
複数の設計データを含むデータを管理する管理手段を更に有し、
前記接触判定手段は、前記複数の設計データのうち、前記モックアップの作成に係る第1の設計データと、前記仮想物体に係る第2の設計データの識別を行い、前記第2の設計データが前記第1の設計データとは形状の異なるバージョンである場合に、前記第2の設計データによる前記仮想物体のうち、前記モックアップの外にある仮想物体と当該モックアップとの接触判定を行うことを特徴とする請求項1に記載の画像処理システム。
【請求項3】
前記接触判定手段は、前記第1の設計データと前記第2の設計データとの差分を差分データとして識別し、前記差分データに応じて、前記接触判定を行うことを特徴とする請求項2に記載の画像処理システム。
【請求項4】
前記管理手段では、前記差分データを前記設計データのバージョンごとに対応付けて管理することを特徴とする請求項3に記載の画像処理システム。
【請求項5】
現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段を具備する画像処理システムの画像処理方法であって、
前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定ステップと、
前記接触判定ステップの判定結果に基づいて、前記仮想物体の画像を生成する生成ステップと、
前記画像入力部から入力された現実画像と前記生成ステップで生成された仮想物体の画像とを合成する合成ステップと、
前記合成ステップで合成された合成画像を前記画像表示部に表示する表示ステップと
を有することを特徴とする画像処理方法。
【請求項6】
複数の設計データを含むデータを管理する管理ステップを更に有し、
前記接触判定ステップでは、前記複数の設計データのうち、前記モックアップの作成に係る第1の設計データと、前記仮想物体に係る第2の設計データの識別を行い、前記第2の設計データが前記第1の設計データとは形状の異なるバージョンである場合に、前記第2の設計データによる前記仮想物体のうち、前記モックアップの外にある仮想物体と当該モックアップとの接触判定を行うことを特徴とする請求項5に記載の画像処理方法。
【請求項7】
前記接触判定ステップでは、前記第1の設計データと前記第2の設計データとの差分を差分データとして識別し、前記差分データに応じて、前記接触判定を行うことを特徴とする請求項6に記載の画像処理方法。
【請求項8】
前記管理ステップでは、前記差分データを前記設計データのバージョンごとに対応付けて管理することを特徴とする請求項7に記載の画像処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate