(57)【要約】【課題】パターンの形成位置や大きさにばらつきがあっても、そのばらつきが欠陥の検出精度に影響を及ぼさないようにする。【解決手段】直線状の回路パターンが限定された方向に沿って形成されているワークを対象に、このワークの画像に局所領域を設定し、領域内のエッジ構成画素の濃度勾配方向について、ヒストグラムを作成する。さらに、このヒストグラムが限定された方向の回路パターンのヒストグラムに適合するか否かを解析することにより、局所領域内に欠陥が含まれるかどうかを判別する。【選択図】図２
2008139262.tif 000002
【特許請求の範囲】
【請求項１】
向きが限定された線状パターンが所定数形成されたワークを検査対象として、前記線状パターンの形成面に欠陥が生じていないかどうかを検査する方法であって、
検査対象の面を撮像することによって生成された画像の複数箇所にそれぞれ所定サイズの局所領域を設定し、局所領域内のエッジ構成画素の濃度勾配方向により定まる角度データについてヒストグラムを作成する処理と、ヒストグラムに現れたピークに対応する角度データが前記線状パターンの限定された向きに適合するか否かを照合することにより欠陥の有無を判別する処理とを、前記設定された局所領域毎に実行することを、特徴とする欠陥検査方法。
【請求項２】
向きが限定された線状パターンが所定数形成されたワークを検査対象として、前記線状パターンの形成面に欠陥が生じていないかどうかを検査する方法であって、
検査対象の面を撮像することによって生成された画像の複数箇所にそれぞれ所定サイズの局所領域を設定し、局所領域内に含まれるエッジ構成画素の濃度勾配方向により定まる角度データについてヒストグラムを作成する処理と、作成されたヒストグラムにおける度数のばらつき度合いが前記限定された向きの線状パターンによるヒストグラムに適合するか否かを照合することにより欠陥の有無を判別する処理とを、前記設定された局所領域毎に実行することを、特徴とする欠陥検査方法。
【請求項３】
前記欠陥の有無を判別する処理では、ヒストグラム中の各度数データのうち、所定のしきい値を超える度数データの数を、前記限定された向きの線状パターンによるヒストグラムに基づく基準値と比較し、前記度数データの数が前記基準値を上回るときに欠陥があると判別する請求項２に記載された欠陥検査方法。
【請求項４】
前記欠陥の有無を判別する処理では、ヒストグラム中のピークの数を、前記線状パターンにつき限定される向きの数に適した基準値と照合し、前記ピークの数が基準値を上回るときに欠陥があると判別する請求項２に記載された欠陥検査方法。
【請求項５】
向きが限定された線状パターンが所定数形成されたワークを撮像するための撮像手段と、この撮像手段により生成された画像を処理して、前記線状パターンの形成面に欠陥が生じていないかどうかを検査する検査実行手段とを具備する装置であって、
前記検査実行手段には、
前記撮像手段により生成された画像からエッジ構成画素を抽出するとともに、抽出されたエッジ構成画素について、濃度勾配方向により定まる角度データを算出するエッジ処理手段と、
前記画像の複数箇所にそれぞれ所定サイズの局所領域を設定する領域設定手段と、
前記エッジ処理手段の処理結果を用いて、領域設定手段により設定された局所領域内のエッジ構成画素の濃度勾配方向により定まる角度データについて、ヒストグラムを作成するヒストグラム作成手段と、
前記線状パターンの限定された向きに対応する角度を登録するためのメモリと、
前記ヒストグラムに現れたピークに対応する角度データが前記メモリに登録された角度に適合するか否かを照合することにより、欠陥の有無を判別する判別手段と、
前記領域設定手段により設定された局所領域毎に前記ヒストグラム作成手段および判別手段による処理を実行し、判別手段による判別結果を出力する制御手段とを、具備することを特徴とする検査装置。
【請求項６】
向きが限定された線状パターンが所定数形成されたワークを撮像するための撮像手段と、この撮像手段により生成された画像を処理して、前記線状パターンの形成面に欠陥が生じていないかどうかを検査する検査実行手段とを具備する装置であって、
前記検査実行手段には、
前記撮像手段により生成された画像からエッジ構成画素を抽出するとともに、抽出されたエッジ構成画素について、濃度勾配方向により定まる角度データを算出するエッジ処理手段と、
前記画像の複数箇所にそれぞれ所定サイズの局所領域を設定する領域設定手段と、
前記エッジ処理手段の処理結果を用いて、領域設定手段により設定された局所領域内のエッジ構成画素の濃度勾配方向により定まる角度データについて、ヒストグラムを作成するヒストグラム作成手段と、
前記ヒストグラムの度数のばらつき度合いを示す所定のパラメータについて、前記限定された向きの線状パターンによるヒストグラムに基づく基準値を登録するためのメモリと、
前記ヒストグラム作成手段により作成されたヒストグラムにおける前記パラメータの値を前記メモリに登録された基準値と照合することにより、欠陥の有無を判別する判別手段と、
前記領域設定手段により設定された局所領域毎に前記ヒストグラム作成手段および判別手段による処理を実行し、判別手段による判別結果を出力する制御手段とを、具備することを特徴とする検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、向きが限定された線状パターンが所定数形成されたワークを検査対象として、線状パターンの形成面に、キズ、汚れ等による欠陥が生じていないかどうかを、画像処理の手法を用いて検査する方法、およびその方法を実行する検査装置に関する。
【背景技術】
【０００２】
形状が定まったパターンが形成されたワークを対象に欠陥検査を行う場合によく用いられる手法として、検査対象のワークを撮像して得られた画像（以下、「検査対象画像」という。）とあらかじめ登録された基準画像との差分演算処理により、両者の差異を抽出する方法や、正規化相関演算によって基準画像に対する検査対象画像の類似度を求める方法がある。
【０００３】
また、エッジ付近に発生した欠陥を精度良く検出することを目的に、出願人が以前に開発した検査装置では、基準画像を膨張および収縮させ、これらの画像に対する検査対象画像の差異を抽出するようにしている（特許文献１参照。）。
【０００４】
【特許文献１】特開２００２−１４０６９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記に掲げた各種方法で使用される基準画像は、ワークの欠陥のない良品モデルを撮像することによって得られるものである。多数のワークを検査する場合には、ワーク毎にモデルを登録する必要があるため、容量の大きなメモリを用意する必要があり、コストが嵩むという問題がある。
【０００６】
また、基準画像を使用する検査では、回路パターンが形成されたプリント基板のように、パターンそのものが微細なワークを対象にして微小な欠陥を検出する場合、パターンの形成位置や大きさが僅かにばらついただけでも、そのばらつきが欠陥として誤検出されるおそれがある。
【０００７】
この発明は、上記の問題点に着目し、基準画像を登録する必要なく欠陥の検出を行えるようにすること、およびパターンの形成位置や大きさにばらつきがあっても、その影響が欠陥の検出精度に影響を及ぼさないようにすることを、課題とする。
【課題を解決するための手段】
【０００８】
上記した課題を解決するための第１の欠陥検査方法では、検査対象の面を撮像することによって生成された画像の複数箇所にそれぞれ所定サイズの局所領域を設定し、局所領域内のエッジ構成画素の濃度勾配方向により定まる角度データについてヒストグラムを作成する処理と、ヒストグラムに現れたピークに対応する角度データが線状パターンの限定された向きに適合するか否かを照合することにより欠陥の有無を判別する処理とを、設定された局所領域毎に実行する。
【０００９】
上記の方法は、検査対象のワークが一定の方向を向いた状態で撮像され、画像上の線状パターンの向きに対応する角度が固定される場合に適用することができる。ワークの状態が良好であれば、検査対象画像に含まれるエッジ構成画素は、すべて線状パターンの限定された向きに沿うエッジを構成すると考えられるから、ヒストグラムでも、線状パターンの限定された向きに対応する角度付近にピークが生じると考えられる。これに対し、欠陥があるワークの検査対象画像には、線状パターンの向きとは異なる方向を向く種々のエッジが含まれると考えられるから、欠陥を含む局所領域で作成されたヒストグラムには、線状パターンの限定された向きに対応する角度以外の位置にピークが生じる可能性が高い。すなわち、ヒストグラムに現れた角度データが線状パターンの限定された向きに適合しない場合の局所領域には、欠陥が含まれていると考えることができる。
【００１０】
つぎに、第２の欠陥検査方法では、検査対象の面を撮像することによって生成された画像の複数箇所にそれぞれ所定サイズの局所領域を設定し、局所領域内に含まれるエッジ構成画素の濃度勾配方向により定まる角度データについてヒストグラムを作成する処理と、作成されたヒストグラムにおける度数のばらつき度合いが限定された向きの線状パターンによるヒストグラムに適合するか否かを照合することにより欠陥の有無を判別する処理とを、設定された局所領域毎に実行する。
【００１１】
上記の方法は、撮像時のワークの向きにばらつきがあるなど、画像における線状パターンの向きを特定するのが困難な場合に適用することができる。
【００１２】
上記第２の方法の一態様では、ヒストグラム中の各度数データのうち、所定のしきい値を超える度数データの数を、限定された向きの線状パターンによるヒストグラムに基づく基準値と比較し、度数データの数が基準値を上回るときに欠陥があると判別する。他の態様では、ヒストグラム中のピークの数を、線状パターンにつき限定される向きの数に適した基準値と照合し、ピークの数が基準値を上回るときに欠陥があると判別する。
【００１３】
なお、この発明で検査対象とする線状パターンの「向き」は、特定の一方向に限らず、複数の方向に限定される場合もある。たとえば、プリント基板の回路パターンについて言えば、水平方向に延びる線状パターン、垂直方向に延びる線状パターン、および斜め４５度の方向に延びる線状パターンの３種類に限定される場合がある。
【００１４】
この発明にかかる検査装置は、向きが限定された線状パターンが所定数形成されたワークを撮像するための撮像手段と、この撮像手段により生成された画像を処理して、線状パターンの形成面に不良が生じていないかどうかを検査する検査実行手段とを具備する。さらに、検査実行手段には、撮像手段により生成された画像からエッジ構成画素を抽出するとともに、抽出されたエッジ構成画素について、濃度勾配方向により定まる角度データを算出するエッジ処理手段と、画像の複数箇所にそれぞれ所定サイズの局所領域を設定する領域設定手段と、エッジ処理手段の処理結果を用いて、領域設定手段により設定された局所領域内のエッジ構成画素の濃度勾配方向により定まる角度データについて、ヒストグラムを作成するヒストグラム作成手段と、検査に必要なデータを登録するためのメモリと、ヒストグラム作成手段により作成されたヒストグラムとメモリに登録されたデータとを用いて欠陥の有無を判別する判別手段と、領域設定手段により設定された局所領域毎にヒストグラム作成手段および判別手段による処理を実行し、判別手段による判別結果を出力する制御手段とが、設けられる。
【００１５】
第１の欠陥検査方法を実行する場合、メモリには、線状パターンの限定された向きに対応する角度が登録される。また判別手段は、ヒストグラムに現れたピークに対応する角度データがメモリに登録された角度に適合するか否かを照合することにより、欠陥の有無を判別する。
【００１６】
第２の欠陥検査方法を実行する場合、メモリには、ヒストグラムの度数のばらつき度合いを示す所定のパラメータ（たとえば、所定のしきい値を超える度数データの数、ヒストグラム中のピークの数）について、限定された向きの線状パターンによるヒストグラムに基づく基準値が登録される。また判別手段は、ヒストグラム作成手段により作成されたヒストグラムにおける上記のパターンの値をメモリに登録された基準値と照合することにより、欠陥の有無を判別する。
【発明の効果】
【００１７】
この発明によれば、線状パターンの向きが限定されているワークであれば、検査に先立って基準画像を登録する必要がなくなる。また、検出したい欠陥の大きさに合わせたサイズの局所領域を設定し、この領域内の画像を処理するので、微小な欠陥でも検出することが可能である。
【００１８】
さらに、線状パターンのエッジ構成画素とは濃度勾配方向を異にするエッジ構成画素が多く存在するか否かによって不良の有無を判別するので、線状パターンの形成位置や大きさにばらつきがあっても、局所領域の設定位置や数を調整することによって、欠陥を精度良く検出することができる。
【発明を実施するための最良の形態】
【００１９】
図１は、この発明の一実施例にかかる検査装置の構成を示す。
この検査装置は、プリント基板や成形品など、向きが限定された線状の回路パターンが印刷されたワークを検査対象として、回路パターンの形成面に、キズ、汚れ、印刷不良などの欠陥が生じていないかどうかを検査するためのもので、検査対象のワークを撮像するためのカメラ１（撮像手段）とコントローラ２（検査実行手段）とにより構成される。
【００２０】
上記のコントローラ２には、画像入力部３、エッジ抽出部４、画像メモリ５、入出力インターフェース６、画像出力部７、モニタ８、制御部１０などが含まれる。画像入力部３は、カメラ用のインターフェースやＡ／Ｄ変換回路を含むもので、カメラ１からの濃淡画像信号を入力してディジタル変換する。変換後のディジタル画像は画像メモリ５に格納されるとともに、エッジ抽出部４に与えられる。
【００２１】
エッジ抽出部４には、ディジタル画像を微分処理して濃度勾配の大きさを画素毎に算出する回路と、前記濃度勾配の方向を示す角度データを画素毎に算出する回路とが含められる。すなわち、入力画像を構成するすべての画素について、濃度勾配の大きさと濃度勾配方向とが求められることになる。これらの算出結果は、それぞれ画素の座標に対応づけられた疑似画像に編集される。
【００２２】
なお、以下では、濃度勾配の大きさを「エッジ強度」、濃度勾配方向を示す角度データを「エッジコード」と呼び、これらによる疑似画像を「エッジ強度画像」「エッジコード画像」と呼ぶ。なお、この実施例では、処理の高速化のために各疑似画像を専用の回路により生成しているが、これに限らず、制御部１０のソフトウェア処理により各画像を生成してもよい。
【００２３】
画像メモリ５には、ディジタル変換された検査対象画像、およびこの検査対象画像から生成されたエッジ強度画像ならびにエッジコード画像が格納される。さらに、後記する検査で設定される欠陥画像も、画像メモリ５に格納される。
【００２４】
入出力インターフェース６は、図示しない入力部（キーボード，マウスなど）や外部機器に接続される。画像出力部７には、Ｄ／Ａ変換回路やモニタ８へのインターフェース回路などが含められる。この画像出力部７は、制御部１０からの指令に応じて画像メモリ５から所定の種類の画像データを読み出し、これをモニタ７に表示させることもできる。
【００２５】
前記制御部１０は、ＣＰＵ１１，ＲＯＭ１２，ＲＡＭ１３、およびハードディスク１４により構成される。ハードディスク１４には、検査に関する各種処理を実行するためのプログラム（後記する図３〜７のフローチャートを具現化するプログラムを含む。）や設定データが格納されている。ＣＰＵ１１はこれらを用いて、カメラ１の撮像対象領域内に搬送されるワークを順に検査する。
【００２６】
ここで、検査の詳細を説明する前に、エッジ強度およびエッジコードの算出方法について説明する。この実施例では、検査対象画像の各画素に順に着目しつつ、ソーベル演算などのエッジ抽出用演算を実行することにより、Ｘ，Ｙの各軸方向における濃度勾配強度ＥＸ（ｘ，ｙ）、ＥＹ（ｘ，ｙ）を算出する。そして、これらの値ＥＸ（ｘ，ｙ）、ＥＹ（ｘ，ｙ）を用いて、以下の（Ａ）式によりエッジ強度Ｅｉ（ｘ，ｙ）を算出する。また、ＥＸ（ｘ，ｙ），ＥＹ（ｘ，ｙ）の大小関係に基づいて（Ｂ）式または（Ｃ）式を実行することにより、エッジコードＥｃ（ｘ，ｙ）を算出する。なお、（ｘ，ｙ）は、着目画素の座標である（以下も同じ。）また、データ処理の便宜上、Ｅｉ（ｘ，ｙ）、Ｅｃ（ｘ，ｙ）とも、小数点１桁を四捨五入した整数として表す。
【００２７】
（Ａ）式：  Ｅｉ（ｘ，ｙ）＝｜ＥＸ（ｘ，ｙ）｜＋｜ＥＹ（ｘ，ｙ）｜
（Ｂ）式：  Ｅｃ（ｘ，ｙ）＝ａｒｃｔａｎ（ＥＸ（ｘ，ｙ）／ＥＹ（ｘ，ｙ））
ＥＸ（ｘ，ｙ）≦ＥＹ（ｘ，ｙ）のとき
（Ｃ）式：  Ｅｃ（ｘ，ｙ）＝  ａｒｃｔａｎ（ＥＹ（ｘ，ｙ）／ＥＸ（ｘ，ｙ））
ＥＸ（ｘ，ｙ）＞ＥＹ（ｘ，ｙ）のとき
【００２８】
上記の（Ｂ）（Ｃ）式によれば、エッジコードは、０度から４５度までの範囲にある整数として表される。言い換えれば、水平軸（ｘ軸）、垂直軸（ｙ軸）の正負それぞれで規定される４方向のうち、濃度勾配方向を示すベクトルに最も近い方向と当該濃度勾配方向のベクトルとのなす角度により、エッジコードが表されることになる。
【００２９】
ただし、エッジコードの表示方法はこれに限らず、たとえば、ｘ，ｙの正負いずれかの軸から時計回り方向の角度として、０〜９０度の範囲の数値で表してもよい。または、ｘ軸の正方向を基準にした時計回りおよび反時計回りの角度として、０〜１８０度までの範囲の数値により表してもよい。また、濃度勾配方向を示すベクトルに代えて、このベクトルに直交する方向を示す角度をもって、エッジコードとしてもよい。
【００３０】
上記構成の検査装置では、エッジ強度画像やエッジコード画像に所定サイズの局所領域を、ｘ，ｙの各軸方向に沿って走査しつつ、局所領域内のエッジ強度やエッジコードを用いて後記する処理を行うことにより、局所領域内に欠陥を表す画素があるか否かを判別する。
【００３１】
上記の判別結果は、前述した欠陥画像として表現される。欠陥画像は、元の濃淡画像と同じサイズの２値画像であって、欠陥を表す画素（以下、「欠陥画素」という。）が「１」のデータにより、それ以外の画素が「０」のデータにより、それぞれ表される。検査の最終段階では、この欠陥画像中の欠陥画素の数を計数し、その計数値を所定の基準値と比較することにより、検査対象のワークの良／不良を判定する。
【００３２】
ここで、局所領域内で実行される画像処理と欠陥の有無を判別する処理とを、詳細に説明する。
この実施例では、エッジ強度画像やエッジコード画像から、局所領域内の各画素と同じ座標にある画素データを読み出して、各画素のエッジコードの分布状態を示すヒストグラム（以下、「エッジコードヒストグラム」または単に「ヒストグラム」という。）を作成し、このヒストグラムを解析することにより、局所領域内に欠陥が含まれるか否かを判別する。
【００３３】
図２は、検査対象画像に対する局所領域の設定例と、上記のエッジコードヒストグラムの具体例とを対応づけて示す。図中の上段は、欠陥のあるワークの画像（以下、「欠陥有画像」という。）、およびこの欠陥有画像の欠陥部分に設定された局所領域から作成されたヒストグラムを示す。また下段は、同じ回路パターンが形成されているが、欠陥のないワークの画像（以下、「欠陥無画像」という。）、および上段の画像と同じ位置に設定された局所領域から作成されたヒストグラムを示す。この例に示すように、欠陥を含む局所領域で作成されたヒストグラムは、欠陥がない場合のヒストグラムと大きく異なるものになる。
【００３４】
図３は、上記のエッジコードヒストグラムの作成手順を示すフローチャートである。なお、この図３以下の各フローチャートにおいて、θはヒストグラムの横軸を構成する角度であって、０から４５までの範囲で変化する。Ｈ（θ）は、ヒストグラム中の角度θに対応する度数である。また、ｘ，ｙは、後記する検査の全体手順のフローチャート（図７）における着目画素の座標であって、局所領域の中央の画素として設定される。また、局所領域のｘ軸方向の幅をＢｘ＋１，ｙ軸方向の幅をＢｙ＋１とし、局所領域内の各画素のｘ，ｙ座標を、ｉ，ｊのカウンタにより特定する。また、各フローチャートにおける「ＳＴ」は、ステップの略である。
【００３５】
図３の最初のＳＴ５０１およびＳＴ５０２〜５０４のループは、ヒストグラムの各度数をゼロリセットする処理を意味する。つぎのＳＴ５０５〜５１２は、局所領域内の各画素のエッジコードおよびエッジ強度を用いて、エッジコードヒストグラムを完成させる処理を意味する。具体的には、局所領域内の各画素に順に着目しつつ、その着目画素のエッジコードＥｃ（ｉ，ｊ）およびエッジ強度Ｅｉ（ｉ，ｊ）を読み出し（ＳＴ５０７）、エッジコードＥｃ（ｉ，ｊ）に対応する度数データＨ（Ｅｃ（ｉ，ｊ））の現在値にエッジ強度Ｅｉ（（ｉ，ｊ）を加算する（ＳＴ５０８）ことによって、度数データを更新する。このようにエッジ強度による重み付けをした度数を設定することにより、元の濃淡画像に多少のノイズがあっても、そのノイズに対応するエッジコードの度数はさほど高くならず、真のエッジ構成画素に対応するエッジコードに高い度数を設定することができる。
【００３６】
なお、上記図３では、カメラ１（撮像手段）により生成された検査対象画像そのものを処理するのではなく、エッジ強度画像やエッジコード画像上の局所領域内の全画像を処理している。しかし、これらの疑似画像はいずれも検査対象画像から派生したものであり、またヒストグラムには、エッジ強度により重み付けされた度数を設定しているから、検査対象画像に局所領域を設定して、その領域内のエッジ構成画素のエッジコードのみを用いてヒストグラムを作成する場合と実質的に同義の処理を実行していると考えられる。
【００３７】
図２の各画像に示したように、プリント基板の回路パターンは、一般に水平方向、垂直方向、および斜め４５度の方向のいずれかに沿って延びるように形成される。したがって前記した（Ｂ）（Ｃ）式によれば、回路パターンのエッジの構成画素では、理論上のエッジコードは０度または４５度になると考えられる。よって、図３の処理を、欠陥の存在しない局所領域に対して実行した場合には、画像中のワークまたは回路パターンに多少の回転ずれが生じているとしても、度数が高くなる範囲は、上記の理論上の値付近に限定されると考えられる。図２の例でも、欠陥無画像のエッジコードヒストグラムでは、度数が顕著になるのは０〜５度の範囲であり、１５度以上の角度に対応する度数は、ゼロまたはゼロに近い数字になっている。
【００３８】
一方、欠陥に対応するエッジの向きには、上記のような規則性はなく、種々の方向を向くエッジが存在する。したがって、欠陥を含む局所領域に対して図３の処理を実行した場合には、欠陥のない場合のヒストグラムよりはるかに多くの角度で、度数が高くなると考えられる。図２の例でも、上段の欠陥有画像のヒストグラムでは、角度間の度数の差が小さく、ある程度の値の度数が全体にばらついた状態になっている。
【００３９】
上記のようなヒストグラムの特性に基づき、この実施例では、つぎの図４〜６のいずれかの処理によりヒストグラムを解析し、局所領域内に不良が含まれるかどうかを判別するようにしている。なお、判別結果は、欠陥フラグｄ＿ｆｌｇにより表される。
【００４０】
図４の処理は、ヒストグラム中の度数の最大値に対応する角度が回路パターンの限定された向きに適合するか否かを照合する処理により、欠陥の有無を判別するものである。最初のＳＴ１０１およびＳＴ１０２〜１０６のループは、ヒストグラム中の度数の最大値Ｈｍａｘ、およびこの最大値Ｈｍａｘに対応する角度Ｔｍａｘを、求めるためのものである。
【００４１】
上記の処理が終了すると、ＳＴ１０７では、度数の最大値Ｈｍａｘを所定のしきい値Ｈｔｈと比較する。ここでＨｍａｘがしきい値Ｈｔｈ以上であれば、ＳＴ１０８に進み、角度Ｔｍａｘを基準の角度Ｔ１，Ｔ２（Ｔ１＜Ｔ２）と比較する。ここでＴｍａｘがＴ１とＴ２との間に位置する場合には、ＳＴ１０８が「ＹＥＳ」となってＳＴ１０９に進み、欠陥フラグｄ＿ｆｌｇをオンにする（データ処理上はｄ＿ｆｌｇに「１」に設定する。）。一方、ＴｍａｘがＴ１以下であるかＴ２以上であれば、ＳＴ１０８は「ＮＯ」となってＳＴ１１０に進み、欠陥フラグｄ＿ｆｌｇをオフにする（データ処理上はｄ＿ｆｌｇに「０」を設定する。）。
【００４２】
上記のＴ１，Ｔ２には、あらかじめ、欠陥無画像のサンプルのヒストグラムを用いるなどして、欠陥無画像のヒストグラムにおいて所定値以上の度数が得られる角度範囲と度数の低い角度範囲との境界にあたる角度が設定される。たとえば、サンプルのヒストグラムにおいて、回路パターンの限定された向きを表す角度であり、理論上度数が最大となるはずの角度（０度または４５度）に対し、５度程度の範囲内に最大値が認められる場合には、Ｔ１＝５、Ｔ２＝４０とする。
【００４３】
上記図４の処理によれば、ヒストグラムの最大値Ｈｍａｘに対応する角度ＴｍａｘがＴ１からＴ２までの範囲にある場合には、この角度Ｔｍａｘは回路パターンの限定された向きには適合しておらず、局所領域内に欠陥があると判断されることになる。これに対し、角度ＴｍａｘがＴ１以下またはＴ２以上であれば、この角度Ｔｍａｘは回路パターンの限定された向きに適合しており、局所領域内には欠陥はないと判断されることになる。
【００４４】
また、局所領域内に殆どエッジ構成画素が含まれない場合には、ＳＴ１０２〜１０６のループで求めた最大値Ｈｍａｘはしきい値Ｈｔｈより小さくなるので、ＳＴ１０７が「ＮＯ」となってＳＴ１１０に進む。よって、この場合にも、局所領域内には欠陥はないと判断されることになる。
【００４５】
なお、上記の処理では、ヒストグラム中の最大値のみを基準の角度Ｔ１，Ｔ２と比較しているが、これに限らず、ヒストグラム中の極大値のうち、値が所定の基準値以上のものについて、それぞれＳＴ１０７の処理を実行してもよい。この場合、各極大値のうちのいずれか１つでも、Ｔ１とＴ２との間の値になった場合には、欠陥フラグｄ＿ｆｌｇをオンにするようにしてもよい。
【００４６】
つぎに図５の処理は、ヒストグラム中で前後のデータより値が大きくなる度数データの数Ｃを求め、そのＣの値を所定の基準値ＣＡと比較することによって欠陥の有無を判別するものである。先の図２に示されるように、欠陥無画像のヒストグラムでは、最大値付近を除き、起伏の顕著な箇所は認められず、最大値から離れるほど値が下がる傾向がある。これに対し、欠陥有画像のヒストグラムでは、回路パターンに適合しない角度範囲でも、起伏の大きな変化が生じている。すなわち起伏の変化の範囲が大きくなっている。
【００４７】
上記のＣは、ヒストグラムの起伏の発生度合いを表すものと考えられる。また、起伏の発生度合いが大きい場合は、度数のばらつきが大きいとも考えられるから、Ｃの値を、ヒストグラムの度数のばらつき度合いを表すパラメータとしてとらえてもよい。
【００４８】
図５では、最初のＳＴ２０１およびＳＴ２０２〜２０６において、１〜４４度の各角度を対象に、Ｃの値を求め、つぎのＳＴ２０７において、Ｃの値を基準値ＣＡと比較する。ここでＣがＣＡより大きければ、ＳＴ２０７が「ＹＥＳ」となってＳＴ２０８に進み、欠陥フラグｄ＿ｆｌｇをオンにする。一方、極大値の数Ｃが基準値ＣＡ以下であれば、ＳＴ２０９に進み、欠陥フラグｄ＿ｆｌｇをオフにする。なお、基準値ＣＡは、図４の処理のＴ１，Ｔ２と同様に、欠陥無画像のサンプルのヒストグラムから求められるＣの値に応じて設定するのが望ましい。
【００４９】
上記の処理によれば、計数値Ｃが基準値ＣＡより大きければ、ヒストグラムの度数のばらつき度合いは、回路パターンの限定された向きに基づくヒストグラムには適合しておらず、局所領域には欠陥が含まれると判断することになる。他方、計数値Ｃが基準値ＣＡを下回る場合には、ヒストグラムの度数のばらつき度合いは、回路パターンの限定された向きに基づくヒストグラムに適合しており、局所領域には欠陥は含まれないと判断される。
【００５０】
つぎに、図６の処理では、ＳＴ３０１〜３０５において、図４のＳＴ１０１〜１０６と同様の処理によりヒストグラム中の最大値Ｈｍａｘを求めた後、このＨｍａｘが基準値Ｈｔｈ以上であることを条件に、最大値Ｈｍａｘの半分（Ｈｍａｘ／２）以上の値をとる度数データの数Ｃ１を求める処理（ＳＴ３０７〜３１１）を実行する。
【００５１】
ＳＴ３１２では、計数値Ｃ１を所定の基準値ＣＢと比較する。ここでＣ１がＣＢを上回る場合には、ＳＴ３１２が「ＹＥＳ」となってＳＴ３１３に進み、欠陥フラグｄ＿ｆｌｇをオンにする。一方、Ｃ１がＣＢ以下である場合、または最大値Ｈｍａｘが基準値Ｈｔｈ以下である場合には、ＳＴ３１４に進み、欠陥フラグｄ＿ｆｌｇをオフにする。
【００５２】
局所領域内に欠陥が含まれていない場合には、図２の下段のヒストグラムに示すように、ヒストグラムの最大値の半分以上の値を示す度数データは、その最大値の付近に限定される。これに対し、局所領域内に欠陥が含まれる場合のヒストグラムでは、全般にわたって度数が高めになるから、上記のＣ１の値は欠陥がない場合に比べ、大幅に上昇する。よって、計数値Ｃ１は、ヒストグラムの度数のばらつき度合いを示すパラメータとして機能すると考えることができる。
【００５３】
なお、計数の対象とする度数データを決めるしきい値は、上記のＨｍａｘ／２に限らず、たとえば、局所領域の面積に所定の係数を掛けた値としてもよい。
【００５４】
図６の処理によれば、計数値Ｃ１が基準値ＣＢ以上であれば、ヒストグラムの度数のばらつき度合いは、回路パターンの限定された向きに基づくヒストグラムに適合しておらず、局所領域には不良が含まれると判断される。これに対し、計数値Ｃ１が基準値ＣＢを下回る場合には、ヒストグラムの度数のばらつき度合いは、回路パターンの限定された向きに基づくヒストグラムに適合しており、局所領域には不良は存在しないと判断される。
【００５５】
上記３とおりの解析処理は、ワークの撮像状態や回路パターンの形成状態等の事情に応じて選択される。たとえば、撮像時のワークの向きが一定であって、回路パターンの回転ずれが少ないために、回路パターンの限定された向きに対応する角度がヒストグラム上のほぼ一定の位置に対応する場合には、図４の処理を選択することができる。一方、撮像時のワークが特定の方向を向いていなかったり、回路パターンの回転ずれが大きいために、回路パターンの限定された向きに対応する角度をヒストグラム上で特定するのが困難な場合には、図５または図６の処理を選択するのが望ましい。
【００５６】
また、ヒストグラムの解析処理は上記の３とおりの処理に限定されるものではない。たとえば、ヒストグラムに含まれるピークの頂点（極大値）を抽出し、その抽出数を回路パターンの限定された向きの数に応じた基準数（１または２）と比較してもよい。この場合には、あらかじめ、ワークの良品モデルの画像やＣＡＤデータなどを用いて、局所領域毎に、その領域に含まれる回路パターンの向きを求め、その結果に応じた基準数を設定しておくのが望ましい。
【００５７】
図７は、検査全体の処理の手順を示すフローチャートである。
検査対象のワーク（プリント基板）は、図示しない搬送機構により、カメラの撮像対象領域内に搬送され、位置決めされる。図７の処理は、このワークの導入に合わせて開始されるもので、最初のＳＴ１では、欠陥画像の各画素の値を初期値の「０」に設定する。
【００５８】
ＳＴ２では、導入されたワークをカメラ１により撮像する。この撮像により生成された画像は、画像入力部３によりディジタル変換されるとともに、エッジ抽出部４においてエッジ強度画像およびエッジコード画像が生成される。
【００５９】
つぎのＳＴ３〜ＳＴ１５は、あらかじめ設定された左上頂点（ｘ１，ｙ１）および右下頂点（ｘ２，ｙ２）により特定される矩形領域内の複数の画素に順に着目し、その画素を中心とする局所領域毎に、エッジコードヒストグラムを作成する処理や欠陥の有無を判別する処理を実行する。
【００６０】
なお、ＳＴ１３のｓｘ、ＳＴ１５のｓｙには、着目しない画素の数（間引き処理の間隔）に１を加えた値が設定される（ｓｘ＝ｓｙ＝１の場合は、間引きをせず、検査領域内の全画素を対象に処理を行うことになる。）。これらｓｘ，ｓｙの値も、局所領域のサイズと同様に、検出したい欠陥の大きさに応じて適宜変更することができる。
【００６１】
上記のループにおける具体的な処理を順に説明すると、ＳＴ５で局所領域を設定した後、つぎのＳＴ６で、この局所領域に含まれる各画素のエッジ強度の和ＢＡを算出し、さらにＳＴ７で、ＢＡを所定の基準値と比較する。この場合の基準値は、濃度むら等のノイズにより生じるエッジ強度に基づき設定される。ＢＡが基準値より小さい場合には、以下の処理をスキップして、ＳＴ１３に進むので、この場合の欠陥画像上の着目画素は、初期値の「０」のままとなる。
【００６２】
上記のＢＡが基準値以上であれば、ＳＴ８に進み、局所領域内のヒストグラムを作成する。なお、このＳＴ８では、先に図３に示した一連の処理が実行される。さらにつぎのＳＴ９では、作成されたヒストグラムの波形を整えるための平滑化処理を実施する。具体的には、各度数データについて、それぞれ当該データおよびその前後の度数データの計３個のデータの平均値を求め、元の度数データを平均値に置き換える。
【００６３】
ＳＴ１０では、図４，５，６のいずれかに示した手順によるヒストグラムの解析処理を実行する。この解析処理において欠陥フラグｄ＿ｆｌｇがオンに設定された場合には、ＳＴ１１が「ＹＥＳ」となってＳＴ１２に進み、欠陥画像中の着目画素のデータＤ（ｘ，ｙ）を初期値の「０」から「１」に変更することにより、着目画素を欠陥画素に設定する。
【００６４】
上記のＳＴ３〜１４のループが終了したとき、毎時のヒストグラムの解析処理結果を反映した欠陥画像が生成される。ＳＴ１７では、この欠陥画像について、局所的に存在する欠陥画素が消去された修正画像を生成する処理を実行する。
【００６５】
上記の画像修正処理について、図８を用いて簡単に説明する。
まず画像メモリ５内に、元の欠陥画像とは別に、修正後の欠陥画像の格納領域を設定し、その画像の各画素を初期値の「０」に設定する。そして、元の欠陥画像中の欠陥画素に順に着目し、この画素の値を新たな欠陥画像でも維持するかどうかを判別する。
【００６６】
上記の判別処理では、着目画素ｇ０からｘ方向にｓｘ、またはｙ方向にｓｙだけ離れて位置する画素ｇ１〜ｇ４と、ｘ，ｙの両方向に、それぞれｓｘ，ｓｙの距離を隔てて位置する画素ｇ５〜ｇ８の計８個の画素について、元の欠陥画像におけるデータを読み出す。これらの画素ｇ１〜ｇ８は、着目画素ｇ０を中心とする局所領域の隣に設定された局所領域の中心画素に相当する。この実施例では、これら８個の画素ｇ１〜ｇ８がすべて欠陥画素である場合のみ、修正後の欠陥画像の着目画素ｇ´０の値を修正前と同じ値「１」に維持する（図８の（１）参照。）。８個の画素の中に１つでも欠陥画素でないものがある場合には、修正後の画像の着目画素ｇ´０を、初期値の「０」のままに設定する（図８の（２）参照。）。このような処理により、ある値以上の大きさを持つ欠陥に対応する画素のみが欠陥画素として維持される。
【００６７】
図７に戻って、上記の修正処理が完了すると、ＳＴ１８では、修正後の欠陥画像における欠陥画素の数ＳＤを計数する。つぎのＳＴ１９では、このＳＤの値を所定の基準値Ｓｔｈと比較する。ここでＳＤが基準値Ｓｔｈ以上であれば、ＳＴ１９が「ＹＥＳ」となってＳＴ２０に進み、検査対象のワークを「不良」であると判定する。ＳＤが基準値Ｓｔｈより小さい場合には、ＳＴ２１に進み、検査対象のワークは良品であると判定する。
【００６８】
この後は、ＳＴ２２に進み、上記の判定結果を外部機器やモニタ８に出力する。さらにつぎの検査対象のワークが搬送されてくると、ＳＴ２３が「ＹＥＳ」となってＳＴ１に戻り、上記の手順を繰り返す。一方、所定時間が経過しても、つぎのワークが搬送されなかった場合や、検査終了コマンドが入力された場合にはＳＴ２３が「ＹＥＳ」となり、検査を終了する。
【図面の簡単な説明】
【００６９】
【図１】検査装置の構成を示すブロック図である。
【図２】欠陥有画像および欠陥無画像と、各画像から作成されるヒストグラムとを対応づけて示す説明図である。
【図３】ヒストグラムの作成処理手順を示すフローチャートである。
【図４】ヒストグラムの解析処理の手順を示すフローチャートである。
【図５】ヒストグラムの解析処理の手順を示すフローチャートである。
【図６】ヒストグラムの解析処理の手順を示すフローチャートである。
【図７】検査の全体処理の手順を示すフローチャートである。
【図８】欠陥画像の修正処理方法を示す説明図である。
【符号の説明】
【００７０】
１    カメラ
２    コントローラ
４    エッジ抽出部
１０  制御部
１１  ＣＰＵ
１４  ハードディスク
【図１】
2008139262.tif 000003
【図２】
2008139262.tif 000004
【図３】
2008139262.tif 000005
【図４】
2008139262.tif 000006
【図５】
2008139262.tif 000007
【図６】
2008139262.tif 000008
【図７】
2008139262.tif 000009
【図８】
2008139262.tif 000010