(57)【特許請求の範囲】
【請求項１】
測定対象を測定機により測定して得られた複数の計測点からなる計測点群と、前記測定対象の設計データにより特定される複数の設計点からなる設計点群とを演算処理装置によって位置合わせする位置合わせ方法であって、
前記演算処理装置が、
前記計測点群から部分点群を選択し、
前記部分点群と前記設計点群とを位置合わせ処理して移動パラメータを算出し、
前記移動パラメータを用いて前記計測点群を移動させ、
前記計測点群を含む空間に格子点を設定し、前記移動後の計測点群の各計測点を、それらに最も近い格子点に置き換える格子化処理を実行し、
前記設計点群の中から前記格子点に置き換えられた各格子化点の最短点を求め、
前記最短点を初期値として最短距離計算を行うことにより、前記移動後の計測点群と前記設計点群とを位置合わせ処理する
ことを特徴とする位置合わせ方法。
【請求項２】
前記演算処理装置が、
前記部分点群と前記設計点群とを位置合わせするに際し、前記設計点群の中から前記部分点群の最短点を求め、求められた最短点を前記部分点群と前記設計点群との位置合わせの際の最短距離計算に用いる初期値とする
ことを特徴とする請求項１記載の位置合わせ方法。
【請求項３】
前記演算処理装置が、
前記設計点群の中から前記格子点に置き換えられた各格子化点の最短点を求める際に、前記格子点に既に最短点が設定されている場合には、前記設定された最短点を前記格子化点の最短点として用いる
ことを特徴とする請求項１記載の位置合わせ方法。
【請求項４】
前記演算処理装置が、
前記部分点群の選択に際して、
二つの前記計測点の距離が所定値以上離れていた場合、その二つの計測点は異なる計測線を構成する点であるとし、前記計測線の数と前記計測点の数との比率が所定数以下であった場合には、前記計測線に沿って前記部分点群を選出する
ことを特徴とする請求項１〜３のいずれか１項記載の位置合わせ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、測定対象を測定して得られた計測データと設計データとを位置合わせする位置合わせ方法に関する。
【背景技術】
【０００２】
ＣＡＤ等の設計データに基づいて製造した製品を三次元測定装置等で計測し、設計値と実際に製造された製品とを比較し、品質の評価等を行う方法が知られている。この様な方法においては、設計データと計測データとの基準位置を揃える為に、ベストフィット計算等の位置合わせ方法が行われている（特許文献１）。ベストフィット計算においては、計測データと設計に使用されたＣＡＤデータ等を用いた自由曲線データ又は自由曲面データとが二次元又は三次元座標空間内において重なりあうように、計測データ全体を平行・回転移動する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２６４９５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ベストフィット計算においては、設計データ上において最も計測点に近い位置座標を最短点として設定し、この最短点と計測点との距離が計測点全体として最小となるように計測データ全体を平行・回転移動する。従って、ベストフィット計算においては、初期パラメータとして計測点毎に最短点を決定する必要がある。より具体的には、例えば、予め設計（自由曲面）データから設計自由曲面上に適当数の設計点群を配置し、この設計点群を複数のブロックに分類する。最初は、ブロック群と計測点との距離を算出して数個の最短ブロックを選択する。次に選択ブロック群内の点群との最短距離を求める。このような演算を全ての計測点について実行する。このように、初期パラメータとしての最短点の算出はベストフィット計算の中で最も多くの時間を要し、又、計測点数の増大に伴って更なる計算時間の増大を招いてしまうという問題があった。
【０００５】
本発明はこの様な点に鑑みなされたもので、精度を損なうことなく計算時間を大幅に短縮することが可能な位置合わせ方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明に係る位置合わせ方法は、測定対象を測定機により測定して得られた複数の計測点からなる計測点群と、測定対象の設計データにより特定される複数の設計点からなる設計点群とを演算処理装置によって位置合わせする位置合わせ方法であって、演算処理装置が、計測点群から部分点群を選択し、部分点群と設計点群とを位置合わせ処理して移動パラメータを算出し、移動パラメータを用いて計測点群を移動させ、移動後の計測点群と前記設計点群とを位置合わせ処理する。この様な方法によれば、最初の位置合わせ処理の際に必要な初期最短点の計算量を大幅に削減することが可能であり、結果として位置合わせ方法の大幅な高速化を可能とする。
【０００７】
又、本発明の一実施形態に係る位置合わせ方法では、演算処理装置が、移動後の計測点群と設計点群とを位置合わせするに際し、計測点群を含む空間に格子点を設定し、移動後の計測点群の各計測点を、それらに最も近い格子点に置き換える格子化処理を実行し、設計点群の中から格子点に置き換えられた各格子化点の最短点を求め、最短点を移動後の計測点群と設計点群との位置合わせの際の最短距離計算に用いる初期値とする。
【０００８】
又、本発明の他の実施形態に係る位置合わせ方法では、演算処理装置が、部分点群と設計点群とを位置合わせするに際し、設計点群の中から部分点群の最短点を求め、求められた最短点を部分点群と設計点群との位置合わせの際の最短距離計算に用いる初期値とする。
【０００９】
又、本発明の他の実施形態に係る位置合わせ方法では、演算処理装置が、設計点群の中から格子点に置き換えられた各格子化点の最短点を求める際に、格子点に既に最短点が設定されている場合には、設定された最短点を格子化点の最短点として用いる。この様な方法によって、位置合わせ方法の更なる高速化を図ることが可能である。
【００１０】
又、本発明の他の実施形態に係る位置合わせ方法では、演算処理装置が、部分点群の選択に際して、二つの計測点の距離が所定値以上離れていた場合、その二つの計測点は異なる計測線を構成する点であるとし、計測線の数と計測点の数との比率が所定数以下であった場合には、計測線に沿って部分点群を選出する。
【発明の効果】
【００１１】
本発明によれば、精度を損なうことなく位置合わせ処理の計算時間を短縮することが可能である。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態に係る位置合わせ方法を実現する為の三次元形状評価システムの構成の一例を示すブロック図である。
【図２】同実施形態における位置合わせ方法の内容を示すフローチャートである。
【図３】同実施形態における位置合わせ方法を説明する為の図である。
【図４】同実施形態における位置合わせ方法を説明する為の図である。
【図５】同実施形態における位置合わせ方法を説明する為の図である。
【図６】同実施形態における位置合わせ方法を説明する為の図である。
【図７】同実施形態における位置合わせ方法における最短点の算出方法を説明する為のフローチャートである。
【発明を実施するための形態】
【００１３】
［第１実施形態］
［システム構成］
次に、本発明の第１実施形態について図面を参照して詳細に説明する。
【００１４】
図１は、本実施形態に係る位置合わせ方法を実現する為の三次元形状評価システムの構成の一例を示すブロック図である。三次元測定機１により、ワーク２の被測定曲面（自由曲面）をランダムに測定又は倣い測定して得られた計測点群は、演算処理装置であるコンピュータ２０に入力される。なお、計測点群は、他の形状測定機から取得されたものであっても良いし、計測済みデータを記憶する記憶装置１２から読み出された計測点群であっても良い。
【００１５】
コンピュータ２０には、ＣＡＤシステム３又は記憶装置１２から出力された自由曲面データ（設計データ）も入力されている。自由曲面データは、例えばベジェ（Bezier）やＮＵＲＢＳ（Non-Uniform Rational B-Spline）等のコントロールポイントの行列［ｘij］，［ｙij］，［ｚij］で表現されている。
【００１６】
コンピュータ２０は、記憶装置１２に記憶された誤差画像生成プログラムの実行により、次の各機能を実現する。
【００１７】
すなわち、部分点群選択部４は、三次元測定機１から出力された計測点群から後述する条件に従って部分点群を選択し、部分点群を部分点群位置合わせ処理部５に出力する。部分点群位置合わせ処理部５は、部分点群及びＣＡＤシステム３から出力された自由曲面データに対して位置合わせ処理を行い、自由曲面データに対する部分点群の回転移動パラメータｄθ及び平行移動パラメータｄｒを、ｘ軸方向、ｙ軸方向、ｚ軸方向について、それぞれ算出する。計測点群移動部６は回転移動パラメータｄθ及び平行移動パラメータｄｒと、計測点群とを入力し、計測点群を回転移動パラメータｄθ及び平行移動パラメータｄｒを用いて移動させ、移動後計測点群として出力する。
【００１８】
格子点処理部７は、後述する条件によって三次元格子点群を生成し、各計測点を最も近い格子点に近似化する格子化処理を実行する。最短点設定部８は、格子化された計測点（以下、「格子化点」と呼ぶ。）に最も近い設計点を最短点として求め、又は既に求められている最短点を用いて、各計測点に最短点を設定する。最短点テーブル９は、各計測点、格子化点及び最短点の関係を示すテーブルを格納する。
【００１９】
計測点群位置合わせ処理部１０は、最短点設定部８において設定され、最短点テーブル９に記憶された最短点を用いて、移動後計測点群の位置合わせ処理を行う。出力装置１１は、計測点群位置合わせ処理部１０の計算結果を表示・出力する。出力装置１１としては、ディスプレイやプリンタ等が適用可能である。
【００２０】
［動作］
次に、本実施形態に係る位置合わせ方法を実現する三次元形状評価システムの動作について、図２〜７を参照して説明する。
【００２１】
図２及び図７は、本実施形態に係る位置合わせ方法を示すフローチャート、図３〜６は本実施形態に係る位置合わせ方法を説明する為の図である。
【００２２】
本実施形態に係る位置合わせ方法においては、まず、部分点群選択部４が計測点群全体から部分点群を選択する（Ｓ１）。部分点群の選択は、計測点群の性質に応じて異なる方法で行われることが望ましい。例えば、ワーク２を倣い測定した場合、図３（ａ）に示すように、測定点群は計測線に沿って細かい計測点群が並ぶ線群タイプとなる。一方、ワーク２の表面をランダムにサンプリングした場合、図３（ｂ）に示すように、測定点群は比較的均一に分散するランダムタイプとなる。したがって、部分点群の選出においては、まず計測点群がランダムタイプか線群タイプかを判定する。
【００２３】
計測点群がランダムタイプか線群タイプであるかを判定する為に、以下の処理を行う。まず、隣接する二つの計測点を比較し、計測点同士の距離が所定値以上離れていた場合には、その二つの計測点は異なる計測線を構成する点であるとする。次に、計測点の数と上記処理によって求まる計測線の数とを比較し、計測線の数が所定数（例えば線の数の１／１００）以下であった場合には、計測点群が線群タイプであるものと判定し、計測線の数が所定数以上であった場合にはランダムタイプであるものと判定する。
【００２４】
計測点群が線群タイプであると判定した場合、図３（ａ）に示すように、線群を構成する計測線に沿って、等間隔に第１の点群を算出する。例えば、計測点群が１０本の計測線からなる線群によって構成されており、各計測線は１万の計測点から構成されている場合、各計測線に沿って等間隔となるように１００ずつの計測点を選択する。この場合には、１０万（計測線１０本×計測点１万）の計測点群から、１０００（計測線１０本×計測点１００）の部分点群が選出されることとなる。
【００２５】
一方、計測点群がランダムタイプであると判定した場合には、図３（ｂ）に示すように、計測点群内において、空間分布が一様になるように部分点群が選出される。
【００２６】
本実施形態においては、この様な方法によって部分点群をワーク３の形状に沿って選択し、次の計測点群の移動処理のための初期パラメータの算出における計算処理速度を改善している。尚、本実施形態においては、線形タイプの計測点群とランダムタイプの計測点群とを区別して処理しているが、全てランダムタイプと同様の方法によって処理することも可能である。
【００２７】
次に、ステップＳ１において選出した部分点群に対し、部分点群位置合わせ処理部５が、部分点群位置合わせ処理を行い、設計（自由曲面）データに対する部分点群の回転移動パラメータｄθ及び平行移動パラメータｄｒを算出する（Ｓ２）。回転移動パラメータｄθ及び平行移動パラメータｄｒは、ｘ方向、ｙ方向、ｚ方向の三方向についてそれぞれ算出される。
【００２８】
部分位置合わせ処理としてはベストフィット計算を行う。ベストフィット計算においては、まずベストフィット計算に必要な初期パラメータを決定し（Ｓ２１）、次に算出した初期パラメータを用いて実際に計算を行う（Ｓ２２）。初期パラメータとは、部分点群に含まれる各計測点と、設計データによる特定される自由曲面上において最近接となる設計点（以下、「最短点」と呼ぶ。）である。
【００２９】
図４を参照してステップＳ２の動作について更に詳細に説明する。初期パラメータの算出に際しては、まず自由曲面上に適当数の設計点群を配置する。即ち、ＣＡＤシステム３から出力される設計（自由曲面）データは、自由曲面の生成にベジェ（Bezier）曲線を使用した場合には、例えば、（ｎ＋１）×（ｍ＋１）のコントロールポイントの行列［ｘij］，［ｙij］，［ｚij］にて定義され、三次元空間への変換式は、次の数１のようになる。
【００３０】
【数１】
0005916052.tif 000002
【００３１】
上記で定義される自由曲面のｕ，ｖを所定間隔で所定個数だけ発生させることにより、自由曲面上に設計点群を生成することができる。
【００３２】
次に、図４に示すように、生成された設計点群を適当数のブロックに分割する。そして、部分点群から部分点を一つずつ選択し、生成されたブロックのうち選択された部分点に最も近いブロックを適当数（１〜５個程度）選択し、更に選択されたブロック内の設計点群のうち選択された部分点に最も近いものを初期最短点として選出する。
【００３３】
図５に示す通り、初期最短点の選出は部分点群のみを対象としている。従って、計測点全体に対して初期最短点の選出を行う場合と比較して計算処理に要する時間を大幅に削減することが可能である。
【００３４】
次に部分点群位置合わせ処理部５は、算出された初期最短点を用いてベストフィット計算を行う。ベストフィット計算は、部分点群と初期最短点との距離ｒの総和が最小となるように、部分点群を移動させることによって行う。即ち、ベストフィット計算においては、自由曲面データに対する部分点群の回転移動パラメータｄθ及び平行移動パラメータｄｒを、評価関数Σｒが閾値以下となるように、ｘ軸方向、ｙ軸方向、ｚ軸方向について求めていく。
【００３５】
次に、計測点群移動部６は、算出した回転移動パラメータｄθ及び平行移動パラメータｄｒを用い、全計測点群を移動させ、移動後計測点群として出力する（Ｓ３）。ステップＳ３の処理によって、計測点群全体の位置を自由曲面データと略一致させることが可能である。
【００３６】
次に、格子化処理部７が、移動後計測点群に対して格子化処理を実行する（Ｓ４）。
【００３７】
ステップＳ４では、まず格子化処理部７において三次元格子点群が生成される。三次元格子点の生成に際しては、空間座標中の演算対象となる領域（以下、演算領域）の縦、横、高さを格子間隔Ｈで分割する。分割によって生成された演算領域中の立方格子の各頂点が三次元格子点となる。
【００３８】
空間座標の縦、横、高さについての分割数をそれぞれＮ０，Ｎ１，Ｎ２とすると、それぞれＮ０＝［演算領域の縦長さ］／Ｈ，Ｎ１＝［演算領域の横長さ］／Ｈ，Ｎ２＝［演算領域の高さ］／Ｈとなる。本実施形態に係る三次元評価方法の演算量及び精度は、Ｎ０×Ｎ１×Ｎ２に比例している。本実施形態において、格子間隔Ｈはコンピュータ（演算処理装置）２０に搭載されているメモリの量によって決定しているが、ユーザがワーク２の大きさや形状、要求される測定精度等によって適宜調整することも可能である。
【００３９】
三次元格子点群が生成されたら、次に、格子化処理部７が各計測点に最も近い格子点を格子化点として対応付ける。例えば、図６に示すように、計測点（ｘ′ｎ，ｙ′ｎ，ｚ′ｎ）に最も近い格子点が（ｘｌｎ，ｙｌｎ，ｚｌｎ）であるとすると、計測点（ｘ′ｎ，ｙ′ｎ，ｚ′ｎ）は格子化点（ｘｌｎ，ｙｌｎ，ｚｌｎ）に格子化される。互いに近接する計測点によっては、同一の格子化点と対応付けられることもある。計測点を格子化点に置換することにより、後述するように後の最短点の計算処理が単純化される。計測点と格子化点の関係は、最短点テーブル９に記憶される。
【００４０】
このとき、部分点群に含まれる計測点については、図６に示すように、ステップＳ２において既に初期最短点が求められているので、計測点と格子化点との関係と共に格子化点と初期最短点との関係も同時に設定しておく。例えば、図６に示すように、移動後計測点（ｘ′ｎ，ｙ′ｎ，ｚ′ｎ）に初期最短点（ｒｘｎ，ｒｙｎ，ｒｚｎ）が求められているとすると、移動後計測点（ｘ′ｎ，ｙ′ｎ，ｚ′ｎ）に対応する格子化点（ｘｌｎ，ｙｌｎ，ｚｌｎ）に、最短点（ｒｘｎ，ｒｙｎ，ｒｚｎ）が設定される。具体的には、最短点テーブル９内の格子化点（ｘｌｎ，ｙｌｎ，ｚｌｎ）に対応するアドレスに最短点（ｒｘｎ，ｒｙｎ，ｒｚｎ）が設定される。部分点群以外の移動後計測点については、ステップＳ４では格子点化処理のみ行われる。
【００４１】
次に、最短点設定部８が、部分点群以外の計測点について格子化点と最短の最短点を算出し、全計測点のベストフィット処理における初期パラメータとする（Ｓ５）。図７を参照してステップＳ５の演算処理内容をより詳細に説明する。ステップＳ５に際して例えばｎ番目の移動後計測点について処理を行う場合、まず最短点テーブル９内のｎ番目の移動後計測点に対応する格子化点に対応するアドレスに最短点が設定されているか否かを確認し（Ｓ５１）、設定されていた場合にはその設定されていた最短点をそのまま使用し（Ｓ５２）、設定されていなかった場合には直接計算して最短点を求めて設定する（Ｓ５２、Ｓ５３）。この処理を全ての移動後計測点について実行するまで繰り返す（Ｓ５４，Ｓ５５）。
【００４２】
この処理によれば、部分点群位置合わせ処理（ステップＳ２）や全計測点に対する最短点算出処理（ステップＳ５）で既に算出されている最短点は、そのまま使用することができる。したがって、格子化点を共通にする近接した計測点では、１回の最短点の算出のみを行えば良く、その分の演算処理を省略することができる。より具体的には、例えば、格子化処理部７において生成される格子点の格子点間隔Ｈと、部分点群の空間分布が同程度であった場合、部分点群以外の計測点に対する格子化点は、既に最短点が設定されている格子点である確率が高いと考えられる。従って、最短点設定部８における新たな最短点の計算をほとんど省略することが可能となる。従って、例えば計測点群の数が１０万、格子化点の数が１０００であった場合、計算処理時間はほぼ１／１００となる。
【００４３】
次に、ステップＳ３において算出した修正計測点群及びステップＳ５において算出した最短点群を用いて全計測点に対する位置合わせ処理を行い（Ｓ６）、演算結果を出力する。尚、この位置合わせ処理は、ステップＳ２と同様の方法によって行うことが可能である。
【００４４】
以上のように、本実施形態に係る方法によれば、全測定点について最短点を計算するのではなく、全測定点から選択された少数の部分点群について初期最短点を算出し、ベストフィット処理を実行している。このため、大まかな位置合わせを少ない演算量で実行することができ、その後の演算負担を軽減できる。また、本実施形態によれば、測定点に最近接する格子化点毎に最短点を計算している。従って、最短距離情報の計算の精度を損なうことなく、大幅な高速化を図ることが可能となる。又、最短点の算出に際して予め位置合わせ処理を行っている為、最短点の決定が容易となる。
【００４５】
なお、本発明は、上述した実施形態に限定されるものではない。上記実施形態では、全計測点のベストフィットの初期パラメータである最短点を、計測点を格子化点に置き換えてから算出することにより、重複した最短点の計算を省略すようにしているが、このような格子化処理を行わず、全計測点について最短点を算出するようにしても良い。
【符号の説明】
【００４６】
１…三次元測定機、２…ワーク、３…ＣＡＤシステム、４…部分点群選択部、５…部分点群位置合わせ処理部、６…計測点群移動部、７…格子化処理部、８…最短点設定部、９…最短点テーブル、１０…計測点群位置合わせ処理部、１１…出力装置、１２…記憶装置、２０…コンピュータ（演算処理装置）。
【図１】
0005916052.tif 000003
【図２】
0005916052.tif 000004
【図３】
0005916052.tif 000005
【図４】
0005916052.tif 000006
【図５】
0005916052.tif 000007
【図６】
0005916052.tif 000008
【図７】
0005916052.tif 000009