(57)【要約】【課題】  より精度良く欠陥部分を検出することができる欠陥検出装置を提供すること。【解決手段】  欠陥検出装置１は、検査対象面Ｗ１にレーザー光を照射する照射部２２と、検査対象面Ｗ１に照射されたレーザー光の反射光を受光する受光部２３と、受光部２３にて受光した反射光に関する情報に基づいて、検査対象面Ｗ１の三次元形状を表す三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を算出する高さデータ補正部３３と、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）をローパスフィルタ処理することにより、良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）を算出する良品形状データ算出部３４と、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）と良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）を比較することにより、検査対象面Ｗ１の三次元形状に基づく欠陥候補ＤＺを検出する第一欠陥候補検出部３７と、を備える。【選択図】  図２
2017181263.tif 000002
【特許請求の範囲】
【請求項１】
検査対象面にレーザー光を照射する照射部と、
前記検査対象面に照射されたレーザー光の反射光を受光する受光部と、
前記受光部にて受光した反射光に関する情報に基づいて、前記検査対象面の三次元形状を表す三次元形状データを算出する三次元形状データ算出部と、
前記三次元形状データをローパスフィルタ処理することにより、前記三次元形状データのうち欠陥部分の形状と考えられるデータが除外された良品形状データを算出する良品形状データ算出部と、
前記三次元形状データと前記良品形状データとを比較することにより、前記検査対象面の三次元形状に基づく欠陥候補を検出する第一欠陥候補検出部と、
を備える、欠陥検出装置。
【請求項２】
請求項１に記載の欠陥検出装置において、
前記受光部にて受光した反射光の強度を表す反射強度データを算出する反射強度データ算出部と、
前記反射強度データをローパスフィルタ処理することにより、前記反射強度データのうち前記欠陥部分における反射強度と考えられるデータが除外された良品反射強度データを算出する良品反射強度データ算出部と、
前記反射強度データと前記良品反射強度データとを比較することにより、前記検査対象面の反射強度に基づく欠陥候補を検出する第二欠陥候補検出部と、
を備える、欠陥検出装置。
【請求項３】
請求項２に記載の欠陥検出装置において、
前記三次元形状データに基づいて、前記検査対象面の傾斜変化率を算出する傾斜変化率算出部と、
前記傾斜変化率に基づいて、前記検査対象面の傾斜変化率に基づく欠陥候補を検出する第三欠陥候補検出部と、
を備える、欠陥検出装置。
【請求項４】
請求項２又は３に記載の欠陥検出装置において、
前記三次元形状データ算出部は、前記受光部にて受光した反射光に関する情報に基づいて、前記検査対象面の三次元形状を表す測定点群データを算出し、算出した前記測定点群データを前記反射強度データを参照して補正することにより、前記三次元形状データを算出する、欠陥検出装置。
【請求項５】
請求項３又は４に記載の欠陥検出装置において、
前記第一欠陥候補検出部が検出した前記検査対象面の三次元形状に基づく欠陥候補、前記第二欠陥候補検出部が検出した前記検査対象面の反射強度に基づく欠陥候補、及び、前記第三欠陥候補検出部が検出した前記検査対象面の傾斜変化率に基づく欠陥候補、に基づいて、前記検査対象面上における欠陥部分の有無を判断する欠陥判定部を備える、欠陥検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査対象物の表面（検査対象面）に形成されている傷などの欠陥部分を検出するための欠陥検出装置に関する。
【背景技術】
【０００２】
車両ドアに取り付けられるアウトサイドハンドルの表面（外側面）は、意匠面であるため、この意匠面には傷、打痕、塗装不良等の欠陥部分が形成されていないのが望ましい。従って、アウトサイドハンドルの表面塗装後に、その表面に欠陥部分が存在するか否かが検査される。この検査に欠陥検出装置が用いられる。
【０００３】
上記したアウトサイドハンドルの表面等の検査対象面上における欠陥部分を検出する欠陥検出手法の一つとして、レーザー光を用いる手法が採用され得る。レーザー光を用いる欠陥検出方法により検査対象面上における欠陥部分を検出する場合、検査対象面にレーザー光が照射されるとともに、照射点における照射光の反射光が受光される。受光された反射光に関する情報から、検査対象面の三次元形状を表す点群データが算出される。そして、算出された点群データを予め取得されている既知の参照データ（マスターデータ）と比較することにより、検査対象面上の欠陥部分が検出される。
【０００４】
特許文献１に示される欠陥検出方法によれば、検査対象面の三次元形状を三次元測定器等で測定して得られた測定点群データの各点と、予め求められている参照点群データ（マスターデータ）の対応点との間の距離に基づいて、測定点群データが非欠陥点群データと欠陥点群データとに分類される。次いで、測定点群データから欠陥点群データが除外された測定点群データを使用して測定点群データと参照点群データとが位置合わせされる。位置合わせされた測定点群データを参照点群データと比較することにより、欠陥点群データが除外された測定点群データの各点における参照点群データの対応点が判別される。そして、元の測定点群データの各点と、その各点における参照点群データの対応点との間の距離に基づいて、測定点群データから欠陥点群データが改めて検出される。検出された欠陥点群データに基づいて、欠陥部分が検出される。
【０００５】
また、特許文献２は、レーザー変位計を用いて２つの母材が突き合わされた状態で溶接されたときに形成される溶接ビード部を含む部分の表面変位を測定し、その変位量により溶接品質（すなわち溶接欠陥）を検査する検査方法を開示する。この検査方法によれば、レーザー変位計により得られた溶接ビード部を含む部分の表面変位データに基づいて、母材の表面形状データと溶接ビード部の表面形状データとが取得される。そして、母材又は母材表面を溶接ビード部に外挿した仮想面（或いは仮想線）を想定し、その仮想面（或いは仮想線）から溶接ビード部の表面までの変位量に基づいて、溶接品質が検査される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２５６４６６号公報
【特許文献２】特開２００８−３０２４２８号公報
【発明の概要】
【０００７】
（発明が解決しようとする課題）
特許文献１に記載の方法によれば、測定点群データの各点を、既知の参照点群データ（マスターデータ）の対応点と比較することによって、欠陥点群データ（欠陥部分）が検出される。しかし、用いる参照点群データ（マスターデータ）には、検査対象面の形状のばらつきまで考慮されていないので、検査対象面の形状のばらつきが欠陥部分として検出される可能性がある。そのため、検出された欠陥部分が、本当に欠陥部分を構成するのか単なる形状のばらつきであるのかを、精度良く判断することができない。つまり、欠陥部分の検出精度が低い。
【０００８】
また、特許文献２に記載の方法によれば、母材の位置や形状を予め直線或いは曲率等によって設定しておく必要がある。つまり、特許文献２においても、既知の参照データが必要である。よって、特許文献１と同様に、形状のばらつきが検査精度に影響を及ぼす。特に形状のばらつきが大きい場合には精度良く溶接品質を検査することができない。
【０００９】
本発明は、より精度良く欠陥部分を検出することができる欠陥検出装置を提供することを、目的とする。
【００１０】
（課題を解決するための手段）
本発明は、検査対象面（Ｗ１）にレーザー光を照射する照射部（２２）と、検査対象面に照射されたレーザー光の反射光を受光する受光部（２３）と、受光部にて受光した反射光に関する情報に基づいて、検査対象面の三次元形状を表す三次元形状データを算出する三次元形状データ算出部（３１，３２，３３）と、三次元形状データをローパスフィルタ処理することにより、三次元形状データのうち欠陥部分の形状と考えられるデータが除外された良品形状データを算出する良品形状データ算出部（３４）と、三次元形状データと良品形状データとを比較することにより、検査対象面の三次元形状に基づく欠陥候補を検出する第一欠陥候補検出部（３７）と、を備える、欠陥検出装置を提供する。
【００１１】
本発明によれば、検査対象面の三次元形状をローパスフィルタ処理することによって、良品形状データが算出される。ここで、検査対象面の形状のばらつき（正規品に対する個々の製品の寸法誤差）の大きさが、欠陥部分の大きさよりも大きい場合、ローパスフィルタ処理によって、算出された三次元形状データから、形状のばらつきを残しつつ欠陥部分のみを除去した良品形状データを得ることができる。従って、本発明に係る良品形状データには、検査対象面の形状のばらつきが反映されることになる。こうして形状のばらつきが反映された良品形状データと元の三次元形状データとを比較することによって欠陥候補を検出することにより、形状のばらつきによる影響が抑制され、その結果、従来よりも精度の良い欠陥部分の検出を実現することができる。
【００１２】
本発明において、三次元形状データをローパスフィルタ処理する場合においては、一般的な欠陥を表すような大きさ及び形状を構成する三次元形状データが除外されるように、フィルタ長を設定しておくのがよい。そのようなフィルタ長は、検査対象面の形状に応じて異なるので一概に特定することはできないが、検査対象の製品に合わせて任意の曲率半径の部分がカットされるようなフィルタ長であるのがよい。
【００１３】
上記発明において、三次元形状データ算出部は、検査対象面の三次元形状データを算出するために、反射光に関する情報を入力する。ここで、反射光に関する情報とは、例えば、反射光の受光タイミングである。反射光の受光タイミングと照射光の照射タイミングとの位相差に基づいて、照射部（或いは後述する測定ヘッド）から検査対象面までの距離を得ることができ、得られた距離から検査対象面の三次元形状を算出することができる。
【００１４】
また、「欠陥候補」とは、欠陥と考えられる部分という意味であり、「欠陥部分」のみとは限らない。よって、「欠陥候補」には、真の欠陥部分も含まれるし、欠陥ではない部分も含まれる可能性がある。この場合、さらに検査精度を高めるために、各種の欠陥固有の特徴量と欠陥候補の対応する特徴量とを比較することによって、真の欠陥を抽出するような処理を施してもよい。
【００１５】
また、本発明に係る欠陥検出装置は、受光部にて受光した反射光の強度を表す反射強度データを算出する反射強度データ算出部（３２）と、反射強度データをローパスフィルタ処理することにより、反射強度データのうち欠陥部分における反射強度と考えられるデータが除外された良品反射強度データを算出する良品反射強度データ算出部（３５）と、反射強度データと良品反射強度データとを比較することにより、検査対象面の反射強度に基づく欠陥候補を検出する第二欠陥候補検出部（３８）と、を備えるとよい。
【００１６】
検査対象面上に欠陥が形成されている場合、欠陥部分における反射強度は、欠陥部分でない部分における反射強度とは異なる可能性がある。従って、反射強度に基づいて欠陥候補を検出することができる。上記発明においては、三次元形状に基づく欠陥候補に加え、反射強度に基づく欠陥候補が検出される。つまり、異なる二つの情報に基づいて、それぞれ欠陥候補が検出される。従って、三次元形状に基づいて検出された欠陥候補と反射強度に基づいて検出された欠陥候補とを照合することにより、より精度良く、真の欠陥部分を検出することができる。また、例えば、第一欠陥候補検出部では検出できなかった欠陥候補が、第二欠陥候補検出部で検出されることもある。或いは、第二欠陥候補検出部では検出できなかった欠陥候補が、第一欠陥候補検出部で検出されることもある。このため、欠陥部分の検出漏れを効果的に防止することができる。
【００１７】
さらにこの場合、本発明に係る欠陥検出装置は、三次元形状データに基づいて、検査対象面の傾斜変化率を算出する傾斜変化率算出部（３６）と、傾斜変化率に基づいて、検査対象面の傾斜変化率に基づく欠陥候補を検出する第三欠陥候補検出部（３９）と、を備えるとよい。この場合、本発明に係る欠陥検出装置は、第一欠陥候補検出部が検出した検査対象面の三次元形状に基づく欠陥候補、第二欠陥候補検出部が検出した検査対象面の反射強度に基づく欠陥候補、及び、第三欠陥候補検出部が検出した検査対象面の傾斜変化率に基づく欠陥候補、に基づいて、検査対象面上における欠陥部分の有無を判断する欠陥判定部（４０）を備えるとよい。
【００１８】
検査対象面上に欠陥が形成されている場合、欠陥部分における傾斜変化率は、欠陥部分でない部分における傾斜変化率とは異なる場合がある。従って傾斜変化率に基づいても欠陥候補を検出することができる。上記発明においては、三次元形状に基づく欠陥候補、反射強度に基づく欠陥候補に加え、検査対象面の傾斜変化率に基づく欠陥候補が検出される。従って、これら複数の情報に基づく欠陥候補を照合することにより、より一層精度良く、真の欠陥部分を検出することができる。また、いずれかの欠陥候補検出部では検出できなかった欠陥候補が、他の欠陥候補検出部で検出されることもある。このため、欠陥部分の検出漏れをより一層効果的に防止することができる。
【００１９】
上記において、「検査対象面の傾斜変化率」は、検査対象面内のある微小面の法線とその微小面に隣接する微小面の法線とのなす角により表される。すなわち、傾斜変化率とは、検査対象面内の微小面とそれに隣接する微小面が、相対的にどの程度角度変化しているかを表す量である。
【００２０】
また、三次元形状データ算出部は、受光部にて受光した反射光に関する情報に基づいて、検査対象面の三次元形状を表す測定点群データを算出し、算出した測定点群データを反射強度データを参照して補正することにより、三次元形状データを算出するとよい。これによれば、測定点群データが反射強度データにより補正される。具体的には、反射強度データが小さい部分における測定点群データの信頼性は低いので、そのような信頼性の低い部分の測定点群データが削除される。そして、削除された部分のデータは、それに隣接するデータによって補完される。このようにして測定点群データを補正して三次元形状データを算出し、算出した三次元形状データを欠陥候補の検出に利用することにより、より精度良く、検査対象面の三次元形状に基づく欠陥候補を検出することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係る欠陥検出装置の概略構成図である。
【図２】制御装置の構成を示すブロック図である。
【図３】計測処理部が実行する計測処理ルーチンの流れを示すフローチャートである。
【図４】２．５次元マップ作成部が実行する２．５次元マップ作成処理ルーチンの流れを示すフローチャートである。
【図５】高さデータ補正部が実行する高さデータ補正処理ルーチンの流れを示すフローチャートである。
【図６】良品形状データ算出部が実行する良品形状データ算出処理ルーチンの流れを示すフローチャートである。
【図７】第一欠陥候補検出部が実行する第一欠陥候補検出処理ルーチンの流れを示すフローチャートである。
【図８】良品反射強度データ算出部が実行する良品反射強度データ算出処理ルーチンの流れを示すフローチャートである。
【図９】第二欠陥候補検出部が実行する第二欠陥候補検出処理ルーチンの流れを示すフローチャートである。
【図１０】傾斜変化率算出部が実行する傾斜変化率算出処理ルーチンの流れを示すフローチャートである。
【図１１】第三欠陥候補検出部が実行する第三欠陥候補検出処理ルーチンの流れを示すフローチャートである。
【図１２】欠陥判定部が実行する欠陥判定処理ルーチンの流れを示すフローチャートである。
【図１３】高さの２．５次元マップの構成例を示す図である。
【図１４】反射強度の２．５次元マップの構成例を示す図である。
【図１５】モニタに表示される高さの２．５次元マップ及び反射強度の２．５次元マップを示す図である。
【図１６】高さの２．５次元補正マップの構成例を示す図である。
【図１７】傾斜変化率の２．５次元マップの構成例を示す図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態に係る欠陥検出装置について図面を参照して説明する。なお、本実施形態において、欠陥部分の検出対象物としてのワークＷは、車両のドアに取り付けられるグリップタイプのアウトサイドハンドルである。ワークＷ（アウトサイドハンドル）は長尺状に形成されていて、意匠面である外表面を有する。本実施形態に係る欠陥検出装置は、ワークＷの外表面上における欠陥部分を検出する。従って、ワークＷの外表面が、検査対象面Ｗ１である。検査対象面Ｗ１は三次元的に湾曲した曲面形状である。検査対象面Ｗ１の各位置は三次元座標により表現することができる。
【００２３】
図１は、本実施形態に係る欠陥検出装置１の概略構成図である。図１に示すように、本実施形態に係る欠陥検出装置１は、ワーク移動装置１０と、表面形状測定部２０と、制御装置３０と、モニタ５０とを備える。
【００２４】
ワーク移動装置１０は、例えば６自由度の多関節ロボットアームであり、ワークＷの位置を移動させることができるように構成される。ワーク移動装置１０は、土台部１１と、支持部１２と、第一アーム部１３と、第二アーム部１４と、ワーク取付治具１５とを備える。
【００２５】
土台部１１は、欠陥検出装置１が設けられている検査室の床面上に設置される。支持部１２は床面に設置された土台部１１の上面から上方に向かって立設される。支持部１２の先端部（上端部）に第一アーム部１３の一方端（基端）が三次元的に回転可能に連結される。また、第一アーム部１３の他方端（先端）には、第二アーム部１４の一方端（基端）が三次元的に回転可能に連結される。そして、第二アーム部１４の他方端（先端）に、ワーク取付治具１５が取り付けられる。ワーク取付治具１５は、検査対象物であるワークＷを把持する。
【００２６】
支持部１２に対する第一アーム部１３の回転動作、及び、第一アーム部１３に対する第二アーム部１４の回転動作、によって、ワーク取付治具１５に把持されているワークＷの三次元的な位置及び姿勢が変化する。第一アーム部１３の回転動作及び第二アーム部１４の回転動作は、制御装置３０により制御される。
【００２７】
表面形状測定部２０は、本実施形態では、ＴＯＦ（Ｔｉｍｅ  Ｏｆ  Ｆｌｉｇｈｔ）方式のレーザースキャン装置により構成される。ＴＯＦ方式のレーザースキャン装置は、周知のように、検査対象面Ｗ１及び基準面にレーザー光を照射するとともに、検査対象面Ｗ１における照射点にて反射した反射光及び基準面における照射点にて反射した反射光をそれぞれ受光する。そして、基準面からの反射光の受光タイミング（反射時間）と、検査対象面Ｗ１からの反射光の受光タイミング（反射時間）との時間差に基づいて、後述する測定ヘッド２１と検査対象面Ｗ１との間の距離が計測される。
【００２８】
図１に示すように、表面形状測定部２０は、測定ヘッド２１を備える。測定ヘッド２１は、図示しない支持部によって所定の位置に固定される。測定ヘッド２１内には、照射部２２と、第一受光部２３１と第二受光部２３２とを有する受光部２３が配設される。照射部２２は、レーザー光を出射するレーザー光源２２１と、光学系２２２とを有する。光学系２２２は、第一ハーフミラー２２２ａ、第二ハーフミラー２２２ｂ、カルバノミラー２２２ｃ、基準面２２２ｄ、及びレンズ２２２ｅを備える。レーザー光源２２１から出射されるレーザー光は、第一ハーフミラー２２２ａ、第二ハーフミラー２２２ｂ、ガルバノミラー２２２ｃ、レンズ２２２ｅを経由して測定ヘッド２１の外部に放たれて、検査対象面Ｗ１に照射される。ガルバノミラー２２２ｃは、モータドライバにより駆動されるガルバノモータの駆動により回転する。ガルバノミラー２２２ｃが回転することにより、レーザー光の測定ヘッド２１からの出射方向（出射角度）が変化する。レーザー光の測定ヘッド２１からの出射角度が変化すると、検査対象面Ｗ１へのレーザー光の照射点が変化する。こうして照射点を変化させることにより、検査対象面Ｗ１内の所定のエリアがレーザー光によりスキャンされる。また、第一ハーフミラー２２２ａで反射されたレーザー光源２２１からのレーザー光は、基準面２２２ｄに照射される。そして、基準面２２２ｄでの反射光が第一ハーフミラー２２２ａを透過して第一受光部２３１に受光される。一方、検査対象面Ｗ１での反射光は第二ハーフミラー２２２ｂにて反射された後に、第二受光部２３２に受光される。第一受光部２３１及び第二受光部２３２は、受光した反射光に関する情報を出力する。本実施形態においては、第一受光部２３１及び第二受光部２３２は、反射光の受光タイミング及び受光強度を、反射光に関する情報として出力する。
【００２９】
制御装置３０は、ＣＰＵ、ＲＯＭ、ＲＡＭを主要構成として備えるマイクロコンピュータにより構成される。制御装置３０は、ワーク移動装置１０及び表面形状測定部２０と電気的に接続されており、ワーク移動装置１０及び表面形状測定部２０の動作を制御する。また、制御装置３０は、表面形状測定部２０の受光部２３が受光した反射光に関する情報を入力する。
【００３０】
モニタ５０は、制御装置３０に電気的に接続されており、制御装置３０からの制御指令に基づいて、後述する高さの２．５次元マップ及び反射強度の２．５次元マップを表示する。
【００３１】
図２は、制御装置３０の構成のうち、本実施形態に関連する構成を示すブロック図である。図２に示すように、制御装置３０は、計測処理部３１と、２．５次元マップ作成部３２と、高さデータ補正部３３と、良品形状データ算出部３４と、良品反射強度データ算出部３５と、傾斜変化率算出部３６と、第一欠陥候補検出部３７と、第二欠陥候補検出部３８と、第三欠陥候補検出部３９と、欠陥判定部４０とを有する。
【００３２】
計測処理部３１は、ワーク移動装置１０の動作及び表面形状測定部２０の動作を制御する。また、計測処理部３１は、表面形状測定部２０の受光部２３が受光した反射光に関する情報を入力するとともに、入力した反射光に関する情報に基づいて、検査対象面Ｗ１の三次元形状を表す測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び、検査対象面Ｗ１における反射強度を表す反射強度データαｉを算出する。そして、計測処理部３１は、算出した測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び反射強度データαｉを出力する。２．５次元マップ作成部３２は、後述する高さの２．５次元マップ及び反射強度の２．５次元マップを作成し、作成したマップのデータを出力する。高さデータ補正部３３は、２．５次元マップ作成部３２が出力した高さの２．５次元マップデータに表されるＺ座標としての高さデータを補正し、高さデータが補正された高さの２．５次元マップデータを三次元形状データとして出力する。
【００３３】
良品形状データ算出部３４は、三次元形状データから欠陥部分を表すデータが除去された良品形状データを算出する。良品反射強度データ算出部３５は、反射強度の２．５次元マップデータから欠陥部分を表すデータが除去された良品反射強度データを算出する。傾斜変化率算出部３６は、検査対象面Ｗ１の各所における傾きの変化を表す傾斜変化率を算出する。
【００３４】
第一欠陥候補検出部３７は、検査対象面Ｗ１の三次元形状データに基づいて、検査対象面Ｗ１の三次元形状に基づく欠陥候補ＤＺを検出し、検出した欠陥候補ＤＺを出力する。第二欠陥候補検出部３８は、反射強度の２．５次元マップに基づいて、検査対象面Ｗ１の反射強度に基づく欠陥候補Ｄαを検出し、検出した欠陥候補Ｄαを出力する。第三欠陥候補検出部３９は、検査対象面Ｗ１の傾斜変化率に基づく欠陥候補Ｄβを検出し、検出した欠陥候補Ｄβを出力する。欠陥判定部４０は、各欠陥候補検出部３７，３８，３９が出力した各欠陥候補ＤＺ、Ｄα、Ｄβに基づいて、検査対象面Ｗ１上における欠陥部分の有無を判断する。
【００３５】
上記構成の欠陥検出装置１を用いてワークＷの検査対象面Ｗ１上における欠陥部分の有無を検査する場合、まず、作業者が、ワークＷをワーク移動装置１０のワーク取付治具１５にセットする。次いで、作業者が、制御装置３０に備えられている検査開始スイッチを押下する。すると、制御装置３０の計測処理部３１が、計測処理ルーチンを実行する。
【００３６】
図３は、計測処理部３１が実行する計測処理ルーチンの流れを示すフローチャートである。このルーチンが起動すると、計測処理部３１は、まず、図３のステップ（以下、ステップをＳと略記する）１０１にて、ワークＷが初期位置に移動するように、ワーク移動装置１０の動作を制御する。ここで、ワークＷが初期位置に位置した場合、図１に示すように、ワークＷは表面形状測定部２０の直下に位置する。また、図１において、水平方向のうち左右方向をＸ方向と定義し、水平方向のうち紙面に垂直な方向をＹ方向と定義し、上下方向をＺ方向と定義した場合、ワークＷ（アウトサイドハンドル）の長手方向がＸ方向に一致し、幅方向がＹ方向に一致し、且つ、検査対象面Ｗ１が上側を向くように、ワークＷの初期位置及び姿勢が定められる。そして、この初期位置にて、ワークＷの検査対象面Ｗ１が表面形状測定部２０の測定ヘッド２１に正対し、且つ、測定ヘッド２１から出射されるレーザー光が検査対象面Ｗ１の所定のエリアに照射されるように、測定ヘッド２１に対してワークＷが位置決めされる。このようにワークＷが位置決めされた場合、ワークＷの検査対象面Ｗ１の三次元形状は、Ｘ座標Ｘｉ、Ｙ座標Ｙｉ及びＺ座標Ｚｉからなる点群データにより表すことができる。また、点群データにより表されるＸ座標Ｘｉが、ワークＷの長手方向における検査対象面Ｗ１の位置を表し、Ｙ座標Ｙｉが、ワークＷの幅方向における検査対象面Ｗ１の位置を表し、Ｚ座標Ｚｉが、ワークＷの高さ方向（長手方向及び幅方向に垂直な方向）における検査対象面Ｗ１の位置（高さ位置）を表す。以下において、検査対象面Ｗ１のＸ−Ｙ平面における各位置を、Ｘ−Ｙ平面画素と呼ぶこともある。
【００３７】
ワークＷの初期位置への移動が完了した後に、計測処理部３１は、図３のＳ１０２にて、表面形状測定部２０の動作を制御することによって、レーザースキャンを実行する。レーザースキャンが開始されると、レーザー光源２２１から所定のタイミングでレーザー光が出射される。出射されたレーザー光の一部は、光学系２２２を経由して、測定ヘッド２１に正対しているワークＷの検査対象面Ｗ１に照射される。また、ガルバノミラー２２２ｃの回転によってレーザー光の出射方向（出射角度）が変化させられることにより、検査対象面Ｗ１へのレーザー光の照射点が変化していく。これにより、検査対象面Ｗ１内の所定のエリアにレーザー光が照射されて、所定のエリアがレーザースキャンされる。
【００３８】
検査対象面Ｗ１に照射されたレーザー光は、照射点にて反射する。反射光のうち、測定ヘッド２１に向かう反射光は、ガルバノミラー２２２ｃ及び第二ハーフミラー２２２ｂで反射された後に、測定ヘッド２１内の第二受光部２３２にて受光される。第二受光部２３２は、反射光に関する情報、具体的には、検査対象面Ｗ１での反射光の受光タイミング及び反射強度を、制御装置３０の計測処理部３１に出力する。このようにして、計測処理部３１が、検査対象面Ｗ１の所定のエリア内における反射光に関する情報を得ることができる。また、レーザー光源２２１から出射されたレーザー光の一部が第一ハーフミラー２２２ａで反射した後に、測定ヘッド２１内の基準面２２２ｄに照射される。基準面２２２ｄに照射されたレーザー光の反射光が第一受光部２３１にて受光される。第一受光部２３１は、反射光に関する情報、具体的には、基準面２２２ｄでの反射光の受光タイミング及び反射強度を、制御装置３０の計測処理部３１に出力する。
【００３９】
所定のエリア（以下、スキャンエリアということもある）内におけるレーザースキャンが完了した後に、計測処理部３１は、Ｓ１０３にて、スキャンエリアの三次元形状を表す測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を算出する。ここで、測定点群データのＸ座標Ｘｉ及びＹ座標Ｙｉは、レーザー光の出射方向（出射角度）から求めることができる。また、Ｚ座標Ｚｉは、測定ヘッド２１と検査対象面Ｗ１へのレーザー光の照射点との間の距離から求めることができる。さらに、測定ヘッド２１と照射点との間の距離は、第一受光部２３１から出力される受光情報（基準面２２２ｄで反射した反射光の受光情報）と、第二受光部２３２から出力される受光情報（検査対象面Ｗ１で反射した反射光の受光情報）とを用いて、反射時間の差から求めることができる。具体的には、測定ヘッド２１と照射点との間の距離は、第一受光部２３１による基準面２２２ｄからの反射光の受光タイミング（反射時間）と、第二受光部２３２による検査対象面Ｗ１からの反射光の受光タイミング（反射時間）との差から、求めることができる。
【００４０】
次いで、計測処理部３１は、測定ヘッド２１から入力したスキャンエリア内の各照射点におけるそれぞれの反射強度データαｉを取得する（Ｓ１０４）。続いて、計測処理部３１は、ワークＷの検査対象面Ｗ１の全エリアをレーザースキャンしたか否かを判断する（Ｓ１０５）。全エリアをレーザースキャンしていない場合（Ｓ１０５：Ｎｏ）、計測処理部３１はＳ１０６に処理を進め、ワーク移動装置１０の動作を制御してワークＷを移動させる。この場合、ワークＷは、長手方向がＸ方向に一致し、幅方向がＹ方向に一致し、且つ、前回にレーザースキャンされたスキャンエリアに隣接するエリアがレーザースキャンされるように、ワーク移動装置１０により移動される。
【００４１】
Ｓ１０６にてワークＷを移動させた後に、計測処理部３１は、Ｓ１０２に処理を戻す。そして、Ｓ１０２〜Ｓ１０４の処理を繰り返すことにより、スキャンエリア内の各位置における測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び反射強度データαｉを取得する。
【００４２】
また、Ｓ１０５にて、全エリアをレーザースキャンしたと判断した場合（Ｓ１０５：Ｙｅｓ）、計測処理部３１はＳ１０７に処理を進める。Ｓ１０７では、計測処理部３１は、ワークＷを移動させて複数回レーザースキャンして得た各スキャンエリアの測定点群データを結合して、検査対象面Ｗ１の測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を作成する。次いで、計測処理部３１は、ワークＷを移動させて複数回レーザースキャンして得た各スキャンエリアの反射強度データを結合して、検査対象面Ｗ１の反射強度データαｉを作成する（Ｓ１０８）。続いて、計測処理部３１は、検査対象面Ｗ１の測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び反射強度データαｉを出力する（Ｓ１０９）。その後、計測処理部３１は、このルーチンを終了する。
【００４３】
２．５次元マップ作成部３２は、計測処理部３１が出力した検査対象面Ｗ１の三次元点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び反射強度データαｉを入力する。２．５次元マップ作成部３２は、測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び反射強度データαｉを入力した場合、２．５次元マップ作成処理を実行する。
【００４４】
図４は、２．５次元マップ作成部３２が実行する２．５次元マップ作成処理ルーチンの流れを示すフローチャートである。このルーチンが起動すると、２．５次元マップ作成部３２は、まず、図４のＳ２０１にて、入力した測定元点群データ（Ｘｉ，Ｙｉ，Ｚｉ）及び反射強度データαｉを読み出す。次いで、Ｘ−Ｙ平面座標上の同一画素における測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）と反射強度データαｉが対応するように、測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）と反射強度データαｉとを対応付ける（Ｓ２０２）。
【００４５】
続いて、２．５次元マップ作成部３２は、測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を整理することによって、高さの２．５次元マップを作成する（Ｓ２０３）。高さの２．５次元マップとは、等間隔に区分けされたＸ−Ｙ座標平面内に割り当てられた各Ｘ−Ｙ平面内の各画素（以下、Ｘ−Ｙ平面画素（Ｘａ，Ｙｂ）と呼ぶこともある）に、その画素（Ｘａ，Ｙｂ）に対応するＺ座標のデータ（Ｚａｂ）が表されるように構成されるマップである。なお、Ｚ座標のデータを、高さデータということもある。図１３に、高さ（Ｚ座標）の２．５次元マップの構成例を示す。図１３に示すように、高さの２．５次元マップは、等間隔に区切られたＸ−Ｙ平面内の各画素に、その画素におけるＺ座標（高さデータ）が示されている。高さの２．５次元マップに表される各データは、高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）と表される。
【００４６】
次いで、２．５次元マップ作成部３２は、検査対象面Ｗ１の反射強度データαｉを整理することによって、反射強度の２．５次元マップを作成する（Ｓ２０４）。反射強度の２．５次元マップとは、等間隔に区分けされたＸ−Ｙ座標平面内に割り当てられた各Ｘ−Ｙ平面画素（Ｘａ，Ｙｂ）に、その画素（Ｘａ，Ｙｂ）に対応する反射強度のデータαａｂが表示されるように構成されるマップである。図１４に、反射強度の２．５次元マップの構成例を示す。図１４に示すように、反射強度の２．５次元マップは、等間隔に区切られたＸ−Ｙ平面内の各画素に、その画素における反射強度が示されている。反射強度の２．５次元マップに表される各データは、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）と表される。
【００４７】
次に、２．５次元マップ作成部３２は、高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）及び反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を出力する（Ｓ２０５）。その後、２．５次元マップ作成部３２は、このルーチンを終了する。
【００４８】
２．５次元マップ作成部３２が出力した高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）及び反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）は、モニタ５０に入力される。これにより、モニタ５０に、高さの２．５次元マップ及び反射強度の２．５次元マップが表示される。この場合において、高さの２．５次元マップを表示するにあたり、Ｘ−Ｙ座標平面内の各画素（Ｘａ，Ｙｂ）が、その画素に対応する高さデータＺａｂの大きさに応じた明るさ（輝度）となるように、高さの２．５次元マップがマップデータ（Ｘａ，Ｙｂ，Ｚａｂ）に基づいて表示される。同様に、反射強度の２．５次元マップを表示するにあたり、Ｘ−Ｙ座標平面内の各画素（Ｘａ，Ｙｂ）が、その画素に対応する反射強度データαａｂの大きさに応じた明るさ（輝度）となるように、反射強度の２．５次元マップがマップデータ（Ｘａ，Ｙｂ，αａｂ）に基づいて表示される。
【００４９】
図１５に、モニタ５０に表示される高さの２．５次元マップ及び反射強度の２．５次元マップを示す。図１５（ａ）が高さの２．５次元マップの一部を示し、図１５（ｂ）が反射強度の２．５次元マップの一部を示す。図１５（ａ），（ｂ）に示すように、両２．５次元マップは、図１のＺ方向（高さ方向）から検査対象面Ｗ１を撮像した写真画像と同じような画像を表すデータ画像である。
【００５０】
２．５次元マップ作成部３２が出力した高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）及び反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）は、高さデータ補正部３３にも入力される。高さデータ補正部３３は、高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）及び反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を入力した場合、高さデータ補正処理を実行する。図５は、高さデータ補正部３３が実行する高さデータ補正処理ルーチンの流れを示すフローチャートである。このルーチンが起動すると、高さデータ補正部３３は、まず、図５のＳ３０１にて、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を参照して、高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）を補正する（Ｓ３０１）。この場合において、高さデータ補正部３３は、高さの２．５次元マップデータを補正するにあたり、高さの２．５次元マップデータにより表される各Ｘ−Ｙ平面画素のうち、反射強度の２．５次元マップデータに表される反射強度データαａｂが予め定められた下限強度αｌｏｗよりも小さいＸ−Ｙ平面画素に対応するＸ−Ｙ平面画素を抽出する。ここで、抽出されたＸ−Ｙ平面画素、すなわち反射強度が小さいＸ−Ｙ平面画素は、そのＸ−Ｙ平面画素に対応する高さデータの信頼性、すなわち測定点群データにおけるＺ座標Ｚｉの信頼性が低い可能性がある。よって、高さデータ補正部３３は、抽出したＸ−Ｙ平面画素に対応する高さデータを、高さデータの２．５次元マップ（Ｘａ，Ｙｂ，Ｚａｂ）から削除する。
【００５１】
上記のようにして反射強度が小さい画素に対応する高さデータを削除することにより、高さデータの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）中に高さデータが欠落した箇所が存在することになる。欠落した箇所の高さデータは、その周囲の高さデータにより補完される。例えば、高さデータが欠落したＸ−Ｙ平面画素の周囲の４画素の高さデータの算術平均値によって、欠落している箇所の高さデータが補完される。このようにして、高さデータが補正される。
【００５２】
次に、高さデータ補正部３３は、補正後の高さデータのばらつきを、近傍箇所における高さデータを用いて平均化する（Ｓ３０２）。上述のＳ３０１における補正処理及びＳ３０２における平均化フィルタ処理を高さデータに施すことにより、高さ補正データＺａｂ＿ｃが作成される。続いて、高さデータ補正部３３は、作成した高さ補正データＺａｂ＿ｃをＸ−Ｙ平面画素に対応させることによって、高さの２．５次元補正マップを作成する（Ｓ３０３）。高さの２．５次元補正マップとは、等間隔に区分けされたＸ−Ｙ座標平面内に割り当てられた各Ｘ−Ｙ平面画素（Ｘａ，Ｙｂ）に、その画素（Ｘａ，Ｙｂ）に対応する高さ補正データ（Ｚａｂ＿ｃ）が表されるように構成されるマップである。図１６に、高さの２．５次元補正マップの構成例を示す。図１６に示すように、高さの２．５次元補正マップは、等間隔に区切られたＸ−Ｙ平面内の各画素に高さ補正データＺａｂ＿ｃが示されている。高さの２．５次元補正マップに表される各データは、高さの２．５次元補正マップデータ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）と表される。高さの２．５次元補正マップを作成した後に、高さデータ補正部３３は、高さの２．５次元補正マップデータ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を、検査対象面Ｗ１の三次元形状データとして出力する（Ｓ３０４）。その後、高さデータ補正部３３はこのルーチンを終了する。
【００５３】
高さデータ補正部３３が出力した三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）は、良品形状データ算出部３４、傾斜変化率算出部３６、第一欠陥候補検出部３７、及び、第三欠陥候補検出部３９に入力される。良品形状データ算出部３４は、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を入力した場合に、良品形状データ算出処理を実行する。図６は、良品形状データ算出部３４が実行する良品形状データ算出処理ルーチンの流れを示すフローチャートである。
【００５４】
図６に示す良品形状データ算出処理ルーチンが起動すると、良品形状データ算出部３４は、まず、図６のＳ４０１にて、入力した三次元形状データ（Ｘａ，Ｙｂ．Ｚａｂ＿ｃ）をローパスフィルタ処理する。具体的には、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）により表される高さ補正データＺａｂ＿ｃをローパスフィルタ処理する。この場合において、図１６に示す三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）に表される高さ補正データＺａｂ＿ｃをＸ方向（横方向）及びＹ方向（縦方向）に順にサンプリングし、サンプリングした高さ補正データＺａｂ＿ｃにローパスフィルタ処理を施す。このときにおけるローパスフィルタの各種の設定値（縦横のフィルタ長）は、検査対象面Ｗ１の形状に合わせて予め設定されている。特に、製品形状面を表すような高さ補正データと考えられる部分はローパスフィルタ処理にて通過され、傷等の欠陥部分の形状を表すような高さ補正データと考えられる部分はローパスフィルタ処理にてカットされるように、各種の設定値が設定される。この場合、一般的に欠陥部分の高さの変化率は大きく、製品形状面の高さの変化率は小さい。従って、所定の変化率以下の高さ補正データのみを通過させるようにローパスフィルタを設計することで、三次元形状データ（Ｘａ，Ｙｂ．Ｚａｂ＿ｃ）から欠陥部分の形状と考えられる部分のデータが除外される。Ｓ４０１のローパスフィルタ処理によって、三次元形状データ（Ｘａ，Ｙｂ．Ｚａｂ＿ｃ）から欠陥部分と考えられるデータが除外されることにより、欠陥部分を含まない良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）が作成される。
【００５５】
次いで、良品形状データ算出部３４は、作成した良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）を出力する（Ｓ４０２）。その後、良品形状データ算出部３４は、このルーチンを終了する。
【００５６】
良品形状データ算出部３４が出力した良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）は、第一欠陥候補検出部３７に入力される。第一欠陥候補検出部３７は、高さデータ補正部３３から三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を入力し、且つ、良品形状データ算出部３４から良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）を入力した場合、第一欠陥候補検出処理を実行する。図７は、第一欠陥候補検出部３７が実行する第一欠陥候補検出処理ルーチンの流れを示すフローチャートである。
【００５７】
図７に示す第一欠陥候補検出処理ルーチンが起動すると、第一欠陥候補検出部３７は、まず、図７のＳ５０１にて、良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）と三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）とを比較し、同一のＸ−Ｙ座標平面画素（Ｘａ，Ｙｂ）における高さデータの差分δＺａｂ（＝Ｚａｂ＊−Ｚａｂ＿ｃ）を、全てのＸ−Ｙ平面画素について演算する。続いて、第一欠陥候補検出部３７は、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）の中で、Ｓ５０１にて演算した差分δＺａｂが所定の閾値δＺｔｈ以上である箇所を抽出する（Ｓ５０２）。
【００５８】
次に、第一欠陥候補検出部３７は、Ｓ５０２にて抽出した箇所をそれぞれ膨張或いは収縮させることによって、その近傍の抽出箇所と連結させる（Ｓ５０３）。これにより、差分δＺａｂが閾値δＺｔｈ以上であると考えられる連続領域が、ブロブとして作成される。続いて、第一欠陥候補検出部３７は、ブロブを表す設定量が閾値Ｓ１ｔｈ以上のブロブを検出する（Ｓ５０４）。ここで、ブロブを表す設定量は、上記のようにして作成されたブロブにより表される部分が欠陥部分であると仮定した場合に、その欠陥部分が製品として許容できる大きさであるか否かを表す量であり、例えば、ブロブのＸ方向長さ、Ｙ方向長さ、面積、体積、ブロブの長軸長、短軸長等である。また、閾値Ｓ１ｔｈは、設定量がその値以上の欠陥部分は欠陥部分として許容することができず、設定量がその値未満である欠陥部分は欠陥部分として許容することができる値として予め定められる。従って、設定量が閾値Ｓ１ｔｈ以上であるブロブは、それが許容できない程度の大きさの欠陥部分である可能性が高い。また、設定量が閾値Ｓ１ｔｈ未満であるブロブは、単なるノイズであって欠陥部分でないか、若しくは許容できる程度の大きさの欠陥部分である可能性が高い。
【００５９】
次に、第一欠陥候補検出部３７は、Ｓ５０４にて検出したブロブを、三次元形状に基づく欠陥候補ＤＺとして設定し（Ｓ５０５）、続いて、三次元形状に基づく欠陥候補ＤＺを出力する（Ｓ５０６）。その後、第一欠陥候補検出部３７は、このルーチンを終了する。このようにして、本実施形態においては、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）とその三次元形状データを基にして算出した良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）とを比較することによって、検査対象面Ｗ１の三次元形状に基づく欠陥候補ＤＺが検出される。
【００６０】
また、図２に示すように２．５次元マップ作成部３２が出力した反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）は、良品反射強度データ算出部３５に入力される。良品反射強度データ算出部３５は、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を入力した場合、良品反射強度データ算出処理を実行する。図８は、良品反射強度データ算出部３５が実行する良品反射強度データ算出処理ルーチンの流れを示すフローチャートである。
【００６１】
図８に示す良品反射強度データ算出処理ルーチンが起動すると、良品反射強度データ算出部３５は、まず、図８のＳ６０１にて、入力した反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）をローパスフィルタ処理する。具体的には、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）により表される反射強度データαａｂをローパスフィルタ処理する。この場合において、図１４に示す反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）に表される反射強度データαａｂをＸ方向（横方向）及びＹ方向（縦方向）に順にサンプリングし、サンプリングした反射強度データαａｂにローパスフィルタ処理を施す。このときにおけるローパスフィルタの各種の設定値（縦横のフィルタ長）は、検査対象面Ｗ１の形状に合わせて予め設定されている。特に、製品形状面における反射強度データと考えられる部分はローパスフィルタ処理にて通過され、傷等の欠陥部分における反射強度データと考えられる部分はローパスフィルタ処理にてカットされるように、各種の設定値が設定される。この場合、一般的に欠陥形状面の反射強度データの変化率は大きく、製品形状面の反射強度データの変化率は小さい。従って、所定の変化率以下の反射強度データのみを通過させるようにローパスフィルタを設計することで、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）から欠陥部分の反射強度と考えられる部分のデータが除外される。Ｓ６０１のローパスフィルタ処理によって、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）から欠陥部分と考えられるデータが除外されることにより、欠陥部分における反射強度データを含まない良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）が作成される。
【００６２】
次いで、良品反射強度データ算出部３５は、作成した良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）を出力する（Ｓ６０２）。その後、良品反射強度データ算出部３５は、このルーチンを終了する。
【００６３】
良品反射強度データ算出部３５が出力した良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）は、第二欠陥候補検出部３８に入力される。また、第二欠陥候補検出部３８には、２．５次元マップ作成部３２が出力した反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）も入力される。第二欠陥候補検出部３８は、良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）及び反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を入力した場合、第二欠陥候補検出処理を実行する。図９は、第二欠陥候補検出部３８が実行する第二欠陥候補検出処理ルーチンの流れを示すフローチャートである。
【００６４】
図９に示す第二欠陥候補検出処理ルーチンが起動すると、第二欠陥候補検出部３８は、まず、図９のＳ７０１にて、良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）と反射強度データ（Ｘａ，Ｙｂ，αａｂ）とを比較し、同一のＸ−Ｙ座標平面画素（Ｘａ，Ｙｂ）における反射強度データの差分δαａｂ（＝αａｂ＊−αａｂ）を、全てのＸ−Ｙ平面画素について演算する。続いて、第二欠陥候補検出部３８は、反射強度データ（Ｘａ，Ｙｂ．αａｂ）の中で、Ｓ７０１にて演算した差分δαａｂが所定の閾値δαｔｈ以上である箇所を抽出する（Ｓ７０２）
【００６５】
次に、第二欠陥候補検出部３８は、Ｓ７０２にて抽出した箇所をそれぞれ膨張或いは収縮させることによって、その近傍の抽出箇所と連結させる（Ｓ７０３）。これにより、差分δαａｂが閾値δαｔｈ以上であると考えられる連続領域が、ブロブとして作成される。続いて、第二欠陥候補検出部３８は、ブロブを表す設定量が閾値Ｓ２ｔｈ以上のブロブを検出する（Ｓ７０４）。ここで、ブロブを表す設定量は、例えば、上記のようにして作成されたブロブにより表される部分が欠陥部分であると仮定した場合に、その欠陥部分が製品として許容できる大きさであるか否かを表す量であり、例えば、ブロブのＸ方向長さ、Ｙ方向長さ、面積、ブロブの長軸長、短軸長、或いは、そのブロブにおける反射強度である。また、閾値Ｓ２ｔｈは、設定量がその値以上の欠陥部分は欠陥部分として許容することができず、設定量がその値未満である欠陥部分は欠陥部分として許容することができる値として予め定められる。従って、設定量が閾値Ｓ２ｔｈ以上であるブロブは、それが許容できない程度の大きさの欠陥部分である可能性が高い。また、設定量が閾値Ｓ２ｔｈ未満であるブロブは、単なるノイズであって欠陥部分でないか、若しくは許容できる程度の大きさの欠陥部分である可能性が高い。
【００６６】
次に、第二欠陥候補検出部３８は、Ｓ７０４にて検出したブロブを、反射強度に基づく欠陥候補Ｄαとして設定し（Ｓ７０５）、続いて、反射強度に基づく欠陥候補Ｄαを出力する（Ｓ７０６）。その後、第二欠陥候補検出部３８は、このルーチンを終了する。このようにして、本実施形態においては、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）と良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）とを比較することによって、検査対象面Ｗ１の反射強度に基づく欠陥候補Ｄαが検出される。
【００６７】
また、上述したように、高さデータ補正部３３が出力した三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）は、傾斜変化率算出部３６に入力される。傾斜変化率算出部３６は、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を入力した場合、傾斜変化率算出処理を実行する。図１０は、傾斜変化率算出部３６が実行する傾斜変化率算出処理ルーチンの流れを示すフローチャートである。
【００６８】
図１０に示す傾斜変化率算出処理ルーチンが起動すると、傾斜変化率算出部３６は、まず図１０のＳ８０１にて、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）の隣接する３点に囲まれた微小面の法線ベクトルを、全ての微小面について演算する。次いで、傾斜変化率算出部３６は、隣接する法線ベクトルのなす角を、全ての法線ベクトルについて演算する（Ｓ８０２）。続いて、傾斜変化率算出部３６は、演算した全てのなす角のそれぞれを、傾斜変化率βｉとして出力する（Ｓ８０３）。その後、傾斜変化率算出部３６は、このルーチンを終了する。このように、傾斜変化率算出部３６は、検査対象面Ｗ１内の微小面とそれに隣接する面が、相対的にどのていど角度変化しているかを表す量を、傾斜変化率βｉとして算出する。
【００６９】
傾斜変化率算出部３６が出力した傾斜変化率βｉは、第三欠陥候補検出部３９に入力される。また、上述したように、第三欠陥候補検出部３９には、高さデータ補正部３３が出力した三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）も入力される。第三欠陥候補検出部３９は、傾斜変化率βｉ及び三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を入力した場合、第三欠陥候補検出処理を実行する。図１１は、第三欠陥候補検出部３９が実行する第三欠陥候補検出処理ルーチンの流れを示すフローチャートである。
【００７０】
図１１に示す第三欠陥候補検出処理ルーチンが起動すると、第三欠陥候補検出部３９は、まず、図１１のＳ９０１にて、入力した傾斜変化率βｉ及び三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）に基づいて、傾斜変化率の２．５次元マップを作成する。傾斜変化率の２．５次元マップとは、等間隔に区分けされたＸ−Ｙ座標平面内に割り当てられた各Ｘ−Ｙ平面画素（Ｘａ，Ｙｂ）に、その画素（Ｘａ，Ｙｂ）に対応する傾斜変化率βａｂが表されるように構成されるマップである。図１７に、傾斜変化率の２．５次元マップの構成例を示す。図１７に示すように、傾斜変化率の２．５次元マップは、等間隔に区切られたＸ−Ｙ平面内の各画素に、その画素における傾斜変化率が示されている。なお、図１７に示される傾斜変化率の２．５次元マップにおけるＸ座標Ｘａ及びＹ座標Ｙｂによって表されるＸ−Ｙ平面画素（Ｘａ，Ｙｂ）は、三次元形状データの隣接する３点に囲まれた面の中心点である。この傾斜変化率の２．５次元マップに表される各データは、傾斜変化率の２．５次元マップデータ（Ｘａ，Ｙｂ，βａｂ）と表される。
【００７１】
次いで、第三欠陥候補検出部３９は、傾斜変化率の２．５次元マップデータ（Ｘａ，Ｙｂ，βａｂ）の中で、傾斜変化率βａｂが閾値βｔｈ以上である箇所を抽出する（Ｓ９０２）。続いて、第三欠陥候補検出部３９は、Ｓ９０２にて抽出した箇所をそれぞれ膨張或いは収縮させることによって、その近傍の抽出箇所と連結させる（Ｓ９０３）。これにより、傾斜変化率βａｂが閾値βｔｈ以上であると考えられる連続領域が、ブロブとして作成される。
【００７２】
次に、第三欠陥候補検出部３９は、ブロブを表す設定量が閾値Ｓ３ｔｈ以上のブロブを検出する（Ｓ９０４）。ここで、ブロブを表す設定量は、上記のようにして作成されたブロブにより表される部分が欠陥部分であると仮定した場合に、その欠陥部分が製品として許容できる大きさであるか否かを表す量であり、例えば、ブロブのＸ方向長さ、Ｙ方向長さ、面積、ブロブの長軸長、短軸長等である。また、閾値Ｓ３ｔｈは、設定量がその値以上の欠陥部分は欠陥部分として許容することができず、設定量がその値未満である欠陥部分は欠陥部分として許容することができる値として予め定められる。従って、設定量が閾値Ｓ３ｔｈ以上であるブロブは、それが許容できない程度の大きさの欠陥部分である可能性が高い。また、設定量が閾値Ｓ３ｔｈ未満であるブロブは、単なるノイズであって欠陥部分でないか、若しくは許容できる程度の大きさの欠陥部分である可能性が高い。
【００７３】
次に、第三欠陥候補検出部３９は、Ｓ９０４にて検出したブロブを、傾斜変化率に基づく欠陥候補Ｄβとして設定し（Ｓ９０５）、続いて、傾斜変化率に基づく欠陥候補Ｄβを出力する（Ｓ９０６）。その後、第三欠陥候補検出部３９は、このルーチンを終了する。このようにして、本実施形態においては、検査対象面Ｗ１の傾斜変化率に基づく欠陥候補Ｄβが検出される。
【００７４】
以上の説明からわかるように、第一欠陥候補検出部３７は、検査対象面Ｗ１の三次元形状（具体的には高さ）に基づく欠陥候補ＤＺを検出し、第二欠陥候補検出部３８は、検査対象面Ｗ１の反射強度に基づく欠陥候補Ｄαを検出し、第三欠陥候補検出部３９は、検査対象面Ｗ１の傾斜変化率に基づく欠陥候補Ｄβを検出する。検出されたそれぞれの欠陥候補ＤＺ，Ｄα、Ｄβに関する情報は、欠陥判定部４０に入力される。欠陥判定部４０は、これらの欠陥候補ＤＺ，Ｄα，Ｄβに関する情報を入力した場合、欠陥判定処理を実行する。図１２は、欠陥判定部４０が実行する欠陥判定処理ルーチンの流れを示すフローチャートである。
【００７５】
図１２に示す欠陥判定処理ルーチンが起動すると、欠陥判定部４０は、まず、図１２のＳ１００１にて、各欠陥候補ＤＺ，Ｄα，ＤβのＸ−Ｙ平面における位置合わせを行う。これにより、Ｘ−Ｙ平面内にて、各欠陥候補ＤＺ，Ｄα，Ｄβの位置が重ね合わされる。次いで、欠陥判定部４０は、Ｘ−Ｙ平面内にていずれかの欠陥候補ＤＺ，Ｄα，Ｄβが位置する部分、或いは、２つ以上の欠陥候補が重ね合わさって位置する部分を、欠陥ブロブＫとして抽出する（Ｓ１００２）。そして、欠陥判定部４０は、Ｓ１００２にて抽出した欠陥ブロブＫを、欠陥部分として判定する（Ｓ１００３）。欠陥部分として判定された欠陥ブロブＫは、検査対象面Ｗ１内での位置がわかるように、モニタ５０に表示される。その後、欠陥判定部４０は、このルーチンを終了する。なお、Ｓ１００３の判定を行うにあたり、抽出した欠陥ブロブＫの特徴量を、各種の欠陥の特徴量と比較し、特徴量が閾値以上であるブロブのみを、欠陥部分であると判定してもよい。
【００７６】
以上のように、本実施形態に係る欠陥検出装置１は、検査対象面Ｗ１にレーザー光を照射する照射部２２と、検査対象面Ｗ１に照射されたレーザー光の反射光を受光する受光部２３と、受光部２３にて受光した反射光に関する情報（具体的には、反射光の受光タイミング）に基づいて、検査対象面Ｗ１の三次元形状を表す三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を算出する三次元形状データ算出部（計測処理部３１、２．５次元マップ作成部３２、高さデータ補正部３３）と、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）をローパスフィルタ処理することにより、三次元形状データのうち欠陥部分の形状と考えられるデータが除外された良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）を算出する良品形状データ算出部３４と、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）と良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）とを比較することにより、検査対象面Ｗ１の三次元形状に基づく欠陥候補ＤＺを検出する第一欠陥候補検出部３７と、を備える。
【００７７】
本実施形態に係る欠陥検出装置１によれば、検査対象面Ｗ１の三次元形状データをローパスフィルタ処理することによって、良品形状データが算出される。つまり、測定点群データを補正処理した三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）から、マスターデータである良品形状データ（Ｘａ，Ｙｂ，Ｚａｂ＊）が作成される。よって、ローパスフィルタのフィルタ長を適切に設定することによって、形状のばらつきを残しつつ、欠陥部分のみを除去した良品形状データを得ることができる。こうして得られた良品形状データには、個々の検査対象物の形状のばらつきが反映される。そして、形状のばらつきが反映された良品形状データと元の三次元形状データとを比較することによって、形状のばらつきに影響されることのない精度の良い欠陥部分の検出を実現することができる。
【００７８】
また、本実施形態に係る欠陥検出装置１は、受光部２３にて受光した反射光の強度を表す反射強度データαｉの２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を算出する反射強度データ算出部としての２．５次元マップ作成部３２と、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）をローパスフィルタ処理することにより、欠陥部分における反射強度と考えられるデータが除外された良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）を算出する良品反射強度データ算出部３５と、反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）と良品反射強度データ（Ｘａ，Ｙｂ，αａｂ＊）を比較することにより、検査対象面Ｗ１の反射強度に基づく欠陥候補Ｄαを検出する第二欠陥候補検出部３８と、を備える。
【００７９】
検査対象面Ｗ１上に欠陥が形成されている場合、欠陥部分における反射強度は、欠陥部分でない部分における反射強度とは異なる可能性がある。従って、検査対象面Ｗ１の三次元形状のみならず、検査対象面Ｗ１の反射強度に基づいても、欠陥候補を検出することができる。本実施形態においては、三次元形状に基づく欠陥候補ＤＺに加え、反射強度に基づく欠陥候補Ｄαが検出される。従って、２つの手法により得られる欠陥候補を用いて、より精度良く、真の欠陥部分を検出することができる。
【００８０】
さらに、本実施形態に係る欠陥検出装置１は、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）に基づいて、検査対象面Ｗ１の傾斜変化率βｉを算出する傾斜変化率算出部３６と、傾斜変化率βｉに基づいて作成される傾斜変化率の２．５次元マップデータ（Ｘａ，Ｙｂ，βａｂ）に基づいて、検査対象面Ｗ１の傾斜変化率に基づく欠陥候補Ｄβを検出する第三欠陥候補検出部３９と、を備える。そして欠陥判定部４０は、第一欠陥候補検出部３７が検出した検査対象面Ｗ１の三次元形状に基づく欠陥候補ＤＺ、第二欠陥候補検出部３８が検出した検査対象面Ｗ１の反射強度に基づく欠陥候補Ｄα、及び、第三欠陥候補検出部３９が検出した検査対象面の傾斜変化率に基づく欠陥候補Ｄβ、に基づいて、検査対象面Ｗ１上における欠陥部分の有無を判断する。
【００８１】
検査対象面Ｗ１上に欠陥が形成されている場合、欠陥部分における傾斜変化率は、欠陥部分でない部分における傾斜変化率とは異なる場合がある。従って、傾斜変化率に基づいても欠陥候補を検出することができる、本実施形態においては、三次元形状に基づく欠陥候補ＤＺ、反射強度に基づく欠陥候補Ｄαに加え、検査対象面Ｗ１の傾斜変化率に基づく欠陥候補Ｄβが検出される。従って、これら複数の情報に基づく欠陥候補を用いて、より一層精度良く、真の欠陥部分を検出することができる。また、いずれかの欠陥候補検出部では検出できなかった欠陥候補が、他の欠陥候補検出部で検出されることもある。このため、欠陥部分の検出漏れをより一層効果的に防止することができる。
【００８２】
また、本実施形態において、三次元形状データ算出部は、受光部にて受光した反射光に関する情報に基づいて、検査対象面の三次元形状を表す測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を算出する計測処理部３１と、計測処理部３１が算出した測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を基にして高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）を作成する２．５次元マップ作成部３２と、２．５次元マップ作成部３２にて作成した高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）を反射強度の２．５次元マップデータ（Ｘａ，Ｙｂ，αａｂ）を参照して補正することにより、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を算出する高さデータ補正部３３と、を備える。すなわち、本実施形態に係る三次元形状データ作成部（計測処理部３１、２．５次元マップ作成部３２、高さデータ補正部３３）は、受光部２３にて受光した反射光に関する情報に基づいて、検査対象面Ｗ１の三次元形状を表す測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を算出し、算出した測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を反射強度データ（Ｘａ，Ｙｂ，αａｂ）を参照して補正することにより、三次元形状データ（Ｘａ，Ｙｂ，Ｚａｂ＿ｃ）を算出する。これによれば、測定点群データ（Ｘｉ，Ｙｉ，Ｚｉ）を基にして作成された高さの２．５次元マップデータ（Ｘａ，Ｙｂ，Ｚａｂ）が反射強度データ（Ｘａ，Ｙｂ，αａｂ）により補正される。具体的には、反射強度データが小さい部分における測定点群データの信頼性が低いので、そのような信頼性の低い部分の測定点群データに対応する高さの２．５次元マップデータが削除される。そして、削除された部分のデータは、それに隣接するデータによって補完される。このように測定点群データ（高さの２．５次元マップデータ）を補正して三次元形状データを算出し、算出した三次元形状データを欠陥候補の検出に利用することにより、より精度良く、検査対象面の三次元形状に基づく欠陥候補を検出することができる。
【００８３】
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されるべきものではない。例えば上記実施形態においては、検査対象面Ｗ１の三次元形状を得るために、ＴＯＦ方式のレーザースキャンを実施しているが、検査対象面Ｗ１の三次元形状を取得できる方式であれば、他の方式を採用してもよい。例えば、レーザー光等を利用した三角測量の原理によって、検査対象面Ｗ１の三次元形状を取得してもよい。このように、本発明は、その趣旨を逸脱しない限りにおいて、変形可能である。
【符号の説明】
【００８４】
１…欠陥検出装置、１０…ワーク移動装置、２０…表面形状測定部、２１…測定ヘッド、２２…照射部、２２１…レーザー光源、２２２…光学系、２３…受光部、３０…制御装置、３１…計測処理部（三次元形状データ算出部）、３２…２．５次元マップ作成部（三次元形状データ算出部、反射強度データ算出部）、３３…高さデータ補正部（三次元形状データ算出部）、３４…良品形状データ算出部、３５…良品反射強度データ算出部、３６…傾斜変化率算出部、３７…第一欠陥候補検出部、３８…第二欠陥候補検出部、３９…第三欠陥候補検出部、４０…欠陥判定部、５０…モニタ、ＤＺ…三次元形状に基づく欠陥候補、Ｄα…反射強度に基づく欠陥候補、Ｄβ…傾斜変化率に基づく欠陥候補、Ｗ１…検査対象面
【図１】
2017181263.tif 000003
【図２】
2017181263.tif 000004
【図３】
2017181263.tif 000005
【図４】
2017181263.tif 000006
【図５】
2017181263.tif 000007
【図６】
2017181263.tif 000008
【図７】
2017181263.tif 000009
【図８】
2017181263.tif 000010
【図９】
2017181263.tif 000011
【図１０】
2017181263.tif 000012
【図１１】
2017181263.tif 000013
【図１２】
2017181263.tif 000014
【図１３】
2017181263.tif 000015
【図１４】
2017181263.tif 000016
【図１５】
2017181263.tif 000017
【図１６】
2017181263.tif 000018
【図１７】
2017181263.tif 000019