(57)【要約】【課題】検査コストを小さくする。【解決手段】検査対象物を撮像して撮像画像を得る撮像装置と、検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成装置と、撮像画像および生成装置の処理結果に基づいて、検査対象物を検査する検査部とを備え、生成装置は、検査対象物の３次元モデルを記憶する記憶部と、検査対象物の３次元モデル上における非検査箇所および検査対象物の３次元モデルの背景の少なくとも一方を撮像画像に投影して、マスクデータを生成する生成部と、を備える検査装置を提供する。【選択図】図２
2010281754.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成装置であって、
前記検査対象物の３次元モデルを記憶する記憶部と、
前記検査対象物の３次元モデル上における非検査箇所および前記検査対象物の３次元モデルの背景の少なくとも一方を前記撮像画像に投影して、前記マスクデータを生成する生成部と、
を備える生成装置。
【請求項２】
前記生成部は、前記検査対象物と前記撮像装置との相対位置および前記撮像装置による撮像条件に基づいて、前記撮像画像に対応した前記検査対象物の３次元モデルに対する視野を特定し、前記視野内における前記非検査箇所および前記背景の少なくとも一方の位置を表す前記マスクデータを生成する
請求項１に記載の生成装置。
【請求項３】
前記検査対象物の３次元モデル上における前記非検査箇所を特定して、特定した前記非検査箇所の位置を表す非検査箇所データを生成する特定部を備える
請求項１又は２に記載の生成装置。
【請求項４】
前記特定部は、前記検査対象物の３次元モデルにおける表面曲率が基準値以上の箇所を、前記検査対象物の３次元モデル上における前記非検査箇所として特定する
請求項３に記載の生成装置。
【請求項５】
前記特定部は、前記撮像画像の撮像条件における前記撮像装置の光軸と前記検査対象物の表面の法線とのなす角が基準値より大きい箇所に基づき、前記検査対象物の３次元モデル上における前記非検査箇所を特定する
請求項３又は４に記載の生成装置。
【請求項６】
前記特定部は、前記検査対象物に対する照明条件に基づき、前記検査対象物の３次元モデル上における前記非検査箇所を特定する
請求項３から５の何れかに記載の生成装置。
【請求項７】
前記特定部は、前記検査対象物の影となる箇所を、前記検査対象物の３次元モデル上における前記非検査箇所を特定する
請求項６に記載の生成装置。
【請求項８】
前記特定部は、前記撮像装置の光軸と前記検査対象物からの反射光の方向とのなす角が予め定められた範囲内の箇所を、前記検査対象物の３次元モデル上における前記非検査箇所を特定する
請求項６又は７に記載の生成装置。
【請求項９】
検査対象物を撮像装置により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する生成装置であって、
前記検査対象物の３次元モデルを記憶する記憶部と、
前記検査対象物の３次元モデル上における検査の重みを前記撮像画像に投影して、前記重みデータを生成する生成部と、
を備える生成装置。
【請求項１０】
検査対象物を撮像して撮像画像を得る撮像装置と、
請求項１から９の何れかに記載の前記生成装置と、
前記撮像画像および前記生成装置の処理結果に基づいて、前記検査対象物を検査する検査部と、
を備える検査装置。
【請求項１１】
前記生成装置は、前記検査対象物と前記撮像装置との相対位置および前記撮像装置による撮像条件の少なくとも一方が変化する毎に、処理を実行する
請求項１０に記載の検査装置。
【請求項１２】
前記検査対象物と前記撮像装置との相対位置が互いに異なる条件で撮像された複数の前記撮像画像のそれぞれに欠陥を含む場合、前記検査対象物と前記撮像装置との相対位置を移動させて、前記複数の撮像画像に含まれるそれぞれの欠陥を視野内に含めて前記撮像装置に前記撮像画像を撮像させる制御装置を備える
請求項１１に記載の検査装置。
【請求項１３】
コンピュータを、請求項１から９の何れかに記載の生成装置として機能させるプログラム。
【請求項１４】
検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成方法であって、
前記検査対象物の３次元モデルを記憶部に記憶させ、
前記検査対象物の３次元モデル上における非検査箇所および前記検査対象物の３次元モデルの背景の少なくとも一方を前記撮像画像に投影して、前記マスクデータを生成する
生成方法。
【請求項１５】
検査対象物を撮像装置により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する生成方法であって、
前記検査対象物の３次元モデルを記憶部に記憶させ、
前記検査対象物の３次元モデル上における検査の重みを前記撮像画像に投影して、前記重みデータを生成する
生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生成装置、検査装置、プログラムおよび生成方法に関する。
【背景技術】
【０００２】
検査対象物を撮像して得られた撮像画像から検査対象物の表面の欠陥の有無を検査する検査装置が知られている（特許文献１、２）。このような検査装置は、例えば、検査対象物の撮像画像と欠陥の無い理想的な画像（目標画像）と比較して、検査対象物の表面の欠陥の有無を検査する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−９４７６３号公報
【特許文献２】特許第３９６０１２７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、検査対象物のエッジ近傍の検査結果は、撮像装置と検査対象物との位置ずれおよび照射光の変化等の影響を受けやすく、安定しない。そこで、検査装置は、検査対象物における検査結果が安定しない箇所（例えばエッジ近傍）を撮像画像上においてマスクすることにより、安定した検査結果を得ていた。
【０００５】
しかし、従来の検査装置では、ユーザが手作業で指定した情報に基づき、撮像画像上の検査結果が安定しない箇所をマスクしていた。従って、このような検査装置では、検査コストが大きくなってしまっていた。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の第１の態様においては、検査対象物を撮像装置により撮像した撮像画像における検査対象外とすべき領域を含むマスクデータを生成する生成装置であって、前記検査対象物の３次元モデルを記憶する記憶部と、前記検査対象物の３次元モデル上における非検査箇所および前記検査対象物の３次元モデルの背景の少なくとも一方を前記撮像画像に投影して、前記マスクデータを生成する生成部と、を備える生成装置、並びに、これに関連する検査装置、プログラムおよび生成方法を提供する。
【０００７】
また、本発明の第２の態様においては、検査対象物を撮像装置により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する生成装置であって、前記検査対象物の３次元モデルを記憶する記憶部と、前記検査対象物の３次元モデル上における検査の重みを前記撮像画像に投影して、前記重みデータを生成する生成部と、を備える生成装置、並びに、これに関連する検査装置、プログラムおよび生成方法を提供する。
【０００８】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態に係る検査装置１０の構成の一例を示す。
【図２】図２は、本実施形態に係る制御装置２０の機能構成を示す。
【図３】図３は、本実施形態に係る検査装置１０の制御装置２０による検査処理フローの一例を示す。
【図４】図４は、本実施形態に係る検査対象物２００の３次元モデルの一例を示す。
【図５】図５は、本実施形態に係る検査対象物２００の３次元モデル上における非検査箇所の一例を示す。
【図６】図６は、本実施形態に係る特定部４４により特定される非検査箇所の第１例を示す。
【図７】図７は、本実施形態に係る特定部４４により特定される非検査箇所の第２例を示す。
【図８】図８は、本実施形態に係る検査装置１０により撮像された撮像画像の一例を示す。
【図９】図９は、本実施形態に係る検査装置１０の検査の処理手順の一例を示す。
【図１０】図１０は、本実施形態に係るコンピュータ１９００のハードウェア構成の一例を示す。
【発明を実施するための形態】
【００１０】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１１】
図１は、本実施形態に係る検査装置１０の構成の一例を示す。検査装置１０は、金属部品等の検査対象物２００を撮像して、得られた撮像画像から検査対象物２００の表面の欠陥の有無を低コストで検査する。
【００１２】
検査装置１０は、撮像装置１２と、保持部１４と、発光部１６と、制御装置２０とを備える。撮像装置１２は、検査対象物２００を撮像して撮像画像を得る。
【００１３】
保持部１４は、検査対象物２００を固定して保持する。保持部１４は、一例として、検査対象物２００を載置するステージまたは検査対象物２００をハンドリングするハンドリング装置等であってよい。さらに、保持部１４は、検査対象物２００と撮像装置１２との相対位置を移動させる。
【００１４】
発光部１６は、検査対象物２００に対して光を照射する。発光部１６は、例えば、照明条件として発光方向又は発光角度などを変更することができる。また、発光部１６は、例えば、照明条件として強度が正弦波状の分布となる光を照射してもよい。また、発光部１６は、例えば、照明条件として光量を調整した光を照射してもよい。
【００１５】
制御装置２０は、撮像装置１２、保持部１４および発光部１６を制御して、撮像装置１２により撮像された検査対象物２００の撮像画像から検査対象物２００の表面の欠陥の有無を検査する。制御装置２０は、一例として、検査対象物２００を複数の方向から撮像して、検査対象物２００の表面の欠陥の有無を検査する。また、制御装置２０は、一例として、撮像装置１２の視野よりも検査対象物２００が大きい場合には、検査対象物２００を複数の領域に分割して、分割した複数の領域をそれぞれ撮像して、検査対象物２００の表面の欠陥の有無を検査する。
【００１６】
このような制御装置２０は、一例として、撮像装置１２および保持部１４を制御して、検査対象物２００と撮像装置１２との相対位置を指定した位置に移動させる。より具体的には、制御装置２０は、検査対象物２００に対する撮像装置１２の撮像方向、および、検査対象物２００から撮像装置１２までの間の撮像距離を制御する。これにより、制御装置２０は、検査対象物２００の表面上における指定された範囲を、撮像装置１２により撮像される撮像画像の視野内に移動させることができる。
【００１７】
また、制御装置２０は、撮像装置１２および発光部１６を制御して、撮像装置１２による撮像条件を指定された値に設定する。より具体的には、制御装置２０は、撮像装置１２を制御して、撮像倍率、フォーカス、シャッタスピードおよび絞り等を、指定した値に設定する。これにより、制御装置２０は、指定された撮像倍率および指定された画質で、検査対象物２００の表面を撮像させることができる。
【００１８】
また、制御装置２０は、一例として、発光部１６および撮像装置１２を制御して、検査対象物２００への照射光の方向、光量および色合い等を、指定した状態に設定する。これにより、制御装置２０は、指定された光量および色合いで、検査対象物２００の表面を撮像させることができる。
【００１９】
図２は、本実施形態に係る制御装置２０の機能構成を示す。制御装置２０は、制御部３２と、生成装置３４と、検査部３６と、格納部３８とを有する。制御部３２は、撮像装置１２、保持部１４および発光部１６を制御して、撮像装置１２により撮像された撮像画像を取得する。
【００２０】
生成装置３４は、検査対象物２００を撮像装置１２により撮像した撮像画像における検査対象外とすべき領域（検査対象外領域）を表すマスクデータを生成する。生成装置３４は、一例として、撮像装置１２により撮像された撮像画像上における、欠陥を検出することが困難である箇所（例えばエッジ、曲面および形状が複雑な箇所）を表すマスクデータを生成する。また、生成装置３４は、一例として、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件の少なくとも一方が変化する毎に、マスクデータを生成する処理を実行する。なお、生成装置３４は、上記の検査対象外領域を表すマスクデータに限らず、上記の検査対象外領域を含むマスクデータを生成するように構成してもよい。
【００２１】
検査部３６は、撮像画像および生成装置３４の処理結果に基づいて、検査対象物２００の欠陥の有無を検査する。検査部３６は、一例として、検査対象物の撮像画像と欠陥の無い理想的な画像（目標画像）と比較して、検査対象物の表面の欠陥の有無を検査する。
【００２２】
また、検査部３６は、撮像画像の各領域のうち、生成装置３４により生成されたマスクデータにより検査対象外とすることが示された領域（検査対象外領域）については、検査をしない。例えば、検査部３６は、撮像画像のうちマスクデータにより検査対象外とすることが示された領域をマスクして、目標画像との比較を実行する。
【００２３】
格納部３８は、検査部３６による検査対象物２００の検査結果を格納する。また、格納部３８は、欠陥を含むと判断された撮像画像をともに格納してもよい。
【００２４】
つぎに、生成装置３４内の機能構成について更に説明する。生成装置３４は、記憶部４２と、特定部４４と、生成部４６を含む。
【００２５】
記憶部４２は、検査対象物２００の３次元モデルを記憶する。記憶部４２は、検査対象物２００の３次元モデルを検査に先立って予め記憶している。
【００２６】
検査対象物２００の３次元モデルは、検査対象物２００の理想形状を表すデータである。検査対象物２００の３次元モデルは、一例として、検査対象物２００の設計情報に基づき生成される。また、検査対象物２００の３次元モデルは、ユーザにより手動で生成されてもよい。また、検査対象物２００の３次元モデルは、一例として、理想形状の検査対象物２００を３次元測定した結果に基づき生成されてもよい。
【００２７】
更に、記憶部４２は、検査対象物２００の３次元モデル上における非検査箇所の位置を表わす非検査箇所データを記憶する。検査対象物２００の非検査箇所は、一例として、検査対象物２００の表面上における撮像画像から画像処理により欠陥を検出することが困難である箇所（例えばエッジ、曲面および形状が複雑な箇所）である。なお、記憶部４２は、上記の非検査箇所の位置を含む非検査箇所データを記憶してもよい。
【００２８】
記憶部４２は、一例として、検査対象物２００の検査に先立ってユーザにより予め生成された非検査箇所データを外部から受け取って記憶する。記憶部４２は、一例として、特定部４４により生成された非検査箇所データを受け取って記憶してもよい。
【００２９】
特定部４４は、検査対象物２００の３次元モデル上における非検査箇所を特定する。特定部４４は、一例として、検査対象物２００の３次元モデル上の欠陥を検出することが比較的困難である箇所（例えばエッジ、曲面および形状が複雑な箇所）を、非検査箇所として特定する。そして、特定部４４は、特定した非検査箇所の３次元モデル上における位置を含む非検査箇所データを生成する。
【００３０】
なお、特定部４４は、一例として、検査対象物２００と撮像装置１２との相対位置または撮像装置１２による撮像条件に基づいて、検査対象物２００上における欠陥を検出することが比較的困難である箇所（例えば影部分および白部分）を特定してもよい。特定部４４の処理例については更に後述する。
【００３１】
生成部４６は、検査対象物２００の３次元モデル上における非検査箇所および検査対象物２００の３次元モデルの背景の少なくとも一方を撮像画像に投影して、マスクデータを生成する。
【００３２】
生成部４６は、一例として、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件に基づいて、撮像画像に対応した検査対象物２００の３次元モデルに対する視野を特定する。即ち、生成部４６は、撮像画像の撮像時における検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件と同一条件または対応する条件により、検査対象物２００の３次元モデルを仮想的に撮像した場合の視野を特定する。
【００３３】
そして、生成部４６は、このように特定した視野内における非検査箇所および背景の少なくとも一方の位置を算出して、算出した位置を含むマスクデータを生成する。このように生成されたマスクデータは、撮像画像上に表示される検査対象物２００における非検査箇所および撮像画像上に表示される検査対象物２００以外の部分（背景）の少なくとも一方の位置を含む。以上のように、生成装置３４によれば、撮像画像の各領域のうち検査対象外とすることが示された領域を示すマスクデータを生成することができる。
【００３４】
図３は、本実施形態に係る検査装置１０の制御装置２０による検査処理フローの一例を示す。制御装置２０は、検査対象物２００と撮像装置１２との相対位置または撮像装置１２による撮像条件を変更する毎に、それぞれの相対位置においてステップＳ１３からステップＳ１８の処理を実行する。
【００３５】
まず、制御部３２は、撮像装置１２に検査対象物２００を撮像させる（Ｓ１３）。続いて、生成装置３４は、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件を、制御部３２から取得する（Ｓ１４）。
【００３６】
続いて、生成装置３４は、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件に基づいて、撮像画像に対応した検査対象物２００の３次元モデルに対する視野を特定する（Ｓ１５）。
【００３７】
例えば、生成装置３４は、検査対象物２００に対する撮像装置１２の撮像方向、検査対象物２００から撮像装置１２までの距離および撮像倍率から、撮像画像に表示された検査対象物２００に対応する、３次元モデルの範囲を特定する。これにより、生成部４６は、撮像画像の撮像時における検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件と同一条件または対応する条件により、検査対象物２００の３次元モデルを仮想的に撮像した場合の視野を特定することができる。
【００３８】
続いて、生成装置３４は、ステップＳ１５で特定した視野内における非検査箇所および背景の位置を含むマスクデータを生成する（Ｓ１６）。生成装置３４は、一例として、ステップＳ１５で特定した３次元モデルの範囲内の非検査箇所に対応する撮像画像上における位置、および、ステップＳ１５で特定した３次元モデルの範囲外の背景に対応する撮像画像上における位置を算出する。そして、生成装置３４は、算出した位置を含むマスクデータを生成する。
【００３９】
続いて、検査部３６は、撮像画像のうちマスクデータにより検査対象外とすることが示された領域をマスクして、撮像画像に含まれる検査対象物２００の表面の欠陥の有無を検査する（Ｓ１７）。検査部３６は、一例として、撮像画像と目標画像とを、マスクされた領域を除いて比較することにより、検査対象物２００の欠陥の有無を検査する。
【００４０】
また、検査部３６は、一例として、撮像画像における領域毎の色または明るさと、目標画像の領域毎の色または明るさとの、差または比に基づいて検査対象物２００の欠陥の有無を検査してもよい。また、検査部３６は、一例として、特許文献１に記載されている欠陥検出方法を用いて、撮像画像から検査対象物２００の欠陥の有無を検査してもよい。また、検査部３６は、一例として、撮像画像から検出した検査対象物２００の表面の凹凸の位置、形状、大きさ、色、明るさ等に基づいて、検査対象物２００の欠陥の有無を検査してもよい。
【００４１】
続いて、検査部３６は、検査結果を格納部３８に記録する（Ｓ１８）。また、検査部３６は、欠陥を含むと判断された撮像画像をともに格納部３８に記録してもよい。また、検査部３６は、欠陥を含むと判断された撮像画像の撮像時における、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件をともに格納部３８に記録してもよい。
【００４２】
そして、制御装置２０は、全ての条件についてステップＳ１３からステップＳ１８の処理を終了すると、当該フローを抜けて処理を終了する（Ｓ１９）。
【００４３】
以上のように、本実施形態に係る検査装置１０によれば、撮像画像上における検査対象外とする領域を含むマスクデータを、生成装置３４が検査対象物２００の３次元モデルに基づき自動生成する。これにより、検査装置１０によれば、検査対象物２００が複雑な形状であったり、検査対象物２００がカメラ視野よりも大きかったりすることにより、複雑または大量のマスクデータを生成しなければならない場合であっても、検査コストを小さくすることができる。また、検査装置１０によれば、検査にかかるスループットを向上させることができる。
【００４４】
図４は、本実施形態に係る検査対象物２００の３次元モデルの一例を示す。検査対象物２００の３次元モデルは、検査対象物２００の外観形状を表すデータであり、例えば検査対象物２００の立体形状の設計データ（例えばＣＡＤデータ）であってよい。検査対象物２００の３次元モデルは、例えば、図４に示されるように、検査対象物２００の表面位置を３次元座標により表わす形状データ３００であってよい。
【００４５】
図５は、本実施形態に係る検査対象物２００の３次元モデル上における非検査箇所の一例を示す。非検査箇所データは、検査対象物２００の表面における検査対象外とすべき領域を、検査対象物２００の３次元モデル上において表わすデータであり、検査対象物２００の立体形状の設計データ（例えばＣＡＤデータ）であってよい。非検査箇所データは、例えば、図５の斜線部分に示されるように、検査対象物２００の検査対象外とすべき領域を３次元座標により表わすデータ３１０であってよい。
【００４６】
図６は、本実施形態に係る特定部４４により特定される非検査箇所の第１例を示す。特定部４４は、一例として、検査対象物２００の３次元モデルにおける表面曲率が基準値以上の箇所を、検査対象物２００の３次元モデル上における非検査箇所として特定してもよい。
【００４７】
特定部４４は、外部から検査対象物２００の３次元モデルが与えられた場合に、例えば図６の斜線部分に示されるような、検査対象物２００の３次元モデルにおける表面曲率が基準値以上の曲面３２０を演算により特定する。これにより特定部４４は、欠陥を検出することが困難な曲面３２０を非検査箇所として特定することができる。
【００４８】
図７は、本実施形態に係る特定部４４により特定される非検査箇所の第２例を示す。特定部４４は、一例として、撮像画像を撮像した条件における撮像装置１２の光軸と検査対象物２００の表面の法線とのなす角が基準値より大きい箇所に基づき、検査対象物２００の３次元モデル上における非検査箇所を特定してもよい。
【００４９】
特定部４４は、一例として、検査対象物２００の検査時において、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件を取得する。続いて、特定部４４は、取得した相対位置および撮像条件と同一の条件において、検査対象物２００の３次元モデルを仮想的に撮像した場合における視野、および、撮像装置１２の仮想的な光軸を特定する。
【００５０】
続いて、特定部４４は、検査対象物２００の３次元モデルを仮想的に撮像した場合の視野内において、仮想的な光軸と、検査対象物２００の３次元モデルの表面の法線との角度を算出する。そして、特定部４４は、算出した角度が基準値より大きい箇所を、検査対象物２００の３次元モデル上における非検査箇所として特定する。
【００５１】
このような処理により、特定部４４は、例えば、図７の斜線部分に示されるような、仮想的な光軸と比較的に平行に近い面を非検査箇所として特定することができる。これにより特定部４４は、撮像装置１２により鮮明に撮像することができない箇所を非検査箇所として特定することができる。
【００５２】
また、特定部４４は、一例として、検査対象物２００に対する照射光の方向又は照射角度などの照明条件に基づき、検査対象物２００の影となる箇所を検査対象物２００の３次元モデル上における非検査箇所を特定してもよい。特定部４４は、一例として、検査対象物２００の検査時において、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件を取得する。続いて、特定部４４は、取得した相対位置および撮像条件と同一の条件において、検査対象物２００の３次元モデルを仮想的に撮像した場合における視野、および、仮想的な照射光の方向を特定する。
【００５３】
続いて、特定部４４は、検査対象物２００の３次元モデルを仮想的に撮像した場合の視野内において、仮想的な照射光が照射されない箇所を検出する。そして、特定部４４は、このように検出した箇所を検査対象物２００の３次元モデル上における非検査箇所として特定する。これにより特定部４４は、影となる箇所を非検査箇所として特定することができる。
【００５４】
また、特定部４４は、一例として、検査対象物２００に対する照射光の方向に基づき、撮像装置１２の光軸と検査対象物２００からの反射光の方向とのなす角が予め定められた範囲内の箇所を、検査対象物２００の３次元モデル上における非検査箇所を特定してもよい。特定部４４は、一例として、検査対象物２００の検査時において、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件を取得する。続いて、特定部４４は、取得した相対位置および撮像条件と同一の条件において、検査対象物２００の３次元モデルを仮想的に撮像した場合における視野、撮像装置１２の仮想的な光軸、および、検査対象物２００の表面からの仮想的な反射光の方向を特定する。
【００５５】
続いて、特定部４４は、検査対象物２００の３次元モデルを仮想的に撮像した場合の視野内において、撮像装置１２の仮想的な光軸と、検査対象物２００の表面からの仮想的な反射光の方向との角度が予め定められた範囲内（例えば、０度から所定の角度までの範囲）の箇所を検出する。そして、特定部４４は、このように検出した箇所を検査対象物２００の３次元モデル上における非検査箇所として特定する。これにより特定部４４は、画像が白くなる箇所を非検査箇所として特定することができる。
【００５６】
図８は、本実施形態に係る検査装置１０により撮像された撮像画像の一例を示す。検査装置１０は、撮像装置１２の視野よりも検査対象物２００の形状が大きい場合、検査対象物２００の表面全体を複数の領域に分割し、分割した領域毎に撮像画像を取得して検査を実行する。
【００５７】
ここで、隣接する複数の領域を撮像して得られた複数の撮像画像に１つの欠陥がまたがって含まれる場合がある。このような場合、それぞれの撮像画像に含まれる欠陥が個別の欠陥として認識されて、精度良く欠陥の解析ができない可能性がある。
【００５８】
そこで、検査装置１０の制御装置２０は、まず、１回目の検査後において、検査対象物２００と撮像装置１２との相対位置が互いに異なる条件で撮像された複数の撮像画像のそれぞれに欠陥を含むか否かを判断する。そして、制御装置２０は、検査対象物２００と撮像装置１２との相対位置が互いに異なる条件で撮像された複数の撮像画像のそれぞれに欠陥を含む場合、２回目の検査を実行する。
【００５９】
２回目の検査においては、制御装置２０は、検査対象物２００と撮像装置１２との相対位置を移動させて、複数の撮像画像に含まれるそれぞれの欠陥を視野内に含めて撮像装置１２に撮像画像を撮像させる。そして、検査装置１０の検査部３６は、このように撮像された撮像画像に対して欠陥の検出処理を更に実行する。これにより、検査装置１０によれば、マスクデータを利用して検出した欠陥を精度良く解析させることができる。
【００６０】
図９は、本実施形態に係る検査装置１０の検査の処理手順の一例を示す。検査装置１０は、撮像装置１２の撮像倍率を段階的に変化させて検査処理を行ってもよい。
【００６１】
まず、検査装置１０は、撮像倍率を所定の倍率（第１倍率）に設定して、検査処理を実行する（Ｓ３１）。具体的には、検査装置１０の制御装置２０は、撮像倍率を第１倍率に設定した撮像条件において、図３に示されたステップＳ１２からステップＳ１９の処理を実行する。
【００６２】
続いて、検査装置１０は、ステップＳ３１の検査処理において欠陥が検出されたか否かを判断する（Ｓ３２）。欠陥が検出されない場合（Ｓ３２のＮｏ）、検査装置１０は、当該処理を終了する。
【００６３】
ステップＳ３１の検査処理において欠陥が検出された場合（Ｓ３２のＹｅｓ）、検査装置１０は、撮像倍率を第１倍率より大きい第２倍率に設定して、欠陥が検出された位置に対して更に検査処理を実行する（Ｓ３３）。
【００６４】
具体的には、検査装置１０の制御装置２０は、第１倍率で撮像された撮像画像を取得した検査対象物２００と撮像装置１２との相対位置および撮像条件から、検査対象物２００上における欠陥位置を特定する。続いて、制御装置２０は、欠陥位置が撮像されるように検査対象物２００と撮像装置１２との相対位置を移動させ、且つ、撮像倍率を第２倍率に設定する。そして、制御装置２０は、図３に示されたステップＳ１３からステップＳ１８の処理を実行する。
【００６５】
以上の処理を実行することにより、検査装置１０は、撮像倍率を段階的に変化させて欠陥を検出することができる。これにより、検査装置１０によれば、マスクデータを利用して欠陥を効率良く解析することができる。
【００６６】
以上、本実施の形態に係る検査装置１０を説明したが、このような検査装置１０を変形することもできる。例えば、本実施形態の変形例に係る生成装置３４は、マスクデータに代えて、検査対象物２００を撮像装置１２により撮像した撮像画像における各領域の検査の重みを含む重みデータを生成する構成であってよい。ここで、重みデータは、一例として、撮像画像のピクセル構成と同一または対応するデータ構成を有する２次元データ（画像データおよび配列データ等）であってよい。
【００６７】
変形例に係る記憶部４２は、検査対象物２００の３次元モデルを記憶するとともに、検査対象物２００の３次元モデル上における各表面に対する検査の重みを含むデータを記憶する。例えば、記憶部４２は、検査対象物２００の３次元モデル上におけるエッジ、曲面および複雑な形状部分については重みを小さくし、平面領域等については重みを重くしたデータを記憶する。
【００６８】
また、変形例に係る生成部４６は、検査対象物２００の３次元モデル上における検査の重みを撮像画像に投影して、重みデータを生成する。例えば、生成部４６は、検査対象物２００と撮像装置１２との相対位置および撮像装置１２による撮像条件に基づいて、撮像画像に対応した検査対象物２００の３次元モデルに対する視野を特定し、特定した視野内における各領域の重みを含む重みデータを生成する。
【００６９】
そして、検査部３６は、撮像画像を領域毎（例えばピクセル毎）に重みデータにより重み付けをして、検査対象物２００を検査する。検査部３６は、一例として、撮像画像のうち対応する重みデータが大きい領域については検査の精度を高くし、対応する重みデータが小さい領域については検査の精度を低くする。
【００７０】
これにより、変形例に係る制御装置２０によれば、例えば検査対象物２００のエッジ等の欠陥を検出することが困難な部分の検査の重みを低くし、他の部分の検査の重みを高くするような重みデータを、検査対象物２００の３次元モデルから自動生成することができる。これにより、制御装置２０によれば、検査対象物２００が複雑な形状であったり、検査対象物２００がカメラ視野よりも大きかったりする場合であっても、検査コストを小さくすることができる。
【００７１】
図１０は、本実施形態に係るコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部とを備える。
【００７２】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００７３】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、ネットワークを介して他の装置と通信する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００７４】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００７５】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００７６】
コンピュータ１９００にインストールされ、コンピュータ１９００を生成装置３４として機能させるプログラムは、記憶モジュールと、特定モジュールと、生成モジュールとを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、記憶部４２、特定部４４および生成部４６としてそれぞれ機能させる。
【００７７】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である記憶部４２、特定部４４および生成部４６として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ１９００の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の生成装置３４が構築される。
【００７８】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００７９】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【００８０】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００８１】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００８２】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５の他に、ＤＶＤ又はＣＤ等の光学記録媒体、ＭＯ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ１９００に提供してもよい。
【００８３】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００８４】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００８５】
１０  検査装置、１２  撮像装置、１４  保持部、１６  発光部、２０  制御装置、３２  制御部、３４  生成装置、３６  検査部、３８  格納部、４２  記憶部、４４  特定部、４６  生成部、２００  検査対象物、３００  形状データ、３１０  データ、３２０  曲面、１９００  コンピュータ、２０００  ＣＰＵ、２０１０  ＲＯＭ、２０２０  ＲＡＭ、２０３０  通信インターフェイス、２０４０  ハードディスクドライブ、２０５０  フレキシブルディスク・ドライブ、２０６０  ＣＤ−ＲＯＭドライブ、２０７０  入出力チップ、２０７５  グラフィック・コントローラ、２０８０  表示装置、２０８２  ホスト・コントローラ、２０８４  入出力コントローラ、２０９０  フレキシブルディスク、２０９５  ＣＤ−ＲＯＭ
【図１】
2010281754.tif 000003
【図２】
2010281754.tif 000004
【図３】
2010281754.tif 000005
【図４】
2010281754.tif 000006
【図５】
2010281754.tif 000007
【図６】
2010281754.tif 000008
【図７】
2010281754.tif 000009
【図８】
2010281754.tif 000010
【図９】
2010281754.tif 000011
【図１０】
2010281754.tif 000012