説明

生成装置、検査装置、プログラムおよび生成方法

【課題】検査コストを小さくする。
【解決手段】検査対象物を撮像して撮像画像を得る撮像装置と、検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成装置と、撮像画像および生成装置の処理結果に基づいて、検査対象物を検査する検査部とを備え、生成装置は、検査対象物の3次元モデルを記憶する記憶部と、検査対象物の3次元モデル上における非検査箇所および検査対象物の3次元モデルの背景の少なくとも一方を撮像画像に投影して、マスクデータを生成する生成部と、を備える検査装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、生成装置、検査装置、プログラムおよび生成方法に関する。
【背景技術】
【0002】
検査対象物を撮像して得られた撮像画像から検査対象物の表面の欠陥の有無を検査する検査装置が知られている(特許文献1、2)。このような検査装置は、例えば、検査対象物の撮像画像と欠陥の無い理想的な画像(目標画像)と比較して、検査対象物の表面の欠陥の有無を検査する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平11−94763号公報
【特許文献2】特許第3960127号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、検査対象物のエッジ近傍の検査結果は、撮像装置と検査対象物との位置ずれおよび照射光の変化等の影響を受けやすく、安定しない。そこで、検査装置は、検査対象物における検査結果が安定しない箇所(例えばエッジ近傍)を撮像画像上においてマスクすることにより、安定した検査結果を得ていた。
【0005】
しかし、従来の検査装置では、ユーザが手作業で指定した情報に基づき、撮像画像上の検査結果が安定しない箇所をマスクしていた。従って、このような検査装置では、検査コストが大きくなってしまっていた。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明の第1の態様においては、検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成装置であって、前記検査対象物の3次元モデルを記憶する記憶部と、前記検査対象物の3次元モデル上における非検査箇所および前記検査対象物の3次元モデルの背景の少なくとも一方を前記撮像画像に投影して、前記マスクデータを生成する生成部と、を備える生成装置、並びに、これに関連する検査装置、プログラムおよび生成方法を提供する。
【0007】
また、本発明の第2の態様においては、検査対象物を撮像装置により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する生成装置であって、前記検査対象物の3次元モデルを記憶する記憶部と、前記検査対象物の3次元モデル上における検査の重みを前記撮像画像に投影して、前記重みデータを生成する生成部と、を備える生成装置、並びに、これに関連する検査装置、プログラムおよび生成方法を提供する。
【0008】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0009】
【図1】図1は、本実施形態に係る検査装置10の構成の一例を示す。
【図2】図2は、本実施形態に係る制御装置20の機能構成を示す。
【図3】図3は、本実施形態に係る検査装置10の制御装置20による検査処理フローの一例を示す。
【図4】図4は、本実施形態に係る検査対象物200の3次元モデルの一例を示す。
【図5】図5は、本実施形態に係る検査対象物200の3次元モデル上における非検査箇所の一例を示す。
【図6】図6は、本実施形態に係る特定部44により特定される非検査箇所の第1例を示す。
【図7】図7は、本実施形態に係る特定部44により特定される非検査箇所の第2例を示す。
【図8】図8は、本実施形態に係る検査装置10により撮像された撮像画像の一例を示す。
【図9】図9は、本実施形態に係る検査装置10の検査の処理手順の一例を示す。
【図10】図10は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。
【発明を実施するための形態】
【0010】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0011】
図1は、本実施形態に係る検査装置10の構成の一例を示す。検査装置10は、金属部品等の検査対象物200を撮像して、得られた撮像画像から検査対象物200の表面の欠陥の有無を低コストで検査する。
【0012】
検査装置10は、撮像装置12と、保持部14と、発光部16と、制御装置20とを備える。撮像装置12は、検査対象物200を撮像して撮像画像を得る。
【0013】
保持部14は、検査対象物200を固定して保持する。保持部14は、一例として、検査対象物200を載置するステージまたは検査対象物200をハンドリングするハンドリング装置等であってよい。さらに、保持部14は、検査対象物200と撮像装置12との相対位置を移動させる。
【0014】
発光部16は、検査対象物200に対して光を照射する。発光部16は、例えば、照明条件として発光方向又は発光角度などを変更することができる。また、発光部16は、例えば、照明条件として強度が正弦波状の分布となる光を照射してもよい。また、発光部16は、例えば、照明条件として光量を調整した光を照射してもよい。
【0015】
制御装置20は、撮像装置12、保持部14および発光部16を制御して、撮像装置12により撮像された検査対象物200の撮像画像から検査対象物200の表面の欠陥の有無を検査する。制御装置20は、一例として、検査対象物200を複数の方向から撮像して、検査対象物200の表面の欠陥の有無を検査する。また、制御装置20は、一例として、撮像装置12の視野よりも検査対象物200が大きい場合には、検査対象物200を複数の領域に分割して、分割した複数の領域をそれぞれ撮像して、検査対象物200の表面の欠陥の有無を検査する。
【0016】
このような制御装置20は、一例として、撮像装置12および保持部14を制御して、検査対象物200と撮像装置12との相対位置を指定した位置に移動させる。より具体的には、制御装置20は、検査対象物200に対する撮像装置12の撮像方向、および、検査対象物200から撮像装置12までの間の撮像距離を制御する。これにより、制御装置20は、検査対象物200の表面上における指定された範囲を、撮像装置12により撮像される撮像画像の視野内に移動させることができる。
【0017】
また、制御装置20は、撮像装置12および発光部16を制御して、撮像装置12による撮像条件を指定された値に設定する。より具体的には、制御装置20は、撮像装置12を制御して、撮像倍率、フォーカス、シャッタスピードおよび絞り等を、指定した値に設定する。これにより、制御装置20は、指定された撮像倍率および指定された画質で、検査対象物200の表面を撮像させることができる。
【0018】
また、制御装置20は、一例として、発光部16および撮像装置12を制御して、検査対象物200への照射光の方向、光量および色合い等を、指定した状態に設定する。これにより、制御装置20は、指定された光量および色合いで、検査対象物200の表面を撮像させることができる。
【0019】
図2は、本実施形態に係る制御装置20の機能構成を示す。制御装置20は、制御部32と、生成装置34と、検査部36と、格納部38とを有する。制御部32は、撮像装置12、保持部14および発光部16を制御して、撮像装置12により撮像された撮像画像を取得する。
【0020】
生成装置34は、検査対象物200を撮像装置12により撮像した撮像画像における検査対象外とすべき領域(検査対象外領域)を表すマスクデータを生成する。生成装置34は、一例として、撮像装置12により撮像された撮像画像上における、欠陥を検出することが困難である箇所(例えばエッジ、曲面および形状が複雑な箇所)を表すマスクデータを生成する。また、生成装置34は、一例として、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件の少なくとも一方が変化する毎に、マスクデータを生成する処理を実行する。なお、生成装置34は、上記の検査対象外領域を表すマスクデータに限らず、上記の検査対象外領域を含むマスクデータを生成するように構成してもよい。
【0021】
検査部36は、撮像画像および生成装置34の処理結果に基づいて、検査対象物200の欠陥の有無を検査する。検査部36は、一例として、検査対象物の撮像画像と欠陥の無い理想的な画像(目標画像)と比較して、検査対象物の表面の欠陥の有無を検査する。
【0022】
また、検査部36は、撮像画像の各領域のうち、生成装置34により生成されたマスクデータにより検査対象外とすることが示された領域(検査対象外領域)については、検査をしない。例えば、検査部36は、撮像画像のうちマスクデータにより検査対象外とすることが示された領域をマスクして、目標画像との比較を実行する。
【0023】
格納部38は、検査部36による検査対象物200の検査結果を格納する。また、格納部38は、欠陥を含むと判断された撮像画像をともに格納してもよい。
【0024】
つぎに、生成装置34内の機能構成について更に説明する。生成装置34は、記憶部42と、特定部44と、生成部46を含む。
【0025】
記憶部42は、検査対象物200の3次元モデルを記憶する。記憶部42は、検査対象物200の3次元モデルを検査に先立って予め記憶している。
【0026】
検査対象物200の3次元モデルは、検査対象物200の理想形状を表すデータである。検査対象物200の3次元モデルは、一例として、検査対象物200の設計情報に基づき生成される。また、検査対象物200の3次元モデルは、ユーザにより手動で生成されてもよい。また、検査対象物200の3次元モデルは、一例として、理想形状の検査対象物200を3次元測定した結果に基づき生成されてもよい。
【0027】
更に、記憶部42は、検査対象物200の3次元モデル上における非検査箇所の位置を表わす非検査箇所データを記憶する。検査対象物200の非検査箇所は、一例として、検査対象物200の表面上における撮像画像から画像処理により欠陥を検出することが困難である箇所(例えばエッジ、曲面および形状が複雑な箇所)である。なお、記憶部42は、上記の非検査箇所の位置を含む非検査箇所データを記憶してもよい。
【0028】
記憶部42は、一例として、検査対象物200の検査に先立ってユーザにより予め生成された非検査箇所データを外部から受け取って記憶する。記憶部42は、一例として、特定部44により生成された非検査箇所データを受け取って記憶してもよい。
【0029】
特定部44は、検査対象物200の3次元モデル上における非検査箇所を特定する。特定部44は、一例として、検査対象物200の3次元モデル上の欠陥を検出することが比較的困難である箇所(例えばエッジ、曲面および形状が複雑な箇所)を、非検査箇所として特定する。そして、特定部44は、特定した非検査箇所の3次元モデル上における位置を含む非検査箇所データを生成する。
【0030】
なお、特定部44は、一例として、検査対象物200と撮像装置12との相対位置または撮像装置12による撮像条件に基づいて、検査対象物200上における欠陥を検出することが比較的困難である箇所(例えば影部分および白部分)を特定してもよい。特定部44の処理例については更に後述する。
【0031】
生成部46は、検査対象物200の3次元モデル上における非検査箇所および検査対象物200の3次元モデルの背景の少なくとも一方を撮像画像に投影して、マスクデータを生成する。
【0032】
生成部46は、一例として、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件に基づいて、撮像画像に対応した検査対象物200の3次元モデルに対する視野を特定する。即ち、生成部46は、撮像画像の撮像時における検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件と同一条件または対応する条件により、検査対象物200の3次元モデルを仮想的に撮像した場合の視野を特定する。
【0033】
そして、生成部46は、このように特定した視野内における非検査箇所および背景の少なくとも一方の位置を算出して、算出した位置を含むマスクデータを生成する。このように生成されたマスクデータは、撮像画像上に表示される検査対象物200における非検査箇所および撮像画像上に表示される検査対象物200以外の部分(背景)の少なくとも一方の位置を含む。以上のように、生成装置34によれば、撮像画像の各領域のうち検査対象外とすることが示された領域を示すマスクデータを生成することができる。
【0034】
図3は、本実施形態に係る検査装置10の制御装置20による検査処理フローの一例を示す。制御装置20は、検査対象物200と撮像装置12との相対位置または撮像装置12による撮像条件を変更する毎に、それぞれの相対位置においてステップS13からステップS18の処理を実行する。
【0035】
まず、制御部32は、撮像装置12に検査対象物200を撮像させる(S13)。続いて、生成装置34は、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件を、制御部32から取得する(S14)。
【0036】
続いて、生成装置34は、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件に基づいて、撮像画像に対応した検査対象物200の3次元モデルに対する視野を特定する(S15)。
【0037】
例えば、生成装置34は、検査対象物200に対する撮像装置12の撮像方向、検査対象物200から撮像装置12までの距離および撮像倍率から、撮像画像に表示された検査対象物200に対応する、3次元モデルの範囲を特定する。これにより、生成部46は、撮像画像の撮像時における検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件と同一条件または対応する条件により、検査対象物200の3次元モデルを仮想的に撮像した場合の視野を特定することができる。
【0038】
続いて、生成装置34は、ステップS15で特定した視野内における非検査箇所および背景の位置を含むマスクデータを生成する(S16)。生成装置34は、一例として、ステップS15で特定した3次元モデルの範囲内の非検査箇所に対応する撮像画像上における位置、および、ステップS15で特定した3次元モデルの範囲外の背景に対応する撮像画像上における位置を算出する。そして、生成装置34は、算出した位置を含むマスクデータを生成する。
【0039】
続いて、検査部36は、撮像画像のうちマスクデータにより検査対象外とすることが示された領域をマスクして、撮像画像に含まれる検査対象物200の表面の欠陥の有無を検査する(S17)。検査部36は、一例として、撮像画像と目標画像とを、マスクされた領域を除いて比較することにより、検査対象物200の欠陥の有無を検査する。
【0040】
また、検査部36は、一例として、撮像画像における領域毎の色または明るさと、目標画像の領域毎の色または明るさとの、差または比に基づいて検査対象物200の欠陥の有無を検査してもよい。また、検査部36は、一例として、特許文献1に記載されている欠陥検出方法を用いて、撮像画像から検査対象物200の欠陥の有無を検査してもよい。また、検査部36は、一例として、撮像画像から検出した検査対象物200の表面の凹凸の位置、形状、大きさ、色、明るさ等に基づいて、検査対象物200の欠陥の有無を検査してもよい。
【0041】
続いて、検査部36は、検査結果を格納部38に記録する(S18)。また、検査部36は、欠陥を含むと判断された撮像画像をともに格納部38に記録してもよい。また、検査部36は、欠陥を含むと判断された撮像画像の撮像時における、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件をともに格納部38に記録してもよい。
【0042】
そして、制御装置20は、全ての条件についてステップS13からステップS18の処理を終了すると、当該フローを抜けて処理を終了する(S19)。
【0043】
以上のように、本実施形態に係る検査装置10によれば、撮像画像上における検査対象外とする領域を含むマスクデータを、生成装置34が検査対象物200の3次元モデルに基づき自動生成する。これにより、検査装置10によれば、検査対象物200が複雑な形状であったり、検査対象物200がカメラ視野よりも大きかったりすることにより、複雑または大量のマスクデータを生成しなければならない場合であっても、検査コストを小さくすることができる。また、検査装置10によれば、検査にかかるスループットを向上させることができる。
【0044】
図4は、本実施形態に係る検査対象物200の3次元モデルの一例を示す。検査対象物200の3次元モデルは、検査対象物200の外観形状を表すデータであり、例えば検査対象物200の立体形状の設計データ(例えばCADデータ)であってよい。検査対象物200の3次元モデルは、例えば、図4に示されるように、検査対象物200の表面位置を3次元座標により表わす形状データ300であってよい。
【0045】
図5は、本実施形態に係る検査対象物200の3次元モデル上における非検査箇所の一例を示す。非検査箇所データは、検査対象物200の表面における検査対象外とすべき領域を、検査対象物200の3次元モデル上において表わすデータであり、検査対象物200の立体形状の設計データ(例えばCADデータ)であってよい。非検査箇所データは、例えば、図5の斜線部分に示されるように、検査対象物200の検査対象外とすべき領域を3次元座標により表わすデータ310であってよい。
【0046】
図6は、本実施形態に係る特定部44により特定される非検査箇所の第1例を示す。特定部44は、一例として、検査対象物200の3次元モデルにおける表面曲率が基準値以上の箇所を、検査対象物200の3次元モデル上における非検査箇所として特定してもよい。
【0047】
特定部44は、外部から検査対象物200の3次元モデルが与えられた場合に、例えば図6の斜線部分に示されるような、検査対象物200の3次元モデルにおける表面曲率が基準値以上の曲面320を演算により特定する。これにより特定部44は、欠陥を検出することが困難な曲面320を非検査箇所として特定することができる。
【0048】
図7は、本実施形態に係る特定部44により特定される非検査箇所の第2例を示す。特定部44は、一例として、撮像画像を撮像した条件における撮像装置12の光軸と検査対象物200の表面の法線とのなす角が基準値より大きい箇所に基づき、検査対象物200の3次元モデル上における非検査箇所を特定してもよい。
【0049】
特定部44は、一例として、検査対象物200の検査時において、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件を取得する。続いて、特定部44は、取得した相対位置および撮像条件と同一の条件において、検査対象物200の3次元モデルを仮想的に撮像した場合における視野、および、撮像装置12の仮想的な光軸を特定する。
【0050】
続いて、特定部44は、検査対象物200の3次元モデルを仮想的に撮像した場合の視野内において、仮想的な光軸と、検査対象物200の3次元モデルの表面の法線との角度を算出する。そして、特定部44は、算出した角度が基準値より大きい箇所を、検査対象物200の3次元モデル上における非検査箇所として特定する。
【0051】
このような処理により、特定部44は、例えば、図7の斜線部分に示されるような、仮想的な光軸と比較的に平行に近い面を非検査箇所として特定することができる。これにより特定部44は、撮像装置12により鮮明に撮像することができない箇所を非検査箇所として特定することができる。
【0052】
また、特定部44は、一例として、検査対象物200に対する照射光の方向又は照射角度などの照明条件に基づき、検査対象物200の影となる箇所を検査対象物200の3次元モデル上における非検査箇所を特定してもよい。特定部44は、一例として、検査対象物200の検査時において、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件を取得する。続いて、特定部44は、取得した相対位置および撮像条件と同一の条件において、検査対象物200の3次元モデルを仮想的に撮像した場合における視野、および、仮想的な照射光の方向を特定する。
【0053】
続いて、特定部44は、検査対象物200の3次元モデルを仮想的に撮像した場合の視野内において、仮想的な照射光が照射されない箇所を検出する。そして、特定部44は、このように検出した箇所を検査対象物200の3次元モデル上における非検査箇所として特定する。これにより特定部44は、影となる箇所を非検査箇所として特定することができる。
【0054】
また、特定部44は、一例として、検査対象物200に対する照射光の方向に基づき、撮像装置12の光軸と検査対象物200からの反射光の方向とのなす角が予め定められた範囲内の箇所を、検査対象物200の3次元モデル上における非検査箇所を特定してもよい。特定部44は、一例として、検査対象物200の検査時において、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件を取得する。続いて、特定部44は、取得した相対位置および撮像条件と同一の条件において、検査対象物200の3次元モデルを仮想的に撮像した場合における視野、撮像装置12の仮想的な光軸、および、検査対象物200の表面からの仮想的な反射光の方向を特定する。
【0055】
続いて、特定部44は、検査対象物200の3次元モデルを仮想的に撮像した場合の視野内において、撮像装置12の仮想的な光軸と、検査対象物200の表面からの仮想的な反射光の方向との角度が予め定められた範囲内(例えば、0度から所定の角度までの範囲)の箇所を検出する。そして、特定部44は、このように検出した箇所を検査対象物200の3次元モデル上における非検査箇所として特定する。これにより特定部44は、画像が白くなる箇所を非検査箇所として特定することができる。
【0056】
図8は、本実施形態に係る検査装置10により撮像された撮像画像の一例を示す。検査装置10は、撮像装置12の視野よりも検査対象物200の形状が大きい場合、検査対象物200の表面全体を複数の領域に分割し、分割した領域毎に撮像画像を取得して検査を実行する。
【0057】
ここで、隣接する複数の領域を撮像して得られた複数の撮像画像に1つの欠陥がまたがって含まれる場合がある。このような場合、それぞれの撮像画像に含まれる欠陥が個別の欠陥として認識されて、精度良く欠陥の解析ができない可能性がある。
【0058】
そこで、検査装置10の制御装置20は、まず、1回目の検査後において、検査対象物200と撮像装置12との相対位置が互いに異なる条件で撮像された複数の撮像画像のそれぞれに欠陥を含むか否かを判断する。そして、制御装置20は、検査対象物200と撮像装置12との相対位置が互いに異なる条件で撮像された複数の撮像画像のそれぞれに欠陥を含む場合、2回目の検査を実行する。
【0059】
2回目の検査においては、制御装置20は、検査対象物200と撮像装置12との相対位置を移動させて、複数の撮像画像に含まれるそれぞれの欠陥を視野内に含めて撮像装置12に撮像画像を撮像させる。そして、検査装置10の検査部36は、このように撮像された撮像画像に対して欠陥の検出処理を更に実行する。これにより、検査装置10によれば、マスクデータを利用して検出した欠陥を精度良く解析させることができる。
【0060】
図9は、本実施形態に係る検査装置10の検査の処理手順の一例を示す。検査装置10は、撮像装置12の撮像倍率を段階的に変化させて検査処理を行ってもよい。
【0061】
まず、検査装置10は、撮像倍率を所定の倍率(第1倍率)に設定して、検査処理を実行する(S31)。具体的には、検査装置10の制御装置20は、撮像倍率を第1倍率に設定した撮像条件において、図3に示されたステップS12からステップS19の処理を実行する。
【0062】
続いて、検査装置10は、ステップS31の検査処理において欠陥が検出されたか否かを判断する(S32)。欠陥が検出されない場合(S32のNo)、検査装置10は、当該処理を終了する。
【0063】
ステップS31の検査処理において欠陥が検出された場合(S32のYes)、検査装置10は、撮像倍率を第1倍率より大きい第2倍率に設定して、欠陥が検出された位置に対して更に検査処理を実行する(S33)。
【0064】
具体的には、検査装置10の制御装置20は、第1倍率で撮像された撮像画像を取得した検査対象物200と撮像装置12との相対位置および撮像条件から、検査対象物200上における欠陥位置を特定する。続いて、制御装置20は、欠陥位置が撮像されるように検査対象物200と撮像装置12との相対位置を移動させ、且つ、撮像倍率を第2倍率に設定する。そして、制御装置20は、図3に示されたステップS13からステップS18の処理を実行する。
【0065】
以上の処理を実行することにより、検査装置10は、撮像倍率を段階的に変化させて欠陥を検出することができる。これにより、検査装置10によれば、マスクデータを利用して欠陥を効率良く解析することができる。
【0066】
以上、本実施の形態に係る検査装置10を説明したが、このような検査装置10を変形することもできる。例えば、本実施形態の変形例に係る生成装置34は、マスクデータに代えて、検査対象物200を撮像装置12により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する構成であってよい。ここで、重みデータは、一例として、撮像画像のピクセル構成と同一または対応するデータ構成を有する2次元データ(画像データおよび配列データ等)であってよい。
【0067】
変形例に係る記憶部42は、検査対象物200の3次元モデルを記憶するとともに、検査対象物200の3次元モデル上における各表面に対する検査の重みを含むデータを記憶する。例えば、記憶部42は、検査対象物200の3次元モデル上におけるエッジ、曲面および複雑な形状部分については重みを小さくし、平面領域等については重みを重くしたデータを記憶する。
【0068】
また、変形例に係る生成部46は、検査対象物200の3次元モデル上における検査の重みを撮像画像に投影して、重みデータを生成する。例えば、生成部46は、検査対象物200と撮像装置12との相対位置および撮像装置12による撮像条件に基づいて、撮像画像に対応した検査対象物200の3次元モデルに対する視野を特定し、特定した視野内における各領域の重みを含む重みデータを生成する。
【0069】
そして、検査部36は、撮像画像を領域毎(例えばピクセル毎)に重みデータにより重み付けをして、検査対象物200を検査する。検査部36は、一例として、撮像画像のうち対応する重みデータが大きい領域については検査の精度を高くし、対応する重みデータが小さい領域については検査の精度を低くする。
【0070】
これにより、変形例に係る制御装置20によれば、例えば検査対象物200のエッジ等の欠陥を検出することが困難な部分の検査の重みを低くし、他の部分の検査の重みを高くするような重みデータを、検査対象物200の3次元モデルから自動生成することができる。これにより、制御装置20によれば、検査対象物200が複雑な形状であったり、検査対象物200がカメラ視野よりも大きかったりする場合であっても、検査コストを小さくすることができる。
【0071】
図10は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示装置2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、ハードディスクドライブ2040、及びCD−ROMドライブ2060を有する入出力部と、入出力コントローラ2084に接続されるROM2010、フレキシブルディスク・ドライブ2050、及び入出力チップ2070を有するレガシー入出力部とを備える。
【0072】
ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【0073】
入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040、CD−ROMドライブ2060を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ2040は、コンピュータ1900内のCPU2000が使用するプログラム及びデータを格納する。CD−ROMドライブ2060は、CD−ROM2095からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。
【0074】
また、入出力コントローラ2084には、ROM2010と、フレキシブルディスク・ドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ2050は、フレキシブルディスク2090からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、フレキシブルディスク・ドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
【0075】
RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、フレキシブルディスク2090、CD−ROM2095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。
【0076】
コンピュータ1900にインストールされ、コンピュータ1900を生成装置34として機能させるプログラムは、記憶モジュールと、特定モジュールと、生成モジュールとを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、記憶部42、特定部44および生成部46としてそれぞれ機能させる。
【0077】
これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である記憶部42、特定部44および生成部46として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の生成装置34が構築される。
【0078】
一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、フレキシブルディスク2090、又はCD−ROM2095等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【0079】
また、CPU2000は、ハードディスクドライブ2040、CD−ROMドライブ2060(CD−ROM2095)、フレキシブルディスク・ドライブ2050(フレキシブルディスク2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
【0080】
また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【0081】
また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第1属性の属性値に対し第2属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、CPU2000は、記憶装置に格納されている複数のエントリの中から第1属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第2属性の属性値を読み出すことにより、所定の条件を満たす第1属性に対応付けられた第2属性の属性値を得ることができる。
【0082】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク2090、CD−ROM2095の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。
【0083】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0084】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0085】
10 検査装置、12 撮像装置、14 保持部、16 発光部、20 制御装置、32 制御部、34 生成装置、36 検査部、38 格納部、42 記憶部、44 特定部、46 生成部、200 検査対象物、300 形状データ、310 データ、320 曲面、1900 コンピュータ、2000 CPU、2010 ROM、2020 RAM、2030 通信インターフェイス、2040 ハードディスクドライブ、2050 フレキシブルディスク・ドライブ、2060 CD−ROMドライブ、2070 入出力チップ、2075 グラフィック・コントローラ、2080 表示装置、2082 ホスト・コントローラ、2084 入出力コントローラ、2090 フレキシブルディスク、2095 CD−ROM

【特許請求の範囲】
【請求項1】
検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成装置であって、
前記検査対象物の3次元モデルを記憶する記憶部と、
前記検査対象物の3次元モデル上における非検査箇所および前記検査対象物の3次元モデルの背景の少なくとも一方を前記撮像画像に投影して、前記マスクデータを生成する生成部と、
を備える生成装置。
【請求項2】
前記生成部は、前記検査対象物と前記撮像装置との相対位置および前記撮像装置による撮像条件に基づいて、前記撮像画像に対応した前記検査対象物の3次元モデルに対する視野を特定し、前記視野内における前記非検査箇所および前記背景の少なくとも一方の位置を表す前記マスクデータを生成する
請求項1に記載の生成装置。
【請求項3】
前記検査対象物の3次元モデル上における前記非検査箇所を特定して、特定した前記非検査箇所の位置を表す非検査箇所データを生成する特定部を備える
請求項1又は2に記載の生成装置。
【請求項4】
前記特定部は、前記検査対象物の3次元モデルにおける表面曲率が基準値以上の箇所を、前記検査対象物の3次元モデル上における前記非検査箇所として特定する
請求項3に記載の生成装置。
【請求項5】
前記特定部は、前記撮像画像の撮像条件における前記撮像装置の光軸と前記検査対象物の表面の法線とのなす角が基準値より大きい箇所に基づき、前記検査対象物の3次元モデル上における前記非検査箇所を特定する
請求項3又は4に記載の生成装置。
【請求項6】
前記特定部は、前記検査対象物に対する照明条件に基づき、前記検査対象物の3次元モデル上における前記非検査箇所を特定する
請求項3から5の何れかに記載の生成装置。
【請求項7】
前記特定部は、前記検査対象物の影となる箇所を、前記検査対象物の3次元モデル上における前記非検査箇所を特定する
請求項6に記載の生成装置。
【請求項8】
前記特定部は、前記撮像装置の光軸と前記検査対象物からの反射光の方向とのなす角が予め定められた範囲内の箇所を、前記検査対象物の3次元モデル上における前記非検査箇所を特定する
請求項6又は7に記載の生成装置。
【請求項9】
検査対象物を撮像装置により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する生成装置であって、
前記検査対象物の3次元モデルを記憶する記憶部と、
前記検査対象物の3次元モデル上における検査の重みを前記撮像画像に投影して、前記重みデータを生成する生成部と、
を備える生成装置。
【請求項10】
検査対象物を撮像して撮像画像を得る撮像装置と、
請求項1から9の何れかに記載の前記生成装置と、
前記撮像画像および前記生成装置の処理結果に基づいて、前記検査対象物を検査する検査部と、
を備える検査装置。
【請求項11】
前記生成装置は、前記検査対象物と前記撮像装置との相対位置および前記撮像装置による撮像条件の少なくとも一方が変化する毎に、処理を実行する
請求項10に記載の検査装置。
【請求項12】
前記検査対象物と前記撮像装置との相対位置が互いに異なる条件で撮像された複数の前記撮像画像のそれぞれに欠陥を含む場合、前記検査対象物と前記撮像装置との相対位置を移動させて、前記複数の撮像画像に含まれるそれぞれの欠陥を視野内に含めて前記撮像装置に前記撮像画像を撮像させる制御装置を備える
請求項11に記載の検査装置。
【請求項13】
コンピュータを、請求項1から9の何れかに記載の生成装置として機能させるプログラム。
【請求項14】
検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成方法であって、
前記検査対象物の3次元モデルを記憶部に記憶させ、
前記検査対象物の3次元モデル上における非検査箇所および前記検査対象物の3次元モデルの背景の少なくとも一方を前記撮像画像に投影して、前記マスクデータを生成する
生成方法。
【請求項15】
検査対象物を撮像装置により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する生成方法であって、
前記検査対象物の3次元モデルを記憶部に記憶させ、
前記検査対象物の3次元モデル上における検査の重みを前記撮像画像に投影して、前記重みデータを生成する
生成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−281754(P2010−281754A)
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願番号】特願2009−136713(P2009−136713)
【出願日】平成21年6月5日(2009.6.5)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】