(57)【特許請求の範囲】
【請求項１】
（ａ）  樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体が撮像されてなる画像データを提供することと、
（ｂ）  前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めることと、
（ｃ）  輝度毎のドット数をヒストグラムとして求めることと、
（ｄ）  前記ヒストグラムにおける最大ドット数を実測最大数として求めることと、
（ｅ）  前記実測最大数を基準として設定された所定の範囲内で前記ヒストグラムの波形を曲線近似により平滑化することと、
（ｆ）  前記平滑化されたヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についてのスレッショルドレベルを求めることと、
（ｇ）  前記スレッショルドレベルに基づいて、前記画像データを２値化することと、
（ｈ）  前記２値化された画像データに基づいて、前記捺印の欠陥を検出することと
を備え、
前記（ｆ）では、前記平滑化されたヒストグラムにおける最大ドット数を始点としてより高い輝度方向に前記平滑化されたヒストグラムの波形が走査され、前記走査の結果として、前記波形の中で前記平滑化されたヒストグラムにおける最大ドット数を含む山の次の山のピーク値が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２
に対応する輝度．
により求められる
外観検査方法。
【請求項２】
（ａ）  樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体が撮像されてなる画像データを提供することと、
（ｂ）  前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めることと、
（ｃ）  輝度毎のドット数をヒストグラムとして求めることと、
（ｄ）  前記ヒストグラムにおける最大ドット数を実測最大数として求めることと、
（ｅ）  前記実測最大数を基準として設定された所定の範囲内で前記ヒストグラムの波形を曲線近似により平滑化することと、
（ｆ）  前記平滑化されたヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についてのスレッショルドレベルを求めることと、
（ｇ）  前記スレッショルドレベルに基づいて、前記画像データを２値化することと、
（ｈ）  前記２値化された画像データに基づいて、前記捺印の欠陥を検出することと
を備え、
前記（ｆ）では、前記平滑化されたヒストグラムにおける最大ドット数を始点としてより高い輝度方向に前記平滑化されたヒストグラムの波形が走査され、前記走査の結果として、前記波形の中で前記平滑化されたヒストグラムにおける最大ドット数を含む山の谷部分の次の山のピーク値が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２
に対応する輝度．
により求められる
外観検査方法。
【請求項３】
（ａ）  樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体が撮像されてなる画像データを提供することと、
（ｂ）  前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めることと、
（ｃ）  輝度毎のドット数をヒストグラムとして求めることと、
（ｄ）  前記ヒストグラムにおける最大ドット数を実測最大数として求めることと、
（ｅ）  前記実測最大数を基準として設定された所定の範囲内で前記ヒストグラムの波形を曲線近似により平滑化することと、
（ｆ）  前記平滑化されたヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についてのスレッショルドレベルを求めることと、
（ｇ）  前記スレッショルドレベルに基づいて、前記画像データを２値化することと、
（ｈ）  前記２値化された画像データに基づいて、前記捺印の欠陥を検出することと
を備え、
前記（ｆ）では、前記平滑化されたヒストグラムのうち予め設定された輝度に対応する範囲が捺印検査範囲とされ、前記平滑化されたヒストグラムの波形のうち前記捺印検査範囲内におけるピーク値が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２
に対応する輝度．
により求められる
外観検査方法。
【請求項４】
（ａ）  樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体が撮像されてなる画像データを提供することと、
（ｂ）  前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めることと、
（ｃ）  輝度毎のドット数をヒストグラムとして求めることと、
（ｄ）  前記ヒストグラムにおける最大ドット数を実測最大数として求めることと、
（ｅ）  前記実測最大数を基準として設定された所定の範囲内で前記ヒストグラムの波形を曲線近似により平滑化することと、
（ｆ）  前記平滑化されたヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についてのスレッショルドレベルを求めることと、
（ｇ）  前記スレッショルドレベルに基づいて、前記画像データを２値化することと、
（ｈ）  前記２値化された画像データに基づいて、前記捺印の欠陥を検出することと
を備え、
前記（ｆ）では、前記平滑化されたヒストグラムのうち下記式；
Ｅｓ＝前記平滑化されたヒストグラムにおける最大ドット数×設定乗算値＋設定オフセット値．
により求められる前記Ｅｓを輝度の下限値とする範囲が捺印検査範囲とされ、前記平滑化されたヒストグラムの波形のうち前記捺印検査範囲内において、前記Ｅｓに最も近いピーク値が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２
に対応する輝度．
により求められる
外観検査方法。
【請求項５】
請求項１から４のいずれか１項に記載の外観検査方法において、
前記（ｅ）の平滑化は、前記実測最大数に対応する輝度より所定の量だけ高い輝度に対応する第１のドット数と、前記実測最大数に対応する輝度より所定の量だけ低い輝度に対応する第２のドット数とを用いて行われる
外観検査方法。
【請求項６】
請求項１から５のいずれか１項に記載の外観検査方法において、
前記（ｅ）の平滑化は、前記実測最大数から所定の設定値が減算されてなるドット数から前記実測最大数までの範囲内で行われる
外観検査方法。
【請求項７】
請求項６に記載の外観検査方法において、
前記（ｅ）の平滑化では、前記ヒストグラムの波形のうち、前記範囲内の部分が２次曲線に近似される
外観検査方法。
【請求項８】
請求項１から７のいずれか１項に記載の外観検査方法において、
前記欠陥を検出する対象である検査対象領域の面積が所定値よりも小さいときには、前記スレッショルドレベルは、前記（ｄ）、（ｅ）および（ｆ）によって求められることなく、予め設定された標準値が用いられる
外観検査方法。
【請求項９】
樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体を撮像して前記被検査体の画像データを生成するカメラと、
スレッショルドレベルを提供するスレッショルドレベル提供部と、
前記スレッショルドレベルに基づいて、前記画像データを２値化する２値化部と、
前記２値化された画像データに基づいて前記捺印の良否判定を行う判定部と
を備え、
前記スレッショルドレベル提供部は、
前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めるとともに、輝度毎のドット数をヒストグラムとして求め、前記ヒストグラムにおける最大ドット数を実測最大数として求めた後に、前記実測最大数を基準として設定された所定の範囲内で平滑化された前記ヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についての前記スレッショルドレベルを提供し、
前記スレッショルドレベル提供部は、前記平滑化されたヒストグラムにおける最大ドット数を始点としてより高い輝度方向に前記平滑化されたヒストグラムの波形を走査し、前記走査の結果として、前記波形の中で前記平滑化されたヒストグラムにおける最大ドット数を含む山の次の山のピーク値を求め、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒを、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２に対応する輝度．
により求める
外観検査装置。
【請求項１０】
樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体を撮像して前記被検査体の画像データを生成するカメラと、
スレッショルドレベルを提供するスレッショルドレベル提供部と、
前記スレッショルドレベルに基づいて、前記画像データを２値化する２値化部と、
前記２値化された画像データに基づいて前記捺印の良否判定を行う判定部と
を備え、
前記スレッショルドレベル提供部は、
前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めるとともに、輝度毎のドット数をヒストグラムとして求め、前記ヒストグラムにおける最大ドット数を実測最大数として求めた後に、前記実測最大数を基準として設定された所定の範囲内で平滑化された前記ヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についての前記スレッショルドレベルを提供し、
前記スレッショルドレベル提供部は、前記平滑化されたヒストグラムにおける最大ドット数を始点としてより高い輝度方向に前記平滑化されたヒストグラムの波形を走査し、前記走査の結果として、前記波形の中で前記平滑化されたヒストグラムにおける最大ドット数を含む山の谷部分の次の山のピーク値を求め、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒを、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２に対応する輝度．
により求める
外観検査装置。
【請求項１１】
樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体を撮像して前記被検査体の画像データを生成するカメラと、
スレッショルドレベルを提供するスレッショルドレベル提供部と、
前記スレッショルドレベルに基づいて、前記画像データを２値化する２値化部と、
前記２値化された画像データに基づいて前記捺印の良否判定を行う判定部と
を備え、
前記スレッショルドレベル提供部は、
前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めるとともに、輝度毎のドット数をヒストグラムとして求め、前記ヒストグラムにおける最大ドット数を実測最大数として求めた後に、前記実測最大数を基準として設定された所定の範囲内で平滑化された前記ヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についての前記スレッショルドレベルを提供し、
前記シュレッショルドレベル提供部は、前記平滑化されたヒストグラムのうち予め設定された輝度に対応する範囲を捺印検査範囲として、前記平滑化されたヒストグラムの波形のうち前記捺印検査範囲内におけるピーク値を求め、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒを、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２
に対応する輝度．
により求める
外観検査装置。
【請求項１２】
樹脂によって構成され、捺印を含む上面を有するＩＣパッケージの全体を撮像して前記被検査体の画像データを生成するカメラと、
スレッショルドレベルを提供するスレッショルドレベル提供部と、
前記スレッショルドレベルに基づいて、前記画像データを２値化する２値化部と、
前記２値化された画像データに基づいて前記捺印の良否判定を行う判定部と
を備え、
前記スレッショルドレベル提供部は、
前記画像データに基づいて、前記画像データを構成するドット毎の輝度を求めるとともに、輝度毎のドット数をヒストグラムとして求め、前記ヒストグラムにおける最大ドット数を実測最大数として求めた後に、前記実測最大数を基準として設定された所定の範囲内で平滑化された前記ヒストグラムにおける最大ドット数に対応する輝度に基づいて、前記輝度についての前記スレッショルドレベルを提供し、
前記スレッショルドレベル提供部は、前記平滑化されたヒストグラムのうち下記式；
Ｅｓ＝前記平滑化されたヒストグラムにおける最大ドット数×設定乗算値＋設定オフセット値．
により求められる前記Ｅｓを輝度の下限値とする範囲を捺印検査範囲として、前記平滑化されたヒストグラムの波形のうち前記捺印検査範囲内において、前記Ｅｓに最も近いピーク値を求め、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒを、下記式；
ｔｈｒ＝（前記平滑化されたヒストグラムにおける最大ドット数＋前記ピーク値）／２に対応する輝度．
により求める
外観検査装置。
【請求項１３】
請求項１から８のいずれか１項に記載された外観検査方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、外観検査方法および装置に関し、特に、ＩＣパッケージの外観検査方法および装置に関する。
【０００２】
【従来の技術】
従来、ＩＣパッケージの外観検査装置としては、以下の技術が知られている。
特開平１０−２１３４１７号公報には、以下のＩＣパッケージ位置検出方法が開示されている。パッケージの上面と側面の境界をヒストグラムにより検出し、境界点の分布の微分値から各ドットの連続分布の直線性を検出する。また、欠け部による非直線部分を除去した残りのドットからパッケージ境界直線を最小二乗法により検出する。さらに検出したｘ方向、ｙ方向の直線の交点を原点とし、その原点を中心に２直線の交わる角が９０度となるように、ｘ、ｙの直線をそれぞれ等しい角度だけ回転させ、ｘ方向基準軸と、ｙ方向基準軸とを算出する。これにより、欠けやバリ等があっても、正しくＩＣ位置を検出でき、外観検査上の不良項目の検出位置、リードの検出位置等を正しく設定できる。
【０００３】
特開平１１−１４３１７号公報には、以下の外観検査方法が開示されている。ＴＶカメラでＩＣパッケージを撮像し、画像データ処理装置のエリア設定部により画像データに対してＩＣパッケージの周辺部に走査開始エリアを設定して走査を行い、位置データ検出部によりＩＣパッケージの端の位置データ群を検出し、この位置データ群に基づいて検査対象領域設定部により画像データに対して検査対象領域を設定し、判定部により画像処理を行ってＩＣパッケージの良品又は不良品を判定する。
【０００４】
特開平７−１２８２４９号公報には、以下のＩＣ異物検査装置が開示されている。カメラが検査対象ＩＣのリード部分を撮像しＡＤ変換回路がＡＤ変換を行う。微分回路が濃淡画像データを入力し濃度の変化点が強調されるように微分処理を行い微分画像データを出力し、第一の二値化回路は検査領域記憶回路に記憶された複数のリードを含む検査対象領域内の微分画像データを予め設定した第一の二値化レベルにより二値化画像データに変換し出力し、投影回路がリードの長手方向と平行な方向の二値化画像データの”１”の数を計測し計測データを出力して二値化処理を行いリードの長手方向に二値化データの”１”の数を計測する。第二の二値化回路は計測データの二値化を行い、判定回路は第二の二値化データの”０”と”１”の連続数のカウントを行い、予め設定した上限値と下限値の範囲外の連続数があれば異物付着と判定する。
【０００５】
特開平７−３７０９４号公報には、以下の画像処理装置が開示されている。履歴プログラム保存部に保存された画像処理プログラムの履歴を編集する編集部、画像処理コマンドリスト中の重複や最終結果を得るために不要なものを削除する適正化部を設け、ユーザに画像処理コマンドを理解させたり使用方法を習得させるための表示を表示部に表示し、画像処理部の処理結果の評価値より対象物に適した照明方式を求め、また特徴量の評価値に基づいて画像処理プログラムを生成し、また関数を計測値の組合せに応じて選別して表示し、その表示に基づいて選択した関数を画像処理プログラムに追加する。
【０００６】
特開平８−４４８７０号公報には、以下の外観検査装置のメモリ管理方式が開示されている。不揮発性メモリは、使用条件に関する環境データと各被検査物ごとに設定される品種データとユーザプログラムとを登録することができる。不揮発性メモリの記憶領域は一定サイズの多数個のブロックに分割される。また、各ブロックへの格納内容と格納したブロックとの対応関係を示すアロケーションテーブルが不揮発性メモリに設けられる。
【０００７】
特開平５−２６４２４０号公報には、以下の外観検査装置が開示されている。試料上に形成されたパターンを撮像する撮像手段と、撮像された画像を二値化する画像二値化手段と、二値化画像上の任意の中心画素から複数方向に延在する各画素列内におけるパターン部分のパターン部長さを測定するラジアル測長手段と、複数方向の測長値からパターンの略中心を検出する中心検出手段と、複数方向の各測長値をラジアルコードに変換するコード化手段と、各種ラジアルコードに対応したパターン形状の種類を示すカテゴリコードを予め格納し、コード化手段で変換されたラジアルコードに基づいて格納されたカテゴリを選択してカテゴリコードに変換するカテゴリ変換手段とを備え、カテゴリコードに基づいてパターンの欠陥を検出する。
【０００８】
【発明が解決しようとする課題】
より検査処理速度の速い、外観検査方法および装置が望まれる。
特に、複数の検査項目が検査されるときに、より検査処理速度の速い、外観検査方法および装置が望まれる。
ノイズ成分の影響を受けることなく検査精度の高い、外観検査方法および装置が望まれる。
それぞれの検査対象領域の特性に合わせた、外観検査方法および装置が望まれる。
ユーザにとって使い勝手の良い、外観検査方法および装置が望まれる。
【０００９】
本発明の目的は、上記の事情に鑑みてなされたもので、より検査処理速度の速い、外観検査方法および装置を提供することである。特に、複数の検査項目が検査されるときに、より検査処理速度の速い、外観検査方法および装置を提供することである。また、本発明の他の目的は、ノイズ成分の影響を受けることなく検査精度の高い、外観検査方法および装置を提供することである。本発明のさらに他の目的は、それぞれの検査対象領域の特性に合わせた、外観検査方法および装置を提供することである。本発明のさらに他の目的は、ユーザにとって使い勝手の良い、外観検査方法および装置を提供することである。
【００１０】
【課題を解決するための手段】
その課題を解決するための手段が、下記のように表現される。その表現中の請求項対応の技術的事項には、括弧（）つき、番号、記号等が添記されている。その番号、記号等は、請求項対応の技術的事項と実施の複数・形態のうちの少なくとも一つの形態の技術的事項との一致・対応関係を明白にしているが、その請求項対応の技術的事項が実施の形態の技術的事項に限定されることを示されるためのものではない。
【００１１】
本発明の外観検査方法は、（ａ）  被検査体（８）が撮像されてなる画像データ（１）を提供することと、（ｂ）  前記画像データ（１）に基づいて、前記画像データ（１）を構成する複数の画像単位のそれぞれについての明るさを求めることと、（ｃ）  互いに同じ前記明るさを有する前記画像単位の数を明るさ毎に求めることと、（ｄ）  前記明るさ毎に求められた複数の前記数のうち最大である前記数（ｎａ）を実測最大数（ｎａ）として求めることと、（ｅ）  前記実測最大数（ｎａ）を用いて演算し前記演算の結果として設定最大数（ｎ’ａ）を求めることと、（ｆ）  前記設定最大数（ｎ’ａ）に基づいて、前記明るさについてのスレッショルドレベルを求めることと、（ｇ）  前記スレッショルドレベルに基づいて、前記画像データ（１）を２値化することと、（ｈ）  前記２値化された画像データ（１）に基づいて、前記被検査体（８）の欠陥を検出することとを備えている。
【００１２】
本発明の外観検査方法において、前記設定最大数（ｎ’ａ）は、前記実測最大数（ｎａ）からノイズ成分が除去されたものである。
【００１３】
本発明の外観検査方法において、前記（ｅ）の演算は、前記実測最大数（ｎａ）に対応する前記明るさを基準として、より高い明るさに対応する第１の前記数（ｎａ＋１）と、より低い明るさに対応する第２の前記数（ｎａ−１）とを求め、前記第１および第２の数（ｎａ＋１、ｎａ−１）を用いて行われる。
【００１４】
本発明の外観検査方法において、前記（ｅ）の演算は、前記実測最大数（ｎａ）から設定値が減算されてなる減算値（ｙ）と等しい前記数に対応する前記明るさ（ｘａ１、ｘａ２）を用いて行われる。
【００１５】
本発明の外観検査方法において、前記（ｂ）の結果は、ヒストグラムとして表され、前記（ｅ）の演算では、前記ヒストグラムの波形のうち、前記実測最大数（ｎａ）から設定値が減算されてなる減算値（ｙ）よりも前記数が大きい部分が２次曲線に近似され、前記近似された２次曲線の極大値として前記設定最大数（ｎ’ａ）が求められる。
【００１６】
本発明の外観検査方法において、前記（ｆ）において前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝前記設定最大数（ｎ’ａ）×乗算値＋オフセット値．
により求められる。ここで、オフセット値は、０または正または負の値をとり得る。
【００１７】
本発明の外観検査方法において、前記乗算値および／または前記オフセット値は、前記被検査体（８）についての複数の検査項目のそれぞれによって異なる値である。
【００１８】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記複数の検査項目には、ボイドの検出、パッケージクラック・パッケージ欠けの検出、捺印検査、リード上の異物検出、およびリード間の異物検出が含まれる。
【００１９】
本発明の外観検査方法において、前記欠陥を検出する対象である検査対象領域の面積が所定値よりも小さいときには、前記スレッショルドレベルは、前記（ｄ）、（ｅ）および（ｆ）によって求められることなく、予め設定された標準値が用いられる。
【００２０】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記ＩＣパッケージ（８）には、前記ＩＣパッケージ（８）が成形されるときに前記ＩＣパッケージ（８）を金型から押し出すピンに供される凹部（３１）が形成され、前記欠陥を検出する対象である検査対象領域が前記凹部（３１）であるときには、前記スレッショルドレベルは、前記（ｄ）、（ｅ）および（ｆ）によって求められることなく、予め設定された２つの標準値が用いられ、前記（ｇ）の２値化は、前記２つの標準値のそれぞれを前記スレッショルドレベルとして２回行われ、前記（ｈ）は、２つの前記２値化された画像データ（１）のそれぞれに基づいて、互いに異なる種類の前記欠陥を検出する。
【００２１】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記ＩＣパッケージ（８）には、捺印（４１）が含まれ、前記欠陥を検出する対象である検査対象領域が前記捺印（４１）であるときには、前記（ｂ）では、前記画像データ（１）のうち前記捺印（４１）があると予想される捺印検査領域（５１）についての前記明るさが求められ、前記（ｃ）では、前記捺印検査領域（５１）を対象として、前記数が求められる。
【００２２】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記ＩＣパッケージ（８）には、捺印（４１）が含まれ、前記（ｂ）の結果は、ヒストグラムとして表され、前記欠陥を検出する対象である検査対象領域が前記捺印（４１）であるときには、前記（ｆ）では、前記設定最大数（ｎ’ａ）を始点としてより高い明るさ方向に前記ヒストグラムの波形が走査され、前記走査の結果として、前記波形の中で前記設定最大数（ｎ’ａ）を含む山（Ｐｐ）の次の山（Ｐｎ）のピーク値（ｎｎ）が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記設定最大数（ｎ’ａ）＋前記ピーク値（ｎｎ））／２．
により求められる。
上記において、山とは、上に凸である２次曲線部または上に凸である近似された２次曲線部である。
【００２３】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記ＩＣパッケージ（８）には、捺印（４１）が含まれ、前記（ｂ）の結果は、ヒストグラムとして表され、前記欠陥を検出する対象である検査対象領域が前記捺印（４１）であるときには、前記（ｆ）では、前記設定最大数（ｎ’ａ）を始点としてより高い明るさ方向に前記ヒストグラムの波形が走査され、前記走査の結果として、前記波形の中で前記設定最大数（ｎ’ａ）を含む山（Ｐｐ）の谷部分（Ｐｓ）の次の山（Ｐｎ）のピーク値（ｎｎ）が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記設定最大数（ｎ’ａ）＋前記ピーク値（ｎｎ））／２．
により求められる。
上記において、谷部分とは、下に凸である２次曲線部または下に凸である近似された２次曲線部である。
【００２４】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記ＩＣパッケージ（８）には、捺印（４１）が含まれ、前記（ｂ）の結果は、ヒストグラムとして表され、前記欠陥を検出する対象である検査対象領域が前記捺印（４１）であるときには、前記（ｆ）では、前記ヒストグラムのうち予め設定された明るさに対応する範囲が捺印検査範囲（Ｅ）とされ、前記ヒストグラムの波形のうち前記捺印検査範囲（Ｅ）内におけるピーク値（ｎｎ）が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記設定最大数（ｎ’ａ）＋前記ピーク値（ｎｎ））／２．
により求められる。
【００２５】
本発明の外観検査方法において、前記被検査体（８）は、ＩＣパッケージ（８）であり、前記ＩＣパッケージ（８）には、捺印（４１）が含まれ、前記（ｂ）の結果は、ヒストグラムとして表され、前記欠陥を検出する対象である検査対象領域が前記捺印（４１）であるときには、前記（ｆ）では、前記ヒストグラムのうち下記式；
Ｅｓ＝前記設定最大数（ｎ’ａ）×設定乗算値＋設定オフセット値．
により求められる前記Ｅｓを明るさの下限値とする範囲が捺印検査範囲（Ｅ）とされ、前記ヒストグラムの波形のうち前記捺印検査範囲（Ｅ）内におけるピーク値（ｎｎ）が求められ、前記スレッショルドレベルがｔｈｒとされるとき、前記ｔｈｒは、下記式；
ｔｈｒ＝（前記設定最大数（ｎ’ａ）＋前記ピーク値（ｎｎ））／２．
により求められる。ここで、設定オフセット値は、０または正または負の値をとり得る。
【００２６】
本発明の外観検査装置は、被検査体（８）を撮像して前記被検査体（８）の画像データ（１）を生成するカメラと、スレッショルドレベルを提供するスレッショルドレベル提供部と、前記スレッショルドレベルに基づいて、前記画像データ（１）を２値化する２値化部と、前記２値化された画像データ（１）に基づいて前記被検査体（８）の良否判定を行う判定部とを備え、前記スレッショルドレベル提供部は、前記画像データ（１）に基づいて、前記画像データ（１）を構成する複数の画像単位のそれぞれについての明るさを求めるとともに、互いに同じ前記明るさを有する前記画像単位の数を明るさ毎に求め、前記明るさ毎に求められた複数の前記数のうち最大である前記数（ｎａ）を実測最大数（ｎａ）として求めた後に、前記実測最大数（ｎａ）を用いて演算し、前記演算の結果として求めた設定最大数（ｎ’ａ）に基づいて、前記明るさについての前記スレッショルドレベルを提供する。
【００２７】
本発明の外観検査装置は、複数の画像処理項目（６２〜６６）が格納された画像処理ライブラリ（６１）と、前記複数の画像処理項目（６２〜６６）のそれぞれが任意に選択されるとともに前記選択された前記画像処理項目（６２〜６６）が任意の順番で実行されるように構成されてなる検査項目データ（７２〜７６）が複数格納された検査ライブラリ（７１）とを備え、前記複数の画像処理項目（６２〜６６）には、２値化処理（６２）が含まれ、前記２値化処理（６２）には、２値化するときのスレッショルドレベルを提供するに際し、被検査体（８）が撮像されてなる画像データ（１）に基づいて、前記画像データ（１）を構成する複数の画像単位のそれぞれについての明るさを求めるとともに、互いに同じ前記明るさを有する前記画像単位の数を明るさ毎に求め、前記明るさ毎に求められた複数の前記数のうち最大である前記数（ｎａ）を実測最大数（ｎａ）として求めた後に、前記実測最大数（ｎａ）を用いて演算し、前記演算の結果として求めた設定最大数（ｎ’ａ）に基づいて、前記明るさについての前記スレッショルドレベルを提供する旨のアルゴリズムが含まれている。
【００２８】
本発明の外観検査装置において、更に、前記複数の検査項目データ（７２〜７６）のそれぞれが任意に選択されるとともに前記選択された前記検査項目データ（７２〜７６）が任意の順番で実行されるように構成されてなる検査対象製品毎の品種毎検査データ（８１〜８４）が複数格納された品種毎検査データライブラリを備えている。
【００２９】
本発明の外観検査装置において、複数の前記検査項目データ（７２〜７６）には、ボイドの検出用データ（７２）、捺印検査用データ（７３）、モールド欠けの検出用データ（７４）、ＩＣパッケージの方向相違検出用データ（７５）、およびリードの曲がり検出用データ（７６）が含まれている。
【００３０】
本発明の外観検査装置において、複数の前記検査項目データ（７２〜７６）には、前記２値化処理（６２）に含まれる前記アルゴリズムのうち前記演算に用いられるパラメータが含まれる。
【００３１】
本発明の記録媒体は、（ａ）  被検査体（８）が撮像されてなる画像データ（１）を提供することと、（ｂ）  前記画像データ（１）に基づいて、前記画像データ（１）を構成する複数の画像単位のそれぞれについての明るさを求めることと、（ｃ）  互いに同じ前記明るさを有する前記画像単位の数を明るさ毎に求めることと、（ｄ）  前記明るさ毎に求められた複数の前記数のうち最大である前記数（ｎａ）を実測最大数（ｎａ）として求めることと、（ｅ）  前記実測最大数（ｎａ）を用いて演算し前記演算の結果として設定最大数（ｎ’ａ）を求めることと、（ｆ）  前記設定最大数（ｎ’ａ）に基づいて、前記明るさについてのスレッショルドレベルを求めることと、（ｇ）  前記スレッショルドレベルに基づいて、前記画像データ（１）を２値化することと、（ｈ）  前記２値化された画像データ（１）に基づいて、前記被検査体（８）の欠陥を検出することとをコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００３２】
本発明では、予め登録されている画像処理の各種アルゴリズムを、ユーザが任意の順番で組み合わせて複合された画像処理アルゴリズム（検査ライブラリ）が作製される。その複合された画像処理アルゴリズムは、そのユーザにより任意の名前が付けられて登録される。
【００３３】
ユーザは、品種毎の検査データ内で、上記のように独自に作製された画像処理アルゴリズムを、その登録時の上記名前で指定する。これにより、異なる品種の検査データの作製時にも、その画像処理アルゴリズムは共通に使用される。さらに、その画像処理アルゴリズムは、品種毎の検査データ内で個別に変更される。
【００３４】
品種毎の検査データでは、画像処理アルゴリズムと検査領域と判定値が設定される。自動検査時は、予め設定された検査データに従って、指定された検査領域において画像処理が行われ、最終的に計測された値と判定値が比較されることで、良否判定が行われる。
その検査結果は、ユーザが任意に作製した検査項目毎に、任意のアドレスに出力される。
【００３５】
【発明の実施の形態】
以下、添付図面を参照して、本発明の外観検査方法の一実施形態が説明される。
【００３６】
第１の実施形態のＩＣパッケージの外観検査方法は、ＩＣパッケージの位置検出ステップと、ヒストグラム生成ステップと、スレッショルドレベル設定ステップと、２値化ステップとを備えている。
【００３７】
図１（ａ）、（ｂ）および（ｃ）を参照して、上記ＩＣパッケージの位置検出ステップについて説明される。図１（ａ）は、ＩＣパッケージの撮像画像を示す平面図である。図１（ｂ）は、パッケージ角検出ウィンドウを示す図である。図１（ｃ）は、データ加工範囲ウィンドウを示す図である。
【００３８】
まず、ＣＣＤカメラでＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）のパッケージが撮像される。図１（ａ）において、符号１は、その撮像された画像を示している。その映像信号は、デジタル化されてＩＣパッケージ画像データとして、画像メモリに格納される。
撮像画像１の概ね中央部に、ＩＣの画像２が配置される。ＩＣ画像２には、ＩＣパッケージ８の上面１０と、ＩＣパッケージ８の側面９と、ＩＣのリード１１とが含まれる。符号３は背景画像を示している。
【００３９】
ＩＣが撮像されるとき、ＩＣは、ＣＣＤカメラの下の予め決められた場所に配置される。図１（ｂ）に示されるように、ＩＣパッケージ８の左上部と右下部がそれぞれ位置すると予測される領域に、左上パッケージ角検出ウィンドウ３３と、右下パッケージ角検出ウィンドウ３５とが設定される。
【００４０】
モデル（雛型）となるＩＣパッケージの左上の角部と右下の角部のモデル画像データが、記憶部に予め登録されている。左上パッケージ角検出ウィンドウ３３と右下パッケージ角検出ウィンドウ３５のそれぞれの範囲内で、上記の左上角部モデル画像データ、右下角部モデル画像データと一致する部分がパターンマッチング法により検出される。その結果、ＩＣパッケージ８の端部の位置座標が検出される。その検出された位置座標に基づいて、ＩＣ画像２の位置が決定される。ＩＣ画像２の位置に基づいて、図１（ｃ）に示されるように、撮像画面１のうちで検査対象領域とされる、データ加工範囲ウィンドウ４が設定される。
【００４１】
図２を参照して、ヒストグラム生成ステップについて説明される。
図２は、図１（ｃ）のデータ加工範囲ウィンドウ４内の撮影画像１の輝度分布状態を示す輝度・ドット数特性図である。図２に示されるように、データ加工範囲ウィンドウ４内の全ドットを対象に、横軸として輝度値（明るさ）をとり、縦軸にドット数をとったヒストグラムが作製される。撮像画像１は、撮像画像１を構成するそれぞれのドットが８ビットデータとして表され、２５６階調のモノクロデータとして処理される。図２の輝度の目盛り（図示されず）は、０から２５５までとされ、上記の２５６階調に対応している。
【００４２】
図２のヒストグラム波形において、最も輝度の高い山Ｄ１は、リード１１のドット数を示している。次に輝度の高い山Ｄ２がパッケージ上面１０のドット数を示している。次いで輝度の高い山Ｄ３がパッケージ側面９のドット数を示している。輝度が最も低い山Ｄ４が背景画像３のドット数を示している。
【００４３】
次に、スレッショルドレベル設定ステップについて説明される。
ここでは、２番目に輝度の高い山Ｄ２と３番目に輝度の高い山Ｄ３との間の下限値がスレッショルドレベル５として設定されたケースについて説明される。このケースでは、パッケージ上面１０の画像とパッケージ側面９の画像とが切り分けられる。
【００４４】
次に、２値化ステップについて説明される。
図３は、そのスレッショルドレベル５に基づいて、データ加工範囲ウィンドウ４内の撮像画像１が２値化された画像を示している。そのスレッショルドレベル５よりも高輝度のリード１１およびパッケージ上面１０が白色として表示され、スレッショルドレベル５よりも低輝度のパッケージ側面９および背景画像３が黒色として表示されている。
【００４５】
図３において、パッケージの下辺側において、パッケージ側面９に対応する黒色画像が他の辺に比べて幅が大きくなっているのは、パッケージの上面１０と側面９の境界部に欠けがあることを示している。
上記のように、ヒストグラム波形により得られたスレッショルドレベル（輝度値）に基づいて、撮像画像が２値化されることにより、欠けや汚れなどの不良が検出される。
【００４６】
本実施形態においては、スレッショルドレベル設定ステップにおいて、スレッショルドレベルが以下の方法で求められる。
＜１＞ピーク値の平滑化
図２に示されるヒストグラム波形において、ドット数が最大であるピーク値ｎ’ａが求められる。ピーク値ｎ’ａは、ヒストグラム波形から直接的に読み取られる値ではなく、次のように平滑化された結果として求められる。図４の符号Ｋに示されるように、ヒストグラム波形は、実際には滑らかな曲線ではなく、細かな凹凸が含まれている。その細かな凹凸が生じる原因である誤差等の影響を排除するために、平滑化がなされる。
【００４７】
まず、図２（図４）のヒストグラム波形の中で、実際に最もドット数の多い数（ヒストグラム波形から直接的に読み取られる値）ｎａが検出される。次いで、図２において、そのｎａに対応する輝度値よりも１目盛り分小さな輝度値を有するドット数ｎａ−１と、そのｎａに対応する輝度値よりも１目盛り分大きな輝度値を有するドット数ｎａ＋１が検出される。
平滑化されたピーク値ｎ’ａは、次式（１）により求められる。
ｎ’ａ＝（ｎａ−１＋ｎａ＋ｎａ＋１）／３．    ……（１）
【００４８】
上記においては、３つの要素に基づいて平滑化されたが、要素の数は、３に限られず、任意の数であることができる。要素数が５である場合には、図２において、そのｎａに対応する輝度値よりも１目盛り分と２目盛り分小さな輝度値を有するドット数ｎａ−１、ｎａ−２と、そのｎａに対応する輝度値よりも１目盛り分と２目盛り分大きな輝度値を有するドット数ｎａ＋１、ｎａ＋２が求められる。
ｎ’ａは、次式（２）により求められる。
ｎ’ａ＝（ｎａ−２＋ｎａ−１＋ｎａ＋ｎａ＋１＋ｎａ＋２）／５．    ……（２）
要素数が３や５以外の他の値である場合にも上記と同じ手法でｎ’ａが求められる。
【００４９】
＜２＞スレッショルドレベル（２値化レベル）の算出
スレッショルドレベルｔｈｒは、上記＜１＞で求められた、平滑化されたピーク値ｎ’ａに基づいて、以下の式（３）により求められる。
ｔｈｒ＝ｎ’ａに対応する輝度×乗算値＋オフセット値．    ……（３）
上記式（３）において、乗算値および／またはオフセット値は、照明条件などの撮像条件の変化に追従する（その変化の影響が無くなる）ように、可変とされる。ここで、照明条件とは、ＩＣパッケージが撮像されるに際してＩＣパッケージが照明されるときの照明強度である。
【００５０】
さらに、上記式（３）において、乗算値および／またはオフセット値は、検査項目によって可変とされる。
ここで、検査項目としては、ボイドの検出、パッケージクラック・パッケージ欠けの検出、捺印検査、リード上の異物検出、リード間の異物検出、の各項目が含まれる。ここで、ボイドとは、樹脂からなるＩＣパッケージ８がモールドされるときに生じる気泡がＩＣパッケージ８上に小さな穴として表われたものである。
【００５１】
良品であるＩＣパッケージ８の上面１０の輝度に比べて、ボイドの輝度は低い。
パッケージクラック・パッケージ欠けや、捺印や、リード１１上またはリード１１間の異物は、良品であるＩＣパッケージ８の上面１０の輝度に比べて、それらの輝度が高く、かつ、それらのそれぞれの輝度は互いに異なっている。
【００５２】
検査項目毎に、検出される欠陥の輝度が異なることから、良否判定のための２値化に際してのスレッショルドレベルｔｈｒは一意に決められるのではなく、検査項目毎に個別に設定されることが望ましい。したがって、検査項目毎に、式（３）の乗算値および／またはオフセット値が可変とされる。
【００５３】
良品のＩＣパッケージ８の上面１０に比べて輝度の低いボイドが検出されるときには、ｔｈｒは、ｎ’ａに対応する輝度よりも低い輝度として設定される。ボイドは、そのｔｈｒによる２値化処理後に、そのｔｈｒよりも輝度が低いものとして検出される。
良品のＩＣパッケージ８の上面１０に比べて輝度の高い、白いゴミ等が検出されるときには、ｔｈｒは、ｎ’ａに対応する輝度よりも高い輝度として設定される。白いゴミ等は、そのｔｈｒによる２値化処理後に、そのｔｈｒよりも輝度が高いものとして検出される。
【００５４】
平滑化されたピーク値ｎ’ａは、上記式（１）または（２）により算出する方法に代えて、以下の式（４）および（５）を用いた方法により求められることができる。
ｎａ−設定値＝ｙ．    ……（４）
式（４）により求められたｙは、図４の直線ｙのように示される。
【００５５】
ヒストグラム波形と直線ｙとの２つの交点に対応する輝度がそれぞれｘａ１、ｘａ２、とされるとする。
（ｘａ１＋ｘａ２）／２＝ｘａ０．    ……（５）
図４において、式（５）により求められた輝度ｘａ０に対応するドット数が、平滑化されたピーク値ｎ’ａとされる。
【００５６】
さらに、ｎ’ａは、上記２つの方法に代えて、以下の方法により求められることができる。
図４のヒストグラム波形において、式（４）により求められた直線ｙよりも上に位置する部分（凹凸が含まれる山の部分）を、２次曲線に近似する。その近似により求められた２次曲線上でピークとなる値が、ｎ’ａとされる。
【００５７】
上記のいずれかの方法によって、ヒストグラム波形の凹凸に代表されるノイズ成分の影響を受けることなく、スレッショルドレベルｔｈｒが求められる。
【００５８】
本実施形態では、式（３）に示されるように、スレッショルドレベルｔｈｒは、ヒストグラム波形のピーク値である、ｎ’ａに基づいて算出された。
ここで、スレッショルドレベルｔｈｒが、式（３）に代えて、特開平１１−１４３１７号公報に示されるように、「ＩＣパッケージの平均明るさ」に基づいて、式（６）により算出されることが考えられる。
ｔｈｒ＝（ＩＣパッケージの平均明るさ）×（しきい値設定％）．    ……式（６）
【００５９】
上記公報の「ＩＣパッケージの平均明るさ」に基づく算出法によれば、以下の問題がある。ＩＣパッケージ８に大きな白汚れ欠陥があると、図５に示されるように、ヒストグラム波形上に、その白汚れ欠陥に対応した部分Ｐが存在することになる。上記公報によれば「ＩＣパッケージの平均明るさ」には、その部分Ｐの明るさが含まれてしまう。そのため、その白汚れ欠陥を有する不良品に基づいて、ｔｈｒが決定されるおそれがある。そこで、上記公報の技術によれば、その決定されたｔｈｒに基づいて２値化された結果、良品と判定されたＩＣパッケージを対象として、再度、「ＩＣパッケージの平均明るさ」からｔｈｒが算出される。その２回目のｔｈｒが、正式なスレッショルドレベルとして用いられる。
【００６０】
スレッショルドレベルの決定に際し、２回の演算を必要とする上記公報の方法に比べて、本実施形態は、１回の演算で済み処理速度が速い。式（３）によれば、スレッショルドレベルは、ヒストグラム波形のピーク値ｎ’ａに基づいて算出されるため、図５の部分Ｐの明るさが影響しないためである。
【００６１】
但し、スレッショルドレベルが、式（３）のように、ヒストグラム波形のピーク値ｎ’ａに基づいて算出されると不都合なケースがある。
ＩＣパッケージ８の全体が検査されるケースのように、検査対象領域が大きい場合には、そのヒストグラム波形のピーク値（ｎ’ａ）に、白汚れ欠陥やボイドのような欠陥が影響することは無い（大きな検査対象領域において、欠陥部分のドット数が最大となることは現実的には考えられない）。そのため、検査対象領域が大きい場合に、ピーク値ｎ’ａに基づいてスレッショルドレベルが算出されても、問題は生じない。
【００６２】
これに対し、検査対象領域が小さいケースでは、検査対象領域が大きいケースと比べて、同じ大きさの欠陥が存在したとしても、相対的に欠陥部分の面積割合が大きくなる。そのため、その小さな検査対象領域に相当するヒストグラム波形を見たときに、欠陥部分のドット数が最大となることが考えられる。この場合、その最大ドット数に基づいてスレッショルドレベルが算出されるとすると、欠陥（不良）部分に基づいてスレッショルドレベルが算出されることになり、所望の２値化・良否判定の妨げとなる。
【００６３】
上記小さい検査対象領域の検査は、その検査対象領域以外のＩＣパッケージ８の部分がマスクされた状態で行われる。
上記検査対象領域が小さいケースでは、欠陥部分の影響を排除するため、式（３）による算出法に代えて、固定値（標準値）であるスレッショルドレベルが用いられる。照明強度などの撮像条件が相違する場合には、その相違の分だけその固定値が変更される。その変更方法として、下記式（７）が挙げられる。
ｔｈｒｃ＝ｔｈｒｄ×（ｘｓ／ｘｄ）．    ……式（７）
ただし、
ｔｈｒｃは、変更されたスレッショルドレベルであり、
ｔｈｒｄは、固定値としてのスレッショルドレベルであり、
ｘｓは、測定対象のＩＣパッケージ８の全体についてのヒストグラム波形のピーク値に対応する輝度であり、
ｘｄは、ＩＣパッケージ（固定値ｔｈｒｄが求められたときの標準用ＩＣパッケージ）の全体についてのヒストグラム波形のピーク値に対応する、固定値としての輝度である。
【００６４】
例えば、図６に示されるように、標準用ＩＣパッケージの全体についてのヒストグラム波形のピーク値に対応する固定値としての輝度ｘｄが１２０で、固定値としてのスレッショルドレベルｔｈｒｄが３０とする。測定対象のＩＣパッケージ８の全体についてのヒストグラム波形のピーク値に対応する輝度ｘｓが１００のとき、変更されたスレッショルドレベルｔｈｒｃは、下記式（７）’により求められる。
ｔｈｒｃ＝３０×（１００／１２０）＝２５．    ……式（７）’
【００６５】
上記検査対象領域が小さいケースとは、いわゆるピンマークが検査される場合が含まれる。ピンマークとは、モールド時にＩＣパッケージ８が押し出しピン（イジェクトピン）により金型から押し出されるときに用いられるピン押し出し用穴（くぼみ）である。図７（ａ）、（ｂ）に示されるように、ピンマークは、ＩＣパッケージ８の上面１０の角（隅）部に、１ないし４つ形成される。
【００６６】
ピンマークの領域（ピンマーク領域）３１と、ＩＣパッケージ８の上面１０のうちのピンマーク領域３１以外の領域（樹脂本体領域）３２とでは、光反射状態が異なる。一般に、ピンマークが正常に形成されたケースでは、ピンマーク領域３１は、樹脂本体領域３２に比べて、その輝度が低い。そのため、前述されたように、ピンマーク領域３１が検査される場合は、樹脂本体領域３２がマスクされた状態で、２値化・良否判定が行われる。樹脂本体領域３２が検査される場合は、ピンマーク領域３１がマスクされた状態で、２値化・良否判定が行われる。
【００６７】
まず、樹脂本体領域３２が検査されるケースについて説明される。
このケースでは、前述のように、ピンマーク領域３１がマスクされる。ここで、ＩＣパッケージ８におけるピンマークの位置は、実際の測定対象物によって、ばらつきが生じることがある。そのため、位置がばらついてもピンマークが確実にマスクされるように、図８に示されるように、実際のピンマークの外縁部Ｇ（直径）よりも所定のマージン分だけ大きく形成されたマスクＭ１が用いられる。このマスクＭ１は、実際のピンマークの位置のばらつきに関わらず、固定（標準）的に用いられる。
【００６８】
上記マスクＭ１が固定的に用いられたときの問題点として、以下の問題がある。
マージンが確保された上記マスクＭ１によって、実際のピンマーク領域３１のみならず、そのピンマーク領域３１周辺の樹脂本体領域３２の一部Ｑもマスクされる。このことから、そのマスクされた樹脂本体領域Ｑに、ボイドＢのような欠陥が存在した場合には、検出されない。
【００６９】
上記の固定的に用いられるマスクＭ１に代えて、図９に示されるように、ピンマークの位置に応じたマスクＭ２が用いられることができる。実際のピンマーク位置が正確に反映されたマスクＭ２によれば、ピンマーク領域３１周辺の樹脂本体領域３２の欠陥が検出されることができる。
【００７０】
上記マスクＭ２は、次のように作製される。前述されたように、ピンマークが位置すると予測される領域にピンマーク検出ウィンドウ（図示されず）が設定され、そのウィンドウ内で予め登録されているピンマークモデル画像データを用いてパターンマッチングが行われる。そのパターンマッチングにより、実際の測定対象物におけるピンマークの位置が精密に検出される。その位置が検出されたピンマークの外縁部Ｇに対して予め設定された所定値だけ拡径されたマスクＭ２が作製される。所定値だけ拡径されたマスクＭ２が用いられるのは、ピンマークの外縁部（樹脂本体領域３２に対し段の部分）Ｇが、樹脂本体領域３２の検査領域に含まれないようにするためである。このとき、マスクＭ２によりマスクされる領域が実際のピンマーク領域３１よりも過度に大きいと、ピンマーク領域３１周辺の樹脂本体領域３２の欠陥が検出されなくなるのは前述の通りである。
【００７１】
次いで、ピンマーク領域３１が検査されるケースについて説明される。
このケースでは、前述のように、樹脂本体領域３２がマスクされる。このとき用いられるマスクは、ピンマーク位置のばらつきがあっても、ピンマーク領域３１が確実に露出されるように、図８に示されるように、ピンマークの直径（外縁部）Ｇよりも、設定されたマージン分だけ大きな開口部（符号Ｍ１に相当する領域）が形成されたマスクＭ３が用いられることができる。
【００７２】
あるいは、上記の固定的に用いられるマスクＭ３に代えて、ピンマークの位置に応じた開口部を有するマスクが用いられることができる。図９に示されるように、パターンマッチングの結果として、その位置が正確に検出されたピンマークの外縁部Ｇに対して、予め設定された設定値だけ縮径された開口部Ｃ１を有するマスクＭ４が作製される。設定値だけ縮径された開口部Ｃ１を形成するのは、ピンマークの外縁部（段部）Ｇが、ピンマーク領域３１の検査領域（ピンマーク検査領域）に含まれないようにするためである。
【００７３】
ピンマーク領域３１が検査される場合について、更に説明される。
まず、前述されたパターンマッチングにより、ピンマークが精密に検出される。次いで、その検出されたピンマークの境界線（段部）Ｇが含まれないように、そのピンマークに対して僅かに縮径された範囲が上記ピンマーク検査領域とされる。
【００７４】
図２に示されるように、ＩＣパッケージ全体（データ加工範囲ウィンドウ４内）の撮像画像１の全ドットが対象とされたヒストグラム波形が作製される。そのヒストグラム波形（図２）の中から、その輝度およびドット数ｎ（山）に基づいて、ピンマーク検査領域を示す部分（波形）が抽出される。
あるいは、ピンマーク検査領域にデータ加工ウィンドウ（図示されず）を発生させ、そのウィンドウ内の撮像画像１の全ドットが対象とされたヒストグラム波形が作製される。
図１０は、図２の波形の中から抽出されたピンマーク検査領域を示す波形部分を示している。あるいは、図１０は、ピンマーク検査領域に発生されたウィンドウ内が対象とされたヒストグラム波形を示すと考えることができる（以下、同じ）。
【００７５】
ピンマーク検査領域が２値化されるときのスレッショルドレベルは、予め設定されている固定値（標準値）が用いられる。あるいは、撮像条件が加味されて、上記式（７）により修正されたスレッショルドレベルが用いられることができる。
ピンマーク検査領域のように検査対象領域が小さい場合には、前述のように、欠陥部分の検査対象領域に対する面積割合が相対的に高くなることから、そのピンマーク検査領域のヒストグラム波形（図１０）に示された値に着目してスレッショルドレベルが選定されると、所望の２値化・良否判定が妨げられるからである。
【００７６】
ピンマーク検査領域の検査に際しては、上記固定値（または式（７）による修正がされたもの）のスレッショルドレベルが２つ用意される。ピンマーク検査領域は、上記２つのスレッショルドレベルのそれぞれに基づいて、合計２回の２値化処理が行われる。
【００７７】
そのうちの１回で用いられるスレッショルドレベル（以下、第１スレッショルドレベルとされる）は、図１０に示されるように、正常な（欠陥の無い）ピンマーク検査領域に対応する輝度よりも、低い輝度値ｘＬである。
残りの１回で用いられるスレッショルドレベル（以下、第２スレッショルドレベルとされる）は、正常な（欠陥の無い）ピンマーク検査領域に対応する輝度よりも、高い輝度値ｘＨである。
【００７８】
ピンマーク検査領域が第１スレッショルドレベルｘＬに基づいて２値化されたとき、黒色に表示される部分が、ピンマーク検査領域内のボイドである。図１０では、第１スレッショルドレベルｘＬよりも低い輝度値を有するもの（ドット数の塊）Ｐｂがボイドを示している。
【００７９】
ピンマーク検査領域が第２スレッショルドレベルｘＨに基づいて２値化されたとき、白色に表示される部分が、ピンマーク検査領域内の白いゴミ等の異物、ピンマーク領域内の形状不良、ボイドのエッジ等である。図１０では、第２スレッショルドレベルｘＨよりも高い輝度値を有するもの（ドット数の塊）Ｐｃが、上記の白いゴミ等の異物、ピンマーク領域内の形状不良、ボイドのエッジ等である。
【００８０】
成形品（ＩＣパッケージ８）が金型から押し出しピンによって押し出されるときに、その押し出しピンの先端部にキズ、欠け等の不良があると、その不良によってピンマーク内に凹凸ができる。その凹凸に照明が当たると乱反射し、第２スレッショルドレベルｘＨよりも高い輝度値を有する。ピンマーク検査領域内の形状不良、ボイドのエッジ等は、押し出しピンの先端部の不良によって形成されることがある。
【００８１】
樹脂本体領域３２と異なり、ピンマーク領域３１に捺印は無いから、ピンマーク検査領域において、ある程度以上高い輝度値を有するものは必ず欠陥であると認定されることができる。
【００８２】
図１１（ａ）、（ｂ）に示されるように、樹脂本体領域３２には、捺印４１が有るため、捺印４１が含まれた樹脂本体領域３２において、ある程度以上高い輝度値を有するものは必ずしも欠陥であるとは認定されることができない。捺印４１の領域が除かれた樹脂本体領域３２を対象として初めて、ある程度以上高い輝度値を有するものが欠陥であるとは認定されることができる。
【００８３】
なお、前述されたように、データ加工範囲ウィンドウ４（ＩＣパッケージ全体）内の撮像画面１についてヒストグラム波形が作製されるとき、そのヒストグラム波形の作製は、ピンマーク領域３１がマスクされた状態で行われる。そうでないと、同じく輝度の低いものとして、ピンマーク領域３１と、樹脂本体領域３２内のボイドが識別されないからである。
【００８４】
次に、捺印が検査される場合について説明される。
【００８５】
捺印４１の検査に際しては、２値化された結果として、ＩＣパッケージ８の全体領域の中から捺印４１が識別される必要がある。捺印４１が識別されるように２値化されるためのスレッショルドレベルは、以下の（ａ）〜（ｃ）の各方法により決定される。
【００８６】
（ａ）  ＩＣパッケージ全体についてのヒストグラム波形（図２）が用いられることができる。上記式（３）における乗算値および／またはオフセット値として、予め、捺印検査用の値が用意されている。その値が代入された式（３）により、捺印検査用のスレッショルドレベルｔｈｒが算出される。その捺印検査用のスレッショルドレベルｔｈｒに基づいて、データ加工範囲ウィンドウ４（ＩＣパッケージ全体）内の撮像画面１が２値化される。捺印４１は、その２値化処理後に、そのｔｈｒよりも輝度が高いものとして検出される。
本実施形態によれば、一旦、データ加工範囲ウィンドウ４（ＩＣパッケージ８）についてのヒストグラム（図２）が作製されると、上記のように乗算値および／またはオフセット値を変えるだけで、そのヒストグラムが複数の検査項目に使用可能であるため、処理速度が速い。
【００８７】
（ｂ）  図１１（ｂ）に示されるように、捺印４１があると予想される捺印検査領域５１にデータ加工ウィンドウ（図示されず）を発生させ、そのウィンドウ内を対象とするヒストグラム波形（図示されず）が作製されることができる。ウィンドウを発生させる方法は、上記と同様である。この場合にも、上記式（３）により、スレッショルドレベルｔｈｒが算出される。そのときに上記式（３）にｎ’ａとして代入される値は、捺印検査領域５１を対象とするヒストグラムにおける、平滑化されたピーク値（ＩＣパッケージ８の上面１０の輝度に相当する）である。また、上記式（３）に乗算値および／またはオフセット値として代入される値は、捺印検査用に予め用意される値である。
捺印検査領域５１を対象とするヒストグラムからは、ＩＣパッケージ８の上面１０の輝度に相当する上記ｎ’ａよりも輝度の高い山（捺印４１のドット数を示す）が明確に検出されることができる。捺印検査領域５１を対象とするヒストグラムには、捺印検査領域５１以外の領域に存在する高い輝度のもの（白いゴミ欠陥やリードなど）が表われないからである。
【００８８】
（ｃ）  ＩＣパッケージ全体についてのヒストグラム波形（図２）に基づいて、ＩＣパッケージの全体領域の中から捺印４１が抽出されることができる。以下、その抽出方法に関して、複数の方法が説明される。
【００８９】
図１２は、図２と同じように、データ加工範囲ウィンドウ４内の撮像画像１の全ドットを対象としたヒストグラム波形を示している。ここで、図１２は、樹脂部に捺印がある場合のヒストグラムを示している。図１２において、その樹脂領域に相当するピーク値の明るいほうの次のピークは、その捺印領域に相当するものである。なお、データ加工範囲ウィンドウ４内の全ドットを対象としたヒストグラムの場合は、その捺印領域に相当するピークのさらに明るいほうの外側に、リード領域のピークが存在することになるが、そのリード領域のピークは図１２では図示されていない。
（ｃ−１）まず、第１の抽出方法が説明される。
まず、式（１）ないし（２）により平滑化されたピーク値ｎ’ａが求められる。図１２に示されるように、そのｎ’ａを始点として高輝度方向に、ヒストグラム波形が走査される。その走査の結果として、そのｎ’ａの山Ｐｐの次の山Ｐｎのピーク値ｎｎが求められる。次式（８）により捺印検査用のスレッショルドレベルｔｈｒが求められる。
ｔｈｒ＝（ｎ’ａ＋ｎｎ）／２に対応する輝度．    ……式（８）
【００９０】
上記式（８）に代えて以下の式（９）が用いられることができる。
ｔｈｒ＝（ｎ’ａ＋ｎｎ）／２に対応する輝度×乗算値＋オフセット値．    ……式（９）
上記式（９）における乗算値および／またはオフセット値は、以下の目的で用いられる。乗算値および／またはオフセット値が用いられることで、式（８）により求められたｔｈｒよりも低い値が算出されるようにして、２値化後に捺印４１が鮮明に写るようにする。または、式（８）により求められたｔｈｒよりも高い値が算出されるようにして、２値化後にノイズが写らないようにする。
【００９１】
（ｃ−２）次に、第２の抽出方法が説明される。
第１の抽出方法と同じく、まず、式（１）ないし（２）により平滑化されたピーク値ｎ’ａが求められ、そのｎ’ａを始点として高輝度方向に、ヒストグラム波形が走査される。その走査の結果として、そのｎ’ａの山Ｐｐの谷部分Ｐｓの次の山Ｐｎのピーク値ｎｎが求められる。この第２の抽出方法により求められたｎｎは、上記式（８）または（９）に代入される。
【００９２】
（ｃ−３）次に、第３の抽出方法が説明される。
モノクロデータであるＩＣパッケージ８の全体領域（データ加工範囲ウィンドウ４内の撮像画像１）を示す２５６階調において、予め、捺印４１の輝度が設定されている。その設定された輝度の範囲Ｅ（図１２参照）が捺印検査範囲とされる。その捺印検査範囲Ｅにおけるヒストグラム波形のピークとして、上記のｎｎが求められる。この第３の抽出方法により求められたｎｎは、上記式（８）または（９）に代入される。
【００９３】
（ｃ−４）次に、第４の抽出方法が説明される。
捺印検査範囲Ｅは次のように求められる。まず、式（１０）により捺印検査範囲Ｅの下限値Ｅｓが求められる。
Ｅｓ＝ｎ’ａに対応する輝度×設定乗算値＋設定オフセット値．    ……式（１０）
上記式（１０）により求められたＥｓより高い輝度の範囲（上限無し）が捺印検査範囲Ｅとされる。その捺印検査範囲Ｅにおけるヒストグラム波形のピークとして、上記のｎｎが求められる。この第４の抽出方法により求められたｎｎは、上記式（８）または（９）に代入される。
【００９４】
上記の（ａ）から（ｃ−４）のいずれの方法により、捺印検査用のスレッショルドレベルｔｈｒが求められ、そのｔｈｒに基づいて２値化される。これにより、撮像画像１内で捺印４１が抽出され、捺印４１の検査が行われる。
【００９５】
捺印検査では、上記（ｂ）のように、その捺印検査領域５１にウィンドウを発生させ、そのウィンドウ内のヒストグラム波形が作製されることができる。ピンマーク検査領域についても、同様に、専用のウィンドウを発生させ、そのウィンドウ内のヒストグラム波形が作製されることができる。但し、図７（ａ）に示されるように、ピンマーク領域３１の表面状態（粗度など）は、樹脂領域本体３２と異なり、その輝度にも明確な差があるため、ＩＣパッケージ全体についてのヒストグラム波形（図２）の中からでも、ピンマーク領域３１のみに相当する波形部分が容易に抽出されることが可能である。一方、捺印検査領域５１は、樹脂領域本体３２の一部に設けられ表面状態等にも差がないことから、ＩＣパッケージ全体についてのヒストグラム波形（図２）の中で、他の樹脂領域本体３２に対して、捺印検査領域５１が区別されることが難しい。上記の点からすると、捺印検査領域５１は、専用のヒストグラム波形が作製されるメリットが比較的大きいのに対し、ピンマーク領域は、そのメリットが比較的小さいといえる。
【００９６】
次に、図１３から図１６を参照して、第２の実施形態の外観検査装置について説明される。第２の実施形態は、第１の実施形態の外観検査方法を実現する外観検査装置である。
【００９７】
図１３に示されるように、画像処理ライブラリ６１には、基本的な画像処理項目が複数格納されている。それらの画像処理項目には、２値化処理６２、最大化処理６３、最小化処理６４、面積計測処理６５、ラベリング６６などが含まれる。上記２値化処理６２としては、第１の実施形態の内容が含まれる。
【００９８】
ここで、画像処理ライブラリ６１に格納される、最大化処理６３、最小化処理６４について説明される。最大化処理６３、最小化処理６４は、膨張処理、収縮処理とも称される。これらの処理は、画像データのノイズ（孤立点）が除去されるために行われる。
【００９９】
図１４に示されるように、初めに明るさ「１」の部分の周辺が１ドットずつ膨張させる。この膨張処理が設定された回数だけ繰り返し実行される。次いで、１ドットずつ周辺を収縮する。この収縮処理が設定された回数だけ繰り返し実行される。このように、膨張収縮処理により明るさ「１」を示す汚れ部分の中（周辺）に、細かい明るさ「０」の点が含まれているとき、その明るさ「０」の点が明るさ「１」に変換されることができる。
【０１００】
逆に、図１５に示されるように、明るさ「１」になっている部分の周辺を１ドットずつ収縮させる。この収縮処理が設定回数だけ繰り返し実行される。次に、１ドットずつ周辺を膨張させる。この膨張処理が設定回数だけ繰り返し実行される。このように、収縮膨張処理により良品部分の明るさ「０」に細かい明るさ「１」の点が含まれているとき、その明るさ「１」の点が明るさ「０」に変換されることができる。
【０１０１】
上記のように、膨張収縮処理および収縮膨張処理により、明るさ「１」「０」の領域に関しての孤立点が除去される。これらの処理による孤立点の除去は実験的に確認されている。
【０１０２】
ユーザは、上記画像処理ライブラリ６１を参照して、検査項目データを生成する。検査項目データには、ボイドの検出用データ７２、捺印検査用データ７３、モールド欠けの検出用データ７４、ＩＣパッケージの方向相違検出用データ７５、リードの曲がり検出用データ７６などが含まれる。ユーザは、各検査項目データ７２〜７６を生成するに際して、画像処理ライブラリ６１に格納された各画像処理項目６２〜６６を任意に選択し、その選択された各画像処理項目が実行される順番を任意に設定することができる。ユーザは、各検査項目データ７２〜７６に、パラメータを含めることができる。例えば、ユーザは、各検査項目（ボイドの検出、捺印の検査など）毎の上記式（３）の乗算値および／またはオフセット値や、上記式（７）のｔｈｒｄやｘｄや、捺印の有無の判断基準となるドット数などを検査項目データに含めることができる。検査項目データ７２〜７６には、それぞれ、上記ボイドの検出、捺印検査、モールド欠けの検出、ＩＣパッケージの方向相違検出、リードの曲がり検出などの各検査項目の名前が登録される。
【０１０３】
検査項目データ７２〜７６は、検査ライブラリ７１に格納される。ユーザは、検査ライブラリ７１を参照して、品種毎検査データ８１を生成する。図１６に示されるように、品種毎検査データ８１は、検査対象製品（型番号）毎に、例えば「ＱＦＰ１００」用データ８２、「ＱＦＰ８０」用データ８３、「ＱＦＰ６４」用データ８４として生成される。検査対象製品「ＱＦＰ１００」と、「ＱＦＰ８０」と、「ＱＦＰ６４」とは、互いに検査領域や検査項目が異なっている。このことから、ユーザは、各品種毎検査データ８２〜８４を生成するに際して、検査ライブラリ７１に格納された各検査項目データ７２〜７６を任意に選択し、その選択された各検査項目データが実行される順番を任意に設定することができる。
【０１０４】
ユーザは、各品種毎検査データ８２〜８４を生成するに際して、画像処理ライブラリ６１を参照して、各画像処理項目６２〜６６を組み合わせて各品種毎検査データ８２〜８４を生成するのではなく、検査ライブラリ７１を参照して、各検査項目データ７２〜７６を組み合わせて各品種毎検査データ８２〜８４を生成する。したがって、ユーザは、容易に各品種毎検査データ８２〜８４を生成することができる。
【０１０５】
本実施形態では、画像処理ライブラリ６１として予め登録されている、画像処理の各種アルゴリズム６２〜６６を、ユーザが任意の順番で組み合わせて複合させてなる画像処理アルゴリズム７２〜７６（検査ライブラリ７１）が作製される。その複合された画像処理アルゴリズム７２〜７６は、そのユーザにより任意の名前が付けられて検査ライブラリ７１に登録される。
【０１０６】
ユーザは、品種毎の検査データ８１内で、上記のように独自に作製された画像処理アルゴリズム７２〜７６を、その登録時の上記名前で指定する。これにより、異なる品種の検査データ８２〜８４の作製時にも、その画像処理アルゴリズム７２〜７６は共通に使用される。さらに、その画像処理アルゴリズム７２〜７６は、品種毎の検査データ８２〜８４内で個別に変更される。
【０１０７】
品種毎の検査データ８２〜８４には、画像処理アルゴリズム７２〜７６と検査領域と判定値が設定される。自動検査時は、予め設定された検査データ７２〜７６に従って、指定された上記検査領域において画像処理が行われ、最終的に計測された値と上記判定値が比較されることで、良否判定が行われる。
その検査結果は、ユーザが任意に作製した検査項目毎に、任意のアドレスに出力される。
【０１０８】
以上では、標準値が用いられる場合を除いて、ヒストグラム波形に基づいて、スレッショルドレベルが求められ、そのスレッショルドレベルに基づく２値化により、欠陥が検出されるケースについて説明された。第１および第２の実施形態は、ヒストグラムを用いた上記方法に限らず、投影法（特開平７−１２８２４９号、特開平７−２２９８４２号、特開平８−１４８４５号）において用いられるスレッショルドレベルの算出にも適用することができる。
【０１０９】
【発明の効果】
本発明の外観検査方法によれば、より検査処理速度が速い。
他の本発明の外観検査装置によれば、ユーザが任意の順番で画像処理アルゴリズムを作成し得る。
【図面の簡単な説明】
【図１】図１は、本発明の外観検査方法の一実施形態を示し、図１（ａ）はＩＣパッケージの撮像画面を示す平面図であり、図１（ｂ）はパッケージ角検出ウィンドウを示す図であり、図１（ｃ）は、データ加工範囲ウィンドウを示す図である。
【図２】図２は、撮像画面の輝度分布状態を示す輝度・ドット数特性図である。
【図３】図３は、スレッショルドレベルに基づいて、データ加工範囲の撮像画面が２値化された画面を示している。
【図４】図４は、図２のヒストグラムからピーク値を求めるときの問題点を説明するための図である。
【図５】図５は、図２のヒストグラムから平均明るさを求めるときの問題点を説明するための図である。
【図６】図６は、撮像条件が異なるときのヒストグラム波形を示す図である。
【図７】図７（ａ）は、ＩＣパッケージを示す側面図であり、図７（ｂ）はＩＣパッケージの上面を示す平面図である。
【図８】図８は、固定的に用いられるマスクを示す図である。
【図９】図９は、ピンマークの位置に応じたマスクを示す図である。
【図１０】図１０は、ピンマーク検査領域のヒストグラム波形を示す図である。
【図１１】ＩＣパッケージの捺印を示す平面図であり、図１１（ａ）は、ＩＣパッケージ全体についてのデータ加工範囲ウィンドウを示す図であり、図１１（ｂ）は、捺印検査領域についてのデータ加工範囲ウィンドウを示す図である。
【図１２】図１２は、ＩＣパッケージ全体についてのヒストグラム波形を示し、ＩＣパッケージの全体領域の中から捺印が抽出される方法を説明する図である。
【図１３】本発明の外観検査装置の第２実施形態の画像処理ライブラリと検査ライブラリを示す図である。
【図１４】膨張収縮処理を説明する図である。
【図１５】収縮膨張処理を説明する図である。
【図１６】品種毎検査データを示す図である。
【符号の説明】
１  撮像画像
８  ＩＣパッケージ
３１  ピンマーク領域
３２  樹脂本体領域
４１  捺印
５１  捺印検査領域
６１  画像処理ライブラリ
６２  ２値化処理（画像処理項目）
７２  ボイドの検出用データ（検査項目データ）
７３  捺印検査用データ（検査項目データ）
７４  モールド欠けの検出用データ（検査項目データ）
７５  ＩＣパッケージの方向相違検出用データ（検査項目データ）
７６  リードの曲がり検出用データ（検査項目データ）
８１  品種毎検査データ
Ｅ  捺印検査範囲
ｎａ  実測最大数
ｎ’ａ  設定最大数
ｎａ＋１  第１の数
ｎａ−１  第２の数
ｎｎ  設定最大数を含む山の次の山のピーク値
Ｐｐ  設定最大数を含む山
Ｐｎ  設定最大数を含む山の次の山（設定最大数を含む山の谷部分の次の山）
Ｐｓ  設定最大数を含む山の谷部分
ｔｈｒ  スレッショルドレベル
ｘａ１  減算値に対応する明るさ
ｘａ２  減算値に対応する明るさ
ｙ  減算値
【図１】
0004743805.tif 000002
【図２】
0004743805.tif 000003
【図３】
0004743805.tif 000004
【図４】
0004743805.tif 000005
【図５】
0004743805.tif 000006
【図６】
0004743805.tif 000007
【図７】
0004743805.tif 000008
【図８】
0004743805.tif 000009
【図９】
0004743805.tif 000010
【図１０】
0004743805.tif 000011
【図１１】
0004743805.tif 000012
【図１２】
0004743805.tif 000013
【図１３】
0004743805.tif 000014
【図１４】
0004743805.tif 000015
【図１５】
0004743805.tif 000016
【図１６】
0004743805.tif 000017