(57)【特許請求の範囲】
【請求項１】
図形データの形状を解析する形状解析装置であって、
入力されたデータを構成する複数データに対し、複数の幾何要素をあてはめて各々の誤差を算出する第１演算手段と、
所定の許容誤差範囲内で、前記幾何要素をあてはめることのできる最大データ数を算出する第２演算手段と、
前記幾何要素毎に算出された最大データ数の中で最も多いデータ数に相当する幾何要素を前記複数データの形状と決定する決定手段と、
前記決定手段で決定された幾何要素のうちの隣接する第１幾何要素と第２幾何要素が互いに異なる幾何要素である場合に、前記第１幾何要素を延長した線と前記第２幾何要素を延長した線の交点と前記第１幾何要素及び前記第２幾何要素の端点との距離を算出し、前記距離が所定値未満であれば前記第１幾何要素及び前記第２幾何要素の端点を前記交点で置換し、前記距離が所定値以上であれば前記第１幾何要素及び前記第２幾何要素の端点同士を接続線で接続する手段と、
を有することを特徴とする形状解析装置。
【請求項２】
前記複数の幾何要素は、少なくとも直線と円を含むことを特徴とする請求項１記載の形状解析装置。
【請求項３】
前記複数データの数は３以上であることを特徴とする請求項１、２のいずれかに記載の形状解析装置。
【請求項４】
前記所定の許容誤差は、前記幾何要素毎に異なる値に設定されることを特徴とする請求項１〜３のいずれかに記載の形状解析装置。
【請求項５】
前記入力データを予め平滑化する平滑化手段をさらに有することを特徴とする請求項１〜４のいずれかに記載の形状解析装置。
【請求項６】
図形データの形状を解析する形状解析方法であって、
（ａ）入力データを構成する複数データに対し、複数の幾何要素を順次あてはめて各々の誤差を算出するステップと、
（ｂ）所定の許容誤差範囲内で、前記幾何要素をあてはめることのできる最大データ数を順次算出するステップと、
（ｃ）前記幾何要素毎に算出された最大データ数の中で最も多いデータ数に相当する幾何要素を前記複数データの形状と決定するステップと、
（ｄ）前記（ｃ）ステップで決定された幾何要素のうちの隣接する第１幾何要素と第２幾何要素が互いに異なる幾何要素である場合に、前記第１幾何要素を延長した線と前記第２幾何要素を延長した線の交点と前記第１幾何要素及び前記第２幾何要素の端点との距離を算出し、前記距離が所定値未満であれば前記第１幾何要素及び前記第２幾何要素の端点を前記交点で置換し、前記距離が所定値以上であれば前記第１幾何要素及び前記第２幾何要素の端点同士を接続線で接続するステップと、
を有することを特徴とする形状解析方法。
【請求項７】
前記複数の幾何要素は、少なくとも直線と円を含むことを特徴とする請求項６記載の形状解析方法。
【請求項８】
前記（ａ）〜（ｃ）のステップを繰り返すことにより、前記入力データの全てを前記複数の幾何要素で近似することを特徴とする請求項６、７のいずれかに記載の形状解析方法。
【請求項９】
前記複数のデータは少なくとも３個以上であることを特徴とする請求項６〜８のいずれかに記載の形状解析方法。
【請求項１０】
前記所定の許容誤差は、前記幾何要素毎に異なる値に設定されることを特徴とする請求項６〜９のいずれかに記載の形状解析方法。
【請求項１１】
前記（ａ）ステップの前に、前記入力データを平滑化するステップをさらに有することを特徴とする請求項６〜１０のいずれかに記載の形状解析方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は形状解析装置及び方法に関し、特に円や直線などの幾何要素が複数種類集まって構成される図形のデータから元の形状を推定する装置及び方法に関する。
【０００２】
【従来の技術】
従来より、２次元あるいは３次元の形状データを入力して解析し、元の形状を推定する技術が知られており、解析結果をＣＡＤデータとしてリバースエンジニアリングに利用するなど幅広い用途が期待されている。
【０００３】
特開平６−５０７４９号公報には、予め直線、円、楕円、球、平面、円筒、円錐などの幾何形状を表す数式を保持し、測定子から得られたデータとこれら幾何形状とを比較して最も誤差の小さい幾何形状を入力データの形状と認識する技術が開示されている。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記従来技術は、基本的に被測定物に測定子を接触させて被測定物の形状を測定するもので、測定子の測定方向に依存して形状が決定されるため、任意の入力データに対応できない問題がある。
【０００５】
また、直線、円、楕円、球、平面、円筒、円錐などの幾何形状の内、最も誤差の小さい形状を入力データの形状であると認識しているので、仮に被測定物が円や直線などの幾何要素が複数種類集まって構成されている場合でも、円あるいは直線のいずれの方が誤差が小さいかを判定して認識してしまうので、結果として被測定物の形状を誤認識してしまうおそれがある（本来は直線と円を組み合わせた形状であっても、単一の楕円あるいは単一の円と認識してしまう）。
【０００６】
本発明は、上記従来技術の有する課題に鑑みなされたものであり、その目的は、円と直線の組み合わせなど、複数種類の幾何要素から構成される図形データを入力し、元の図形を高精度に推定できる形状解析装置及び方法を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明は、図形データの形状を解析する形状解析装置であって、入力されたデータを構成する複数データに対し、複数の幾何要素をあてはめて各々の誤差を算出する第１演算手段と、所定の許容誤差範囲内で、前記幾何要素をあてはめることのできる最大データ数を算出する第２演算手段と、前記幾何要素毎に算出された最大データ数の中で最も多いデータ数に相当する幾何要素を前記複数データの形状と決定する決定手段と、前記決定手段で決定された幾何要素のうちの隣接する第１幾何要素と第２幾何要素が互いに異なる幾何要素である場合に、前記第１幾何要素を延長した線と前記第２幾何要素を延長した線の交点と前記第１幾何要素及び前記第２幾何要素の端点との距離を算出し、前記距離が所定値未満であれば前記第１幾何要素及び前記第２幾何要素の端点を前記交点で置換し、前記距離が所定値以上であれば前記第１幾何要素及び前記第２幾何要素の端点同士を接続線で接続する手段とを有することを特徴とする。
【０００８】
最大データ数の多い方の幾何要素は、より多いデータにあてはめることができたことを意味するから、この幾何要素をそのデータの形状と決定することで高精度に形状解析することができる。
【０００９】
ここで、前記複数の幾何要素は、少なくとも直線と円を含むのが好適であるが、他の２次元形状（楕円や放物線）を用いることもできる。もちろん、幾何要素は２次元に限定されず、３次元（例えば平面、球、円錐その他）を用いることもできる。
【００１０】
前記複数データの数は３以上であることが好適である。また、前記所定の許容誤差を前記幾何要素毎に異なる値に設定することができる。これにより、特定の幾何要素を優先的にあてはめて所望の解析結果が得られる。
【００１１】
また、本発明では前記入力データを予め平滑化する平滑化手段を有することもできる。これにより、滑らかな解析結果を得ることができる。
【００１２】
また、本発明では、図形データの形状を解析する形状解析方法を提供する。この方法は、（ａ）入力データを構成する複数データに対し、複数の幾何要素を順次あてはめて各々の誤差を算出するステップと、（ｂ）所定の許容誤差範囲内で、前記幾何要素をあてはめることのできる最大データ数を順次算出するステップと、（ｃ）前記幾何要素毎に算出された最大データ数の中で最も多いデータ数に相当する幾何要素を前記複数データの形状と決定するステップと、（ｄ）前記（ｃ）ステップで決定された幾何要素のうちの隣接する第１幾何要素と第２幾何要素が互いに異なる幾何要素である場合に、前記第１幾何要素を延長した線と前記第２幾何要素を延長した線の交点と前記第１幾何要素及び前記第２幾何要素の端点との距離を算出し、前記距離が所定値未満であれば前記第１幾何要素及び前記第２幾何要素の端点を前記交点で置換し、前記距離が所定値以上であれば前記第１幾何要素及び前記第２幾何要素の端点同士を接続線で接続するステップとを有することを特徴とする。
【００１３】
前記複数の幾何要素は、少なくとも直線と円を含むことが好適であるが、他の２次元あるいは三次元の幾何要素を用いることもできる。前記（ａ）〜（ｃ）のステップを繰り返すことにより、前記入力データの全てを前記複数の幾何要素で近似することができる。
【００１４】
前記複数のデータは少なくとも３個以上であることが好適であり、前記所定の許容誤差は、前記幾何要素毎に異なる値に設定することができる。
【００１５】
また、前記（ａ）ステップの前に、前記入力データを平滑化するステップをさらに有することもできる。
【００１６】
【発明の実施の形態】
以下、図面に基づき本発明の実施形態について説明する。
【００１７】
図１には、本実施形態の構成ブロック図が示されている。本実施形態の形状解析装置は、通常のコンピュータシステムを用いて構成することができる。
【００１８】
データ入力端子１は、三次元測定機や非接触の画像測定機で得られたサンプルの測定データを入力する端子であり、測定データは例えば２次元データ群（ｘｉ、ｙｉ）（ｉ＝１、２、３、・・であり、サンプルの幾何形状が２次元の場合である）としてコンピュータ１６に供給される。なお、本実施形態で解析すべきサンプルは、長方形のみや円のみ、あるいは楕円のみのような単一の図形要素ではなく、複数の図形要素（直線と円、曲率半径の異なる複数の円、直線と複数の円など）が連続した複雑な幾何図形であり、データ群（ｘｉ、ｙｉ）には複数の図形要素が含まれているとする。また、データを得るための測定機は上記の他に任意の機器を用いることができる。もちろん、サンプルは２次元に限定されるものではなく、関数で表現できるｎ次元（ｎ≧２）形状を対象とすることができる。
【００１９】
入力装置１０は、キーボードやマウスなどで構成され、ユーザは入力データ群を直線と円で近似するために必要なパラメータを設定することができる。パラメータとしては、処理対象のデータ群を直線で近似する場合の線の許容誤差値、円で近似する場合の円の許容誤差値、近似の誤差を評価するための許容誤差δその他がある。
【００２０】
表示装置１２は、ＣＲＴや液晶で構成され、入力データ群を円及び直線で近似することで解析した結果を表示する。
【００２１】
出力装置１４は、プリンタやプロッタで構成され、表示装置１２に表示された解析結果を出力する。
【００２２】
コンピュータ１６は、入力端子１からのデータ群を入力するとともに表示装置１２や出力装置１４に解析データを出力するＩ／Ｆ、ＣＰＵ、解析結果や解析プログラムを記憶するメモリで構成される。ＣＰＵは、メモリに記憶された解析プログラムを読み込んで順次実行することにより、入力データ群を円と直線で近似し、得られた結果をＩ／Ｆを介して出力する。
【００２３】
以下、ＣＰＵで実行される入力データの解析処理について詳細に説明する。
【００２４】
図２には、ＣＰＵの全体処理フローチャートが示されている。まず、測定データを入力する（Ｓ１０１）。次に、ユーザが入力装置１０からパラメータを入力する（Ｓ１０２）。パラメータには、入力データに応じて常に変更する必要がある主パラメータと、通常はデフォルト値でよいがより詳細な解析を行いたい場合に変更する副パラメータがある。主パラメータは、上述した許容誤差値δ、線の許容誤差値δＬＩＮ、円の許容誤差値δＣＩＲであり、副パラメータは初期あてはめ点数や探索回数、交点処理の有無、最大離れ距離である。初期あてはめ点数とは、入力データ群から最初に抽出して処理対象とするデータ数であり、装置側で自動的に設定する他、ユーザが手動で設定（例えば５個）することができる。探索回数とは、要素の範囲を順次拡大して同一要素であるか否かの計算を行う回数の上限値であり、交点処理とは、全要素の計算終了後に各要素の交点計算を行って要素同士を接続する処理をいい、最大離れ距離とは、交点処理時に交点の有無を確認する最大距離をいう。
【００２５】
パラメータを入力した後、これらのパラメータを用いて入力データ群を円及び直線で近似する自動近似を実行し（Ｓ１０３）、得られた結果要素を表示装置１２や出力装置１４に出力する（Ｓ１０４）。なお、結果要素とは、具体的には得られた要素情報（円か直線か）及びその要素数である。
【００２６】
図３には、図２における円・直線の自動近似実行処理（Ｓ１０３）の詳細フローチャートが示されている。まず、ＣＰＵは入力されたパラメータ（主パラメータ）のチェックを行う（Ｓ２０１）。例えば、線の許容誤差値δＬＩＮや円の許容誤差値δＣＩＲが正であるか否かを判定する、許容誤差値δが正であるか否かを判定するなどである。入力パラメータに異常がないと判定された場合には、次に入力データ群の全要素の計算を実行する（Ｓ２０２）。そして、全要素について円または直線で近似した後、交点処理を実行するか否かを判定する（Ｓ２０３）。ユーザが交点処理の実行を希望する場合には、所定の交点処理を行う（Ｓ２０４）。交点処理とは、異なる幾何要素（円要素と直線要素、あるいは曲率の異なる円要素同士）が隣接する場合に各幾何要素の端点同士を接続するための処理である。例えば要素１、２が隣接して存在する場合、要素１を延長した線と要素２を延長した線の交点を求め、要素１、２の端点をこの交点で置き換える、あるいは交点までの距離が所定値以上大きい場合には要素の端点同士を接続線で接続する。交点処理により要素の端点同士を接続することで、サンプルのより望ましい解析結果を得ることができる。
【００２７】
図４には、図３における全要素の計算実行処理（Ｓ２０２）の詳細フローチャートが示されている。まず、ＣＰＵはあてはめ点数が自動に設定されているか、あるいは手動に設定されているかを判定する（Ｓ３０１）。あてはめ点数が自動に設定されている場合には、初期あてはめ点数を１だけインクリメントして（Ｓ３０２）、要素の計算を行う（Ｓ３０３）。なお、初期あてはめ値のデフォルト値は、例えば２とすることができ、この場合第１回目は初期あてはめ数を３として計算を行うことになる。また、要素の計算処理では、入力データ群から初期あてはめ数に相当するデータを抽出し、抽出データに対して円で近似するか直線で近似するかを判定する。
【００２８】
要素の計算処理を実行した後、ＮＧ要素が最小の計算結果をメモリに保持する（Ｓ３０４）。ここで、ＮＧ要素とは、円でも直線でも近似できない要素をいう。直線を決定する場合には最低２点、円を決定する場合には最低３点のデータが必要であることから、直線か円かを判別するためには最低３点のデータが必要となる。このため、１要素中のデータに許容誤差を超えてしまうデータが存在し、結果として１要素中の許容誤差以内のデータ数が３点に満たないもの（例えば、初期あてはめ点数のデータの先頭から順次、許容誤差内か否かのチェックを行い、最初の３点以前で許容誤差を超えた場合など）はＮＧ要素に判別される。なお、最小の計算結果を保持するとは、具体的にはまず第１回目の計算を行ってそのＮＧ要素及び結果要素をメモリに保持し、第２回目の計算を行ってそのＮＧ要素の数をメモリに保持されたＮＧ要素の数と比較し、第２回目のＮＧ要素の数の方が小さい場合にはメモリの保持内容を入れ替え、以下同様の入れ替えを行うことを意味する。
【００２９】
ＮＧ要素が最小の計算結果をメモリに保持した後、あてはめ点数が所定の制限値に達したか否かを判定し（Ｓ３０５）、制限値に達していない場合にはＳ３０２以降の処理を繰り返す。これにより、例えばあてはめ点数が３から所定の制限値（例えば１０）に至るなかで、ＮＧ要素の数が最小となるあてはめ点数及びそのときの結果要素が得られることになる。
【００３０】
一方、あてはめ点数が手動でユーザが設定する場合には、あてはめ点数を設定された個数に固定し（例えば、５個）、Ｓ３０３と同様の要素計算を行う（Ｓ３０６）。得られたＮＧ要素や結果要素はメモリに保持する。
【００３１】
図５には、図４における要素計算処理（Ｓ３０３、Ｓ３０６）の詳細フローチャートが示されている。まず、ＣＰＵは１要素分、つまりあてはめ点数分のデータを円あるいは直線で近似する（Ｓ４０１）。具体的には、円で近似できる場合には中心座標と半径のパラメータ、直線で近似できる場合には法線ベクトルと原点までの距離のパラメータを算出する。
【００３２】
近似パラメータ（以下では、適宜「あてはめパラメータ」と称する）が算出された後、このパラメータを結果要素のパラメータに変換する（Ｓ４０２）。結果要素のパラメータとは、具体的には要素の種類を表すパラメータと要素の始点、終点を表すパラメータである。変換して得られたパラメータはメモリに格納する（Ｓ４０３）。以上の処理を、残りの入力データに対して順次行い、入力データに関する全要素を計算する（Ｓ４０４）。
【００３３】
図６には、図５における１要素分の計算処理（Ｓ４０１）の詳細フローチャートが示されている。ＣＰＵは、まず初期データ範囲を計算する（Ｓ５０１）。これは、上述したように要素が円であるか直線であるかを判別するためには３点以上が必要であるため、入力データ数（ｘｉ、ｙｉ）が３以上あるか否かを確認するためにカウントする処理である。そして、入力データ数が３以上であることを確認すると（Ｓ５０２）、１要素分の計算に用いるデータを確保する（Ｓ５０３）。入力データ群が閉輪郭（閉曲線）である場合には、入力データの終点を含むデータの確保時には始点のデータも含めて１要素分のデータとする。入力データ群が開輪郭（開曲線）である場合には、始点から初めて終点で終わるようにデータを確保する。確保するデータ数は、要素計算の１回目は初期あてはめ点数と同一であるが、２回目以降は誤差チェック結果によって有効と判定された範囲のデータ数となる。なお、要素のデータ数が３に満たない場合には、ＮＧとする（Ｓ５０８）。
【００３４】
１要素分のデータを確保した後、要素の延長処理に移行する（Ｓ５０４）。この処理では、１要素分のデータに対して円と直線の要素パラメータを両方算出し、算出されたパラメータに対して誤差チェックを行う。そして、誤差が許容範囲を超えるまで要素分のデータを順次延長していき、円の最大データ数と直線の最大データ数とを比較する。そして、要素に対応するデータ数が多い方をそのデータの要素（円あるいは直線）として確定する。なお、この処理については後に詳述する。
【００３５】
要素を延長した後、上述したあてはめパラメータを計算する。あてはめパラメータは、線要素の場合には
【数１】
ｎｘｘ＋ｎｙｙ＋ｃ＝０      ・・・（１）
における法線ベクトル（ｎｘ、ｎｙ）と原点までの距離ｃであり、円要素の場合には
【数２】
｛（ｘ−ａ）２＋（ｙ−ｂ）２｝０．５−ｒ＝０      ・・・（２）
における中心（ａ、ｂ）と半径ｒである。このとき、残差二乗和も併せて算出する。
【００３６】
そして、あてはめパラメータを計算した後、パラメータチェック処理を行う（Ｓ５０５）。パラメータチェックについても後述する。以上の処理を１要素分のデータを含む入力データについて繰り返し実行し（Ｓ５０６）、得られた要素情報、すなわち要素のあてはめパラメータをメモリに保持する（Ｓ５０７）。
【００３７】
図７には、図６における要素の延長処理の詳細フローチャートが示されている。まず、１要素分のデータについて線のパラメータ計算を行う（Ｓ６０１）。すなわち、対象となるｍ個のデータに対して
【数３】
ａ０ｘ＋ａ１ｙ＋ａ２＝０      ・・・（３）
という評価関数を用いて直線のあてはめを行い、パラメータａ０、ａ１、ａ２を算出する。そして、得られた直線の結果が、ｍ個の測定データに対する許容誤差値δＬＩＮの範囲内であるか否かをチェックする（Ｓ６０２）。誤差範囲内であれば、ｍ個以上の測定データに対して順次（１ずつ増やして）同様の直線あてはめ、パラメータ計算、誤差チェックを行い、許容範囲を超えない最大データ数を算出する。
【００３８】
同様に、同一のｍ個のデータに対して円のパラメータ計算を行う（Ｓ６０３）。すなわち、対象となるｍ個のデータに対して
【数４】
（ｘ−ａ０）２＋（ｙ−ａ１）２−ａ２２＝０      ・・・（４）
という評価関数を用いて円のあてはめを行い、パラメータａ０、ａ１、ａ２を算出する。そして、得られた円の結果が、ｍ個の測定データに対する許容誤差値δＣＩＲの範囲内であるか否かをチェックする（Ｓ６０４）。許容範囲内であれば、ｍ個以上の測定データに対して順次（１ずつ増やして）同様の円あてはめ、パラメータ計算、誤差チェックを行い、許容範囲を超えない最大データ数を算出する。
【００３９】
そして、円と直線の計算が共に正常に終了した場合には、直線のデータ数と円のデータ数とを比較し（Ｓ６０６）、直線のデータ数の方が多い場合にはその要素を直線とみなして要素（線）とデータ位置を確定する（Ｓ６０７）。一方、円のデータ数の方が多い場合にはその要素を円とみなして要素（円）とデータ位置を確定する（Ｓ６０８）。なお、両者のデータ数が等しい場合には、いずれと確定しても良いが、本実施形態では円と確定している。
【００４０】
一方、円と直線の計算が正常に終了できなかった場合には、その要素を正常に終了した方の要素とみなして確定する（Ｓ６０９、Ｓ６１０）。
図８には、図６におけるＳ５０５のパラメータチェック処理の詳細フローチャートが示されている。まず、ＣＰＵはデータ数が減少したか否かを判定する（Ｓ７０１）。１要素分のデータでＮＧが生じるとデータ数が減少することになるからＹＥＳと判定され、次に第１回目の計算であるかを判定する（Ｓ７０２）。第１回目の計算である場合には、前回の結果が未だメモリに保持されておらず、この結果を利用することができないので、新たなデータを確保し（Ｓ７０３）、確保したデータ数が３より小さいか否かを確認する（Ｓ７０４）。データ数が３以上存在する場合にはパラメータ計算処理を実行してあてはめパラメータを得る（Ｓ７０８）。得られたあてはめパラメータをメモリに保持し（Ｓ７０６）、終了フラグをセットする（Ｓ７０７）。
【００４１】
一方、確保したデータ数が３に満たない場合には、その要素をＮＧと判定し（Ｓ７０５）、メモリに保持する（Ｓ７０６）。
【００４２】
また、Ｓ７０２にてＮＯ、すなわちデータ数が減少したのが２回目以降の計算であった場合には、終了フラグをセットして（Ｓ７０７）、メモリに保持されている前回の結果、すなわち許容誤差範囲内にあるデータ群のあてはめパラメータを取り出して１要素として確定する。そして、その要素の終点の次のデータ（許容範囲外と判定されたデータのこと）から新たな要素分のデータを新規に確保し、１要素分の計算を繰り返す。なお、データ数が減少しなかった場合には、その結果を保持しておき（Ｓ７０９）、次の計算に移行する。
【００４３】
このように、本実施形態では、１要素分のデータを確保してそのデータに対して直線と円をともにあてはめ、一定の誤差範囲内という条件のもとで近傍のデータがどこまで延長できるかを探索し、直線をあてはめた場合の延長結果の総データ数と、円をあてはめた場合の延長結果の総データ数とを比較し、総データ数の多い方の形状、すなわちより広い範囲であてはめることができた形状をその要素の形状と特定していく。従って、異なる要素が連続して存在する幾何図形でも、迅速かつ確実に直線または円で近似、すなわち解析することができる。
【００４４】
なお、本実施形態では、１要素内のデータ数が３個に満たない場合にはＮＧと判定しているが、このような判定を無くすことも可能である。この場合、２点のデータは全て直線で近似されることになるため、解析結果は滑らかなものではなくなる可能性がある。しかしながら、ＣＰＵが線要素の数を順次カウントし、所定数以上となった場合には解析の途中であっても設定されている許容誤差が適当ではないとして許容誤差を増大させて再度解析し直すことで、所望の、つまり滑らかな解析結果を得ることができる。
【００４５】
また、本実施形態では、入力データをそのまま解析しているが、入力データに対して前処理を施してある程度平滑化し、平滑化されたデータを解析の対象とすることも好適である。
【００４６】
このような前処理としては、入力データを所定の次数（例えば１次の項まで）の自由曲線で近似する処理を用いることができる。入力データを自由曲線で近似し、得られた自由曲線をさらに点列に分離し、分離した各点を新たな入力データとみなして上述した処理を実行すればよい。
【００４７】
また、本実施形態では、円と直線で元の形状を解析したが、必要に応じて円と直線以外の幾何要素、例えば楕円などを追加して解析することも可能である。この場合、１要素分のデータに対して直線あてはめ、円あてはめ、楕円あてはめを順次実行し、最もデータ数の多い形状をその要素の形状と確定すればよい。幾何要素として、平面や球、円錐などの３次元形状を用いた場合も同様である。
【００４８】
また、本実施形態において、直線の許容誤差値δＬＩＮと円の許容誤差値δＣＩＲは同一ではなく異なる値とすることができる。これにより、最終的に得られる結果の直線、円の要素数を調整することが可能となる。例えば、直線の許容誤差値δＬＩＮを円の許容誤差値δＣＩＲより緩和すると、最終結果には直線が多く含まれるようになる。
【００４９】
さらに、本願出願人は、先に特願平１０−１４１３３８号にて、１要素分のデータを確保してその要素が直線か円かを曲率半径に基づいて判定し、許容誤差範囲内に収まる全てのデータを近似した直線または円の一部とみなし、許容誤差範囲外のデータは他の要素であると判定して全ての入力データを直線または円で近似していく形状解析方法を提案したが、本実施形態の形状解析手法を先提案の方法と組み合わせ、両方法を適宜切り替えるように構成することも可能である。例えば、測定データ中に曲率半径の異なる、円らしきデータが複数存在する場合には、複数の幾何要素を順次あてはめて最も妥当な形状を採用する本実施形態の方法に切り替えて解析を行うことが有効であろう。
【００５０】
【発明の効果】
以上説明したように、本発明の形状解析装置及び方法によれば、円と直線の組み合わせなど、複数種類の幾何要素から構成される図形データを入力して元の図形を高精度に推定することができる。
【図面の簡単な説明】
【図１】  本発明の実施形態の構成ブロック図である。
【図２】  本発明の実施形態の全体処理フローチャートである。
【図３】  図２における自動近似処理の詳細フローチャートである。
【図４】  図３における全要素の計算実行処理の詳細フローチャートである。
【図５】  図４における要素の計算処理の詳細フローチャートである。
【図６】  図５における１要素分の計算処理の詳細フローチャートである。
【図７】  図６における要素の延長処理の詳細フローチャートである。
【図８】  図６におけるパラメータチェック処理の詳細フローチャートである。
【符号の説明】
１  入力端子、１０  入力装置、１２  表示装置、１４  出力装置、１６  コンピュータ。
【図１】
0003754575.tif 000002
【図２】
0003754575.tif 000003
【図３】
0003754575.tif 000004
【図４】
0003754575.tif 000005
【図５】
0003754575.tif 000006
【図６】
0003754575.tif 000007
【図７】
0003754575.tif 000008
【図８】
0003754575.tif 000009