(57)【要約】【課題】  現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現する。【解決手段】  現実物体であるモックアップ１５０の現実画像の入力を行う画像入力部１１１と、現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部１１２とを備える頭部装着型画像入出力装置１１０を備え、情報処理装置１３０では、モックアップ１５０および頭部装着型画像入出力装置１１０の位置・姿勢情報に基づいて、モックアップ１５０と仮想物体との接触に係る接触判定を行い、当該接触判定の判定結果に基づいて仮想物体の画像を生成し、画像入力部１１１から入力された現実画像と生成した仮想物体の画像とを合成し、合成した合成画像を画像表示部１１２に表示する。【選択図】  図１
2010146285.tif 000002
【特許請求の範囲】
【請求項１】
現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段と、
前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定手段と、
前記接触判定手段の判定結果に基づいて、前記仮想物体の画像を生成する生成手段と、
前記画像入力部から入力された現実画像と前記生成手段で生成された仮想物体の画像とを合成する合成手段と、
前記合成手段で合成された合成画像を前記画像表示部に表示する表示手段と
を有することを特徴とする画像処理システム。
【請求項２】
複数の設計データを含むデータを管理する管理手段を更に有し、
前記接触判定手段は、前記複数の設計データのうち、前記モックアップの作成に係る第１の設計データと、前記仮想物体に係る第２の設計データの識別を行い、前記第２の設計データが前記第１の設計データとは形状の異なるバージョンである場合に、前記第２の設計データによる前記仮想物体のうち、前記モックアップの外にある仮想物体と当該モックアップとの接触判定を行うことを特徴とする請求項１に記載の画像処理システム。
【請求項３】
前記接触判定手段は、前記第１の設計データと前記第２の設計データとの差分を差分データとして識別し、前記差分データに応じて、前記接触判定を行うことを特徴とする請求項２に記載の画像処理システム。
【請求項４】
前記管理手段では、前記差分データを前記設計データのバージョンごとに対応付けて管理することを特徴とする請求項３に記載の画像処理システム。
【請求項５】
現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段を具備する画像処理システムの画像処理方法であって、
前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定ステップと、
前記接触判定ステップの判定結果に基づいて、前記仮想物体の画像を生成する生成ステップと、
前記画像入力部から入力された現実画像と前記生成ステップで生成された仮想物体の画像とを合成する合成ステップと、
前記合成ステップで合成された合成画像を前記画像表示部に表示する表示ステップと
を有することを特徴とする画像処理方法。
【請求項６】
複数の設計データを含むデータを管理する管理ステップを更に有し、
前記接触判定ステップでは、前記複数の設計データのうち、前記モックアップの作成に係る第１の設計データと、前記仮想物体に係る第２の設計データの識別を行い、前記第２の設計データが前記第１の設計データとは形状の異なるバージョンである場合に、前記第２の設計データによる前記仮想物体のうち、前記モックアップの外にある仮想物体と当該モックアップとの接触判定を行うことを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記接触判定ステップでは、前記第１の設計データと前記第２の設計データとの差分を差分データとして識別し、前記差分データに応じて、前記接触判定を行うことを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記管理ステップでは、前記差分データを前記設計データのバージョンごとに対応付けて管理することを特徴とする請求項７に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の処理を行う画像処理システム及び画像処理方法に関するものである。
【背景技術】
【０００２】
従来から、設計・製造分野等において、計算機システム上での設計業務が行われている。その手順としては、一般的に、まず、３次元ＣＡＤシステム上で基本設計が行われる。通常、３次元ＣＡＤシステムを使って物体の形状やデザインなどの設計業務を行う場合、設計データは、一般的に、それぞれの３次元ＣＡＤシステム固有のソリッドデータとして保存される。そして、同時に、３次元ＣＡＤシステムで設計された製品の操作性・メンテナンス、組み立て上の問題を検証するために、ラピッド・プロトタイピングの手法や、アルミ部材・発泡樹脂素材を用いた簡易試作品（モックアップ）のような現実物体の試作品を作成する。
【０００３】
この現実物体や仮想物体のデータを用いたデザインレビュー（ＤＭＲ：Ｄｉｇｉｔａｌ＿Ｍｏｃｋｕｐ＿Ｒｅｖｉｅｗ）の実施においては、仮想物体のデータだけでなく、現実物体であるモックアップも併用される。そして、従来、現実物体の現実画像に仮想物体の画像を重畳表示し、現実にはない仮想物体を可視化して提示する複合現実感（ＭＲ：Ｍｉｘｅｄ＿Ｒｅａｌｉｔｙ）提示装置が提案されている（例えば、下記の特許文献１参照）。この複合現実感提示装置を用いたＤＭＲでは、製品における基本ユニット部分の現実物体のモックアップ上に、設計検討中の部品やオプションの部品等の仮想物体を組み合わせた画像表示が実施可能である。このように現実物体であるモックアップを設計変更のたびに作成しなくても、仮想物体の画像との重畳表示、及び、仮想物体と現実物体の接触を検知できる接触判定機能を併用することにより、設計上、デザイン上の問題点を早期に発見可能である。
【０００４】
【特許文献１】特開２００３−２１５４９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の複合現実感提示装置（画像処理システム）では、現実物体（モックアップ）と部分的に仮想物体とで構成された、仮想・現実の混合した部品をＤＭＲでＭＲ表示するような場合には、現実物体の内部を区別して処理することができなかった。例えば、仮想物体及び現実物体が混合した部品の接触判定処理を行う場合、不要なモックアップの内部の接触判定処理も同時に行うことしかできなかった。このように、従来の技術では、重畳表示する対象となる現実物体であっても、そのモックアップの内側及び外側を区別して認識することができず、モックアップの外側の仮想物体だけに適用する処理と内側に適用する処理とを判断することができなかった。
【０００６】
一般に、仮想物体の接触判定処理は、表示等に用いる描画用シーングラフの一機能としても利用可能であるが、仮想物体の接触判定処理を行うシステムの負荷は、依然として、システム全体の処理を遅くするほどの高い負荷となっている。そして、この場合、接触判定の処理方法に応じて負荷を抑えるような接触判定用データを生成して利用する場合であっても、当該システムの負荷は、かなり高いものとなる。
【０００７】
そのため、従来、モックアップを使用したＤＭＲのように現実物体と仮想物体を混合した１つの製品（部品）をＭＲ表示する場合には、システムの負荷を軽減すべく、冗長な処理を少しでも削減してレビューの目的に必要最小限の処理に留めることが望まれていた。
【０００８】
本発明は、このような問題点に鑑みてなされたものであり、現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現する画像処理システム及び画像処理方法を適用することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の画像処理システムは、現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段と、前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定手段と、前記接触判定手段の判定結果に基づいて、前記仮想物体の画像を生成する生成手段と、前記画像入力部から入力された現実画像と前記生成手段で生成された仮想物体の画像とを合成する合成手段と、前記合成手段で合成された合成画像を前記画像表示部に表示する表示手段とを有する。
【００１０】
本発明の画像処理方法は、現実物体であるモックアップの現実画像の入力を行う画像入力部と、前記現実画像と仮想物体の画像とを合成した合成画像を表示する画像表示部とを備える画像入出力手段を具備する画像処理システムの画像処理方法であって、前記モックアップおよび前記画像入出力手段の位置・姿勢情報に基づいて、前記モックアップと前記仮想物体との接触に係る接触判定を行う接触判定ステップと、前記接触判定ステップの判定結果に基づいて、前記仮想物体の画像を生成する生成ステップと、前記画像入力部から入力された現実画像と前記生成ステップで生成された仮想物体の画像とを合成する合成ステップと、前記合成ステップで合成された合成画像を前記画像表示部に表示する表示ステップとを有する。
【発明の効果】
【００１１】
本発明によれば、現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現することができる。
【発明を実施するための最良の形態】
【００１２】
以下に、図面を参照しながら、本発明を実施するための最良の形態（実施形態）について説明する。
【００１３】
（システム構成）
まず、本発明の実施の形態を実現するシステム（本例では、画像処理システム）の構成について説明する。
図１は、本発明の実施形態に係る画像処理システム１００の概略構成の一例を示す模式図である。ここで、図１に示す画像処理システム１００は、設計データから生成されたモックアップの画像（現実画像）と仮想物体の画像（ＣＧ画像）とを重畳して表示する複合現実感提示システムを構成するものである。
【００１４】
画像処理システム１００は、図１に示すように、頭部装着型画像入出力装置１１０と、位置・姿勢計測装置１２０と、情報処理装置１３０と、ＣＡＤシステム１４１と、モックアップシステム１４２と、ＤＭＲシステム１４３を有して構成されている。さらに、画像処理システム１００は、図１に示すように、モックアップ１５０と、磁気トランスミッタ１６０と、磁気センサ１６１及び１６２を有して構成されている。
【００１５】
頭部装着型画像入出力装置１１０は、観察者が頭部に装着して現実空間の画像（映像）と仮想空間の画像（映像）とを合成した合成画像（合成映像）を観察するための装置である。この頭部装着型画像入出力装置１１０は、例えば、頭部装着型ディスプレイ（ＨＭＤ：Ｈｅａｄ＿Ｍｏｕｎｔｅｄ＿Ｄｉｓｐｌａｙ）などと呼ばれるものである。
【００１６】
具体的に、頭部装着型画像入出力装置１１０は、現実物体であるモックアップ１５０の現実画像（映像）の入力を行う画像入力部１１１と、現実画像と仮想物体の画像（映像）とを合成した合成画像を表示する画像表示部１１２とを備えて構成されている。より詳細には、頭部装着型画像入出力装置１１０は、画像入力部１１１及び画像表示部１１２が、それぞれ、右目用、左目用に２セットずつ組み込まれて構成されている。また、頭部装着型画像入出力装置１１０には、磁気センサ１６１が取り付けられている。
【００１７】
位置・姿勢計測装置１２０は、磁気センサ１６１及び１６２からの入力に基づいて、頭部装着型画像入出力装置１１０を装着した観察者やモックアップ１５０の位置・姿勢を計測する。ここで、観察者の位置・姿勢（視点位置や視線方向を含む）は、頭部装着型画像入出力装置１１０の位置・姿勢に相当するものとして計測される。
【００１８】
情報処理装置１３０は、画像処理システム１００における動作を統括的に制御するものである。具体的に、情報処理装置１３０は、例えば、位置・姿勢計測装置１２０からの位置・姿勢情報に合わせたＣＧ画像を生成し、これを画像入力部１１１から入力した画像（現実画像）に重畳して、合成画像を生成する処理を行う。そして、この場合、情報処理装置１３０は、生成した合成画像を画像表示部１１２に出力する。
【００１９】
ＣＡＤシステム１４１は、製品等の設計データを生成する処理等を行う。モックアップシステム１４２は、モックアップ１５０の作成用のモックアップデータを生成する処理等を行う。ＣＡＤシステム１４１、モックアップシステム１４２及びＤＭＲシステム１４３は、ネットワークを介して情報処理装置１３０に接続されており、必要に応じて、種々のデータの送受信を行う。なお、図１に示す例では、ＣＡＤシステム１４１、モックアップシステム１４２及びＤＭＲシステム１４３は、独立したシステムとして設けられている例が示されているが、例えば、１つのシステムの中にそれぞれの機能が設けられている形態であってもよい。更には、情報処理装置１３０の中に、それぞれのアプリケーションソフトとして構成し、各アプリケーションソフトを動作させることによって実現させるようにしてもよい。
【００２０】
モックアップ１５０は、現実物体であり、このモックアップ１５０には、画像入力部１１１により入力された画像（現実画像）から、モックアップ１５０の位置・姿勢を求める際に利用されるマーカー１５１が付されている。また、モックアップ１５０には、磁気センサ１６２が取り付けられている。
【００２１】
具体的に、モックアップ１５０は、モックアップシステム１４２で生成されたモックアップデータに基づき、モックアップ製作者により製作された現実物体である。図１に示す例では、モックアップ１５０としてカメラを適用した例を示すが、他の現実物体を適用することができ、また、本実施形態の画像処理システム１００による画像処理方法は、モックアップ１５０の種類や大きさ等には関係なく適用することができる。
【００２２】
磁気トランスミッタ１６０は、磁場を発生させるものである。磁気センサ１６１及び１６２は、磁気トランスミッタ１６０が発生させた磁場の変化を計測するためのセンサである。磁気センサ１６１は、上述したように、頭部装着型画像入出力装置１１０に取り付けられており、磁気センサ１６２は、モックアップ１５０に取り付けられている。そして、位置・姿勢計測装置１２０は、磁気センサ１６１及び１６２の計測結果から、その位置・姿勢を求めることにより、それぞれ、頭部装着型画像入出力装置１１０及びモックアップ１５０の位置・姿勢を計測する。
【００２３】
次に、図１に示す情報処理装置１３０、ＣＡＤシステム１４１、モックアップシステム１４２及びＤＭＲシステム１４３の内部の構成について説明する。
図２は、図１に示す情報処理装置１３０、ＣＡＤシステム１４１、モックアップシステム１４２及びＤＭＲシステム１４３の内部のハードウェア構成の一例を示す模式図である。
【００２４】
図２に示すように、各装置（１３０、１４１〜１４３）は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、外部メモリ２０４、情報入力部２０５、表示部２０６、通信Ｉ／Ｆ部２０７、及び、バスの各ハードウェア構成を有して構成されている。
【００２５】
ＣＰＵ２０１は、当該装置における動作を統括的に制御するものであり、バスを介して、当該装置の各構成部（２０２〜２０７）を制御する。
【００２６】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して、ＲＯＭ２０３から必要なプログラム２０３１等をＲＡＭ２０２にロードし、当該プログラム２０３１等を実行することで、当該装置の各種の機能動作を実現する。
【００２７】
ＲＯＭ２０３には、ＣＰＵ２０１が処理を実行するために必要なプログラム２０３１等が記憶されている。なお、プログラム２０３１は、外部メモリ２０４に記憶されていてもよい。
【００２８】
外部メモリ２０４には、例えば、ＣＰＵ２０１がプログラム２０３１等を用いた処理を行う際に必要な各種のデータや各種の情報等が記憶されている。また、外部メモリ２０４には、例えば、ＣＰＵ２０１がプログラム２０３１等を用いた処理を行うことにより得られた各種のデータや各種の情報等が記憶される。
【００２９】
情報入力部２０５は、当該装置に対して、情報の入力を行なうものである。表示部２０６は、ＣＰＵ２０１の制御に基づいて、必要に応じて、各種の情報や各種のデータを表示するものである。
【００３０】
通信Ｉ／Ｆ部２０７は、外部装置との通信を司るものである。バスは、ＣＰＵ２０１と、ＲＡＭ２０２、ＲＯＭ２０３、外部メモリ２０４、情報入力部２０５、表示部２０６及び通信Ｉ／Ｆ部２０７を通信可能に接続するためのものである。
【００３１】
図３は、図１に示す画像処理システム１００において、情報処理装置１３０、ＣＡＤシステム１４１及びモックアップシステム１４２の間のデータの流れの一例を示す模式図である。
【００３２】
ＣＡＤシステム１４１で生成された設計データは、情報処理装置１３０の内部のデータ管理部３００に設計データ３０１及び３０３として保存される。ここで、図３に示すデータ管理部３００は、例えば、図２に示す情報処理装置１３０の外部メモリ２０４に構成される。
【００３３】
設計データ３０３は、設計データ３０１と同じ製品を対象とした設計データであるが、設計や開発過程において部品点数が異なり、設計データの管理上、設計データ３０１とは別のバージョンで扱われる設計データを示している。
【００３４】
派生データ３０２は、設計データ３０１から派生して生成されるデータの一例を示しており、派生データ３０４は、設計データ３０３から派生して生成されるデータの一例を示している。この派生データ３０２及び３０４としては、モックアップシステム１４２によるモックアップ１５０の形状を示すモックアップ形状データや、接触判定を行うための接触判定用データ、頭部装着型画像入出力装置１１０に表示する際に使用する表示用データがある。上述した各派生データは、本実施形態において必ずしも必須ではない。この場合、設計データ３０１及び３０３を流用できる場合もあれば、接触判定用データと表示用データとを兼用するなど、派生データ間において流用することも可能である。また、図３に示すモックアップ１５０としては、自動車を適用した例が示されており、以降の説明では、モックアップ１５０として自動車を適用した例で説明を行う。
【００３５】
データ管理部３００の設計データ及び派生データは、管理テーブルを用いて管理される。図４は、図３に示すデータ管理部３００の設計データ及び派生データを管理するための管理テーブルの一例を示す模式図である。
【００３６】
図４には、設計データＩＤ、差分データＩＤ、モックアップ生成データＩＤ、モックアップ識別番号ＩＤ、モックアップ形状データＩＤ、ターゲットＩＤ、表示用データＩＤ、接触判定用データＩＤ、接触判定用データ（差分）ＩＤの各データが示されている。
【００３７】
また、モックアップ１５０は、磁気センサ１６２やマーカー１５１により、個別に識別可能である。本実施形態の画像処理システム１００（複合現実感提示システム）では、管理テーブルにおいてこれらのモックアップ１５０にもＩＤつけて、派生元となる設計データとのバージョン、及び、使用できる設計データのバージョンとも対応付けて使用することができる。
【００３８】
（位置姿勢に応じた画像表示と接触判定）
次に、本実施形態の頭部装着型画像入出力装置１１０とモックアップ１５０のそれぞれの位置・姿勢に応じた画像表示等の画像処理について、図５のフローチャートを用いて説明する。
【００３９】
図５は、本発明の実施形態に係る画像処理システム１００による画像処理方法の一例を示すフローチャートである。なお、以下の説明では、画像処理方法として、特に、頭部装着型画像入出力装置１１０を装着した観察者が、モックアップ１５０を見る場合の画像表示処理と接触判定処理について説明する。また、データ管理部３００及び図４の管理テーブルで管理されている複数の設計データのうち、現実物体であるモックアップ１５０の作成に係る設計データを第１の設計データとする。
【００４０】
まず、ステップＳ１０１において、例えば情報処理装置１３０のＣＰＵ２０１は、例えば情報処理装置１３０の情報入力部２０５からの入力指示に応じて、観察者がＭＲ体験中に表示する、仮想物体に係る設計データ（第２の設計データ）を設定する。この際、例えば、設計データをデータ管理部３００に設定する。このステップＳ１０１の設定時には、事前に記録されているモックアップ１５０に対し、表示する設計データとバージョンを指定する。この指定方法は、設計データとバージョンとが一意に特定でき、情報処理装置１３０の管理により、派生データ及びモックアップと対応付けられた各データと対応づけられる方法であれば、どのような方法でもよい。また、このステップＳ１０１の設定は、システムの起動開始前の初期値であってもよいし、起動中の設定変更であってもよい。
【００４１】
続いて、ステップＳ１０２において、例えば情報処理装置１３０のＣＰＵ２０１は、画像入力部１１１から入力された画像に基づく現実空間に配置されたマーカー１５１の位置等や、位置・姿勢計測装置１２０の計測結果に基づいて、頭部装着型画像入出力装置１１０及びモックアップ１５０の位置・姿勢を計測する。この際、情報処理装置１３０においては、モックアップ１５０の位置・姿勢情報は、どのモックアップ１５０に対する位置及び姿勢であるのかをＩＤ別に区別されている。
【００４２】
続いて、ステップＳ１０３において、例えば情報処理装置１３０のＣＰＵ２０１は、ステップＳ１０２で得られた位置・姿勢情報に基づいて、モックアップ１５０と他の仮想物体との接触判定を行う。この際、接触判定の手法は、様々な手法があるが、本実施形態では、一般的に３Ｄの形状を表示するサーフェスモデルを扱えるような接触判定方法であれば、どのような判定方法を適用しても実施できる。このとき、仮想物体が、モックアップ１５０または別の仮想物体にめり込まないように、仮想物体の位置を調整する。なお、各物体の接触を音声や表示で通知するなど、接触判定に伴う処理もこのステップで実施される。
【００４３】
続いて、ステップＳ１０４において、例えば情報処理装置１３０のＣＰＵ２０１は、ステップＳ１０３の判定結果に基づいて、観察者に複合現実感（ＭＲ）を提示するために、３次元の仮想データから２次元の表示画像データ（表示用ＣＧ画像データ）を生成する。ここでは、例えば、ステップＳ１０３の判定処理で仮想物体の位置の調整等がなされた場合には、これを考慮して画像データが生成される。
【００４４】
続いて、ステップＳ１０５において、例えば情報処理装置１３０のＣＰＵ２０１は、ステップＳ１０４で生成した表示画像データ（表示用ＣＧ画像データ）と、画像入力部１１１により撮影された現実空間の画像データ（現実画像データ）を合成する処理を行う。そして、例えば情報処理装置１３０のＣＰＵ２０１は、合成により得られた合成画像データに基づく合成画像を頭部装着型画像入出力装置１１０の画像表示部１１２に表示する処理を行う。
【００４５】
続いて、ステップＳ１０６において、例えば情報処理装置１３０のＣＰＵ２０１は、モックアップ１５０に重畳する設計データのバージョンの変更や、表示用データ、接触判定用データの変更など、ＭＲ体験に関連する設定変更があるか否かを判断する。このステップＳ１０６の判断は、例えば、情報処理装置１３０の情報入力部２０５から、上述した設定変更の指示がなされているか否か等に基づいて行われる。
【００４６】
ステップＳ１０６の判断の結果、ＭＲ体験に関連する設定変更がある場合には（Ｓ１０６／ＹＥＳ）、ステップＳ１０７に進む。
【００４７】
ステップＳ１０７に進むと、例えば情報処理装置１３０のＣＰＵ２０１は、当該設定変更の内容に応じて、図４に示す管理テーブルの各データを適切に選択して、設定変更に対応したデータの準備を行う。
【００４８】
ステップＳ１０７の処理が終了した場合、或いは、ステップＳ１０６でＭＲ体験に関連する設定変更がないと判断された場合には（Ｓ１０６／ＮＯ）、ステップＳ１０８に進む。
【００４９】
ステップＳ１０８に進むと、例えば情報処理装置１３０のＣＰＵ２０１は、例えば、情報処理装置１３０の情報入力部２０５からの入力指示に基づいて、処理を終了するか否かを判断する。
【００５０】
ステップＳ１０８の判断の結果、処理を終了しない場合には（Ｓ１０８／ＮＯ）、ステップＳ１０２に戻り、ステップＳ１０２以降の処理を再度繰り返し行う。
【００５１】
一方、ステップＳ１０８の判断の結果、処理を終了する場合には（Ｓ１０８／ＹＥＳ）、図５に示すフローチャートの処理を終了する。
【００５２】
（設計データ等の準備）
例えば、図５のステップＳ１０７等における管理テーブルの各データの準備について、図４を参照して以下に説明する。
【００５３】
図４に示す管理テーブルには、ＣＡＤシステム１４１で生成された設計データのバージョンごとに、ＩＤをつけて記憶される。なお、本実施形態では、設計データのバージョンの識別方法や、バージョン管理方法には依存しないが、設計データからモックアップ１５０を生成するような比較的メジャーなバージョンアップ時にリリースされる設計データのバージョンと、モックアップ１５０を生成しない変更分のみを反映させた設計データのバージョン（バージョンアップ）とは区別されて管理される。本実施形態の管理テーブルの一例では、モックアップ１５０の製作の有無と、バージョン情報の有無で表されている。
【００５４】
まず、始めに、モックアップ１５０が生成される設計データの場合のデータの準備について説明する。
【００５５】
通常、モックアップ１５０は、設計データをもとに生成されるが、モックアップ１５０の製作上、設計データより、その内部の省略や隙間を埋めるなど、モックアップ用に簡略化された設計データが作成され、このモックアップ生成用データをもとに製作される。例えば情報処理装置１３０のＣＰＵ２０１は、この場合の設計データにもＩＤを付加し、派生元である設計データのＩＤに対応づけて記録する。
【００５６】
また、例えば情報処理装置１３０のＣＰＵ２０１は、製作されたモックアップ１５０に対しても、システム内で識別するためのＩＤを付加し、３次元スキャナなどで製作後のモックアップ１５０の形状を計測する処理を行う。そして、例えば情報処理装置１３０のＣＰＵ２０１は、このモックアップ形状データにも個別のＩＤをつけ、派生元の設計データＩＤに対応づけて保存する。なお、本実施形態においては、３次元スキャナなどの計測ができない場合は、モックアップ生成用の設計データをモックアップの形状データとして扱うことも可能である。
【００５７】
続いて、例えば情報処理装置１３０のＣＰＵ２０１は、設計データのバージョンに応じた表示用データを生成する。一般的に、ＣＡＤシステム１４１で生成されるデータは、ソリッドモデルの３次元データとして作成されているが、表示用データを生成する際には、表示に適切なデータに変換、例えばＶＲＭＬのようなサーフェスモデルのデータに変換する。また、例えば情報処理装置１３０のＣＰＵ２０１は、モックアップ１５０の形状データから、モックアップ１５０と他の仮想物体との接触判定に用いる接触判定用データを作成し、ＩＤをつけて関連付けて保存する。
【００５８】
また、これらのデータ準備とは別に、例えば情報処理装置１３０のＣＰＵ２０１は、磁気センサのターゲットＩＤをモックアップ１５０に対し、関連付けて記録する。例えば、各モックアップの識別にマーカー１５１のＩＤを用いる場合には、モックアップ製作後、個別のＩＤをもつマーカー１５１をモックアップ１５０に貼る。そして、例えば情報処理装置１３０のＣＰＵ２０１は、マーカー１５１や位置・姿勢計測装置１２０を用いて、位置・姿勢の計測時に、各モックアップに対応した適切なデータを検索できるようにする。
【００５９】
次に、モックアップ１５０を生成しない設計データの場合のデータの準備について説明する。
【００６０】
例えば情報処理装置１３０のＣＰＵ２０１は、設計データのリリース時に、以前の設計データのうち、重畳表示可能なモックアップをもつ、以前のバージョンの設計データを検索し、これらの設計データの差分データの作成を行う。
【００６１】
ここで、差分データの第１の作成方法としては、リリース時の設計データと、検索されたモックアップをもつ設計データとの差分をとることで作成することができる。この差分データの作成は、ＣＡＤシステム１４１のデータ中のシーングラフデータのノードの差、例えば、設計データ中の部品ごとのユニットの増加であれば、その部品に対応するシーングラフのノードの差をとる方法で作成することができる。また、同一の部品に対し、形状が追加される場合には、ソリッドモデルのブーリアン演算で作成することができる。このとき、部品の削減がある場合は、削減された部分を別の形状データとして保存することもできる。
【００６２】
差分データの第２の作成方法としては、モックアップ１５０の設計データを用いる方法である。モックアップの作成に用いたモックアップ用設計データから、第１の方法と同様の手順で差分データを作成することができる。
【００６３】
差分データの第３の作成方法としては、３次元スキャナなどで取得したモックアップのソリッドモデルでは、ブーリアン演算と、新たな設計データのうち、モックアップの形状の外側にある部品を追加部品として判定して、差分データを作成することも可能である。
【００６４】
（接触判定処理）
次に、例えば、図５のステップＳ１０３における接触判定処理について、図４及び図６を参照して以下に説明する。
【００６５】
図６は、図５のステップＳ１０３における接触判定処理の詳細な処理手順の一例を示すフローチャートである。
【００６６】
図５のステップＳ１０３における接触判定処理が開始されると、まず、図６のステップＳ２０１において、例えば情報処理装置１３０のＣＰＵ２０１は、表示する設計データの設定を取得する処理を行う。具体的に、ステップＳ２０１では、データ管理部３００から、現在の表示設定であってモックアップ１５０への重畳表示が設定されている該当バージョンの設計データの識別子を取得する。この識別子は、アプリケーション固有の表示や識別子でも構わないが、図４に示す管理テーブルの各設計データのＩＤと対応付けられる識別子である。
【００６７】
続いて、ステップＳ２０２において、例えば情報処理装置１３０のＣＰＵ２０１は、モックアップ１５０の位置・姿勢情報と、モックアップ１５０に係るＩＤを取得する処理を行う。具体的に、ステップＳ２０２では、画像入力部１１１から入力された現実画像のマーカー１５１や位置・姿勢計測装置１２０によって計測されたモックアップ１５０の位置・姿勢情報に基づいて、当該取得の処理を行う。
【００６８】
続いて、ステップＳ２０３において、例えば情報処理装置１３０のＣＰＵ２０１は、ステップＳ２０２で取得したモックアップ１５０に係るＩＤを用いて、図４の管理テーブルから、派生元の設計データのＩＤを検索する。そして、例えば情報処理装置１３０のＣＰＵ２０１は、検索した設計データが、現在、表示が設定されている設計データのバージョンと同一バージョンであるか否かを判断する。具体的に、同一バージョンであるか否かは、モックアップ１５０の設計データ（第１の設計データ）と、表示する設計データ（第２の設計データ）とに差分がないか否かにより判断される。
【００６９】
ステップＳ２０３の判断の結果、同一バージョンでない場合、即ち、表示する設計データとモックアップ１５０の設計データに差分がある場合には（Ｓ２０３／ＹＥＳ）、ステップＳ２０４に進む。
【００７０】
ステップＳ２０４に進むと、例えば情報処理装置１３０のＣＰＵ２０１は、図４の管理テーブルに基づいて、モックアップ１５０製作時の設計データと、設定されている設計データとの差分データを検索する。
【００７１】
続いて、ステップＳ２０５において、例えば情報処理装置１３０のＣＰＵ２０１は、図４の管理テーブルに基づいて、ステップＳ２０４で検索した差分データに対応した接触判定用データを検索する。
【００７２】
続いて、ステップＳ２０６において、例えば情報処理装置１３０のＣＰＵ２０１は、図４の管理テーブルに基づいて、現在、計測中のモックアップ１５０の接触判定用データを検索する。
【００７３】
続いて、ステップＳ２０７において、例えば情報処理装置１３０のＣＰＵ２０１は、Ｓ２０４で検索した差分データと、Ｓ２０５及びＳ２０６で検索した２つの接触判定用データを用いて、モックアップ１５０と他の仮想物体との接触の判定を行う。この際、本実施形態では、Ｓ２０５及びＳ２０６で検索した２つの接触判定用データを１つのモックアップの接触判定用データとして使用し、モックアップ１５０の内部の冗長な判定処理は除き、その表面のみが他の仮想物体と接触していないかの判定を行う。ただし、一体として扱うモデルであるため、モックアップ１５０の接触判定用データと、差分データ用の接触判定用データとの接触判定は行わない。このように差分データ分の接触判定処理との組合せにより、システム負荷の小さい接触判定処理でありながら、必要な仮想物体とモックアップとの接触判定のすべての実施を両立させるようにしている。
【００７４】
一方、ステップＳ２０３の判断の結果、同一バージョンである場合、即ち、表示する設計データとモックアップ１５０の設計データに差分がない場合には（Ｓ２０３／ＮＯ）、ステップＳ２０８に進む。
【００７５】
ステップＳ２０８に進むと、例えば情報処理装置１３０のＣＰＵ２０１は、モックアップ１５０用の接触判定用データを使用して、モックアップ１５０と他の仮想物体との接触の判定を行う。
【００７６】
ステップＳ２０７及びステップＳ２０８の処理が終了した場合には、ステップＳ２０９に進む。
【００７７】
ステップＳ２０９に進むと、例えば情報処理装置１３０のＣＰＵ２０１は、ステップＳ２０７またはステップＳ２０８における接触判定の結果、モックアップ１５０と他の仮想物体との接触があったか否かを判断する。
【００７８】
ステップＳ２０９の判断の結果、モックアップ１５０と他の仮想物体との接触があった場合には（Ｓ２０９／ＹＥＳ）、ステップＳ２１０に進む。
【００７９】
ステップＳ２１０に進むと、例えば情報処理装置１３０のＣＰＵ２０１は、モックアップ１５０と他の仮想物体との接触に伴うユーザへの通知（表示、音声、振動などによる通知）等の処理を行う。また、物理シミュレーションのように、物体が別の物体にめり込まないようにする、などの接触時固有の位置、姿勢の補正があれば、このステップＳ２１０で実施する。
【００８０】
続いて、ステップＳ２１１において、例えば情報処理装置１３０のＣＰＵ２０１は、ステップＳ２１０における接触時の処理を踏まえた表示用データの準備（例えば、位置、姿勢の補正、接触部の表示変更）を行う。
【００８１】
ステップＳ２１１の処理が終了した場合、或いは、ステップＳ２０９でモックアップ１５０と他の仮想物体との接触がなかったと判断された場合には（Ｓ２０９／ＮＯ）、図６に示すフローチャートの処理を終了する。
【００８２】
このように、本実施形態では、現実空間に配置してある簡易試作物であるモックアップ１５０の仮想空間における３次元位置情報を計測し、その計測結果と接触判定結果に応じた表示をシステムの負荷を抑えながら実施することができる。
【００８３】
（自動車のオプションパーツの実施例）
次に、頭部装着型画像入出力装置１１０を用いて、デザインレビュー（ＤＭＲ）を行う際の表示処理を図７〜図９を用いて以下に説明する。
【００８４】
図７は、本発明の実施形態を示し、現実空間上に配置されたモックアップ１５０の画像と、当該モックアップ１５０に表示用データを重畳表示した画像の一例を示す模式図である。
【００８５】
具体的に、図７（ａ）は、画像入力部１１１により撮影されたモックアップ１５０の画像を表示した例である。また、図７（ｂ）は、モックアップ１５０に対して、当該モックアップ１５０と同じバージョンの設計データの表示用データ１５００を重畳（合成）させた画像を表示した例である。ここで、図７（ｂ）に示す画像は、頭部装着型画像入出力装置１１０の画像表示部１１２に表示される画像を示している。
【００８６】
図７（ｂ）に示す表示用データ１５００は、モックアップ１５０の生成時の設計データから生成された表示用データであるため、重畳表示した場合には、モックアップ１５０の形状と一致している。
【００８７】
ここで、設計が進み、設計データに自動車のオプションパーツとして、トランクの設計データとリヤウイングの設計データとがＣＡＤシステム１４１で更新され、新たなモックアップは生成されなかった場合について説明する。この場合、図４に示す管理テーブルの設計データＩＤは、新しい設計データのＩＤに更新される。そして、このバージョンの設計データでは、モックアップ１５０が生成されていないため、モックアップ識別番号ＩＤと、モックアップ形状データＩＤ、モックアップを識別するターゲットＩＤは、生成されない。また、差分データＩＤとしては、トランクとリヤウイングの設計データにＩＤを付けて登録される。この差分データに対応して、差分の接触判定用データが生成され、これが接触判定用データＩＤ（差分）として登録される。
【００８８】
図８は、図７（ｂ）に示す表示用データ１５００に対して、差分データを追加した表示用データの一例を示す模式図である。図８に示す表示用データには、図７（ｂ）に示す表示用データ１５００に対して、差分データとして、リヤウイングの表示用データ１５０１と、トランクの表示用データ１５０２が追加され、重畳表示されたものである。
【００８９】
ここで、本実施形態における表示処理では、リヤウイングの表示用データ１５０１とトランクの表示用データ１５０２を含む表示用データを用いる。一方、本実施形態における接触判定処理では、モックアップ１５０の形状データと、リヤウイング、トランクの接触判定用データを用いて、接触判定を行う。即ち、モックアップ１５０の内部に関しては、設計データ中のモックアップ内部の部品にも対応した接触判定用データではなく、モックアップ１５０の形状の表面に対応した接触判定用データを使用する。このようにして、本実施形態では、モックアップ１５０の内部のデータを衝突判定対象から外す。
【００９０】
また、設計データの差分であるトランクとリヤウイングに対応した接触判定用データを用い、かつ、モックアップ１５０と差分データの衝突判定を行わないことにより、冗長な衝突判定処理を大幅に削減する。
【００９１】
図９は、本発明の実施形態を示し、複合現実感（ＭＲ）の体験中に接触判定を行う場合の表示の一例を示す模式図である。
例えば、仮想データの特徴であるデータ変更の容易さを維持したまま、図９に示すように、リヤウイングの付いたバックドアを開けた場合のように、実寸大のスケールで体感的に車を感じながら、検討中のパーツであるトランク及びリヤウイングの形状や可動部を体感的に検討したり、接触判定したりすることができることから、実物同様の可動範囲の確認を行うことができる。
【００９２】
以上のように、各データを使い分けた衝突判定処理を伴う画像処理（複合現実感提示処理）を行うことで、検討対象である新たな設計データに関しては、衝突判定を実施することができる。さらに、現実物体のモックアップ１５０によりリアルな体験や確認を伴いながら、観察者は、全部品の衝突判定を行うよりもはるかにシステムの負荷が小さい複合現実感を体験することができる。
【００９３】
さらに、図４に示す管理テーブルのＩＤを切り替えることにより、自動車のモックアップ用の表示用データ１５００及び接触判定用データのみをモックアップ１５０に対して重畳表示する場合と、トランク及びリヤウインを伴う表示、接触判定用データをデザインレビュー内で瞬時に切り替えることができる。
【００９４】
また、同じ形状のモックアップ１５０が複数存在する場合には、現実物体であるモックアップ１５０を複数並べ、モックアップ識別番号ＩＤと各データの対応を切り替えて表示、接触判定を実施するようにする。これにより、複数の現実物体に対し、異なるバージョンの設計データに応じたＭＲ表示と、接触判定を自動的に割り当てて、各バージョンを比較検討も実施できる。
【００９５】
なお、本実施形態では、観察者が視認する画像入出力装置としてＨＭＤからなる頭部装着型画像入出力装置１１０を適用する例で説明を行ったが、これに限定されるものではない。例えば、観察者が視認する画像入出力装置として、観察者の頭部に装着せずに当該画像入出力装置を固定配置するなど他の手段で実現する形態であってもよい。
【００９６】
本発明の実施形態によれば、接触判定（図５のＳ１０３、図６）の判定結果に基づいて仮想物体の画像を生成するようにしたので、現実物体の画像と仮想物体の画像とを合成した合成画像の表示を行う際に、システムの負荷の軽減を実現することができる。このシステムの負荷の軽減により、従来では、設計が進み部品の組み合わせ数の増加や大型製品の設計データに接触判定処理を併用することが困難であったケースまでにも、利用範囲を拡大した画像処理システム（複合現実感提示装置）を提供することができる。
【００９７】
（本発明の他の実施形態）
前述した本発明の実施に係る画像処理システム１００による画像処理方法を示す図５及び図６の各ステップは、コンピュータのＣＰＵ（２０１）がＲＯＭなどに記憶されたプログラム（２０３１）を実行することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００９８】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【００９９】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図５及び図６に示すフローチャートに対応したプログラム）を、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１００】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１０１】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１０２】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１０３】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１０４】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１０５】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１０６】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１０７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１０８】
なお、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【０１０９】
【図１】本発明の実施形態に係る画像処理システムの概略構成の一例を示す模式図である。
【図２】図１に示す情報処理装置、ＣＡＤシステム、モックアップシステム及びＤＭＲシステムの内部のハードウェア構成の一例を示す模式図である。
【図３】図１に示す画像処理システムにおいて、情報処理装置、ＣＡＤシステム及びモックアップシステムの間のデータの流れの一例を示す模式図である。
【図４】図３に示すデータ管理部の設計データ及び派生データを管理するための管理テーブルの一例を示す模式図である。
【図５】本発明の実施形態に係る画像処理システムによる画像処理方法の一例を示すフローチャートである。
【図６】図５のステップＳ１０３における接触判定処理の詳細な処理手順の一例を示すフローチャートである。
【図７】本発明の実施形態を示し、現実空間上に配置されたモックアップの画像と、当該モックアップに表示用データを重畳表示した画像の一例を示す模式図である。
【図８】図７（ｂ）に示す表示用データに対して、差分データを追加した表示用データの一例を示す模式図である。
【図９】本発明の実施形態を示し、複合現実感（ＭＲ）の体験中に接触判定を行う場合の表示の一例を示す模式図である。
【符号の説明】
【０１１０】
１００  画像処理システム
１１０  頭部装着型画像入出力装置
１１１  画像入力部
１１２  画像表示部
１２０  位置・姿勢計測装置
１３０  情報処理装置
１４１  ＣＡＤシステム
１４２  モックアップシステム
１４３  ＤＭＲシステム
１５０  モックアップ
１６０  磁気トランスミッタ
１６１、１６２  磁気センサ
【図１】
2010146285.tif 000003
【図２】
2010146285.tif 000004
【図３】
2010146285.tif 000005
【図４】
2010146285.tif 000006
【図５】
2010146285.tif 000007
【図６】
2010146285.tif 000008
【図７】
2010146285.tif 000009
【図８】
2010146285.tif 000010
【図９】
2010146285.tif 000011