JP4192377B2 - Data reduction method and data reduction apparatus for three-dimensional shape data - Google Patents

Data reduction method and data reduction apparatus for three-dimensional shape data Download PDF

Info

Publication number
JP4192377B2
JP4192377B2 JP37126599A JP37126599A JP4192377B2 JP 4192377 B2 JP4192377 B2 JP 4192377B2 JP 37126599 A JP37126599 A JP 37126599A JP 37126599 A JP37126599 A JP 37126599A JP 4192377 B2 JP4192377 B2 JP 4192377B2
Authority
JP
Japan
Prior art keywords
data
evaluation value
error
dimensional shape
polygon model
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.)
Expired - Fee Related
Application number
JP37126599A
Other languages
Japanese (ja)
Other versions
JP2001184528A (en
Inventor
芳久 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Opto Inc
Original Assignee
Konica Minolta Opto Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Konica Minolta Opto Inc filed Critical Konica Minolta Opto Inc
Priority to JP37126599A priority Critical patent/JP4192377B2/en
Priority to US09/748,141 priority patent/US6958753B2/en
Priority to EP00128414A priority patent/EP1113400A3/en
Publication of JP2001184528A publication Critical patent/JP2001184528A/en
Application granted granted Critical
Publication of JP4192377B2 publication Critical patent/JP4192377B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ポリゴンモデルを構成する三次元形状データのデータ削減方法及びその方法を用いたデータ削減装置に関するものである。
【0002】
【従来の技術】
例えば空間分解能の極めて高い三次元形状計測装置で得られる描画品質の高い計測データはデータ数が膨大であるため、必要以上の描画品質を備えている場合は、その後の処理において記憶装置への負担が大きく、処理速度も著しく低下するという問題が生じる。このため、計測データのデータ数を削減して上記問題をできる限り低減することが必要となるが、この場合、データ削減後の計測データで構成されるポリゴンモデル(すなわち、近似化されたポリゴンモデル)と実測された三次元形状データで構成されるポリゴンモデル(以下、最初のポリゴンモデルという。)との相違が大きすぎると、データ削減後の計測データを有効に活用することができなくなるので、データ削減処理においては、近似化されたポリゴンモデルと最初のポリゴンモデルとの誤差を管理する必要がある。
【0003】
特に三次元形状計測装置で得られた三次元形状データの場合、実測された三次元形状データがデータ削減処理によって近似値に変換されるので、最初のポリゴンモデルと近似化されたポリゴンモデルとの誤差管理は、実測された三次元形状データを基準に行うことが好ましい。
【0004】
その一方、従来、三角形ポリゴンモデルにおいて、所望の許容誤差範囲内でモデルの近似化を図ることにより当該三角形ポリゴンモデルを構成する三次元形状データのデータ数を削減する方法が種々提案されている。
【0005】
例えば論文「3次元ポリゴンモデルの階層的近似」(堀川,戸塚、Proceedings of the 5th Sony Research Forum,pp3-7,1995)には、三角形ポリゴンモデルを構成する各エッジのモデル形状への寄与を当該エッジを除去した場合に変化する体積を表す評価関数で評価し、例えばエッジと周辺の面とが平行である場合や面が小さい場合やエッジが短い場合等の評価値が小さいエッジを除去することで、三次元形状データのデータ数を削減する方法が示されている。
【0006】
また、論文「Simplification Envelopes」(Cohen Jonathan,Amitabh Varshney,Dinesh Manocha,Greg Turk,Hans Weber,Pankai Agarwal,Frederick Brooks and William Wright.Proceedings of SIGGRAPH 96 In Computer Graphics Proceedings,Annual Conference Series,1996,ACM SIGGRAPH,pp.119-128)には、最初のポリゴンモデルを誤差εで縮小したモデルと誤差εで拡大したモデルとを作成し、最初のポリゴンモデルを近似化したポリゴンモデルが拡大/縮小した両モデルの間に入るように最初のポリゴンモデルのデータ数を削減する方法が示されている。
【0007】
また、論文「Surface Simplification Using Quadric Error Metrics」(Michael Garland and Paul S.Heckbert.Carnegie Mellon University Proceedings of SIGGRAPH 97.1997)には、例えば三角形ポリゴンモデルのエッジ又は面を構成する2個以上の格子点(三次元形状データ)を1個の格子点(三次元形状データ)に集結することにより三角形ポリゴンモデルを構成する三次元形状データのデータ数を削減する方法として、エッジ収縮もしくは面収縮により集結される格子点とエッジ収縮もしくは面収縮により影響を受けた最初の三角形ポリゴンモデルを構成する各平面との距離の離れ具合をデータ削減処理における誤差として管理し、この誤差が所定の許容誤差範囲内であるエッジ収縮もしくは面収縮の処理のみを行うことで、所定の許容誤差範囲内でデータ数の削減を行う方法が示されている。
【0008】
【発明が解決しようとする課題】
上記論文「3次元ポリゴンモデルの階層的近似」に示されるデータ削減方法は評価値によってエッジを除去するだけであるので、ポリゴンモデルの特徴的な部分の三次元データは残るものの、エッジ除去によるモデルの近似化における誤差を評価することはできない。従って、CG(Computer Graphics)におけるVR(Virtual Reality)やゲーム等のように、単に三次元画像を表示するためにポリゴンモデルのデータ数を削減する場合には有効であるが、三次元形状計測装置で得られた計測データのように、最初の計測データとデータ削減後の近似モデルのデータとの誤差管理を必要とする場合には有効な方法となり得ない。
【0009】
一方、上記論文「Simplification Envelopes」に示されるデータ削減方法は、厳密な誤差管理は可能であるが、データ削減処理の過程で誤差εで拡大及び縮小したポリゴンモデルを作成し、それらのポリゴンモデルのデータを保持する必要があるので、処理に関係するデータ数が膨大となり、メモリ容量やデータ削減のための演算処理の負担が大きいという問題がある。
【0010】
また、上記論文「Surface Simplification Using Quadric Error Metrics」に示されるデータ削減方法は、最初のポリゴンモデルを構成する面に対する近似後のポリゴンモデルを構成する格子点の離れ具合を誤差として管理しているため、三次元形状計測装置の計測データのように最初のポリゴンモデルを構成する格子点に対して近似後のポリゴンモデルの誤差を管理してデータ削減を行いたい場合には必ずしも適切な方法とは言い難い。
【0011】
また、三次元形状計測装置で測定対象物の粗い面や切削された面を測定して得られた計測データの場合、例えばポリゴンモデルにおいて局所的に面の向きがジグザグに急変するような場合、それらのジグザグな面に対する誤差を評価することになるので、データの削減が進むにつれて誤差が大きく評価され、データ削減が十分に行なわれないという問題がある。
【0012】
本発明は、上記課題に鑑みてなされたものであり、三次元形状計測装置で得られた計測データに対して正確な誤差評価に基づき適正にデータ削減が可能な三次元形状データのデータ削減方法及びそのデータ削減方法を用いたデータ削減装置を提供するものである。
【0013】
【課題を解決するための手段】
請求項1記載の発明は、2個以上の格子点を1個の格子点に集結してポリゴンモデルのエッジもしくは面を収縮することにより当該ポリゴンモデルを構成する複数の三次元座標データのデータ数を削減する三次元形状データのデータ削減方法であって、評価値算出手段が、上記ポリゴンモデルのエッジもしくは面を収縮することにより変形を受ける全ての面について、各面と各面の変形に関与した全ての最初の格子点との距離に基づく所定の評価値を算出する工程と、比較手段が、上記評価値を予め設定された許容値と比較する工程と、データ削減手段が、上記評価値が上記許容値以下であるとき、上記エッジもしくは面の収縮を行って上記三次元形状データの削減を行う工程とを備えるものである。
【0014】
また、請求項記載の発明は、2個以上の格子点を1個の格子点に集結してポリゴンモデルのエッジもしくは面を収縮することにより当該ポリゴンモデルを構成する複数の三次元座標データのデータ数を削減する三次元形状データのデータ削減装置であって、上記ポリゴンモデルのエッジもしくは面を収縮することにより変形を受ける全ての面について、各面と各面の変形に関与した全ての最初の格子点との距離に基づく所定の評価値を算出する評価値算出手段と、上記評価値を予め設定された許容値と比較する比較手段と、上記評価値が上記許容値以下であるとき、上記エッジもしくは面の収縮を行って上記三次元形状データの削減を行うデータ削減手段とを備えたものである。
【0015】
上記構成によれば、ポリゴンモデルのエッジもしくは面を収縮することにより変形を受ける全ての面について、各面と各面の変形に関与した全ての最初の格子点との距離に基づく所定の評価値が算出され、この評価値は予め設定された許容値と比較される。そして、その評価値が許容値以下であるとき、そのエッジもしくは面の収縮を行ってポリゴンモデルを構成する三次元形状データが削減される。
【0016】
なお、上記評価値は、下記(1)式で定義する誤差εとするとよい(請求項2,4)。
【0017】
【数4】

Figure 0004192377
【0018】
この構成によれば、ポリゴンモデルを構成するエッジもしくは面について、(1)式で定義される誤差εが当該エッジもしくは面の収縮の可否を判定する評価値として算出され、その誤差εが所定の許容値以下であるとき、当該エッジもしくは面を収縮させてポリゴンモデルを構成する格子点(三次元形状データ)が削減される。
【0019】
ここに、(1)式における分母は、ポリゴンモデルを構成する面のうち、エッジ収縮もしくは面収縮により変形を受ける全ての面についての、当該面と当該面の変形に関与した最初の格子点との距離の2乗和を示し、(1)式の分子は、分母の距離の2乗和の項の総数を示している。従って、誤差εは、エッジ収縮もしくは面収縮により変形を受ける面が当該面の変形に関与した最初の格子点からどの程度離れているかを示す離れ具合(距離の2乗)の平均値を示している。
【0020】
また、請求項5記載の発明は、請求項4記載の三次元形状のデータ削減装置において、上記評価値算出手段は、最初のポリゴンモデルを構成する全ての格子点vについてそれぞれ誤差行列Kvを算出しておき、2個以上の格子点vp(p=1,2,…)を1の格子点vqに集結したときは、集結させた各格子点vpの誤差行列Kvpの和をその格子点vqの誤差行列Kvqとして上記(1)式により誤差εを算出するものである。
【0021】
上記構成によれば、データ削減処理に際し、最初のポリゴンモデルを構成する全ての格子点vについてそれぞれ誤差行列Kvが算出され、エッジ収縮処理もしくは面収縮処理により2個以上の格子点vp(p=1,2,…)が1の格子点vqに集結されたときは、次のエッジ収縮もしくは面収縮でこの格子点vqを集結させる際、格子点vqに集結させた各格子点vpの誤差行列Kvpの和がその格子点vqの誤差行列Kvq(=ΣKvp)として算出され、この誤差行列Kvqを用いて上記(1)式により誤差εが算出される。
【0022】
集結後の格子点の誤差行列は、最初の格子点の誤差行列を加算することで算出されるので、演算が容易となる。また、最終的に各格子点について当該エッジ収縮もしくは面収縮で関係した最初の格子点の誤差行列の和を対応付けることで、誤差評価を行うことができる。
【0023】
また、請求項6記載の発明は、請求項5記載の三次元形状のデータ削減装置において、上記評価値算出手段は、最初の格子点についてそれぞれ算出した誤差行列の対角元素とこの対角元素よりも上側の元素のみを記憶手段に記憶しておき、この記憶手段に記憶された対角元素とこの対角元素より上側の元素とを用いて誤差行列を復元し、この誤差行列を用いて上記(1)式により誤差εを算出するものである。
【0024】
上記構成によれば、最初の格子点についてそれぞれ算出された誤差行列は対称行列となり、その誤差行列の対角元素とその対角元素の上側の元素が記憶されるので、メモリの低減に寄与する。
【0025】
また、請求項7記載の発明は、請求項4記載の三次元形状のデータ削減装置において、上記評価値算出手段は、最初の格子点の三次元形状データの列ベクトルVが下記(2)式で表されるとき、各面pi毎に算出される誤差行列ΣKvj(j=1,2,…mi)の右下隅の元素を加算することで上記(1)式の総数Σmi(i=1,2,…n)を算出するものである。
【0026】
【数5】
Figure 0004192377
【0027】
上記構成によれば、格子点vの三次元形状データの烈ベクトルVが(2)式で表されるとき、この格子点vの誤差行列Kvは下記(A)式のようになり、右下隅の元素は常に「1」となる。従って、ΣKvjの総数は各誤差行列Kvjの右下隅の元素の総和となるので、これを演算することで別途総和を演算する必要がない。
【0028】
【数6】
Figure 0004192377
【0029】
また、請求項8記載の発明は、請求項4記載の三次元形状データのデータ削減装置において、上記評価値算出手段は、上記格子点vjの誤差行列Kvjに代えて重み付誤差行列wj・Kvjを用いて上記(1)式により誤差εを算出するものである。
【0030】
上記構成によれば、誤差εは、格子点vjの誤差行列Kvjに代えて重み付誤差行列wj・Kvjを用いて上記(1)式により算出される。
【0031】
【発明の実施の形態】
図1は、本発明に係るデータ削減方法を適用した三次元形状計測データの処理システムのブロック構成図である。
【0032】
同図に示す三次元形状計測データの処理システム(以下、形状データ処理システムという。)は、被測定物Gの三次元形状データを計測する三次元形状計測装置1、三次元形状計測装置1で計測された三次元形状データを記憶する外部記憶装置2、三次元形状計測装置1で計測された三次元形状データを本発明に係るデータ削減方法を用いて削減し、所定のデータ処理を行う形状データ処理装置3、形状データ処理装置3で処理された三次元形状データを記憶する外部記憶装置4、データ削減後の三次元形状データを用いて、例えばポリゴンモデル等の測定物Gの三次元形状画像を表示する表示装置5及び形状データ処理装置3で処理された三次元形状データが利用されるCAD/CAM(computer aided design and computer aided manufacturing)等の外部処理装置6から構成されている。
【0033】
三次元形状計測装置1は共役オートフォーカスシステムを用いて測定対象物Gの表面形状の計測を行うものである。三次元形状計測装置1は、図2に示すように、照明光を発生する照明部101、照明部101からの照明光を測定対象物Gに照射するとともに、測定対象物Gで反射した照明光を受光部103に導く共焦点型光学系102、測定対象物Gを反射した照明光を受光し、電気信号に光電変換して出力する受光部103、この共焦点型光学系102(以下、光学系102と呼ぶ。)を透過した測定対象物Gからの反射光を分光して受光部103に導くビームスプリッタ104及び受光部103から出力される受光信号を用いて測定対象物Gの表面の位置座標を算出する演算部105からなる基本構成を有している。
【0034】
測定対象物Gの三次元形状は当該測定対象物Gを三次元形状装置1の前方に配置された測定テーブル106に載置し、当該測定テーブル106を高さ方向に所定のピッチで昇降させつつ、各高さ位置で測定対象物Gの表面の凹凸を計測することにより行なわれる。すなわち、測定対象物Gの高さ方向をY方向、光学系102の光軸方向をZ方向、Y方向及びZ方向に直交する方向をX方向とすると、測定対象物GのY座標を所定のピッチで変化させつつ、各Y座標の位置で測定対象物GのZ座標を計測することにより測定対象物Gの三次元形状が計測される。そして、三次元形状計測装置1で計測された測定対象物Gの三次元形状データ(x,y,z)は形状データ処理装置3に入力される。
【0035】
なお、三次元計測装置1はX軸と平行に配置されたラインセンサからなる光電変換素子103aを備え、この光電変換素子103aの各画素毎(各画素位置がX座標に相当)にその受光信号を用いて測定対象物Gの表面の位置座標(Z座標)を計測するようなっている。このため、光電変換素子103a全体に測定対象物Gからの反射光が入射されるように、照明部101からはX方向に延びるスリット状の照明光が発光される。
【0036】
測定対象物GのZ座標は以下のように計測される。まず、光学系102の像側の焦点位置に配置された照明部101からX方向に延びるスリット状の照明光を発光させる。この照明光は光学系102の物体側の焦点位置に集光され、その焦点位置にX方向に延びるライン光が形成される。次に、この状態で光学系102の物体側の焦点位置(すなわち、ライン光)を光軸方向に当該焦点位置が測定対象物Gの内部に至るまで移動させつつ、所定の周期で光電変換素子103aの露光を繰り返す。そして、各露光位置で受光された受光信号のレベルを用いて、演算部105で最大レベルとなる露光位置を光電変化素子103aの各画素毎に算出し、その位置を測定対象物Gの表面のZ座標とする。
【0037】
形状データ処理装置3は、ポリゴン生成部31、データ削減部32、許容値入力部33及びデータ出力部34を備えている。ポリゴン生成部31は三次元形状計測装置1から入力された測定対象物Gの三次元形状データ(x,y,z)に基づいて測定対象物Gのポリゴンモデルを生成するものである。データ削減部32はポリゴンモデルのエッジ収縮もしくは面収縮により三次元形状データの削減を行うものである。すなわち、図3に示すように、計測データに基づく精密なポリゴンモデルAを所定の許容誤差範囲内でポリゴンモデルBに近似化するように、ポリゴンモデルAの格子点(三次元形状データ)を適当に削減するものである。
【0038】
データ削減部32は、後述するデータ削減処理を実行するため、評価値演算部321、評価値ソート部322及びエッジ/面収縮処理部323を備えている。
【0039】
評価値演算部321は、2個以上の格子点を集結して1個の格子点に置換することによりポリゴンモデルを構成するエッジ又は面を収縮する(すなわち、ポリゴンモデルの近似化を図る)に当たり、各エッジ又は各面の収縮の可否を判定するための評価値を算出するものである。この評価値については後述する。
【0040】
評価値ソート部322は評価値演算部321で各エッジ毎もしくは各面毎に算出された複数の評価値を小さい順もしくは大きい順に並べ替えることで最小の評価値を算出するものである。エッジ/面収縮処理部323は評価値ソート部322で算出された最小評価値を許容値入力部33から入力された許容値と比較し、許容値以下であるとき、その最小評価値に対応するエッジもしくは面の収縮処理を行うものである。なお、評価値及びエッジ収縮方法については後述する。
【0041】
許容値入力部33は上述のようにエッジ収縮もしくは面収縮の可否を判定するための許容値を操作者が入力するためのものである。この許容値はポリゴンモデルを近似化するに当たり、エッジ収縮もしくは面収縮を行ってもポリゴンモデルの特徴部分への影響が少ないとされる許容範囲に相当し、操作者によって測定対象物Gの形状に応じて適宜入力される。
【0042】
データ出力部34はデータを削減された三次元形状データ(近似化されたポリゴンモデルを構成する三次元形状データ)を外部記憶装置4、表示装置5、外部処理装置6に出力するインターフェースである。
【0043】
外部記憶装置4は磁気ディスク、光ディスク、磁気光ディスク等の外部記録媒体にデータを記録するもので、形状データ処理装置3から三次元形状データが入力されると、所定のファイル形式で外部記録媒体に記録する。
【0044】
表示装置5はブラウン管、液晶表示デバイス等の電子ディスプレイ装置からなる表示装置である。表示装置5に形状データ処理装置3から三次元形状データが入力されると、そのデータに基づいて近似化された測定対象物Gのポリゴンモデルの画像が表示される(図3のポリゴンモデルBを参照)。
【0045】
外部処理装置6は、例えば測定対象物Gの表面形状と略同一の形状を有する金型や模型を製作する装置である。外部処理装置6に形状データ処理装置3から三次元形状データが入力されると、その三次元形状データに基づいてワークが切削されて金型等が自動製作される。
【0046】
次に、本発明に係るデータ削減方法を説明する。
【0047】
図4はエッジ収縮によるデータ削減方法の概念図である。また、図5は面収縮によるデータ削減方法の概念図である。
【0048】
エッジ収縮によるデータ削減方法は、図4に示すようにポリゴンモデルが格子点v1〜v10で構成されている場合、例えば格子点v1と格子点v2とを結ぶエッジEd12を収縮するように両格子点v1,v2を格子点v1’に集結させてデータ数を削減する方法である。
【0049】
エッジ収縮によるデータ削減方法(以下、エッジ収縮法と略称する。)では、まず、全てのエッジEdij(i,j=1,2,…10。但し、i≠jで格子点が互いに隣接する組合わせ)についてエッジ収縮によるポリゴンモデルの形状変化への影響を評価する評価値を算出し、最小の評価値が許容値以下である場合にその評価値に対応するエッジEdijの両端の格子点vi,vjを所定の格子点vi’に集結してデータの削減が行なわれる。
【0050】
次に、格子点vi,vjを格子点vi’に集結したポリゴンモデル(近似化されたポリゴンモデル)について同様の方法でエッジの収縮が行われ、更にデータの削減が行なわれる。そして、以下同様の方法でエッジ収縮後のポリゴンモデルにつきエッジ収縮ができなくなるまで1つずつエッジ収縮を行って(すなわち、最小評価値が許容値よりも大きくなるまでポリゴンモデルの近似化を繰り返して)、データの削減が行われる。
【0051】
なお、格子点vi’は、上述した論文「3次元ポリゴンモデルの階層的近似」に示されるように、例えばエッジEdijの中点等の格子点vi,vj間の適所に設定される近似点である。
【0052】
面収縮によるデータ削減方法(以下、面収縮法と略称する。)は、図5に示すようにポリゴンモデルが格子点v1〜v11で構成されている場合、例えば格子点v1,格子点v2及び格子点v3で囲まれた面P123を除去するように格子点v1,v2,v3を格子点v1’に集結させてデータ数を削減する方法である。
【0053】
面収縮によるデータ削減方法も基本的にエッジ収縮によるデータ削減方法と同様の手順で行なわれる。すなわち、まず、全ての面Pijk(i,j,k=1,2,…10。但し、i≠j≠kで格子点が互いに隣接する組合わせ)について面収縮によるポリゴンモデルの形状変化への影響を評価する評価値を算出し、最小の評価値が許容値以下である場合にその評価値に対応する面Pijkを構成する格子点vi,vj,vkを所定の格子点vi’に集結してデータの削減が行なわれ、以下同様の方法で面収縮後のポリゴンモデルにつき面収縮ができなくなるまで1つずつ面収縮を行ってデータの削減が行われる。
【0054】
エッジ収縮法もしくは面収縮法によって三次元形状データを順次削減した場合、データ削減処理後の被測定物Gを構成する三次元形状データは三次元形状計測装置1で実測された被測定物Gの三次元形状データとは異なり、近似された三次元形状データとなる。このため、実測された三次元形状データで構成されるポリゴンモデル(以下、最初のポリゴンモデルという。)に対するデータ削減後のポリゴンモデル(以下、近似化されたポリゴンモデルという。)の誤差を管理しながらデータ削減処理を行う必要がある。
【0055】
本実施形態に係るデータ削減方法では、例えばエッジ収縮を繰り返して、例えば図6に示すように格子点a,b,c(実測された三次元形状データ)がそれぞれ格子点a’,b’,c’に近似され、三角形ポリゴンPabcが三角形ポリゴンPabc’に近似されるとすると、近似後の三角形ポリゴンPabc’を含む面がこの面の近似処理に関与する最初の格子点a,b,cから離れていく具合を誤差として管理するようにしている。
【0056】
なお、図6の例では、説明の便宜上、近似処理に関与する格子点を格子点a,b,cとしたが、実際の処理では、例えば格子点aが格子点a’に集結されていく過程で格子点a以外の格子点(実測データ)が含まれているので、上述した誤差にはこれらの格子点と三角形ポリゴンPabc’との距離も含まれる。
【0057】
次に、本実施形態に係るデータ削減方法に適用される誤差の評価値について説明する。
【0058】
一般に、三次元空間における平面pは、
A・x+B・y+C・z+D=0 …(3)
但し、A2+B2+C2=1
の方程式で表される。
【0059】
一方、三次元空間上の点vの座標を(vx,vy,vz)とすると、点vと平面pとの距離dは、
d=A・vx+B・vy+C・vz+D …(4)
で算出され、行列式でベクトル表記すると、下記(5)式のようになる。
【0060】
【数7】
Figure 0004192377
【0061】
従って、距離dの2乗は、下記(6)式のようになる。
【0062】
【数8】
Figure 0004192377
【0063】
上記(6)式は、1つの平面pとこの平面pに含まれない1個の点vとの距離dの2乗を示すものであるが、平面pに対して複数個の点v1,v2,…vmがある場合、これらの点vi(i=1,2,…m)との距離の2乗和Δ(p)は、下記(7)式のようになる。
【0064】
【数9】
Figure 0004192377
【0065】
本実施形態に係るデータ削減方法においては、例えばエッジ収縮によりデータ削減をする場合、あるエッジの収縮によって影響を受けるポリゴンモデルの平面がn枚あるとする場合、それらの平面の全てについて、各平面とその平面への近似化のためにデータ削減処理に関与した複数個の最初の格子点(元の三次元形状データ)との距離の離れ具合を評価するようにしているので、各平面毎に上記(7)式によって算出される距離の2乗和Δ(p)を算出し、これらの総和をデータ削減処理に関与した全ての格子点の総数Mで除した、下記(8)式で示されるεを誤差の評価値としている。
【0066】
【数10】
Figure 0004192377
【0067】
なお、上記(8)式において、Δ(pi)は、i番目の平面piに対する当該平面piの近似化に寄与した全ての最初の格子点との距離の2乗和であり、miはその距離の2乗和における項数である。
【0068】
また、上記(8)式の演算処理においては、行列Kviは上記(6)式で示したように対称行列となるので、最初の格子点viについて算出される行列行列Kviは、対角元素とその対角元素より上側の元素とをメモリに記憶させるようにするとよい。このようにすれば、演算処理に必要なメモリ容量を低減することができる。また、上記(8)式の分子の各要素miはi番目の近似面piにおける距離の2乗和の項数であるが、行列Kvの右下隅の元素は常に「1」であり、この距離の2乗和の演算結果における行列ΣKvの右下隅の元素はmiとなるから、この元素の値を利用して上記(8)式の演算を行うようにするとよい。このようにすれば、改めて項数miを算出する必要がなく、演算処理が容易となる。
【0069】
なお、上記(7)式をある平面pに対する誤差の評価に適用した場合、当該平面pに至るエッジ収縮もしくは面収縮の処理過程で関与した最初の格子点viが特定されると、それらの格子点viの三次元形状データから得られる行列Kviを加算したΣKviはそのエッジ収縮もしくは面収縮における誤差の程度が示すパラメータとなる。そこで、以下の説明ではこのΣKviを誤差行列と呼ぶ。
【0070】
次に、三次元形状データのデータ削減処理の手順について、図7のフローチャートを用いて説明する。
【0071】
三次元形状計測装置1により取り込まれた測定対象物Gの三次元形状データは、形状データ処理装置3に入力され、まず、ポリゴン生成部31で三角形のポリゴンモデルが生成される(#1)。また、操作者により許容値入力部33からエッジ収縮処理の可否を判定するための許容値が入力される(#3)。
【0072】
続いて、評価値演算部321で最初のポリゴンモデルの全エッジについてエッジ収縮した場合の評価値εj(j=1,2,…N,Nはエッジ総数)が上記(8)式により算出される(#5)。例えば図4の例では、エッジEd1r(r=2〜5,9,10)、Ed2s(s=5,6,…9)、Edtt+1(t=3,4,…10、但し、t+1=11はt+1=3とする。)についてエッジ収縮した場合の評価値εj(j=1,2,…19)が算出される。
【0073】
このとき、例えば格子点v1,v2を格子点v1’に集結してエッジEd12を収縮した場合、最初の面は全て変形し、格子点v1’とエッジ収縮に関係しない格子点v3〜v10とによって8枚の平面面p1,p2,…p10(以下、変形後の平面を近似面という。)が形成されるが、これらの近似面pk(k=1,2,…8)についてそれぞれ距離の2乗和Δ(pk)(k=1,2,…8)が算出されるとともに、これらの距離の2乗和Δ(pk)全体に含まれる要素の総数Mが算出され、上記(8)式によりエッジEd12の収縮処理における評価値ε(Ed12)が算出される。なお、評価値ε(Ed12)は下記(9)式のようになる。
【0074】
【数11】
Figure 0004192377
【0075】
このとき、例えば平面p1は格子点v1’,v3,v4によって構成されるが、格子点v1,v2,v3,v4が実測データである場合はエッジ収縮に関与した格子点はv1,v2だけであるから、距離の2乗和Δ(p1)はこれらの格子点v1,v2についての誤差行列(Kv1+Kv2)を用いて上記(7)式により算出される。この状態で格子点v1’が更に他の格子点vm(図示しない実測データ)とともに格子点v1”(図示していない)に集結されて近似面p1が近似面p1’(図示していない)に近似された場合、この近似面p1’に至るエッジ収縮に関与した格子点はv1,v2,vmとなるから、距離の2乗和Δ(p1’)はこれらの格子点v1,v2,vmについての誤差行列(Kv1+Kv2+Kvm)を用いて上記(7)式により算出されることになる。
【0076】
この2回目のエッジ収縮では、実質的に格子点v1’の誤差行列Kv1’を(Kv1+Kv2)として格子点v1’の誤差行列Kv1’と格子点vmの誤差行列Kvmとで上記(7)式により距離の2乗和Δ(p1’)を算出することになる。
【0077】
従って、エッジ収縮処理の過程における一般論では、図4において、格子点v1,v2,v3,v4を実測データでなく、エッジ収縮によって生成されたデータであるとすれば、各格子点v1,v2,v3,v4に対する誤差行列をそれぞれKv1,Kv2,Kv3,Kv4とすると、近似面p1を構成する格子点v1’に対する誤差行列Kv1’をKv1’=Kv1+Kv2とし、近似面p1を構成する3個の格子点v1’,v3,v4の誤差行列Kv1’,Kv3,Kv4を加算して得られる誤差行列Kp1(=Kv1’+Kv3+Kv4=Kv1+Kv2+Kv3+Kv4)を用いて上記(7)式により近似面p1について距離の2乗和Δ(p1)が算出される。
【0078】
なお、距離の2乗和Δ(p1)の算出式は、
Δ(p1)=P1 T・Kp1・P1 …(10)
となる。ここに、P1は近似面p1の列ベクトル表記、m1は誤差行列Kp1に含まれる誤差行列Kvの総数である。
【0079】
そして、近似面p2,p3,…p8についても上述した近似面p1と同様の方法で距離の2乗和Δ(p2),Δ(p3),…Δ(p8)が算出され、これらを上記(9)式に代入してエッジEd12の収縮における誤差評価値ε(Ed12)が算出される。
【0080】
そして、同様の方法で他のエッジEd1r,Ed2s、Edtt+1についてもエッジ収縮をした場合の誤差評価値ε(Ed1r),ε(Ed2s)、ε(Edtt+1)が算出される。
【0081】
続いて、評価値ソート部322で誤差評価値εjのソーティングが行われ(#7)、最小の評価値Min{εj}がステップ#3で入力された許容値以下であるか否かが判別される(#9)。最小評価値Min{εj}が許容値よりも大きければ(#9でNO)、全てのエッジについてエッジ収縮した場合の形状変化が許容できない程大きいので、エッジ収縮によるデータ削減処理を終了する。一方、最小評価値Min{εj}が許容値以下であれば(#9でYES)、エッジ/面収縮処理部323でその最小評価値Min{εj}に対応するエッジの収縮処理が行われる(#11)。例えば図4において、最小評価値Min{εj}がε(Ed12)であれば、同図に示すようにエッジEd12の収縮処理が行われる。
【0082】
続いて、エッジ収縮後のポリゴンモデルについて当該エッジ収縮処理の影響を受けたエッジについて再度、誤差評価値εq(q=1,2,…)が算出された後(#13)、ステップ#7に戻り、これらの誤差評価値εqのうち、最小の誤差評価値Min{εq}が算出され、それに対応するエッジの収縮処理が行われる(#7〜#11)。以下、1本ずつエッジ収縮処理を繰り返し(#7〜#13のループ)、最小評価値Min{εq}が許容値より大きくなった時点でデータ削減処理を終了する(#9でNO)。
【0083】
従って、このようなデータ削減処理を行うことにより、データ削減後のポリゴンモデルは、最初のポリゴンモデルに対して最初の計測データに対する誤差評価値εが許容値以下となるように近似化される。
【0084】
上記のように本実施の形態にかかるデータ削減方法では、エッジ収縮もしくは面収縮により近似化されるポリゴンモデルの面が最初の格子点(計測された三次元形状データ)に対してどの程度の離れ具合となるかを誤差の評価値としているので、直感的にも解り易い評価基準でデータ削減処理を行うことができる。
【0085】
また、その評価値が所定の許容誤差範囲内となるようにデータ削減を行うようにしているので、近似後のポリゴンモデルを構成する三次元形状データの誤差を比較的正確に管理しつつデータ削減処理を高速に行うことができる。
【0086】
特に、計測された三次元形状データにランダムなノイズのデータが混入した場合や多数の格子点を1点に集結してデータ削減を行う場合にも誤差評価値の信頼性の低下を抑えることができる。
【0087】
図8及び図9は、計測された三次元形状データにランダムなノイズのデータが混入した場合の誤差評価方法を従来の誤差評価方法と比較したものである。
【0088】
図8は、ランダムなノイズのデータによってポリゴンモデルに不連続面が生じている部分(断面で表示している。)のエッジ収縮を示す図である。同図に示すように、ポリゴンモデル表面の不連続な凸凹が大きく生じている部分の格子点v1,v2を略中心の格子点v1’に集結した場合、上記従来の論文「Surface Simplification Using Quadric Error Metrics」に示されるデータ削減方法では、図9に示すように格子点v1’から、例えば格子点v1,v4を含む面p14と格子点v2,v5を含む面p25への距離d1’,d2’を誤差評価の基礎としているので、感覚的な近似誤差に対して誤差評価値は小さい目に算出されるのに対し、本実施形態に係るデータ削減方法では、例えば格子点v1,v2からの格子点v1’,v4,v5を含む平面p45への距離d1,d2を誤差評価の基礎としているので、誤差評価値は感覚的な近似誤差に比較的合致し、小さい目に算出されることはない。
【0089】
図10、図11及び図12は、多数の格子点を1点に集結した場合の誤差評価方法を従来の誤差評価方法と比較したものである。
【0090】
図10は、8個の格子点v1,v2,…v8でジグザグな面(断面で表示している。)が形成されているポリゴンモデルの当該ジグザグ面の収縮を示す図である。同図に示すように、格子点v1,v2,…v6を格子点v7,v8の略中心の格子点v1’に集結した場合、上記従来の論文「Surface Simplification Using Quadric Error Metrics」に示されるデータ削減方法では、図11に示すように格子点v1’から最初のポリゴンモデルのジクザグな各面p71,p12,p23,p3 4,p45,p56,p68への距離d1’,d2’,…d6’を誤差評価の基礎としているので、感覚的な近似誤差に対して誤差の評価値は大きい目に算出されるのに対し、本実施形態に係るデータ削減方法では、例えば各格子点v1,v2,…v6からの格子点v1’,v7,v8を含む平面p78への距離d1,d2,…d6を誤差評価の基礎としているので、誤差の評価値は感覚的な近似誤差に比較的合致し、大きい目に算出されることはない。
【0091】
図13は、三次元形状データのデータ削減処理手順の変形例を示すフローチャートである。
【0092】
図7に示すデータ削減処理手順では、エッジ収縮処理を行う毎にそのエッジ収縮により影響を受けたエッジについて再度、評価値εを算出し、その評価値εに基づいて次のエッジ収縮処理を行うようにしていたが、図13に示すデータ削減処理手順は、エッジ収縮により影響を受けたエッジについての評価値εの演算を行わず、それ以外のエッジについてエッジ収縮を行うようにしたものである。
【0093】
具体的には、図13に示すフローチャートは、図7において、ステップ#13の処理を「エッジ収縮により影響を受けたエッジの収縮を禁止する」処理のステップ#13’に変更し、ステップ#9と「終了」の処理の間にステップ#15,#17の処理を追加したものである。
【0094】
そこで、以下の説明ではフローチャートの共通部分については簡単に説明し、異なる部分について詳細に説明する。
【0095】
三次元形状計測装置1により取り込まれた測定対象物Gの三次元形状データは、形状データ処理装置3に入力され、ポリゴン生成部31で三角形のポリゴンモデルが生成される(#1)。また、操作者により許容値入力部33からエッジ収縮処理の可否を判定するための許容値が入力される(#3)。
【0096】
続いて、評価値演算部321でポリゴンモデルの全エッジについてエッジ収縮した場合の評価値εj(j=1,2,…N,Nはエッジ総数)が算出され(#5)、評価値ソート部322で誤差評価値εjのソーティングが行われて最小の評価値Min{εj}が算出される(#7)。
【0097】
続いて、最小評価値Min{εj}がステップ#3で許容値以下であるか否かが判別され(#9)、最小評価値Min{εj}が許容値以下であれば(#9でYES)、エッジ/面収縮処理部323でその最小評価値Min{εj}に対応するエッジの収縮処理が行われる(#11)。
【0098】
続いて、このエッジ収縮処理で影響を受けたエッジの収縮処理が禁止され(#13’)、ステップ#7に戻る。この処理は、次のエッジ収縮処理を今回のエッジ収縮処理で影響を受けなかったエッジについて行うようにするためのものである。
【0099】
ステップ#7に戻ると、エッジ収縮が禁止されたエッジ以外のエッジに対する評価値εq(q=1,2,…Q。但し、Q<N)についてソーティングが行われ、最小評価値Min{εq}が算出される(#7)。そして、最小評価値Min{εq}が許容値以下であるか否かが判別され(#9)、最小評価値Min{εq}が許容値以下であれば(#9でYES)、エッジ/面収縮処理部323でその最小評価値Min{εq}に対応するエッジの収縮処理が行われ(#11)、更にこのエッジ収縮処理で影響を受けたエッジの収縮処理が禁止され(#13’)、再度、ステップ#7に戻る。
【0100】
そして、以下、同様の処理を繰り返し、エッジ収縮処理を行う毎にそのエッジ収縮で影響を受けたエッジを除外しつつ次のエッジ処理処理が行なわれる(#7,#9,#11,#13’のルーブ)。
【0101】
一方、上記エッジ収縮処理を繰り返す過程で、最小評価値Min{εq}が許容値よりも大きいと(#9でNO)、エッジ収縮が禁止されたエッジがあるか否かが判別され(#15)、エッジ収縮が禁止されたエッジがあれば(#15でYES)、それらのエッジについて再度、誤差評価値εr(r=1,2,…)が算出された後(#17)、ステップ#7に戻り、これらの誤差評価値εrのうち、最小誤差評価値Min{εr}が算出され、その最小誤差評価値Min{εr}に対応するエッジの収縮処理が行われる(#7,#9,#11)。
【0102】
そして、上記エッジ収縮処理を繰り返し、最小評価値Min{εq}が許容値よりも大きくなるとともに、エッジ収縮が禁止されたエッジもなくなると(#9,#15でNO)、エッジ収縮によるデータ削減処理を終了する。
【0103】
図14は、図13に示す処理手順によるデータ削減プロセスの一例を示す図である。
【0104】
同図において、ポリゴンモデルM0は最初のポリゴンモデルである。このポリゴンモデルM0は28個の格子点v1,v2,…v28を各行の個数が(3,4,5,4,5,4,3)個となるように5行に配列し、隣り合う格子点間を結んだものである。
【0105】
エッジe1,e2,e3,e4,e5は、各エッジei(i=1,2,…5)を収縮させた場合、互いにその影響を受けない関係にあるから、説明の便宜上、図13に示す処理手順によって順次、エッジ収縮されるものとして選択したものである。
【0106】
従って、図14のデータ削減プロセスは、図13の処理手順によってポリゴンモデルM0がエッジe1,e2,…e5の順に順次、エッジ収縮される場合を示している。そして、ポリゴンモデルM1,M2,M3,M4,M5は、ポリゴンモデルM0をエッジe1,e2,…e5の順に収縮処理したときの近似化されたポリゴンモデルである。
【0107】
上述した図13に示すデータ削減処理手順によれば、まず、最初のエッジ収縮処理でエッジe1が収縮されてポリゴンモデルM1に近似化されると、集結された格子点vaとその周囲に配置される格子点v9,v10,v11,v13,v16,v18,v19,v20(ポリゴンモデルM1の点線枠内の格子点)とで形成されるエッジが影響を受けることになるため、次のエッジ収縮処理では、これらのエッジを除外したエッジ(ポリゴンモデルM1の点線枠の外にあるエッジ)について再度、評価値εqのソーティングが行なわれ、最小評価値Min{εq}を有するエッジe2についてエッジ収縮処理が行われてポリゴンモデルM2に近似化される。
【0108】
更に、次のエッジ収縮処理では、集結された格子点vbとその周囲に配置される格子点v1,v2,v4,v6,v8,v10,v13,va(ポリゴンモデルM2の点線枠内の格子点)とで形成されるエッジが影響を受けることになるため、これらのエッジを除外したエッジ(ポリゴンモデルM2の点線枠の外にあるエッジ)について再度、評価値εsのソーティングが行なわれ、最小評価値Min{εs}を有するエッジe3についてエッジ収縮処理が行われてポリゴンモデルM3に近似化される。
【0109】
そして、以下同様の方法でエッジe4,e5についてもエッジ収縮が行なわれ、この5回のエッジ収縮処理により最初のポリゴンモデルM0はポリゴンモデルM5に近似化され、データ数は5個削減される。
【0110】
最初のポリゴンモデルM0を6枚目のポリゴンモデルM6(図示せず。)まで近似化するプロセスを考えると、図13に示す処理手順ではエッジ収縮によって影響を受けたエッジについては評価値の再計算をしないので、図14の例では、最初のポリゴンモデルM0を構成する66本のエッジについて最初に評価値が計算されると、近似化されたポリゴンモデルM1〜M4については評価値の再計算は行なわれず、次の再計算はポリゴンモデルM5を構成する50本のエッジについて行なわれることになる。従って、6枚目のポリゴンモデルM6までの評価値の再計算回数は50回となる。
【0111】
一方、図7に示す処理手順ではエッジ収縮によって影響を受けたエッジについて評価値の再計算を行っているので、近似化された各ポリゴンモデルM1〜M5毎にエッジ収縮によって影響を受ける16本のエッジについて評価値の再計算をすることになる。従って、図7に示す処理手順では、6枚目のポリゴンモデルM6までの評価値の再計算回数は16×5=80回となり、図13に示す処理手順の方が評価値の再計算回数が少なくなり、高速処理が可能になるという利点がある。
【0112】
図15は、図13に示すフローチャートの変形例である。
【0113】
図15に示すフローチャートは、エッジ収縮後に影響を受けたエッジの評価値を許容値よりも大きい所定の評価値εmaxに置換することにより次のエッジ収縮ではそのエッジを実質的にエッジ収縮の対象外となるようにしたものである。
【0114】
具体的には、図13のフローチャートにおいて、ステップ#13’を「エッジ収縮により影響を受けたエッジの評価値をεmaxに設定する」処理のステップ#13”に変更するとともに、ステップ#15の判定対象及びステップ#17の評価値再計算の対象を「評価値がεmaxのエッジ」に変更し、ステップ#17’の後に評価値再計算後のエッジに対するエッジ収縮処理を行うステップ#19,#21の処理を追加したものである。
【0115】
そこで、以下の説明では図13のフローチャートと異なる部分について詳細に説明する。
【0116】
ステップ#11でエッジ/面収縮処理部323により最小評価値Min{εj}に対応するエッジの収縮処理が行われると、このエッジ収縮処理で影響を受けたエッジの評価値が許容値よりも大きい所定の評価値εmaxに設定され(#13”)、ステップ#7に戻る。この処理は、これらのエッジが次のエッジ収縮処理で対象外となるようにする、すなわち、エッジ収縮処理で影響を受けなかったエッジについてのみエッジ収縮が行なわれるようにするためのものである。
【0117】
ステップ#7に戻ると、再度、評価値εi(i=1,2,…N−1)のソーティングが行われ、最小評価値Min{εi}が算出される(#7)。そして、最小評価値Min{εi}が許容値以下であるか否かが判別され(#9)、最小評価値Min{εi}が許容値以下であれば(#9でYES)、エッジ/面収縮処理部323でその最小評価値Min{εi}に対応するエッジの収縮処理が行われる(#11)。
【0118】
続いて、このエッジ収縮処理で影響を受けたエッジの評価値が評価値εmaxに設定され(#13”)、再度、ステップ#7に戻る。以下、同様の処理を繰り返し、エッジ収縮処理を行う毎にそのエッジ収縮で影響を受けたエッジの評価値を評価値εmaxに設定しつつ次のエッジ処理処理が行なわれる(#7,#9,#11,#13”のルーブ)。
【0119】
一方、上記エッジ収縮処理を繰り返す過程で、最小評価値Min{εi}が許容値よりも大きくなると(#9でNO)、評価値εmaxを有するエッジがあるか否かが判別され(#15’)、評価値εmaxを有するエッジがあれば(#15’でYES)、それらのエッジについて再度、誤差評価値εs(s=1,2,…)が算出される(#17’)。
【0120】
そして、ソーティングによりこれらの誤差評価値εsのうち、最小の誤差評価値Min{εs}が算出され(#19)、その最小評価値Min{εi}が許容値以下であれば(#21でYES)、ステップ#11に移行して上述したその最小評価値Min{εi}に対応するエッジの収縮処理が行われる。
【0121】
一方、上記エッジ収縮処理を繰り返し、評価値εmaxを有するエッジがなくなるか(#15’でYES)、あるいは評価値εmaxを有するエッジについて再計算された評価値εsのうち、最小評価値Min{εs}が許容値よりも大きくなると(#21でNO)、エッジ収縮によるデータ削減処理を終了する。
【0122】
図15に示す処理手順もエッジ収縮により影響を受けるエッジの評価値を許容値よりも大きい評価値εmaxに設定することで、実質的に図13の処理手順に示す当該エッジの収縮を禁止するようにしているので、評価値の再計算回数が低減され、高速処理が可能となる。
【0123】
なお、図13、図15に示すデータ削減の処理手順では、エッジ収縮処理により影響を受けた部分については、エッジ収縮処理が禁止された部分が全てなくなるまで、評価値の再計算をせず、エッジ収縮処理の対象外とするようにしているが、例えばエッジ収縮処理が所定の回数だけ繰り返されたときや評価値の最小値と許容値との差が所定の範囲内になったとき等の所定の条件が満たされると、エッジ収縮処理の禁止を解除し、全てのエッジについて評価値の再計算を行なって、再度、エッジ収縮を可能にするようにしてもよい。
【0124】
このようにすれば、エッジ収縮処理が禁止された部分に許容誤差内でデータ削減処理が可能な部分が残っている場合にもその部分についてデータ削減処理が可能になり、許容範囲内で可能な限り効率良くデータ削減を行うことができる。
【0125】
また、図13、図15に示すデータ削減の処理手順は、評価値の再計算回数を低減し、処理速度の高速化を図るものであるので、評価値は、上述の(8)式で示した誤差εに限定されるものではない。エッジ収縮もしくは面収縮により評価値が変化し、収縮後に再計算が必要となるような評価値、例えば上述の論文「Surface Simplification Using Quadric Error Metrics」に示される評価値を採用している場合にも広く適用することができる。
【0126】
また、上記実施の形態では三次元形状計測装置1で計測された三次元計測データのデータ削減を例に説明したが、本発明はこれに限定されるものではなく、コンピュータグラフックス等で創作された三次元データについても広く適用することができる。
【0127】
【発明の効果】
以上説明したように、本発明によれば、2個以上の格子点を1個の格子点に集結してポリゴンモデルのエッジもしくは面を収縮することにより当該ポリゴンモデルを構成する複数の三次元形状データのデータ数を削減する三次元形状データのデータ削減方法であって、ポリゴンモデルのエッジもしくは面を収縮することにより変形を受ける全ての面について、各面と各面の変形に関与した全ての最初の格子点との距離に基づく所定の評価値を算出し、この評価値が所定の許容値以下であるとき、エッジ収縮もしくは面収縮により三次元形状データの削減を行うようにしたので、データ削減処理において、最初の三次元形状データからの近似誤差という直感的に理解し易い評価基準で誤差管理を行うことができる。
【0128】
また、例えばポリゴンモデルにおいて局所的に面の向きがジグザグに急変するような場合にも比較的正確に誤差を管理しつつ好適にデータ削減処理を行なうことができる。
【0129】
特に評価値を上記(1)式で定義する誤差εとしたので、最初の三次元形状データについて算出された誤差行列を保存しておくだけで、誤差εが容易に算出でき、高速処理が可能であるとともに、データ削減処理の演算に要するメモリの効率的な利用も可能となる。
【図面の簡単な説明】
【図1】本発明に係るデータ削減方法を適用した三次元形状計測データ処理システムの構成を示すブロック図である。
【図2】形状データ処理装置の構成を示すブロック図である。
【図3】データ削減によるポリゴンモデルの近似化の一例を示す図である。
【図4】エッジ収縮によるデータ削減方法の概念図である。
【図5】面収縮によるデータ削減方法の概念図である。
【図6】本実施形態に係るデータ削減方法に適用される評価値を説明するための図である。
【図7】三次元形状データのデータ削減処理の手順を示すフローチャートである。
【図8】ランダムなノイズのデータによってポリゴンモデルに不連続面が生じている部分のエッジ収縮を示す図である。
【図9】図8に示すデータ削減処理における本実施形態に係る誤差評価値と従来の誤差評価値との差異を説明するための図である。
【図10】ジグザグな面を有するポリゴンモデルの当該ジグザグ面の収縮を示す図である。
【図11】図10に示すデータ削減処理における従来の誤差評価値を説明するための図である。
【図12】図10に示すデータ削減処理における本実施形態に係る誤差評価値を説明するための図である。
【図13】三次元形状データのデータ削減処理手順の他の実施形態を示すフローチャートである。
【図14】図13に示す処理手順によるデータ削減プロセスの一例を説明するための図である。
【図15】図13に示すフローチャートの変形例を示す図である。
【符号の説明】
1 三次元形状計測装置
101 照明部
102 共焦点型光学系
103 受光部
104 ビームスプリッタ
105 演算部
106 測定テーブル
2,4 外部記憶装置
3 形状データ処理装置(データ削減装置)
31 ポリゴン生成部
32 データ削減部
321 評価値演算部(評価値算出手段)
322 評価値ソート部
323 エッジ/面収縮処理部(比較手段、データ削減手段)
33 許容値入力部
34 データ出力部
5 表示装置
6 外部処理装置[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data reduction method for three-dimensional shape data constituting a polygon model and a data reduction device using the method.
[0002]
[Prior art]
For example, measurement data with high drawing quality obtained with a three-dimensional shape measurement device with extremely high spatial resolution has a huge number of data, so if it has more than necessary drawing quality, the burden on the storage device in the subsequent processing And the processing speed is significantly reduced. For this reason, it is necessary to reduce the above-mentioned problem as much as possible by reducing the number of measurement data. In this case, a polygon model composed of measurement data after data reduction (that is, an approximated polygon model) ) And the polygon model composed of the measured 3D shape data (hereinafter referred to as the first polygon model), the measured data after data reduction cannot be used effectively. In the data reduction process, it is necessary to manage an error between the approximated polygon model and the first polygon model.
[0003]
In particular, in the case of 3D shape data obtained by a 3D shape measurement device, the measured 3D shape data is converted into an approximate value by the data reduction process, so the first polygon model and the approximated polygon model The error management is preferably performed based on actually measured three-dimensional shape data.
[0004]
On the other hand, various methods have been proposed for reducing the number of three-dimensional shape data constituting the triangular polygon model by approximating the model within a desired tolerance range in the triangular polygon model.
[0005]
For example, in the paper “Hierarchical approximation of 3D polygon model” (Horikawa, Totsuka, Proceedings of the 5th Sony Research Forum, pp3-7, 1995), the contribution of each edge constituting the triangular polygon model to the model shape Evaluate with an evaluation function that represents the volume that changes when an edge is removed, for example, remove an edge with a small evaluation value, such as when the edge and the surrounding surface are parallel, when the surface is small, or when the edge is short A method for reducing the number of data of three-dimensional shape data is shown.
[0006]
In addition, the paper “Simplification Envelopes” (Cohen Jonathan, Amitabh Varshney, Dinesh Manocha, Greg Turk, Hans Weber, Pankai Agarwal, Frederick Brooks and William Wright. Proceedings of SIGGRAPH 96 In Computer Graphics Proceedings, Annual Conference Series, 1996, ACM SIGGRAPH, pp. 119-128), a model in which the first polygon model is reduced with error ε and a model in which the first polygon model is enlarged with the error ε are created. A method of reducing the number of data of the first polygon model so as to be in between is shown.
[0007]
In the paper “Surface Simplification Using Quadric Error Metrics” (Michael Garland and Paul S. Heckbert. Carnegie Mellon University Proceedings of SIGGRAPH 97. 1997) As a method of reducing the number of data of 3D shape data constituting a triangular polygon model by consolidating (3D shape data) into one lattice point (3D shape data), it is collected by edge contraction or surface contraction. The distance between each grid point and the planes that make up the first triangular polygon model affected by edge contraction or surface contraction is managed as an error in the data reduction process, and this error is within a predetermined allowable error range. By performing only certain edge contraction or surface contraction processing, the number of data can be reduced within a predetermined tolerance range. How to do it is shown.
[0008]
[Problems to be solved by the invention]
Since the data reduction method shown in the above paper “Hierarchical approximation of 3D polygon model” only removes edges based on the evaluation value, the 3D data of the characteristic part of the polygon model remains, but the model by edge removal remains. It is not possible to evaluate the error in the approximation of. Therefore, it is effective for reducing the number of polygon model data for simply displaying a three-dimensional image, such as VR (Virtual Reality) in CG (Computer Graphics) or a game. As in the case of the measurement data obtained in (1), it cannot be an effective method when error management between the first measurement data and the data of the approximate model after data reduction is required.
[0009]
On the other hand, the data reduction method shown in the above paper “Simplification Envelopes” enables strict error management, but creates polygon models that are enlarged and reduced by error ε in the process of data reduction processing. Since it is necessary to hold data, the number of data related to the processing becomes enormous, and there is a problem that the processing capacity for memory capacity and data reduction is heavy.
[0010]
In addition, the data reduction method shown in the above-mentioned paper “Surface Simplification Using Quadric Error Metrics” manages the degree of separation of the grid points constituting the polygon model after approximation to the surface constituting the first polygon model as an error. If you want to reduce the data by managing the error of the polygon model after approximation for the lattice points that make up the first polygon model, like the measurement data of the 3D shape measurement device, it is not always an appropriate method. hard.
[0011]
In addition, in the case of measurement data obtained by measuring the rough surface or the cut surface of the measurement object with a three-dimensional shape measurement device, for example, when the surface direction suddenly changes zigzag locally in the polygon model, Since errors with respect to these zigzag surfaces are evaluated, there is a problem that errors are greatly evaluated as data reduction proceeds and data reduction is not sufficiently performed.
[0012]
The present invention has been made in view of the above problems, and a data reduction method for three-dimensional shape data capable of appropriately reducing data based on accurate error evaluation with respect to measurement data obtained by a three-dimensional shape measurement apparatus. And a data reduction apparatus using the data reduction method.
[0013]
[Means for Solving the Problems]
  According to the first aspect of the present invention, the number of data of a plurality of three-dimensional coordinate data constituting the polygon model is obtained by consolidating two or more lattice points into one lattice point and contracting the edges or surfaces of the polygon model. Is a data reduction method for 3D shape data,Evaluation value calculation meansFor all surfaces that are deformed by contracting edges or surfaces of the polygon model, a predetermined evaluation value is calculated based on the distance between each surface and all the first grid points involved in the deformation of each surface.WorkAboutComparison meansCompare the above evaluation value with a preset toleranceWorkAboutData reduction meansWhen the evaluation value is less than or equal to the allowable value, the edge or surface is contracted to reduce the three-dimensional shape data.CraftAboutWithIs.
[0014]
  Claims3The described invention reduces the number of data of a plurality of three-dimensional coordinate data constituting the polygon model by consolidating two or more lattice points into one lattice point and contracting the edge or surface of the polygon model. A data reduction device for three-dimensional shape data, for all surfaces subject to deformation by shrinking the edges or surfaces of the polygon model, between each surface and all the first grid points involved in the deformation of each surface An evaluation value calculating means for calculating a predetermined evaluation value based on the distance; a comparing means for comparing the evaluation value with a preset allowable value; and when the evaluation value is equal to or less than the allowable value, Data reduction means for reducing the three-dimensional shape data by performing contraction.
[0015]
According to the above configuration, the predetermined evaluation value based on the distance between each surface and all the first grid points involved in the deformation of each surface, for all the surfaces that are deformed by contracting the edges or surfaces of the polygon model Is calculated, and this evaluation value is compared with a preset allowable value. When the evaluation value is equal to or less than the allowable value, the three-dimensional shape data constituting the polygon model is reduced by contracting the edge or the surface.
[0016]
The evaluation value may be an error ε defined by the following equation (1) (claims 2 and 4).
[0017]
[Expression 4]
Figure 0004192377
[0018]
According to this configuration, the error ε defined by the equation (1) is calculated as an evaluation value for determining whether or not the edge or the surface can be contracted, and the error ε is a predetermined value. When the value is equal to or smaller than the allowable value, the edge or the surface is contracted to reduce lattice points (three-dimensional shape data) constituting the polygon model.
[0019]
Here, the denominator in the equation (1) is the surface and the first lattice point involved in the deformation of the surface of all the surfaces constituting the polygon model that are deformed by edge contraction or surface contraction. The numerator of the equation (1) indicates the total number of terms of the sum of squares of the denominator distance. Therefore, the error ε indicates an average value of the degree of separation (distance squared) indicating how far the surface subjected to deformation by edge contraction or surface contraction is from the first lattice point involved in the deformation of the surface. Yes.
[0020]
According to a fifth aspect of the present invention, in the three-dimensional shape data reduction device according to the fourth aspect, the evaluation value calculating means calculates an error matrix Kv for each of the lattice points v constituting the first polygon model. Anyway, two or more grid points vp(P = 1, 2,...) Is a grid point v of 1qEach cluster point vpError matrix KvpIs the lattice point vqError matrix KvqThe error ε is calculated by the above equation (1).
[0021]
According to the above configuration, in the data reduction process, the error matrix Kv is calculated for each of the lattice points v constituting the first polygon model, and two or more lattice points v are obtained by the edge contraction process or the surface contraction process.p(P = 1, 2,...) Grid point v with 1qWhen this is the case, the lattice point vqWhen gathering the grid points vqEach grid point v concentrated inpError matrix KvpIs the lattice point vqError matrix Kvq(= ΣKvp) And this error matrix KvqIs used to calculate the error ε by the above equation (1).
[0022]
Since the error matrix of the lattice points after the concentration is calculated by adding the error matrix of the first lattice point, the calculation becomes easy. Further, the error evaluation can be performed by finally associating the sum of error matrices of the first lattice points related to the edge contraction or the surface contraction with respect to each lattice point.
[0023]
According to a sixth aspect of the present invention, in the three-dimensional shape data reduction device according to the fifth aspect, the evaluation value calculating means includes a diagonal element of the error matrix calculated for each of the first lattice points and the diagonal element. Only the upper element is stored in the storage means, the error matrix is restored using the diagonal element stored in the storage means and the element above the diagonal element, and the error matrix is used. The error ε is calculated by the above equation (1).
[0024]
According to the above configuration, the error matrix calculated for each of the first lattice points is a symmetric matrix, and the diagonal elements of the error matrix and the elements above the diagonal elements are stored, which contributes to memory reduction. .
[0025]
According to a seventh aspect of the present invention, in the three-dimensional shape data reduction device according to the fourth aspect, the evaluation value calculation means is such that the column vector V of the three-dimensional shape data of the first lattice point is expressed by the following equation Where each surface piError matrix ΣKv calculated for eachj(J = 1, 2,... Mi) By adding the elements at the lower right corner of)i(I = 1, 2,... N) is calculated.
[0026]
[Equation 5]
Figure 0004192377
[0027]
According to the above configuration, when the extreme vector V of the three-dimensional shape data of the lattice point v is expressed by the equation (2), the error matrix Kv of the lattice point v is expressed by the following equation (A), and the lower right corner The element is always “1”. Therefore, ΣKvjIs the error matrix KvjSince this is the sum of the elements in the lower right corner, there is no need to separately calculate the sum by calculating this.
[0028]
[Formula 6]
Figure 0004192377
[0029]
According to an eighth aspect of the present invention, in the data reduction apparatus for three-dimensional shape data according to the fourth aspect, the evaluation value calculation means includes the lattice point v.jError matrix KvjInstead of weighted error matrix wj・ KvjIs used to calculate the error ε according to the above equation (1).
[0030]
According to the above configuration, the error ε is the lattice point v.jError matrix KvjInstead of weighted error matrix wj・ KvjIs calculated by the above equation (1).
[0031]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a block diagram of a three-dimensional shape measurement data processing system to which a data reduction method according to the present invention is applied.
[0032]
The three-dimensional shape measurement data processing system (hereinafter referred to as a shape data processing system) shown in FIG. 1 is a three-dimensional shape measurement device 1 that measures three-dimensional shape data of an object G to be measured. A shape for performing predetermined data processing by reducing the three-dimensional shape data measured by the external storage device 2 for storing the measured three-dimensional shape data and the three-dimensional shape measuring device 1 using the data reduction method according to the present invention. The data processing device 3, the external storage device 4 for storing the three-dimensional shape data processed by the shape data processing device 3, and the three-dimensional shape of the measuring object G such as a polygon model using the three-dimensional shape data after the data reduction External such as CAD / CAM (computer aided design and computer aided manufacturing) in which the display device 5 for displaying images and the three-dimensional shape data processed by the shape data processing device 3 are used. And a management device 6.
[0033]
The three-dimensional shape measuring apparatus 1 measures the surface shape of the measuring object G using a conjugate autofocus system. As shown in FIG. 2, the three-dimensional shape measuring apparatus 1 illuminates the measurement object G with the illumination unit 101 that generates illumination light and the illumination light reflected by the measurement object G. The confocal optical system 102 that guides the light to the light receiving unit 103; the light receiving unit 103 that receives the illumination light reflected from the measurement object G, photoelectrically converts it into an electrical signal, and outputs the electrical signal; The position of the surface of the measuring object G is measured using the beam splitter 104 that splits the reflected light from the measuring object G that has passed through the system 102 and guides it to the light receiving unit 103 and the light reception signal output from the light receiving unit 103. It has a basic configuration including a calculation unit 105 that calculates coordinates.
[0034]
The three-dimensional shape of the measurement object G is placed on the measurement table 106 arranged in front of the three-dimensional shape apparatus 1 and moved up and down at a predetermined pitch in the height direction. This is done by measuring the unevenness of the surface of the measuring object G at each height position. That is, assuming that the height direction of the measurement object G is the Y direction, the optical axis direction of the optical system 102 is the Z direction, and the direction perpendicular to the Y direction and the Z direction is the X direction, the Y coordinate of the measurement object G is a predetermined value. The three-dimensional shape of the measuring object G is measured by measuring the Z coordinate of the measuring object G at each Y coordinate position while changing the pitch. Then, the three-dimensional shape data (x, y, z) of the measuring object G measured by the three-dimensional shape measuring device 1 is input to the shape data processing device 3.
[0035]
The three-dimensional measuring apparatus 1 includes a photoelectric conversion element 103a composed of a line sensor arranged in parallel with the X axis, and the light reception signal for each pixel of the photoelectric conversion element 103a (each pixel position corresponds to an X coordinate). Is used to measure the position coordinate (Z coordinate) of the surface of the measuring object G. For this reason, slit-like illumination light extending in the X direction is emitted from the illumination unit 101 so that the reflected light from the measurement object G is incident on the entire photoelectric conversion element 103a.
[0036]
The Z coordinate of the measuring object G is measured as follows. First, slit-like illumination light extending in the X direction is emitted from the illumination unit 101 disposed at the focal position on the image side of the optical system 102. The illumination light is condensed at a focal position on the object side of the optical system 102, and line light extending in the X direction is formed at the focal position. Next, in this state, the focal position (that is, the line light) on the object side of the optical system 102 is moved in the optical axis direction until the focal position reaches the inside of the measurement object G, and the photoelectric conversion element with a predetermined cycle. The exposure of 103a is repeated. Then, using the level of the light reception signal received at each exposure position, the calculation unit 105 calculates the exposure position at the maximum level for each pixel of the photoelectric change element 103a, and the position is calculated on the surface of the measurement object G. The Z coordinate is used.
[0037]
The shape data processing device 3 includes a polygon generation unit 31, a data reduction unit 32, an allowable value input unit 33, and a data output unit 34. The polygon generation unit 31 generates a polygon model of the measurement target G based on the three-dimensional shape data (x, y, z) of the measurement target G input from the three-dimensional shape measurement apparatus 1. The data reduction unit 32 reduces the three-dimensional shape data by edge contraction or surface contraction of the polygon model. That is, as shown in FIG. 3, the lattice points (three-dimensional shape data) of the polygon model A are appropriately set so that the precise polygon model A based on the measurement data is approximated to the polygon model B within a predetermined allowable error range. It will be reduced.
[0038]
The data reduction unit 32 includes an evaluation value calculation unit 321, an evaluation value sorting unit 322, and an edge / surface contraction processing unit 323 in order to execute data reduction processing described later.
[0039]
The evaluation value calculator 321 collects two or more lattice points and replaces the lattice points with one lattice point to contract the edges or faces constituting the polygon model (that is, to approximate the polygon model). The evaluation value for determining whether or not each edge or each surface can be contracted is calculated. This evaluation value will be described later.
[0040]
The evaluation value sorting unit 322 calculates a minimum evaluation value by rearranging a plurality of evaluation values calculated for each edge or each surface by the evaluation value calculation unit 321 in ascending order or descending order. The edge / surface contraction processing unit 323 compares the minimum evaluation value calculated by the evaluation value sorting unit 322 with the allowable value input from the allowable value input unit 33, and corresponds to the minimum evaluation value when it is equal to or smaller than the allowable value. Edge or surface contraction processing is performed. The evaluation value and the edge contraction method will be described later.
[0041]
The allowable value input unit 33 is for the operator to input an allowable value for determining whether or not edge contraction or surface contraction is possible as described above. This allowable value corresponds to an allowable range in which even if edge contraction or surface contraction is performed when approximating the polygon model, it is assumed that the influence on the characteristic part of the polygon model is small. Input accordingly.
[0042]
The data output unit 34 is an interface for outputting the reduced three-dimensional shape data (three-dimensional shape data constituting the approximated polygon model) to the external storage device 4, the display device 5, and the external processing device 6.
[0043]
The external storage device 4 records data on an external recording medium such as a magnetic disk, an optical disk, or a magnetic optical disk. When the three-dimensional shape data is input from the shape data processing apparatus 3, the external storage device 4 is stored in a predetermined file format on the external recording medium. Record.
[0044]
The display device 5 is a display device including an electronic display device such as a cathode ray tube or a liquid crystal display device. When the three-dimensional shape data is input from the shape data processing device 3 to the display device 5, an image of the polygon model of the measuring object G approximated based on the data is displayed (polygon model B in FIG. 3 is displayed). reference).
[0045]
The external processing device 6 is a device that manufactures a mold or a model having a shape substantially the same as the surface shape of the measurement object G, for example. When the three-dimensional shape data is input from the shape data processing device 3 to the external processing device 6, the workpiece is cut based on the three-dimensional shape data, and a die or the like is automatically manufactured.
[0046]
Next, the data reduction method according to the present invention will be described.
[0047]
FIG. 4 is a conceptual diagram of a data reduction method by edge contraction. FIG. 5 is a conceptual diagram of a data reduction method by surface contraction.
[0048]
As shown in FIG. 4, the data reduction method by edge contraction uses a polygon model with lattice points v1~ VTenFor example, the grid point v1And lattice point v2Edge Ed connecting12Both grid points v so that1, V2Is the lattice point v1It is a method of reducing the number of data by collecting together.
[0049]
In the data reduction method by edge contraction (hereinafter abbreviated as the edge contraction method), first, all edges Edij(I, j = 1, 2,... 10, where i ≠ j and the lattice points are adjacent to each other) An evaluation value for evaluating the influence on the shape change of the polygon model due to edge contraction is calculated. When the evaluation value is less than or equal to the allowable value, the edge Ed corresponding to the evaluation valueijLattice points v at both ends ofi, VjTo a predetermined grid point viData is reduced by concentrating on '.
[0050]
Next, lattice point vi, VjIs the lattice point viThe polygon models (approximate polygon models) gathered at ′ are subjected to edge contraction by the same method, and further data reduction is performed. Thereafter, the polygon model after the edge contraction is subjected to edge contraction one by one until the edge contraction cannot be performed in the same manner (that is, the approximation of the polygon model is repeated until the minimum evaluation value becomes larger than the allowable value). ), Data reduction is performed.
[0051]
In addition, lattice point vi′ Is, for example, the edge Ed as shown in the above-mentioned paper “Hierarchical approximation of the three-dimensional polygon model”.ijGrid point v such as midpointi, VjIt is an approximate point set at an appropriate position between.
[0052]
As shown in FIG. 5, a data reduction method using surface contraction (hereinafter abbreviated as “surface contraction method”) uses a polygon model with lattice points v.1~ V11For example, the grid point v1, Lattice point v2And lattice point vThreeSurface P surrounded byone two ThreeTo remove the grid point v1, V2, VThreeIs the lattice point v1It is a method of reducing the number of data by collecting together.
[0053]
The data reduction method by the surface contraction is basically performed in the same procedure as the data reduction method by the edge contraction. That is, first, all surfaces Pijk(I, j, k = 1, 2,... 10, where i ≠ j ≠ k and the lattice points are adjacent to each other) An evaluation value for evaluating the influence of the surface contraction on the shape change of the polygon model is calculated. If the minimum evaluation value is less than or equal to the allowable value, the surface P corresponding to the evaluation valueijkLattice points v constitutingi, Vj, VkTo a predetermined grid point viThe data is reduced by concentrating on ', and the data is reduced by performing surface contraction one by one until the surface of the polygon model after the surface contraction can no longer be contracted by the same method.
[0054]
When the three-dimensional shape data is sequentially reduced by the edge contraction method or the surface contraction method, the three-dimensional shape data constituting the measurement object G after the data reduction processing is the data of the measurement object G actually measured by the three-dimensional shape measurement apparatus 1. Unlike three-dimensional shape data, approximate three-dimensional shape data is obtained. For this reason, the error of the polygon model (hereinafter referred to as an approximated polygon model) after data reduction with respect to a polygon model (hereinafter referred to as the first polygon model) composed of actually measured three-dimensional shape data is managed. However, it is necessary to perform data reduction processing.
[0055]
In the data reduction method according to the present embodiment, for example, edge contraction is repeated, and for example, as shown in FIG. 6, lattice points a, b, c (actually measured three-dimensional shape data) are converted into lattice points a ′, b ′, c ′ and the triangular polygon PabcIs a triangular polygon PabcIf approximated to ′, triangular polygon P after approximationabcThe degree to which the surface including 'is away from the first lattice points a, b, c involved in the approximation processing of this surface is managed as an error.
[0056]
In the example of FIG. 6, for convenience of explanation, the lattice points involved in the approximation process are set as the lattice points a, b, and c. Since grid points (actual measurement data) other than the grid point a are included in the process, the above-described error includes these grid points and the triangular polygon P.abcThe distance from 'is also included.
[0057]
Next, an error evaluation value applied to the data reduction method according to the present embodiment will be described.
[0058]
In general, the plane p in the three-dimensional space is
A.x + B.y + C.z + D = 0 (3)
However, A2+ B2+ C2= 1
It is expressed by the equation
[0059]
On the other hand, the coordinates of the point v in the three-dimensional space are (vx, Vy, Vz), The distance d between the point v and the plane p is
d = A · vx+ B ・ vy+ C ・ vz+ D (4)
And expressed as a vector using a determinant, the following equation (5) is obtained.
[0060]
[Expression 7]
Figure 0004192377
[0061]
Accordingly, the square of the distance d is expressed by the following equation (6).
[0062]
[Equation 8]
Figure 0004192377
[0063]
The above equation (6) indicates the square of the distance d between one plane p and one point v not included in the plane p, and a plurality of points v with respect to the plane p.1, V2, ... vmIf there are these points viThe square sum Δ (p) of the distance to (i = 1, 2,... M) is expressed by the following equation (7).
[0064]
[Equation 9]
Figure 0004192377
[0065]
In the data reduction method according to the present embodiment, for example, when data reduction is performed by edge contraction, and there are n polygon model planes that are affected by contraction of a certain edge, each plane is defined for all of those planes. Since the distance between the first grid point (original 3D shape data) involved in the data reduction process is evaluated for approximation to the plane, it is evaluated for each plane. A distance sum of squares Δ (p) calculated by the above formula (7) is calculated, and the sum is divided by the total number M of all grid points involved in the data reduction process, and is expressed by the following formula (8). Ε is used as an error evaluation value.
[0066]
[Expression 10]
Figure 0004192377
[0067]
In the above equation (8), Δ (pi) Is the i-th plane piThe plane p foriIs the sum of squares of the distances to all the first grid points that contributed to the approximation of m,iIs the number of terms in the sum of squares of the distance.
[0068]
In the calculation process of the above equation (8), the matrix KviIs a symmetric matrix as shown in equation (6) above, so the first lattice point viMatrix matrix Kv calculated foriThe diagonal element and the element above the diagonal element may be stored in the memory. In this way, it is possible to reduce the memory capacity required for the arithmetic processing. In addition, each element m of the numerator of the above formula (8)iIs the i-th approximate surface piThe element at the lower right corner of the matrix Kv is always “1”, and the element at the lower right corner of the matrix ΣKv in the calculation result of the square sum of the distance is m.iTherefore, it is preferable to perform the calculation of the above equation (8) using the value of this element. In this way, the number of terms anewiNeed not be calculated, and the arithmetic processing becomes easy.
[0069]
When the above equation (7) is applied to the error evaluation for a certain plane p, the first lattice point v involved in the process of edge contraction or surface contraction reaching the plane p is concerned.iAre specified, their grid points viMatrix Kv obtained from 3D shape dataiΣKv plusiIs a parameter indicated by the degree of error in edge shrinkage or surface shrinkage. Therefore, in the following explanation, this ΣKviIs called an error matrix.
[0070]
Next, the procedure of the data reduction process of 3D shape data will be described using the flowchart of FIG.
[0071]
The three-dimensional shape data of the measurement object G taken in by the three-dimensional shape measurement apparatus 1 is input to the shape data processing apparatus 3, and first, a polygon model of a triangle is generated by the polygon generation unit 31 (# 1). Further, an allowable value for determining whether or not the edge contraction process is possible is input from the allowable value input unit 33 by the operator (# 3).
[0072]
Subsequently, the evaluation value ε when the edge contraction is performed on all edges of the first polygon model in the evaluation value calculation unit 321.j(J = 1, 2,... N, N is the total number of edges) is calculated by the above equation (8) (# 5). For example, in the example of FIG.1r(R = 2 to 5, 9, 10), Ed2s(S = 5, 6, ... 9), Edtt + 1(T = 3, 4,..., Where t + 1 = 11 is t + 1 = 3)j(J = 1, 2,... 19) is calculated.
[0073]
At this time, for example, the lattice point v1, V2Is the lattice point v1Gather at the edge Ed12, The first surface is all deformed and the grid point v1'And lattice point v not related to edge contractionThree~ VTenAnd 8 plane surfaces p1, P2, ... pTen(Hereinafter, the plane after deformation is referred to as an approximate surface.) These approximate surfaces p are formed.k(K = 1, 2,... 8), the square sum of distances Δ (pk) (K = 1, 2,..., 8) and the sum of squares Δ (pk) The total number M of elements included in the whole is calculated, and the edge Ed is calculated by the above equation (8).12Evaluation value ε (Ed12) Is calculated. The evaluation value ε (Ed12) Is expressed by the following equation (9).
[0074]
[Expression 11]
Figure 0004192377
[0075]
At this time, for example, the plane p1Is the grid point v1', VThree, VFour, But the grid point v1, V2, VThree, VFourIs the measured data, the grid point involved in edge contraction is v1, V2Only the sum of squared distances Δ (p1) Are these grid points v1, V2Error matrix (Kv1+ Kv2) Using the above equation (7). In this state, lattice point v1′ Is another lattice point vm(Measurement data not shown) and lattice point v1”(Not shown) gathered to approximate surface p1Is the approximate surface p1When approximated to ′ (not shown), this approximate surface p1The lattice points involved in the edge contraction to '1, V2, VmTherefore, the sum of squared distances Δ (p1′) Indicates these lattice points v1, V2, VmError matrix (Kv1+ Kv2+ Kvm) Is used to calculate the above equation (7).
[0076]
In this second edge contraction, the lattice point v is substantially1'Error matrix Kv1’(Kv1+ Kv2) As lattice point v1'Error matrix Kv1'And lattice point vmError matrix KvmAnd the sum of squares of the distance Δ (p1′) Is calculated.
[0077]
Therefore, in general terms in the process of edge contraction processing, in FIG.1, V2, VThree, VFourIs not actual measurement data but data generated by edge contraction, each grid point v1, V2, VThree, VFourError matrix for Kv1, Kv2, KvThree, KvFourThen, approximate surface p1Lattice points v constituting1Error matrix Kv for '1'Kv1′ = Kv1+ Kv2And approximate surface p1The three grid points v constituting1', VThree, VFourError matrix Kv1', KvThree, KvFourError matrix K obtained by addingp1(= Kv1'+ KvThree+ KvFour= Kv1+ Kv2+ KvThree+ KvFour) To approximate surface p according to equation (7) above.1The sum of squares of the distance Δ (p1) Is calculated.
[0078]
The square sum of distances Δ (p1)
Δ (p1) = P1 T・ Kp1・ P1  (10)
It becomes. Where P1Is the approximate surface p1Column vector notation, m1Is the error matrix Kp1Is the total number of error matrices Kv included in.
[0079]
And the approximate surface p2, PThree, ... p8Is also the approximate surface p described above.1The sum of squares of distance Δ (p2), Δ (pThree), ... Δ (p8) Are calculated, and these are substituted into the equation (9) to obtain the edge Ed.12Error evaluation value ε (Ed12) Is calculated.
[0080]
And the other edge Ed in the same way1r, Ed2s, Edtt + 1Error evaluation value ε (Ed in the case of edge contraction as well1r), Ε (Ed2s), Ε (Edtt + 1) Is calculated.
[0081]
Subsequently, in the evaluation value sorting unit 322, the error evaluation value εjAre sorted (# 7), and the minimum evaluation value Min {εj} Is less than or equal to the allowable value input in step # 3 (# 9). Minimum evaluation value Min {εj} Is larger than the allowable value (NO in # 9), the shape change when the edge contraction is unacceptable for all edges is so large that the data reduction process by the edge contraction is terminated. On the other hand, the minimum evaluation value Min {εj} Is equal to or less than the allowable value (YES in # 9), the edge / surface contraction processing unit 323 uses the minimum evaluation value Min {εj} Is performed (# 11). For example, in FIG. 4, the minimum evaluation value Min {εj} Is ε (Ed12), The edge Ed as shown in FIG.12The contraction process is performed.
[0082]
Subsequently, with respect to the polygon model after the edge contraction, the error evaluation value ε is again applied to the edge affected by the edge contraction process.q(Q = 1, 2,...) Is calculated (# 13), the process returns to step # 7, and these error evaluation values εqAmong these, the smallest error evaluation value Min {εq} Is calculated, and the contraction processing of the corresponding edge is performed (# 7 to # 11). Thereafter, the edge contraction process is repeated one by one (loop of # 7 to # 13), and the minimum evaluation value Min {εq} Is over the allowable value, the data reduction process is terminated (NO in # 9).
[0083]
Therefore, by performing such data reduction processing, the polygon model after the data reduction is approximated so that the error evaluation value ε for the first measurement data is equal to or less than the allowable value with respect to the first polygon model.
[0084]
As described above, in the data reduction method according to the present embodiment, how far the surface of the polygon model approximated by edge contraction or surface contraction is from the first lattice point (measured three-dimensional shape data). Since the error evaluation value is determined according to the condition, the data reduction process can be performed based on an evaluation criterion that is easy to understand intuitively.
[0085]
In addition, since data reduction is performed so that the evaluation value falls within a predetermined allowable error range, data reduction is performed while managing the error of the three-dimensional shape data constituting the approximated polygon model relatively accurately. Processing can be performed at high speed.
[0086]
In particular, even when random noise data is mixed in the measured 3D shape data, or when a large number of grid points are gathered into one point to reduce data, it is possible to suppress a decrease in reliability of error evaluation values. it can.
[0087]
8 and 9 compare the error evaluation method when random noise data is mixed in the measured three-dimensional shape data with the conventional error evaluation method.
[0088]
FIG. 8 is a diagram showing edge contraction of a portion (displayed in a cross section) where a discontinuous surface is generated in the polygon model due to random noise data. As shown in the figure, the lattice point v of the portion where the discontinuity unevenness of the polygon model surface is greatly generated1, V2Is substantially the center lattice point v1In the data reduction method shown in the above-mentioned conventional paper “Surface Simplification Using Quadric Error Metrics”, the lattice points v are collected as shown in FIG.1', For example, a lattice point v1, VFourPlane p containing14And lattice point v2, VFivePlane p containingtwenty fiveDistance to1', D2Since 'is used as the basis for error evaluation, the error evaluation value is calculated for a small sensory approximation error, whereas in the data reduction method according to the present embodiment, for example, the lattice point v1, V2Grid point v from1', VFour, VFivePlane p containing45Distance to1, D2Therefore, the error evaluation value relatively matches the sensory approximation error and is not calculated for a small eye.
[0089]
10, FIG. 11 and FIG. 12 compare the error evaluation method when a large number of lattice points are gathered into one point with the conventional error evaluation method.
[0090]
FIG. 10 shows eight lattice points v1, V2, ... v8It is a figure which shows shrinkage | contraction of the said zigzag surface of the polygon model in which the zigzag surface (it represents by the cross section) is formed. As shown in FIG.1, V2, ... v6Is the lattice point v7, V8Lattice point v at the approximate center of1In the data reduction method shown in the above-mentioned conventional paper “Surface Simplification Using Quadric Error Metrics”, the lattice points v are collected as shown in FIG.1Z 'zigzag faces p of the first polygon model71, P12, Ptwenty three, PThree Four, P45, P56, P68Distance to1', D2', ... d6Since 'is used as the basis for error evaluation, the evaluation value of the error is calculated with respect to a sensory approximation error. On the other hand, in the data reduction method according to the present embodiment, for example, each lattice point v1, V2, ... v6Grid point v from1', V7, V8Plane p containing78Distance to1, D2, ... d6Is the basis of error evaluation, the evaluation value of the error relatively matches the sensory approximation error and is not calculated for a large eye.
[0091]
FIG. 13 is a flowchart illustrating a modification of the data reduction processing procedure for three-dimensional shape data.
[0092]
In the data reduction processing procedure shown in FIG. 7, each time the edge contraction process is performed, the evaluation value ε is calculated again for the edge affected by the edge contraction, and the next edge contraction process is performed based on the evaluation value ε. However, the data reduction processing procedure shown in FIG. 13 does not perform the calculation of the evaluation value ε for the edge affected by the edge contraction, but performs the edge contraction for the other edges. .
[0093]
Specifically, in the flowchart shown in FIG. 13, the process of step # 13 in FIG. 7 is changed to step # 13 ′ of the process of “inhibiting the contraction of the edge affected by the edge contraction”. And Steps # 15 and # 17 are added between the “End” process.
[0094]
Therefore, in the following description, common parts of the flowchart will be briefly described, and different parts will be described in detail.
[0095]
The three-dimensional shape data of the measuring object G captured by the three-dimensional shape measuring apparatus 1 is input to the shape data processing apparatus 3, and a polygonal model 31 is generated by the polygon generating unit 31 (# 1). Further, an allowable value for determining whether or not the edge contraction process is possible is input from the allowable value input unit 33 by the operator (# 3).
[0096]
Subsequently, an evaluation value ε when the edge contraction is performed on all edges of the polygon model in the evaluation value calculation unit 321.j(J = 1, 2,..., N, N is the total number of edges) is calculated (# 5), and the evaluation value sorting unit 322 determines the error evaluation value ε.jAnd the minimum evaluation value Min {εj} Is calculated (# 7).
[0097]
Subsequently, the minimum evaluation value Min {εj} Is less than or equal to the allowable value in step # 3 (# 9), and the minimum evaluation value Min {εj} Is equal to or less than the allowable value (YES in # 9), the edge / surface contraction processing unit 323 uses the minimum evaluation value Min {εj} Is performed (# 11).
[0098]
Subsequently, the edge contraction process affected by the edge contraction process is prohibited (# 13 '), and the process returns to step # 7. This process is performed so that the next edge contraction process is performed on the edges that are not affected by the current edge contraction process.
[0099]
Returning to step # 7, the evaluation value ε for the edges other than the edges for which edge contraction is prohibitedq(Q = 1, 2,... Q, where Q <N) is sorted and the minimum evaluation value Min {εq} Is calculated (# 7). And the minimum evaluation value Min {εq} Is less than or equal to the allowable value (# 9), and the minimum evaluation value Min {εq} Is equal to or less than the allowable value (YES in # 9), the edge / surface contraction processing unit 323 uses the minimum evaluation value Min {εq} Is performed (# 11), and the edge contraction process affected by the edge contraction process is prohibited (# 13 '), and the process returns to step # 7 again.
[0100]
Thereafter, the same processing is repeated, and each time the edge contraction processing is performed, the next edge processing is performed while excluding the edge affected by the edge contraction (# 7, # 9, # 11, # 13). 'Lube').
[0101]
On the other hand, in the process of repeating the edge contraction process, the minimum evaluation value Min {εq} Is larger than the allowable value (NO in # 9), it is determined whether there is an edge for which edge contraction is prohibited (# 15), and if there is an edge for which edge contraction is prohibited (YES in # 15). ) Again, error evaluation value ε for those edgesr(R = 1, 2,...) Is calculated (# 17), the process returns to step # 7, and these error evaluation values εrAmong these, the minimum error evaluation value Min {εr} Is calculated, and its minimum error evaluation value Min {εr} Is performed (# 7, # 9, # 11).
[0102]
Then, the edge contraction process is repeated, and the minimum evaluation value Min {εq} Becomes larger than the allowable value, and when there are no edges for which edge contraction is prohibited (NO in # 9 and # 15), the data reduction processing by edge contraction is terminated.
[0103]
FIG. 14 is a diagram illustrating an example of a data reduction process according to the processing procedure illustrated in FIG.
[0104]
In the figure, polygon model M0Is the first polygon model. This polygon model M0Is 28 lattice points v1, V2, ... v28Are arranged in 5 rows so that the number of each row is (3, 4, 5, 4, 5, 4, 3), and the adjacent lattice points are connected.
[0105]
Since the edges e1, e2, e3, e4, and e5 are not affected by each other when the respective edges ei (i = 1, 2,... 5) are contracted, they are shown in FIG. 13 for convenience of explanation. It is selected that the edges are sequentially contracted according to the processing procedure.
[0106]
Therefore, the data reduction process of FIG. 14 is performed by the polygon model M according to the processing procedure of FIG.0Shows a case where edges are contracted sequentially in the order of edges e1, e2,... E5. And polygon model M1, M2, MThree, MFour, MFiveIs the polygon model M0Is an approximated polygon model when contraction processing is performed in the order of edges e1, e2,... E5.
[0107]
According to the data reduction processing procedure shown in FIG. 13 described above, first, the edge model e1 is contracted in the first edge contraction processing, and the polygon model M1Is approximated to the collected grid point vaAnd lattice points v arranged around them9, VTen, V11, V13, V16, V18, V19, V20(Polygon model M1The edges formed by the grid line in the dotted line frame are affected, and in the next edge contraction processing, the edges (polygon model M) excluding these edges are affected.1Again for the edge outside the dotted frame)qAnd the minimum evaluation value Min {εq}, The edge contraction processing is performed on the edge e2 having the polygon model M2Is approximated by
[0108]
Furthermore, in the next edge contraction process, the collected grid points vbAnd lattice points v arranged around them1, V2, VFour, V6, V8, VTen, V13, Va(Polygon model M2The edges formed by the grid points in the dotted line frame) are affected. Therefore, the edges excluding these edges (polygon model M)2Again for the edge outside the dotted frame)sAnd the minimum evaluation value Min {εs}, The edge contraction process is performed on the edge e3 having the polygon model MThreeIs approximated by
[0109]
Then, the edge contraction is also performed for the edges e4 and e5 in the same manner, and the first polygon model M is obtained by the five edge contraction processes.0Is the polygon model MFiveThe number of data is reduced by five.
[0110]
First polygon model M0The sixth polygon model M6Considering the process of approximating (not shown), the processing procedure shown in FIG. 13 does not recalculate the evaluation value for the edge affected by the edge contraction. Therefore, in the example of FIG. Model M0When the evaluation values are first calculated for the 66 edges forming the approximate polygon model M,1~ MFourThe evaluation value is not recalculated for, and the next recalculation is the polygon model MFiveThis is performed for 50 edges that constitute. Therefore, the sixth polygon model M6The number of recalculations of evaluation values up to 50 is 50.
[0111]
On the other hand, in the processing procedure shown in FIG. 7, since the evaluation value is recalculated for the edge affected by the edge contraction, each approximated polygon model M1~ MFiveEach time, the evaluation value is recalculated for 16 edges affected by the edge contraction. Therefore, in the processing procedure shown in FIG. 7, the sixth polygon model M6The number of evaluation value recalculations up to 16 × 5 = 80 times, and the processing procedure shown in FIG. 13 has the advantage that the number of evaluation value recalculations is reduced and high-speed processing is possible.
[0112]
FIG. 15 is a modification of the flowchart shown in FIG.
[0113]
In the flowchart shown in FIG. 15, the evaluation value of the edge affected after the edge contraction is set to a predetermined evaluation value ε greater than the allowable value.maxIn the next edge contraction, the edge is substantially excluded from the object of edge contraction.
[0114]
Specifically, in the flowchart of FIG. 13, step # 13 ′ is changed to “evaluate the evaluation value of the edge affected by the edge contraction εmaxTo "step # 13" of the "set to" process, and the evaluation target of step # 15 and the evaluation value recalculation target of step # 17 aremaxIn step # 19 ', steps # 19 and # 21 for performing edge contraction processing on the edge after recalculation of the evaluation value are added after step # 17'.
[0115]
Therefore, in the following description, portions different from the flowchart of FIG. 13 will be described in detail.
[0116]
In step # 11, the edge / surface contraction processing unit 323 performs the minimum evaluation value Min {εj}, A predetermined evaluation value ε in which the evaluation value of the edge affected by the edge contraction processing is larger than the allowable value is obtained.max(# 13 ″) and return to step # 7. This process makes these edges excluded from the next edge contraction process, that is, for edges that were not affected by the edge contraction process. Only for the edge contraction to take place.
[0117]
Returning to step # 7, the evaluation value ε again.i(I = 1, 2,... N−1) is sorted, and the minimum evaluation value Min {εi} Is calculated (# 7). And the minimum evaluation value Min {εi} Is less than or equal to the allowable value (# 9), and the minimum evaluation value Min {εi} Is equal to or less than the allowable value (YES in # 9), the edge / surface contraction processing unit 323 uses the minimum evaluation value Min {εi} Is performed (# 11).
[0118]
Subsequently, the evaluation value of the edge affected by the edge contraction process is the evaluation value εmax(# 13 ″), the process returns to step # 7 again. Thereafter, the same processing is repeated, and each time the edge contraction process is performed, the evaluation value of the edge affected by the edge contraction is evaluated as ε.maxThe next edge processing is performed while setting to (Lube of # 7, # 9, # 11, # 13 ″).
[0119]
On the other hand, in the process of repeating the edge contraction process, the minimum evaluation value Min {εi} Becomes larger than the allowable value (NO in # 9), the evaluation value εmaxIt is determined whether there is an edge having (# 15 '), and the evaluation value εmaxIf there is an edge having (YES in # 15 '), the error evaluation value ε is again obtained for those edges.s(S = 1, 2,...) Is calculated (# 17 ′).
[0120]
These error evaluation values ε are obtained by sorting.sAmong these, the smallest error evaluation value Min {εs} Is calculated (# 19), and its minimum evaluation value Min {εi} Is equal to or smaller than the allowable value (YES in # 21), the process proceeds to step # 11 and the minimum evaluation value Min {ε described above.i}, The edge contraction process corresponding to.
[0121]
On the other hand, the above edge contraction process is repeated, and the evaluation value εmax(No in # 15 ') or evaluation value εmaxRecalculated evaluation value ε for edges withsAmong these, the minimum evaluation value Min {εs} Becomes larger than the allowable value (NO in # 21), the data reduction process by edge contraction is terminated.
[0122]
The processing procedure shown in FIG. 15 also sets the evaluation value of the edge affected by the edge contraction to an evaluation value ε greater than the allowable value.maxBy setting to, the contraction of the edge substantially shown in the processing procedure of FIG. 13 is prohibited, so the number of evaluation value recalculations is reduced and high-speed processing is possible.
[0123]
In the data reduction processing procedure shown in FIG. 13 and FIG. 15, the evaluation value is not recalculated until there is no part where the edge contraction process is prohibited for the part affected by the edge contraction process. Although it is excluded from the target of the edge contraction process, for example, when the edge contraction process is repeated a predetermined number of times, or when the difference between the minimum evaluation value and the allowable value falls within a predetermined range, etc. When the predetermined condition is satisfied, the prohibition of the edge contraction process may be canceled, and the evaluation values may be recalculated for all edges to enable the edge contraction again.
[0124]
In this way, even if a portion where data reduction processing can be performed within the allowable error remains in the portion where the edge contraction processing is prohibited, the data reduction processing can be performed for that portion, and can be performed within the allowable range. Data can be reduced as efficiently as possible.
[0125]
In addition, the data reduction processing procedure shown in FIGS. 13 and 15 is intended to reduce the number of evaluation value recalculations and increase the processing speed. Therefore, the evaluation value is expressed by the above equation (8). It is not limited to the error ε. Even when the evaluation value changes due to edge contraction or surface contraction and needs to be recalculated after contraction, for example, the evaluation value shown in the above-mentioned paper `` Surface Simplification Using Quadric Error Metrics '' Can be widely applied.
[0126]
In the above embodiment, the data reduction of the three-dimensional measurement data measured by the three-dimensional shape measuring apparatus 1 has been described as an example. However, the present invention is not limited to this, and is created by computer graphics or the like. It can also be widely applied to three-dimensional data.
[0127]
【The invention's effect】
As described above, according to the present invention, a plurality of three-dimensional shapes constituting a polygon model by converging two or more lattice points into one lattice point and contracting the edges or surfaces of the polygon model. This is a data reduction method for 3D shape data that reduces the number of data, and for all the surfaces that are deformed by contracting the edges or surfaces of the polygon model, all the surfaces involved in the deformation of each surface and each surface A predetermined evaluation value based on the distance to the first grid point is calculated, and when this evaluation value is less than a predetermined allowable value, the 3D shape data is reduced by edge contraction or surface contraction. In the reduction process, error management can be performed based on an intuitively easy-to-understand evaluation criterion that is an approximation error from the first three-dimensional shape data.
[0128]
Further, for example, even when the orientation of a surface locally changes suddenly in a zigzag manner in a polygon model, data reduction processing can be suitably performed while managing errors relatively accurately.
[0129]
In particular, since the evaluation value is the error ε defined by the above equation (1), the error ε can be easily calculated and high-speed processing is possible simply by saving the error matrix calculated for the first three-dimensional shape data. In addition, it is possible to efficiently use the memory required for the data reduction processing.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a three-dimensional shape measurement data processing system to which a data reduction method according to the present invention is applied.
FIG. 2 is a block diagram showing a configuration of a shape data processing apparatus.
FIG. 3 is a diagram illustrating an example of approximation of a polygon model by data reduction.
FIG. 4 is a conceptual diagram of a data reduction method by edge contraction.
FIG. 5 is a conceptual diagram of a data reduction method by surface contraction.
FIG. 6 is a diagram for explaining an evaluation value applied to the data reduction method according to the embodiment.
FIG. 7 is a flowchart showing a procedure of data reduction processing of three-dimensional shape data.
FIG. 8 is a diagram showing edge contraction in a portion where a discontinuous surface is generated in a polygon model due to random noise data;
FIG. 9 is a diagram for explaining a difference between an error evaluation value according to the present embodiment and a conventional error evaluation value in the data reduction process shown in FIG. 8;
FIG. 10 is a diagram illustrating contraction of a zigzag surface of a polygon model having a zigzag surface.
FIG. 11 is a diagram for explaining a conventional error evaluation value in the data reduction process shown in FIG. 10;
12 is a diagram for explaining an error evaluation value according to the present embodiment in the data reduction processing shown in FIG.
FIG. 13 is a flowchart showing another embodiment of the data reduction processing procedure for three-dimensional shape data.
FIG. 14 is a diagram for explaining an example of a data reduction process according to the processing procedure shown in FIG. 13;
15 is a diagram showing a modification of the flowchart shown in FIG.
[Explanation of symbols]
1 Three-dimensional shape measuring device
101 Lighting unit
102 Confocal optical system
103 Light receiver
104 Beam splitter
105 Calculation unit
106 Measurement table
2,4 External storage device
3 Shape data processing device (data reduction device)
31 Polygon generator
32 Data reduction department
321 Evaluation value calculation unit (evaluation value calculation means)
322 evaluation value sort part
323 Edge / surface shrinkage processing unit (comparison means, data reduction means)
33 Allowable value input section
34 Data output section
5 display devices
6 External processing device

Claims (10)

2個以上の格子点を1個の格子点に集結してポリゴンモデルのエッジもしくは面を収縮することにより当該ポリゴンモデルを構成する複数の三次元座標データのデータ数を削減する三次元形状データのデータ削減方法であって、評価値算出手段が、上記ポリゴンモデルのエッジもしくは面を収縮することにより変形を受ける全ての面について、各面と各面の変形に関与した全ての最初の格子点との距離に基づく所定の評価値を算出する工程と、比較手段が、上記評価値を予め設定された許容値と比較する工程と、データ削減手段が、上記評価値が上記許容値以下であるとき、上記エッジもしくは面の収縮を行って上記三次元形状データの削減を行う工程とを備えたことを特徴とする三次元形状データのデータ削減方法。By gathering two or more grid points into one grid point and shrinking the edges or surfaces of the polygon model, the number of data of the plurality of 3D coordinate data constituting the polygon model is reduced. A data reduction method, wherein the evaluation value calculation means includes, for all surfaces subjected to deformation by contracting edges or surfaces of the polygon model, each surface and all initial lattice points involved in the deformation of each surface. and as factories you calculating a predetermined evaluation value based on the distance, comparing means, and as engineering you compared with a preset allowable value of the above evaluation value, the data reduction means, the evaluation value is the allowable value when it is less, the data reduction method of the three-dimensional shape data characterized by comprising a reduced extent rows cormorants Engineering of the three-dimensional shape data by the shrinkage of the edge or surface. 上記評価値は、下記(1)式で定義される誤差εであることを特徴とする請求項1記載の三次元形状データのデータ削減方法。
Figure 0004192377
2. The data reduction method for three-dimensional shape data according to claim 1, wherein the evaluation value is an error [epsilon] defined by the following equation (1).
Figure 0004192377
2個以上の格子点を1個の格子点に集結してポリゴンモデルのエッジもしくは面を収縮することにより当該ポリゴンモデルを構成する複数の三次元座標データのデータ数を削減する三次元形状データのデータ削減装置であって、上記ポリゴンモデルのエッジもしくは面を収縮することにより変形を受ける全ての面について、各面と各面の変形に関与した全ての最初の格子点との距離に基づく所定の評価値を算出する評価値算出手段と、上記評価値を予め設定された許容値と比較する比較手段と、上記評価値が上記許容値以下であるとき、上記エッジもしくは面の収縮を行って上記三次元形状データの削減を行うデータ削減手段とを備えたことを特徴とする三次元形状データのデータ削減装置。  By gathering two or more grid points into one grid point and shrinking the edges or surfaces of the polygon model, the number of data of the plurality of 3D coordinate data constituting the polygon model is reduced. A data reduction device, for all surfaces subject to deformation by contracting edges or surfaces of the polygon model, a predetermined amount based on the distance between each surface and all initial lattice points involved in the deformation of each surface Evaluation value calculation means for calculating an evaluation value, comparison means for comparing the evaluation value with a preset allowable value, and when the evaluation value is equal to or less than the allowable value, the edge or surface is contracted to A data reduction device for three-dimensional shape data, comprising data reduction means for reducing three-dimensional shape data. 上記評価値算出手段は、下記(1)式で定義される誤差εを評価値として算出するものであることを特徴とする請求項3記載の三次元形状データのデータ削減装置。
Figure 0004192377
4. The data reduction apparatus for three-dimensional shape data according to claim 3, wherein the evaluation value calculation means calculates an error ε defined by the following equation (1) as an evaluation value.
Figure 0004192377
上記評価値算出手段は、最初のポリゴンモデルを構成する全ての格子点vについてそれぞれ誤差行列Kvを算出しておき、2個以上の格子点v(p=1,2,…)を1の格子点vに集結したときは、集結させた各格子点vの誤差行列Kvの和をその格子点vの誤差行列Kvとして上記(1)式により誤差εを算出するものであること特徴とする請求項4記載の三次元形状データのデータ削減装置。The evaluation value calculation means calculates an error matrix Kv for each of the lattice points v constituting the first polygon model, and sets two or more lattice points v p (p = 1, 2,...) To 1. when gathered in the lattice point v q is for calculating an error ε by the equation (1) the sum of the error matrix Kv p of each lattice point v p obtained by gathering as error matrix Kv q of the lattice point v q 5. The data reduction device for three-dimensional shape data according to claim 4, wherein 上記評価値算出手段は、最初の格子点についてそれぞれ算出した誤差行列の対角元素とこの対角元素よりも上側の元素のみを記憶手段に記憶しておき、この記憶手段に記憶された対角元素とこの対角元素より上側の元素とを用いて誤差行列を復元し、この誤差行列を用いて上記(1)式により誤差εを算出することを特徴とする請求項5記載の三次元形状データのデータ削減装置。  The evaluation value calculation means stores only the diagonal elements of the error matrix calculated for the first lattice point and the elements above the diagonal elements in the storage means, and stores the diagonal elements stored in the storage means. 6. The three-dimensional shape according to claim 5, wherein an error matrix is restored by using an element and an element above the diagonal element, and an error ε is calculated by the equation (1) using the error matrix. Data reduction device for data. 上記評価値算出手段は、最初の格子点の三次元形状データの列ベクトルVが下記(2)式で表されるとき、各面p毎に算出される誤差行列ΣKv(j=1,2,…m)の右下隅の元素を加算することで上記(1)式の総数Σm(i=1,2,…n)を算出することを特徴とする請求項4記載の三次元形状データのデータ削減装置。
Figure 0004192377
The evaluation value calculating means, when a column vector V of the three-dimensional shape data of the first grid point is represented by the following equation (2), the error matrix is calculated for each surface p i ΣKv j (j = 1 , 2, ... m i) above by adding the elements in the lower right corner of (1) total number Σm i (i = 1,2, ... n) three-dimensional claim 4, wherein the calculating the Data reduction device for shape data.
Figure 0004192377
上記評価値算出手段は、上記格子点vの誤差行列Kvに代えて重み付誤差行列w・Kvを用いて上記(1)式により誤差εを算出することを特徴とする請求項4記載の三次元形状データのデータ削減装置。The evaluation value calculating means calculates an error ε by the above equation (1) using a weighted error matrix w j · Kv j instead of the error matrix Kv j of the lattice point v j. The data reduction device for three-dimensional shape data according to 4. 上記ポリゴンモデルのエッジ収縮もしくは面収縮に関与する格子点は、三角形ポリゴンモデルのエッジもしくは面を構成する格子点であることを特徴とする請求項1記載の三次元形状データのデータ削減方法2. The method of reducing data of three-dimensional shape data according to claim 1, wherein the lattice points involved in the edge contraction or surface contraction of the polygon model are lattice points constituting the edge or surface of the triangular polygon model. 2個以上の格子点を1個の格子点に集結することにより変形を受ける三角形の面を構成する格子点は、データ削減後の三角形ポリゴンモデルの面を構成する格子点であることを特徴とする請求項1記載の三次元形状データのデータ削減方法。  The lattice points constituting the triangular surface that is deformed by collecting two or more lattice points into one lattice point are lattice points constituting the surface of the triangular polygon model after data reduction. The data reduction method for three-dimensional shape data according to claim 1.
JP37126599A 1999-12-27 1999-12-27 Data reduction method and data reduction apparatus for three-dimensional shape data Expired - Fee Related JP4192377B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP37126599A JP4192377B2 (en) 1999-12-27 1999-12-27 Data reduction method and data reduction apparatus for three-dimensional shape data
US09/748,141 US6958753B2 (en) 1999-12-27 2000-12-27 Method and apparatus for reducing three-dimensional shape data
EP00128414A EP1113400A3 (en) 1999-12-27 2000-12-27 Method and apparatus for reducing three-dimensional shape data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP37126599A JP4192377B2 (en) 1999-12-27 1999-12-27 Data reduction method and data reduction apparatus for three-dimensional shape data

Publications (2)

Publication Number Publication Date
JP2001184528A JP2001184528A (en) 2001-07-06
JP4192377B2 true JP4192377B2 (en) 2008-12-10

Family

ID=18498413

Family Applications (1)

Application Number Title Priority Date Filing Date
JP37126599A Expired - Fee Related JP4192377B2 (en) 1999-12-27 1999-12-27 Data reduction method and data reduction apparatus for three-dimensional shape data

Country Status (1)

Country Link
JP (1) JP4192377B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2837597A1 (en) * 2002-03-25 2003-09-26 Thomson Licensing Sa Three-dimensional scene modeling process, involves calculating point of reference image on basis of set of images, of defined minimum and maximum depth values of point depth corresponding to maximum distortion
JP3967626B2 (en) * 2002-04-30 2007-08-29 独立行政法人科学技術振興機構 Image data compression processing method and image processing apparatus
JP4320577B2 (en) * 2003-09-19 2009-08-26 コニカミノルタホールディングス株式会社 Three-dimensional model generation method and apparatus, and computer program
JP6451932B2 (en) * 2014-11-10 2019-01-16 大日本印刷株式会社 Data output restriction device for 3D object modeling
JP6542038B2 (en) 2015-06-10 2019-07-10 ローランドディー.ジー.株式会社 Slice image forming apparatus, 3D modeling system, and slice image forming method
CN110214342A (en) 2017-01-18 2019-09-06 富士通株式会社 Model building device, modeling method and modeling program

Also Published As

Publication number Publication date
JP2001184528A (en) 2001-07-06

Similar Documents

Publication Publication Date Title
US6958753B2 (en) Method and apparatus for reducing three-dimensional shape data
US10643347B2 (en) Device for measuring position and orientation of imaging apparatus and method therefor
CN101118155B (en) Method and system for sensing the surface shape of a reflective object
JP4480488B2 (en) Measuring device, computer numerical control device, and program
EP2568253B1 (en) Structured-light measuring method and system
JP5955028B2 (en) Image processing apparatus, image processing method, and image processing program
JP2008145431A (en) Apparatus and method for 3-dimensional surface geometry reconstruction
JP2005308553A (en) Three-dimensional image measuring device and method
CN113494893B (en) Calibration method and device of three-dimensional laser scanning system and computer equipment
US9147279B1 (en) Systems and methods for merging textures
Ahmadabadian et al. Image selection in photogrammetric multi-view stereo methods for metric and complete 3D reconstruction
JP4192377B2 (en) Data reduction method and data reduction apparatus for three-dimensional shape data
CN1544883A (en) Three-dimensional foot type measuring and modeling method based on specific grid pattern
Rossoni et al. Retopology and simplification of reality-based models for finite element analysis
JP4151185B2 (en) Data reduction method and data reduction apparatus for three-dimensional shape data
CN109690241A (en) Three directional measuring device and three-dimensional measurement method
JP2002109518A (en) Three-dimensional shape restoring method and system therefor
CN111753644A (en) Method and device for detecting key points on three-dimensional face scanning
EP4193905A1 (en) Intraoral scanner, intraoral scanning system, method for performing intraoral scans and computer program product
TWI412721B (en) System and method for detecting a gap between two parts of an object
KR100756300B1 (en) Method for 3-d shape recovery using 3-d focus measure operator
US20050219237A1 (en) Image data compression method and image processing device
CN112802175B (en) Large-scale scene shielding and eliminating method, device, equipment and storage medium
CN112907759A (en) Splicing redundant point cloud removing method based on point cloud projection and point cloud growth
JP2002350131A (en) Calibration method for and apparatus of multiocular camera and computer program

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050922

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20051006

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20051006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080723

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080826

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080908

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111003

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121003

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121003

Year of fee payment: 4

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131003

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees