(57)【要約】【課題】  多数枚の透光性基板ＯＢの検査を短時間でできるようにする。【解決手段】  複数のガラス基板ＯＢの一部に対してライン状の光を照射し、このライン状の光が照射される設定枚数のガラス基板ＯＢを検査対象ブロックとする。検査対象ブロック内のガラス基板ＯＢがカメラ２１の被写界深度内に入るように、治具１１の位置を調整して撮影する。撮影画面における輝度データに基づいて、検査対象ブロック内に欠陥が存在するガラス基板ＯＢがあるか否かを判定し、欠陥が存在するガラス基板ＯＢがある場合には、カメラ位置をガラス基板ＯＢの法線方向に細かく切り替えて撮影し、カメラ位置に対する輝度値と関連する値の変化曲線から欠陥が存在するガラス基板ＯＢを判別する。【選択図】  図１
2011158318.tif 000002
【特許請求の範囲】
【請求項１】
複数の透光性基板を、その基板面の法線方向に沿って所定間隔に平行に並べてセットする治具と、
前記治具にセットされた複数の透光性基板に対して光を照射する光照射器と、
被写界深度が前記所定間隔よりも広く、前記光照射器により光が照射されている前記透光性基板を前記法線方向から撮影し、撮影により得られた画像データを出力するカメラと、
前記治具と前記カメラとの相対位置が前記法線方向に変化するように前記治具あるいは前記カメラを移動させることにより、前記治具にセットされた複数の透光性基板における前記カメラの被写界深度内に入る範囲を前記法線方向に変化させる移動手段と、
前記治具にセットされた透光性基板のうち前記カメラの被写界深度内に入る複数の透光性基板を１つの検査対象ブロックとして、前記検査対象ブロックを順次切り替えるように前記移動手段を制御するとともに、前記検査対象ブロックを切り替えるたびに前記カメラの出力する画像データを取得する撮影制御手段と、
前記撮影制御手段により取得された画像データに基づいて、前記検査対象ブロックごとに、検査対象ブロック内の透光性基板に存在する欠陥を検出する欠陥検出手段と
を備えたことを特徴とする透光性基板検査装置。
【請求項２】
前記光照射器は、前記治具にセットされた複数の透光性基板のうち前記検査対象ブロック内の透光性基板に対して、前記法線方向の直角方向から光を照射することを特徴とする請求項１記載の透光性基板検査装置。
【請求項３】
前記撮影制御手段は、前記カメラと前記光照射器との相対位置関係を保ったまま、前記治具を前記カメラに対して前記法線方向に移動させることにより、前記検査対象ブロックを切り替えるとともに前記切り替えられた検査対象ブロック内の透光性基板に光が照射されるようにしたことを特徴とする請求項２記載の透光性基板検査装置。
【請求項４】
前記欠陥検出手段により前記検査対象ブロック内の透光性基板に存在する欠陥が検出された場合、前記検査対象ブロック内の透光性基板から、前記欠陥が存在する透光性基板を判別する欠陥基板判別手段を備えたことを特徴とする請求項１ないし請求項３の何れか一項記載の透光性基板検査装置。
【請求項５】
前記欠陥基板判別手段は、
前記移動手段を制御して、前記欠陥が検出された検査対象ブロックに対して前記カメラが撮影する位置を前記法線方向に複数通りに切り替えるブロック内撮影位置切替手段と、
前記各撮影位置において前記カメラが出力した画像データを取得し、取得した画像データに基づいて前記欠陥が存在する透光性基板を判別する基板判別用画像データ処理手段と
を備えたことを特徴とする請求項４記載の透光性基板検査装置。
【請求項６】
前記ブロック内撮影位置切替手段は、前記治具と前記光照射器との相対位置関係を保ったまま、前記カメラを前記治具に対して前記法線方向に移動させることにより、前記カメラが撮影する位置を切り替えることを特徴とする請求項５記載の透光性基板検査装置。
【請求項７】
前記カメラが出力する画像データは、前記カメラの撮像素子を構成する画素の撮影画面上における座標位置と輝度値を表すデータであり、
前記基板判別用画像データ処理手段は、
前記輝度値が基準値以上となる高輝度画素の集合体の輝度値と関連する値を、前記欠陥が存在する透光性基板を判別するためのパラメータ値として算出するパラメータ値算出手段を備え、
前記カメラの撮影位置の変化に対する、前記パラメータ値算出手段により算出された前記パラメータ値の変化特性に基づいて前記欠陥が存在する透光性基板を判別することを特徴とする請求項５または請求項６記載の透光性基板検査装置。
【請求項８】
前記パラメータ値算出手段は、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域内における高輝度画素の輝度値の合計と、前記四角形の画素数との比を前記パラメータ値として算出することを特徴とする請求項７記載の透光性基板検査装置。
【請求項９】
前記パラメータ値算出手段は、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域の中心から等角度間隔で放射方向に延びた複数のライン上の高輝度画素の輝度値の合計値と、前記各ライン上の高輝度画素の画素数との比をパラメータ値として算出することを特徴とする請求項７記載の透光性基板検査装置。
【請求項１０】
前記基板判別用画像データ処理手段は、
前記取得した画像データに基づいて前記透光性基板に存在する欠陥の形状が線状であるか塊状であるかを判定する欠陥形状判定手段を備え、
前記パラメータ値算出手段は、前記透光性基板に存在する欠陥の形状が線状であると判定された場合には、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域内における高輝度画素の輝度値の合計と、前記四角形の画素数との比を前記パラメータ値として算出し、前記透光性基板に存在する欠陥の形状が塊状であると判定された場合には、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域の中心から等角度間隔で放射方向に延びた複数のライン上の高輝度画素の輝度値の合計値と、前記各ライン上の高輝度画素の画素数との比をパラメータ値として算出することを特徴とする請求項７記載の透光性基板検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ガラス基板等の透光性基板の欠陥をカメラ撮影により検出する検査装置に関する。
【背景技術】
【０００２】
従来から、ガラス基板等の透光性基板に、基板面の法線方向に対して直角な方向から光りを照射し、基板面の法線方向からカメラにより撮影を行って、撮影画像データを処理することにより透光性基板の表面に欠陥（キズや異物付着）が存在するか否かを検査する検査装置が知られている。このような検査装置としては、例えば、特許文献１に提案されている。この検査装置では、検査対象となる１枚の透光性基板にシート状のレーザ光を照射し、基板の表面に形成された欠陥からの散乱光や反射光を、カメラにより光点として撮影することで欠陥を検出している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２７４１７３号公報
【発明の概要】
【０００４】
しかしながら、従来の検査装置は、基板を１枚ずつ検査しているため、多数枚の基板を検査するのに時間がかかり検査効率が悪いという問題がある。
【０００５】
本発明は、上記問題に対処するためになされたもので、多数枚の透光性基板を短時間で検査できるようにすることを目的とする。
【０００６】
上記目的を達成するために、本発明の特徴は、複数の透光性基板（ＯＢ）を、その基板面の法線方向に沿って所定間隔に平行に並べてセットする治具（１１）と、前記治具にセットされた複数の透光性基板に対して光を照射する光照射器（５０）と、被写界深度が前記所定間隔よりも広く、前記光照射器により光が照射されている前記透光性基板を前記法線方向から撮影し、撮影により得られた画像データを出力するカメラ（２１）と、前記治具と前記カメラとの相対位置が前記法線方向に変化するように前記治具あるいは前記カメラを移動させることにより、前記治具にセットされた複数の透光性基板における前記カメラの被写界深度内に入る範囲を前記法線方向に変化させる移動手段（１０，２０）と、前記治具にセットされた透光性基板のうち前記カメラの被写界深度内に入る複数の透光性基板を１つの検査対象ブロックとして、前記検査対象ブロックを順次切り替えるように前記移動手段を制御するとともに、前記検査対象ブロックを切り替えるたびに前記カメラの出力する画像データを取得する撮影制御手段（６０，Ｓ１０４，Ｓ１２６，Ｓ１２８，Ｓ１５２）と、前記撮影制御手段により取得された画像データに基づいて、前記検査対象ブロックごとに、検査対象ブロック内の透光性基板に存在する欠陥を検出する欠陥検出手段（６０，Ｓ２００，Ｓ１３６）とを備えたことにある。
【０００７】
本発明においては、複数の透光性基板が基板面の法線方向に沿って所定間隔に平行に並ぶように治具にセット（保持）される。この複数の透光性基板は、光照射器から光が照射された状態で基板の法線方向からカメラにより撮影される。カメラは、被写界深度が透光性基板の配置間隔よりも広く設定されているため、複数の透光性基板を被写界深度内（ピントが合う範囲）に入れることができる。従って、複数の透光性基板の欠陥を１つの撮影画面内に重ねて映し出すことができる。そこで、本発明においては、カメラの被写界深度内に入る複数の透光性基板を１つの検査対象ブロックとしている。
【０００８】
撮影制御手段は、治具にセットされた透光性基板のうちカメラの被写界深度内に入る複数の透光性基板を１つの検査対象ブロックとして、検査対象ブロックを順次切り替えるように移動手段を制御するとともに、検査対象ブロックを切り替えるたびに前記カメラの出力する画像データを取得する。例えば、治具にセットされた複数の透光性基板を、カメラの被写界深度内に入る枚数分の透光性基板を１つのブロックとして複数ブロックに分割し、移動手段を制御してカメラと治具との相対位置を変化させて検査対象ブロックを順次切り替えるとともに、検査対象ブロックを切り替えるたびにカメラの出力する画像データを取得する。従って、撮影制御手段が取得する画像データは、検査対象ブロック内の複数の透光性基板に欠陥が存在する場合、その欠陥を重ねて映し出した撮影画像のデータとなる。
【０００９】
欠陥検出手段は、撮影制御手段により取得された画像データに基づいて、検査対象ブロックごとに、検査対象ブロック内の透光性基板に存在する欠陥を検出する。つまり、複数枚の透光性基板を透視撮影して得た画像データを使って、検査対象ブロックごとに欠陥が存在する透光性基板があるか否かを判定する。このため、多数枚の透光性基板をブロック単位で短時間にて検査することができる。ブロック単位の検査で欠陥が検出されない場合には、その検査対象ブロック内の透光性基板の全てを検査合格にすることができるため、特に、透光性基板の欠陥発生率が低い場合には、非常に有効なものとなる。また、複数ブロックの透光性基板を治具にセットした状態で、検査対象ブロックを切り替えるため、一度に多数枚の透光性基板を治具にセットしておくことができ、透光性基板のセット時間（取り付け、取り外し時間）を短縮することができる。この結果、検査効率を向上させることができる。
【００１０】
本発明の他の特徴は、前記光照射器は、前記治具にセットされた複数の透光性基板のうち前記検査対象ブロック内の透光性基板に対して、前記法線方向の直角方向から光を照射することにある。
【００１１】
本発明によれば、検査対象ブロック内の透光性基板のみに対して光を照射するため、検査対象とならない透光性基板から散乱光等がカメラに入射しない。従って、画像データにノイズがのりにくく、透光性基板の欠陥を精度良く検出することができる。
【００１２】
本発明の他の特徴は、前記撮影制御手段は、前記カメラと前記光照射器との相対位置関係を保ったまま、前記治具を前記カメラに対して前記法線方向に移動させることにより、前記検査対象ブロックを切り替えるとともに前記切り替えられた検査対象ブロック内の透光性基板に光が照射されるようにしたことにある。
【００１３】
本発明によれば、治具を法線方向に移動させるだけで、次の検査対象ブロックの透光性基板がカメラの被写界深度内に入り、かつ、そのブロックの透光性基板に光が照射されるようになる。従って、光照射器を移動する必要がなく、検査装置の制御システムをシンプルにすることができる。
【００１４】
本発明の他の特徴は、前記欠陥検出手段により前記検査対象ブロック内の透光性基板に存在する欠陥が検出された場合、前記検査対象ブロック内の透光性基板から、前記欠陥が存在する透光性基板を判別する欠陥基板判別手段（Ｓ３００）を備えたことにある。
【００１５】
本発明によれば、欠陥検出手段により検査対象ブロック内の透光性基板に存在する欠陥が検出された場合、欠陥基板判別手段が、検査対象ブロック内の透光性基板から欠陥が存在する透光性基板を判別する。従って、治具にセットされた全ての透光性基板に対して、個々に欠陥の有無を検査することができる。また、検査対象ブロックにおいて欠陥が検出された場合にのみ、その検査対象ブロック内における複数の透光性基板から欠陥が存在する透光性基板を判別すればよいため、多数枚の透光性基板の検査を短時間にて実施することができる。
【００１６】
本発明の他の特徴は、前記欠陥基板判別手段（Ｓ３００）は、前記移動手段（２０）を制御して、前記欠陥が検出された検査対象ブロックに対して前記カメラが撮影する位置を前記法線方向に複数通りに切り替えるブロック内撮影位置切替手段（Ｓ３０８，Ｓ３２２）と、前記各撮影位置において前記カメラが出力した画像データを取得し、取得した画像データに基づいて前記欠陥が存在する透光性基板を判別する基板判別用画像データ処理手段（Ｓ３１６，Ｓ３１８，Ｓ４００）とを備えたことにある。
【００１７】
本発明においては、ブロック内撮影位置切替手段が、移動手段を制御して欠陥が検出された検査対象ブロックに対してカメラが撮影する位置を法線方向に複数通りに切り替える。そして、基板判別用画像データ処理手段が、各撮影位置においてカメラが出力した画像データを取得し、取得した画像データに基づいて欠陥が存在する透光性基板を判別する。例えば、撮影位置の変化に対する画像データの変化特性を捉えることで、検査対象ブロック内における複数の透光性基板から欠陥が存在する透光性基板を判別する。これにより、欠陥が存在する透光性基板を精度よく判別できる。
【００１８】
本発明の他の特徴は、前記ブロック内撮影位置切替手段は、前記治具と前記光照射器との相対位置関係を保ったまま、前記カメラを前記治具に対して前記法線方向に移動させることにより、前記カメラが撮影する位置を切り替えることにある。
【００１９】
本発明によれば、カメラを法線方向に移動させるだけで、欠陥が検出された検査対象ブロック内の透光性基板に光が照射された状態で、カメラの撮影位置を切り替えることができる。従って、光照射器を移動する必要がなく、検査装置の制御システムをシンプルにすることができる。
【００２０】
本発明の他の特徴は、前記カメラが出力する画像データは、前記カメラの撮像素子を構成する画素の撮影画面上における座標位置と輝度値を表すデータであり、前記基板判別用画像データ処理手段は、前記輝度値が基準値以上となる高輝度画素の集合体の輝度値と関連する値を、前記欠陥が存在する透光性基板を判別するためのパラメータ値として算出するパラメータ値算出手段（Ｓ６００〜Ｓ６４０，Ｓ７１８，Ｓ７２４，Ｓ７３８，Ｓ７６８，Ｓ７７６，Ｓ７９０）を備え、前記カメラの撮影位置の変化に対する、前記パラメータ値算出手段により算出された前記パラメータ値の変化特性に基づいて前記欠陥が存在する透光性基板を判別する（Ｓ８０６，Ｓ８１２，Ｓ８１４〜Ｓ８１６）ことにある。
【００２１】
本発明においては、基板判別用画像データ処理手段は、パラメータ値算出手段を備えており、このパラメータ値算出手段が、輝度値が基準値以上となる高輝度画素の集合体の輝度値と関連する値を、欠陥が存在する透光性基板を判別するためのパラメータ値として算出する。基板判別用画像データ処理手段は、カメラの撮影位置の変化に対するパラメータ値の変化特性を作成し、このパラメータ値の変化特性に基づいて欠陥が存在する透光性基板を判別する。欠陥が生じている部分においては、欠陥が生じていない部分に比べて、撮影画面における輝度値が大きく異なる。従って、輝度値と関連する値をパラメータ値とすることで、欠陥が存在する透光性基板を精度良く判別することができる。例えば、パラメータ値がピーク（極大、極小）となるカメラの撮影位置を求めることで、この撮影位置から欠陥が存在する透光性基板を特定することができる。
【００２２】
本発明の他の特徴は、前記パラメータ値算出手段は、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域内における高輝度画素の輝度値の合計と、前記四角形の画素数との比を前記パラメータ値として算出する（Ｓ６００〜Ｓ６１６，Ｓ７６８，Ｓ７７６，Ｓ７９０）ことにある。
【００２３】
本発明によれば、透光性基板に存在する欠陥が線状である場合に適したパラメータ値を算出することができる。
【００２４】
本発明の他の特徴は、前記パラメータ値算出手段は、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域の中心から等角度間隔で放射方向に延びた複数のライン上の高輝度画素の輝度値の合計値と、前記各ライン上の高輝度画素の画素数との比をパラメータ値として算出する（Ｓ６００〜Ｓ６４０，Ｓ７１８，Ｓ７２４，Ｓ７３８）ことにある。
【００２５】
本発明によれば、透光性基板に存在する欠陥が塊状である場合に適したパラメータ値を算出することができる。
【００２６】
本発明の他の特徴は、前記基板判別用画像データ処理手段は、前記取得した画像データに基づいて前記透光性基板に存在する欠陥の形状が線状であるか塊状であるかを判定する欠陥形状判定手段（Ｓ６１８〜Ｓ６２２）を備え、前記パラメータ値算出手段は、前記透光性基板に存在する欠陥の形状が線状であると判定された場合には、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域内における高輝度画素の輝度値の合計と、前記四角形の画素数との比を前記パラメータ値として算出し、前記透光性基板に存在する欠陥の形状が塊状であると判定された場合には、前記輝度値が基準値以上となる高輝度画素の集合体を撮影画面上において最小面積の四角形で囲んだ領域の中心から等角度間隔で放射方向に延びた複数のライン上の高輝度画素の輝度値の合計値と、前記各ライン上の高輝度画素の画素数との比をパラメータ値として算出することにある。
【００２７】
本発明によれば、欠陥形状判定手段が、透光性基板に存在する欠陥の形状が線状であるか塊状であるかを判定し、パラメータ値算出手段が、欠陥の形状に適したパラメータ値を算出するため、欠陥が存在する透光性基板の判別精度をさらに向上させることができる。
【００２８】
尚、上記説明において、括弧内に示した符号は、発明の理解を助けるものであり、発明の各構成要件を前記符号によって規定される実施形態に限定させるものではない。
【図面の簡単な説明】
【００２９】
【図１】実施形態に係る透光性基板検査装置のシステム構成図である。
【図２】透光性基板のブロックおよび被写界深度の位置変化を表す説明図である。
【図３】画像データから作成した撮影画像を表す図である。
【図４Ａ】基板検査ルーチン（メインルーチン）を表すフローチャートである。
【図４Ｂ】基板検査ルーチン（メインルーチン）を表すフローチャートである。
【図５】欠陥判定用画像データ処理ルーチンを表すフローチャートである。
【図６】基板判別ルーチンを表すフローチャートである。
【図７Ａ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｂ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｃ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｄ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｅ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｆ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｇ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｈ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｉ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｊ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図７Ｋ】基板判別用画像データ処理ルーチンを表すフローチャートである。
【図８】欠陥検出画素に番号ｔを付与する処理を説明する説明図である。
【図９】欠陥検出画素にグループ番号ｇｘを付与する処理を説明する説明図である。
【図１０】欠陥検出画素にグループ番号ｇｙを付与する処理を説明する説明図である。
【図１１】欠陥検出画素にグループ番号ｇを付与する処理を説明する説明図である。
【図１２】画像データから欠陥の中心座標を算出する処理を説明する説明図である。
【図１３】画像データから欠陥のパラメータ値を算出する際に選択するラインを説明する説明図である。
【図１４】カメラ位置毎の画像における欠陥を同一欠陥ごとにグループ化する処理を説明する説明図である。
【図１５】カメラ位置に対するパラメータ値の変化を表すグラフである。
【図１６】変形例に係る透光性基板検査装置のシステム構成図である。
【発明を実施するための形態】
【００３０】
以下、本発明の一実施形態について図面を用いて説明する。図１は、実施形態に係る透光性基板検査装置１の概略システム構成図である。この透光性基板検査装置１（以下、単に検査装置１と呼ぶ）は、透光性のガラス基板ＯＢを検査対象物とし、ガラス基板ＯＢにキズが形成されている、あるいは、異物が付着しているといった欠陥を検出するものである。本実施形態のガラス基板ＯＢは、平面視で長方形の平板である。
【００３１】
検査装置１は、複数のガラス基板ＯＢをセット（保持）する治具１１と、治具１１を固定する治具ステージ１２と、治具ステージ１２をガラス基板ＯＢの法線方向（ガラス基板ＯＢの板面と直交する方向：以下、単に法線方向と呼ぶ）に移動させる治具移動機構１０と、治具１１にセットされたガラス基板ＯＢを撮影するカメラ２１と、カメラ２１を固定するカメラステージ２２と、カメラステージ２２を法線方向に移動させるカメラ移動機構２０と、ガラス基板ＯＢに対して光を照射する光照射器５０と、検査処理を実行するコントローラ６０とを備えている。
【００３２】
治具１１は、複数のガラス基板ＯＢを、板面が互いに向かい合うように、法線方向に沿って等間隔、かつ、平行になるように並べて保持するものである。この治具１１は、複数のガラス基板ＯＢをセットした状態で治具ステージ１２に固定される。治具移動機構１０は、法線方向に中心軸が向けられたスクリューロッド１３と、スクリューロッド１３を回転させるモータ１４（以下、治具移動モータ１４と呼ぶ）とを備えている。スクリューロッド１３は、一端がステージ基台４０に立設された支持壁４１に回転可能に支持され、他端が治具移動モータ１４の出力軸に連結される。治具移動モータ１４は、ステージ基台４０と一体的に形成されたモータ台(図示略）に固定されている。治具ステージ１２には、その内部にスクリューロッド１３と螺合するナット(図示略）が形成されている。治具ステージ１２は、スクリューロッド１３の軸線方向への移動が許容され、かつ、スクリューロッド１３の軸線回りの回転が不能となるようにステージ基台４０上に配置される。従って、治具移動機構１０は、治具移動モータ１４によりスクリューロッド１３を回転させ、このスクリューロッド１３の回転により治具ステージ１２を法線方向に移動させるねじ送り機構を構成したものである。
【００３３】
カメラ移動機構２０は、法線方向に中心軸が向けられたスクリューロッド２３と、スクリューロッド２３を回転させるモータ２４（以下、カメラ移動モータ２４と呼ぶ）とを備えている。スクリューロッド２３は、一端がステージ基台４０に立設された支持壁４２に回転可能に支持され、他端がカメラ移動モータ２４の出力軸に連結される。カメラ移動モータ２４は、ステージ基台４０と一体的に形成されたモータ台(図示略）に固定されている。カメラ２１は、カメラステージ２２に固定される。カメラステージ２２には、その内部にスクリューロッド２３と螺合するナット(図示略）が形成されている。カメラステージ２２は、スクリューロッド２３の軸線方向への移動が許容され、かつ、スクリューロッド２３の軸線回りの回転が不能となるようにステージ基台４０上に配置される。従って、カメラ移動機構２０は、カメラ移動モータ２４によりスクリューロッド２３を回転させ、このスクリューロッド２３の回転によりカメラステージ２２を法線方向に移動させるねじ送り機構を構成したものである。また、カメラステージ２２および支持壁４２には、治具移動機構１０のスクリューロッド１３が非接触で貫通する貫通孔が形成されている。
【００３４】
尚、本実施形態における治具移動機構１０およびカメラ移動機構２０が本発明の移動手段に相当するが、何れか一方の移動機構１０，２０だけを動作させれば、カメラ２１と治具１１との法線方向の相対位置を変化させることができるため、移動手段としては必ずしも両方の移動機構１０，２０を備える必要はない。
【００３５】
治具移動モータ１４内には、同モータ１４が所定角度回転するたびに回転検出用パルス信号を出力するエンコーダ１４ａが組み込まれている。エンコーダ１４ａから出力される回転検出用パルス信号は、治具移動位置検出回路３１に出力される。回転検出用パルス信号は、治具移動モータ１４の回転方向を識別するために互いにπ／２だけ位相のずれたＡ相信号とＢ相信号とで構成される。治具移動位置検出回路３１は、エンコーダ１４ａから出力される回転検出用パルス信号のパルス数を治具移動モータ１４の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値から治具ステージ１２の法線方向の移動位置（以下、治具位置と呼ぶ）を検出し、治具位置を表したデジタルデータをコントローラ６０と治具移動モータ制御回路３２に出力する。
【００３６】
治具移動位置検出回路３１におけるカウント値の初期値は、電源投入時にコントローラ６０の指示によって設定される。すなわち、コントローラ６０は、電源投入時に、治具移動モータ制御回路３２に治具ステージ１２の原点位置への移動、および、治具移動位置検出回路３１に初期設定を指示する。この指示により、治具移動モータ制御回路３２は、治具移動モータ１４を回転させて治具ステージ１２を原点位置に移動させる。この原点位置は、治具移動モータ１４によって駆動される治具ステージ１２の駆動限界位置である。治具移動位置検出回路３１は、この治具ステージ１２の移動中、エンコーダ１４ａからの回転検出用パルス信号を入力し続けている。そして、治具ステージ１２が原点位置まで達して治具移動モータ１４の回転が停止すると、治具移動位置検出回路３１はエンコーダ１４ａからの回転検出用パルス信号の入力停止を検出して、カウント値を「０」にリセットする。このとき、治具移動位置検出回路３１は、治具移動モータ制御回路３２に出力停止のための信号を出力し、これにより、治具移動モータ制御回路３２は治具移動モータ１４への駆動信号の出力を停止する。その後、治具移動モータ１４が駆動された際には、治具移動位置検出回路３１は、回転検出用パルス信号のパルス数を治具移動モータ１４の回転方向に応じてカウントアップまたはカウントダウンし、そのカウント値に基づいて治具位置を計算し、治具位置を表したデジタルデータを治具移動モータ制御回路３２およびコントローラ６０に出力し続ける。
【００３７】
治具移動モータ制御回路３２は、コントローラ６０の指示により、治具移動モータ１４を駆動制御して、治具ステージ１２を法線方向へ移動させる。具体的には、治具移動モータ制御回路３２は、コントローラ６０によって指定される治具位置への移動が指示されたときに、治具移動位置検出回路３１によって検出される治具位置を用いて治具移動モータ１４の回転を制御し、検出される治具位置がコントローラ６０から指定された治具位置に等しくなるまで治具移動モータ１４を回転させる。
【００３８】
カメラ移動モータ２４内にも、カメラ移動モータ２４の回転を検出して、前記エンコーダ１４ａと同様な回転検出用パルス信号を出力するエンコーダ２４ａが組み込まれている。エンコーダ２４ａから出力される回転検出用パルス信号は、カメラ移動位置検出回路３３に出力される。カメラ移動位置検出回路３３は、エンコーダ２４ａから出力される回転検出用パルス信号のパルス数をカメラ移動モータ２４の回転方向に応じてカウントアップ又はカウントダウンし、そのカウント値からカメラステージ２２の法線方向の移動位置（以下、カメラ位置と呼ぶ）を検出し、カメラ位置を表したデジタルデータをコントローラ６０とカメラ移動モータ制御回路３４に出力する。
【００３９】
カメラ移動位置検出回路３３におけるカウント値の初期値は、電源投入時にコントローラ６０の指示によって設定される。すなわち、コントローラ６０は、電源投入時に、カメラ移動モータ制御回路３４にカメラステージ２２の原点位置への移動、および、カメラ移動位置検出回路３３に初期設定を指示する。この指示により、カメラ移動モータ制御回路３４は、カメラ移動モータ２４を回転させてカメラステージ２２を原点位置に移動させる。この原点位置は、カメラ移動モータ２４によって駆動されるカメラステージ２２の駆動限界位置である。カメラ移動位置検出回路３３は、このカメラステージ２２の移動中、エンコーダ２４ａからの回転検出用パルス信号を入力し続けている。そして、カメラステージ２２が原点位置まで達してカメラ移動モータ２４の回転が停止すると、カメラ移動位置検出回路３３はエンコーダ２４ａからの回転検出用パルス信号の入力停止を検出して、カウント値を「０」にリセットする。このとき、カメラ移動位置検出回路３３は、カメラ移動モータ制御回路３４に出力停止のための信号を出力し、これにより、カメラ移動モータ制御回路３４はカメラ移動モータ２４への駆動信号の出力を停止する。その後、カメラ移動モータ２４が駆動された際には、カメラ移動位置検出回路３３は、回転検出用パルス信号のパルス数をカメラ移動モータ２４の回転方向に応じてカウントアップまたはカウントダウンし、そのカウント値に基づいてカメラ位置を計算し、カメラ位置を表したデジタルデータをカメラ移動モータ制御回路３４およびコントローラ６０に出力し続ける。
【００４０】
カメラ移動モータ制御回路３４は、コントローラ６０の指示により、カメラ移動モータ２４を駆動制御して、カメラステージ２２を法線方向へ移動させる。具体的には、カメラ移動モータ制御回路３４は、コントローラ６０によって指定されるカメラ位置への移動が指示されたときに、カメラ移動位置検出回路３３によって検出されるカメラ位置を用いてカメラ移動モータ２４の回転を制御し、検出されるカメラ位置がコントローラ６０から指定されたカメラ位置に等しくなるまでカメラ移動モータ２４を回転させる。
【００４１】
ステージ基台４０上方には、光照射器５０が設けられる。光照射器５０は、光源５１と、光源５１を駆動する照射光源駆動回路５２と、光源５１から照射された光をライン状（帯状）の光にするスリット板５３とを備えている。照射光源駆動回路５２は、コントローラ６０から光照射開始指令を入力すると光源５１に電力を供給して光源５１を点灯し、コントローラ６０から光照射停止指令を入力すると光源５１への電力供給を停止して光源５１を消灯する。また、照射光源駆動回路５２は、光源５１を点灯する際には、コントローラ６０にて指定された強度の光が光源５１から照射されるように通電量を調整する。
【００４２】
スリット板５３は、基板検査時における治具１１にセットされた複数のガラス基板ＯＢの上端面から少し離れた位置に設けられる。スリット板５３には、その中央に長方形のスリット開口５３ａが形成されている。光源５１から照射された光は広がるが、光源５１からスリット板５３までの距離を長くすることで、スリット開口５３ａを通過する光は、スリット開口５３ａの幅（法線方向の長さ）と同じ幅のガラス基板ＯＢの板面と平行なライン状の光となる。尚、スリット開口５３ａと光源５１との位置関係は、スリット開口５３ａを通過した光の向きが、法線方向に対して直角な方向となるように、つまり、ガラス基板ＯＢの板面と平行となるように設定されている。以下、法線方向に対して直角な方向を板面方向と呼ぶ。また、スリット開口５３ａの長さ(図１の奥行き方向の長さ）は、ガラス基板ＯＢの長さ(図１の奥行き方向の長さ）と同程度、あるいは、やや大きく設定されており、ガラス基板ＯＢの全面にわたって光が照射されるようになっている。
【００４３】
スリット開口５３ａの幅は、スリット開口５３ａを通過したライン状の光が、治具１１にセットされた複数のガラス基板ＯＢの一部となる設定枚数のガラス基板ＯＢに照射されるように設定されている。また、スリット開口５３ａの幅（つまり、ライン状の光の幅）は、カメラ２１の被写界深度と同程度、あるいは、やや小さい値に設定されている。
【００４４】
光源５１およびスリット板５３は、ステージ基台４０に対して相対位置が変化しないように本体フレーム（図示略）に固定されている。従って、治具ステージ１２を法線方向に移動させることにより、治具１１にセットされた複数のガラス基板ＯＢに照射される光の位置が法線方向に移動する。
【００４５】
尚、光照射器５０は、ライン状の光をガラス基板ＯＢに対して板面方向に照射できるものであれば、色々な構成を採用することができる。例えば、ＬＥＤを一列に並べたものを光源５１として、その光源５１から照射された光をスリット開口５３ａを通過させるようにしてもよい。また、レーザ光をシリンドリカルレンズを通過させることでライン状の光を作り、このライン状の光をガラス基板ＯＢに直接照射するようにしてもよい。
【００４６】
カメラ２１は、撮影方向が法線方向に向くようにカメラステージ２２に固定され、治具１１にセットされたガラス基板ＯＢの板面を撮影する。カメラ２１は、被写界深度がライン状の光の幅と同じかやや大きい値になるようにレンズのＮＡ（開口数）が設定されている。カメラ２１は、コントローラ６０に接続され、コントローラ６０から撮影指令を入力すると、内蔵したＣＣＤ（またはＣＭＯＳ）の撮像素子の画素が出力する輝度に基づく信号から輝度のデジタルデータを作成し、このデジタルデータを画素位置のｘ，ｙ座標データに対応付けてコントローラ６０に出力する。
【００４７】
コントローラ６０は、ＣＰＵ、ＲＯＭ、ＲＡＭを備えたマイクロコンピュータを主要部とした電子制御装置であり、各種のデータ（後述する画像データ等）を記憶するメモリ６０ａを備えている。また、コントローラ６０には、作業者が各種設定値や処理等を指示するための入力装置６１と、作業者に対して各種の設定状況や検査結果等を視覚的に知らせるための表示装置６２とが接続されている。
【００４８】
コントローラ６０は、作業者が入力装置６１を使って検査開始指令を入力すると、後述する基板検査ルーチンを開始し、基板検査ルーチンにしたがって照射光源駆動回路５２、治具移動モータ制御回路３２、カメラ移動モータ制御回路３４、カメラ２１に指令を出力する。また、カメラ２１から出力されるデータを入力してメモリ６０ａに記憶し、メモリ６０ａに記憶したデータを処理することによりガラス基板ＯＢを検査する。そして、データ処理して得られた検査結果を表示装置６２に表示する。
【００４９】
コントローラ６０のメモリ６０ａには、基板検査ルーチンを実施するにあたって必要となる以下の設定値が記憶されている。
治具位置：Ｐ（１），Ｐ（２），Ｐ（３）・・・Ｐ（ｎmax）
カメラ位置：Ｃ（１），Ｃ（２），Ｃ（３）・・・Ｃ（ｍmax）
光強度：Ｉｎ（１），Ｉｎ（２），Ｉｎ（３）・・・Ｉｎ（ｋmax）
【００５０】
治具１１にセットされた複数のガラス基板ＯＢは、設定枚数のガラス基板ＯＢを１つの検査単位としてグループ分けされている。このグループ分けされた１つの検査単位（設定枚数のガラス基板ＯＢ）をブロックと呼ぶ。図２に示すように、治具１１にセットされた複数のガラス基板ＯＢは、その先頭から設定枚数ごとに第１ブロックＢＬ１、第２ブロックＢＬ２、第３ブロックＢＬ３・・・というように分けられる。各ブロックの幅（法線方向の距離）は、カメラ２１の被写界深度と同程度、あるいは、やや小さく設定されている。従って、カメラ２１の被写界深度内にブロック内のガラス基板ＯＢを全て入れることができるようになっている。
【００５１】
光照射器５０は、スリット板５３を通過したライン状の光が１つのブロックのみを照射するようにスリット開口５３ａの幅（法線方向の距離）が設定されている。つまり、スリット開口５３ａの幅は、ブロックの幅と等しく設定されている。ガラス基板ＯＢの検査は、後述するようにブロック単位にて行われ、光照射器５０からの光が照射されるブロックが検査対象ブロックとなる。検査対象ブロックは、治具１１を法線方向に移動させることにより切り替えられる。従って、治具位置Ｐ（ｎ）は、検査対象ブロックを指定するものとなる。尚、図２においては、分かりやすくするために、１ブロックを構成するガラス基板ＯＢの枚数を８枚としているが、実際には、もっと多くすることができ、例えば、２０枚程度にすることが可能である。
【００５２】
カメラ位置Ｃ（ｍ）は、被写界深度の中心位置（即ち、最もピントが合う位置）がライン状の光が照射される範囲の中心になる位置と、その位置を中心として前後に同じ数だけ設定されている。本実施形態においては、図２に簡易検査時として示すように、１つの検査対象ブロック（この例では、第２ブロックＢＬ２の検査時）に対して３つのカメラ位置Ｃ（１），Ｃ（２），Ｃ（３）が設定されており、カメラ位置Ｃ（２）がカメラ２１の被写界深度の中心位置がライン状光の範囲の中心位置（つまり、検査対象ブロックの法線方向の中心位置）となるように設定されている。従って、カメラ位置Ｃ（２）においては、カメラ２１の被写界深度内に検査対象ブロックの全てのガラス基板ＯＢが入るようになる。尚、図２における矢印Ｈの範囲がカメラ２１の被写界深度（ピントが合う範囲）を表している。
【００５３】
光強度Ｉｎ（ｋ）は、光源５１から照射される光の強度を指定する設定値である。
【００５４】
次に、基板検査処理について説明する。図４Ａ〜図４Ｂは、コントローラ６０により実行される基板検査ルーチンを表す。基板検査ルーチンは、コントローラ６０のＲＯＭ内に制御プログラムとして記憶されている。作業者は、基板検査を行うにあたって、まず、治具１１に複数のガラス基板ＯＢをセットする。そして、ガラス基板ＯＢのセットされた治具１１を治具ステージ１２にセットして、入力装置６１を使って検査開始指示を入力する。コントローラ６０は、この検査開始指示が入力されると、基板検査ルーチンを開始する。
【００５５】
コントローラ６０は、ステップＳ１００にて基板検査ルーチンを開始すると、ステップＳ１０２において、変数ｎ，変数ｍ，変数ｋの値をそれぞれ「１」に設定する。この変数ｎ，変数ｍ，変数ｋは、治具位置，カメラ位置，光強度を特定する変数である。続いて、ステップＳ１０４において、治具移動モータ制御回路３２に対して、治具１１を治具位置Ｐ（ｎ）に移動させる移動指令を出力する。治具移動モータ制御回路３２は、この移動指令にしたがって、治具移動位置検出回路３１により検出される治具位置を入力しながら、治具位置が治具位置Ｐ（ｎ）に一致するまで治具移動モータ１４の回転を制御して治具１１（治具ステージ１２）を移動させる。こうして第１ブロックＢＬ１が、検査対象ブロックとなり、光照射器５０からライン状光が照射される位置に位置決めされる。尚、この時点ではライン状光は照射されていない。
【００５６】
続いて、コントローラ６０は、ステップＳ１０６，Ｓ１０８において、治具移動位置検出回路３１により検出される治具位置を入力し、治具位置が治具位置Ｐ（ｎ）に一致するまで待機する。コントローラ６０は、治具位置が治具位置Ｐ（ｎ）に一致したと判断すると（Ｓ１０８：Ｙｅｓ）、続くステップＳ１１０において、カメラ移動モータ制御回路３４に対して、カメラ２１をカメラ位置Ｃ（ｍ）に移動させる移動指令を出力する。カメラ移動モータ制御回路３４は、この移動指令にしたがって、カメラ移動位置検出回路３３により検出されるカメラ位置を入力しながら、カメラ位置がカメラ位置Ｃ（ｍ）に一致するまでカメラ移動モータ２４の回転を制御してカメラ２１（カメラステージ２２）を移動させる。
【００５７】
続いて、コントローラ６０は、ステップＳ１１２，Ｓ１１４において、カメラ移動位置検出回路３３により検出されるカメラ位置を入力し、カメラ位置がカメラ位置Ｃ（ｍ）に一致するまで待機する。コントローラ６０は、カメラ位置がカメラ位置Ｃ（ｍ）に一致したと判断すると（Ｓ１１４：Ｙｅｓ）、続くステップＳ１１８において、カメラ２１に対して撮影指令を出力する。カメラ２１は、この撮影指令にしたがって、撮像素子が出力する輝度に応じた信号から輝度のデジタルデータを作成し、このデジタルデータを画素位置を表すｘ，ｙ座標データに対応付けてコントローラ６０に出力する。カメラ２１が出力するデータ（画素位置ごとの輝度を表すデータ）を画像データと呼ぶが、このステップＳ１１８で得られる画像データは、光照射器５０からライン状の光が照射されていない状態での画像データである。以下、光照射器５０からライン状の光が照射されていない状態で撮影したときの画像データを画像データＤ’（ｘ，ｙ）と呼び、ライン状の光が照射されている状態で撮影したときの画像データを画像データＤ（ｘ，ｙ）と呼ぶ。コントローラ６０は、続くステップＳ１２０において、カメラ２１の出力する画像データＤ’（ｘ，ｙ）を入力しメモリ６０ａに記憶する。
【００５８】
続いて、コントローラ６０は、ステップＳ１２２において、照射光源駆動回路５２に対して光照射開始指令を出力するとともに、ステップＳ１２４において、光強度Ｉｎ（ｋ）を指示する。照射光源駆動回路５２は、この指令にしたがって、光源５１から光強度Ｉｎ（ｋ）の光が照射されるように設定された通電量で光源５１を駆動する。こうして、第１ブロックＢＬ１にライン状の光が照射される。続いて、コントローラ６０は、ステップＳ１２６において、カメラ２１に対して撮影指令を出力し、ステップＳ１２８において、カメラ２１から出力される画像データＤ（ｘ，ｙ）を入力してメモリ６０ａに記憶する。
【００５９】
続いて、コントローラ６０は、ステップＳ２００において欠陥判定用画像データ処理を行う。このステップＳ２００の欠陥判定用画像データ処理は、画素ごとの輝度値が閾値以上であるか否かを判断することにより、検査対象ブロック内においてガラス基板ＯＢの何れかに欠陥が存在するか否かを判定する処理である。このステップＳ２００の欠陥判定用画像データ処理については、図５に示すフローチャート（サブルーチン）を用いて後述することとし、先に基板検査ルーチンにおける全体的な処理を説明する。
【００６０】
コントローラ６０は、ステップＳ２００にて欠陥判定用画像データ処理を行うと、続くステップＳ１３２において、光強度を設定する変数ｋが最大値ｋmaxと等しくなっているか否かを判断する。この処理が最初に実行されるときには、変数ｋは「１」に設定されているため、コントローラ６０は、「Ｎｏ」と判定して、ステップＳ１３４で変数ｋの値を「１」だけインクリメントし、その処理をステップＳ１２４に戻して上述した処理を繰り返す。従って、光源５１から照射される光の強度が１段階づつ変更（増加あるいは減少）され、その都度、カメラ撮影（Ｓ１２６）、画像データＤ（ｘ，ｙ）のメモリ６０ａへの記憶（Ｓ１２８）、欠陥判定用画像データ処理（Ｓ２００）が行われる。尚、本実施形態においては、光の強度を３段階としているため、ｋmaxが「３」に設定されている。
【００６１】
こうした処理が繰り返され、全ての光強度での撮影と欠陥判定用画像データ処理が完了して変数ｋが最大値ｋmaxに達すると（Ｓ１３２：Ｙｅｓ）、コントローラ６０は、その処理をステップＳ１３６に進めて、検査対象ブロックにおいて欠陥が存在しているか否かを判断する。ステップＳ２００における欠陥判定用画像データ処理においては、検査対象ブロックにおける欠陥の有無を判定するが、ブロック内のどのガラス基板ＯＢに欠陥が存在しているのか判別していない。つまり、検査対象ブロック内のガラス基板ＯＢ全体に対して欠陥が存在するか否かを判定している。従って、欠陥のあるガラス基板ＯＢが１枚でも存在すれば、ステップＳ１３６の判断は「Ｙｅｓ」となる。
【００６２】
コントローラ６０は、検査対象ブロックに欠陥が存在していないと判定した場合（Ｓ１３６：Ｎｏ）には、続くステップＳ１３８において、カメラ位置を設定する変数ｍが最大値ｍmaxと等しくなっているか否かを判断する。変数ｍが最大値ｍmaxと等しくない場合には、ステップＳ１４０において、変数ｋの値を「１」に設定し、ステップＳ１４２において、変数ｍの値を「１」だけインクリメントする。続いて、ステップＳ１４３において照射光源駆動回路５２に対して光照射停止指令を出力する。これにより、照射光源駆動回路５２は、光源５１への通電を停止して光源５１を消灯させる。
【００６３】
コントローラ６０は、ステップＳ１４３の処理を行うと、その処理をステップＳ１１０に進めて上述した処理を実行する。従って、カメラ位置がＣ（２）に切り替えられ、そのカメラ位置Ｃ（２）において、画像データＤ’（ｘ，ｙ）がメモリ６０ａに記憶される。そして、光照射器５０が駆動されるとともに光強度が１段階づつ変更され、各光強度における画像データＤ（ｘ，ｙ）がメモリ６０ａに記憶され、その都度、欠陥判定用画像データ処理が行われることになる。そして、コントローラ６０は、ステップＳ１３６において、再度、検査対象ブロックに欠陥が存在しているか否かを判断する。欠陥が存在していなければ、その処理をステップＳ１３８に進め、カメラ位置を変更して上述の処理を行う。
【００６４】
こうした処理が繰り返され、検査対象ブロックに欠陥が検出されずに変数ｍの値が最大値ｍmaxに到達すると、コントローラ６０は、その処理をステップＳ１４６に進める。ステップＳ１４６においては、治具位置を設定する変数ｎが最大値ｎmaxと等しくなっているか否かを判断する。変数ｎが最大値ｎmaxと等しくない場合には、ステップＳ１４８において、変数ｋの値を「１」に設定し、ステップＳ１５０において、変数ｍの値を「１」に設定し、ステップＳ１５２において、変数ｎの値を「１」だけインクリメントする。続いて、ステップＳ１５４において照射光源駆動回路５２に対して光照射停止指令を出力する。これにより、照射光源駆動回路５２は、光源５１への通電を停止して光源５１を消灯させる。
【００６５】
コントローラ６０は、ステップＳ１５４の処理を行うと、その処理をステップＳ１０４に進めて上述した処理を実行する。従って、治具１１が次の治具位置Ｐ（２）に移動して、第２ブロックＢＬ２が検査対象ブロックとなる。そして、カメラ位置Ｃ（１）における画像データＤ’（ｘ，ｙ）と各光強度に応じた画像データＤ（ｘ，ｙ）がメモリ６０ａに記憶され、欠陥判定用画像データ処理が行われて第２ブロックＢＬ２の欠陥の有無が判定される。欠陥が検出されなければ、カメラ位置が順次変更されていく。本実施形態においては、カメラ位置は３種類、つまり、ｍmaxが「３」に設定されている。従って、図２に示すように、１つの検査対象ブロックに対して、最大３つのカメラ位置にて撮影して欠陥の有無を判定する。複数のカメラ位置で撮影する理由は、検査対象ブロック内の欠陥の有無を精度良く判定するためであるが、カメラ２１の被写界深度の中心位置がブロックの幅方向の中心位置となる位置（この例では、カメラ位置Ｃ（２））のみの撮影で判定するようにしてもよい。
【００６６】
こうした処理が繰り返され、第２ブロックＢＬ２に対しても欠陥が検出されなかった場合には、変数ｎの値がインクリメントされて（Ｓ１５２）、第３ブロックＢＬ３に対する検査が開始される。そして、全てのブロックに対して欠陥が検出されなかった場合には、ステップＳ１４６において「Ｙｅｓ」と判定される。この場合、コントローラ６０は、ステップＳ１５６において、治具移動モータ制御回路３２に対して、治具１１をガラス基板ＯＢの交換位置まで移動させる移動指令を出力する。治具移動モータ制御回路３２は、この移動指令にしたがって、治具移動位置検出回路３１により検出される治具位置を入力しながら、治具位置がガラス基板ＯＢの交換位置に一致するまで治具移動モータ１４の回転を制御して治具１１（治具ステージ１２）を移動させる。続いて、コントローラ６０は、ステップＳ１５８において、照射光源駆動回路５２に対して光照射停止指令を出力する。これにより、照射光源駆動回路５２は、光源５１への通電を停止して光源５１を消灯する。こうして、ステップＳ１６０において、基板検査ルーチンが終了する。
【００６７】
一方、上述した処理の途中で欠陥が検出された場合（Ｓ１３６：Ｙｅｓ）には、その処理をステップＳ３００に進めて、検査対象ブロック内のガラス基板ＯＢのうち、欠陥が存在するガラス基板ＯＢを判別する処理（以下、基板判別処理と呼ぶ）を行う。このステップＳ３００の基板判別処理については、図６に示すフローチャート（サブルーチン）を用いて後述する。コントローラ６０は、基板判別処理を完了すると、その処理をステップＳ１４６に進めて、検査対象ブロックを次のブロックに変更する。欠陥の存在の有無判定（Ｓ１３６）は、１つのカメラ位置毎に行われるため、欠陥が検出された時点において、撮影していないカメラ位置が残っていても、そのカメラ位置の撮影をスキップして、基板判別処理の後、次のブロックの検査に移行する。
【００６８】
この基板検査ルーチンにおいては、１つのブロックごとにｍmax通りのカメラ位置でそれぞれｋmax通りの光強度で撮影を行い、各カメラ位置毎に欠陥の有無を判定する。この場合、カメラ２１の被写界深度内（ピントの合う範囲）に検査対象ブロックの複数のガラス基板ＯＢが入るように、ガラス基板ＯＢの間隔、および、カメラ２１のＮＡが設定されているため、一度にたくさんのガラス基板ＯＢの検査を行うことができる。このため、カメラ位置の数ｍmaxは、検査対象ブロックのガラス基板ＯＢの枚数よりも少なく設定でき、欠陥の有無を判定するために要する検査時間を短縮することができる。そして、欠陥が存在すると判定されたブロックに対しては、後述する基板判別処理によりカメラ位置を細かく変化させて撮影することで、欠陥が存在するガラス基板ＯＢおよび欠陥位置を特定する。
【００６９】
ステップＳ１２８で入力した画像データに基づいて撮影画像を視覚化すると、図３のようになる。点線で囲まれた領域がガラス基板ＯＢの撮影された領域である。また、符号Ｇ１は塊状の欠陥、符号Ｇ２は線状の欠陥を表す。ガラス基板ＯＢに欠陥（キズ、異物付着）があると、光照射器５０から照射された光は、欠陥のある個所で散乱する。このため、カメラ撮影により得られた画像データにおいては、欠陥のある位置で明るくなる。そこで、ステップＳ２００の欠陥判定用画像データ処理では、撮影画面の画素ごとに輝度値が閾値以上であるか否かを判定することにより、欠陥の有無を判定する。以下、ステップＳ２００の欠陥判定用画像データ処理について説明する。尚、上述した画像データＤ（ｘ，ｙ），画像データＤ’（ｘ，ｙ）は、各画素における輝度値を表しているため、以下、輝度値として取り扱う場合には、それらを輝度値Ｄ（ｘ，ｙ），輝度値Ｄ’（ｘ，ｙ）と呼ぶ。
【００７０】
図５は、欠陥判定用画像データ処理ルーチンを表すフローチャートである。この欠陥判定用画像データ処理ルーチンは、上述した基板検査ルーチンにおけるステップＳ２００の処理を表すサブルーチンである。
【００７１】
コントローラ６０は、ステップＳ２０１で欠陥判定用画像データ処理ルーチンを起動すると、ステップＳ２０２において、画素のｘ座標位置を表す値ｘとｙ座標位置を表す値ｙをそれぞれ「１」に設定するとともに、欠陥検出画素数を表す欠陥カウント値Ｃｏｎを「０」に設定する。続いて、ステップＳ２０４において、輝度値Ｄ（ｘ，ｙ）から輝度値Ｄ’（ｘ，ｙ）を減算した値を正規の輝度値Ｄ”（ｘ，ｙ）として設定する。つまり、光を照射して撮影したときの輝度値Ｄ（ｘ，ｙ）と光を照射せずに撮影したときの輝度値Ｄ’（ｘ，ｙ）との差を正規の輝度値Ｄ”（ｘ，ｙ）として設定する。続いて、ステップＳ２０６において、座標値ｘが最大値ｘmax（画像データのｘ座標の最大値）と等しいか否かを判断し、座標値ｘが最大値ｘmaxより小さければ（Ｓ２０６：Ｎｏ）、ステップＳ２０８において、座標値ｘを「１」だけインクリメントして、その処理をステップＳ２０４に戻す。従って、ｙ座標を固定してｘ方向に延びた１ライン分の画素の輝度値Ｄ”（ｘ，ｙ）が順番に求められることになる。
【００７２】
こうした処理が繰り返され、座標値ｘが最大値ｘmaxに達した場合には（Ｓ２０６：Ｙｅｓ）、ステップＳ２１０において、座標値ｙが最大値ｙmax（画像データのｙ座標の最大値）と等しいか否かを判断する。コントローラ６０は、座標値ｙが最大値ｙmaxより小さければ（Ｓ２１０：Ｎｏ）、ステップＳ２１２において、座標値ｘを「１」に設定し、ステップＳ２１４において、座標値ｙを「１」だけインクリメントして、その処理をステップＳ２０４に戻す。従って、ｙ座標を1つずらした１ライン分の画素の輝度値Ｄ”（ｘ，ｙ）が順番に求められることになる。
【００７３】
こうした処理が繰り返され、座標値ｙが最大値ｙmaxに達すると（Ｓ２１０：Ｙｅｓ）、全ての画素の輝度値Ｄ”（ｘ，ｙ）の算出が完了したことになる。この場合、コントローラ６０は、ステップＳ２１６において、座標値ｘと座標値ｙをそれぞれ「１」に設定する。続いて、ステップＳ２１８において、欠陥を判定するための輝度の閾値Ａを算出する。閾値Ａは、判定対象となる画素（ｘ，ｙ）の周囲の画素の輝度を平均し、その平均値に所定値αを加算して設定する。この場合、輝度の平均値の算出にあたっては、判定対象となる画素（ｘ，ｙ）を中心として、設定数（ｓ個）分だけｘ方向とｙ方向とに離れた画素で囲まれる正方形の領域の輝度の平均値を求める。輝度値Ｄ”（ｘ，ｙ）は欠陥が無い場合であっても変動する。従って、このように閾値Ａを計算することで、輝度値Ｄ”（ｘ，ｙ）の変動に応じた適切な閾値Ａを設定することができる。
【００７４】
続いて、コントローラ６０は、ステップＳ２２０において、輝度値Ｄ”（ｘ，ｙ）が閾値Ａ以上であるか否かを判断する。輝度値Ｄ”（ｘ，ｙ）が閾値Ａ以上である場合は、その画素（ｘ，ｙ）に対応する位置において、何れかのガラス基板ＯＢに欠陥が存在すると推定できる。コントローラ６０は、輝度値Ｄ”（ｘ，ｙ）が閾値Ａ以上であれば（Ｓ２２０：Ｙｅｓ）、ステップＳ２３２において、欠陥カウント値Ｃｏｎを「１」だけインクリメントする。一方、輝度値Ｄ”（ｘ，ｙ）が閾値Ａ未満であれば（Ｓ２２０：Ｎｏ）、ステップＳ２２２において、座標値ｘが最大値ｘmaxと等しいか否かを判断する。座標値ｘが最大値ｘmaxより小さければ（Ｓ２２２：Ｎｏ）、ステップＳ２２４において、座標値ｘを「１」だけインクリメントして、その処理をステップＳ２１８に戻す。従って、ｙ座標を固定してｘ方向に延びた１ライン分の画素に対して順番に欠陥の有無が判定されることになる。
【００７５】
こうした処理が繰り返され、座標値ｘが最大値ｘmaxに達した場合には（Ｓ２２６：Ｙｅｓ）、ステップＳ２２６において、座標値ｙが最大値ｙmaxと等しいか否かを判断する。コントローラ６０は、座標値ｙが最大値ｙmaxより小さければ（Ｓ２２６：Ｎｏ）、ステップＳ２２８において、座標値ｘを「１」に設定し、ステップＳ２３０において、座標値ｙを「１」だけインクリメントして、その処理をステップＳ２１８に戻す。従って、ｙ座標を1つずらした１ライン分の画素に対して順番に欠陥の有無が判定されることになる。
【００７６】
こうした処理が繰り返され、座標値ｙが最大値ｙmaxに達すると（Ｓ２２６：Ｙｅｓ）、全ての画素に対して欠陥の有無判定が完了したことになる。この場合、コントローラ６０は、ステップＳ２３４において、欠陥カウント値Ｃｏｎを光強度Ｉ（ｋ）に対応付けた欠陥カウント値Ｃｏｎ（ｋ）として記憶する。こうして欠陥カウント値Ｃｏｎ（ｋ）を記憶すると、この欠陥判定用画像データ処理ルーチンをステップＳ２３６にて抜けて、基板検査ルーチン（メインルーチン）のステップＳ１３２の処理に移行する。従って、光強度が切り替えられるたびに、欠陥判定用画像データ処理ルーチン（Ｓ２００）が実行され、その光強度Ｉ（ｋ）に対応した欠陥カウント値Ｃｏｎ（ｋ）が記憶される。
【００７７】
コントローラ６０は、基板検査ルーチンのステップＳ１３６において、欠陥カウント値Ｃｏｎ（ｋ）が１以上であれば、つまり、閾値Ａ以上となる画素が１つ以上あれば、検査対象ブロックに欠陥が存在すると判定する。その場合には、検査対象ブロックのどのガラス基板ＯＢに欠陥が存在しているのか判別するために、ステップＳ３００の基板判別処理を行う。以下、基板判別処理について説明する。
【００７８】
図６は、基板判別ルーチンを表すフローチャートである。この基板判別ルーチンは、上述した基板検査ルーチンにおけるステップＳ３００の処理を表すサブルーチンである。
【００７９】
コントローラ６０は、ステップＳ３０１で基板判別ルーチンを起動すると、ステップＳ３０２において、変数ｑの値を「１」に設定する。この変数ｑは、カメラ位置を特定する番号となる。続いて、ステップＳ３０４において、ｋmax通りの欠陥カウント値Ｃｏｎ（ｋ）のうちで最大値となる変数ｋを求める。つまり、欠陥カウント値Ｃｏｎ（１）〜欠陥カウント値Ｃｏｎ（ｋmax）のうちで、その値が最大となる変数ｋを求める。この場合、欠陥カウント値Ｃｏｎ（ｋ）が最大となる変数ｋが２つ以上あれば、大きい方のｋ、つまり、光強度が強く設定されるほうの変数ｋを選択する。続いて、コントローラ６０は、ステップＳ３０６において、その変数ｋで設定された光強度Ｉｎ（ｋ）を照射光源駆動回路５２に対して指示する。照射光源駆動回路５２は、この指令にしたがって、光源５１から光強度Ｉｎ（ｋ）の光が照射されるように設定された通電量で光源５１を駆動する。このステップＳ３０４，Ｓ３０６の処理は、欠陥検査に最適な光強度に設定する処理である。
【００８０】
続いて、コントローラ６０は、ステップＳ３０８において、カメラ移動モータ制御回路３４に対して、カメラ２１をカメラ位置Ｃｓ（ｑ）に移動させる移動指令を出力する。この移動指令を出力するにあたって、コントローラ６０のメモリ６０ａには、予め、以下のカメラ位置が記憶されている。
カメラ位置：Ｃｓ（１），Ｃｓ（２），Ｃｓ（３）・・・Ｃｓ（ｑmax）
【００８１】
上述したようにブロックごとに欠陥の有無を判定する処理においては、検査対象ブロックのガラス基板ＯＢの複数枚がカメラ２１の被写界深度内に入るようにカメラ位置を調整して撮影しているため、ガラス基板ＯＢの枚数に対して少ないカメラ位置にて検査対象ブロックの欠陥を検出できる。欠陥が検出されなければ、それで検査は終了するわけだが、欠陥が検出された場合には、欠陥が存在するガラス基板ＯＢおよび欠陥の位置を特定するために、図２に詳細検査時として示すように、カメラ位置を細かく切り替えて撮像する。このカメラ位置がカメラ位置Ｃｓ（ｑ）として指定される。カメラ位置の切り替え間隔は、治具１１に配置されるガラス基板ＯＢの配設間隔より小さく、例えば、ガラス基板ＯＢの配設間隔の１／５程度に設定されている。
【００８２】
ステップＳ３０８にて移動指令が出力されると、カメラ移動モータ制御回路３４は、カメラ位置がカメラ位置Ｃｓ（ｑ）に一致するまでカメラ移動モータ２４の回転を制御してカメラ２１（カメラステージ２２）を移動させる。この場合、変数ｑが「１」に設定されているため、カメラ２１は、カメラ移動モータ２４からカメラ２１方向に見て一番手前の位置にセットされる。続いて、コントローラ６０は、ステップＳ３１２，Ｓ３１４において、カメラ移動位置検出回路３３により検出されるカメラ位置を入力し、カメラ位置がカメラ位置Ｃｓ（ｑ）に一致するまで待機する。コントローラ６０は、カメラ位置がカメラ位置Ｃｓ（ｑ）に一致したと判断すると（Ｓ３１４：Ｙｅｓ）、続くステップＳ３１６において、カメラ２１に対して撮影指令を出力する。カメラ２１は、この撮影指令にしたがって、輝度値を画素位置に対応付けて表す画像データＤ（ｘ，ｙ）をコントローラ６０に出力する。続いて、コントローラ６０は、ステップＳ３１８において、カメラ２１の出力する画像データＤ（ｘ，ｙ）にカメラ位置Ｃｓ（ｑ）のデータを付与した画像データＤ（ｘ，ｙ，ｑ）を作成してメモリ６０ａに記憶する。
【００８３】
続いて、コントローラ６０は、ステップＳ３２０において、変数ｑが最大値ｑmaxと等しいか否かを判断する。コントローラ６０は、変数ｑが最大値ｑmaxと等しくなければ（Ｓ３２０：Ｎｏ）、ステップＳ３２２において、変数ｑの値を「１」だけインクリメントして、その処理をステップＳ３０８に戻す。従って、カメラ位置が所定距離だけ移動して、上述したカメラ撮影が行われ、そのカメラ位置における画像データＤ（ｘ，ｙ，ｑ）がメモリ６０ａに記憶される。
【００８４】
こうした処理が繰り返され、変数ｑが最大値ｑmaxに達すると（Ｓ３２０：Ｙｅｓ）、検査対象ブロックにおいて全てのカメラ位置にて画像データＤ（ｘ，ｙ，ｑ）がメモリ６０ａに記憶されたことになる。コントローラ６０は、続くステップＳ４００において、画像データＤ（ｘ，ｙ，ｑ）に基づいて基板判別用画像データ処理を行ったのち、ステップＳ３２６で基板判別ルーチンを抜け、基板検査ルーチン（メインルーチン）のステップＳ１４６の処理に移行する。以下、ステップＳ４００の基板判別用画像データ処理について説明する。
【００８５】
図７Ａ〜図７Ｋ（以下、これらを総称する場合には図７と呼ぶ）は、基板判別用画像データ処理ルーチンを表すフローチャートである。この基板判別用画像データ処理ルーチンは、上述したステップＳ４００の処理を表すサブルーチンである。
【００８６】
コントローラ６０は、ステップＳ４０１で基板判別用画像データ処理ルーチンを起動すると、ステップＳ４０２において、カメラ位置を指定する変数ｑの値を「１」に設定し、ステップＳ４０４において、画素のｘ座標位置を表す座標値ｘとｙ座標位置を表す座標値ｙとをそれぞれ「１」に設定する。続いて、ステップＳ４０６において、輝度値Ｄ（ｘ，ｙ，ｑ）から輝度値Ｄ’（ｘ，ｙ）を減算した値を正規の輝度値Ｄ”（ｘ，ｙ，ｑ）として設定する。つまり、光を照射して撮影したときの輝度値Ｄ（ｘ，ｙ，ｑ）と光を照射せずに撮影したときの輝度値Ｄ’（ｘ，ｙ）との差を正規の輝度値Ｄ”（ｘ，ｙ，ｑ）として設定する。尚、コントローラ６０は、輝度値Ｄ’（ｘ，ｙ）として、欠陥の有無を判定するときの撮影時における最後のカメラ位置での輝度値を用いる。
【００８７】
続いて、コントローラ６０は、ステップＳ４０８において、座標値ｘが最大値ｘmaxと等しいか否かを判断し、座標値ｘが最大値ｘmaxより小さければ（Ｓ４０８：Ｎｏ）、ステップＳ４１０において、座標値ｘを「１」だけインクリメントして、その処理をステップＳ４０６に戻す。従って、ｙ座標を固定してｘ方向に延びた１ライン分の画素の輝度値Ｄ”（ｘ，ｙ，ｑ）が順番に求められることになる。
【００８８】
こうした処理が繰り返され、座標値ｘが最大値ｘmaxに達した場合には（Ｓ４０８：Ｙｅｓ）、ステップＳ４１２において、座標値ｙが最大値ｙmaxと等しいか否かを判断する。コントローラ６０は、座標値ｙが最大値ｙmaxより小さければ（Ｓ４１２：Ｎｏ）、ステップＳ４１４において、座標値ｘを「１」に設定し、ステップＳ４１６において、座標値ｙを「１」だけインクリメントして、その処理をステップＳ４０６に戻す。従って、ｙ座標を1つずらした１ライン分の画素の輝度値Ｄ”（ｘ，ｙ，ｑ）が順番に求められることになる。
【００８９】
こうした処理が繰り返され、座標値ｙが最大値ｙmaxに達すると（Ｓ４１２：Ｙｅｓ）、全ての画素の輝度値Ｄ”（ｘ，ｙ，ｑ）の算出が完了する。この場合、コントローラ６０は、ステップＳ４１８において、座標値ｘと座標値ｙをそれぞれ「１」に設定するとともに、番号ｔを「１」に設定する。この番号ｔは、後述の処理でわかるように、輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ以上となる画素の一つ一つに対して、１から順番に付与される番号である。
【００９０】
続いて、コントローラ６０は、ステップＳ４２０において、欠陥を判定するための輝度の閾値Ａを算出する。閾値Ａは、上述したステップＳ２１８にて算出したように、判定対象となる画素（ｘ，ｙ，ｑ）の回りの画素の輝度を平均し、その平均値に所定値αを加算して求められる。従って、輝度値Ｄ”（ｘ，ｙ、ｑ）の変動に応じた適切な閾値Ａを設定することができる。続いて、コントローラ６０は、ステップＳ４２１において、輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ以上であるか否かを判断する。輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ以上である場合（Ｓ４２１：Ｙｅｓ）は、ステップＳ４２２において、座標値ｘをｘ（ｔ）の値に設定し、ステップＳ４２４において、座標値ｙをｙ（ｔ）の値に設定する。従って、ｘ（ｔ）およびｙ（ｔ）は、番号ｔの画素のｘ座標データおよびｙ座標データとなる。続いて、番号ｔを「１」だけインクリメントして、その処理をステップＳ４２８に進める。一方、輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ未満であれば（Ｓ４２１：Ｎｏ）、ステップＳ４２２，４２４，４２６の処理をスキップしてステップＳ４２８に移行する。
【００９１】
コントローラ６０は、ステップＳ４２８において、座標値ｘが最大値ｘmaxと等しいか否かを判断する。座標値ｘが最大値ｘmaxより小さければ（Ｓ４２８：Ｎｏ）、ステップＳ４３０において、座標値ｘを「１」だけインクリメントして、その処理をステップＳ４２０に戻す。こうした処理が繰り返され、座標値ｘが最大値ｘmaxに達した場合には（Ｓ４２８：Ｙｅｓ）、ステップＳ４３２において、座標値ｙが最大値ｙmaxと等しいか否かを判断する。コントローラ６０は、座標値ｙが最大値ｙmaxより小さければ（Ｓ４３２：Ｎｏ）、ステップＳ４３４において、座標値ｘを「１」に設定し、ステップＳ４３６において、座標値ｙを「１」だけインクリメントして、その処理をステップＳ４２０に戻す。
【００９２】
こうした処理が繰り返されることにより、輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ以上となった画素については、画素の座標位置を表すデータ（ｘ，ｙ）に番号ｔを表すデータが付与される。換言すれば、輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ以上となった画素（ｘ、ｙ）に対して、図８に示すように、検出順に番号ｔが付与される。従って、番号ｔから画素の座標（ｘ，ｙ）を特定することができる。例えば、図８に示す例では、番号１により画素の座標（１０，３）を特定することができ、番号２により画素の座標（１１，３）を特定することができる。
【００９３】
検査対象ブロックにおいては、このように番号ｔの付与された画素の座標位置に対応したガラス基板ＯＢの位置に欠陥が存在すると推定される。以下、番号ｔの付与された画素を欠陥検出画素と呼ぶ。ガラス基板ＯＢの欠陥は、複数の画素にまたがって撮影される。そこで、以下に説明するステップＳ４３８〜Ｓ５１２の処理においては、連続した欠陥検出画素を一つの欠陥として捉えるためにグループ化する。
【００９４】
コントローラ６０は、ステップＳ４３８において、変数ａの値を「１」に設定し、グループ番号ｇｘを「１」に設定する。続いて、ステップＳ４４０において、ｙ座標ｙ（ｔ）がａとなる欠陥検出画素の番号ｔを抽出する。この処理が最初に実行されるときにはａ＝１に設定されているため、ｙ（ｔ）＝１、つまり、ｙ座標が１となる全ての欠陥検出画素の番号ｔを抽出する。図８に示す例では、それに該当する欠陥検出画素は存在しないため、番号ｔは抽出できない。続いて、コントローラ６０は、ステップＳ４４２において、抽出できた番号ｔが存在するか否かを判断する。抽出できた番号ｔが存在しない場合は（Ｓ４４２：Ｎｏ）、ステップＳ４４４において、グループ番号ｇｘが付与されていないｘ座標データｘ（ｔ）が存在するか否かを判断する。この時点においては、どのｘ座標データｘ（ｔ）にもグループ番号ｇｘが付与されていないため、コントローラ６０は、「Ｙｅｓ」と判定して、ステップＳ４４６において変数ａの値を「１」だけインクリメントし、その処理をステップＳ４４０に戻す。
【００９５】
コントローラ６０は、こうした処理を繰り返し、ｙ（ｔ）＝ａとなる欠陥検出画素が存在していると判断した場合（Ｓ４４２：Ｙｅｓ）には、ステップＳ４４８において、その欠陥検出画素のｘ座標ｘ（ｔ）を抽出する。例えば、図８に示す例では、ｙ（ｔ）＝３のときに、ｔ＝１，ｔ＝２の欠陥検出画素のｘ座標であるｘ（１）＝１０，ｘ（２）＝１１が抽出される。続いて、コントローラ６０は、ステップＳ４５０において、抽出したｘ座標ｘ（ｔ）のうちの最小値を抽出する。この例では、最小値は、１番目の欠陥検出画素のｘ座標となるため、ｘ（１）＝１０となる。
【００９６】
続いて、コントローラ６０は、ステップＳ４５２において、ｘ（ｔ，ｇｘ）の値として、ステップＳ４５０で抽出したｘ座標ｘ（ｔ）を設定する。このｘ（ｔ，ｇｘ）は、ｘ座標データにグルーブ番号ｇｘを付与したデータである。この時点では、ｇｘ＝１であるため、この例では、ｘ（１，１）＝１０となる。続いて、ステップＳ４５４において、ステップＳ４４８で抽出した欠陥検出画素の中に、ｘ座標ｘ（ｔ）が（ｘ（ｔ，ｇｘ）＋１）となる欠陥検出画素が存在するか否かを判断する。つまり、ｘ方向に隣接する（連続する）欠陥検出画素が存在するか否かを判断する。図８に示す例では、ｘ座標ｘ（ｔ）が１１（＝１０＋１）となる欠陥検出画素の存在が判断される。この場合、２番目（ｔ＝２）の欠陥検出画素がそれに該当する。コントローラ６０は、続くステップＳ４５６において、ｘ座標ｘ（ｔ）が（ｘ（ｔ，ｇｘ）＋１）となる欠陥検出画素のｘ座標ｘ（ｔ）を抽出する。この例では、ｘ座標ｘ（２）＝１１が抽出される。
【００９７】
コントローラ６０は、ステップＳ４５６にてｘ座標ｘ（ｔ）を抽出すると、その処理をステップＳ４５２に戻して同様の処理を実行する。従って、ステップＳ４５２においては、グループ番号の付与されたｘ座標ｘ（２，１）の値として１１が設定される。コントローラ６０は、こうした処理を繰り返し、ステップＳ４５４において、ｘ方向に隣接する欠陥検出画素が存在しないと判断すると、その処理をステップＳ４５８に進める。ステップＳ４５８においては、ステップＳ４４８で抽出した欠陥検出画素のｘ（ｔ）が残っているか否かを判断する。つまり、ｙ座標がａとなるｘ方向に延びた１ライン分の画素において、グループ番号ｇｘを付与していない欠陥検出画素がまだ存在するか否かを判断する。グループ番号ｇｘを付与していない欠陥検出画素が存在する場合には（Ｓ４５８：Ｙｅｓ）、ステップＳ４６０において、グループ番号ｇｘを「１」だけインクリメントして、その処理をステップＳ４５０に戻し、同様の処理を実行する。これにより、ｙ座標がａとなるｘ方向に延びた１ライン分の画素において、隣接する欠陥検出画素を１グループとした単位でグループ番号ｇｘがｘ座標データに付与される。
【００９８】
コントローラ６０は、ステップＳ４５８において、グループ番号ｇｘを付与していない欠陥検出画素が存在しないと判断した場合には、ステップＳ４６１において、グループ番号ｇｘを「１」だけインクリメントして、その処理をステップＳ４４４に戻し、同様の処理を実行する。従って、ｘ座標ｘ（ｔ）にグループ番号ｇｘが付与されていない欠陥検出画素があれば、変数ａの値を「１」だけインクリメントし、その処理をステップＳ４４０に戻す。これにより、グループ番号ｇｘの付与対象となるｘ方向に延びた１ライン分の画素が、ｙ方向に１つ移動して上述した処理が行われる。
【００９９】
こうした処理が繰り返されることにより、全ての欠陥検出画素のｘ座標ｘ（ｔ）にグループ番号ｇｘが付与される。図９は、上述した処理により付与されたグループ番号ｇｘを欠陥検出画素位置に表したものである。ｘ方向に隣接する欠陥検出画素に対しては、同一のグループ番号ｇｘが付与される。
【０１００】
コントローラ６０は、全ての欠陥検出画素のｘ座標ｘ（ｔ）にグループ番号ｇｘを付与すると（Ｓ４４４：Ｎｏ）、その処理をステップＳ４６２に進める。このステップＳ４６２からステップＳ４８５の処理は、ｙ方向に延びた１ライン分の画素ごとに、隣接する欠陥検出画素に対して共通のグループ番号ｇｙを付与するものであり、上述したステップＳ４３８からステップＳ４６１の処理とは、グループ番号を付ける画素のライン方向がｙ方向になるだけで、基本的な処理は共通する。
【０１０１】
コントローラ６０は、ステップＳ４６２において、変数ｂの値を「１」に設定し、グループ番号ｇｙを「１」に設定する。続いて、ステップＳ４６４において、ｘ座標ｘ（ｔ）がｂとなる欠陥検出画素の番号ｔを抽出する。この処理が最初に実行されるときにはｂ＝１に設定されているため、ｘ（ｔ）＝１、つまり、ｘ座標が１となる全ての欠陥検出画素の番号ｔを抽出する。図８に示す例では、それに該当する欠陥検出画素は存在しないため、番号ｔは抽出できない。続いて、コントローラ６０は、ステップＳ４６６において、抽出できた番号ｔが存在するか否かを判断する。抽出できた番号ｔが存在しない場合は（Ｓ４６６：Ｎｏ）、ステップＳ４６８において、グループ番号ｇｙが付与されていないｙ座標データｙ（ｔ）が存在するか否かを判断する。この時点においては、どのｙ座標データｙ（ｔ）にもグループ番号ｇｙが付与されていないため、コントローラ６０は、「Ｙｅｓ」と判定して、ステップＳ４７０において変数ｂの値を「１」だけインクリメントし、その処理をステップＳ４６４に戻す。
【０１０２】
コントローラ６０は、こうした処理を繰り返し、ｘ（ｔ）＝ｂとなる欠陥検出画素が存在していると判断した場合（Ｓ４６６：Ｙｅｓ）には、ステップＳ４７２において、その欠陥検出画素のｙ座標ｙ（ｔ）を抽出する。例えば、図８に示す例では、ｘ（ｔ）＝６のときに、ｔ＝８，ｔ＝５６の欠陥検出画素のｙ座標であるｙ（８）＝５，ｙ（５６）＝１６が抽出される。続いて、コントローラ６０は、ステップＳ４７４において、抽出したｙ座標ｙ（ｔ）のうちの最小値を抽出する。この例では、最小値は、８番目の欠陥検出画素のｙ座標となるため、ｙ（８）＝５となる。
【０１０３】
続いて、コントローラ６０は、ステップＳ４７６において、ｙ（ｔ，ｇｙ）の値として、ステップＳ４７４で抽出したｙ座標ｙ（ｔ）を設定する。このｙ（ｔ，ｇｙ）は、ｙ座標データにグルーブ番号ｇｙを付与したデータである。この時点では、ｇｙ＝１であるため、この例では、ｙ（８，１）＝５となる。続いて、ステップＳ４７８において、ステップＳ４７２で抽出した欠陥検出画素の中に、ｙ座標ｙ（ｔ）が（ｙ（ｔ，ｇｙ）＋１）となる欠陥検出画素が存在するか否かを判断する。つまり、ｙ方向に隣接する（連続する）欠陥検出画素が存在するか否かを判断する。存在する場合には、コントローラ６０は、続くステップＳ４８０において、ｙ座標ｘ（ｔ）が（ｙ（ｔ，ｇｙ）＋１）となる欠陥検出画素のｙ座標ｙ（ｔ）を抽出して、その処理をステップＳ４７６に戻して同様の処理を実行する。
【０１０４】
コントローラ６０は、こうした処理を繰り返し、ステップＳ４７８において、ｙ方向に隣接する欠陥検出画素が存在しないと判断すると、その処理をステップＳ４８２に進める。ステップＳ４８２においては、ステップＳ４７２で抽出した欠陥検出画素が残っているか否かを判断する。つまり、ｘ座標がｂとなるｙ方向に延びた１ライン分の画素において、グループ番号ｇｙを付与していない欠陥検出画素がまだ存在するか否かを判断する。グループ番号ｇｙを付与していない欠陥検出画素が存在する場合には（Ｓ４８２：Ｙｅｓ）、ステップＳ４８４において、グループ番号ｇｙを「１」だけインクリメントして、その処理をステップＳ４７４に戻し、同様の処理を実行する。これにより、ｘ座標がｂとなるｙ方向に延びた１ライン分の画素において、隣接する欠陥検出画素を１グループとした単位でグループ番号ｇｙがｙ座標データに付与される。
【０１０５】
コントローラ６０は、ステップＳ４８２において、グループ番号ｇｙを付与していない欠陥検出画素が存在しないと判断した場合には、ステップＳ４８５において、グループ番号ｇｙを「１」だけインクリメントして、その処理をステップＳ４６８に戻し、同様の処理を実行する。従って、ｙ座標ｙ（ｔ）にグループ番号ｇｙが付与されていない欠陥検出画素があれば、変数ｂの値を「１」だけインクリメントし、その処理をステップＳ４６４に戻す。これにより、グループ番号ｇｙの付与対象となるｙ方向に延びた１ライン分の画素が、ｘ方向に１つ移動して上述した処理が行われる。
【０１０６】
こうした処理が繰り返されることにより、全ての欠陥検出画素のｙ座標ｙ（ｔ）にグループ番号ｇｙが付与される。図１０は、上述した処理により付与されたグループ番号ｇｙを欠陥検出画素位置に表したものである。ｙ方向に隣接する欠陥検出画素に対しては、同一のグループ番号ｇｙが付与される。
【０１０７】
コントローラ６０は、全ての欠陥検出画素のｙ座標ｙ（ｔ）にグループ番号ｇｙを付与すると（Ｓ４６８：Ｎｏ）、その処理をステップＳ４８６に進める。このステップＳ４８６からステップＳ５１２の処理は、グループ番号ｇｘ，ｇｙに基づいて、撮影画面の平面座標位置においてｘ方向、ｙ方向に連続する欠陥検出画素をグループ化して、座標データにグループ番号ｇを付与する処理である。
【０１０８】
コントローラ６０は、まず、ステップＳ４８６において、変数ｇｘ１の値を「１」に設定し、グループ番号ｇを「１」に設定する。続いて、ステップＳ４８８において、グループ番号ｇｘがｇｘ１となる欠陥検出画素のｘ座標データｘ（ｔ，ｇｘ）を全て抽出する。図８の例では、ｔ＝１，ｔ＝２となる欠陥検出画素のｘ座標値１０，１１が抽出される。続いて、ステップＳ４９０において、抽出されたｘ座標データｘ（ｔ，ｇｘ）が存在するか否かを判断し、存在する場合には、ステップＳ４９２において、グループ番号ｇを用いたｘ座標データｘ（ｔ，ｇ）の値をステップＳ４８８で抽出したｘ座標データｘ（ｔ，ｇｘ）の値に設定する。この例では、ｘ（１，１）＝１０，ｘ（２，１）＝１１と設定される。続いて、ステップＳ４９４において、抽出したｘ座標データｘ（ｔ，ｇｘ）の番号ｔを有する欠陥検出画素のｙ座標データｙ（ｔ，ｇｙ）を抽出する。この例では、ｙ座標データｙ（ｔ，ｇｙ）は、ｙ（１，１０）とｙ（２，１２）となる。続いて、ステップＳ４９６において、この抽出したｙ座標データｙ（ｔ，ｇｙ）のグループ番号ｇｙを有するｙ座標データｙ（ｔ，ｇｙ）を抽出する。この例では、グループ番号ｇｙがｇｙ＝１０、ｇｙ＝１２のｙ座標データｙ（ｔ，ｇｙ）が抽出される。
【０１０９】
続いて、コントローラ６０は、ステップＳ４９８において、グループ番号ｇを用いたｙ座標データｙ（ｔ，ｇ）の値を、ステップＳ４９６で抽出されたｙ座標データｙ（ｔ，ｇｙ）の値に設定する。続いて、ステップＳ５００において、抽出されたｙ座標データｙ（ｔ，ｇｙ）の番号ｔを有する欠陥検出画素のｘ座標データｘ（ｔ，ｇｘ）を抽出し、ステップＳ５０２において、抽出されたｘ座標データｘ（ｔ，ｇｘ）のグループ番号ｇｘを有する欠陥検出画素のｘ座標データｘ（ｔ，ｇｘ）を抽出する。図８の例では、左上に集中している欠陥検出画素すべてのｘ座標データｘ（ｔ，ｇｘ）が抽出されることになる。
【０１１０】
続いて、コントローラ６０は、ステップＳ５０４において、ステップＳ５０２でｘ座標データｘ（ｔ，ｇｘ）が抽出されているか否かを判断し、抽出されている場合には、その処理をステップＳ４９２に戻す。従って、図８の例では、左上に集中している欠陥検出画素すべてのｘ座標データおよびｙ座標データが、番号ｔとグループ番号ｇ（＝１）が付与されたデータに置き換えられる。
【０１１１】
コントローラ６０は、こうした処理を繰り返し、ステップＳ５０４において「Ｎｏ」と判定した場合には、ステップＳ５０６において、上述した処理において抽出したｘ座標データｘ（ｔ，ｇｘ）の全ての数（全抽出数）が設定数Ｎ（例えばＮ＝５）以上であるか否かを判断し、設定数Ｎ以上であれば、ステップＳ５０８において、グループ番号ｇの値を「１」だけインクリメントしてその処理をステップＳ５１０に進める。一方、ｘ座標データｘ（ｔ，ｇｘ）の全抽出数が設定数Ｎ未満である場合（Ｓ５０６：Ｎｏ）には、ステップＳ５０８の処理をスキップしてステップＳ５１０に移行する。つまり、このステップＳ５０６，Ｓ５０８の処理は、欠陥検出画素の集合体が小さい場合には、欠陥として取り扱わずにグループ番号ｇを付与しないようにする処理である。
【０１１２】
コントローラ６０は、ステップＳ５１０において、変数ｇｘ１の値が最大値ｇｘmaxと等しくなったか否かを判断し、変数ｇｘ１の値が最大値ｇｘmaxと等しくなければ、ステップＳ５１２において、変数ｇｘ１の値を「１」だけインクリメントして、その処理をステップＳ４８８に戻す。従って、変数ｇｘ１の値がグループ番号ｇｘの最大値を表すｇｘmaxと等しくなるまで、ステップＳ４８８〜Ｓ５１２の処理が繰り返される。
【０１１３】
コントローラ６０は、こうした処理を繰り返すことにより、グループ番号ｇｘが付与されたｘ座標データ（ｔ，ｇｘ）から、その番号ｔを有するｙ座標データｙ（ｔ，ｇｙ）を抽出し、この抽出したｙ座標データｙ（ｔ，ｇｙ）の番号ｔを有するｘ座標データ（ｔ，ｇｘ）を抽出するという処理を繰り返し、それぞれ抽出された座標データに同一のグループ番号ｇを付与することで、撮影画面上においてｘ方向とｙ方向とに連続する欠陥検出画素を１つのグループとして扱えるようにする。図１１は、このように付与されたグループ番号ｇを欠陥検出画素位置に表したものである。以下、グループ化された欠陥検出画素の集合を欠陥検出画素グループと呼ぶ。
【０１１４】
コントローラ６０は、グループ番号の付与処理が完了すると（Ｓ５１０：Ｙｅｓ）、その処理をステップＳ６００に進める。ステップＳ６００〜Ｓ６３８の処理は、欠陥検出画素グループ毎に、その中心座標と欠陥基板判別用のパラメータ値を算出する処理である。
【０１１５】
コントローラ６０は、ステップＳ６００において、グループ番号ｇを「１」に設定する。続いて、ステップＳ６０２において、ｘ座標ｘ（ｔ，ｇ）での最小値、この場合、グループ番号gが１となる欠陥検出画素グループにおけるｘ座標の最小値を求め、その値を座標ｘ（１）の値として設定する。続いて、ステップＳ６０４において、ｘ座標ｘ（ｔ，ｇ）での最大値、この場合、グループ番号gが１となる欠陥検出画素グループにおけるｘ座標の最大値を求め、その値を座標ｘ（２）の値として設定する。続いて、ステップＳ６０６において、ｙ座標ｙ（ｔ，ｇ）での最小値、この場合、グループ番号gが１となる欠陥検出画素グループにおけるｙ座標の最小値を求め、その値を座標ｙ（１）の値として設定する。続いて、ステップＳ６０８において、ｙ座標ｘ（ｔ，ｇ）での最大値、この場合、グループ番号gが１となる欠陥検出画素グループにおけるｙ座標の最大値を求め、その値を座標ｙ（２）の値として設定する。
【０１１６】
続いて、ステップＳ６１０において、座標ｘ（１）の値と座標ｘ（２）の値との中間値（ｘ（１）＋ｘ（２））／２を算出し、その値を、欠陥検出画素グループの中心におけるｘ座標ｘｃ（ｇ，ｑ）の値として設定する。続いて、ステップＳ６１２において、座標ｙ（１）の値と座標ｙ（２）の値との中間値（ｙ（１）＋ｙ（２））／２を算出し、その値を、欠陥検出画素グループの中心におけるｙ座標ｙｃ（ｇ，ｑ）の値として設定する。
【０１１７】
こうして、欠陥検出画素グループの中心座標（ｘｃ、ｙｃ）が算出されると、コントローラ６０は、ステップＳ６１４において、座標ｘ（１）、座標ｘ（２）、座標ｙ（１）、座標ｙ（２）で囲まれる領域、つまり、ｘｙ座標においてｘ＝ｘ（１）、ｘ＝ｘ（２）、ｙ＝ｙ（１）、ｙ＝ｙ（２）となる直線で囲まれる領域の画素数（ｇ）を計算する。画素数（ｇ）は、｛ｘ（２）−ｘ（１）＋１｝×｛ｙ（２）−ｙ（１）＋１｝として求められる。この画素数（ｇ）は、欠陥検出画素グループを最小面積の長方形で囲んだときの、長方形の画素数となる。欠陥検出画素グループの中心座標（ｘｃ、ｙｃ）は、視覚的に示すと図１２に示すように、最小面積の長方形で囲まれる領域の中心（対角線が交差する点）となる。
【０１１８】
続いて、コントローラ６０は、ステップＳ６１６において、欠陥検出画素グループを囲む長方形の平均輝度値Ｄave（ｇ，ｑ）を算出する。平均輝度値Ｄave（ｇ，ｑ）は、座標（ｘ（ｔ，ｇ），ｙ（ｔ，ｇ））に対応する輝度値Ｄ”（ｘ，ｙ，ｑ）の積算値を、画素数（ｇ）で除算することにより求める。つまり、欠陥検出画素グループ（初回は第１グループ）を構成する各画素の輝度値Ｄ”（ｘ、ｙ，ｑ）の合計値を、最小面積の長方形で囲まれる領域の画素数（ｇ）で除算することにより求める。
【０１１９】
続いて、コントローラ６０は、ステップＳ６１８において、平均輝度値Ｄave（ｇ，ｑ）が閾値Ｂ以上であるか否かを判断し、平均輝度値Ｄave（ｇ，ｑ）が閾値Ｂ以上である場合には、ステップＳ６２０において形状判別データＥｓ（ｇ，ｑ）の値を「０」に設定し、平均輝度値Ｄave（ｇ，ｑ）が閾値Ｂ未満である場合には、ステップＳ６２２において形状判別データＥｓ（ｇ，ｑ）の値を「１」に設定する。この形状判別データＥｓ（ｇ，ｑ）は、欠陥検出画素グループに対応する欠陥の形状が塊状であるか線状であるかを推定した結果を表すもので、Ｅｓ（ｇ，ｑ）＝０により欠陥が塊状であると推定されることを表し、Ｅｓ（ｇ，ｑ）＝１により欠陥が線状であると推定されることを表す。図１２に示すように、ガラス基板ＯＢに形成された欠陥が塊状（図１２（ａ））である場合と、線状（図１２（ｂ））である場合とでは、平均輝度値Ｄaveが大きく異なるため、ステップＳ６１８においては、平均輝度値Ｄaveに基づいて欠陥が塊状であるか線状であるかを判定する。そして、平均輝度値Ｄave（ｇ，ｑ）が閾値Ｂ以上である場合（Ｓ６１８：Ｙｅｓ）には、欠陥検出画素グループに対応する欠陥が塊状であると判定して形状判別データＥｓ（ｇ，ｑ）を「０」に設定し、平均輝度値Ｄave（ｇ，ｑ）が閾値Ｂ未満である場合（Ｓ６１８：Ｎｏ）には、欠陥検出画素グループに対応する欠陥が線状であると判定して形状判別データＥｓ（ｇ，ｑ）を「１」に設定する。
【０１２０】
コントローラ６０は、欠陥が塊状であると判定した場合（Ｓ６１８：Ｙｅｓ）には、ステップＳ６２４において、変数Ａｎの値を「１」に設定する。続いて、ステップＳ６２６において、長方形領域において、欠陥検出画素グループの中心（ｘｃ（ｇ，ｑ），ｙｃ（ｇ，ｑ））からＡｎ×４５°方向のライン上にある欠陥検出画素の座標（ｘ（ｔ，ｇ），ｙ（ｔ，ｇ））を抽出する。例えば、初回であれば、図１３に示す（１）の方向のライン上に存在する欠陥検出画素の座標（ｘ（ｔ，ｇ），ｙ（ｔ，ｇ））を抽出する。続いて、コントローラ６０は、ステップＳ６２８において、抽出した座標（ｘ（ｔ，ｇ），ｙ（ｔ、ｇ））の数、つまり、Ａｎ×４５°方向のライン上にある欠陥検出画素の数を画素数（ｇ）に設定する。続いて、ステップＳ６３０において、ライン上にある欠陥検出画素の平均輝度値ＤＬ（ｇ，Ａｎ）を算出する。平均輝度値ＤＬ（ｇ，Ａｎ）は、抽出した座標（ｘ（ｔ，ｇ），ｙ（ｔ，ｇ））に対応する輝度値Ｄ”（ｘ、ｙ，ｑ）の積算値を、画素数（ｇ）で除算することにより求める。
【０１２１】
続いて、コントローラ６０は、ステップＳ６３２において、変数Ａｎが８で有るか否かを判断する。変数Ａｎが８でない場合は、ステップＳ６３４において、変数Ａｎの値を「１」だけインクリメントして、その処理をステップＳ６２６に戻し、上述した処理を繰り返す。従って、図１３に示すように、４５°間隔となる８方向のライン上の欠陥検出画素の平均輝度値ＤＬ（ｇ，Ａｎ）が計算される。
【０１２２】
コントローラ６０は、８方向の平均輝度値ＤＬの計算が完了すると（Ｓ６３２：Ｙｅｓ）、ステップＳ６３６において、８方向の平均輝度値ＤＬ（ｇ，Ａｎ）の平均値である平均輝度値ＤＬave（ｇ，ｑ）を算出する。この平均輝度値ＤＬave（ｇ，ｑ）が、塊状の欠陥に対する平均輝度値を表すものとなる。一方、ステップＳ６１８において、欠陥が線状であると判定された場合は、これらのステップＳ６２４〜Ｓ６３６までの処理がスキップされる。
【０１２３】
続いて、コントローラ６０は、ステップＳ６３８において、グループ番号ｇが最大値ｇmaxと等しいか否かを判断し、グループ番号ｇが最大値ｇmaxと等しくない場合（Ｓ６３８：ｎｏ）には、ステップＳ６４０において、グループ番号ｇを「１」だけインクリメントして、その処理をステップＳ６０２に戻し、グループ番号ｇが最大値ｇmaxと等しくなるまで、上述した処理を繰り返す。これにより、全ての欠陥検出画素グループの中心座標（ｘｃ（ｇ，ｑ），ｙｃ（ｇ，ｑ））と、平均輝度値ＤＬave（ｇ，ｑ）あるいは平均輝度値Ｄave（ｇ，ｑ）が算出される。
【０１２４】
続いて、コントローラ６０は、ステップＳ６４２において、カメラ位置を指定する変数ｑが最大値ｑmaxに等しいか否かを判断し、変数ｑが最大値ｑmaxに等しくない場合（Ｓ６４２：Ｎｏ）には、ステップＳ６４４において、変数ｑを「１」だけインクリメントして、その処理をステップＳ４０４に戻し、変数ｑが最大位置ｑmaxに等しくなるまで、上述した処理を繰り返す。これにより、各カメラ位置で撮影した撮影画面ごとに、全ての欠陥検出画素グループの中心座標（ｘｃ（ｇ，ｑ），ｙｃ（ｇ，ｑ））と、平均輝度値ＤＬave（ｇ，ｑ）あるいは平均輝度値Ｄave（ｇ，ｑ）が算出される。続いて、コントローラ６０は、その処理をステップＳ７００に進める。
【０１２５】
ステップＳ７００〜Ｓ７９６の処理は、カメラ位置Ｃｓ（ｑ）ごとに撮影された撮影画面の間で、欠陥検出画素グループの中心座標を比較し、中心座標の差が許容値内であるものは同一の欠陥であるとして共通のシリーズ番号ｓを付与する処理である。
【０１２６】
コントローラ６０は、ステップＳ７００において、グループ番号ｇおよび、変数ｑ（カメラ位置を特定する値）の値を「１」に設定する。続いて、ステップＳ７０２において、シリーズ番号ｓを「１」に設定する。続いて、ステップＳ７０４において、形状判別データＥｓ（ｇ，ｑ）の値が「０」に設定されているか否か、つまり、カメラ位置Ｃｓ（ｑ）で撮影した撮影画面におけるグループ番号ｇの欠陥が塊状であるか否かを判断する。欠陥が塊状である場合には、その処理をステップＳ７０６に進め、欠陥が線状である場合には、その処理をステップＳ７５８に進める。ここでは、欠陥が塊状である場合から説明する。
【０１２７】
コントローラ６０は、ステップＳ７０６において、平均輝度値ＤＬave（ｓ，ｇ，ｑ）を平均輝度値ＤＬave（ｇ，ｑ）と同じ値に設定する。つまり、平均輝度値ＤＬave（ｇ，ｑ）にシリーズ番号ｓを付与したデータを、新たに平均輝度値ＤＬave（ｓ，ｇ，ｑ）として設定する。続いて、ステップＳ７０８において、変数ｇ１の値を「１」に設定する。続いて、ステップＳ７１０において、カメラ位置Ｃｓ（ｑ）における撮影画面の欠陥検出画素グループｇの中心位置のｘ座標ｘｃ（ｇ，ｑ）と、隣のカメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）との差（絶対値）を算出し、その差が予め設定した許容値Ｃ以下であるか否かを判断する。許容値Ｃ以下である場合（Ｓ７１０：Ｙｅｓ）には、続くステップＳ７１２において、ステップＳ７１０で比較した中心位置のｙ座標ｙｃ（ｇ，ｑ）とｙ座標ｙｃ（ｇ１，ｑ＋１）との差（絶対値）を算出し、その差が予め設定した許容値Ｃ以下であるか否かを判断する。
【０１２８】
コントローラ６０は、ｙ座標においても、その差が許容値Ｃ以下である場合（Ｓ７１２：Ｙｅｓ）には、ステップＳ７１４において、平均輝度値ＤＬave（ｇ１，ｑ＋１）のデータが存在するか否かを判断する。平均輝度値ＤＬave（ｇ１，ｑ＋１）のデータが存在する場合（Ｓ７１４：Ｙｅｓ）には、ステップＳ７１６において、平均輝度値ＤＬave（ｇ１，ｑ＋１）のデータにシリーズ番号ｓが付与されているか否かを判断し、シリーズ番号ｓが付与されていない場合（Ｓ７１６：Ｎｏ）には、ステップＳ７１８において、平均輝度値ＤＬave（ｓ，ｇ１，ｑ＋１）を平均輝度値ＤＬave（ｇ１，ｑ＋１）と同じ値に設定する。つまり、平均輝度値ＤＬave（ｇ１，ｑ＋１）にシリーズ番号ｓを付与したデータを、新たに平均輝度値ＤＬave（ｓ，ｇ１，ｑ＋１）として設定する。これにより、隣り合う撮影画面間において中心位置が近接する欠陥検出画素グループには、平均輝度値を表すデータに共通のシリーズ番号ｓが付与される。尚、ステップＳ７１４の処理は、隣のカメラ位置Ｃｓ（ｑ＋１）の撮影画面において中心座標が接近する欠陥検出画素グループが線状の欠陥であると判定されている可能性があるため、接近する欠陥検出画素グループの欠陥が線状であると判定されている場合に処理対象から外す処理である。
【０１２９】
コントローラ６０は、ステップＳ７１８において、平均輝度値を表すデータにシリーズ番号ｓを付与すると、その処理をステップＳ７３０に進めて、変数ｇ１の値を「１」だけインクリメントする。尚、ステップＳ７１０またはＳ７１２において、隣り合う撮影画面間において欠陥検出画素グループの中心座標が近接していないと判断した場合、あるいは、ステップＳ７１４において、平均輝度値ＤＬave（ｇ１，ｑ＋１）のデータが存在しないと判断した場合においても、その処理をステップＳ７３０に進める。
【０１３０】
続いて、コントローラ６０は、ステップＳ７３２において、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の次の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）のデータが存在するか否かを判断する。コントローラ６０は、ｘ座標ｘｃ（ｇ１，ｑ＋１）のデータが存在する場合（Ｓ７３２：Ｙｅｓ）には、その処理をステップＳ７１０に戻して上述した処理を行う。コントローラ６０は、こうした処理を繰り返して、ステップＳ７１６において「Ｙｅｓ」、つまり、平均輝度値ＤＬave（ｇ１，ｑ＋１）のデータにシリーズ番号ｓがすでに付与されていると判定した場合には、その処理をステップＳ７２０に進める。
【０１３１】
カメラ２１の撮影画面においては、被写界深度の境界近くにある欠陥（特に線状の欠陥）に対しては、本来１つのものが２つ以上に分離して検出されてしまう場合がある。つまり、カメラ位置を変更していくと、最初に複数で検出されていた欠陥が、被写界深度の中心に近づくにつれて１つになり、その後、被写界深度の中心から離れるにつれて複数に分離するようになる。そこで、ステップＳ７２０〜Ｓ７２８において、あるカメラ位置で１つとして検出された欠陥が、手前（ｑの小さい側）のカメラ位置で２つ以上の欠陥として検出されている場合に、２つ以上に検出された欠陥を１つの欠陥として計算し直す処理を行う。
【０１３２】
コントローラ６０は、ステップＳ７２０において変数ｋの値を「０」に設定する。続いて、ステップＳ７２１において、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面の欠陥検出画素グループｇｆの中心位置のｘ座標ｘｃ（ｇｆ，ｑ−ｋ）と、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）との差（絶対値）が許容値Ｃ以下となり、かつ、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面の欠陥検出画素グループｇｆの中心位置のｙ座標ｙｃ（ｇｆ，ｑ−ｋ）と、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置のｙ座標ｙｃ（ｇ１，ｑ＋１）との差（絶対値）が許容値Ｃ以下となる欠陥検出画素グループｇｆの中心座標（ｘｃ（ｇｆ，ｑ−ｋ），ｙｃ（ｇｆ，ｑ−ｋ））を抽出する。つまり、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面において、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置に近い欠陥検出画素グループｇｆの中心座標を抽出する。尚、ｇｆは、任意の値をとり得る。
【０１３３】
続いて、コントローラ６０は、ステップＳ７２２において、抽出した中心座標（ｘｃ（ｇｆ，ｑ−ｋ），ｙｃ（ｇｆ，ｑ−ｋ））を有する欠陥検出画素グループｇｆに対応する輝度値Ｄ”（ｘ，ｙ，ｑ−ｋ）で平均輝度値ＤＬave（ｇｆ，ｑ―ｋ）を再計算する。つまり、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面の欠陥検出画素グループｇ１と中心位置が接近したカメラ位置Ｃｓ（ｑ−ｋ）における撮影画面の欠陥検出画素グループｇｆを１つの欠陥検出画素グループとして、それらを囲む最小面積の長方形の領域内における８方向のライン上の欠陥検出画素の輝度値Ｄ”（ｘ，ｙ，ｑ−ｋ）に基づいて、ステップＳ６２６〜Ｓ６３６の処理と同様に、平均輝度値ＤＬave（ｇｆ，ｑ―ｋ）を再計算する。
【０１３４】
続いて、ステップＳ７２４において、平均輝度値ＤＬave（ｓ，ｇｆ，ｑ−ｋ）を平均輝度値ＤＬave（ｇｆ，ｑ―ｋ）と同じ値に設定する。つまり、平均輝度値ＤＬave（ｇｆ，ｑ−ｋ）にシリーズ番号ｓを付与したデータを、新たに平均輝度値ＤＬave（ｓ，ｇｆ，ｑ−ｋ）として設定する。続いて、ステップＳ７２６において、変数ｋの値を「１」だけインクリメントし、続くステップＳ７２８において、平均輝度値ＤＬave（ｓ，ｇｆ，ｑ―ｋ）のデータが存在するか否かを判断する。平均輝度値ＤＬave（ｓ，ｇｆ，ｑ―ｋ）のデータが存在する場合には、その処理をステップＳ７２１に戻し、存在しない場合には、その処理をステップＳ７１８に進める。
【０１３５】
コントローラ６０は、ステップＳ７３２において、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の次の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）のデータが存在しないと判断すると、その処理をステップＳ７３４に進める。ステップＳ７３４〜Ｓ７３８の処理は、あるカメラ位置で１つに判定された欠陥が、後方（ｑが大きい側）のカメラ位置で２つ以上の欠陥として判定されている場合に、２つ以上に判定された欠陥を１つの欠陥として計算し直す処理である。
【０１３６】
コントローラ６０は、ステップＳ７３４において、平均輝度値ＤＬave（ｓ，ｇ１，ｑ＋１）のデータの中に同一のシリーズ番号ｓが付与されているものが存在するか否かを判断する。存在していない場合（Ｓ７３４：Ｎｏ）は、後述のステップＳ７３６，Ｓ７３８をスキップしてステップＳ７４０の処理に移行する。一方、同一のシリーズ番号ｓが付与されているものが存在する場合（Ｓ７３４：Ｙｅｓ）は、ステップＳ７３６において、そのシリーズ番号ｓの付与された平均輝度値ＤＬave（ｓ，ｇ１，ｑ＋１）の計算に用いた輝度Ｄ”（ｘ，ｙ，ｑ＋１）を使って、平均輝度値ＤＬave（ｇ１，ｑ＋１）を再計算する。つまり、同一のシリーズ番号ｓが付与された欠陥検出画素グループを１つの欠陥検出画素グループとして、それらを囲む最小面積の長方形の領域内における８方向のライン状の欠陥検出画素の輝度値Ｄ”（ｘ，ｙ，ｑ＋１）に基づいて、ステップＳ６２６〜Ｓ６３６の処理と同様に、平均輝度値ＤＬave（ｇ１，ｑ＋１）を再計算する。
【０１３７】
続いて、ステップＳ７３８において、平均輝度値ＤＬave（ｓ，ｇ１，ｑ＋１）を平均輝度値ＤＬave（ｇ１，ｑ＋１）と同じ値に設定する。つまり、平均輝度値ＤＬave（ｇ１，ｑ＋１）にシリーズ番号ｓを付与したデータを、新たに平均輝度値ＤＬave（ｓ，ｇ１，ｑ＋１）として設定する。コントローラ６０は、続くステップＳ７４０において、グループ番号ｇの値を「１」だけインクリメントし、続くステップＳ７４２において、ｘ座標ｘｃ（ｇ，ｑ）のデータが存在するか否かを判断する。存在している場合（Ｓ７４２：Ｙｅｓ）には、その処理を後述するステップＳ７５２に進め、存在していない場合（Ｓ７４２：Ｎｏ）には、ステップＳ７４４において、ｘ座標ｘｃ（ｇmax，ｑ）のデータが存在するか否かを判断する。ｘ座標ｘｃ（ｇmax，ｑ）のデータが存在する場合（Ｓ７４４：Ｙｅｓ）には、その処理をステップＳ７４０に戻して上述の処理を繰り返す。一方、ｘ座標ｘｃ（ｇmax，ｑ）のデータが存在しない場合（Ｓ７４４：Ｎｏ）には、ステップＳ７４６において、カメラ位置を表す変数ｑの値が最大値ｑmaxと等しいか否かを判断する。変数ｑの値が最大値ｑmaxに達していない場合（Ｓ７４６：Ｎｏ）には、ステップＳ７４８において、変数ｑの値を「１」だけインクリメントする。続いて、ステップＳ７５０においてグループ番号ｇを「１」に設定し、その処理をステップＳ７５２に進める。また、変数ｑの値が最大値ｑmaxに達している場合（Ｓ７４６：Ｙｅｓ）には、その処理を後述するステップＳ８００（図７Ｋ）に進める。
【０１３８】
コントローラ６０は、ステップＳ７５２において、平均輝度値ＤＬave（ｇ，ｑ）のデータにシリーズ番号ｓが付与されているか否かを判断し、シリーズ番号ｓが付与されている（Ｓ７５２：Ｙｅｓ）場合には、ステップＳ７５６において、形状判別データＥｓ（ｇ，ｑ）が「０」、つまり、欠陥形状が塊状であるか否かを判断する。形状判別データＥｓ（ｇ，ｑ）が「０」の場合（Ｓ７５６：Ｙｅｓ）には、その処理をステップＳ７０８（図７Ｇ）に戻して上述した処理を繰り返す。一方、形状判別データＥｓ（ｇ，ｑ）が「１」の場合（Ｓ７５６：Ｎｏ）には、その処理を後述するステップＳ７６０（図７Ｉ）に進める。また、ステップＳ７５２において、平均輝度値ＤＬave（ｇ，ｑ）のデータにシリーズ番号ｓが付与されていないと判定した場合には、ステップＳ７５４において、シリーズ番号ｓを「１」だけインクリメントして、その処理をステップＳ７０４（図７Ｇ）に戻す。
【０１３９】
コントローラ６０は、ステップＳ７０４において、形状判別データＥｓ（ｇ，ｑ）が「１」、つまり、線状の欠陥であると判定した場合には、その処理をステップＳ７５８に進める。このステップＳ７５８からステップＳ７９６の処理は、上述したステップＳ７０６からステップＳ７４４の処理に対して、データ処理対象が線状の欠陥である点で相違し、基本的な処理は同一である。
【０１４０】
コントローラ６０は、ステップＳ７５８において、平均輝度値Ｄave（ｓ，ｇ，ｑ）を平均輝度値Ｄave（ｇ，ｑ）と同じ値に設定する。つまり、平均輝度値Ｄave（ｇ，ｑ）にシリーズ番号ｓを付与したデータを、新たに平均輝度値Ｄave（ｓ，ｇ，ｑ）として設定する。続いて、ステップＳ７６０において、変数ｇ１の値を「１」に設定する。続いて、ステップＳ７６２において、カメラ位置Ｃｓ（ｑ）における撮影画面の欠陥検出画素グループｇの中心位置のｘ座標ｘｃ（ｇ，ｑ）と、隣のカメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）との差（絶対値）を算出し、その差が予め設定した許容値Ｄ以下であるか否かを判断する。許容値Ｄ以下である場合（Ｓ７６２：Ｙｅｓ）には、続くステップＳ７６４において、ステップＳ７６２で比較した中心位置のｙ座標ｙｃ（ｇ，ｑ）とｙ座標ｘｃ（ｇ１，ｑ＋１）との差（絶対値）を算出し、その差が予め設定した許容値Ｄ以下であるか否かを判断する。
【０１４１】
コントローラ６０は、ｙ座標においても、その差が許容値Ｄ以下である場合（Ｓ７６４：Ｙｅｓ）には、ステップＳ７６６において、平均輝度値Ｄave（ｇ１，ｑ＋１）のデータにシリーズ番号ｓが付与されているか否かを判断し、シリーズ番号ｓが付与されていない場合（Ｓ７６６：Ｎｏ）には、ステップＳ７６８において、平均輝度値Ｄave（ｓ，ｇ１，ｑ＋１）を平均輝度値Ｄave（ｇ１，ｑ＋１）と同じ値に設定する。つまり、平均輝度値Ｄave（ｇ１，ｑ＋１）にシリーズ番号ｓを付与したデータを、新たに平均輝度値Ｄave（ｓ，ｇ１，ｑ＋１）として設定する。これにより、隣り合う撮影画面間において中心位置が近接する欠陥検出画素グループには、平均輝度値を表すデータに共通のシリーズ番号ｓが付与される。
【０１４２】
コントローラ６０は、ステップＳ７６８において、平均輝度値を表すデータにシリーズ番号ｓを付与すると、その処理をステップＳ７８２に進めて、変数ｇ１の値を「１」だけインクリメントする。尚、ステップＳ７６２またはＳ７６４において、隣り合う撮影画面間において欠陥検出画素グループの中心位置が近接しないと判断した場合においても、その処理をステップＳ７８２に進める。
【０１４３】
続いて、コントローラ６０は、ステップＳ７８４において、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の次の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）のデータが存在するか否かを判断する。コントローラ６０は、ｘ座標ｘｃ（ｇ１，ｑ＋１）のデータが存在する場合（Ｓ７８４：Ｙｅｓ）には、その処理をステップＳ７６２に戻して上述した処理を行う。コントローラ６０は、こうした処理を繰り返して、ステップＳ７６６において「Ｙｅｓ」、つまり、平均輝度値Ｄave（ｇ１，ｑ＋１）のデータにシリーズ番号ｓがすでに付与されていると判定した場合には、その処理をステップＳ７７０に進める。
【０１４４】
コントローラ６０は、ステップＳ７７０において変数ｋの値を「０」に設定する。続いて、ステップＳ７７２において、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面の欠陥検出画素グループｇｆの中心位置のｘ座標ｘｃ（ｇｆ，ｑ―ｋ）と、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）との差（絶対値）が許容値Ｄ以下となり、かつ、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面の欠陥検出画素グループｇｆの中心位置のｙ座標ｙｃ（ｇｆ，ｑ−ｋ）と、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置のｙ座標ｙｃ（ｇ１，ｑ＋１）との差（絶対値）が許容値Ｄ以下となる欠陥検出画素グループｇｆの中心座標（ｘｃ（ｇｆ，ｑ−ｋ），ｙｃ（ｇｆ，ｑ−ｋ））を抽出する。つまり、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面において、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の欠陥検出画素グループｇ１の中心位置に近い欠陥検出画素グループｇｆの中心座標を抽出する。
【０１４５】
続いて、コントローラ６０は、ステップＳ７７４において、抽出した中心座標（ｘｃ（ｇｆ，ｑ−ｋ），ｙｃ（ｇｆ，ｑ−ｋ））を有する欠陥検出画素グループｇｆに対応する輝度値Ｄ”（ｘ，ｙ，ｑ−ｋ）で平均輝度値Ｄave（ｇｆ，ｑ―ｋ）を再計算する。つまり、カメラ位置Ｃｓ（ｑ―ｋ）における撮影画面の欠陥検出画素グループｇ１と中心位置が接近したカメラ位置Ｃｓ（ｑ−ｋ）における撮影画面の欠陥検出画素グループｇｆを１つの欠陥検出画素グループとして、それらを囲む最小面積の長方形の領域内における欠陥検出画素の輝度値Ｄ”（ｘ，ｙ，ｑ−ｋ）に基づいて、ステップＳ６１６の処理と同様に、平均輝度値Ｄave（ｇｆ，ｑ―ｋ）を再計算する。
【０１４６】
続いて、ステップＳ７７６において、平均輝度値Ｄave（ｓ，ｇｆ，ｑ−ｋ）を平均輝度値Ｄave（ｇｆ，ｑ―ｋ）と同じ値に設定する。つまり、平均輝度値Ｄave（ｇｆ，ｑ−ｋ）にシリーズ番号ｓを付与したデータを、新たに平均輝度値Ｄave（ｓ，ｇｆ，ｑ−ｋ）として設定する。続いて、ステップＳ７７８において、変数ｋの値を「１」だけインクリメントし、続くステップＳ７８０において、平均輝度値Ｄave（ｓ，ｇｆ，ｑ―ｋ）のデータが存在するか否かを判断する。平均輝度値Ｄave（ｓ，ｇｆ，ｑ―ｋ）のデータが存在する場合には、その処理をステップＳ７７２に戻し、存在しない場合には、その処理をステップＳ７６８に進める。
【０１４７】
コントローラ６０は、ステップＳ７８４において、カメラ位置Ｃｓ（ｑ＋１）における撮影画面の次の欠陥検出画素グループｇ１の中心位置のｘ座標ｘｃ（ｇ１，ｑ＋１）のデータが存在しないと判断すると、その処理をステップＳ７８６に進める。
【０１４８】
コントローラ６０は、ステップＳ７８６において、平均輝度値Ｄave（ｓ，ｇ１，ｑ＋１）のデータの中に同一のシリーズ番号ｓが付与されているものが存在するか否かを判断する。存在していない場合（Ｓ７８６：Ｎｏ）は、後述のステップＳ７８８，Ｓ７９０をスキップしてステップＳ７９２の処理に移行する。一方、同一のシリーズ番号ｓが付与されているものが存在する場合（Ｓ７８６：Ｙｅｓ）は、ステップＳ７８８において、そのシリーズ番号ｓの付与された平均輝度値Ｄave（ｓ，ｇ１，ｑ＋１）の計算に用いた輝度値Ｄ”（ｘ，ｙ，ｑ＋１）を使って、平均輝度値Ｄave（ｇ１，ｑ＋１）を再計算する。つまり、同一のシリーズ番号ｓが付与された欠陥検出画素グループを１つの欠陥検出画素グループとして、それらを囲む最小面積の長方形の領域内における欠陥検出画素の輝度値Ｄ”（ｘ，ｙ，ｑ＋１）に基づいて、ステップＳ６１６の処理と同様に、平均輝度値Ｄave（ｇ１，ｑ＋１）を再計算する。
【０１４９】
続いて、ステップＳ７９０において、平均輝度値Ｄave（ｓ，ｇ１，ｑ＋１）を平均輝度値Ｄave（ｇ１，ｑ＋１）と同じ値に設定する。つまり、平均輝度値Ｄave（ｇ１，ｑ＋１）にシリーズ番号ｓを付与したデータを、新たに平均輝度値Ｄave（ｓ，ｇ１，ｑ＋１）として設定する。コントローラ６０は、続くステップＳ７９２において、グループ番号ｇの値を「１」だけインクリメントし、続くステップＳ７９４において、ｘ座標ｘｃ（ｇ，ｑ）のデータが存在するか否かを判断する。存在している場合（Ｓ７９４：Ｙｅｓ）には、その処理をステップＳ７５２に進め、存在していない場合（Ｓ７９４：Ｎｏ）には、ステップＳ７９６において、ｘ座標ｘｃ（ｇmax，ｑ）のデータが存在するか否かを判断する。ｘ座標ｘｃ（ｇmax，ｑ）のデータが存在する場合（Ｓ７９６：Ｙｅｓ）には、その処理をステップＳ７９２に戻して上述の処理を繰り返す。一方、ｘ座標ｘｃ（ｇmax，ｑ）のデータが存在しない場合（Ｓ７９６：Ｎｏ）には、ステップＳ７４６において、カメラ位置を表す変数ｑの値が最大値ｑmaxと等しいか否かを判断する。変数ｑの値が最大値ｑmaxに達していない場合（Ｓ７４６：Ｎｏ）には、変数ｑの値が最大値ｑmaxに達するまで、上述した処理が繰り返される。
【０１５０】
こうした処理が全てのカメラ位置で繰り返されることにより、図１４に示すように、各カメラ位置で撮影された撮影画面Ｆ間において、互いに中心座標が接近する欠陥検出画素グループごとに、共通するシリーズ番号ｓが平均輝度値データに付与される。こうして、１つの欠陥に対して１つのシリーズ番号ｓが付与される。従って、シリーズ番号ｓにより撮影された欠陥を特定することができ、平均輝度値データにより、その欠陥の各撮影画面における平均輝度値を把握することができる。
【０１５１】
コントローラ６０は、ステップＳ７４６において、カメラ位置を表す変数ｑの値が最大値ｑmaxに達したと判断すると、その処理をステップＳ８００（図７Ｋ）に進める。コントローラ６０は、ステップＳ８００において、シリーズ番号ｓを「１」に設定する。続いて、ステップＳ８０２において、平均輝度値ＤＬave（ｓ，ｇ，ｑ）のデータが３つ以上存在するか否かを判断する。つまり、３つ以上のカメラ位置（撮影画面）において、シリーズ番号ｓの塊状の欠陥検出画素グループが検出されているか否かを判断する。平均輝度値ＤＬave（ｓ，ｇ，ｑ）のデータが３つ以上存在する場合（Ｓ８０２：Ｙｅｓ）には、ステップＳ８０４において、最終的に決定した欠陥の種類を表すデータである欠陥種類（ｓ）を塊状欠陥に設定する。続いて、ステップＳ８０６において、図１５に示すように、カメラ位置Ｃｓ（ｑ）に対する平均輝度値ＤＬave（ｓ，ｇ，ｑ）の変化曲線を作成する。この場合、カメラ位置Ｃｓ（ｑ）は等間隔となるため、横軸を変数ｑとして変化曲線を作成すればよい。
【０１５２】
一方、ステップＳ８０２において、平均輝度値ＤＬave（ｓ，ｇ，ｑ）のデータが３つ以上存在しないと判定した場合には、ステップＳ８０８において、平均輝度値Ｄave（ｓ，ｇ，ｑ）のデータが３つ以上存在するか否かを判断する。つまり、３つ以上のカメラ位置（撮影画面）において、シリーズ番号ｓの線状の欠陥検出画素グループが検出されているか否かを判断する。平均輝度値Ｄave（ｓ，ｇ，ｑ）のデータが３つ以上存在する場合（Ｓ８０８：Ｙｅｓ）には、ステップＳ８１０において、欠陥種類（ｓ）を線状欠陥に設定する。続いて、ステップＳ８１２において、図１５に示すように、カメラ位置Ｃｓ（ｑ）に対する平均輝度値Ｄave（ｓ，ｇ，ｑ）の変化曲線を作成する。ステップＳ８０８において、平均輝度値ＤＬave（ｓ，ｇ，ｑ）のデータが３つ以上存在しないと判定した場合には、その欠陥検出画素グループを欠陥とは判定せず、その処理を後述するステップＳ８２４に進める。
【０１５３】
ステップＳ８０６、あるいは、ステップＳ８１２で変化曲線を作成すると、続いて、ステップＳ８１４において、変化曲線から平均輝度値がピーク（最大）となるピーク点に最も近いカメラ位置Ｃｓ（ｑ）を求め、そのカメラ位置Ｃｓ（ｑ）に対応するガラス基板ＯＢにシリーズ番号ｓの欠陥があると判定し、その判定されたガラス基板ＯＢのブロック内番号ｐを検出する。ガラス基板ＯＢのブロック内番号ｐは、検査対象ブロック内におけるガラス基板ＯＢの順番（１，２，３・・・）を表す。コントローラ６０は、予め、ガラス基板ＯＢのブロック内番号ｐと、平均輝度値がピークとなるカメラ位置Ｃｓ（ｑ）との関係をメモリ６０ａに記憶している。つまり、検査対象ブロック内の各ガラス基板ＯＢごとに欠陥により平均輝度値がピークとなるカメラ位置Ｃｓ（ｑ）を記憶している。従って、変化曲線から平均輝度値のピーク点を求めることで、欠陥のあるガラス基板ＯＢのブロック内番号ｐを特定することができる。
【０１５４】
続いて、コントローラ６０は、ステップＳ８１６において、シリーズ番号ｓの欠陥があるガラス基板番号（ｓ）を算出する。ガラス基板番号（ｓ）は、治具１１にセットされた複数ブロックのガラス基板ＯＢの先頭（カメラ２１側）から順に１，２，３・・と付けられる番号である。従って、検査対象ブロック番号をｎ、１ブロックを構成するガラス基板ＯＢの枚数をＢとすると、ガラス基板番号（ｓ）は、次式により計算される。
ガラス基板番号（ｓ）＝（ｎ−１）×Ｂ＋ｐ
【０１５５】
続いて、コントローラ６０は、ステップＳ８１８において、変化曲線のピーク点に最も近いカメラ位置Ｃｓ（ｑ）での欠陥検出画素グループの中心のｘ座標ｘｃ（ｇ，ｑ）をシリーズ番号ｓの欠陥の中心のｘ座標ｘｃ（ｓ）として設定する。続いて、ステップＳ８２０において、変化曲線のピーク点に最も近いカメラ位置Ｃｓ（ｑ）での欠陥検出画素グループの中心のｙ座標ｙｃ（ｇ，ｑ）をシリーズ番号ｓの欠陥の中心のｙ座標ｙｃ（ｓ）として設定する。
【０１５６】
続いて、コントローラ６０は、ステップＳ８２４において、表示装置６２に、シリーズ番号ｓの欠陥の情報として、欠陥種類（ｓ）、ガラス基板番号（ｓ）、欠陥中心座標（ｘｃ（ｓ），ｙｃ（ｓ））を表示する。続いて、ステップＳ８２４において、シリーズ番号ｓを「１」だけインクリメントし、ステップＳ８２６において、シリーズ番号ｓが最大値ｓmaxと等しいか否かを判断する。コントローラ６０は、シリーズ番号ｓが最大値ｓmaxに達していない場合（Ｓ８２６：Ｎｏ）には、その処理をステップＳ８０２に戻して上述した処理を繰り返す。
【０１５７】
コントローラ６０は、シリーズ番号ｓが最大値ｓmaxに達したと判断すると（Ｓ８２６：Ｙｅｓ）、ステップＳ８２８において、基板判別用画像データ処理サブルーチンを一旦終了して、その処理をメインルーチンのステップＳ１４６に進め、検査対象ブロックを次のブロックに変更して上述した処理を実行する。そして、全てのブロックに対して検査が完了すると（Ｓ１４６：Ｙｅｓ）、治具１１をガラス基板ＯＢの交換位置にまで移動し（Ｓ１５６）、光照射器５０の光源５１を消灯して（Ｓ１５８）、基板検査ルーチンを終了する（Ｓ１６０）。
【０１５８】
以上説明した検査装置１においては、治具１１に複数のガラス基板ＯＢを法線方向に並べてセットした状態で、複数のガラス基板ＯＢの一部に対してライン状の光を照射し、このライン状の光が照射される設定枚数（複数）のガラス基板ＯＢを検査対象ブロックとしている。そして、治具１１を法線方向に移動させることにより、ライン状の光を照射する位置をガラス基板ＯＢに対して相対的に法線方向に移動させて、検査対象ブロックを切り替える。カメラ２１は、検査対象ブロック内の複数枚のガラス基板ＯＢが被写界深度内（ピントの合う範囲内）に入るように、治具１１との相対位置が法線方向に調整されてガラス基板ＯＢを法線方向から撮影する。ガラス基板ＯＢに欠陥が存在すると、光照射器５０から照射された光が欠陥で散乱し、その散乱光が他のガラス基板ＯＢを通過してカメラ２１に入射する。従って、カメラ２１は、検査対象ブロック内で被写界深度内に入る複数枚のガラス基板ＯＢの欠陥（散乱光）を一度に撮影することができる。この場合、複数枚のガラス基板ＯＢに存在する欠陥が、１つの撮影画面に散乱光（高輝度領域）として映し出される。
【０１５９】
基板検査ルーチンにおいては、最初に、ブロック単位にガラス基板ＯＢの欠陥の有無を判定する簡易検査が行われる（Ｓ１０２〜Ｓ１４３）。簡易検査において、ガラス基板ＯＢの欠陥が存在しないと判定された場合には、そのブロックのガラス基板ＯＢ全てに対して検査合格とし、ガラス基板ＯＢに欠陥が存在すると判定された場合のみ（Ｓ１３６：Ｙｅｓ）、詳細検査である基板判別処理（Ｓ３００）が行われ、欠陥が存在するガラス基板ＯＢ、欠陥の位置、欠陥の種類が検出される。
【０１６０】
簡易検査においては、検査対象ブロックに対して３つのカメラ位置にて撮影して得られた画像データを個々にデータ処理して欠陥の有無が判定される（Ｓ２００）。本実施形態においては、検査ブロックの幅（ライン状の光の幅）がカメラ２１の被写界深度と同程度かやや小さく設定されているため、検査対象ブロック内の全てのガラス基板ＯＢを被写界深度内に入れることができる。このため、１つのカメラ位置での撮影で検査対象ブロック内の全てのガラス基板ＯＢの欠陥の有無を判定できるが、欠陥検出精度を上げるためにカメラ位置を法線方向に３通りに切り替えて、各カメラ位置にて撮影する（Ｓ１１０，Ｓ１４２）。この場合、各カメラ位置ごとに照射光の強度を３段階に切り替えて撮影して（Ｓ１２４〜Ｓ１３４）、画像データ処理（Ｓ２００）により高輝度となる画素の数をカウントする（Ｓ２２０〜Ｓ２３４）。高輝度となる画素が１つでも検出された場合には、３通りのカメラ位置での撮影が完了していなくても、その時点で、欠陥が存在するガラス基板ＯＢを判別するために基板判別処理（Ｓ３００）が開始される。そして、基板判別処理により欠陥が存在するガラス基板ＯＢの基板番号、欠陥の位置、欠陥の種類が判定されて表示装置６２に表示された後に（Ｓ８２２）、検査対象が自動的に次のブロックに切り替えられ（Ｓ１４６〜Ｓ１５２）、同様の処理が繰り返される。
【０１６１】
基板判別処理においては、高輝度となる画素の数である欠陥カウント値Ｃｏｎが最大となる光強度Ｉ（ｋ）、つまり、欠陥検査に最適な光強度に設定されて（Ｓ３０４，Ｓ３０６）、カメラ２１の撮影位置が細かく切り替えられる（Ｓ３０８〜Ｓ３２０）。そして、検査対象ブロック内で全てのカメラ位置において撮影が完了すると、画像データから輝度値Ｄ”（ｘ，ｙ，ｑ）が閾値Ａ以上となる欠陥検出画素が抽出され、その座標データに番号ｔが順番に付与される（Ｓ４２０〜Ｓ４３６）。次に、番号ｔを使って、ｘ方向に連続する欠陥検出画素がグループ化されて座標データに同一のグループ番号ｇｘが付与され（Ｓ４３８〜Ｓ４６１）、ｙ方向に連続する欠陥検出画素がグループ化されて座標データに同一のグループ番号ｇｙが付与される（Ｓ４６２〜Ｓ４８５）。そして、グループ番号ｇｘ，ｇｙを使って、ｘ方向とｙ方向とに連続する欠陥検出画素がグループ化されて座標データにグループ番号ｇが付与される（Ｓ４８６〜Ｓ５１２）。
【０１６２】
こうして欠陥検出画素がグループ化されると、その欠陥検出画素グループの中心座標と平均輝度値が計算され（Ｓ６０２〜Ｓ６１６）、平均輝度値が閾値Ｂ以上となるものについては欠陥形状が塊状と推定され、平均輝度値が閾値Ｂ未満となるものについては欠陥形状が線状と推定される（Ｓ６２０〜Ｓ６２４）。欠陥形状が塊状と推定された場合には、欠陥検出画素グループの中心座標から８方向に延びたライン上の欠陥検出画素の輝度の平均値が計算され、その値が平均輝度値として新たに設定される（Ｓ６２４〜Ｓ６３６）。この平均輝度値は、欠陥が存在するガラス基板ＯＢを判別するためのパラメータ値となる。
【０１６３】
全てのカメラ位置での撮影画面において、欠陥検出画素のグループ化、中心座標と平均輝度値の計算が完了すると、次に、各撮影画面間において、欠陥の形状別に、欠陥検出画素グループの中心座標が比較される。そして、中心座標の差が許容値内であるものについては、同一のシリーズ番号ｓが平均輝度値に付与されるとともに、同一撮影画面において、同一シリーズ番号ｓが付与された欠陥検出画素グループを１つの欠陥検出画素グループとしてまとめた平均輝度値が計算される（Ｓ７００〜Ｓ７９６）。
【０１６４】
このようにして、撮影画面上において複数に分離して検出された欠陥検出画素グループであっても、共通のシリーズ番号ｓが付与されたものについては、１つの欠陥としてみなされる。そして、形状判別データが塊状であって同一のシリーズ番号ｓが付与される欠陥検出画素グループが３つ以上の撮影画面に存在する場合には、欠陥種類が塊状欠陥として確定され（Ｓ８０２〜Ｓ８０４）、形状判別データが線状であって同一のシリーズ番号ｓが付与される欠陥検出画素グループが３つ以上の撮影画面に存在する場合には、欠陥種類が線状欠陥として決定される（Ｓ８０８〜Ｓ８１０）。その後、欠陥検出画素グループごとに、カメラ位置に対する平均輝度値の変化曲線が作成され、この変化曲線におけるピーク点から、欠陥のあるガラス基板番号、欠陥の中心座標が求められ、欠陥種類と合わせて表示器に表示される（Ｓ８０６，Ｓ８１２〜Ｓ８１４）。
【０１６５】
以上説明した本実施形態の検査装置１によれば、以下の効果を奏する。
１．カメラの被写界深度内に複数のガラス基板ＯＢを並べて配置し、ガラス基板ＯＢの欠陥からの散乱光を、ガラス基板ＯＢを透過させて撮影し、撮影して得た画像データから欠陥の有無を判定するため、短時間にて多数枚のガラス基板の検査を行うことができる。欠陥が存在しないと判定した場合には、撮影したガラス基板ＯＢ全てを検査合格にすることができるため、特に、ガラス基板ＯＢの欠陥発生率が低い場合には、非常に有効なものとなる。
２．治具１１にセットしたガラス基板ＯＢを複数のブロックに分け、検査対象ブロックを自動的に切り替えるため、一度に治具１１にセットできるガラス基板ＯＢの枚数を多くすることができる。このため、ガラス基板のセット時間（取り付け、取り外し時間）を短縮することができ、効率よく多数枚のガラス基板の検査を行うことができる。
【０１６６】
３．検査対象ブロックのみに光を照射して検査するため、他のブロックのガラス基板ＯＢから散乱光がカメラに入射しない。これにより、画像データにノイズがのりにくく、ガラス基板の欠陥を精度良く検査することができる。
４．ブロック内に欠陥が存在するガラス基板ＯＢがあると判定された場合は、そのまま検査対象ブロックの詳細検査が開始されて、欠陥が存在するガラス基板ＯＢ、および、欠陥の位置を特定するため、全てのガラス基板ＯＢを個々に検査できるだけでなく、全てのブロックの検査が終了するまで、ガラス基板ＯＢを治具１１から取り外す必要が無く、検査作業の省力化を図ることができる。
【０１６７】
５．簡易検査においても、３つのカメラ位置で撮影するため欠陥検出精度が高く、また、途中で欠陥が検出された場合には、全てのカメラ位置での撮影が完了していなくても詳細検査に移行するため、検査時間を短縮することができる。
６．簡易検査時においてブロックごとに複数通りの光強度でカメラ撮影し、最も欠陥カウント値（ガラス基板に欠陥が存在していると推定される画素の数）が多かった光強度にて詳細検査を行うようにしているため、詳細検査においては検査対象ブロックごとに適正な光強度が設定され、欠陥が存在するガラス基板ＯＢの判別精度を向上させることができる。
【０１６８】
７．詳細検査においては、欠陥検出画素グループごとに欠陥が存在するガラス基板ＯＢを判別するためのパラメータ値を算出し、カメラ位置の変化に対するパラメータ値の変化曲線（変化特性）のピーク値に基づいて欠陥が存在するガラス基板ＯＢを判別するため、その判別を良好に行うことができる。特に、パラメータ値として、欠陥の種類に応じた計算式で求めた平均輝度値を用いているため、欠陥が存在するガラス基板ＯＢの判別を精度良く行うことができる。
８．詳細検査においては、撮影画面間において欠陥検出画素グループの中心位置が接近するものに対しては共通するシリーズ番号を付与するため、カメラ位置によっては複数に分離して撮影される欠陥に対しても１つの欠陥として捉えることができる。このため、ガラス基板ＯＢを判別するためのパラメータ値となる平均輝度値が適正となり、欠陥が存在するガラス基板ＯＢの判別精度をさらに向上させることができる。
【０１６９】
９．検査対象ブロックの切り替えは治具ステージ１２の移動により行い、各検査対象ブロックに対する撮影位置の切り替えはカメラステージ２２の移動により行うため、光照射器５０を移動する必要がなく、検査装置１の制御システムがシンプルになる。
１０．欠陥の種類を判別して表示装置６２に表示するため、欠陥の生じた原因を究明しやすい。
【０１７０】
以上、本発明の実施形態について説明したが、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変形も可能である。
【０１７１】
例えば、本実施形態においては、検査対象ブロックのガラス基板ＯＢに対して、基板面に平行となる方向からライン状の光を照射したが、図１６に示す変形例としての透光性基板検査装置１’のように、基板面に対して法線方向から光を照射するようにしてもよい。この変形例では、光源５１から出射した光をコリメートレンズ５４により平行光にし、その平行光をハーフミラー５５により法線方向に反射させてガラス基板ＯＢに法線方向から照射する。カメラ２１は、ガラス基板ＯＢを法線方向からハーフミラー５５を介して撮影する。この場合、カメラ２１の被写界深度の範囲が検査対象ブロックとなる。従って、治具１１とカメラ２１との法線方向の相対位置を切り替えることにより検査対象ブロックを切り替えることができる。例えば、被写界深度の値が、治具１１にセットされるガラス基板ＯＢの所定枚数Ｎ分の距離に相当すれば、１つのブロックをＮ枚のガラス基板ＯＢに設定する。
【０１７２】
この変形例では、検査対象ブロックの切り替えとカメラ位置の切り替えを、治具ステージ１２を法線方向に駆動することにより行う。従って、実施形態に比べてカメラ２１を法線方向に移動させる構成（カメラ移動モータ２４、カメラ移動位置検出回路３３、カメラ移動モータ制御回路３４）を省略することができる。尚、検査対象ブロックの切り替えとカメラ位置の切り替えを、治具ステージ１２を駆動して行わずに、カメラステージ２２を駆動して行うようにしてもよい。この場合は、実施形態に比べて治具１１を法線方向に移動させる構成（治具移動モータ１４、治具移動位置検出回路３１、治具移動モータ制御回路３２）を省略することができる。
【０１７３】
この変形例においても、ガラス基板ＯＢに欠陥が存在する場合には、欠陥位置に対応する撮影画面上の画素の輝度値が正常位置（欠陥のない位置）における画素の輝度値と大きく相違するため、輝度値と関連する値をパラメータとして用いることにより、欠陥が存在するガラス基板ＯＢを判別することができる。
【０１７４】
この変形例によれば、検査装置１’のシステム構成を簡易にすることができ低コスト化を図ることができる。また、光をガラス基板ＯＢに対して法線方向から照射するため、ガラス基板ＯＢの縁部における散乱光の発生が抑制される。従って、ガラス基板ＯＢの縁部付近に存在する欠陥の検出精度を高くすることができる。
【０１７５】
また、他の例として、ガラス基板ＯＢに対して法線方向から光を照射するにあたって、カメラ２１とは反対側から（ガラス基板ＯＢを挟んでカメラ２１とは反対側から、つまり、図１の右側から）光を照射し、ガラス基板ＯＢを透過した光をカメラ２１で撮影するようにしてもよい。この場合には、カメラ撮影で得られた画像データにおいて、輝度値が予め設定した閾値未満となる画素を欠陥検出画素として処理すればよい。
【０１７６】
また、他の例として、本実施形態においては、表示装置６２に欠陥が存在するガラス基板番号、欠陥の位置、欠陥の種類を表示するが、他の検査情報も合わせて表示するようにしてもよい。例えば、平均輝度値がピークとなる撮影画面（カメラ位置）における座標ｘ（ｔ，ｇ），ｙ（ｔ，ｇ）を用いて、欠陥の形状を表示装置６２に表示するようにしてもよい。また、輝度値Ｄ”（ｘ，ｙ，ｑ）、座標ｘ（ｔ，ｇ），ｙ（ｔ，ｇ）を用いて、明暗を付けて欠陥の形状を表示するようにしてもよい。また、輝度値Ｄ”（ｘ，ｙ，ｑ）、座標ｘ（ｔ，ｇ），ｙ（ｔ，ｇ）を用いて、欠陥の面積、輝度値の勾配といった各種の評価値を算出して表示してもよい。輝度値の勾配は、欠陥の立体的な形状（凸状あるいは凹状）を推定するのに役立てることができる。
【０１７７】
また、本実施形態においては、検査対象ブロックを変更する場合に、ガラス基板ＯＢをセットした治具１１を移動させるようにしたが、治具１１を固定してカメラ２１を移動させるようにしてもよい。この場合、光源５１およびスリット板５３も、カメラ２１との相対位置関係が変化しないように移動させる。また、本実施形態においては、欠陥が存在するガラス基板ＯＢを判別する場合に、カメラ２１を移動させるようにしたが、カメラ２１を固定して治具１１を移動させるようにしてもよい。この場合、光源５１およびスリット板５３も、治具１１との相対位置関係が変化しないように移動させる。
【０１７８】
また、本実施形態においては、ブロックごとに光強度を複数通りに変化させて最適な光強度を求めているが、光強度を変化させない構成であってもよい。また、本実施形態においては、ガラス基板ＯＢを検査対象物としているが、ガラス基板ＯＢに限らず透光性を有する基板であれば検査対象となる。
【０１７９】
また、本実施形態においては、検査対象ブロック内のガラス基板に存在する欠陥を検出する場合（簡易検査）に、３通りのカメラ位置にて撮影しているが、１つのカメラ位置（被写界深度内に検査対象ブロックの全てのガラス基板ＯＢが入る位置）で撮影して得た画像データに基づいて、検査対象ブロック内のガラス基板に欠陥が存在するか否かを判定するようにしてもよい。
【符号の説明】
【０１８０】
１，１’…透光性基板検査装置、１０…治具移動機構、１１…治具、１２…治具ステージ、１４…治具移動モータ、２０…カメラ移動機構、２１…カメラ、２２…カメラステージ、２４…カメラ移動モータ、３１…治具移動位置検出回路、３２…治具移動モータ制御回路、３３…カメラ移動位置検出回路、３４…カメラ移動モータ制御回路、４０…ステージ基台、５０…光照射器、５１…光源、５２…照射光源駆動回路、５３…スリット板、５３ａ…スリット開口、６０…コントローラ、６０ａ…メモリ、６１…入力装置、６２…表示装置、Ｇ１…塊状欠陥、Ｇ２…線状欠陥、ＯＢ…ガラス基板、Ｈ…被写界深度、Ｆ…撮影画面。
【図１】
2011158318.tif 000003
【図２】
2011158318.tif 000004
【図３】
2011158318.tif 000005
【図４Ａ】
2011158318.tif 000006
【図４Ｂ】
2011158318.tif 000007
【図５】
2011158318.tif 000008
【図６】
2011158318.tif 000009
【図７Ａ】
2011158318.tif 000010
【図７Ｂ】
2011158318.tif 000011
【図７Ｃ】
2011158318.tif 000012
【図７Ｄ】
2011158318.tif 000013
【図７Ｅ】
2011158318.tif 000014
【図７Ｆ】
2011158318.tif 000015
【図７Ｇ】
2011158318.tif 000016
【図７Ｈ】
2011158318.tif 000017
【図７Ｉ】
2011158318.tif 000018
【図７Ｊ】
2011158318.tif 000019
【図７Ｋ】
2011158318.tif 000020
【図８】
2011158318.tif 000021
【図９】
2011158318.tif 000022
【図１０】
2011158318.tif 000023
【図１１】
2011158318.tif 000024
【図１２】
2011158318.tif 000025
【図１３】
2011158318.tif 000026
【図１４】
2011158318.tif 000027
【図１５】
2011158318.tif 000028
【図１６】
2011158318.tif 000029