(57)【特許請求の範囲】
【請求項１】
電子部品のリードパターンを光電変換する画像入力手段と、前記画像入力手段からの濃淡画像を任意の閾値と比較し２値画像に変換する２値化手段と、前記２値化手段からの２値画像に対し１層ずつの細め処理を繰り返しパターンの芯線を抽出する細線化手段と、前記細線化手段からの画素消去フラグに基づき細め処理の回数に対応する距離値を付与し距離変換画像を生成する距離変換手段と、前記細線化手段からの画像データと前記距離変換手段からの画像データから芯線の端点と分岐点を検出し、同時に芯線上の各位置でパターンの線幅を測長し基準線幅に違反する点を検出する特徴抽出手段と、基準線幅に違反した点を近傍に存在する他の線幅違反の点とグループ化し、グループに属する線幅違反の点数が所定の閾値を越えるグループを欠陥と判定する欠陥判定手段とからなるパターン外観検査装置。
【請求項２】
欠陥判定手段は、特徴抽出手段において検出された端点に関して、近傍に存在する２つの端点を端点ペアとしてグループ化し、複数の端点ペアの位置関係からリードの傷の長さを検出し所定の閾値と比較し欠陥と判定することを特徴とする請求項１記載のパターン外観検査装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ＩＣリードなど電子部品のリードパターンの外観上の不良を検査するためのパターン外観検査装置に関するものである。
【０００２】
【従来の技術】
従来、ＩＣ等電子部品のリードパターンの不良検査は人間による目視検査に頼っていた。ところが、製品の小型化、軽量化が進むにつれ、リード幅、ピッチの細密化がより一層進んでいる。このような状況の中で、人間が誤りなく長時間続けて検査を行うことが難しくなってきており、目視検査の自動化が望まれている。
【０００３】
このようなパターン外観検査技術の従来例として、半導体ウエハやプリント基板等の回路パターン検査技術がある。例えば、特開昭６０−０６１０６４号公報や特開昭６２−１４０００号公報のように、予め良品パターンの２値化画像をメモリに取り込んでおき、検査対象の画像を取り込むと同時にメモリから良品を読みだし、画像データどうしの比較を行い、不一致部を欠陥と判定するものである。
【０００４】
【発明が解決しようとする課題】
しかしながら従来の構成では、比較によるパターンの不一致箇所を欠陥と判定するため、欠陥の種類は認識できず、また不一致箇所の大きさのみで欠陥の良否を判定するもので、欠陥の種類に応じた検査基準を設定できないという課題を有していた。
【０００５】
本発明は上記従来技術の課題を解決するもので、パターンの芯線画像と距離変換画像から得られる特徴点を所定の距離範囲内でグループ化し、グループ内の特徴点の特徴情報に基づき欠陥の種類に応じた基準で検査することにより、高精度かつ柔軟性の高いパターン外観検査装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
この目的を達成するために本発明は、第１に、電子部品を照明し反射光を検知し光電変換する画像入力手段と、前記画像入力手段からの濃淡画像を２値画像に変換する２値化手段と、前記２値化手段からの２値画像に対し１層ずつの細め処理を繰り返しパターンの芯線を抽出する細線化手段と、前記細線化手段からの画素消去フラグに基づき細め処理の回数に対応する距離値を付与し距離変換画像を生成する距離変換手段と、前記細線化手段からの画像データと前記距離変換手段からの画像データから芯線の端点と分岐点を検出し、同時に芯線上の各位置でパターンの線幅を測長し基準線幅に違反する点を検出する特徴抽出手段と、基準線幅に違反した点を近傍に存在する他の線幅違反の点とグループ化し、グループに属する線幅違反の点数が所定の閾値を越えるグループを欠陥と判定する欠陥判定手段とを設けたものである。
【０００７】
第２に、欠陥判定手段は、特徴抽出手段において検出された端点に関して、近傍に存在する２つの端点を端点ペアとしてグループ化し、複数の端点ペアの位置関係からリードの傷の長さを検出し判定の閾値と比較し欠陥と判定するようにしたものである。
【０００８】
【作用】
本発明は上記構成によって、第１に、細線化手段でリードパターンの芯線を抽出し、距離変換手段でパターンの各位置に距離値を求め、特徴抽出手段で芯線上で基準線幅に違反する点を検出し、欠陥判定手段において近傍に存在する他の線幅違反の点とグループ化し、グループに属する線幅違反の点数によって欠陥かどうかを判定するため、高精度かつ柔軟な線幅検査が行える。
【０００９】
第２に、欠陥判定手段において、特徴抽出からの１対の端点を端点ペアとしてグループ化し、複数の端点ペアの位置関係からリードの傷の長さを検出し、幅の大きさによって欠陥かどうかを判定するため、高精度かつ柔軟なキズ検査が行える。
【００１０】
【実施例】
（実施例１）
以下、図面を参照しながら本発明の一実施例について説明する。
【００１１】
図１は本発明の一実施例におけるパターン外観検査装置のブロック図である。図１において、１０はＩＣ等の電子部品、１１は照明装置２０とＣＣＤカメラ２１などの撮像装置を備えた画像入力手段、１２は濃淡画像を２値画像に変換する２値化手段、１３はパターンを背景から連結性を保ちつつ１画素ずつ細める細線化手段、１４は細線化処理と同時にパターンの内部点に距離値を与える距離変換手段、１５は細線化画像２２と距離変換画像２３から欠陥の特徴を抽出する特徴抽出手段、１６は特徴抽出手段１５から被検査部品の特徴情報をメモリ１７に一時的に取り込み、ＣＰＵ（セントラル・プロセッシング・ユニット）１８を用いて欠陥かどうかを判定する欠陥判定手段である。
【００１２】
以上のように構成されたパターン外観検査装置について、その動作を説明する。
【００１３】
まず、検査対象である電子部品１０を、上方からの照明装置２０で照明し、ＣＣＤカメラ２１等を用いた画像入力手段１１で撮像し濃淡画像を得る。本実施例では、画像入力手段１１としてＣＣＤラインセンサカメラを用い、照明装置は蛍光管をライン方向に配置し、図示しないが検査対象の電子部品を載せたステージでライン方向と直交方向に送る。得られた濃淡画像を２値化手段１２で、予め濃度ヒストグラム等で求めた閾値レベルで、リード部が値“１”背景が値“０”をもつ２値画像に変換する。細線化手段１３は２値化手段１２からの２値画像に対し、連結性を保ちつつパターンを背景側から１画素ずつ消去する処理を繰り返しパターンの芯線を抽出するもので、よく知られた画像処理手法である。例えば、田村：“細線化法についての諸考察”，電子情報通信学会技術報告，ＰＲＬ７５−６６（１９７５）があり、１層の細め処理を４つのサブイテレーションに分け、各サブイテレーションにおいてそれぞれ上下左右から画素を消去し、最終的に１画素幅で連結した芯線を得るものである。距離変換手段１４は、パターン部に背景からの距離値を与える処理であり、入力画像に対し初期値としてパターン全領域に距離値“１”および背景に“０”を与え、細線化手段１３からの画素消去フラグから細線化の反復ごとに消去されなかったパターン内部の画素の距離値をインクリメントしていくもので、最終的に芯線を含む全ての画素に背景からの距離値が与えられる。細線化手段１３および距離変換手段１４の具体的構成は特開平０２−３３４００９号に記載されているため説明は省略する。
【００１４】
以下図２を用いて特徴抽出手段１５の処理について説明する。
図２（ａ）は距離変換手段１４からの距離変換画像２３の一例を示すもので、背景に対しリードパターンの内部に向かって距離値が与えられており、○印で囲まれた画素は芯線位置を示すものである。特徴抽出手段１５の具体的処理は、細線化画像２２と距離変換画像２３を各々３×３走査窓で走査し、第１に細線化画像の芯線の端点と分岐点を検出する処理と、第２に芯線上において８近傍の距離値からその位置の線幅を算出するものである。端点は３×３窓の注目画素ｄ０とその８近傍のデータｄｉ（ｉ＝１〜８）によりＬＵＴ（ルック・アップ・テーブル）を参照して検出する。ＬＵＴにおいて、端点は（数１）を満たすパターン、分岐点は（数２）を満たすパターンを割り当てる。
【００１５】
【数１】
0003674067.tif 000002
【００１６】
【数２】
0003674067.tif 000003
【００１７】
リードの線幅は距離変換画像を３×３窓で走査し、窓の注目画素が細線化画像の芯線上にあるとき、注目画素の距離値Ｄ０とその８近傍の距離値Ｄｉ（ｉ＝１〜８）を用いて（数３）の演算を行い、パターン幅Ｗを求める。
【００１８】
【数３】
0003674067.tif 000004
【００１９】
ここに、［］は整数値を示すものとする。図２（ｂ）は線幅の演算結果を示すもので、芯線位置において線幅測長が行われることを示している。そして、最小基準線幅Ｗｍｉｎとの比較で（数４）を満たすとき線幅違反として検出される。
【００２０】
【数４】
0003674067.tif 000005
【００２１】
図２（ｂ）において○印で囲まれた画素は、Ｗｍｉｎ＝６画素に設定したときの線幅違反の位置を示すものである。
【００２２】
以上の処理で求められた端点と線幅違反の特徴点は、ｘ，ｙ座標と特徴種別とを併せてバスを介して欠陥判定手段１６へ通知される。
【００２３】
次に、欠陥判定手段１６における処理を図３を用いて説明する。
図３は線幅違反の判定処理手順を示す不フロー図である。特徴点の座標はラスタ順次になっており、ｘ，ｙ，特徴種別が１組になって１点ずつ入力されてくるものとする。欠陥判定は、個々の特徴点に対し距離ｍ１の範囲で隣接する点どうしを１つのグループとみなし、そのグループが欠陥箇所に該当するかどうかを判定するものである。
【００２４】
（ステップ１）
特徴抽出手段１５から１つの特徴点のｘ座標、ｙ座標、および特徴種別（端点、分岐点、線幅違反）を読み込む。
【００２５】
（ステップ２）
ステップ１において読み出された特徴点の特徴種別から線幅違反かどうかをみて、線幅違反の場合ステップ３へ進み、そうでなく端点または分岐点の場合は不良と判定する。
【００２６】
（ステップ３）
既に存在している特徴点グループｇｒ１［０］〜ｇｒ１［ｉ］の１つ１つに対して、注目している特徴点がどのグループに所属するかを判定するステップである。１つの特徴点グループは図４に示すような項目をもつテーブルになっている。図４において、項目のｊはグループを識別するための通し番号、ｆｌａｇはそのグループの各項目が有効であるか無効であるかを示すフラグ、ｆｃは特徴種別を示すコード、ｎはそのグループに所属している特徴点の総数、以下ｎ個分の特徴点のｘ座標、ｙ座標が格納されている。所属判定は、各グループのもっている全ての特徴点に対し、注目している特徴点のｘ座標とｙ座標から（数５）に示すような距離の判定を行う。ｉ番目のグループｇｒ１［ｉ］に属する特徴点の座標をｇｒ１［ｉ］．ｘ［ｓ］、およびｇｒ１［ｉ］．ｙ［ｓ］とすると、
【００２７】
【数５】
0003674067.tif 000006
【００２８】
ｍ１は特徴点間の距離の上限を示すもので、ｓ＝０〜ｎ−１のうち１点でも上式を満足する場合、注目特徴点はそのグループに所属していると判定する。ｍ１の値は具体的には２ないし３画素を設定し、近傍の特徴点だけが同一グループに所属するようにする。所属判定は既存の全てのグループに対して行い、注目特徴点がどのグループにも所属していない場合ステップ４へ進み、ただ１つのグループに所属する場合ステップ５へ進み、複数のグループに所属する場合はステップ６へ進む。
【００２９】
（ステップ４）
注目特徴点は新しいグループｇｒ１［ｉ＋１］として登録し、そのグループのｆｌａｇを有効とし、特徴点総数ｎを１とし、ｘおよびｙ座標を格納する。
【００３０】
（ステップ５）
注目特徴点はただ１つのグループに所属するので、特徴点総数ｎを１増やしてｘおよびｙ座標を追加する。
【００３１】
（ステップ６）
注目特徴点は複数のグループに所属するので、該当するグループをマージして１つの新しいグループｇｒ１［ｉ＋１］として登録し、ｆｌａｇを有効とし、特徴点総数ｎは該当するグループの特徴点総数の総和に１加えた値とし、該当するグループの全ての特徴点のｘおよびｙ座標と注目特徴点のｘおよびｙ座標を格納する。
【００３２】
（ステップ７）
ステップ６においてマージされた元のグループは以降の判定では使用しないので、該当するグループのｆｌａｇを全て無効とする。
【００３３】
（ステップ８）
特徴点の読み込みが終了し、特徴点のグループ化が全て終了した場合ステップ９へ進み、そうでない場合ステップ１へ戻り次の特徴点データを読み込む。
【００３４】
（ステップ９）
全ての有効な特徴点グループに対し、そのグループが欠陥であるかどうかの良否判定を行う。判定は、グループに所属する線幅違反の点数ｎと判定基準の閾値ｋとの比較によるもので、ｎがｋを越える場合不良とし、ｎがｋ以下の場合は不良としない。
【００３５】
以上の手順で線幅違反に関する欠陥判定を行うことにより、例えば図２（ｂ）において判定基準の閾値ｋを４画素とすると、線幅違反のグループ２１は総特徴点数が９で不良となり、グループ２２は総特徴点数が３で不良とはならない。不良と判定されたグループに関しては、所属する特徴点の平均座標と不良の種類を出力する。
【００３６】
以上のように本実施例によれば、リード部の細線化画像と距離画像から線幅を測定し基準線幅に違反する点を検出し、さらに線幅違反の長さ方向の大きさも良否判定の基準として加味しているため欠陥の過検出を抑制することができ、高精度かつ柔軟な検査を行うことができる。
【００３７】
（実施例２）
以下、本発明の第２の実施例について、図面を参照しながら説明する。
【００３８】
本実施例において第１の実施例と異なるのは、欠陥判定手段１６において端点をそのまま不良とするのではなく、リードの傷によって発生する一対の端点を端点ペアとして取扱い、端点ペアの位置関係から傷の長さを検出し良・不良の判定を行うようにしたものである。
【００３９】
以下欠陥判定手段１６におけるリードの傷の判定処理について図５および図６を参照しながら説明する。
【００４０】
図５および図６はリードの傷の判定手順を示すフロー図である。図５は図３のステップ２において線幅違反ではなく、端点または分岐点と判定された特徴点に対する処理手順を示すもので、距離ｍ２の範囲で隣接する端点どうしを１つのグループとみなし、そのグループに対し図６に示す判定手順で各グループが欠陥箇所に該当するかどうかを判定するものである。
【００４１】
（ステップ１１）
特徴抽出手段１５から１つの特徴点のｘ座標、ｙ座標、および特徴種別（端点、分岐点、線幅違反）を読み込む。
【００４２】
（ステップ１２）
ステップ１１において読み出された特徴点の特徴種別から線幅違反かどうかをみて、端点の場合ステップ１３へ進み、そうでなく分岐点の場合は不良と判定する。
【００４３】
（ステップ１３）
既に存在している端点グループｇｒ２［０］〜ｇｒ２［ｉ］の１つ１つに対して、注目している端点がどのグループに所属するかを判定するものである。１つの端点グループは図４に示すような項目をもつテーブルであり、所属する端点のｘ座標、ｙ座標が格納されている。所属判定は、各グループのもっている全ての端点に対し、注目する端点のｘ座標とｙ座標から（数６）に示すような距離の判定を行う。ｉ番目のグループｇｒ２［ｉ］に属する端点の座標をｇｒ２［ｉ］．ｘ［ｓ］、およびｇｒ２［ｉ］．ｙ［ｓ］とすると、
【００４４】
【数６】
0003674067.tif 000007
【００４５】
ｍ２は端点間の距離の上限を示すもので、ｓ＝０〜ｎ−１のうち１点でも上式を満足する場合、注目する端点はそのグループに所属していると判定する。所属判定は既存の全てのグループに対して行い、注目する端点がどのグループにも所属していない場合ステップ１４へ進み、ただ１つのグループに所属する場合ステップ１５へ進み、複数のグループに所属する場合はステップ１６へ進む。
【００４６】
（ステップ１４）
注目する端点は新しいグループｇｒ２［ｉ＋１］として登録し、そのグループのｆｌａｇを有効とし、特徴点総数ｎを１とし、ｘおよびｙ座標を格納する。
【００４７】
（ステップ１５）
注目する端点はただ１つのグループに所属するので、特徴点総数ｎを１増やしてｘおよびｙ座標を追加する。
【００４８】
（ステップ１６）
注目する端点は複数のグループに所属するので、該当するグループをマージして１つの新しいグループｇｒ２［ｉ＋１］として登録し、ｆｌａｇを有効とし、特徴点総数ｎは該当するグループの特徴点総数の総和に１加えた値とし、該当するグループの全ての端点のｘおよびｙ座標と注目する端点のｘおよびｙ座標を格納する。
【００４９】
（ステップ１７）
ステップ１６においてマージされた元のグループは以降の判定では使用しないので、該当するグループのｆｌａｇを全て無効とする。
【００５０】
（ステップ１８）
特徴点の読み込みが終了し、特徴点のグループ化が全て終了した場合、図６に示す欠陥判定２′へ進み、そうでない場合ステップ１１へ戻り次の特徴点データを読み込む。
【００５１】
以上の手順により、距離ｍ２の範囲内で隣接する端点が、例えば図７に示すように一対の端点ペア６１〜６６としてグループ化される。なお、図７において、点線はパターンの芯線を示し、“・”はその端点を示し、“＋”は端点ペアの平均座標位置を示すものとする。欠陥判定は端点ペアのグループに対し、さらに距離ｍ３の範囲内で隣接するものどうしグループ化し、そのグループの端点ペアの数から欠陥かどうかを判定するものである。以下図６を用いて、グループ化された端点に対する欠陥判定手順を説明する。
【００５２】
（ステップ２１）
ステップ１８までの手順で得られた全ての有効な端点グループｇｒ２［ｉ］を１グループずつ読み込む。
【００５３】
（ステップ２２）
ステップ２１において読み出されたグループに所属する端点のｘおよびｙ座標の平均座標ｃｘ，ｃｙを求める。以降、各端点ペアのグループはｘ，ｙ座標として平均座標もつものとする。
【００５４】
（ステップ２３）
グループの総特徴点数ｎ＝２のときはステップ２４以降の端点ペアに基づく傷の欠陥判定を行い、ｎ≠２のときは不良として通知する。
【００５５】
（ステップ２４）
既に存在している端点ペアのグループｇｒ２′［０］〜ｇｒ２′［ｉ］の１つ１つに対して、注目している端点ペアがどのグループに所属するかを判定する。端点ペアの１つのグループは、図４に示すような項目をもつテーブルになっており、各点の座標は端点ペアの平均座標をもっている。所属判定は、各グループのもっている全ての端点ペアに対し、注目している端点ペアの平均座標ｃｘとｘｙから（数７）に示すように距離の判定を行う。ｉ番目のグループｇｒ２′［ｉ］に属する端点ペアの平均座標座標をｇｒ２′［ｉ］．ｘ［ｓ］、およびｇｒ２′［ｉ］．ｙ［ｓ］とすると、
【００５６】
【数７】
0003674067.tif 000008
【００５７】
ｍ３は端点ペア間の距離の上限を示すもので、ｓ＝０〜ｎ−１のうち１点でも上式を満足する場合、注目する端点ペアはそのグループに所属していると判定する。所属判定は既存の全てのグループに対して行い、注目する端点ペアがどのグループにも所属していない場合ステップ２５へ進み、ただ１つのグループに所属する場合ステップ２６へ進み、複数のグループに所属する場合はステップ２７へ進む。
【００５８】
（ステップ２５）
注目する端点ペアは新しいグループｇｒ２′［ｉ＋１］として登録し、そのグループのｆｌａｇを有効とし、特徴点総数ｎを１とし、ｘおよびｙ座標を格納する。
【００５９】
（ステップ２６）
注目する端点ペアはただ１つのグループに所属するので、特徴点総数ｎを１増やしてｘおよびｙ座標を追加する。
【００６０】
（ステップ２７）
注目する端点ペアは複数のグループに所属するので、該当するグループをマージして１つの新しいグループｇｒ２′［ｉ＋１］として登録し、ｆｌａｇを有効とし、特徴点総数ｎは該当するグループの特徴点総数の総和に１加えた値とし、該当するグループの全ての端点ペアのｘおよびｙ座標と注目する端点ペアのｘおよびｙ座標を格納する。
【００６１】
（ステップ２８）
ステップ２７においてマージされた元のグループは以降の判定では使用しないので、該当するグループのｆｌａｇを全て無効とする。
【００６２】
（ステップ２９）
端点グループの読み込みが終了し、端点ペアのグループ化が全て終了した場合ステップ３０へ進み、そうでない場合ステップ２１へ戻り次の端点グループのデータを読み込む。
【００６３】
（ステップ３０）
全ての有効な端点ペアのグループに対し、そのグループが欠陥であるかどうかの良否判定を行う。判定は、グループに所属する端点ペアの点数ｎと判定基準の閾値ｐとの比較によるもので、ｎがｐを越える場合不良とし、ｎがｐ以下の場合は不良としない。
【００６４】
以上の手順で端点に関する欠陥判定を行うことにより、例えば図７において、端点グループ６７はステップ２３において不良と判定され、端点ペアのグループ７１と７２に関しては、ステップ３０の判定の閾値ｐを２とすると、端点ペアのグループ７１はｎ＝２で不良とはならず、７２はｎ＝４のため不良と判定される。
【００６５】
以上のように本実施例によれば、リードの傷により発生するパターンに細い途切れを検出するため、リード部の細線化画像に対し端点ペアを検出し、さらに端点ペアを所定距離範囲内でグループ化し、グループに属する端点ペアの数に基づき良否判定を行うことにより、傷の長さの大きいものを選択して不良と判定するため、欠陥の過検出を抑制することができ、高精度かつ柔軟な検査を行うことができる。
【００６６】
【発明の効果】
以上のように本発明の効果は、第１に、リード部の細線化画像と距離画像から線幅を測定し、基準線幅に違反する点をグループ化し、グループ内の線幅違反の点数に基づき、線幅違反の長さ方向の大きさも良否判定の基準とするため、大きな線幅違反を選択的に検出でき、過検出のない高精度のパターン外観検査装置を実現できる。
【００６７】
第２に、リードの傷に対し、細線化画像における端点をグループ化し、端点ペアを検出し、さらに端点ペアを所定距離範囲内でグループ化し、グループに属する端点ペアの数に基づき良否判定を行うことにより、傷の長さの大きいものを選択的に不良と判定するため、欠陥の過検出を抑制することができ、高精度かつ柔軟な検査が可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施例における配線パターン検査装置のブロック結線図
【図２】（ａ）細線化手段及び距離変換手段による処理例を示す図
（ｂ）特徴抽出手段による処理例を示す図
【図３】本発明の第１の実施例における欠陥判定手段の処理手順を示すフロー図
【図４】特徴点グループ構造体の構成図
【図５】本発明の第２の実施例における欠陥判定手段の処理手順を示す第１のフロー図
【図６】本発明の第２の実施例における欠陥判定手段の処理手順を示す第２のフロー図
【図７】リードの傷による端点ペアの発生を示す図
【符号の説明】
１０  電子部品
１１  画像入力手段
１２  ２値化手段
１３  細線化手段
１４  距離変換手段
１５  特徴抽出手段
１６  欠陥判定手段
１７  メモリ
１８  ＣＰＵ
２０  照明装置
２１  ＣＣＤカメラ
【図１】
0003674067.tif 000009
【図２】
0003674067.tif 000010
【図３】
0003674067.tif 000011
【図４】
0003674067.tif 000012
【図５】
0003674067.tif 000013
【図６】
0003674067.tif 000014
【図７】
0003674067.tif 000015