(57)【要約】【課題】コストの増加や検査効率を低下させることなく、被検査面の傾斜角度を従来よりも細かい単位で検出できるようにする。【解決手段】半球状の筐体２０を具備する照明部２と撮像面を真下に向けて配備したカメラ１により基板を撮像する。筐体２０には、周方向および上下方向をそれぞれ等角度間隔をもって区分けすることにより複数の領域が設定される。各領域には、それぞれ１２個のＬＥＤ２２ａが３×４のマトリクスを構成するように配置される。これらのＬＥＤ２２ａのうち、マトリクスの４隅を除く８個のＬＥＤ２２ａは、その点消灯のパターンによって、基板に対する照明の方向を示すバイナリコードを表示する。検査の際の画像処理では、画像に現れた反射パターンからそのパターンに対応する照明光の方向を特定して、フィレットの傾斜角度を求める。【選択図】図２
2008216180.tif 000002
【特許請求の範囲】
【請求項１】
所定広さの被検査面が表面に含まれる検査対象物を照明して、被検査面を撮像装置により撮像し、生成された画像中の正反射光像を用いて前記検査対象物の表面状態を検査する方法において、
複数個の発光体が配列された構成の複数の照明部を、それぞれ入射角度が異なる方向から被検査面を照明するように配備するとともに、各発光体の点消灯を制御することにより、各照明部に他の照明部とは異なる形態の照明パターンを点灯させて、その照明下で撮像装置により被検査面を撮像し、
前記撮像により生成された画像に現れている反射パターンを抽出し、
抽出された反射パターンの形態と各照明部の照明パターンの形態との対応関係に基づき、前記反射パターンが抽出された各部位の傾斜角度を求め、これらの傾斜角度を用いて前記被検査面の表面状態を判別する、
ことを特徴とする表面状態検査方法。
【請求項２】
請求項１に記載された方法において、
各照明部の発光体の数および配列状態を統一し、これらの照明部の発光体の点消灯の組み合わせが、それぞれ当該照明部からの照明の方向を表すバイナリコードを示すように、各発光体の点消灯を制御し、
前記反射パターンが抽出された部位について、その反射パターンから前記バイナリコードを読み取り、この読み取り情報を用いて傾斜角度を算出する、表面状態検査方法。
【請求項３】
請求項２に記載された方法において、
前記検査対象物に対し、複数の方位に、それぞれ前記複数の照明部を入射角度が異なる方向から被検査面を照明するように配備し、
各照明部における位置関係が同一になる所定数の発光体を識別用の発光体に設定し、これらの識別用の発光体による点消灯のパターンが各照明部で統一され、かつこの点消灯のパターンによって照明パターンの向きが表され、その他の発光体の点消灯パターンにより前記照明の方位および入射角度を示すバイナリコードが表されるように、各発光体の点消灯を制御し、
前記画像中の反射パターンの中から、前記識別用の発光体による点消灯パターンに対応する部分を抽出し、その抽出部分と反射パターン全体との位置関係に基づき反射パターンと照明パターンとの対応関係を特定してから、前記バイナリコードを読み取る処理を実行する、表面状態検査方法。
【請求項４】
所定広さの被検査面が表面に含まれる検査対象物を照明して、前記被検査面を撮像装置により撮像し、生成された画像中の正反射光像を用いて前記検査対象物の表面状態を検査する方法において、
被検査面に対する入射角度が異なる複数の点灯範囲が設定され、各点灯範囲に、それぞれ他の範囲とは異なる色彩光を発する複数個の発光体が配列された構成の複数の照明部を、それぞれ入射角度が異なる方向から被検査面を照明するように配備し、
各照明部がそれぞれ同じ点灯範囲にある他の照明部とは異なる形態の照明パターンを点灯するように、各発光体の点消灯を制御して、その制御による照明下で撮像装置により被検査面を撮像し、
前記撮像により生成された画像に現れている反射パターンを抽出し、
抽出された反射パターンの色彩および形態の組み合わせと各照明部の照明パターンの色彩および形態の組み合わせとの対応関係に基づき、前記反射パターンが抽出された各部位の傾斜角度を求め、これらの傾斜角度を用いて前記被検査面の表面状態を判別する、
ことを特徴とする表面状態検査方法。
【請求項５】
撮像装置と、照明装置と、前記照明装置および撮像装置を制御して検査対象物の画像を生成し、生成された画像中の正反射光像を処理して前記検査対象物の表面状態を検査する制御処理装置とを具備し、
前記照明装置には、複数個の発光体が配列された構成の複数の照明部が、撮像装置の撮像範囲をそれぞれ入射角度が異なる方向から照明するように設けられており、
前記制御処理装置は、各照明部が他の照明部とは異なる形態の照明パターンを点灯するように各発光体の点消灯を制御する照明制御手段；この照明制御手段の制御による照明下で撮像装置に撮像を行わせる撮像制御手段；前記撮像により生成された画像に現れている反射パターンを抽出するパターン抽出手段；抽出された反射パターンの形態と各照明部の照明パターンの形態との対応関係に基づき、前記反射パターンが抽出された各部位の傾斜角度を求める傾斜角度特定手段；前記反射パターンが抽出された各部位につき求められた傾斜角度を用いて被検査面の表面状態を判別する判別手段；の各手段を具備する表面状態検査装置。
【請求項６】
前記照明装置の各照明部の発光体の数および配列状態は統一されており、
前記照明制御手段は、各照明部の発光体の点消灯の組み合わせが、それぞれ当該照明部からの照明の方向を表すバイナリコードを示すように、各発光体の点消灯を制御し、
前記傾斜角度特定手段は、前記反射パターンが抽出された部位について、その反射パターンから前記バイナリコードを読み取り、この読み取り情報を用いて傾斜角度を算出する、請求項５に記載された表面状態検査装置。
【請求項７】
前記照明装置には、撮像範囲に対する方位が異なる複数の位置毎に、前記複数の照明部がそれぞれ入射角度が異なる方向から撮像範囲を照明するように配備されており、
前記照明制御手段は、各照明部における位置関係が同一になる所定数の発光体を識別用の発光体に設定し、これらの識別用の発光体による点消灯のパターンが各照明部で統一され、かつこの点消灯パターンによって照明パターンの向きが示され、その他の発光体の点消灯パターンにより前記照明の方位および入射角度を示すバイナリコードが表されるように、各発光体の点消灯を制御し、
前記傾斜角度特定手段は、前記画像中の反射パターンの中から、前記識別用の発光体による点消灯パターンに対応する部分を抽出し、その抽出部分と反射パターン全体との位置関係に基づき反射パターンと照明パターンとの対応関係を特定してから、前記バイナリコードを読み取る処理を実行する、請求項６に記載された表面状態検査装置。
【請求項８】
撮像装置と、照明装置と、前記照明装置および撮像装置を制御して検査対象物の画像を生成し、生成された画像中の正反射光像を処理して前記検査対象物の表面状態を検査する制御処理装置とを具備し、
前記照明装置には、被検査面に対する入射角度が異なる複数の点灯範囲が設定され、各点灯範囲に、それぞれ他の範囲とは異なる色彩光を発する複数個の発光体が配列された構成の複数の複数の照明部が、撮像装置の撮像範囲をそれぞれ入射角度が異なる方向から照明するように設けられており、
前記制御処理装置は、各照明部が同じ点灯範囲にある他の照明部とは異なる形態の照明パターンを点灯するように各発光体の点消灯を制御する照明制御手段；この照明制御手段の制御による照明下で撮像装置に撮像を行わせる撮像制御手段；前記撮像により生成された画像に現れている反射パターンを抽出するパターン抽出手段；抽出された反射パターンの色彩および形態の組み合わせと各照明部の照明パターンの色彩および形態の組み合わせとの対応関係に基づき、前記反射パターンが抽出された各部位の傾斜角度を求める傾斜角度特定手段；前記反射パターンが抽出された各部位につき求められた傾斜角度を用いて被検査面の表面状態を判別する判別手段；の各手段を具備する表面状態検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、表面に曲面や傾斜面が含まれる対象物を検査対象として、画像処理の手法により、検査対象物の表面状態を検査する技術に関する。
【背景技術】
【０００２】
出願人は、従前より、「カラーハイライト方式」と呼ばれる基板外観検査装置を数多く開発している。このカラーハイライト方式の検査装置は、２次元カラーカメラ（以下、単に「カメラ」という。）と、赤、緑、青の３種類の色彩光をそれぞれ異なる入射角度をもって基板に照射する照明装置とを具備するもので、照明装置による照明下で撮像を行うことにより、はんだフィレットの傾斜状態が赤、緑、青の３色の分布パターンにより表現されたカラー画像を生成する（特許文献１参照。）。
【０００３】
上記の検査装置では、はんだフィレット（以下、単に「フィレット」という。）の傾斜状態をチェックするために、赤、緑、青の各色彩が現れている領域を２値化により抽出する。そして抽出された各色彩領域の面積や位置などを計測し、得られた計測値をあらかじめ登録された判定基準値と比較することによって、フィレットが正しく形成されているかどうかを判断する。
【０００４】
またカラーハイライト照明に代えて、入射角度の範囲が異なる単色の照明光により基板を順に照射しながら、照明の都度、撮像を実行し、毎時の撮像により生成された画像からそれぞれ反射光像を抽出するものもある（特許文献２参照）。
【０００５】
【特許文献１】特公平６−１１７３号公報
【特許文献２】特許第２７７８６８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記の各文献に代表される従来の検査装置では、フィレットの傾斜角度は、３段階にしか切り分けられない。勿論、カラーハイライト照明の場合、三原色以外の色彩光を照明光に加えれば、傾斜角度をより細かい単位で検出することが可能であるが、光源にかかるコストが高くなったり、２値化などの画像処理が複雑になるなどの問題がある。単色照明の場合にも、点灯範囲を細かく分けて撮像回数を増やせば、傾斜角度を細かい単位で検出できるが、処理時間が長くなってしまう。
【０００７】
この発明は上記の問題に着目してなされたもので、コストの増加や検査効率を低下させることなく、被検査面の傾斜角度を従来よりも細かい単位で検出できるようにすることを、目的とする。
【課題を解決するための手段】
【０００８】
この発明による表面状態検査方法は、所定広さの被検査面が表面に含まれる検査対象物を照明して、被検査面を撮像装置により撮像し、生成された画像中の正反射光像を用いて被検査面の表面状態を検査するものである。この方法では、複数個の発光体が配列された構成の複数の照明部を、それぞれ入射角度が異なる方向から被検査面を照明するように配備するとともに、各発光体の点消灯を制御することにより、各照明部に他の照明部とは異なる形態の照明パターンを点灯させて、その照明下で撮像装置により被検査面を撮像する。さらに、撮像により生成された画像に現れている反射パターンを抽出し、抽出された反射パターンの形態と各照明部の照明パターンの形態との対応関係に基づき、反射パターンが抽出された各部位の傾斜角度を求め、これらの傾斜角度を用いて被検査面の表面状態を判別する。
【０００９】
上記の方法における照明によれば、各照明部ではそれぞれ固有の形態の照明パターンが点灯するので、これらのパターンのうちのいずれかが被検査面で正反射して撮像装置に入射すると、画像中にも同様の形態の反射パターンが現れる。よって、この反射パターンの形態から、対応する照明パターンおよびその照明の方向を特定することができるので、反射パターンが抽出された部位の傾斜角度を求めることができる。
【００１０】
よって、照明部の数を、従来のカラーハイライト照明の光源より多い４以上にすれば、従来よりも細かい単位で傾斜角度を検出することが可能になる。また、各照明部の発光色が同一であっても、一度の撮像で傾斜角度を求めることができる。
【００１１】
画像中の反射パターンの形態に対応する照明パターンは、たとえば、パターンマッチングの手法によって特定することができる。
【００１２】
上記方法にかかる好ましい態様では、各照明部の発光体の数および配列状態を統一し、これらの照明部の発光体の点消灯の組み合わせがそれぞれ当該照明部からの照明の方向を表すバイナリコードを示すように、各照明部の点灯動作を制御する。さらに、反射パターンが抽出された部位について、その反射パターンが示すバイナリコードを読み取り、この読み取り情報を用いて傾斜角度を算出する。
【００１３】
上記の態様によれば、画像中の反射パターンから照明の方向を示す情報を読み取ることができるので、照明の方向を特定する処理が簡単になる。よって、反射パターンの数が増えても、短時間で傾斜角度を求めることができる。
【００１４】
さらに好ましい態様では、複数の方位に、それぞれ上記の照明部を複数個、入射角度が異なる方向から被検査面を照明するように配備する。そして、各照明部における位置関係が同一になる所定数の発光体を識別用の発光体に設定し、これらの識別用の発光体による点消灯のパターンが各照明部で統一され、かつこの点消灯のパターンによって照明パターンの向きが表され、その他の発光体の点消灯パターンにより照明の方位および入射角度を示すバイナリコードが表されるように、各発光体の点消灯を制御する。また、画像中の反射パターンの中から、識別用の発光体による点消灯パターンに対応する部分を抽出し、その抽出部分と反射パターン全体との位置関係に基づき反射パターンと照明パターンとの対応関係を特定してから、前記バイナリコードを読み取る処理を実行する。
【００１５】
上記の態様によれば、傾斜の生じている方向によって、画像中の反射パターンの向きが変動しても、識別用の発光体の点消灯パターンに対応する部分から反射パターンと照明パターンとの対応関係を特定することができるので、バイナリコードの読み取りに誤りが生じるおそれがない。よって、傾斜の生じた方向およびその傾斜の程度を正しく認識して、判別精度を確保することができる。
【００１６】
この発明による他の表面状態検査方法では、被検査面に対する入射角度が異なる複数の点灯範囲が設定され、各点灯範囲に、それぞれ他の範囲とは異なる色彩光を発する複数個の発光体が配列された構成の複数の照明部を、それぞれ入射角度が異なる方向から被検査面を照明するように配備する。また、各照明部がそれぞれ同じ点灯範囲にある他の照明部とは異なる形態の照明パターンを点灯するように、各発光体の点消灯を制御して、その制御による照明下で撮像装置により被検査面を撮像する。さらに撮像により生成された画像に現れている反射パターンを抽出し、抽出された反射パターンの色彩および形態の組み合わせと各照明部の照明パターンの色彩および形態の組み合わせとの対応関係に基づき、反射パターンが抽出された各部位の傾斜角度を求め、これらの傾斜角度を用いて被検査面の表面状態を判別する。
【００１７】
上記の方法によれば、各照明パターンの色彩と形態との組み合わせによって、照明部の数を増やすことができるから、さらに細かい単位で傾斜角度を検出することが可能になる。
【００１８】
上記の方法が適用される検査対象物は、たとえばはんだ付け後のプリント基板におけるはんだフィレットであるが、これに限らず、部品のリード、成形品など、鏡面反射性の高い物体を検査対象物とすることもできる。
【００１９】
この発明による表面状態検査装置は、撮像装置と、照明装置と、前記照明装置および撮像装置を制御して検査対象物の画像を生成し、生成された画像中の正反射光像を処理して検査対象物の表面状態を検査する制御処理装置とを具備する。照明装置には、複数個の発光体が配列された構成の照明部が、撮像装置の撮像範囲をそれぞれ入射角度が異なる方向から照明するように設けられる。
また制御処理装置には、各照明部がそれぞれ他の照明部とは異なる形態の照明パターンを点灯するように各発光体の点消灯を制御する照明制御手段；この照明制御手段の制御による照明下で撮像装置に撮像を行わせる撮像制御手段；前記撮像により生成された画像に現れている反射パターンを抽出するパターン抽出手段；抽出された反射パターンの形態と各照明部の照明パターンの形態との対応関係に基づき、反射パターンが抽出された各部位の傾斜角度を求める傾斜角度特定手段；反射パターンが抽出された各部位につき求められた傾斜角度を用いて被検査面の表面状態を判別する判別手段；の各手段が設けられる。
【００２０】
なお、撮像装置は、２次元カメラであるのが望ましいが、これに限らず、たとえばラインセンサを走査しながら複数回の撮像を行うことによって、撮像範囲全体の画像を生成してもよい。この場合、「１回の撮像」とは、撮像範囲全体の画像を得るまでに行われる１サイクル分の撮像を意味するものとする。
【００２１】
好ましい態様にかかる表面状態検査装置では、照明装置の各照明部の発光体の数および配列状態が統一される。また照明制御手段は、各照明部の発光体の点消灯の組み合わせが、それぞれ当該照明部からの照明の方向を表すバイナリコードを示すように、各発光体の点消灯を制御し、傾斜角度特定手段は、前記反射パターンが抽出された部位について、その反射パターンから前記バイナリコードを読み取り、この読み取り情報を用いて傾斜角度を算出するように、それぞれ構成される。
【００２２】
さらに、好ましい態様にかかる表面状態検査装置では、照明装置において、撮像範囲に対する方位が異なる複数の位置毎に、複数の照明部がそれぞれ入射角度が異なる方向から撮像範囲を照明するように配備される。照明制御手段は、各照明部における位置関係が同一になる所定数の発光体を識別用の発光体に設定し、これらの識別用の発光体による点消灯のパターンが各照明部で統一され、かつこの点消灯パターンによって照明パターンの向きが示され、その他の発光体の点消灯パターンによって前記照明の方位および入射角度を示すバイナリコードが表されるように、各発光体の点消灯を制御する。傾斜角度特定手段は、前記画像中の反射パターンの中から、識別用の発光体による点消灯パターンに対応する部分を抽出し、その抽出部分と反射パターン全体との位置関係に基づき反射パターンと照明パターンとの対応関係を特定してから、バイナリコードを読み取る処理を実行する。
【００２３】
さらに、より細かい単位で傾斜角度を検出可能な検査装置においては、照明装置には、被検査面に対する入射角度が異なる複数の点灯範囲が設定され、各点灯範囲に、それぞれ他の範囲とは異なる色彩光を発する複数個の発光体が配列された構成の複数の複数の照明部が、撮像装置の撮像範囲をそれぞれ入射角度が異なる方向から照明するように設けられる、制御処理装置には、各照明部が同じ点灯範囲にある他の照明部とは異なる形態の照明パターンを点灯するように各発光体の点消灯を制御する照明制御手段；この照明制御手段の制御による照明下で撮像装置に撮像を行わせる撮像制御手段；前記撮像により生成された画像に現れている反射パターンを抽出するパターン抽出手段；抽出された反射パターンの色彩および形態の組み合わせと各照明部の照明パターンの色彩および形態の組み合わせとの対応関係に基づき、反射パターンが抽出された各部位の傾斜角度を求める傾斜角度特定手段；反射パターンが抽出された各部位につき求められた傾斜角度を用いて被検査面の表面状態を判別する判別手段；の各手段が設けられる。
【発明の効果】
【００２４】
この発明によれば、被検査面の傾斜角度を細かい単位に切り分けて検出することができるから、表面状態の判別精度を向上することができる。また、複数色の色彩光による照明を行わない場合でも、１回の撮像で検査に必要な画像を得ることができるから、効率を向上することができる。
【発明を実施するための最良の形態】
【００２５】
図１は、この発明が適用される基板検査装置のブロック図である。
この基板検査装置は、はんだ付け処理後のプリント基板を対象に、フィレットの表面状態などを検査するためのもので、２次元のモノクロカメラ１（以下、単に「カメラ１」という。）、照明装置２、Ｘステージ部３、Ｙステージ部４、制御処理装置５などを具備する。また、図示はしていないが、検査対象の基板を支持するために、基板支持テーブルが設けられる。
【００２６】
Ｘステージ部３は、カメラ１および照明装置２を基板支持テーブルの上方で支持し、Ｙステージ部４は基板支持テーブルを支持する。いずれのステージ部３，４とも、その支持対象を、一軸に沿って移動させることが可能である。また一方のステージ部による移動の方向は、他方のステージ部による移動の方向に直交する関係にある。
【００２７】
制御処理装置５は、コンピュータによる制御部５０に、画像入力部５１、撮像制御部５２、照明制御部５３、Ｘステージ駆動部５４、Ｙステージ駆動部５５、入力部５６、表示部５７、通信用インターフェース５８などが接続された構成のものである。
【００２８】
画像入力部５１には、カメラ１からの画像信号を受け付けるインターフェース回路や、画像信号をディジタル変換するＡ／Ｄ変換回路などが含まれる。撮像制御部５２は、カメラ１の撮像タイミングを制御する。照明制御部５３は、照明装置２の点消灯を制御することにより、検査対象の基板に対し、後記する種々の照明パターンによる照明を行わせる。
【００２９】
入力部５６は、ティーチングの際の設定操作などを行うためのもので、キーボードやマウスなどを含む。表示部５７は、検査用の画像や検査結果などを表示するためのもので、液晶パネルなどにより構成される。通信用インターフェース５８は、検査結果を外部の装置に送信する目的で使用される。
【００３０】
上記構成において、制御部５０内のメモリには、基板に割り付けられた撮像対象領域にカメラ１を位置合わせするのに必要なＸ，Ｙステージ部３，４の移動量が登録される。またフィレット検査用の検査データとして、検査対象の部品の位置やその部品のフィレットが良好であるときの傾斜角度などが登録される。
【００３１】
制御部５０は、上記の登録データに基づき、Ｘステージ駆動部５４やＹステージ駆動部５５を介してＸステージ部３およびＹステージ部４の移動量を調整して、カメラ１の視野を基板の撮像対象領域に位置合わせする。そして、この位置合わせ状態下で照明装置２に照明を行わせながらカメラ１を駆動し、検査用の画像を生成する。この画像は、画像入力部を介して制御部５０内の画像メモリ（図示せず。）に入力される。
【００３２】
制御部５０は、メモリに登録された設定データに基づき、入力画像の所定位置に検査領域を設定し、その領域内の画像を２値化することによって、照明装置２からの照明パターンに対する正反射光像（以下、「反射パターン」という。）を抽出する。そして、抽出された反射パターンの画像を後記する方法で処理することによって、フィレットの傾斜状態が良好であるかどうかを判断する。
【００３３】
図２は、上記基板検査装置の光学系の構成を示す（（Ａ）は光学系の全体構成の概略を示し、（Ｂ）は照明装置２の一部の構成を示す。）。
この実施例の照明装置２は、半球状の筐体２０の内周面に複数のＬＥＤ２２（詳細には２２ａ，２２ｂに分類される。）が配置された構成のものである。筐体２０の天頂部分には、カメラ１の覗き穴２１が形成され、カメラ１は、その撮像面を真下に向けた状態にして、照明装置２の覗き穴２１の上方に配備される。カメラ１の倍率は、基板面の覗き穴２１に対向する範囲を撮像できるように調整される。なお、ＬＥＤ２２ａ，２２ｂは、すべて白色発光タイプのもので、径や発光強度も同一である。
【００３４】
照明装置２の筐体２０には、周方向および上下方向（天頂部から周面に沿って下面に向かう方向をいう。）が、それぞれ複数の範囲に区分けされる。各ＬＥＤ２２は、これらの区分けにより設定された領域に、それぞれ一定の配列パターンをもって配置される。
【００３５】
なお、図２の（Ａ）では、各領域の境界線を点線で示しているが、図示の都合上、境界線の数を実際よりも少なくしている。実際には、周方向は１６分割され、上下方向は、覗き穴の部分も含め、１５分割される。いずれの方向も等角度間隔をもって分割される。
【００３６】
図２（Ｂ）は、ＬＥＤ２２の配列パターンを４領域分抽出して拡大したものである。図中、点灯中のＬＥＤ２２を白抜きにし、消灯しているＬＥＤ２２を、斜線を付して示している（以下も同じ。）。
【００３７】
この実施例では、多数のＬＥＤ２２ｂを領域間の境界線に沿って連続的に配置することにより、各領域を明示するようにしている。これらの領域には、それぞれ１２個のＬＥＤ２２ａが、３×４のマトリクス状に配置されている。ＬＥＤ２２ｂは、領域の明示のためにすべて点灯状態に設定される（以下、これらを「境界表示用ＬＥＤ２２ｂ」という。）。領域内の１２個のＬＥＤａ（以下、これらを「マトリクスＬＥＤ２２ａ」という。）には、点灯するものと消灯するものとがあり、その点消灯の組み合わせは領域毎に異なるものになる。
【００３８】
上記のような設定により、境界表示用ＬＥＤ２２ｂにより区切られた１つ１つの領域は、それぞれマトリクスＬＥＤ２２ａの数および配列状態が統一された「照明部」として機能するようになる（境界表示用ＬＥＤ２２ｂの数は、領域によって変動する。）。また、いずれの照明部も、他の照明部とは異なる形態の照明パターンを点灯させるものとなる。
【００３９】
上記において、各領域の位置は、基板に対する方位角αおよび仰角βの組み合わせにより表すことができる。なお、これらの角度α，βは、図３に示すように、照明装置２の中心軸Ｃ（覗き穴２１の中心を通る軸であり、カメラ１の光軸もこの軸Ｃに合わせられる。）を基準に求められるものとする。
【００４０】
そこで、この実施例では、周方向および上下方向の方向毎に、各領域の並び順序を表すコードを設定し、これらのコードと各領域の角度α、βとを対応づけたテーブルを設定する。図４は、このテーブルの具体例を示す。
【００４１】
前述したように、周方向（０〜３６０°）は１６分割されるので、１領域あたりの方位角αの変化の幅は２２．５°となる。また上下方向（０〜９０°）は１５分割されるので、１領域あたりの仰角βの変化の幅は６°となる。これに基づき、図４のテーブルでは、方位角αについては、２２．５°を１単位として０〜１５の各コードを対応づけ、仰角βについては、６°を１単位として０〜１４のコードを対応づける。ただし、仰角がコード１４に対応する領域（βが８４°以上になる領域）には覗き穴２１が形成されるので、ＬＥＤ２２が配置されることはない。
【００４２】
図４のテーブルは、制御部５０のメモリ内に登録され、フィレットの傾斜角度の算出処理に使用される。なお、図４では、各コードの１０進表記と２進表記とを並列表示しているが、コードとして実際に登録されるのは２進のコード（バイナリコード）である。
【００４３】
図４のテーブルによれば、各領域の方位角αおよび仰角βを、それぞれ４ビットのバイナリコードに置き換えることができる。したがって、図５（１）に示すように、α、βの各コードを組み合わせて、８ビットのバイナリコードを設定することができる。このコードの内容は、領域毎に異なるものになる。
【００４４】
図５（１）のバイナリコードによれば、図４のテーブルを参照することにより、コードの上位４ビットｂ７〜ｂ４から方位角αを特定することができ、下位４ビットｂ３〜ｂ０から仰角βを特定することができる。
【００４５】
この実施例では、各領域のマトリクスＬＥＤ２２ａの点消灯の組み合わせにより、上記のバイナリコードを表すようにしている。図５（２）は、バイナリコードの各ビットとＬＥＤ２２ａとの対応関係を示す。
この図に示すように、マトリクス中の４隅を除く８個のＬＥＤ２２ａには、それぞれ図５（１）に示したバイナリコードの各ビットｂ０〜ｂ７が割り当てられる。これらのＬＥＤ２２ａは、対応するビットのデータが「１」であれば点灯し、「０」であれば消灯するように、制御される。
【００４６】
また４隅のＬＥＤ２２ａは、マトリクスの向きの特定のために使用される。具体的には、左端のＬＥＤ２２ａは常に消灯し、その他の３つのＬＥＤ２２ａは常に点灯するように、設定される。
【００４７】
図６は、図５（２）に示した割り当てに基づき、マトリクスＬＥＤ２２ａの照明パターンによりコードを表現した例を示す。この例の照明パターンは「１０１１１１００」というコードを示している。これを図４のテーブルにより照合すると、方位角αは２４７．５°、仰角βは７２°となる。
【００４８】
このように、照明装置２の各領域（照明部）では、それぞれその領域からの照明の方向を表すバイナリコードをＬＥＤ２２ａの点消灯の組み合わせにより表した照明パターンを点灯する。これらの照明パターンによる照明光は、基板上のフィレットで正反射し、そのうちフィレットの傾斜角度や傾斜の向きに対応する所定の照明パターンの正反射光がカメラ１に入射する。画像に現れた正反射光像は、対応する照明パターンの点消灯状態を反映したものとなるので、この画像を処理することにより、フィレットで正反射してカメラ１に入射した光の方向を示す情報（角度α，β）を特定することができる。
【００４９】
この点に鑑み、この実施例では、照明パターンに対応する画像中の正反射光像のパターン（以下、「反射パターン」という。）を抽出し、そのパターンから対応する照明パターンのバイナリコードを読み取る。さらに、読み取ったコードにより図４のテーブルを参照することによって、照明パターンの方位角αおよび仰角βを特定する。
【００５０】
図７は、反射パターンを抽出して角度α，βを特定するまでの処理を具体的に示す。
反射パターンを抽出するには、まず各領域を切り分けて認識する必要がある。そこで、この実施例では、処理対象の画像を２値化した後、その２値画像から輪郭表示用ＬＥＤ２２ｂが表す輪郭線の交点の反射パターンを抽出する。図中、細線の点線枠ｒにより囲んだ部分が、交点の反射パターンである。この実施例では、これらの交点を起点に輪郭線を追跡し、輪郭線より所定距離だけ内側になる位置を境界とする範囲ｓを、マトリクスＬＥＤ２２ａが含まれる照明部として特定する。
【００５１】
なお、交点の反射パターンの抽出は、このパターンを種々の方向に回転させたモデル（図８参照）を用いたパターンマッチングにより行われる。実際の画像における反射パターンは、図７のように整ってはおらず、フィレットの形状によって歪んだパターンになる可能性が高い（図９参照。）。しかし、歪みが生じても各境界線の関係が変わることはないので、交点の反射パターンを検出することができる。よって検出された交点を起点にした輪郭線追跡の結果に基づき、各マトリクスの範囲ｓを安定して求めることができる。
【００５２】
ただし、画像中のマトリクス部分の反射パターンの配列は、照明パターンとは左右が反転したものとなり、また配列の向きも、対応する照明パターンの方位によって異なるものになる。このため、この実施例では、マトリクスの配列が照明パターンと同様になるように補正してから、コードを読み取るようにしている。
【００５３】
マトリクスの補正は、４隅の点消灯パターンに基づいて行われる。先に説明したように、照明装置２では、いずれの領域においても、マトリクスの４隅のうち左上頂点にあたるＬＥＤ２２ａのみが消灯し、その他の３個のＬＥＤ２２ａは点灯している。したがって、反射パターン中のマトリクスでも、４隅のうちの１箇所のみが「黒」となり、残り３箇所は「白」となる。
【００５４】
そこで、この実施例では、まず図７の（Ｂ）に示すように、画像から切り出した反射パターンを、その４隅のうちの「黒」の箇所が右上頂点になるように回転し、さらに図７の（Ｃ）に示すように、回転後の反射パターンの左右の配列を逆転する。この２段階の補正により、反射パターンの配列が照明パターンと同様になると、マトリクスの各部位に対し、図５に示した割り当て法則を適用して、各ビットのデータを認識する（図７の（Ｄ）参照。）。すなわち、コードを表す８個のＬＥＤ２２ａに対応する部位のうち、「黒」の部位に対応するビットを「０」と認識し、「白」の部位に対応するビットを「１」と認識する。
【００５５】
なお、上記図７の（Ｃ）の処理は必ずしも必要ではなく、画像の回転補正の後に、マトリクス中の各部位に対し、図５とは左右を逆転させた関係で各ビットを対応づけて、コードの認識処理を行ってもよい。
【００５６】
上記の処理により、８ビットのバイナリコードが判明すると、さらにこのコードにより図４のテーブルを参照することにより、方位角αおよび仰角βを特定する（図７の（Ｅ）参照。）。
【００５７】
この実施例では、３×４のマトリクスを構成するＬＥＤ２２ａの４隅のＬＥＤを、マトリクスの方向を表す識別用の発光体としているので、画像中の反射パターンがいずれの方向を向いていても、その方向を正しく認識することができる。勿論、識別用の発光体２２ａの位置は上記に限るものではなく、またＬＥＤ２２ａの配置もマトリクス状に限定する必要はない。しかし、コード表示用のＬＥＤ２２ａの点消灯の組み合わせがどのようになっても、これらと識別用のＬＥＤとの誤認識が生じないようにするには、各ＬＥＤ２２ａをマトリクス状に配置し、その４隅を識別用に使用するのが望ましいと思われる。
例えば、図１０（Ａ）に示すように、バイナリコードを表す各ＬＥＤを２×４のマトリクスにして配置し、その上方に識別用のＬＥＤを２個配置し、識別用の各ＬＥＤを点灯状態にすると、図１０（Ｂ）のように、マトリクスの下段のコードの表示状態が識別用の点灯パターンと同様になった場合には、反射パターンの上下どちらが識別用であるかを判別できなくなってしまう。
【００５８】
上記の処理により特定された角度のうち、方位角αは、フィレットの傾斜の方向を認識するためのパラメータとして用いられる。また仰角βは、フィレットの傾斜角度の算出に用いられる。
【００５９】
ここで、仰角βを用いた傾斜角度の算出方法について、簡単に説明する。
この実施例では、カメラ１の光軸が鉛直方向に合わせられているので、フィレットの傾斜面に対する照明光および正反射光の関係は、概ね図１１に示すようになる。
【００６０】
なお、図中、角度θはフィレットの傾斜角であり、点Ｐはフィレット上の１点である。
この図１１の関係によれば、角度θは下記の（１）式により表される。したがって、反射パターンから読み取ったバイナリコードが表す仰角βを（１）式にあてはめることにより、フィレットの傾斜角度θを求めることができる。
θ＝（９０°−β）／２  ・・・（１）
【００６１】
図１２は、検査対象のフィレット（良品とする。）の形状の一例を示す。図１３（Ａ）は、上記のフィレットを照明装置２の各照明パターンによる照明下で撮像して得られた画像を模式的に示したものである。さらに図１３（Ｂ）は、この画像を図７に示した方法により処理して得られた方位角αおよび仰角βを示し（上段が仰角、下段が方位角である。）、（Ｃ）はフィレットの傾斜角度を算出した結果を示す。
【００６２】
なお、図１３（Ａ）では、境界表示用ＬＥＤ２２ｂの反射光像を省略し、代わりに各領域のマトリクスの範囲ｓを表す矩形枠を示している。（Ｂ）（Ｃ）でも、領域毎の結果を矩形枠内に示す。
【００６３】
この例では、画像の左右方向に沿う３列に、それぞれ６個の反射パターンが並んでいる。また各反射パターンの読み取り結果によれば、各列における方位角αは同値であり、仰角βが変化している。このように隣り合う領域間の方位角αが等しく、仰角βが変化している場合には、αが示す方位に沿って傾斜が生じていると考えられる。よって、この実施例では、角度の読み取り結果から方位角αが同じ領域が連続している方向を特定し、この方向における傾斜角度の変化に基づいてフィレットの傾斜状態を認識するようにしている。
【００６４】
図１３の例によれば、各反射パターンにより、２４７．５°、２７０．５°、２９２．５°の各方位を傾斜の方向として特定することができる。また、これらの方向のいずれにおいても、フィレットの傾斜角度は３°単位で減少している。よって、フィレットの良好な傾斜状態を反映した結果が得られていると考えられる。
【００６５】
図１４は、図１３と同じ部品について、フィレットの不良形状と傾斜角度の算出結果とを対応づけて示す。図１４（１）は、フィレットが形成されずに平坦になってしまった例であり、傾斜面の中間位置に相当すべきが検出されるべき部分の傾斜角度の算出結果が０°になっている。図１４（２）は、はんだの量が不十分であったために、フィレットの高さや傾斜角度が基準に達していない例である。
【００６６】
上記の図１３、１４の例に示すように、この実施例の照明装置２によれば、フィレットの傾斜角度を、従来の三原色によるカラーハイライト照明よりも細かく検出することができる。またこの実施例では、白色発光タイプのＬＥＤを用いるが、撮像回数は１回で済むので、コストをかけずに効率良く検査を行うことができる。
【００６７】
図１５は、フィレット検査の具体的な処理手順を示す。
この処理は、検査対象の基板が基板支持テーブルに搬入されたことに応じて開始される。まず最初のＳＴ１では、基板の撮像対象領域にカメラ１の視野を合わせ、照明装置２の各領域にそれぞれ前記した照明パターンを点灯させ、その状態下で撮像を行う。ＳＴ２では、生成された画像中のランドに対応する位置毎に、検査領域を設定する（各検査領域の設定データは、ティーチングによりあらかじめ登録されている。）。
【００６８】
以下、設定された検査領域毎にＳＴ３〜１３の処理を実行する。
ＳＴ３では、検査領域内の画像を２値化する。この２値化により、境界表示用ＬＥＤ２２ｂおよびコード表示用ＬＥＤ２２ａ中の点灯しているＬＥＤに対応する部位を白画素とし、消灯しているコード表示用ＬＥＤ２２ａに対応する部位を黒画素とする２値画像が生成される。
【００６９】
ＳＴ４では、上記の２値画像に対し、図８に示した各種モデルを用いたパターンマッチングを実行して、交点の反射パターンを抽出する。さらにＳＴ５では、抽出された各交点間の輪郭線を追跡し、その結果に基づき、領域毎にマトリクスの範囲を特定する。この後は、各領域に順に着目して、ＳＴ６〜９の処理を実行する。
【００７０】
ＳＴ６では、上記ＳＴ５で特定した範囲内の反射パターンの中から、３×４マトリクスの４隅を認識する。つぎに、ＳＴ７では、４隅のうち「黒」に設定されている部位（すなわち消灯しているＬＥＤ２２ａに対応する部位）を抽出し、この抽出部位が左上頂点となるように、マトリクスの回転補正（図７（Ｂ）に示したもの）および並び順序の補正（図７（Ｃ）に示したもの）を実行する。なお、図９に示したように、マトリクスに歪みが生じている場合には、回転補正の前に、マトリクスの範囲ｓの形状が矩形になるように画像を補正するのが望ましい。
【００７１】
ＳＴ８では、上記補正後のマトリクスにつき、４隅以外の各ＬＥＤ２２ａに対応する部位を特定し、それぞれの部位が白・黒のいずれであるかにより、その部位が表すコードを認識する。
【００７２】
ＳＴ９では、上記ＳＴ８で認識した各ビットのコードを、上位４ビットのコードと下位４ビットのコードとに切り分ける。そして、各コードにより図４に示したテーブルを照合することによって、それぞれのコードが示す方位角αおよび仰角βを、照明光の方向として特定する。
【００７３】
抽出されたすべての領域に対して上記ＳＴ６〜９が実行されると、ＳＴ１０が「ＹＥＳ」となってＳＴ１１に進む。
ＳＴ１１では、方位角αが同じ値になる領域が連続する部分を抽出し、これらの領域の並び方向を傾斜の方向として認識する。さらにつぎのＳＴ１２では、各領域毎に、仰角βを（１）式にあてはめて傾斜角度θを算出する。
【００７４】
ＳＴ１３では、ＳＴ１１で認識した傾斜の方向や、その方向における傾斜角度の変化量を、メモリに登録された基準のデータと比較することによって、フィレットの形状が適正であるかどうかを判定する。
【００７５】
上記ＳＴ３〜１３の処理により１検査領域に対する検査が終了すると、その検査結果はメモリの作業領域に一時保存される。以下も、設定された検査領域毎に同様の処理を実行する。また、全ての検査領域に対する処理が終了すると、ＳＴ１に戻り、他の撮像対象領域に対し、同様の処理を実行する。
【００７６】
こうして、基板上のすべてのフィレットに対する検査が終了すると、ＳＴ１４，１５がともに「ＹＥＳ」となってＳＴ１６に進む。ＳＴ１６では、メモリに蓄積された判定結果を用いて、基板全体に対する最終的な良否判定を行い、その結果を外部装置などに出力する。
【００７７】
なお、上記図１５では、フィレット検査の手順のみを示したが、この実施例の基板検査装置で実施できる検査はこれに限らず、部品の欠落や位置ずれ等を検査することもできる。これらの検査を行う場合には、上記した照明パターンによる照明ではなく、全てのＬＥＤを点灯するようにしてもよい。
【００７８】
図１６は、基板検査装置の光学系の他の例を示す。
この実施例では、照明装置２の筐体２０の上下方向を３つの範囲に分けて、各範囲にそれぞれ赤色発光のＬＥＤ、緑色発光のＬＥＤ、青色発光のＬＥＤを配置する。またカメラ１にはカラーカメラを使用する。
さらに図示は簡単化しているが、上記３つの範囲は、いずれも１５個に細分されている。また筐体２０の周方向も、先の実施例と同様に１６の範囲に区分けされる。
【００７９】
上記の区分けにより設定された領域には、それぞれ先の実施例と同様の規則に基づきＬＥＤ２２ａ，２２ｂが配置される。３×４のマトリクスに対する点消灯制御の方法、コードの読取り処理、検査の手順なども、先の実施例と同様である。
【００８０】
ただし、この実施例では、仰角βは、マトリクスＬＥＤ２２ａにより表されるバイナリコードと、これらのＬＥＤ２２ａの発光色との組み合わせにより表される。すなわち、同一のコードであっても、ＬＥＤ２２ａの発光色によって、βの値は異なるものになる。
【００８１】
上記構成の照明装置２によれば、画像中の反射パターンに対応する照明パターンの仰角βを、より細かい角度単位で特定することが可能になるので、フィレットの傾斜角度も、より細かく検出することが可能になる。よって、フィレットの形状の認識精度が高められ、もって検査の精度も高めることができる。
【００８２】
なお、上記図２や図１６の光学系の構成は、基板検査装置に限らず、フィレット以外の物の検査に使用することもできる。この場合、検査対象物によっては、全方位からの照明ではなく、方位を特定して、その特定された方位から、複数の照明パターンを照射するようにしてもよい。この場合、各領域の表示するバイナリコードは、仰角βのみを表すものでもよい。
【００８３】
検査対象物の鏡面反射性によっては、明瞭な反射パターンが得られない可能性もある。図１７は、このような検査対象物に対する反射パターンの検出精度を確保することを目的とした光学系の構成を示す。
【００８４】
この実施例のカメラ１および照明装置２は、基本的には図２に示したものと同様の構成のものであるが、照明装置２の内周面およびカメラ１と照明装置２との間に、それぞれ偏光フィルタ２５，２６が設けられている。照明装置２側の偏光フィルタ２５は、（Ｂ）の拡大図に示すように、各領域毎に、偏光の方向が上下方向に対応するようにして各ＬＥＤ２２の前方に配備される。また、カメラ１と照明装置２との間の偏光フィルタ２６は、図示しない支持部材に回転可能に支持される。
【００８５】
さらにこの実施例では、図１８に示すように、照明装置２の各領域を同じ方位にあるもの毎にグループ分けし、カメラ１の露光期間中に各グループを順次点灯させるとともに、偏光フィルタ２６を一回転させる。また、偏光フィルタ２６は、１グループの点灯期間中に２２．５°回転し、その偏光の方向が、点灯中の領域からの照明に対する正反射光の偏光の方向に対応するように、調整される。
【００８６】
上記の制御によれば、各領域からの照明光に対する反射光のうち、正反射光のみが偏光フィルタ２６を通過してカメラ１に入射するので、検査対象物の鏡面反射性が低い場合でも、拡散光によるノイズを除去でき、照明パターンに対する反射パターンを鮮明に抽出することが可能になる。また、この制御はカメラ１の露光期間中に行われるので、撮像回数は１回で済み、検査時間が長くなることもない。
【図面の簡単な説明】
【００８７】
【図１】基板検査装置のブロック図である。
【図２】基板検査装置の光学系の構成を示す説明図である。
【図３】方位角および仰角の求め方を示す説明図である。
【図４】各領域の順序を示すコードと方位角および仰角との対応関係を示すテーブルである。
【図５】バイナリコードが示す情報の内容、およびこのコードの各ビットをマトリクスＬＥＤに割り当てた例を示す説明図である。
【図６】マトリクスＬＥＤの表示対象の情報と照明パターンとの対応例を示す説明図である。
【図７】照明パターンに対する画像処理方法を示す説明図である。
【図８】領域の交点の反射パターンの抽出に用いられるモデルの例を示す説明図である。
【図９】反射パターンに歪みの生じた画像の例を示す説明図である。
【図１０】コード表示用ＬＥＤの他の配置例とその問題点を示す説明図である。
【図１１】基板からフィレットへの照明光とカメラ１に入射する正反射光との関係を示す説明図である。
【図１２】検査対象のフィレットの形状を示す説明図である。
【図１３】図１２のフィレットの画像、この画像に現れている反射パターンのコードを読み取った結果、および傾斜角度の算出結果を対応づけて示す説明図である。
【図１４】不良部位の形状と傾斜角度の算出結果とを対応づけて示す説明図である。
【図１５】検査の手順を示すフローチャートである。
【図１６】光学系の他の例を示す説明図である。
【図１７】光学系の他の例を示す説明図である。
【図１８】図１７の光学系に対する制御例を示すタイミングチャートである。
【符号の説明】
【００８８】
１  カメラ１
２  照明装置２
５  制御処理装置
２２  ＬＥＤ
２２ａ  マトリクスＬＥＤ
５０  制御部
【図１】
2008216180.tif 000003
【図２】
2008216180.tif 000004
【図３】
2008216180.tif 000005
【図４】
2008216180.tif 000006
【図５】
2008216180.tif 000007
【図６】
2008216180.tif 000008
【図７】
2008216180.tif 000009
【図８】
2008216180.tif 000010
【図９】
2008216180.tif 000011
【図１０】
2008216180.tif 000012
【図１１】
2008216180.tif 000013
【図１３】
2008216180.tif 000014
【図１５】
2008216180.tif 000015
【図１６】
2008216180.tif 000016
【図１８】
2008216180.tif 000017
【図１２】
2008216180.tif 000018
【図１４】
2008216180.tif 000019
【図１７】
2008216180.tif 000020