(57)【特許請求の範囲】
【請求項１】
線形クラスタリングに基づくマルチタイプのＢＧＡチップの視覚識別方法であって、具体的には以下のステップで行われる：
ステップ１は、カメラヘッドにより収集されたグレースケールのＢＧＡチップの画像、即ち元画像を動的閾値で分割して二値ハンダボール画像を取得し、二値ハンダボール画像に対してモフォロジー処理のオープニング演算及びクロージング演算を行い、処理後の二値ハンダボール画像における連結領域ごとに一つの二値化ＢＧＡハンダボールとして記録し、各二値化ＢＧＡハンダボールに対して連結領域のラベリングを行う；
ステップ２は、ステップ１によって連結領域のラベリングが行われて取得された各二値化ＢＧＡハンダボールの元画像において対応する近傍範囲に対して、グレースケールの連結領域の抽出を行って、完全グレースケールのＢＧＡハンダボールを取得すると共に、完全グレースケールのＢＧＡハンダボールの情報リストを作成する；
作成された完全グレースケールのＢＧＡハンダボールの情報リストの内容は、完全グレースケールのＢＧＡハンダボールのそれぞれに含まれたグレースケール画素、グレースケール画素により計算された完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置座標、完全グレースケールのＢＧＡハンダボールのそれぞれに対応する最小外接円の直径、並びに、完全グレースケールのＢＧＡハンダボールのそれぞれの周長及び円形度であり、各ハンダボールのグレースケール画素は画素座標とグレースケール値とを含む；
ステップ３は、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、画素のグレースケール値がいずれも０であり、大きさが元画像と同じ背景画像を作成し、背景画像において、元画像における完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置に対応するグレースケール値を、対応する二値化ＢＧＡハンダボールの識別番号に変更し、その時の背景画像をＢＧＡハンダボール識別画像として記録し、ＢＧＡハンダボール識別画像における非０のグレースケール値の画素のそれぞれを一つの等価ＢＧＡハンダボールとし、全ての等価ＢＧＡハンダボールのアレイを等価ＢＧＡアレイとする；
元画像における完全グレースケールのＢＧＡハンダボールがＭ＊Ｎ個あれば、対応する背景画像の中にＭ＊Ｎ個の等価ＢＧＡハンダボールがあり、等価ＢＧＡハンダボールは実質的に一つの画素であり、完全グレースケールのＢＧＡハンダボールは等価ＢＧＡハンダボールと一対一に対応し、ＢＧＡハンダボール識別画像において、隣接する二つの等価ＢＧＡハンダボールの間隔がΔγと計算されると、この間隔を等価ＢＧＡハンダボールの間隔典型値とする；
ステップ４は、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγを用いて、ＢＧＡハンダボールの識別画像において等価ＢＧＡアレイに局部的な分析を行い、等価ＢＧＡアレイの粗偏向角度Δθを確定する；
局部的な分析は規則的なＢＧＡチップに対する局部的な分析と不規則的なＢＧＡチップに対する局部的な分析とに分けられ、規則的なＢＧＡチップは隣接する行のＢＧＡハンダボールが整列されたＢＧＡチップであり、不規則的なＢＧＡチップは隣接する行のＢＧＡハンダボールが千鳥配列されたＢＧＡチップである；
ステップ５は、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγ及びステップ４によって取得された等価ＢＧＡアレイの粗偏向角度Δθを用いて、ＢＧＡハンダボールの識別画像において、行と列の等価ＢＧＡハンダボールに対する線形クラスタリングを行い、各行の等価ＢＧＡハンダボールクラスタ、各列の等価ＢＧＡハンダボールクラスタ及び境界の等価ＢＧＡハンダボールクラスタを取得する；
ステップ６は、ステップ５によって取得された境界の等価ＢＧＡハンダボールクラスタにおける各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像におけるグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストにおいて対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索して、完全グレースケールのＢＧＡハンダボールの中心位置座標によって境界の直線当て嵌めを行い、境界の直線当て嵌めを通じて、元画像におけるＢＧＡチップの偏向角度及び中心位置を求める；
ステップ７は、ステップ５によって取得された各行と各列の等価ＢＧＡハンダボールクラスタ、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、各行の等価ＢＧＡハンダボールクラスタの直線当て嵌めと各列の等価ＢＧＡハンダボールクラスタの直線当て嵌めとを行うことであって、全ての隣接する行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線の間隔の平均値をＢＧＡチップハンダボールの標準行間隔とし、全ての隣接する列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線の間隔の平均値をＢＧＡチップハンダボールの標準列間隔とする；
ステップ８は、ステップ７によって取得された各行と各列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線を用いて、ＢＧＡハンダボールの識別画像において等価ＢＧＡハンダボールに対する行ごとに或いは列ごとに検索を行って、ＢＧＡハンダボールの分布マトリックスを取得し、行ごとに或いは列ごとに検索することで取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストにより、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長及びＢＧＡハンダボールの標準円形度を求める；
ことを特徴とするＢＧＡチップの視覚識別方法。
【請求項２】
ステップ２によって作成された完全グレースケールのＢＧＡハンダボールの情報リストのデータは、以下の（１）から（３）の事項を含む：
（１）完全グレースケールのＢＧＡハンダボールのそれぞれに含まれるグレースケール画素については、次式に示すように、各二値化ＢＧＡハンダボールの元画像において対応する近傍範囲に対してグレースケールの連結領域の抽出を行う：
【数１】
0006598162.tif 000043
式中、（ｘｐ，ｙｐ）は元画像における判断対象とする画素の横座標値と縦座標値であり、Rは完全グレースケールのＢＧＡハンダボールの画素の集合であり、mean[R]は完全グレースケールのＢＧＡハンダボールにおける全ての画素の平均グレースケール値を表し、（ｘａｄｊ，ｙａｄｊ）は（ｘｐ，ｙｐ）の８近傍であってRに属する画素の座標値を表し、
【数２】
0006598162.tif 000044
とΔとは予め設定された定数であり、ｆ（ｘｐ，ｙｐ）は元画像の点（ｘｐ，ｙｐ）におけるグレースケール値である；
（２）完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置座標については、次式に示すように、第ｉ番目の完全グレースケールのＢＧＡハンダボールの中心位置座標
【数３】
0006598162.tif 000045
を算出する：
【数４】
0006598162.tif 000046
式中、（ｘｋ，ｙｋ）は第ｉ番目の完全グレースケールのＢＧＡハンダボールに含まれる第ｋ番目のグレーズケール画素座標であり、Ｎｉは第ｉ番目の完全グレースケールのＢＧＡハンダボールに含まれるグレーズケール画素の数であり、ｉとｋは正の整数である；
（３）完全グレースケールのＢＧＡハンダボールのそれぞれの円形度のパラメータについては、第ｉ番目の完全グレースケールのＢＧＡハンダボールの面積Ｓｉは完全グレースケールのＢＧＡハンダボールに含まれる画素の数Ｎｉであって、第ｉ番目の完全グレースケールのＢＧＡハンダボールの円形度Ｃｉは、次式を用いて表される：
【数５】
0006598162.tif 000047
式中、Ｌｉは第ｉ番目の完全グレースケールのＢＧＡハンダボールの周長であり、即ち完全グレースケールのＢＧＡハンダボールの周辺画素の数であることを特徴とする請求項１に記載のＢＧＡチップの視覚識別方法。
【請求項３】
ステップ４における規則的なＢＧＡチップに対する局部的な分析のプロセスは、以下のステップ４１からステップ４３までのステップを含む：
ステップ４１は、ＢＧＡハンダボールの識別画像において、等価ＢＧＡハンダボールを何れか一つ選ぶ；
ステップ４２は、ステップ４１によって選ばれた等価ＢＧＡハンダボールを中心とし半径が３Δγの範囲内で、［−４５°，４５°）、［４５°，１３５°）、［１３５°，２２５°）及び［−１３５°，−４５°）の四つの方向範囲内において、ステップ４１によって選ばれた等価ＢＧＡハンダボールと直近の等価ＢＧＡハンダボールをそれぞれ検索し、四つの方向における直近の等価ＢＧＡハンダボールが何れも存在しない場合、ステップ４１を再実行する；
ステップ４３は、各方向において検索された直近隣接の等価ＢＧＡハンダボールに対して、次式を用いて、それぞれの第ｊ番目の方向に対応する等価ＢＧＡアレイの粗偏向角度Δθｊを求める；
【数６】
0006598162.tif 000048
式中、（ｘｃｅｎｔｅｒ，ｙｃｅｎｔｅｒ）は中心の等価ＢＧＡハンダボールの座標であり、
【数７】
0006598162.tif 000049
は第ｊ番目の方向に対応する直近の等価ＢＧＡハンダボールの座標であり、±90°及び正負符号は四つの方向の状況によって選択或いは切り捨てられ、ｊ＝１は［−４５°，４５°）の範囲を表し、ｊ＝２は［４５°，１３５°）の範囲を表し、ｊ＝３は［１３５°，２２５°）の範囲を表し、ｊ＝４は［１３５°，−４５°）の範囲を表しており、
全てのΔθｊの平均値を最終の等価ＢＧＡアレイの粗偏向角度Δθとし、画像座標系においてΔθは時計回りの方向を正とすることを特徴とする請求項２に記載のＢＧＡチップの視覚識別方法。
【請求項４】
ステップ４における不規則的なＢＧＡチップに対する局部的な分析のプロセスは、以下のステップ４４からステップ４６までのステップを含む：
ステップ４４は、ＢＧＡハンダボールの識別画像において、等価ＢＧＡハンダボールを何れか一つ選ぶ；
ステップ４５は、ステップ４４によって選ばれた等価ＢＧＡハンダボールを中心とし半径が３Δγの範囲内で、［０°，９０°）、［９０°，１８０°）、［１８０°，２７０°）及び［−９０°，０°）の四つの方向範囲内において、中心の等価ＢＧＡハンダボールと直近の等価ＢＧＡハンダボールをそれぞれ検索し、四つの方向における直近の等価ＢＧＡハンダボールが何れも存在しない場合、ステップ４４を再実行する；
ステップ４６は、各方向において検索された直近隣接の等価ＢＧＡハンダボールに対して、次式を用いて、それぞれの第ｊ番目の方向に対応する等価ＢＧＡアレイの粗偏向角度Δθｊを求める、
【数８】
0006598162.tif 000050
式中、（ｘｃｅｎｔｅｒ，ｙｃｅｎｔｅｒ）は中心の等価ＢＧＡハンダボールの座標であり、
【数９】
0006598162.tif 000051
は第ｊ番目の方向に対応する直近の等価ＢＧＡハンダボールの座標であり、±９０°及び正負符号は四つの方向の状況によって選択或いは切り捨てられ、ｊ＝１は［０°，９０°）の範囲を表し、ｊ＝２は［９０°，１８０°）の範囲を表し、ｊ＝３は［１８０°，２７０°）の範囲を表し、ｊ＝４は［−９０°，０°）の範囲を表しており、
全てのΔθｊの平均値を最終の等価ＢＧＡアレイの粗偏向角度Δθとし、画像座標系においてΔθは時計回りの方向を正とすることを特徴とする請求項３に記載のＢＧＡチップの視覚識別方法。
【請求項５】
ステップ５において、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγ及びステップ４によって取得された等価ＢＧＡアレイの粗偏向角度Δθを用いて、ＢＧＡハンダボール識別画像において行と列の等価ＢＧＡハンダボールに対する線形クラスタリングを行い、各行の等価ＢＧＡハンダボールクラスタ、各列の等価ＢＧＡハンダボールクラスタ及び境界の等価ＢＧＡハンダボールクラスタを取得するプロセスは、以下のステップ５１からステップ５９までのステップを含む：
ステップ５１は、等価ＢＧＡアレイの粗偏向角度Δθにより、等価ＢＧＡハンダボールの行直線の方程式を
【数１０】
0006598162.tif 000052
、等価ＢＧＡハンダボールの列直線の方程式を
【数１１】
0006598162.tif 000053
に決定する；
式中、（ｘｃｅｎｔｅｒ，ｙｃｅｎｔｅｒ）は完全グレースケールのＢＧＡハンダボールの中心位置座標であり、ｂｒｏｗは行直線の画像座標系におけるｙ軸との切片であり、ｂｃｏｌは列直線の画像座標系におけるｘ軸との切片である；
ステップ５２は、等価ＢＧＡハンダボールの行と列の分類閾値を
【数１２】
0006598162.tif 000054
に決定する；
ステップ５３は、等価ＢＧＡハンダボールに対する行クラスタリングを行うことであって、第ｉ番目の等価ＢＧＡハンダボールの座標
【数１３】
0006598162.tif 000055
を用いて、対応する等価ＢＧＡハンダボールの行直線の方程式から、次式のように切片を求める：
【数１４】
0006598162.tif 000056
；
ステップ５４は、分類閾値intercept_threshを基にして、取得された全ての行切片
【数１５】
0006598162.tif 000057
のクラスタリングを行うことであって、即ち分類閾値intercept_threshの範囲内で、同じ行切片
【数１６】
0006598162.tif 000058
を一つの類に併合し、その一つの類の行切片
【数１７】
0006598162.tif 000059
に対応する等価ＢＧＡハンダボールを一つの行等価ＢＧＡハンダボールクラスタに併合すると共に、等価ＢＧＡハンダボールクラスタを同一の行にする；
ステップ５５は、ステップ５４によってクラスタリングされた後、クラスタ内の要素数が１である行等価ＢＧＡハンダボールクラスタを干渉要素とみなして取り除くと、取得された行等価ＢＧＡハンダボールクラスタの数はＢＧＡチップハンダボールの行数となり、
クラスタ内において対応する平均行切片の昇順によって、全ての行等価ＢＧＡハンダボールクラスタに対する順序付けを行い、その順序付けされた行等価ＢＧＡハンダボールクラスタを等価ＢＧＡアレイの行番号が若番から老番までの順に配列する；
ステップ５６は、等価ＢＧＡハンダボールに対する列クラスタリングを行うことであって、第i番目の等価ＢＧＡハンダボールの座標
【数１８】
0006598162.tif 000060
を用いて、対応する列直線の方程式の列切片
【数１９】
0006598162.tif 000061
を次式から求める：
【数２０】
0006598162.tif 000062
ステップ５７は、分類閾値intercept_threshを基にして、取得された全ての列切片
【数２１】
0006598162.tif 000063
のクラスタリングを行うことであって、即ち分類閾値intercept_threshの範囲内で、同じ列切片
【数２２】
0006598162.tif 000064
を一つの類に併合し、その一つの類の列切片
【数２３】
0006598162.tif 000065
に対応する等価ＢＧＡハンダボールを一つの列等価ＢＧＡハンダボールクラスタに併合すると共に、等価ＢＧＡハンダボールクラスタが同一の列になる；
ステップ５８は、ステップ５４によってクラスタリングされた後、クラスタ内の要素数が１である列等価ＢＧＡハンダボールクラスタを干渉要素とみなして取り除くと、取得された列等価ＢＧＡハンダボールクラスタの数はＢＧＡチップハンダボールの列数となり、
クラスタ内において対応する平均列切片の昇順によって、全ての列等価ＢＧＡハンダボールクラスタに対する順序付けを行い、その順序付けされた列等価ＢＧＡハンダボールクラスタを等価ＢＧＡアレイの列番号が若番から老番までの順に配列する；
ステップ５９、順序付けられた行等価ＢＧＡハンダボールクラスタの第１のグループ、順序付けられた行等価ＢＧＡハンダボールクラスタの最後のグループ、順序付けられた列等価ＢＧＡハンダボールクラスタの第１のグループ、及び、順序付けられた列等価ＢＧＡハンダボールクラスタの最後のグループを抽出して、境界の等価ＢＧＡハンダボールクラスタとすることを特徴とする請求項４に記載のＢＧＡチップの視覚識別方法。
【請求項６】
ステップ７において、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、各行の等価ＢＧＡハンダボールクラスタの直線当て嵌めを行うプロセスは、
各行の等価ＢＧＡハンダボールクラスタにおける各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像におけるグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストの中において対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索して、各行の完全グレースケールのＢＧＡハンダボールの中心位置座標の直線当て嵌めを行うことを特徴とする請求項５に記載のＢＧＡチップの視覚識別方法。
【請求項７】
ステップ７において、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、各列の等価ＢＧＡハンダボールクラスタの直線当て嵌めを行うプロセスは、
各列の等価ＢＧＡハンダボールクラスタにおける各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像におけるグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストの中において対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索して、各列の完全グレースケールのＢＧＡハンダボールの中心位置座標の直線当て嵌めを行うことを特徴とする請求項６に記載のＢＧＡチップの視覚識別方法。
【請求項８】
ステップ８において、ステップ７によって取得された各行等価ＢＧＡハンダボールクラスタに当て嵌めた直線と各列等価ＢＧＡハンダボールクラスタに当て嵌めた直線とを用いて、ＢＧＡハンダボール識別画像において等価ＢＧＡハンダボールに対する行ごとに或いは列ごとに検索を行って、ＢＧＡハンダボールの分布マトリックスを取得し、行ごとに或いは列ごとに検索することで取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストにより、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長及びＢＧＡハンダボールの標準円形度を求めるプロセスは、
各行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線と各列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線との交点を順に求め、この交点を中心としＢＧＡハンダボール識別画像において半径がΔγ/2の範囲内で局部的な検索を行い、ある等価ＢＧＡハンダボールが検索された場合にはＢＧＡ識別マトリックスに対応する行列位置の値を１に設定し、検索されなかった場合にはＢＧＡ識別マトリックスに対応する行列位置の値を０に設定する；
行ごとに或いは列ごとに検索することで取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストによって、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長及びＢＧＡハンダボールの標準円形度を求めるプロセスは、
完全グレースケールのＢＧＡハンダボールの情報リストにおいて、全ての検索された等価ＢＧＡハンダボールに対応する最小外接円の直径の平均値をＢＧＡハンダボールの標準直径にし、完全グレースケールのＢＧＡハンダボールの情報リストにおいて、全ての検索された等価ＢＧＡハンダボールに対応する周長の平均値をＢＧＡハンダボールの標準周長にし、完全グレースケールのＢＧＡハンダボールの情報リストにおいて、全ての検索された等価ＢＧＡハンダボールに対応する円形度の平均値をＢＧＡハンダボールの標準円形度にすることを特徴とする請求項７に記載のＢＧＡチップの視覚識別方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はマルチタイプのＢＧＡチップの視覚識別方法であり、特に線形クラスタリングに基づくマルチタイプのＢＧＡチップの視覚識別方法である。
【背景技術】
【０００２】
ＢＧＡ（Ball Grid Array，ハンダボールを格子状に並べたアレイ）パッケージ型のチップは集積度が高く、I/O導線が多く、及び誘電特性に優れているので集積回路に広くて適用されている。ＢＧＡチップの生産・製造の中では、ハンダボールが失いやすいこと、ハンダボールが大きすぎたり小さすぎたりすること、ハンダボールが変位することなどの欠陥がよく発生する。プリント回路基板への自動化実装（ＳＭＴ）分野では、ＢＧＡチップのＩ／Ｏハンダボールピンが高密度であったり、ハンダボールの配列構造がマルチタイプであるため、チップ識別、検査の精度及びスピードにとっては、更に厳格な水準が要求される。
【０００３】
現在よく用いられる自動光学検査（ＡＯＩ）システムは、実装生産中のチップ識別、検査及び位置決めを行う。チップ識別は実装の基礎で、標準ＢＧＡサンプルの測定を行うと、ＡＯＩシステムにそのタイプのチップの標準データベースを作成し、更に検査及び位置決めの工程に対して標準データを提供し参考にされる。具体的に言えば、ＡＯＩシステムには、上述の動作の手順としてトレーニング（offline training）及び検査（online inspection）の二つのステップがある。
【０００４】
トレーニング：標準ＢＧＡサンプルの識別を通してＢＧＡチップ標準データベースを作成する。ＢＧＡチップ標準データベースは、ハンダボールの分布マトリックス（特性評価ハンダボールの分布様式）、ハンダボール標準面積と円形度、ハンダボール標準行間隔及びハンダボール標準列間隔を含む。しかし、従来のＡＯＩシステムでは、チップ標準パラメータが多く人工による計測或いは手動による記録入力のため、操作量が多く、人手のコストが高く、自動化の程度が低い。
【０００５】
検査：収集された実装対象ＢＧＡチップに対しての画像を処理してデータを抽出し、それにＢＧＡチップ標準データベースを参考として、実装チップの欠陥検査及び高精度な位置決めを行う。ＢＧＡチップの欠陥は主に以下のいくつかの方面があり、ハンダボール抜け、ハンダボールの直径或いは円形度不合格、隣接するハンダボールとのブリッジなどの欠陥が含まれる。ＢＧＡチップハンダボールには、ピンが多く、ピッチが狭く、ハンダボールの配列が多様的であるなどの特徴があるため、検査及び位置決めのアルゴリズムの信頼度と検査スピードに対しては更に高い水準が要求される。
【０００６】
ＢＧＡチップの検査段階での基本的な手順は、画像の収集、ハンダボールの抽出、ハンダボールアレイの位置決め及びハンダボールパラメータの検出などがある。その中で、ハンダボールの抽出は画像分割アルゴリズムでＢＧＡハンダボールの抽出を図るが、伝統的なハンダボールの抽出方法は一般的に大局的閾値を採用し、画像に対して二値化を行う。例えば文献『Analysis Ball Grid Array defects by using new image technique』の中では、全ての画素のグレースケールの平均値と分散値による計算によって二値化の閾値を取得する。文献『A system for automated BGA Inspection』の中では、適応画像のグレースケールのＯｔｓｕアルゴリズムによって大局的閾値を求める。文献『Automated detection and classification of non-wet solder joints』では、ある画像の画素のグレースケール値を統計的な手法で繰り返し計算することによって閾値を求める、などの方法がある。伝統的な方法で分離して取得された二値化ハンダボールでは、ＡＯＩシステムで収集されたＢＧＡ画像の照明の分布が不均一になることがある。すると、上記の二値化分割方法では、あるハンダボールが「過分割」と「分割不足」になり、最終的な検査結果では誤りが発生することになる。同時に、画像の二値化は、混入するノイズもハンダボールと誤認することになり、後続のハンダボールアレイの位置決めに対しても干渉する。
【０００７】
ハンダボールアレイの位置決めは、ハンダボールアレイの回転角度と、画像座標系の中での中心位置とを確定することを目指す。従来の割と成熟した方法（例えば：画像処理ライブラリＨＡＬＣＯＮ）では、一般的にテンプレートマッチング方式を採用する。具体的に実現している工程の中では、まずはＢＧＡ標準データベースによって、標準ハンダボールアレイテンプレートを構築してから、ハンダボールの隣接する位置関係をもとにして、トラバーサルとイタレーションを行って、テンプレートのハンダボールアレイと対応する検査対象のＢＧＡチップハンダボールの変換関係を確定する。この方法が大量のイタレーションとトラバーサルに及ぶことから、アルゴリズムの複雑さが高くて、大規模なハンダボールピンを持っているＢＧＡチップについての検査時間が長くなるため、リアルタイム性に対して高い水準が要求されるＡＯＩシステムには適用されにくい。同時に、一種類のチップを検査するごとに一種類の標準ハンダボールアレイテンプレートを作成しなければならないため、アルゴリズムの柔軟性が弱い。従って、上記の検査及び位置決め工程の時間的複雑さを減少するため、『Locating and checking of BGA pins position using gray level』という文献では、最小二乗法矩形方法を採用してＢＧＡハンダボールアレイを矩形に当て嵌めることを提供した。このアルゴリズムでは、周辺のハンダボールが非矩形に分布するＢＧＡチップに適用されないことは明らかだ。『A system for automated BGA Inspection』という文献の中では、テンプレートマッチングを行うとき、全てのハンダボールにトラバースすることを避けるために、特殊な位置のハンダボール（例えば：アレイ頂角のハンダボール）を選んで、マッチング対象のハンダボールとし、マッチング時間を減少する。しかし、この方法も標準テンプレートを作成する煩雑さが克服されなかった。それと同時に、ハンダボールの分割段階で引き起こす干渉にもロバスト性を持っていなかった。
【０００８】
要するに、従来のＡＯＩシステムにおいてＢＧＡチップのトレーニング工程と検査工程との中に存在する問題は、以下のようにまとめられる。
【０００９】
１）トレーニング工程では、常に人為的にＢＧＡサンプルパラメータを計測し、手動で標準パラメータデータを記録入力するから、作業量が多くて人件コストが高い。
【００１０】
２）伝統的な大局的閾値の二値化方法を採用してハンダボールを抽出すると、不均一な照明の画像に対するロバスト性が弱いから、ハンダボールの分割不足と過分割を引き起こしやすく、結局、検査間違いを招く。
【００１１】
３）最小二乗法矩形方法に基づくハンダボールアレイ位置決めのアルゴリズムは、限定されるいくつかのハンダボールの配列のＢＧＡチップに適用できるが、まばらにハンダボールを配列するＢＧＡチップと不規則なハンダボールを配列するＢＧＡチップに適用性が乏しい。
【００１２】
４）伝統的なテンプレートマッチング方法に基づくハンダボールアレイ位置決めのアルゴリズムは、ＢＧＡチップの種類毎に標準アレイテンプレートを作成する必要があり、マッチングアルゴリズムの時間的複雑さが高く、ハンダボールの分割工程では、混入する干渉に対するロバスト性が弱い。
【発明の概要】
【発明が解決しようとする課題】
【００１３】
本発明の目的は、従来のＢＧＡチップの識別または検査方法についての以下の通りの問題を解決することである。１）識別できる範囲が狭くて、特定の種類或いは限定されたいくつかのハンダボール配列のＢＧＡチップしか識別せず、まばらにハンダボールを配列するＢＧＡチップに適用性が弱いまたは全く識別できない。２）照明と干渉に対するロバスト性が弱くて、大局的閾値の二値化方法を採用して、ハンダボールを抽出する。不均一な照明の画像に対するロバスト性が弱いから、分割不足あるいは過分割を起こしやすく、結局、エラー検出を引き起こし、同時にこの方法で混入する干渉によって後続のチップ位置決めの精度に影響を及ぼす。３）テンプレートマッチングアルゴリズムの柔軟性が低く、各ＢＧＡチップは標準アレイテンプレートを作成しなければならないから、ハンダボール分割は、混入する干渉に対してロバスト性が弱い。４）伝統的なアルゴリズムは時間的複雑度が高く、識別工程では、ほとんどＢＧＡチップのパラメータを人為的に測定し、記録入力する必要がある。よって、線形クラスタリングに基づくマルチタイプのＢＧＡチップの視覚識別方法を提供する。
【課題を解決するための手段】
【００１４】
ステップ１は、カメラヘッドにより収集されたグレースケールのＢＧＡチップの画像、即ち元画像を動的閾値で分割して二値ハンダボール画像を取得し、二値ハンダボール画像に対してモフォロジー処理のオープニング演算及びクロージング演算を行い、処理後の二値ハンダボール画像における連結領域ごとに一つの二値化ＢＧＡハンダボールとして記録し、各二値化ＢＧＡハンダボールに対して連結領域のラベリングを行う。
【００１５】
ステップ２は、ステップ１によって連結領域のラベリングが行われて取得された各二値化ＢＧＡハンダボールの元画像において対応する近傍範囲に対して、グレースケールの連結領域の抽出を行って、完全グレースケールのＢＧＡハンダボールを取得すると共に、完全グレースケールのＢＧＡハンダボールの情報リストを作成する。
【００１６】
その中で、作成された完全グレースケールのＢＧＡハンダボールの情報リストの内容は、完全グレースケールのＢＧＡハンダボールのそれぞれに含まれたグレースケール画素、グレースケール画素により計算された完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置座標、完全グレースケールのＢＧＡハンダボールのそれぞれに対応する最小外接円の直径、並びに、完全グレースケールのＢＧＡハンダボールのそれぞれの周長及び円形度である。各ハンダボールのグレースケール画素は画素座標とグレースケール値とを含む。
【００１７】
ステップ３は、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、画素のグレースケール値がいずれも０であり、大きさが元画像と同じ背景画像を作成する。背景画像において、元画像における完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置に対応するグレースケール値を、対応する二値化ＢＧＡハンダボールの識別番号に変更する。その時の背景画像をＢＧＡハンダボール識別画像として記録し、ＢＧＡハンダボール識別画像における非０のグレースケール値の画素のそれぞれを一つの等価ＢＧＡハンダボールとし、全ての等価ＢＧＡハンダボールのアレイを等価ＢＧＡアレイとする。
【００１８】
その中で、元画像における完全グレースケールのＢＧＡハンダボールがＭ＊Ｎ個あれば、対応する背景画像の中にＭ＊Ｎ個の等価ＢＧＡハンダボールがある。等価ＢＧＡハンダボールは実質的に一つの画素であり、完全グレースケールのＢＧＡハンダボールは等価ＢＧＡハンダボールと一対一に対応する。ＢＧＡハンダボール識別画像において、隣接する二つの等価ＢＧＡハンダボールの間隔がΔγと計算されると、この間隔を等価ＢＧＡハンダボールの間隔典型値とする。
【００１９】
ステップ４は、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγを用いて、ＢＧＡハンダボールの識別画像において等価ＢＧＡアレイに局部的な分析を行い、等価ＢＧＡアレイの粗偏向角度Δθを決定する。
【００２０】
その中で、局部的な分析は規則的なＢＧＡチップに対する局部的な分析と不規則的なＢＧＡチップに対する局部的な分析とに分けられる。規則的なＢＧＡチップは隣接する行のＢＧＡハンダボールが整列されたＢＧＡチップであり、不規則的なＢＧＡチップは隣接する行のＢＧＡハンダボールが千鳥配列されたＢＧＡチップである。
【００２１】
ステップ５は、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγ及びステップ４によって取得された等価ＢＧＡアレイの粗偏向角度Δθを用いて、ＢＧＡハンダボールの識別画像において、行と列の等価ＢＧＡハンダボールに対する線形クラスタリングを行い、各行の等価ＢＧＡハンダボールクラスタ、各列の等価ＢＧＡハンダボールクラスタ及び境界の等価ＢＧＡハンダボールクラスタを取得する。
【００２２】
ステップ６は、ステップ５によって取得された境界の等価ＢＧＡハンダボールクラスタにおける各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像におけるグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストにおいて対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索する。完全グレースケールのＢＧＡハンダボールの中心位置座標によって境界の直線当て嵌めを行い、境界の直線当て嵌めを通じて、元画像におけるＢＧＡチップの偏向角度及び中心位置を求める。
【００２３】
ステップ７は、ステップ５によって取得された各行の等価ＢＧＡハンダボールクラスタと各列の等価ＢＧＡハンダボールクラスタ、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、各行の等価ＢＧＡハンダボールクラスタの直線当て嵌めと各列の等価ＢＧＡハンダボールクラスタの直線当て嵌めとを行う。全ての隣接する行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線の間隔の平均値をＢＧＡチップハンダボールの標準行間隔とする。全ての隣接する列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線の間隔の平均値をＢＧＡチップハンダボールの標準列間隔とする。
【００２４】
ステップ８は、ステップ７によって取得された各行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線と各列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線とを用いて、ＢＧＡハンダボールの識別画像において等価ＢＧＡハンダボールに対する行ごとに或いは列ごとに検索を行って、ＢＧＡハンダボールの分布マトリックスを取得する。行ごとに或いは列ごとに検索することで取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストにより、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長及びＢＧＡハンダボールの標準円形度を求める。
【発明の効果】
【００２５】
１）本発明が提供するＢＧＡチップ視覚識別方法は、マルチタイプのＢＧＡチップの識別工程の中でマッチングテンプレートを作成する必要がなくて、柔軟性が強い。実際のＡＯＩシステムで応用されるトレーニング段階では、この方法を用いて、標準のＢＧＡチップのサンプルに対してパラメータを識別して、標準のデータベースを作成することができる。検査段階では、この識別方法を用いて、検査対象のＢＧＡチップのそれぞれのパラメータを抽出してから検査すると共に、ＢＧＡハンダボールの偏向角度と中心位置を取得することができる。
２）本発明の方法に含まれているグレースケール連結領域に基づくハンダボールを抽出する方法は、伝統的な二値化抽出アルゴリズムに比べて、不均一な照明の場合で抽出したＢＧＡハンダボールの完全性を最大限に保証し、更に識別結果の正確さを保証することができる。二つタイプのハンダボールを抽出する方法の比較結果は、図６及び図７のようになる。
３）線形クラスタリングに基づくマルチタイプのＢＧＡチップの視覚識別方法は、大多数のＢＧＡチップを識別できる。（規則的なＢＧＡチップ、不規則的なＢＧＡチップ、まばらにハンダボールが配列するタイプのＢＧＡチップ、あるいは、ほかのハンダボールの分布タイプのＢＧＡチップ。）
４）本発明が提供する線形クラスタリング方法の特性によると、本識別方法が自動的にハンダボールを抽出してもたらす干渉（ハンダボールと誤解しやすい）を識別してからフィルタすることができる。これにより、背景干渉るに対するアルゴリズムのロバスト性を向上し、ＢＧＡハンダボールアレイの位置決めの正確さと精度を保証することができる。図８及び図９は、本発明の識別アルゴリズムが識別できる非ハンダボールの干渉を代表的に示す。
５）本発明が提供する識別アルゴリズムは、収集した画像の不均一な照明に対してロバストであり、非理想的な光強度に適応できる。ある典型的な実験の場合では、検査対象のチップが図１０のようであり、収集した画像の解像度が８４０＊１１６０であるが、異なる光強度がアルゴリズムの稼動時間と検査精度に影響する曲線図は、図１１のようになる。
６）本発明が提供する線形クラスタリング方法の計算の複雑さは、低い。ある典型的な実験の場合、照明条件が良好で、収集した画像の解像度が８４０＊１１６０であるが、ハンダボールの数が異なるＢＧＡチップに対して商業アルゴリズムと本発明が提供する識別アルゴリズムとの稼動時間の比較図は、図１２のようになる（ＰＣプラットフォームパラメータ：Intel（登録商標） Pentium（登録商標） B960. 2.2GHz dual-core, C++）。
７）本発明が提供する線形クラスタリングに基づく識別方法は、また、異なる分布様式の図形アレイの識別と検査に広く適用される。
【図面の簡単な説明】
【００２６】
【図１】図１は、実施形態１で提供される線形クラスタリングに基づくマルチタイプのＢＧＡチップの視覚識別方法のフローチャートである。
【図２】図２は、実施形態１で提供される元画像に対して動的閾値で分割して、モフォロジー処理のクロージング演算及びオープニング演算を行う工程の例を示す図である。
【図３（ａ）】図３（ａ）は、実施形態３で提供される規則的なＢＧＡチップに対する局部を分析する例を示す図である。
【図３（ｂ）】図３（ｂ）は、実施形態４で提供される不規則的なＢＧＡチップに対する局部を分析する例を示す図である。
【図４】図４は、実施形態５で提供される行と列のＢＧＡハンダボールに対して線形クラスタリングを行う例を示す図である。その中では、
【数１】
0006598162.tif 000002
は第ｊ個の等価ＢＧＡハンダボールの座標に対応する等価ＢＧＡハンダボールの行直線の方程式の切片を表し、
【数２】
0006598162.tif 000003
は第ｊ個の等価ＢＧＡハンダボールの座標に対応する等価ＢＧＡハンダボールの列直線の方程式の切片を表し、
【数３】
0006598162.tif 000004
は第ｉ個の等価ＢＧＡハンダボールの座標に対応する等価ＢＧＡハンダボールの行直線の方程式の切片を表し、
【数４】
0006598162.tif 000005
は第ｉ個の等価ＢＧＡハンダボールの座標に対応する等価ＢＧＡハンダボールの列直線の方程式の切片を表し、
【数５】
0006598162.tif 000006
は干渉に対応する等価ＢＧＡハンダボールの列直線の方程式の切片を表す。
【図５】図５は、まばらにハンダボールを配列するＢＧＡチップの例を示す図である。
【図６】図６は、伝統的な二値化方法に基づいてＢＧＡハンダボールを抽出する効果を示す図である。
【図７】図７は、本発明が含んでいるＢＧＡハンダボールを抽出する方法の効果を示す図である。
【図８】図８は、代表的にこのアルゴリズムが左上隅の非ハンダボールの干渉を識別できることを示す。
【図９】図９は、代表的にこのアルゴリズムが左下隅の非ハンダボールの干渉を識別できることを示す。
【図１０】図１０は、検査対象のＢＧＡチップの画像である。
【図１１】図１１は、図１０の検査対象のＢＧＡチップに対して、異なる光強度によるアルゴリズムの稼動時間及び検査精度への影響の曲線図である。
【図１２】図１２は、商業アルゴリズムと本発明が提供する識別アルゴリズムとの稼動時間の比較図である。
【発明を実施するための形態】
【００２７】
実施形態１：
本実施形態は、線形クラスタリングに基づくマルチタイプのＢＧＡ視覚識別方法であり、以下のステップによって具体的に実行される。
【００２８】
ステップ１では、カメラヘッドにより収集されたグレースケールのＢＧＡチップの画像（すなわち、元画像）に対して、動的閾値で分割してから、二値ハンダボール画像を取得した後、二値ハンダボール画像に対してモフォロジー処理のクロージング演算及びオープニング演算を行う。処理し終わった二値ハンダボール画像の各連結領域は、一つの二値ハンダボールとして記録され、そして、各二値ＢＧＡハンダボールに対して連結領域のラベリングを行う。
【００２９】
その中では、元画像を動的閾値で分割して取得された二値ハンダボール画像Ｉ（ｘ、ｙ）は、以下の数式を用いて表示される。
【数６】
0006598162.tif 000007
【００３０】
式中、ｆ（ｘ、ｙ）は元画像、ｇ（ｘ，ｙ）はｆ（ｘ、ｙ）から平均化フィルタによって取得された画像である。Cは予め設定された定数である。
【００３１】
ステップ２では、ステップ１において連結領域でラベリングされた各二値化ＢＧＡハンダボールが元画像において対応する近傍範囲の中から、グレースケールの連結領域を抽出して、完全グレースケールのＢＧＡハンダボールを取得して、完全グレースケールのＢＧＡハンダボールの情報リストを作成する。
【００３２】
その中で、作成された完全グレースケールのＢＧＡハンダボールの情報リストが以下の内容を含んでいる。完全グレースケールのＢＧＡハンダボールのそれぞれが含んでいるグレースケール画素、グレースケール画素により計算して取得された完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置座標、完全グレースケールのＢＧＡハンダボールのそれぞれに対応する最小外接円の直径、完全グレースケールのＢＧＡハンダボールのそれぞれの周長及び円形度である。各ハンダボールのグレースケール画素は画素座標とグレースケール値とを含んでいる。
【００３３】
ステップ３では、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを通じて、画素のグレースケール値が全て０になって元画像の大きさと同じ背景画像を作成する。それから、その背景画像において、元画像内の完全グレースケールのＢＧＡハンダボールのそれぞれの中心位置に対応するグレースケール値を、それに対応する二値化ＢＧＡハンダボールの識別番号に変更する。この時、背景画像はＢＧＡハンダボール識別画像として記録され、ＢＧＡハンダボール識別画像の中の非０のグレースケール値の画素のそれぞれは等価ＢＧＡハンダボールと称され、全ての等価ＢＧＡハンダボールで構成されたアレイは等価ＢＧＡアレイと称される。
【００３４】
その中で、元画像にＭ＊Ｎ個の完全グレースケールのＢＧＡハンダボールがあれば、対応する背景画像の中にはＭ＊Ｎ個の等価ＢＧＡハンダボールがある。等価ＢＧＡハンダボールが実質的に一つの画素であり、完全グレースケールのＢＧＡハンダボールが等価ＢＧＡハンダボールと一対一に対応する。ＢＧＡハンダボール識別画像の中では、隣接する二つの等価ＢＧＡハンダボールの間隔がΔγと計算されれば、この間隔を等価ＢＧＡハンダボールの間隔典型値とする。
【００３５】
ステップ４では、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγを用いて、ＢＧＡハンダボール識別画像の上の等価ＢＧＡアレイに局部分析を行い、等価ＢＧＡアレイの粗偏向角度Δθを決定する。
【００３６】
その中で、局部分析は、規則的なＢＧＡチップに対する局部分析と不規則的なＢＧＡチップに関する局部分析とに分けられる。規則的なＢＧＡチップは、隣接する行のＢＧＡハンダボールが整列されたＢＧＡチップであり、不規則的なＢＧＡチップは、隣接する行のＢＧＡハンダボールが千鳥状に配列されたＢＧＡチップである。
【００３７】
ステップ５では、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγ及びステップ４によって取得された等価ＢＧＡアレイの粗偏向角度Δθを用いて、ＢＧＡハンダボール識別画像において、行と列の等価ＢＧＡハンダボールに対して線形クラスタリングを行って、各行の等価ＢＧＡハンダボールクラスタ、各列の等価ＢＧＡハンダボールクラスタ、及び、境界の等価ＢＧＡハンダボールクラスタを取得する。
【００３８】
ステップ６では、ステップ５によって取得された境界の等価ＢＧＡハンダボールクラスタにおける各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像の中のグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストの中において対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索する。それから、完全グレースケールのＢＧＡハンダボールの中心位置座標によって、境界の直線当て嵌めを行い、境界の直線当て嵌めを通じて、元画像の中のＢＧＡチップの偏向角度及び中心位置を求める。
【００３９】
ステップ７では、ステップ５での識別を通じて取得された各行の等価ＢＧＡハンダボールクラスタと各列の等価ＢＧＡハンダボールクラスタ、及び、ステップ２で取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて、各行の等価ＢＧＡハンダボールクラスタの直線当て嵌めと各列の等価ＢＧＡハンダボールクラスタの直線当て嵌めとを行う。全ての隣接する二行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線の間隔の平均値をＢＧＡチップハンダボールの標準行間隔とする。全ての隣接する二列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線の間隔の平均値をＢＧＡチップハンダボールの標準列間隔とする。
【００４０】
ステップ８では、ステップ７によって取得された各行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線と各列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線とを用いて、ＢＧＡハンダボール識別画像の中で、等価ＢＧＡハンダボールを行ごとに或いは列ごとに検索してからＢＧＡハンダボールの分布マトリックスを取得する。行ごとに或いは列ごとに検索して取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを求めると、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長及びＢＧＡハンダボールの標準円形度を取得する。
【００４１】
実施形態２：
本実施形態と実施形態１との違いは、ステップ２において、ステップ１によって作成された完全グレースケールのＢＧＡハンダボールの情報リストについてである。その相関データの具体的取得方法は以下の通りである。
【００４２】
（１）それぞれの完全グレースケールのＢＧＡハンダボールに含まれたグレースケール画素では、次式を用いて、各二値化ＢＧＡハンダボールの元画像において対応する近傍範囲に対してグレースケール連結領域の抽出を行う。
【数７】
0006598162.tif 000008
【００４３】
式中で、（ｘｐ，ｙｐ）は元画像上で判断対象とする画素の縦横座標値であり、Rは完全グレースケールのＢＧＡハンダボールの画素の集合であり、mean[R]は完全グレースケールのＢＧＡハンダボールの中での全て画素の平均グレースケール値であり、（ｘａｄｊ，ｙａｄｊ）は（ｘｐ，ｙｐ）の８近傍であって、Rに属する画素の座標値を表し、
【数８】
0006598162.tif 000009
とΔは予め設定された定数であり、ｆ（ｘｐ、ｙｐ）は元画像の点（ｘｐ，ｙｐ）であるところでのグレースケール値である。
【００４４】
グレースケール連結領域の抽出は、最大程度で、ＢＧＡハンダボールのそれぞれに含まれる全てのグレースケール画素を最大限に抽出することができ、最終的に抽出されるグレースケールのＢＧＡハンダボールは完全グレースケールのＢＧＡハンダボールとして記録される。
【００４５】
（２）第ｉ番目の完全グレースケールのＢＧＡハンダボールの中心位置座標
【数９】
0006598162.tif 000010
の計算式は以下の通りである：
【数１０】
0006598162.tif 000011
【００４６】
式の中で、（ｘｋ，ｙｋ）は第ｉ番目の完全グレースケールのＢＧＡハンダボールに含まれる第ｋ番目のグレースケール画素座標であり、Ｎｉは第ｉ番目の完全グレースケールのＢＧＡハンダボールに含まれるグレースケール画素の個数であり、ｉは正の整数であり、ｋは正の整数である。
【００４７】
（３）第ｉ番目の完全グレースケールのＢＧＡハンダボールの面積Ｓｉは完全グレースケールのＢＧＡハンダボールに含まれる画素の個数Ｎｉである。第ｉ番目の完全グレースケールのＢＧＡハンダボールの円形度Ｃｉの計算式は以下の通りである。
【数１１】
0006598162.tif 000012
【００４８】
式の中で、Ｌｉは第ｉ番目の完全グレースケールのＢＧＡハンダボールの周長であり、即ち完全グレースケールのＢＧＡハンダボールの周辺画素の数である。他のステップ及びパラメータは実施形態１と同じである。
【００４９】
実施形態３：
本実施形態と実施形態１及び２との違いは、ステップ４における規則的なＢＧＡチップについての局部的な分析の具体的なプロセスである。そのプロセスは図３（ａ）のように示される。
【００５０】
ステップ４１では、ＢＧＡハンダボールの識別画像において、いずれかの等価ＢＧＡハンダボールを選択する。
【００５１】
ステップ４２では、ステップ４１によって選択された等価ＢＧＡハンダボールを中心に半径が３Δγの範囲の中で、各々［−４５°，４５°）、［４５°，１３５°）、［１３５°，２２５°）及び［−１３５°，−４５°）の四つの方向範囲の中で、ステップ四一の中で選択された等価ＢＧＡハンダボールと直近の等価ＢＧＡハンダボールを検索し、四つの方向における直近の等価ＢＧＡハンダボールが全く存在しない場合、ステップ４１を再実行する。
【００５２】
ステップ４３では、各方向で検索された直近隣接の等価ＢＧＡハンダボールにおいて、以下の式を用いて、各々の第ｊ番目の方向に対応する等価ＢＧＡアレイの粗偏向角度Δθｊを求める。
【数１２】
0006598162.tif 000013
【００５３】
式の中で、（Ｘｃｅｎｔｅｒ，  ｙｃｅｎｔｅｒ）は中心の等価ＢＧＡハンダボールの座標であり、
【数１３】
0006598162.tif 000014
は第ｊ番目の方向に対応する直近の等価ＢＧＡハンダボールの座標であり、同時に、±９０°及び正負符号は四つの方向の状況によって選択或いは切り捨てを行う。ｊ＝１は［−４５°，４５°）の範囲を示し、ｊ＝２は［４５°，１３５°）の範囲を示し、ｊ＝３は［１３５°，２２５°）の範囲を示し、ｊ＝４は［−１３５°，−４５°）の範囲を示す。
【００５４】
全てのΔθjの平均値を取って最終の等価ＢＧＡアレイの粗偏向角度Δθにし、画像座標系の下で、Δθは時計回りに回転する方向を正にする。他のステップ及びパラメータは実施形態１から２までの何れかと同じである。
【００５５】
実施形態４：
本実施形態と実施形態１から３までの何れかのと違いは：ステップ４における不規則的なＢＧＡチップについての局部的な分析の具体的なプロセスである。そのプロセスは図３（ｂ）のように示される。
【００５６】
ステップ４４では、ＢＧＡハンダボールの識別画像の上で、いずれかの等価ＢＧＡハンダボールを選択する。
【００５７】
ステップ４５では、ステップ４４によって選択された等価ＢＧＡハンダボールを中心に半径が３Δγ範囲の中で、各々［０°，９０°）、［９０°，１８０°）、［１８０°，２７０）及び［−９０°，０°）の四つの方向範囲の中で、中心の等価ＢＧＡハンダボールと直近の等価ＢＧＡハンダボールを検索し、四つの方向における直近の等価ＢＧＡハンダボールが全く存在しない場合、ステップ４４を再実行する。
【００５８】
ステップ４６では、各方向で検索された直近隣接の等価ＢＧＡハンダボールにおいて、以下の式を用いて、各々の第ｊ番目の方向に対応する等価ＢＧＡアレイの粗偏向角度Δθjを求める。
【数１４】
0006598162.tif 000015
【００５９】
式の中で、（ｘｃｅｎｔｅｒ，ｙｃｅｎｔｅｒ）は中心の等価ＢＧＡハンダボールの座標であり、
【数１５】
0006598162.tif 000016
は第ｊ番目の方向に対応する直近の等価ＢＧＡハンダボールの座標であり、同時に、上の式で、±９０°及び正負符号は四つの方向の状況によって選択或いは切り捨てを行う。ｊ＝１は［０°，９０°）の範囲を示し、ｊ＝２は［９０°，１８０°）の範囲を示し、ｊ＝３は［１８０°，２７０°）の範囲を示し、ｊ＝４は［−９０°，０°）の範囲を示す。
【００６０】
全てのΔθｊの平均値を取って最終の等価ＢＧＡアレイの粗偏向角度Δθにし、画像座標系の下で、Δθは時計回りに回転する方向を正にする。他のステップ及びパラメータは実施形態１から２までの何れかと同じである。
【００６１】
実施形態５：
本実施形態と実施形態１から４までの何れかとの違いは、ステップ５において、ステップ３によって取得された等価ＢＧＡハンダボールの間隔典型値Δγ及びステップ４によって取得された等価ＢＧＡアレイの粗偏向角度Δθを用いて、ＢＧＡハンダボール識別画像の上に、行と列の等価ＢＧＡハンダボールに線形クラスタリングを行って取得された各行の等価ＢＧＡハンダボールクラスタ、各列の等価ＢＧＡハンダボールクラスタ及び境界の等価ＢＧＡハンダボールクラスタを取得する具体的なプロセスである。そのプロセスは以下の通りである。
【００６２】
ステップ５１は、等価ＢＧＡアレイの粗偏向角度Δθによって、等価ＢＧＡハンダボールの行直線の数式を、
【数１６】
0006598162.tif 000017
、等価ＢＧＡハンダボールの列直線の数式を、
【数１７】
0006598162.tif 000018
に決定する。
【００６３】
その中で、（Ｘｃｅｎｔｅｒ，ｙｃｅｎｔｅｒ）は完全グレースケールのＢＧＡハンダボールの中心位置座標であり、ｂｒｏｗは行直線の画像座標系におけるｙ軸との切片であり、ｂｃｏｌは列直線の画像座標系におけるｘ軸での切片である。
【００６４】
ステップ５２では、等価ＢＧＡハンダボールについて、行と列の分類閾値を、
【数１８】
0006598162.tif 000019
に決定する。
【００６５】
ステップ５３では、等価ＢＧＡハンダボールについて行クラスタリングを行う。第ｉ番目の等価ＢＧＡハンダボールの座標
【数１９】
0006598162.tif 000020
を用いて、対応する等価ＢＧＡハンダボールの行直線の数式から、次式のように切片を求める；
【００６６】
【数２０】
0006598162.tif 000021
【００６７】
ステップ５４では、分類閾値intercept_threshに基づいて、取得された全ての行切片
【数２１】
0006598162.tif 000022
のクラスタリングを行う。すなわち分類閾値intercept_threshの範囲内で、同じ行切片
【数２２】
0006598162.tif 000023
を一つの類に併合し、その一つの類の行切片
【数２３】
0006598162.tif 000024
に対応する等価ＢＧＡハンダボールを一つの行等価ＢＧＡハンダボールクラスタに併合すると共に、等価ＢＧＡハンダボールクラスタを同一の行にする。
【００６８】
ステップ５５では、ステップ５４によってクラスタリングされた後、クラスタ内の要素数が１である行等価ＢＧＡハンダボールクラスタを干渉要素とみなして取り除く。取得された行等価ＢＧＡハンダボールクラスタの個数はすなわちＢＧＡチップハンダボールの行数になる。
【００６９】
その後、全ての行等価ＢＧＡハンダボールクラスタに対し、クラスタ内において対応する平均行切片の昇順によって、順序付けを行う。順序付けされた行等価ＢＧＡハンダボールクラスタは、等価ＢＧＡアレイの行番号が若番から老番までの順に配列される。
【００７０】
ステップ５６では、等価ＢＧＡハンダボールについて列クラスタリングを行う。第ｉ番目の等価ＢＧＡハンダボールの座標
【数２４】
0006598162.tif 000025
を用いて、次式のように対応する列直線の数式の列切片
【数２５】
0006598162.tif 000026
を求める。
【数２６】
0006598162.tif 000027
【００７１】
ステップ５７では、分類閾値intercept_threshに基づいて、取得された全ての列切片
【数２７】
0006598162.tif 000028
の列クラスタリングを行う。すなわち分類閾値intercept_threshの範囲内で、同じ列切片
【数２８】
0006598162.tif 000029
を一つの類に併合し、その一つの類の列切片
【数２９】
0006598162.tif 000030
に対応する等価ＢＧＡハンダボールを一つの列等価ＢＧＡハンダボールクラスタに併合すると共に、等価的ＢＧＡハンダボールクラスタを同一の列にする。
【００７２】
ステップ５８では、ステップ５４によってクラスタリングされた後、クラスタ内の要素数が１である列等価ＢＧＡハンダボールクラスタを干渉要素とみなして取り除く。取得された列等価ＢＧＡハンダボールクラスタの個数はすなわちＢＧＡチップハンダボールの列数になる。
【００７３】
その後、全ての列等価ＢＧＡハンダボールクラスタに対し、クラスタ内において対応する平均列切片の昇順によって、順序付けを行う。順序付けされた列等価ＢＧＡハンダボールクラスタは、等価ＢＧＡアレイの番号が若番から老番までの順に配列される。
【００７４】
ステップ５９では、順序付けられた行等価ＢＧＡハンダボールクラスタの第１のグループ、順序付けられた行等価ＢＧＡハンダボールクラスタの最後のグループ、順序付けられた列等価ＢＧＡハンダボールクラスタの第一のグループ、順序付けられた列等価ＢＧＡハンダボールクラスタの最後のグループを抽出して、境界の等価ＢＧＡハンダボールクラスタとする。
【００７５】
ステップ５４とステップ５７とにおいて、分類閾値intercept_threshの範囲の中で、取得された全ての行切片
【数３０】
0006598162.tif 000031
と列切片
【数３１】
0006598162.tif 000032
にクラスタリングを行う具体的実施形態は、以下の通りである（今は、行切片
【数３２】
0006598162.tif 000033
のクラスタリングだけを例に説明する）。
【００７６】
Step1：
【数３３】
0006598162.tif 000034
を第1類の
【数３４】
0006598162.tif 000035
に初期化する。
【００７７】
Ｓｔｅｐ２：
【数３５】
0006598162.tif 000036
と第ｊ（ｊ＝１，２，３…ｋ）類のΩｊのクラスタ中心
【数３６】
0006598162.tif 000037
が
【数３７】
0006598162.tif 000038
の関係が成立する場合、
【数３８】
0006598162.tif 000039
は第ｊ類に分類され、さらに
【数３９】
0006598162.tif 000040
を再計算する。そうではない場合、
【数４０】
0006598162.tif 000041
を第ｋ＋１類に初期化する。その中で、第ｊ類のΩｊのクラスタ中心
【数４１】
0006598162.tif 000042
はΩjの中で全ての切片の平均値である。
【００７８】
Ｓｔｅｐ３：ｉ＝ｉ＋１として、Ｓｔｅｐ２を実施する。他のステップ及びパラメータは実施形態１から４までの何れかと同じである。
【００７９】
実施形態６：
本実施形態と実施形態１から５までの何れかとの違いは、ステップ７において、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて行われた各行の等価ＢＧＡハンダボールクラスタの直線当て嵌めを行うことの具体的なプロセスである。そのプロセスは以下の通りである。
【００８０】
各行の等価ＢＧＡハンダボールクラスタの中での各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像におけるグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストの中において対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索して、各行の完全グレースケールのＢＧＡハンダボールの中心位置座標の直線当て嵌めを行う。他のステップ及びパラメータは実施形態１から５までの何れかと同じである。
【００８１】
実施形態７：
本実施形態と実施形態１から６までの何れかとの違いは、ステップ７において、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストを用いて行われた各列の等価ＢＧＡハンダボールクラスタの直線当て嵌めを行うことの具体的なプロセスである。そのプロセスは以下の通りである。
【００８２】
各列の等価ＢＧＡハンダボールクラスタの中での各等価ＢＧＡハンダボールのＢＧＡハンダボールの識別画像におけるグレースケール値を用いて、完全グレースケールのＢＧＡハンダボールの情報リストの中において対応する完全グレースケールのＢＧＡハンダボールの中心位置座標を検索して、各列の完全グレースケールのＢＧＡハンダボールの中心位置座標の直線当て嵌めを行う。他のステップ及びパラメータは実施形態１から６までの何れかと同じである。
【００８３】
実施形態８：
本実施形態と実施形態１から７までの何れかとの違いは：ステップ８において、ステップ７によって取得された各行の等価ＢＧＡハンダボールに当て嵌めた直線と各列の等価ＢＧＡハンダボールに当て嵌めた直線とを用いて、ＢＧＡハンダボール識別画像上で、等価ＢＧＡハンダボールを行或いは列ごとに検索して、ＢＧＡハンダボールの分布マトリックスを取得し、行或いは列ごとに検索することによって取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストによって、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長、及びＢＧＡハンダボールの標準円形度を求めることの具体的なプロセスである。そのプロセスは以下の通りである：
【００８４】
各行の等価ＢＧＡハンダボールクラスタに当て嵌めた直線と各列の等価ＢＧＡハンダボールクラスタに当て嵌めた直線との交点を求め、その交点を中心としＢＧＡハンダボール識別画像おいて半径がΔγ/2の範囲内で局部的な検索を行う。ある等価ＢＧＡハンダボールが検索されたなら、その等価ＢＧＡハンダボールに対応するＢＧＡ識別マトリックス所在の行列位置の値は１に設定し、そうでなければ交点位置に対応するＢＧＡ識別マトリックス所在の行列位置の値は０に設定する。
【００８５】
行或いは列ごとに検索するによって取得された全ての等価ＢＧＡハンダボール、及び、ステップ２によって取得された完全グレースケールのＢＧＡハンダボールの情報リストによって、ＢＧＡハンダボールの標準直径、ＢＧＡハンダボールの標準周長及びＢＧＡハンダボールの標準円形度を求める具体的なプロセスは、以下の通りである。
完全グレースケールのＢＧＡハンダボールの情報リストの中で、全ての検索された等価ＢＧＡハンダボールに対応する最小外接円の直径の平均値をＢＧＡハンダボールの標準直径にする。完全グレースケールのＢＧＡハンダボールの情報リストの中で、全ての検索された等価ＢＧＡハンダボールに対応する周長の平均値をＢＧＡハンダボールの標準周長にする。完全グレースケールのＢＧＡハンダボールの情報リストの中で、全ての検索された等価ＢＧＡハンダボールに対応する円形度の平均値をＢＧＡハンダボールの標準円形度にする。
【００８６】
他のステップ及びパラメータは実施形態１から７までの何れかと同じである。
【図１】
0006598162.tif 000066
【図２】
0006598162.tif 000067
【図３（ａ）】
0006598162.tif 000068
【図３（ｂ）】
0006598162.tif 000069
【図４】
0006598162.tif 000070
【図５】
0006598162.tif 000071
【図６】
0006598162.tif 000072
【図７】
0006598162.tif 000073
【図８】
0006598162.tif 000074
【図９】
0006598162.tif 000075
【図１０】
0006598162.tif 000076
【図１１】
0006598162.tif 000077
【図１２】
0006598162.tif 000078