JP2017033374A - データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラム - Google Patents
データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラム Download PDFInfo
- Publication number
- JP2017033374A JP2017033374A JP2015153939A JP2015153939A JP2017033374A JP 2017033374 A JP2017033374 A JP 2017033374A JP 2015153939 A JP2015153939 A JP 2015153939A JP 2015153939 A JP2015153939 A JP 2015153939A JP 2017033374 A JP2017033374 A JP 2017033374A
- Authority
- JP
- Japan
- Prior art keywords
- data
- solution
- error
- amount
- rotation amount
- 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.)
- Pending
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Image Analysis (AREA)
Abstract
【課題】ICP法を用いて照合対象データを基準データと照合する処理において、局所解に陥ることなく最適解を求めること。【解決手段】ICP法を用いて基準データに対する照合対象データの誤差が最小になるように演算して第1解(誤差値d1)を求め、第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算部と、第1演算部により第1解が求められた後に、第1並進量とは異なる第2並進量および第1回転量とは異なる第2回転量の少なくとも1方を用いて演算を継続し、第1解における誤差よりも小さい誤差となる第2解(誤差値d2)を求める第2演算部と、を備えることを特徴とするデータ照合装置を提供すること。【選択図】図4
Description
本発明は、データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラムに関する。
従来、射出成形などにより成形された製造品の形状が、設計仕様通りに製造されているか検証するために、製造品を3次元計測して得られた点群から成る計測データを、設計仕様の基準データと照合するデータ照合装置が知られていた。
データ照合装置では、照合対照となる計測データ(照合対象データ)の位置と姿勢を、基準データに合わせた上で、その差異を示す必要があった。そのために、照合対象データを構成する照合対象点群と、基準データを構成する基準点群との両者の位置と姿勢を合わせるICP(Iterative Closest Point)法が採用されていた。ICP法は、照合対象点群と基準点群との間で最近傍となる対応点のペアを探索する処理と、対応点間の距離の総和に相当する誤差関数を最小化(収束)するように一方の点群に対して剛体変換(並進と回転)を行う処理と、を繰り返し計算することにより、両点群の位置と姿勢を照合する方法である。
このようにして得られた剛体変換を一方の点群に適用し、両点群を比較することで、照合対象データと基準データとの差異が明確になり製造品の形状が設計仕様通りに製造されているか検証することができる。
データ照合装置では、照合対照となる計測データ(照合対象データ)の位置と姿勢を、基準データに合わせた上で、その差異を示す必要があった。そのために、照合対象データを構成する照合対象点群と、基準データを構成する基準点群との両者の位置と姿勢を合わせるICP(Iterative Closest Point)法が採用されていた。ICP法は、照合対象点群と基準点群との間で最近傍となる対応点のペアを探索する処理と、対応点間の距離の総和に相当する誤差関数を最小化(収束)するように一方の点群に対して剛体変換(並進と回転)を行う処理と、を繰り返し計算することにより、両点群の位置と姿勢を照合する方法である。
このようにして得られた剛体変換を一方の点群に適用し、両点群を比較することで、照合対象データと基準データとの差異が明確になり製造品の形状が設計仕様通りに製造されているか検証することができる。
また、製造品での検証はμm(マイクロメートル)オーダーの単位でその差異を検出する必要があるため、計測点群および基準点群の点の数は、数千から数万個といった大量な数量の点群を扱う必要がある。大量な数量の点群に対してICP法を適用した結果、誤差関数を最小化する処理において局所的な範囲における局所解に収束されてしまうことがあった。つまり、大域的には当該局所解よりも更に小さい最適解があったとしても、その最適解に収束させることができず、結果的には最適ではない剛体変換が推定されてしまう場合があった。特許文献1では、大量数の点群から点群を間引いてICP法を適用する方法により誤差関数を最適解に収束させ、その剛体変換を推定できるというものであった。
しかしながら、特許文献1に記載の照合方法を、上述したような製造品の検証に適用した場合には、相変わらず誤った剛体変換(並進と回転)が推定されてしまうことが多く生じていた。詳しくは、製造品の形状は上述したように、μmといったオーダーで検証する必要があるために、数個の点を間引きしてしまうことにより対象物体における形状の特徴を表す部分のデータが欠落してしまう場合があった。そのため、実際は異なる位置と姿勢に剛体変換(並進と回転)されてしまっていたとしても、誤差関数を最適解として算出してしまい、正しい剛体変換(並進と回転)が行われたと誤判定されてしまっていた。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることを目的とする。
[適用例1]本適用例に係るデータ照合装置は、基準点群から構成される基準データ、および照合対象点群から構成される照合対象データを記憶する記憶部と、ICP法を用いて前記基準データに対する前記照合対象データの誤差が最小になるように演算して第1解を求め、前記第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算部と、前記第1演算部が前記第1解を求めた後に、前記第1並進量とは異なる第2並進量および前記第1回転量とは異なる第2回転量の少なくとも一方を用いて演算を継続し、前記誤差が前記第1解よりも小さい第2解を求める第2演算部と、を備えることを特徴とする。
本適用例によれば、ICP法を用いた基準データと照合対象データとの照合処理において、第2演算部は、第1演算部により第1解が求められた後に、第1解における誤差よりも小さい誤差となる第2解を求めている。従って、第1解が局所解であった場合は、更に小さい誤差関数に収束する第2解を最適解として求めることができる。また、第1演算部および第2演算部は、記憶された基準データおよび照合対象データを用いて演算しているため、両データの一部を欠落させることなく演算することが可能である。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることができる。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることができる。
[適用例2]上記適用例に記載のデータ照合装置は、前記第1演算部および前記第2演算部の少なくとも一方は、誤差関数の極小値を用いて前記第1解または前記第2解の少なくとも一方を求めることを特徴とする。
本適用例によれば、誤差関数が最小となる第1解または第2解を求めることができる。
[適用例3]上記適用例に記載のデータ照合装置の前記記憶部は、前記誤差の大きさを示す閾値を記憶し、前記第1演算部および前記第2演算部の少なくとも一方は、演算した前記誤差が前記閾値よりも小さい場合に前記第1解または前記第2解を求めることを特徴とする。
本適用例によれば、誤差関数の極小値が見つからない場合は、閾値を用いて第1解または第2解を求めることができる。
[適用例4]上記適用例に記載のデータ照合装置の前記記憶部は、前記誤差を演算する回数である演算回数を記憶し、前記第1演算部および前記第2演算部の少なくとも一方は、前記誤差を演算する回数が前記演算回数を超えた場合に、前記第1解または前記第2解を求めることを特徴とする。
本適用例によれば、誤差関数の極小値が見つからない場合や誤差関数が閾値まで達しない場合は、演算回数を用いて第1解または第2解を求めることができる。
[適用例5]上記適用例に記載のデータ照合装置の前記記憶部は、前記第2並進量および前記第2回転量の少なくとも一方を記憶し、前記第2演算部は、記憶された前記第2並進量および前記第2回転量の少なくとも一方を用いて前記第2解を求めることを特徴とする。
本適用例によれば、第1解の近傍に第2解が存在しない場合では、記憶された第2並進量および第2回転量の少なくとも一方を用いて第2解を求めることにより、効率良く第2解を求めることができる。
[適用例6]上記適用例に記載のデータ照合装置における前記基準データおよび前記照合対象データは、形状を表す形状データであることを特徴とする。
本適用例によれば、3次元または2次元の形状を照合することができる。
[適用例7]本適用例に係る設計データ修正装置は、上記適用例に記載のデータ照合装置と、前記第2演算部で求めた前記第2解を用いて設計データにフィードバックするフィードバック処理部と、を備えていることを特徴とする。
本適用例による設計データ修正装置によれば、第2解による最適解に基づいた正確なフィードバック情報を設計データに適用することができる。
[適用例8]上記適用例に記載の設計データ修正装置の前記設計データは前記基準データに基づいて生成されたCADデータであることを特徴とする。
本適用例によれば、CADデータにフィードバックすることができる。
[適用例9]本適用例に係る形状測定装置は、上記適用例に記載のデータ照合装置と、形状を撮像する撮像部と、を備えていることを特徴とする。
本適用例によれば、撮像した形状情報に基づいて、形状を照合することができる。
[適用例10]本適用例に記載のデータ照合方法は、基準点群から構成される基準データ、および照合対象点群から構成される照合対象データを記憶する記憶工程と、ICP法を用いて前記基準データに対する前記照合対象データの誤差が最小になるように演算して第1解を求め、前記第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算工程と、前記第1演算工程により前記第1解が求められた後に、前記第1並進量とは異なる第2並進量および前記第1回転量とは異なる第2回転量を用いて演算を継続し、前記誤差が前記第1解よりも小さい第2解を求める第2演算工程と、を含むことを特徴とする。
本適用例によれば、ICP法を用いた基準データと照合対象データとの照合処理において、第2演算工程は、第1演算工程により第1解が求められた後に、第1解における誤差よりも小さい誤差となる第2解を求めている。従って、第1解が局所解であった場合は、更に小さい誤差関数に収束する第2解を最適解として求めることができる。また、第1演算工程および第2演算工程は、記憶された基準データおよび照合対象データを用いて演算しているため、両データの一部を欠落させることなく演算することが可能である。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることができる。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることができる。
[適用例11]本適用例に記載のプログラムは、基準点群から構成される基準データ、および照合対象点群から構成される照合対象データを記憶する記憶工程と、ICP法を用いて前記基準データに対する前記照合対象データの誤差が最小になるように演算して第1解を求め、前記第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算工程と、前記第1演算工程により前記第1解が求められた後に、前記第1並進量とは異なる第2並進量および前記第1回転量とは異なる第2回転量を用いて演算を継続し、前記誤差が前記第1解よりも小さい第2解を求める第2演算工程と、を含むデータ照合方法をコンピューターにより実行させるプログラム。
本適用例によるプログラムは、コンピューターにより実行されることにより、ICP法を用いた基準データと照合対象データとの照合処理において、第2演算工程は、第1演算工程により第1解が求められた後に、第1解における誤差よりも小さい誤差となる第2解を求めている。従って、第1解が局所解であった場合は、更に小さい誤差関数に収束する第2解を最適解として求めることができる。また、第1演算工程および第2演算工程は、記憶された基準データおよび照合対象データを用いて演算しているため、両データの一部を欠落させることなく演算することが可能である。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることができる。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解が導出された剛体変換(並進および回転)を求めることができる。
以下、本発明の実施形態について説明する。なお、以下に説明する実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
(実施形態1)
(データ照合システム)
図1は、データ照合システムの概要を表す説明図である。
まず、実施形態1に係わるデータ照合装置1を備えるデータ照合システム3の概略構成について説明する。
(データ照合システム)
図1は、データ照合システムの概要を表す説明図である。
まず、実施形態1に係わるデータ照合装置1を備えるデータ照合システム3の概略構成について説明する。
データ照合システム3は、金型射出成形により成形部品Fなどを大量生産する工場などに設置されるシステムであり、生産された成形部品Fの外観自動検査を行う。図1に示すように検査ライン91では、成形された成形部品Fが、搬入口91Aから搬出口91Bの方向に、搬送ベルトに載せられて搬送されている。図1に示す例では、これらの成形部品Fの検査面(上面と側面)における「そり」、「ひけ」、「ボイド」、「フローマーク」、「うねり」といった外観不良の欠点を検査している。外観不良の欠点には、軽微な欠点、中程度の欠点、重大欠点などがあり、データ照合システム3では、これらの欠点の程度や数量を計測して大量生産工程の品質情報を収集している。また、重大欠点は、外観の不良のみならず、機能的な不良を招く恐れがあるため、データ照合システム3では、重大欠点が発覚した時点で検査ライン91を停止して、アラート等によりその旨を報知する役割も有している。重大欠点には、例えば、平坦面のうねりの程度により、後工程において他部品との嵌合や密着が不十分になるような機能的な不良を招く欠点が含まれている。
データ照合システム3は、データ照合装置1、3D計測器7、およびCAD8などから構成されている。それぞれの装置は、ネットワーク2によって各種データ送受信可能に接続されている。
3D計測器7は、撮像部77、制御部73を有し、制御部73の制御により撮像部77から計測データ71を取得する。撮像部77は、2台のCCD77AおよびCCD77B(Charge Coupled Device)から構成され、2方面からステレオ方式で撮像エリア90に搬送された成形部品Fを撮像し、画像情報および距離情報を含む形状データを計測する。計測した形状データは、計測データ71として3D計測器7の記憶部(図示は省略)に記憶される。計測データ71には、成形部品Fの上端面と側端面においてμmのオーダーで測定された3次元の座標値(X,Y,Z)が格納されている。
尚、撮像部77は、上述した画像情報を撮像する方式に限らず、3Dで形状を計測することが可能な方式であればよく、例えば、公知の光切断方式、パターン投影方式、CT(Computed Tomography)方式によって3D形状を測定し、計測データ71を出力する構成であっても良い。
3D計測器7は、撮像部77、制御部73を有し、制御部73の制御により撮像部77から計測データ71を取得する。撮像部77は、2台のCCD77AおよびCCD77B(Charge Coupled Device)から構成され、2方面からステレオ方式で撮像エリア90に搬送された成形部品Fを撮像し、画像情報および距離情報を含む形状データを計測する。計測した形状データは、計測データ71として3D計測器7の記憶部(図示は省略)に記憶される。計測データ71には、成形部品Fの上端面と側端面においてμmのオーダーで測定された3次元の座標値(X,Y,Z)が格納されている。
尚、撮像部77は、上述した画像情報を撮像する方式に限らず、3Dで形状を計測することが可能な方式であればよく、例えば、公知の光切断方式、パターン投影方式、CT(Computed Tomography)方式によって3D形状を測定し、計測データ71を出力する構成であっても良い。
CAD8は、制御部85、CAD基準データ81、およびCAD設計データ83を備えたCAD(Computer Assisted Drafting)装置である。CAD8では、制御部85の制御により、成形部品F、成形部品Fの射出成形に用いられる金型M、などの設計や製図が行われる。CAD8の記憶部(図示は省略)には、成形部品Fの基準寸法情報を含む形状データであるCAD基準データ81、および金型Mの設計寸法を表すCAD設計データ83が管理されている。CAD設計データ83は、成形部品Fの金型Mを設計する際に利用される。尚、制御部85は、フィードバック処理部に相当する。また、CAD設計データ83は設計データに相当する。
データ照合装置1は、制御部10、記憶部30、表示部50、および操作部51などを有した一般的なPC(Personal Computer)であり、制御部10の制御により各種機能が実現される。具体的には、データ照合装置1では、CAD8からCAD基準データ81を受信し、3D計測器7から撮像エリア90を通過した成形部品Fの計測データ71を受信し、CAD基準データ81と計測データ71との差異箇所や差異分量の情報を表示部50に出力する。差異の箇所や差異分量の大小によって、対象とする成型部品Fを良品とするか不良品とするか判定する。また、データ照合装置1では、良不良品の判定に限らず収集した成形部品Fの差異箇所や差異分量等の情報を記憶部30に蓄積し、生産される成形部品Fの製造品質の状況などが把握可能な品質統計データなども管理する。
尚、データ照合装置1およびネットワーク2により接続された3D計測器7は、形状測定装置に相当する。また、尚、データ照合装置1およびネットワーク2により接続されたCAD8は、設計データ修正装置に相当する。
尚、データ照合装置1およびネットワーク2により接続された3D計測器7は、形状測定装置に相当する。また、尚、データ照合装置1およびネットワーク2により接続されたCAD8は、設計データ修正装置に相当する。
(データ照合装置)
図2は、データ照合装置の概要を示すブロック図である。
データ照合装置1は、制御部10、記憶部30、表示部50、操作部51、通信部53、時計部55などから構成されている。
制御部10は、CPU(Central Processing Unit)等のプロセッサーを有して構成され、記憶部30、表示部50を含む各部を統括的に制御する。制御部10は、基準データ取得部11、照合対象データ取得部13、並進回転量算出部15、誤差算出部17、収束判定部19、および照合制御部21などの機能部を有している。ただし、これらの機能部はあくまでも一例であり必ずしも全ての機能部を必須要件としなくても良い。また、これら以外の機能部を有していても良い。
図2は、データ照合装置の概要を示すブロック図である。
データ照合装置1は、制御部10、記憶部30、表示部50、操作部51、通信部53、時計部55などから構成されている。
制御部10は、CPU(Central Processing Unit)等のプロセッサーを有して構成され、記憶部30、表示部50を含む各部を統括的に制御する。制御部10は、基準データ取得部11、照合対象データ取得部13、並進回転量算出部15、誤差算出部17、収束判定部19、および照合制御部21などの機能部を有している。ただし、これらの機能部はあくまでも一例であり必ずしも全ての機能部を必須要件としなくても良い。また、これら以外の機能部を有していても良い。
基準データ取得部11は、CAD基準データ81を入力して、データ変換を行い、基準データ31を出力する。詳しくは、基準データ取得部11では、CAD8などに固有のCADエンジンに依存する座標系およびデータ書式となっているCAD基準データ81を、データ照合装置1の内部処理において用いられる3次元座標系のデータ形式である基準データ31に変換する。
基準データ31のデータ形式は、3次元座標系を表すデータ形式であり、基準データ31と照合対象データ33とを効率良く比較および照合するために、両者の原点と3次元座標の基本単位を合わせる。従って、基準データ取得部11では、データ書式変換処理に加えて、原点に対応する位置へ移動する変換と、両者間の大きさを合わせるための拡大縮小変換処理も行う。変換した基準データ31を記憶部30に記憶する。
基準データ31のデータ形式は、3次元座標系を表すデータ形式であり、基準データ31と照合対象データ33とを効率良く比較および照合するために、両者の原点と3次元座標の基本単位を合わせる。従って、基準データ取得部11では、データ書式変換処理に加えて、原点に対応する位置へ移動する変換と、両者間の大きさを合わせるための拡大縮小変換処理も行う。変換した基準データ31を記憶部30に記憶する。
尚、基準データ31は、照合対象データ33と比較するために3次元座標上の点群であることが好適であるが、点群に限らず、ベクトルデータ、頂点とそれらを結ぶ直線や曲線を表す数式、直線や曲線から延在する平面を表す数式であっても良く、また、それらを組み合わせたものであっても良い。点群でない場合であっても、ラスタライズ処理などにより点群に変換することができる。尚、基準データ31を構成する点群、または変換された点群は、基準点群に相当する。
照合対象データ取得部13では、計測データ71を入力して、データ変換を行い、照合対象データ33を出力する。照合対象データ取得部13では、まず、計測データ71に含まれているノイズデータを除去する。計測データ71を構成する画像情報や距離情報には、ノイズデータが混在されている。形状の特徴点などの情報を除去しないように公知の方法を適用し、ノイズデータを除去する。その後、基準データ31と同一の3次元座標系の原点と基本単位へ各点の座標を変換する。変換された点群は、照合対象データ33として記憶部30へ記憶される。尚、照合対象データ33を構成する点群が照合対象点群に相当する。
並進回転量算出部15は、ICP法を用いて剛体変換量(並進量と回転量)を算出する。詳しくは、基準データ31および照合対象データ33を入力として、両者の点群の対応関係を示す対応データ(図示は省略)を探索する。対応データは、照合対象データ33の全ての点に対応する基準データ31の各点のペアを示すデータであり、照合対象データ33の点群の各点から基準データ31上の最近傍点が選択されたペアが設定される。
次に、対応データにより示される点のペアを用いて、照合対象データ33から基準データ31への並進量Tと回転量Rを算出する。このようにして算出された並進量Tと回転量Rが、並進回転量算出部15の出力となる。
尚、並進量Tと回転量Rはいずれか一方のみが、算出されても良い。例えば、基準データ31と照合対象データ33との間で、並進量Tまたは回転量Rのいずれか一方を予め一致させておくことにより、一致させた方はあらためて算出する必要がなくなる。また、以降、並進量Tと回転量Rの両方を算出する処理やそれらを参照する処理の説明があった場合では、並進量Tと回転量Rの両方を適用することを必須とせず、どちらか一方でも対応可能である。
尚、並進量Tと回転量Rはいずれか一方のみが、算出されても良い。例えば、基準データ31と照合対象データ33との間で、並進量Tまたは回転量Rのいずれか一方を予め一致させておくことにより、一致させた方はあらためて算出する必要がなくなる。また、以降、並進量Tと回転量Rの両方を算出する処理やそれらを参照する処理の説明があった場合では、並進量Tと回転量Rの両方を適用することを必須とせず、どちらか一方でも対応可能である。
誤差算出部17は、並進回転量算出部15により算出された並進量Tと回転量Rとを照合対象データ33側に適用し、剛体変換(並進および回転)された照合対象データ33と基準データ31との(点群間の)距離を算出し、誤差dとして出力する。算出された誤差dが小さい(0に近い)程、基準データ31と照合対象データ33とが対応データが示す点のペア同士で同一箇所のデータである可能性が高いと推定することができる。
対応データが示す照合対象データ33側の点群を点群Aとして、対応データが示す基準データ31側の点群を点群Bとする。また、点群Aと点群Bとの距離を算出する関数をFuncとすると、誤差dを次の式(1)のように表すことができる。
d=Func(B−A・(T,R)) ・・・ 式(1)
誤差dは、点群Bと、点群Aに並進量Tおよび回転量Rを適用した点群(A・(T,R))と、が関数Funcによって算出された距離であることを示している。つまり、誤差dの値が0に限りなく近ければ、点群Bは、並進量Tおよび回転量Rによって剛体移動された点群Aと照合できている可能性が高いことになる。
対応データが示す照合対象データ33側の点群を点群Aとして、対応データが示す基準データ31側の点群を点群Bとする。また、点群Aと点群Bとの距離を算出する関数をFuncとすると、誤差dを次の式(1)のように表すことができる。
d=Func(B−A・(T,R)) ・・・ 式(1)
誤差dは、点群Bと、点群Aに並進量Tおよび回転量Rを適用した点群(A・(T,R))と、が関数Funcによって算出された距離であることを示している。つまり、誤差dの値が0に限りなく近ければ、点群Bは、並進量Tおよび回転量Rによって剛体移動された点群Aと照合できている可能性が高いことになる。
収束判定部19は、誤差算出部17により算出された誤差dを検証し、誤差dが最小値に収束されているか否か判定する。収束判定部19には、収束条件が入力として与えられる。収束条件には、「極小値」、「閾値設定」、「回数設定」を選択することができる。
「極小値」は、誤算dの変化が減少傾向から増加傾向に変化した変化点の出現を収束とする条件である。具体的には式(1)により、並進量Tおよび回転量Rを変化させ、変動して算出される誤差dの微分係数または直近差分を算出して、負値から正値に変化した時点で、収束したと判定する。
「閾値設定」は、誤差dが所定の閾値THよりも小さくなった場合に収束とする条件である。具体的には、閾値THは、予め記憶部30の収束条件データ35に記憶された算術式を用いる。例えば、収束条件データ35には、次のような算術式が記述されている。
IF LM=NULL THEN 10μm ELSE TH=LM×0.5 ・・・ 式(2)
式(2)では、極小値LMが既に存在していた場合は、閾値THに極小値LMに0.5を乗じた値を設定し、そうでない場合(LM=NULL)は閾値THに10μmを設定する算術式である。
閾値THの算出に用いられる固定値(上述の0.5および10μmなど)および算術式は、検査対象となる成形部品Fなどを先行試作によって計測し、計測した計測データ71に基づいて決定される。成形部品Fなどの大量生産中においても、蓄積された計測データ71のデータを統計的に分析して、収束条件として適切な閾値THを算出する算術式が決定され更新される。
尚、式(2)の例に示すように、極小値LMが存在する場合は、閾値THは極小値LMよりも小さい値(0に近い)が算出される算術式が定義されている。これは、同一の照合対象データ33における収束条件としては、誤差dがより小さい値(0に近い)になっていることが好ましく、既に極小値LMが求められていた場合では、極小値LMよりも大きい閾値THで収束したと判定しないようにするためである。
IF LM=NULL THEN 10μm ELSE TH=LM×0.5 ・・・ 式(2)
式(2)では、極小値LMが既に存在していた場合は、閾値THに極小値LMに0.5を乗じた値を設定し、そうでない場合(LM=NULL)は閾値THに10μmを設定する算術式である。
閾値THの算出に用いられる固定値(上述の0.5および10μmなど)および算術式は、検査対象となる成形部品Fなどを先行試作によって計測し、計測した計測データ71に基づいて決定される。成形部品Fなどの大量生産中においても、蓄積された計測データ71のデータを統計的に分析して、収束条件として適切な閾値THを算出する算術式が決定され更新される。
尚、式(2)の例に示すように、極小値LMが存在する場合は、閾値THは極小値LMよりも小さい値(0に近い)が算出される算術式が定義されている。これは、同一の照合対象データ33における収束条件としては、誤差dがより小さい値(0に近い)になっていることが好ましく、既に極小値LMが求められていた場合では、極小値LMよりも大きい閾値THで収束したと判定しないようにするためである。
「回数設定」は、反復して計算する回数を収束とする条件である。具体的には、算出される誤差dが減少傾向である間、式(1)に示した誤差dの繰り返し算出回数を加算し、所定の回数に達した場合は、収束したと判定する。所定の回数は、蓄積された計測データ71のデータを統計的に分析して、収束条件として適切な回数が決定される。尚、「回数設定」の条件は、「極小値」および「閾値設定」の条件と組合せて用いられる場合が多い。つまり、「極小値」および「閾値設定」のいずれの収束条件においても収束したと判定されなかった場合に、「回数設定」を条件として適用する構成である。
照合制御部21は、照合対象データ33と基準データ31とを照合して、詳細な差異データを算出する。具体的には、上述した基準データ取得部11、照合対象データ取得部13、並進回転量算出部15、誤差算出部17、および収束判定部19の各機能部を制御して、最終的な並進量Tと回転量Rとを決定し、照合対象データ33と基準データ31とを照合して、詳細な差異データを算出する。算出した差異データに基づいて、成形部品Fを計測した計測データ71と、CAD基準データ81との差異情報を表示部50などに出力する。
尚、照合制御部21において、1回目に誤差dが最小になるように並進量Tおよび回転量Rを算出する並進回転量算出部15、誤差算出部17、および収束判定部19は、第1演算部に相当する。また、2回目以降に1回目の誤差dよりも小さい誤差dを算出する並進回転量算出部15、誤差算出部17、および収束判定部19は第2演算部に相当する。第1演算部の処理(第1演算工程)および第2演算部の処理(第2演算工程)については、フローチャート図(図3)を用いて後述する。
尚、照合制御部21は、記憶部30に記憶されているプログラム40が制御部10により読み込まれることにより実行されて実現される。
尚、照合制御部21は、記憶部30に記憶されているプログラム40が制御部10により読み込まれることにより実行されて実現される。
記憶部30は、ROM(Read Only Memory)やフラッシュROM、RAM(Random Access Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の記憶装置によって構成され、制御部10により読み出されて実行されるプログラム40および基準データ31、照合対象データ33、収束条件データ35、並進量回転量データ37などのデータを記憶している。また、制御部10により実行される各処理の処理中データ、処理結果などを一時的に記憶するワークエリア(図示は省略)を有している。
基準データ31は、CAD基準データ81に対応するデータ照合装置1で管理される3次元座標系のデータである。基準データ31は、基準データ取得部11によりCAD基準データ81が変換されて出力されたデータである。
照合対象データ33は、計測データ71に対応するデータ照合装置1で管理される3次元座標系のデータである。照合対象データ33は、照合対象データ取得部13により計測データ71が変換されて出力されたデータである。
収束条件データ35は、収束判定部19による収束条件に用いられる所定の閾値TH、所定の回数、または、式(2)に例示したような算術式などが格納されているデータである。収束条件データ35は、予め記憶部30に格納されたデータである。また、データ照合処理の結果を反映した新たな情報に基づいて、これらのデータが更新されても良い。
並進量回転量データ37は、並進回転量算出部15により算出された並進量Tおよび回転量Rのデータ、誤差算出部17により算出された誤差dなどが格納されたデータである。
プログラム40は、制御部10により読み込まれ実行されることにより、照合制御部21の機能が実現される実行ステップが記録されたプログラムである。
照合対象データ33は、計測データ71に対応するデータ照合装置1で管理される3次元座標系のデータである。照合対象データ33は、照合対象データ取得部13により計測データ71が変換されて出力されたデータである。
収束条件データ35は、収束判定部19による収束条件に用いられる所定の閾値TH、所定の回数、または、式(2)に例示したような算術式などが格納されているデータである。収束条件データ35は、予め記憶部30に格納されたデータである。また、データ照合処理の結果を反映した新たな情報に基づいて、これらのデータが更新されても良い。
並進量回転量データ37は、並進回転量算出部15により算出された並進量Tおよび回転量Rのデータ、誤差算出部17により算出された誤差dなどが格納されたデータである。
プログラム40は、制御部10により読み込まれ実行されることにより、照合制御部21の機能が実現される実行ステップが記録されたプログラムである。
表示部50は、一般的なLCD(Liquid Crystal Display)等の表示パネルを有して構成され、制御部10から出力される表示信号に基づく各種表示を行う表示装置である。表示部50には、照合制御部21において生成された照合対象データ33と基準データ31との差異データが3次元画像表示で、また、差異を表す数値や注意、警告等の文言が表示される。
操作部51は、キーボード、マウス、ボタンスイッチやタッチパネル等を有して構成される入力装置であり、キー入力、マウス操作、ボタン押下、タッチパネル入力に対応する信号が制御部10へ出力される。
操作部51は、キーボード、マウス、ボタンスイッチやタッチパネル等を有して構成される入力装置であり、キー入力、マウス操作、ボタン押下、タッチパネル入力に対応する信号が制御部10へ出力される。
通信部53は、好適例としてLAN(Local Area Network)アダプターであり、3D計測器7およびCAD8の通信部(図示は省略)と共通の通信プロトコルを有し、ネットワーク2を介してデータ照合装置1と各種データを送受信可能に接続する。通信部53は、CAD8からCAD基準データ81を受信し、3D計測器7から計測データ71を受信し、制御部10へ受け渡す。
(データ照合処理のフロー)
図3は、データ照合処理の流れを示すフローチャート図である。以下のフローは、データ照合方法に相当し、記憶部30に格納されているプログラム40が制御部10に読み込まれて実行されることにより実現される処理である。また、本フローの実行により、照合制御部21の機能が実現される。また、照合制御部21からは、基準データ取得部11、照合対象データ取得部13、並進回転量算出部15、誤差算出部17、収束判定部19の各機能が呼び出されて実現されている。
図4は、誤差dの収束を説明するグラフ図である。図4に示すX軸方向は、並進量Tまたは回転量R、またはその両者の増加方向を示している。Y軸方向は、誤差dの大きさを示している。誤差dは、X軸側に近づくに連れ小さい数値になる。誤差dは、誤差値d1で極小値LMに達しており、誤差値d2で閾値THに達している。また、誤差値d1における並進量Tおよび回転量R、またはいずれか一方は、並進回転量TR1として示している。同様に、誤差値d2では並進回転量TR2であること示している。
図3は、データ照合処理の流れを示すフローチャート図である。以下のフローは、データ照合方法に相当し、記憶部30に格納されているプログラム40が制御部10に読み込まれて実行されることにより実現される処理である。また、本フローの実行により、照合制御部21の機能が実現される。また、照合制御部21からは、基準データ取得部11、照合対象データ取得部13、並進回転量算出部15、誤差算出部17、収束判定部19の各機能が呼び出されて実現されている。
図4は、誤差dの収束を説明するグラフ図である。図4に示すX軸方向は、並進量Tまたは回転量R、またはその両者の増加方向を示している。Y軸方向は、誤差dの大きさを示している。誤差dは、X軸側に近づくに連れ小さい数値になる。誤差dは、誤差値d1で極小値LMに達しており、誤差値d2で閾値THに達している。また、誤差値d1における並進量Tおよび回転量R、またはいずれか一方は、並進回転量TR1として示している。同様に、誤差値d2では並進回転量TR2であること示している。
ステップS110では、データ照合処理の準備が行われる。詳しくは、以降の各ステップで用いられる閾値TH、収束判定に用いられる収束条件等が記憶部30の収束条件データ35などから読み込まれ内部変数に格納される。
ステップS120では、基準データ31と照合対象データ33を取得する。詳しくは、CAD8からCAD基準データ81を受信し、基準データ31として記憶部30に記憶する。3D計測器7から計測データ71を受信し、照合対象データ33として記憶部30に記憶する。尚、本ステップは記憶工程に相当する。
ステップS130では、並進量Tと回転量Rの初期値を算出する。詳しくは、照合対象データ33の点に対して最近傍の基準データ31上の点を探索し、探索した点のペアを対応データとして記憶する。対応データは、照合対象データ33の全ての点に対して行われる。対応データ同士が位置合わせするように並進量Tと回転量Rを算出する。最初に算出された並進量Tと回転量Rが初期値となる。また、初期値として単位行列や予め決められ剛体変換量を並進量Tおよび回転量Rに設定しても良い。
ステップS140では、誤差dを算出する。詳しくは、基準データ31、照合対象データ33、対応データ、並進量T、回転量Rを式(1)に適用し誤差dを算出する。
ステップS150では、誤差dが極小値であるか否か判定する。詳しくは、ステップS160,S140,S150の順に繰り返し処理されて算出される誤差dの変化を分析する。収束判定部19に示した「極小値」による収束条件の処理が行われ、誤差dの変化が極小値LMに収束した場合は(ステップS150;Yes)、ステップS170へ進み、そうでない場合は(ステップS150;No)、ステップS160へ進む。図4に示す例では、誤差dが誤差値d1に達する直前までは、「No」(ステップS150;No)であり、誤差値d1に達した時点で「Yes」(ステップS150;Yes)の判定となる。
ステップS160では、並進量Tおよび回転量Rを変化させる。詳しくは、並進量Tに変化量ΔTを加え(更に並進させる)て、回転量Rに変化量ΔRを加え(更に回転させる)る。尚、並進量Tと回転量Rの変化は、いずれか一方を変化させても良い。
次に、並進量Tと回転量Rの変化量ΔTおよびΔRが適用された剛体変換後の照合対象データ33から基準データ31への最近傍点である対応データ(ペア)を改めて探索し、更新する。ここで、更新された対応データ同士が位置合わせするように並進量Tと回転量Rを算出する。
次に、並進量Tと回転量Rの変化量ΔTおよびΔRが適用された剛体変換後の照合対象データ33から基準データ31への最近傍点である対応データ(ペア)を改めて探索し、更新する。ここで、更新された対応データ同士が位置合わせするように並進量Tと回転量Rを算出する。
ステップS170では、並進量Tおよび回転量Rを変化させる。誤差値d1が極小値LMであると判定された(ステップS150;Yes)後で、ステップS160と同様の処理が適用され、更に並進量Tと回転量Rに変化量ΔTとΔRを加える方向に適用される。ここでステップS170における並進量Tまたは回転量Rは、ステップS150で誤差値d1を求めた際の並進量Tまたは回転量Rと異なっていればよい。
ステップS180では、誤差dを算出する。ステップS140と同様な処理が行われる。
ステップS190では、誤差dが閾値THよりも小さいか否か判定される。詳しくは、収束判定部19に示した「閾値設定」による収束条件の処理が行われ、閾値THには、極小値LMよりも小さい値(0に近い)が設定される。誤差dが閾値THよりも小さい場合は(ステップS190;Yes)、ステップS200へ進み、小さくない場合は(ステップS190;No)、ステップS170へ戻り、処理を繰り返す。図4に示す例では、誤差dが誤差値d1を超えて誤差値d2に達する直前までは「No」であり、誤差値d2に達した時点で「Yes」の判定となる。
ステップS200では、並進量Tおよび回転量Rを決定する。詳しくは、ステップS170で変化させてきた並進量Tおよび回転量Rを決定する。つまり、照合対象データ33に対して並進量Tおよび回転量Rを適用した場合に、基準データ31と最も照合する可能性が高い並進量Tおよび回転量Rが求められている。
ステップS210では、基準データ31と照合対象データ33の差異を提示する。詳しくは、照合対象データ33に対して並進量Tおよび回転量Rを適用した点群と、基準データ31の点群を比較した差異情報を生成し、表示部50へ出力する。
このようにして、誤差dは、極小値LMにおいて誤差値d1を有する並進回転量TR1に示す並進量Tおよび回転量Rが求められた後、ステップS170〜S190に示すように更に並進量Tおよび回転量Rを変化させ誤差値d1よりも小さい誤差値d2を検出している。誤差値d2における並進回転量TR2に示す並進量Tおよび回転量Rを求めることができる。このようにして、極小値LMとなる誤差値d1のような局所解が算出された後に、収束したと判定し演算を終了することなく、更に演算を繰り返すことにより、極小値LMよりも更に小さい誤差dとなる並進量Tおよび回転量Rを算出することができている。
尚、ステップS130,S160,S170は、並進回転量算出部15の機能により実現され、ステップS140,S180は、誤差算出部17の機能より実現される処理である。また、ステップS150,S190は、収束判定部19の機能より実現される処理である。収束判定部19の収束条件として「極小値」(ステップS150)および「閾値設定」(ステップS190)を選択した例を示しているが、それぞれに対して異なる収束条件を選択しても、収束条件を追加しても良い。例えば、ステップS150に対応するステップで「閾値設定」で、ステップS190に対応するステップで「収束条件」と「回数設定」のように変更することも可能である。
尚、ステップS130〜S160の処理は、第1演算工程(第1演算部による処理)に相当する。また、ステップS150で「Yes」の判定となった誤差dを算出した式(1)の解が、誤差dが最小になるように演算して得られた第1解に相当し、式(1)において算出された並進量Tおよび回転量Rは、それぞれ第1並進量および第1回転量に相当する。
尚、ステップS170〜S190の処理が、第2演算工程(第2演算部による処理)に相当する。また、ステップS190で「Yes」の判定となった誤差dを算出した式(1)の解が、第1解における誤差よりも小さい誤差となる第2解に相当し、式(1)において算出された並進量Tおよび回転量Rは、それぞれ第2並進量および第2回転量に相当する。
以上述べたように、本実施形態に係わるデータ照合装置1によれば、以下の効果を得ることができる。
照合制御部21では、ICP法を用いて基準データ31と照合対象データ33と照合する機能を備えている。具体的には、ICP法を用いた並進回転量算出部15による剛体変換量(並進量Tおよび回転量R)の算出と、誤差算出部17による並進量Tおよび回転量Rとを適用して位置合わせが行われた状態での照合対象データ33と基準データ31との誤差dが算出されている。収束判定部19では、収束条件を設定して誤差dが収束されているか判定している。収束判定部19では、2段階の判定処理が行われる。1段階目では、ステップS130〜S160により算出された誤差dの判定である。この1段階目の収束は、誤差dが極小値LMへ収束したことが判定されたものである。このような1段階目における収束では、局所的な収束(局所解)であることが多い。2段階目の判定が、ステップS170〜S190において行われる。2段階目では、収束判定部19により極小値LMより小さい閾値THを取得して、誤差dが閾値THよりも小さくなった場合に収束したとして判定している。このようにして2段階の判定処理が行われ、局所解よりも更に小さい誤差dに収束された剛体変換量(並進量Tと回転量R)を算出することができている。
また、並進回転量算出部15および誤差算出部17では、基準データ31および照合対象データ33を構成する点群を間引きすることなく全ての点を対象としてICP法を用いた剛体変換処理を実現している。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解における剛体変換(並進および回転)を求めることができている。
照合制御部21では、ICP法を用いて基準データ31と照合対象データ33と照合する機能を備えている。具体的には、ICP法を用いた並進回転量算出部15による剛体変換量(並進量Tおよび回転量R)の算出と、誤差算出部17による並進量Tおよび回転量Rとを適用して位置合わせが行われた状態での照合対象データ33と基準データ31との誤差dが算出されている。収束判定部19では、収束条件を設定して誤差dが収束されているか判定している。収束判定部19では、2段階の判定処理が行われる。1段階目では、ステップS130〜S160により算出された誤差dの判定である。この1段階目の収束は、誤差dが極小値LMへ収束したことが判定されたものである。このような1段階目における収束では、局所的な収束(局所解)であることが多い。2段階目の判定が、ステップS170〜S190において行われる。2段階目では、収束判定部19により極小値LMより小さい閾値THを取得して、誤差dが閾値THよりも小さくなった場合に収束したとして判定している。このようにして2段階の判定処理が行われ、局所解よりも更に小さい誤差dに収束された剛体変換量(並進量Tと回転量R)を算出することができている。
また、並進回転量算出部15および誤差算出部17では、基準データ31および照合対象データ33を構成する点群を間引きすることなく全ての点を対象としてICP法を用いた剛体変換処理を実現している。
従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい誤差関数に収束することができる最適解と、その最適解における剛体変換(並進および回転)を求めることができている。
(実施形態2)
図5は、実施形態2におけるデータ照合装置の概要を示すブロック図である。図6は、実施形態2におけるデータ照合処理の流れを示すフローチャート図である。図7は、実施形態2における誤差dの収束を説明するグラフ図である。
本実施形態に係わるデータ照合装置101について、これらの図を参照して説明する。尚、実施形態1と同一の構成部位については、同一の番号を使用し、重複する説明は省略する。
図5に示すようにデータ照合装置101は、制御部110および記憶部130を有して構成されている。制御部110は、照合制御部121、推定量取得部123、および推定量記憶部125を有して構成されている。
記憶部130は、プログラム140および推定量データ141を有して構成されている。
図7は、図4と同様なX軸方向およびY軸方向を有したグラフ図である。誤差dを表した曲線は、2箇所の極小値(極小値LM3および極小値LM5)を有しており、極小値LM3における誤差dおよび並進回転量は、誤差値d3、並進回転量TR3であり、極小値LM5では、誤差値d5、並進回転量TR5である。並進回転量TR3と並進回転量TR5との間には、並進回転量TR4が存在し誤差値d4である。また、閾値THは、Y軸方向において極小値LM3より小さく極小値LM5より大きい値である。X軸方向において、並進回転量TR3と並進回転量TR4との間隔には、並進回転量の推定量である推定量TRiが示されており、その間に記述されている誤差dの曲線部分(誤差値d3と誤差値d4の間の点線部分)は誤差dが算出されていない部分であることを表している。並進回転量TR4から並進回転量TR5の間隔には、並進回転量の変化量である変化量ΔTRが示されている。その間に記述されている誤差dの曲線部分(誤差値d4と誤差値d5の間の実線部分)は、誤差dが算出されている部分である。
図5は、実施形態2におけるデータ照合装置の概要を示すブロック図である。図6は、実施形態2におけるデータ照合処理の流れを示すフローチャート図である。図7は、実施形態2における誤差dの収束を説明するグラフ図である。
本実施形態に係わるデータ照合装置101について、これらの図を参照して説明する。尚、実施形態1と同一の構成部位については、同一の番号を使用し、重複する説明は省略する。
図5に示すようにデータ照合装置101は、制御部110および記憶部130を有して構成されている。制御部110は、照合制御部121、推定量取得部123、および推定量記憶部125を有して構成されている。
記憶部130は、プログラム140および推定量データ141を有して構成されている。
図7は、図4と同様なX軸方向およびY軸方向を有したグラフ図である。誤差dを表した曲線は、2箇所の極小値(極小値LM3および極小値LM5)を有しており、極小値LM3における誤差dおよび並進回転量は、誤差値d3、並進回転量TR3であり、極小値LM5では、誤差値d5、並進回転量TR5である。並進回転量TR3と並進回転量TR5との間には、並進回転量TR4が存在し誤差値d4である。また、閾値THは、Y軸方向において極小値LM3より小さく極小値LM5より大きい値である。X軸方向において、並進回転量TR3と並進回転量TR4との間隔には、並進回転量の推定量である推定量TRiが示されており、その間に記述されている誤差dの曲線部分(誤差値d3と誤差値d4の間の点線部分)は誤差dが算出されていない部分であることを表している。並進回転量TR4から並進回転量TR5の間隔には、並進回転量の変化量である変化量ΔTRが示されている。その間に記述されている誤差dの曲線部分(誤差値d4と誤差値d5の間の実線部分)は、誤差dが算出されている部分である。
実施形態1では、2段階の判定処理のうち1段階目の判定処理において誤差dが極小値LMとなる局所解を求めた後で、2段階目の判定処理を、並進回転量TR1(図4)の直後から開始させていた。本実施形態では図7に示すように2段階目の判定処理を推定量TRi分飛ばした位置から開始している点が異なる。
以降、図6に示すフローチャートを用いて説明する。以下のフローは、データ照合方法に相当し、記憶部130に格納されているプログラム140が制御部110に読み込まれて実行されることにより実現される処理である。また、本フローの実行により、照合制御部121の機能が実現される。また、照合制御部121からは、推定量取得部123および推定量記憶部125の機能が呼び出されて実現されている。
ステップS310では、データ照合処理の準備が行われる。ここでは、変数iに0がセットされる。
ステップS320では、基準データ31および照合対象データ33を取得し、記憶部130に記憶する。尚、本ステップは記憶工程に相当する。
ステップS330では、並進量Tと回転量Rの初期値を算出する。
ステップS340では、誤差dを算出する。
ステップS330では、並進量Tと回転量Rの初期値を算出する。
ステップS340では、誤差dを算出する。
ステップS350では、誤差dが極小値であるか否か判定する。誤差dが極小値LM3であると判定された場合は(ステップS350;Yes)、ステップS370へ進み、そうでない場合は(ステップS350;No)、ステップS360へ進む。
ステップS360では、並進量Tおよび回転量Rを変化させる。
ステップS360,S340,S350の順に繰り返し処理されて算出される誤差dが極小値LM3に達した場合に、ステップS370へ進む。
図7に示す例では、誤差dが誤差値d3に達する直前までは、「No」(ステップS350;No)であり、誤差値d3に達した時点で「Yes」(ステップS350;Yes)の判定となる。
ステップS360,S340,S350の順に繰り返し処理されて算出される誤差dが極小値LM3に達した場合に、ステップS370へ進む。
図7に示す例では、誤差dが誤差値d3に達する直前までは、「No」(ステップS350;No)であり、誤差値d3に達した時点で「Yes」(ステップS350;Yes)の判定となる。
ステップS370では、誤差dが閾値THよりも小さいか否か判定される。詳しくは、収束判定部19に示した「閾値設定」による収束条件の処理が行われ、閾値THには、極小値LM3よりも小さい値(0に近い)が設定される。算出された誤差dが閾値THよりも小さい場合は(ステップS370;Yes)、ステップS410へ進み、小さくない場合は(ステップS370;No)、ステップS380へ進む。
ステップS380では、変数iに1を加算する。
ステップS390では、並進量および回転量の推定量(Ti,Ri)を取得する。具体的には、変数iで指定されたi個目の推定量(Ti,Ri)を記憶部130に格納されている推定量データ141から読み込む。推定量Tiは、並進量の推定量、推定量Riは回転量の推定量である。尚、記憶部130に格納されている推定量データ141は、試作工程や事前の実験などにより、1組または複数組の推定量(Ti,Ri)をあらかじめ推定しているものである。
尚、本ステップでは、推定量取得部123の機能が実現される。
尚、本ステップでは、推定量取得部123の機能が実現される。
ステップS400では、並進量Tに推定量Tiを加え、回転量Rに推定量Riを加えて並進量Tおよび回転量Rを設定する。図7に示す例では、X軸方向において並進回転量TR3から推定量TRiが加算されて並進回転量TR4の位置に移動したことが示されている。つまり、並進回転量TR3〜TR4に示す間において、並進量T、回転量R、および誤差dの算出処理は行われていない。誤差値d3から誤差値d4までの誤差dが示す点線曲線部分は、仮に算出されたとした場合の誤差dの値を表している。
その後、ステップS400からステップS340に進み、推定量が加えられた並進量Tおよび回転量Rを用いて誤差dが算出される。図7に示す並進回転量TR4、誤差値d4がこの状態に相当する。
その後、ステップS340,S350,S360の処理が繰り返されることにより、並進回転量TR4から変化量ΔTR(ステップS360)が加えられて並進回転量TR5まで達した時点で極小値LM5となり、誤差値d5が算出されている。誤差値d5は、閾値THより小さくなっているため(ステップS370;Yes)、ステップS410へ進む。
その後、ステップS400からステップS340に進み、推定量が加えられた並進量Tおよび回転量Rを用いて誤差dが算出される。図7に示す並進回転量TR4、誤差値d4がこの状態に相当する。
その後、ステップS340,S350,S360の処理が繰り返されることにより、並進回転量TR4から変化量ΔTR(ステップS360)が加えられて並進回転量TR5まで達した時点で極小値LM5となり、誤差値d5が算出されている。誤差値d5は、閾値THより小さくなっているため(ステップS370;Yes)、ステップS410へ進む。
ステップS410では、推定量(Ti,Ri)を記憶する。詳しくは、並進回転量TR5における並進量Tおよび回転量Rをi個目の推定量(Ti,Ri)として記憶部130の推定量データ141に追加して格納する。推定量(Ti,Ri)を格納する時に、並進量Tから変化量ΔTを、回転量Rから変化量ΔRを減算して推定量(Ti,Ri)として格納しても良い。
推定量データ141には、収束した実績のある並進量Tおよび回転量Rが、推定量(Ti,Ri)として格納されている。また、推定量データ141には、1つの成形部品Fの計測データ71に限らず、複数の成形部品Fを計測した計測データ71に対応する照合対象データ33に対する推定量(Ti,Ri)が蓄積されている。
尚、本ステップでは、推定量記憶部125の機能が実現される。
推定量データ141には、収束した実績のある並進量Tおよび回転量Rが、推定量(Ti,Ri)として格納されている。また、推定量データ141には、1つの成形部品Fの計測データ71に限らず、複数の成形部品Fを計測した計測データ71に対応する照合対象データ33に対する推定量(Ti,Ri)が蓄積されている。
尚、本ステップでは、推定量記憶部125の機能が実現される。
ステップS420では、並進量Tおよび回転量Rを決定する。
ステップS430では、基準データ31と照合対象データ33の差異を提示する。
ステップS430では、基準データ31と照合対象データ33の差異を提示する。
尚、ステップS310から進んで、ステップS330〜S360の処理で、1回目にステップS350で「Yes」となるまでの処理は、第1演算工程(第1演算部による処理)に相当する。また、ステップS350で1回目の「Yes」の判定となった誤差dを算出した式(1)の解が、誤差dが最小になるように演算して得られた第1解に相当し、式(1)において算出された並進量Tおよび回転量Rは、それぞれ第1並進量および第1回転量に相当する。
尚、ステップS370〜S400の処理および2回目以降のステップS340からS360が、第2演算工程(第2演算部による処理)に相当する。また、ステップS370で「Yes」の判定となった誤差dを算出した式(1)の解が、第1解における誤差よりも小さい誤差となる第2解に相当し、式(1)において算出された並進量Tおよび回転量Rは、それぞれ第2並進量および第2回転量に相当する。本処理は、記憶された第2並進量および第2回転量の少なくとも一方を用いて第2解を求めること、に相当する。
以上述べたように、本実施形態に係わるデータ照合装置101によれば、実施形態1の効果に加え更に以下の効果を得ることができる。
照合制御部121では、1段階目の極小値LM3に誤差dが達した後、推定量TRi分飛ばして次の極小値の探索を試みる。推定量TRiは、推定量データ141に格納された複数の成形部品Fにおいて極小値に収束した実績に基づいて記憶されている情報である。推定量TRi分飛ばした後で剛体変換することによって、誤差dが極小値に収束する可能性が高い。従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい極小値を効率的に探索し、最適解とその最適解における剛体変換を速やかに求めることができる。
照合制御部121では、1段階目の極小値LM3に誤差dが達した後、推定量TRi分飛ばして次の極小値の探索を試みる。推定量TRiは、推定量データ141に格納された複数の成形部品Fにおいて極小値に収束した実績に基づいて記憶されている情報である。推定量TRi分飛ばした後で剛体変換することによって、誤差dが極小値に収束する可能性が高い。従って、ICP法を用いて照合対象データを基準データと照合する処理において、局所解よりも更に小さい極小値を効率的に探索し、最適解とその最適解における剛体変換を速やかに求めることができる。
(変形例1)
図1を用いて説明する。
上述の実施形態では、CAD8のCAD設計データ83は、成形部品Fを射出成形するために用いられる金型Mの設計データであるとしたが、そのような用途に限定されず、データ照合装置1,101において基準データ31と照合対象データ33とに変換することができればどのような設計データであってもよい。
例えば、設計データは3Dプリンターにより製造される積層造形物や3Dプロッターによる切削造形物の設計図であっても良い。このような場合の設計データは、基準データに対して造形部材の材質による影響や、切削工具の切削精度や公差などの影響が反映されたデータとなる。
3Dプリンターや3Dプロッターなどで製造された製造品であっても、3D計測器7により計測した計測データ71を出力することができる。データ照合装置1,101では、計測データ71とCAD基準データ81とを入力して、照合対象データ33および基準データ31に変換し、データを照合して精度の高い差異情報を出力する。CAD8では、差異情報に基づいて設計データにフィードバックすることができる。
図1を用いて説明する。
上述の実施形態では、CAD8のCAD設計データ83は、成形部品Fを射出成形するために用いられる金型Mの設計データであるとしたが、そのような用途に限定されず、データ照合装置1,101において基準データ31と照合対象データ33とに変換することができればどのような設計データであってもよい。
例えば、設計データは3Dプリンターにより製造される積層造形物や3Dプロッターによる切削造形物の設計図であっても良い。このような場合の設計データは、基準データに対して造形部材の材質による影響や、切削工具の切削精度や公差などの影響が反映されたデータとなる。
3Dプリンターや3Dプロッターなどで製造された製造品であっても、3D計測器7により計測した計測データ71を出力することができる。データ照合装置1,101では、計測データ71とCAD基準データ81とを入力して、照合対象データ33および基準データ31に変換し、データを照合して精度の高い差異情報を出力する。CAD8では、差異情報に基づいて設計データにフィードバックすることができる。
(変形例2)
上述の実施形態および変形例では、成形部品F、積層造形物、切削造形物などの3D形状の物体を対象にデータ照合するとしていたが、そのような対象物に限定されず、データ照合装置1,101において基準データ31と照合対象データ33とに変換することができればどのような対象であってもよい。
例えば、建物の壁、床、天井等の模様、気象衛星等から撮像した気象映像、Webやクラウド環境上に掲載されている画像やデザイン、風景の画像、生体情報や環境情報などを計測して2次元や3次元情報としてプロットした情報など、のように照合対象として様々な対象を適用することができる。
上述の実施形態および変形例では、成形部品F、積層造形物、切削造形物などの3D形状の物体を対象にデータ照合するとしていたが、そのような対象物に限定されず、データ照合装置1,101において基準データ31と照合対象データ33とに変換することができればどのような対象であってもよい。
例えば、建物の壁、床、天井等の模様、気象衛星等から撮像した気象映像、Webやクラウド環境上に掲載されている画像やデザイン、風景の画像、生体情報や環境情報などを計測して2次元や3次元情報としてプロットした情報など、のように照合対象として様々な対象を適用することができる。
(変形例3)
上述の実施形態および変形例において、照合制御部21では、照合対象データ33に対して剛体変換(並進および回転)を適用し基準データ31へ照合するとして説明したが、基準データ31に対して剛体変換(並進および回転)を適用し照合対象データ33へ照合するとしても良い。
上述の実施形態および変形例において、照合制御部21では、照合対象データ33に対して剛体変換(並進および回転)を適用し基準データ31へ照合するとして説明したが、基準データ31に対して剛体変換(並進および回転)を適用し照合対象データ33へ照合するとしても良い。
(変形例4)
図1に示した撮像部77を備える3D計測器7は、CCDを備えたタブレット端末、スマートフォン(携帯電話)、ノート型パソコン、HMD(ヘッドマウントディスプレイ)であっても良い。また、これらの機器は、データ照合装置1,101の機能が備えられていても良い。更に、これらの機器には、CAD8の機能が備えられていても良い。
図1に示した撮像部77を備える3D計測器7は、CCDを備えたタブレット端末、スマートフォン(携帯電話)、ノート型パソコン、HMD(ヘッドマウントディスプレイ)であっても良い。また、これらの機器は、データ照合装置1,101の機能が備えられていても良い。更に、これらの機器には、CAD8の機能が備えられていても良い。
1…データ照合装置、2…ネットワーク、3…データ照合システム、7…3D計測器、8…CAD、10…制御部、11…基準データ取得部、13…照合対象データ取得部、15…並進回転量算出部、17…誤差算出部、19…収束判定部、21…照合制御部、30…記憶部、31…基準データ、33…対象照合データ、33…照合対象データ、35…収束条件データ、37…並進量回転量データ、40…プログラム、50…表示部、51…操作部、53…通信部、55…時計部、71…計測データ、73…制御部、77…撮像部、77A,B…CCD、81…CAD基準データ、83…CAD設計データ、85…制御部、90…撮像エリア、91…検査ライン、91A…搬入口、91B…搬出口、101…データ照合装置、110…制御部、121…照合制御部、123…推定量取得部、125…推定量記憶部、130…記憶部、140…プログラム、141…推定量データ。
Claims (11)
- 基準点群から構成される基準データ、および照合対象点群から構成される照合対象データを記憶する記憶部と、
ICP法を用いて前記基準データに対する前記照合対象データの誤差が最小になるように演算して第1解を求め、前記第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算部と、
前記第1演算部が前記第1解を求めた後に、前記第1並進量とは異なる第2並進量および前記第1回転量とは異なる第2回転量の少なくとも一方を用いて演算を継続し、前記誤差が前記第1解よりも小さい第2解を求める第2演算部と、
を備えることを特徴とするデータ照合装置。 - 前記第1演算部および前記第2演算部の少なくとも一方は、誤差関数の極小値を用いて前記第1解または前記第2解の少なくとも一方を求めることを特徴とする請求項1に記載のデータ照合装置。
- 前記記憶部は、前記誤差の大きさを示す閾値を記憶し、
前記第1演算部および前記第2演算部の少なくとも一方は、演算した前記誤差が前記閾値よりも小さい場合に前記第1解または前記第2解を求めることを特徴とする請求項1または請求項2に記載のデータ照合装置。 - 前記記憶部は、前記誤差を演算する回数である演算回数を記憶し、
前記第1演算部および前記第2演算部の少なくとも一方は、前記誤差を演算する回数が前記演算回数を超えた場合に、前記第1解または前記第2解を求めることを特徴とする請求項1ないし請求項3のいずれか一項に記載のデータ照合装置。 - 前記記憶部は、前記第2並進量および前記第2回転量の少なくとも一方を記憶し、
前記第2演算部は、記憶された前記第2並進量および前記第2回転量の少なくとも一方を用いて前記第2解を求めることを特徴とする請求項1ないし請求項4のいずれか一項に記載のデータ照合装置。 - 前記基準データおよび前記照合対象データは、形状を表す形状データであることを特徴とする請求項1ないし請求項5のいずれか一項に記載のデータ照合装置。
- 請求項1ないし請求項6のいずれか一項に記載のデータ照合装置と、
前記第2演算部で求めた前記第2解を用いて、設計データにフィードバックするフィードバック処理部と、
を備えている設計データ修正装置。 - 前記設計データは前記基準データに基づいて生成されたCADデータであることを特徴とする請求項7に記載の設計データ修正装置。
- 請求項1ないし請求項6のいずれか一項に記載のデータ照合装置と、
形状を撮像する撮像部と、
を備えている形状測定装置。 - 基準点群から構成される基準データ、および照合対象点群から構成される照合対象データを記憶する記憶工程と、
ICP法を用いて前記基準データに対する前記照合対象データの誤差が最小になるように演算して第1解を求め、前記第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算工程と、
前記第1演算工程により前記第1解が求められた後に、前記第1並進量とは異なる第2並進量および前記第1回転量とは異なる第2回転量を用いて演算を継続し、前記誤差が前記第1解よりも小さい第2解を求める第2演算工程と、
を含むことを特徴とするデータ照合方法。 - 基準点群から構成される基準データ、および照合対象点群から構成される照合対象データを記憶する記憶工程と、
ICP法を用いて前記基準データに対する前記照合対象データの誤差が最小になるように演算して第1解を求め、前記第1解に対応する第1並進量および第1回転量の少なくとも一方を算出する第1演算工程と、
前記第1演算工程により前記第1解が求められた後に、前記第1並進量とは異なる第2並進量および前記第1回転量とは異なる第2回転量を用いて演算を継続し、前記誤差が前記第1解よりも小さい第2解を求める第2演算工程と、
を含むデータ照合方法をコンピューターにより実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015153939A JP2017033374A (ja) | 2015-08-04 | 2015-08-04 | データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015153939A JP2017033374A (ja) | 2015-08-04 | 2015-08-04 | データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017033374A true JP2017033374A (ja) | 2017-02-09 |
Family
ID=57986230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015153939A Pending JP2017033374A (ja) | 2015-08-04 | 2015-08-04 | データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017033374A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018181056A (ja) * | 2017-04-17 | 2018-11-15 | 富士通株式会社 | 差分検知プログラム、差分検知装置、差分検知方法 |
JP2019090675A (ja) * | 2017-11-14 | 2019-06-13 | 株式会社荏原製作所 | 検査装置、検査システム、プログラムを記憶した記憶媒体 |
JPWO2021240670A1 (ja) * | 2020-05-27 | 2021-12-02 | ||
WO2023127037A1 (ja) * | 2021-12-27 | 2023-07-06 | 日本電気株式会社 | 情報処理装置、情報処理方法、及びコンピュータ可読媒体 |
-
2015
- 2015-08-04 JP JP2015153939A patent/JP2017033374A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018181056A (ja) * | 2017-04-17 | 2018-11-15 | 富士通株式会社 | 差分検知プログラム、差分検知装置、差分検知方法 |
JP2019090675A (ja) * | 2017-11-14 | 2019-06-13 | 株式会社荏原製作所 | 検査装置、検査システム、プログラムを記憶した記憶媒体 |
JPWO2021240670A1 (ja) * | 2020-05-27 | 2021-12-02 | ||
WO2021240670A1 (ja) * | 2020-05-27 | 2021-12-02 | 日本電気株式会社 | 異常検出システム、異常検出装置、異常検出方法、及びコンピュータ可読媒体 |
JP7416233B2 (ja) | 2020-05-27 | 2024-01-17 | 日本電気株式会社 | 異常検出システム、異常検出装置、異常検出方法、及びプログラム |
WO2023127037A1 (ja) * | 2021-12-27 | 2023-07-06 | 日本電気株式会社 | 情報処理装置、情報処理方法、及びコンピュータ可読媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111127422B (zh) | 图像标注方法、装置、***及主机 | |
US20190346830A1 (en) | System and method for automated geometric shape deviation modeling for additive manufacturing | |
EP2416113B1 (en) | Position and orientation measurement apparatus and position and orientation measurement method | |
Radvar-Esfahlan et al. | Nonrigid geometric metrology using generalized numerical inspection fixtures | |
US20150276379A1 (en) | 3D object size estimation system for object wrapping and method thereof | |
JP6703812B2 (ja) | 3次元物体検査装置 | |
JP2017033374A (ja) | データ照合装置、設計データ修正装置、形状測定装置、データ照合方法、およびプログラム | |
US10101153B2 (en) | Method and device for detecting deviations of an object surface | |
US9449378B2 (en) | System and method for processing stereoscopic vehicle information | |
JP2011174880A (ja) | 位置姿勢推定方法及びその装置 | |
US11094082B2 (en) | Information processing apparatus, information processing method, robot system, and non-transitory computer-readable storage medium | |
US20180290300A1 (en) | Information processing apparatus, information processing method, storage medium, system, and article manufacturing method | |
JP2015090298A (ja) | 情報処理装置、情報処理方法 | |
JP2019153290A (ja) | ビジョンシステムにより画像特徴におけるエッジと法線を同時に考慮するためのシステム及び方法 | |
US10394980B2 (en) | Method for generating a simulation-model | |
CN113168729A (zh) | 一种基于局部参考坐标系的3d形状匹配方法及装置 | |
US20030108235A1 (en) | Method and system for quantifying the step profile characteristics semiconductor features using surface analysis data | |
US20170322537A1 (en) | Processing Apparatus with Vision-Based Measurement | |
Huang et al. | A novel algorithm: fitting a spatial arc to noisy point clouds with high accuracy and reproducibility | |
CN115578429B (zh) | 一种基于点云数据的模具在线精度检测方法 | |
CN114266776B (zh) | 一种应用复合裂纹位移场函数的数字图像相关方法 | |
Yang et al. | Gap volume prediction for aircraft wing assembly | |
Gollee et al. | Development and Extrinsic Calibration of a 3D Optical Multisensor Platform Using Laser Line Scanner and a Three-Axis Linear Motion Unit | |
US20170322547A1 (en) | Processing Apparatus | |
US10114910B2 (en) | Three-dimensional model generating device, method of determining structural member, and program |