(57)【特許請求の範囲】
【請求項１】
第１の３次元形状と第２の３次元形状又は２次元画像とに対して、それらの対応点を複数個指定することによってそれらを互いに対応付ける方法であって、
第１の３次元形状を表示面に表示するとともに、その奥行き方向を高さとする等高線を第１の３次元形状の中に表示し、
前記等高線を対応点の奥行き方向の位置の案内標識として用いる、
ことを特徴とする３次元形状の対応付け方法。
【請求項２】
第１の３次元形状と第２の３次元形状又は２次元画像とに対して、それらの対応点を複数個指定することによってそれらを互いに対応付ける方法であって、
第１の３次元形状に対応付けられた第１の２次元画像を表示面に表示するとともに、第１の３次元形状の奥行き方向を高さとする等高線を第１の２次元画像の中に表示し、
前記等高線を対応点の奥行き方向の位置の案内標識として用いる、
ことを特徴とする３次元形状の対応付け方法。
【請求項３】
前記等高線と等高線との間のそれぞれの領域を、互いに異なる表示方法で表示する、
請求項１又は請求項２記載の３次元形状の対応付け方法。
【請求項４】
第１の３次元形状と第２の３次元形状又は２次元画像とに対して、それらの対応点を複数個指定することによってそれらを互いに対応付ける方法であって、
第１の３次元形状を表示面に表示するとともに、第１の３次元形状内において対応点が指定されたときに、その対応点と既に指定された対応点との間の距離を求め、求められた距離が所定値よりも小さいときに警告を発する、
ことを特徴とする３次元形状の対応付け方法。
【請求項５】
第１の３次元形状と第２の３次元形状又は２次元画像とに対して、それらの対応点を複数個指定することによってそれらを互いに対応付ける方法であって、
第１の３次元形状を表示面に表示するとともに、第１の３次元形状内において対応点が指定されたときに、その対応点を中心とする一定半径の半透明な球を表示し、
前記球を対応点の密度の案内標識として用いる、
ことを特徴とする３次元形状の対応付け方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元形状と他の３次元形状、又は３次元形状と２次元画像などに対して、それらの対応点を複数個指定することによってそれらを互いに対応付ける方法に関する。
【０００２】
【従来の技術】
従来より、予め用意した３次元形状モデルを、３次元入力機器から取り込まれた３次元形状データに適合するように変形する、いわゆるモデルベースによるモデリングや、３次元形状に対応付けられた２次元画像を他の２次元画像と置き換えることが行われている。
【０００３】
その際に、３次元形状データ（３次元形状）と他の３次元形状データ又は２次元画像とを対応付ける必要がある。それらの対応付けのために、それらの間で複数組みの対応点を指定することが一般的に行われている。
【０００４】
例えば、特願平７−１５６４５５号では、３次元形状に対応付けられた２次元画像上で対応点を指定することによって、対応付けがユーザにとって分かりやすくなるようにされている。
【０００５】
【発明が解決しようとする課題】
ところで、対応点を指定する場合に、それらが３次元空間において一様に分布することが望ましい。しかし、従来においては、対応付けを容易にするための工夫や、多数の対応点を指定することによって出力結果の誤差を小さくする工夫はなされているが、対応点が一様に分布するような工夫はなされていない。
【０００６】
そのため、従来においては、対応点が３次元形状データの一部分に偏り易かった。対応点が一部分に偏った場合には、出力されるデータの誤差が大きくなってしまう。
【０００７】
従来のように、３次元形状又は２次元画像を普通に表示面に表示して対応点を指定する場合には、３次元形状の奥行きの違いが分かり難いため、ユーザが対応点を一様に指定し、指定された対応点群を埋想的なものとするためには相当の熟練が必要であった。
【０００８】
本発明は、上述の問題に鑑みてなされたもので、３次元形状を対応付ける際に、対応点が一様になるように容易に指定できることを目的とする。
【０００９】
【課題を解決するための手段】
請求項１の発明に係る方法は、第１の３次元形状と第２の３次元形状又は２次元画像とに対して、それらの対応点を複数個指定することによってそれらを互いに対応付ける方法であって、第１の３次元形状を表示面に表示するとともに、その奥行き方向を高さとする等高線を第１の３次元形状の中に表示し、前記等高線を対応点の奥行き方向の位置の案内標識として用いる。
【００１０】
請求項２の発明に係る方法は、第１の３次元形状に対応付けられた第１の２次元画像を表示面に表示するとともに、第１の３次元形状の奥行き方向を高さとする等高線を第１の２次元画像の中に表示し、前記等高線を対応点の奥行き方向の位置の案内標識として用いる。
【００１１】
請求項３の発明に係る方法は、前記等高線と等高線との間のそれぞれの領域を、互いに異なる表示方法で表示する。
請求項４の発明に係る方法は、第１の３次元形状を表示面に表示するとともに、第１の３次元形状内において対応点が指定されたときに、その対応点と既に指定された対応点との間の距離を求め、求められた距離が所定値よりも小さいときに警告を発する。
【００１２】
請求項５の発明に係る方法は、第１の３次元形状を表示面に表示するとともに、第１の３次元形状内において対応点が指定されたときに、その対応点を中心とする一定半径の半透明な球を表示し、前記球を対応点の密度の案内標識として用いる。
【００１３】
このように、３次元形状データを奥行き方向（深さ方向）の距離をもとに小領域に分割して表示することにより、ユーザはより簡単に３次元空間内で対応点が一様になるように指定することができる。また、一定の半径の半透明の球を表示することによって、新たな指定によって表示された球が既にある球と交わらないよう、対応点の指定の際の案内標識として用いることができる。
【００１４】
【発明の実施の形態】
図１は本発明に係る方法を実施するための３次元データ処理装置１の構成を示すブロック図である。
【００１５】
３次元データ処理装置１は、ＣＰＵなどからなって演算処理を実行する処理装置１０、データ及びプログラムを格納するハードディスク装置１１、演算のためにデータを一時的に記憶するメモリ１２、入力されたデータ及び演算結果などを表示するディスプレイ装置１３、ディスプレイ装置１３の表示面ＨＧ上で位置を指定して入力するために使用されるマウス１４、及びその他の付属装置１５などから構成される。このような３次元データ処理装置１は、例えば、パーソナルコンピュータ又はワークステーションなどによって実現される。
【００１６】
３次元データ処理装置１には、３次元データ（３次元形状データ）Ｃ１、３次元データＣ１に関連付けられた２次元画像（２次元画像データ）Ｉ１、３次元データＣ１とは関連付けられていない３次元データ（３次元モデルデータ）Ｃ２及び２次元画像Ｉ２が、それぞれ外部から入力される。
【００１７】
これらの３次元データＣ１，Ｃ２及び２次元画像Ｉ１，Ｉ２は、フロッピィディスクなどの記憶媒体に蓄積されている場合は、付属装置１５の１つであるフロッピーディスクドライブなどの記憶媒体駆動装置によって読み出しが行われる。読み出されたデータは、メモリ１２に一時的に記憶され、又はハードディスク装置１１に格納される。
【００１８】
また、３次元データＣ１，Ｃ２及び２次元画像Ｉ１，Ｉ２が３次元データ処理装置１以外の他の外部装置に格納されている場合には、付属装置１５の１つである外部装置接続装置を介してその外部装置に接続され、そこから適宜データが読み出され、メモリ１２に一時的に記憶され、又はハードディスク装置１１に格納される。
【００１９】
図２は３次元データＣ１，Ｃ２及び２次元画像Ｉ１，Ｉ２を取得する方法を説明する図、図３は３次元データＣ１の例を示す図である。
図２に示すように、まず、対象物Ｑを３次元形状入力装置ＴＭにより撮影して３次元データＣ１を取得する。３次元形状の認識方法の最も実用的な方法として、光切断法がある。光切断法を用いた３次元形状入力装置ＴＭは公知であり、例えば特願平５−３２０２４５号に詳しく記載されている。３次元形状入力装置ＴＭによって、対象物Ｑの３次元データＣ１と同時に、それと同じ画角の２次元画像Ｉ１を取得することができる。これら、３次元データＣ１と２次元画像Ｉ１とは、互いの位置関係のパラメータが分かっているので、それらの関連付けを自動的に行うことが可能である。
【００２０】
なお、本明細書でいう関連付けとは、３次元形状の各位置に対応する２次元画像の射影位置を求めることができるということである。つまり、３次元データＣ１と２次元画像Ｉ１との関係が、基本的に射影行列（プロジェクション・マトリクス）によって表現できるということである。射影行列を用いた表現方法については、徐剛、辻三郎  著「３次元ビジョン」（共立出版）に詳しいが、以下に簡単に説明する。
【００２１】
すなわち、３次元データ上の点から２次元画像への射影は、次の（１）式で表される。
【００２２】
【数１】
0004310850.tif 000002
【００２３】
である。
（１）式のｓは係数を、（２）式のｕ，ｖは画像の座標を、（３）式のＸ，Ｙ，Ｚは３次元データ上の点の座標を示す。（４）式のＰは射影行列であり、カメラ（３次元形状入力装置）の焦点距離などのパラメータが分かっている場合に、その要素の値は計算可能である。
【００２４】
一方、カメラのパラメータが分かっていない場合に、対応する３次元データ上の点と２次元画像上の点とを複数個指定し、それを（１）式に代入し、Ｐについて最小２乗法により解くことにより、Ｐの近似行列が求まる。
【００２５】
さて、次に、対象物Ｑを例えば一般的なデジタルカメラＴＣで撮像（撮影）することにより、２次元画像Ｉ２を得る。２次元画像Ｉ２は、３次元データＣ１には関連付けられていない。３次元データＣ２としては、例えば市販のＣＧモデル作成ソフトウエアにより作成されたもの、又は市販の三次元形状モデルなどを用いることができる。
【００２６】
３次元データＣ１，Ｃ２は、通常、ポリゴン（多面体）で表現される。また、３次元データＣ１，Ｃ２及び２次元画像Ｉ１，Ｉ２は、ＪＰＥＧファイルフォーマット又はＶＲＭＬフォーマットなど、一般的なデータフォーマットで表現することが可能である。但し、これらのデータは必ずしも全てが入力される必要はない。
【００２７】
さて、次に、３次元データＣ１などを対応付けるための対応点ＲＰの指定方法について説明する。
図４は３次元データＣ１を奥行き方向に沿って等間隔で切断する位置を示す図、図５は３次元データＣ１に等高線ＴＵを付加して表示した図、図６は図５に示された３次元データＣ１及び等高線ＴＵを横から見た状態を示す図、図７は３次元データＣ１に対応点ＲＰを中心とする一定半径の半透明な球を表示した状態を示す図である。
【００２８】
３次元データＣ１と２次元画像Ｉ２との対応付けのためには、上に述べたように３次元データＣ１から２次元画像Ｉ２への射影行列を求めることが必要であり、その場合に対応点が３次元データＣ１上に満遍なく存在する方が射影誤差が少なくなる。
【００２９】
そこで、本実施形態においては、３次元データＣ１を、その奥行き方向の空間的な位置によって複数の領域に分割し、その結果を表示ＨＧに表示する。
図３に示す３次元データＣ１は、対象物Ｑである「うさぎ」を撮影して得られたものである。本実施形態においては、図５に示すように「うさぎ」の正面から見た状態の３次元データＣ１に対して対応付けを行う場合について説明する。したがって、図５において、左右方向がＸ方向、上下方向がＹ方向、奥行き方向がＺ方向である。また、図４において、左右方向がＺ方向であり、その右端がＺ座標の最小値の点、左端がＺ座標の最大値の点となる。
【００３０】
図４に示すように、対象物Ｑは、Ｚ方向に沿った切断位置Ｃ０１〜Ｃ０９において一定の間隔で仮想的に切断される。そして、それぞれの切断位置Ｃ０１〜Ｃ０９における輪郭が、図５の３次元データＣ１に付加して表示される。図５に示されるように、切断位置Ｃ０１〜Ｃ０９における輪郭は、等高線ＴＵとして現れている。
【００３１】
図５において、切断位置Ｃ０７〜Ｃ０９における輪郭は、当該図の視線方向からは３次元データＣ１により隠れるので、陰線消去によって表示されていない。また、切断位置Ｃ０４，Ｃ０５における輪郭は、図が煩雑になるのを防ぐためにここでは省略されている。また、互いに異なる領域ＡＲは、模様、色、又は濃度などが互いに異なるように表示されている。
【００３２】
図５によると、等高線ＴＵによって囲まれる領域ＡＲは、それらの間隔が広くても狭くても奥行き方向について同じ範囲内にあることがユーザに容易に分かる。ユーザは、等高線ＴＵを対応点ＲＰの奥行き方向の位置の案内標識として用い、等高線ＴＵを目安として対応点ＲＰを満遍なく指定することができる。
【００３３】
例えば、等高線ＴＵで囲まれる１つの領域ＡＲ内において、奥行き方向（Ｚ方向）においては１つの対応点ＲＰのみを指定し、拡がり方向（Ｘ，Ｙ方向）においては一様となるように対応点ＲＰを指定する。１つの領域ＡＲ内で奥行き方向に１つの対応点ＲＰのみを指定することによって、対応点ＲＰが奥行き方向に満遍なく指定され、奥行き方向の指定が一様になる。また、拡がり方向においては、一様であるか否かをユーザが目で見て容易に確認することができるから、結局、領域ＡＲ内において容易に対応点ＲＰを一様に指定することができる。
【００３４】
また、異なる領域ＡＲ間において、狭い部分も広い部分も１つの対応点ＲＰのみを指定することによって、全体として容易に対応点ＲＰを一様に指定することができる。但し、３次元データＣ１上の特異な点、例えば、目、鼻、口、指などについては、上に述べた対応点ＲＰにこだわらずに、別途対応点を指定してもよい。
【００３５】
図６は、図５に示す３次元データＣ１及び等高線ＴＵなどをそのまま９０度回転させた場合に表示された状態を示す。図５に示す等高線ＴＵは、図６においては線ＴＵＬとして表示されている。
【００３６】
また、図７に示す例では、対応点ＲＰが指定されると、その対応点ＲＰを中心とする一定半径の半透明な球Ｐ０１〜０７が表示されている。球Ｐが互いに３次元的に交わる場合には、その球Ｐの色又は模様が他と異なるように強調表示され、又はブザーが鳴る。例えば、球Ｐ０６と球Ｐ０７とは交わっており、色が他と異なっている。これによって、指定した対応点ＲＰが互いに所定距離よりも近すぎることの警告がユーザに対してなされる。ユーザは、警告があったときに、その対応点ＲＰを別の位置に移動させればよい。また、そのままにしておいてもよい。
【００３７】
なお、球Ｐ０１と球Ｐ０２とは、「うさぎ」の正面から見れば交わっているように見えるが、奥行き方向において離れており、実際には交わっていない。このように、交わった球Ｐの色を変えることにより、ユーザがそれを容易に判別することができる。また、球Ｐが半透明で表示されているので、３次元データＣ１が隠れてしまうことがない。球Ｐの半径はユーザによって設定するようにしてもよく、予め設定された値を用いてもよい。
【００３８】
また、図示は省略したが、対応点ＲＰが指定されたときに、球Ｐを表示することなく、その対応点ＲＰと既に指定されている対応点ＲＰとの間の距離を演算し、得られた距離が予め設定した所定値よりも小さいときに警告を発するようにしてもよい。
【００３９】
次に、対応付けの対象となるデータが３次元データＣ１である場合又は２次元画像Ｉ１である場合のそれぞれについて、その対応付けの方法をフローチャートを参照して説明する。
〔３次元データに他の３次元データ又は２次元画像を対応付ける場合〕
まず、３次元データＣ１に対して、他の３次元データＣ２又は２次元画像Ｉ２を対応付ける場合について説明する。
【００４０】
３次元データＣ１を他の３次元データＣ２に対応付けする方法は、モデルベースによるモデリングにしばしば用いられる。モデルベースによるモデリングとは、３次元モデルデータ（３次元データＣ２）を３次元形状データ（３次元データＣ１）に合うように変形を行う方法であり、３次元モデルデータ上の指定された点を３次元形状データ上の指定された点に移動することによって実現される。
【００４１】
３次元データＣ１と３次元データＣ２との対応付けは、それらに対して互いに対応する点である対応点を複数組み指定することによって行う。３次元データＣ２上の対応点は、３次元データＣ１上の対応点に移動する。３次元データＣ１上の対応点以外の点の移動量は、その点の近傍に存在する対応点の移動量から補間によって求める。
【００４２】
モデルベースによるモデリングでは、大半の点の移動量つまり変形後の位置が補間によって決定されるので、３次元データ上に対応点が満遍なく存在する方が良い結果をもたらす。
【００４３】
３次元データＣ１を、それに関連付けされていない２次元画像Ｉ２に対応付ける方法は、例えば、３次元データＣ１に対応付けられた２次元画像Ｉ１を他の２次元画像Ｉ２に置き換える場合にしばしば用いられる。また、３次元データＣ１に対応付けられた２次元画像Ｉ１が存在しない場合に、３次元データＣ１に新規に２次元画像Ｉ２を関連付ける場合にも用いられる。
【００４４】
図８は第１の対応点指定方法における手順を示すフローチャート、図９は図８における３次元分割領域表示処理を示すフローチャートである。
図８において、３次元データＣ１を取り込み、ディスプレイ装置１３の表示面に表示する（＃１１）。そして、３次元データＣ２及び２次元画像Ｉ２を取り込み、ディスプレイ装置１３の表示面の異なる領域に表示する（＃１２）。
【００４５】
３次元データＣ１を奥行き方向に指定個分割し、分割されたそれぞれの領域の輪郭を等高線ＴＵとして表示する（＃１３）。その際に、２つの等高線ＴＵで囲まれる各領域ＡＲ毎に表示属性を変えて表示する。その後、ユーザは、等高線ＴＵを対応点ＲＰの奥行き方向の位置の案内標識として用い、対応点ＲＰの指定を行う（＃１４）。その際に、ユーザに対応点ＲＰの指定を促すためのメッセージなどを表示してもよい。指定された対応点ＲＰを用いて、３次元データＣ１と３次元データＣ２又は２次元画像Ｉ２との対応付けを行う（＃１５）。
【００４６】
図９において、まず、奥行き方向に分割する分割数Ｎを設定する（＃１３１）。分割数Ｎは、ユーザの入力によって設定してもよく、又は予め用意した値を用いてもよい。次に、３次元データＣ１を、奥行き方向をＺ軸とする座標系で表現する（＃１３２）。そのために、３次元データＣ１の座標系を視線情報（カメラ情報）を用いて変換する。視線情報は、一般的に３次元データＣ１に含まれているが、視線情報を持たない場合は予め用意した視線情報を用いる。
【００４７】
３次元データＣ１上の各点の座標変換の方法は次のようである。但し、視線情報の形式によって表現式が異なることがある。
すなわち、３次元データＣ１（ｘ，ｙ，ｚ）t を、奥行き方向をＺ軸とする座標系で表現した３次元データＣ１ａ（Ｘ，Ｙ，Ｚ）t に変換するには、次の（５）式に示す演算を行う。
【００４８】
【数２】
0004310850.tif 000003
【００４９】
（５）式において、左辺は３次元データＣ１ａ（Ｘ，Ｙ，Ｚ）t の座標値であり、右辺の第２項は３次元データＣ１（ｘ，ｙ，ｚ）t の座標値である。右辺の第１項は、視線情報から求められる変換行列である。
【００５０】
図９に戻って、座標変換された３次元データＣ１ａに対して、そのすべての頂点のＺ座標値の最大値及び最小値を求め、その間をＮ個の領域に分割する（＃１３３）。そのため、次に示すようにＺ座標軸に垂直な平面で３次元データＣ１ａを切断する。
【００５１】
【数３】
0004310850.tif 000004
【００５２】
但し、ｋ＝１，２，３…，Ｎ−１  である。
これにより、次の（７）式で示すＮ個の領域に分割される。
【００５３】
【数４】
0004310850.tif 000005
【００５４】
但し、ｋ＝１，２，３…，Ｎ  である。
ここで、Ｚｍａｘは、座標変換後の３次元データＣ１ａのすべての頂点のうちの最大のＺ座標値を、Ｚｍｉｎは最小のＺ座標値を示す。
【００５５】
そして、Ｎ個に分割された領域の境界を明示するために、３次元データＣ１ａの各分割平面での断面輪郭を求める（＃１３４）。３次元データＣ１ａはポリゴンで表現されているため、具体的にはポリゴンを構成する各３角形のエッジと分割平面との交点を求め、それらを順次繋ぐことにより輪郭形状を求める。この輪郭形状は、一般的に複数個の閉じた輪郭線となる。交点は次のようにして求めることができる。
【００５６】
分割平面Ｚ＝Ｚ0 と２点（Ｐ1 x ，Ｐ1 y ，Ｐ1 z ），（Ｐ2 x ，Ｐ2 y ，Ｐ2 z ）の交点は、
α＝（Ｚ0 −Ｐ2 z ）／（Ｐ1 z −Ｐ2 z ）
とすると、
０≦α≦１
の場合に交点が存在し、その座標値は、
（α（Ｐ1 x −Ｐ2 x ）＋Ｐ2 x ，α（Ｐ1 y −Ｐ2 y ）＋Ｐ2 y ，Ｚ0 ）である。
【００５７】
α＜０又は１＜αの場合には交点は存在しない。
なお、ここでは、３角形によるポリゴン表現の場合を述べたが、一般にポリゴン表現に用いられる凸多角形の場合についても同様に演算することができる。
【００５８】
さらに、座標変換後の３次元データＣ１ａについて、上の（７）式の各分割領域に入っているポリゴンのエッジをすべて求める。これは、上の（７）式の領域とエッジの端点の包含関係から簡単に求めることができる。
【００５９】
エッジが複数の領域にまたがるときは、上の（６）式に示す切断平面との交点を求め、その交点でエッジを複数個のエッジ（以下「部分エッジ」ということがある）に分割し、部分エッジ毎に各分割領域に入っているか否かを調べる（＃１３５）。
【００６０】
このようにして得られたデータに対して、断面輪郭を表示面上に太線で表示し（＃１３５）、各分割領域に入っているエッジをその分割領域に割り当てられた色で表示する（＃１３６）。このような表示を行うことにより、３次元データＣ１（３次元データＣ１ａ）についての奥行き方向の違いが明確となる。
【００６１】
次に、図７に示すような球Ｐを表示する場合について説明する。
図１０は第２の対応点指定方法における手順を示すフローチャートである。
図１０において、ステップ＃２１，２２，３０は、図８のステップ＃１１，１２，１５と同じである。ステップ＃１３及び１４の処理に代えて、ここではステップ＃２３〜２９の処理が行われる。
【００６２】
ステップ＃２３において、入力されたデータに対して、表示面を見ながら対応点ＲＰの指定を行う（＃２３）。指定された対応点ＲＰについて、一定の半径の球Ｐを表示する（＃２４）。球Ｐが既に表示されている球Ｐと干渉するか否かを調べる（＃２５）。２つの球Ｐが干渉するか否かの計算は、次のようにして行うことができる。
【００６３】
すなわち、２点（Ｐ1 x ，Ｐ1 y ，Ｐ1 z ），（Ｐ2 x ，Ｐ2 y ，Ｐ2 z ）を中心とする半径Ｒの球Ｐは、次のときに交わる。
（Ｐ1 x −Ｐ2 x ）2 ＋（Ｐ1 y −Ｐ2 y ）2 ＋（Ｐ1 z −Ｐ2 z ）2 
＜（２×Ｒ）2 
干渉している場合には（＃２６でイエス）、警告のメッセージを表示する。また、干渉しているすべての球Ｐの色を変える（＃２７）。２つの対応点ＲＰが近い場合であっても、ユーザが対応点ＲＰとして指定すべきであると判断する場合があるので、ステップ＃２８において干渉した対応点ＲＰを取り消すか否かの判断を求める。
【００６４】
一方、球Ｐが干渉していないと判断された場合には、ユーザが対応点ＲＰの指定を終了すると判断するまで、ステップ＃２３以降の処理を繰り返す。
〔３次元データに対応付けられた２次元画像を用いて対応付ける場合〕
次に、３次元データＣ１に対して、その３次元データＣ１に対応付けられた２次元画像Ｉ１を用いて他の３次元データＣ２又は２次元画像Ｉ２を対応付ける場合について説明する。
【００６５】
図１１は第３の対応点指定方法における手順を示すフローチャート、図１２は図１１における２次元分割領域表示処理を示すフローチャートである。
２次元画像Ｉ１は既知の射影面であるから、３次元データＣ１から２次元画像Ｉ１への射影行列は既知である。この場合に、３次元データＣ１に対して対応点ＲＰを指定するよりも、２次元画像Ｉ１に対して対応点ＲＰを指定する方がユーザにとっては分かり易く指定がし易い。したがって、ここでは、２次元画像Ｉ１を表示面に表示し、３次元データＣ１についての等高線ＴＵを２次元画像Ｉ１の中に表示する。
【００６６】
図１１において、ステップ＃４１，４３は、図８のステップ＃１１，１２と同じである。ステップ＃４２において、２次元画像Ｉ１を取り込み、ディスプレイ装置１３の表示面のおいて３次元データＣ１の領域とは異なる領域に表示する。ステップ＃４４においては、３次元データＣ１を奥行き方向に関して領域分割し表示する。
【００６７】
ステップ＃４５において、２次元画像Ｉ１上で対応点ＲＰを指定する。２次元画像Ｉ１では、対象物Ｑの表面の模様などがよく表れるので、対応点ＲＰの指定がより容易である。
【００６８】
ステップ＃４６において、指定された対応点ＲＰを用いて、３次元データＣ１と３次元データＣ２又は２次元画像Ｉ２との対応付けを行う。但し、対応点ＲＰは２次元画像Ｉ１によって間接的に指定されているので、２次元画像Ｉ１上の指定点に対応する３次元データＣ１上の対応点ＲＰを求める必要がある。これは、上に述べたように、３次元データＣ１上の各頂点から射影行列を用いることによって求める。そのうち、射影位置が２次元画像Ｉ１上の指定点に近い頂点を幾つか選ぴ、それらの間の３次元データＣ１をさらに細かく分割し、その分割点の２次元画像Ｉ１上の射影点を求める。このような処理を数回繰り返し、射影位置が指定点に十分近くなったとき、その指定点に射影された３次元データＣ１上の点を対応点ＲＰとする。
【００６９】
図１２において、ステップ＃４４１〜４４４は、図９のステップ＃１３１〜１３４と同じである。ステップ＃４４５において、各領域の断面輪郭を既知の射影行列を用いて２次元画像Ｉ１に射影し、太線で又は射影された輪郭毎に特定の色で表示する。
【００７０】
上に述べた実施形態においては、３次元データＣ１についての対応点ＲＰの指定の方法を中心に説明したが、３次元データＣ２についても、３次元データＣ１の場合と同様に等高線ＴＵ又は球Ｐを表示し、それらのよって対応点ＲＰの指定を容易にすることができる。
【００７１】
上に述べた実施形態において、対応点ＲＰが得られた領域ＡＲについてはその旨を表示し又は表示を消去するようにしてもよい。その他、３次元データ処理装置１の構成、処理内容又は順序などは、本発明の趣旨に沿って適宜変更することができる。
【００７２】
【発明の効果】
本発明によると、３次元形状を対応付ける際に、対応点が一様になるように容易に指定できることができる。
【００７３】
請求項２の発明によると、対応点の指定がより一層容易である。
【図面の簡単な説明】
【図１】本発明に係る方法を実施するための３次元データ処理装置の構成を示すブロック図である。
【図２】３次元データ及び２次元画像を取得する方法を説明する図である。
【図３】３次元データの例を示す図である。
【図４】３次元データを奥行き方向に沿って等間隔で切断する位置を示す図である。
【図５】３次元データに等高線を付加して表示した図である。
【図６】図５に示された３次元データ及び等高線を横から見た状態を示す図である。
【図７】３次元データに対応点を中心とする一定半径の半透明な球を表示した状態を示す図である。
【図８】第１の対応点指定方法における手順を示すフローチャートである。
【図９】図８における３次元分割領域表示処理を示すフローチャートである。
【図１０】第２の対応点指定方法における手順を示すフローチャートである。
【図１１】第３の対応点指定方法における手順を示すフローチャートである。
【図１２】図１１における２次元分割領域表示処理を示すフローチャートである。
【符号の説明】
１  ３次元データ処理装置
１３  ディスプレイ装置
Ｃ１  ３次元データ（第１の３次元形状）
Ｃ２  ３次元データ（第２の３次元形状）
Ｉ１  ２次元画像（第１の２次元画像）
Ｉ２  ２次元画像
ＲＰ  対応点
ＴＵ  等高線
ＨＧ  表示面
Ｐ  球
【図１】
0004310850.tif 000006
【図２】
0004310850.tif 000007
【図３】
0004310850.tif 000008
【図４】
0004310850.tif 000009
【図５】
0004310850.tif 000010
【図６】
0004310850.tif 000011
【図７】
0004310850.tif 000012
【図８】
0004310850.tif 000013
【図９】
0004310850.tif 000014
【図１０】
0004310850.tif 000015
【図１１】
0004310850.tif 000016
【図１２】
0004310850.tif 000017