(57)【特許請求の範囲】
【請求項１】
透明なパッケージ内におけるレンズの存在を確認する方法であって、
前記パッケージを検査位置に移動させる工程と、
画像面上に前記パッケージの画像を形成するため、光ビームを前記パッケージを通して前記画像面に導く工程と、
前記画像面上での前記画像を表す信号のセットを生成する工程と、
前記パッケージ内にレンズが存在するかどうかを判断するため、これらの信号を分析する工程と、を具備し、
前記分析工程は、
i)    前記パッケージ画像から不連続な物体の画像を探す工程と、
ii）  前記パッケージ画像内に発見された各物体の画像について、複数のパラメータの値を同定し、前記物体がレンズであるか否かを判別するため、これら同定された値を所定の手順に従って分析する工程と、
iii)  前記パッケージ画像内に見つかった物体の画像が一つでもレンズであると判別された場合にレンズ存在信号を発生させる工程と、
iv）  前記パッケージ画像内に物体の画像が一つも見つからない場合か、前記パッケージ画像にある物体の画像がすべてレンズでないと判別された場合に、レンズ不存在信号を発生させる工程と、を含み、
前記ｉｉ）工程は、
ａ） 前記各パラメータについて、
１） 当該パラメータに加重係数を割り当てる工程と、
２） 当該パラメータの値に当該パラメータの加重係数を乗じることにより、当該パラメータについての加重値を算出する工程と、
ｂ） 各パラメータについての前記加重値を合計し合計値を算出する工程と、
ｃ） 前記物体がレンズであるか否かを判別するために前記合計値を所定値と比較する工程とを含む、方法。
【請求項２】
請求項１に記載の方法であって、
前記前記ｉｉ）工程は、
少なくとも４つのパラメータの値を同定する工程と、
前記同定された値を次の式に従って分析する工程と、
Ｄ＝ωa Ａ＋ωp Ｐ＋ωr Ｒ＋ωc Ｃ＋ω5 
（ここで、Ａ、Ｐ、ＲおよびＣは前記４つのパラメータに割り当てられた値であり、ωa 、ωp 、ωr およびωc は前記４つのパラメータに割り当てられた加重係数であり、そしてω5 は所定の定数である）
もしＤが０以下である場合は対象をレンズとして判別し、Ｄが０より大きい場合は対象をレンズではないと判別する工程とを含む、方法。
【請求項３】
請求項１に記載の方法であって、
前記見つかった各物体の画像は周縁を有し、前記ｉｉ）工程は、前記物体の画像の周縁の長さを求める工程を含む、方法。
【請求項４】
請求項１に記載の方法であって、
前記見つかった各物体の画像は幅と高さを有し、前記ｉｉ）工程は、
前記物体の画像の幅ａと高さｂを求める工程と、
式Ａ＝ａ・ｂにより、前記パラメータの一つとして値Ａを求める工程とを含む、方法。
【請求項５】
請求項１に記載の方法であって、
前記見つかった各物体の画像は幅と高さを有し、前記ｉｉ）工程は、
前記物体の画像の幅ａと高さｂを求める工程と、
式Ｒ＝ａ／ｂにより、前記パラメータの一つとして値Ｒを求める工程とを含む、方法。
【請求項６】
透明なパッケージ内におけるレンズの存在を確認するためのシステムであって、
前記パッケージを検査位置に移動させる搬送サブシステムと、
画素アレーを備える検出器と、
前記画素アレー上に前記パッケージの画像を形成するため、光ビームを生成し、この光ビームを前記検査位置にある前記パッケージを通して前記画素アレーに導く照明サブシステムと、
前記画素上での前記光ビームの強度を表すデータ値を前記画素の少なくとも一群のそれぞれに割り当てるデータ値生成器と、
前記パッケージ内にレンズが存在するかどうかを判断するため、これらデータ値を処理するプロセッサとを具備し、
前記プロセッサは、
i)    前記パッケージの画像から不連続な物体の画像を探す手段と、
ii）  発見された各物体の画像について、複数のパラメータの値を同定し、前記物体がレンズであるか否かを判別するため、各物体の画像のパラメータについて同定された値を所定の手順に従って分析する手段と、
iii)  前記パッケージの画像にある物体の画像が一つでもレンズであると判別された場合にレンズ存在信号を発生させ、また前記パッケージの画像に物体の画像が一つも見つからない場合か、前記パッケージの画像にある物体の画像がすべてレンズでないと判別された場合に、レンズ不存在信号を発生させる信号発生器とを含み、
前記ｉｉ）の手段は、
各パラメータに加重係数を割り当てる手段と、
各パラメータの値に当該パラメータの加重係数を乗じることにより、当該パラメータについての加重値を算出する手段と、
見つかった各物体の画像の各パラメータについての前記加重値を合計し前記物体の画像についての合計値を算出する手段と、
前記物体がレンズであるか否かを判別するために、見つかった各物体の画像の前記合計値を所定値と比較する手段とを含む、システム。
【請求項７】
請求項６に記載のシステムであって、
前記発見された各物体の画像は周縁を有し、前記ｉｉ）の手段は、前記見つかった物体の画像の周縁の長さを求める手段を含む、システム。
【請求項８】
請求項６に記載のシステムであって、
前記見つかった各物体の画像は幅と高さを有し、前記ｉｉ）の手段は、
前記物体の画像の幅ａと高さｂを求める手段と、
各見つかった物体の画像についての前記パラメータの一つとして、式Ａ＝ａ・ｂにより、値Ａを求める手段とをさらに含む、システム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、パッケージを自動的に検査する方法および装置に係り、特にパッケージ中にレンズが存在することを自動的に確認するための方法およびシステムに関する。
【０００２】
【従来の技術】
近年、眼科用レンズ、特にコンタクトレンズ用の自動システムがいくつか開発されており、そのような例として例えば米国特許第5,080,839 号がある。これらのシステムは、高度の自動化を達成し、コンタクトレンズの成形、型からの取り出し、さらなる処理と包装は、直接人間が手を下すことなく行われる。しかし、これら高度に自動化されたシステムを使っても、通常はレンズをパッケージに詰めた後、レンズが実際に収められているかどうか各パッケージについて目視検査を行っているのが現状である。
【０００３】
しかし、このように人手を使うレンズパッケージの検査は、かなりのコストを要する。そして、パッケージ検査のコストは、もし検査が自動化されれば、大幅に減じることができると考えられている。さらに、人を介した検査は、非常に正確ではあるが、検査の信頼性は、パッケージ内でのレンズの存在を確認する自動化された検査によれば、さらに高めることができる。
【０００４】
【発明が解決しようとする課題】
本発明の目的は、レンズがパッケージにあることを確認するためのパッケージの自動検査システムおよび方法を提供することである。
【０００５】
本発明のもう一つの目的は、レンズがパッケージにあることを確認するため、１分間当り約１２個の割合で、かつ１％未満の誤差率でレンズパッケージを自動的に検査することである。
【０００６】
本発明のさらなる目的は、レンズがパッケージにあることを確認するため、負の誤差率が１％未満でレンズパッケージを自動的に検査する自動システムを提供することである。
【０００７】
【課題を解決するための手段】
これらの目的は、透明なパッケージ中でレンズの存在を確認する方法およびシステムを提供することによって達成される。本発明の方法は、パッケージを検査位置に移動する工程と、パッケージの像を画像面に形成するためパッケージを通して画像面に光ビームを照射する工程を含む。この方法はさらに、画像面上の像を表す信号のセットを発生する工程と、レンズがパッケージに存在するかどうか調べるためこれらの信号を解析する工程を含む。そしてこの解析工程は、離散した対象物の像についてパッケージ像を検索（サーチ）する工程と、パッケージ像でみつかった各対象の像について複数のパラメータの値を識別する工程と、対象物がレンズかそうでないか同定するため、その識別された値を所定の手順に従って分析する工程を含む。もしパッケージ像に見つかった対象像の一つでもレンズと識別された場合は、レンズが存在することを知らせる信号（レンズ存在信号）が発生される。他方、もしパッケージ像に対象像が何も見つからなかった場合や、見つかった対象像がすべてレンズではないと識別された場合は、レンズが存在しないことを知らせる信号（レンズ不存在信号）が発生される。
【０００８】
本発明の効果は、好ましい態様に係る、以下の図面を参照した詳細な説明から明らかになるであろう。
【０００９】
【実施例】
図１は、パッケージ検査システム１０を示すブロック図である。システム１０は、搬送サブシステム１２、照明サブシステム１４、撮像サブシステムおよび画像処理サブシステム２０を含む。図１はまた、連像装填機構もしくはアセンブリ２２、拒絶機構もしくはアセンブリ２４、コントローラ２６、およびブリスターパックと呼ばれる複数のレンズパッケージ３０のグループを具備する。
【００１０】
システム１０の好ましい態様においては、搬送サブシステム１２は、コンベアベルト３２を備え、照明サブシステム１４は、ハウジング、光源３６および拡散器４０を備える。また、この好ましい態様においては、撮像サブシステム１６は複数のカメラ４２を備え、これらのカメラはそれぞれ、ハウジング４４、画素アレー（配列）４６、シャッタ５０およびレンズアセンブリ５２を備える。そして、画像処理サブシステム２０は複数の処理・記憶ボード５４、キーボード５６などの入力手段を備えるが、このサブシステム２０は好ましくは、さらにビデオモニタ６０とキーボード端子６２を備える。
【００１１】
搬送サブシステム１２は、多数のレンズパッケージを所定の行路に沿ってパッケージ検査位置（図１に符号６４で示す）まで移送するために設置される。照明サブシステム１４は、光ビームを生成し、そのビームを、パッケージ検査システムを通過して移動するレンズパッケージを通過するように差し向けるために設けられる。サブシステム１６は、検査済の各レンズパッケージを透過した光ビームを表す信号のセットを生成し、ついでこれらの信号を処理サブシステム２０に送信する。画像処理サブシステム１６は、これらの信号をサブシステム１６から受け取り、所定のプログラムに従って処理する。そして検査済の各レンズパッケージについて、サブシステム２０は、それぞれパッケージ中にレンズが存在することを知らせるレンズ存在信号、あるいはレンズが存在しないことを知らせるレンズ不存在信号を発する。
【００１２】
サブシステム１０は、種々の型および大きさのパッケージを検査するのに使用される。図２は、システム１０で検査されるパッケージ６６ａ〜６６ｆのグループを示す。図２のパッケージ６６は、ブリスターパック３０を形成するように互いに連結されている。図２と３において、各パッケージは、その外殻７０に空隙もしくはくぼみ７４を形成してある。外殻７０は、透明なプラスチック材料から形成され、好ましくは通常の使用下においてその形状を保つのに十分な剛性を有するのがよい。さらに、パッケージ６６が検査されるとき、空隙７２は覆われていない方が好ましい。
【００１３】
パッケージ６６ａ〜６６ｆのグループにおいて、レンズ７６は、空隙に配置されているが、パッケージ６６ｅと６６ｆにはレンズは見当たらない。またパッケージ６６ａ〜６６ｄにあるレンズ７６も、種々の配置をとっている。例えば、図２において、パッケージ６６ａにあるレンズは平面状態にあるが、パッケージ６６ｂと６６ｃにあるレンズは、左から右へ向かう軸の回りに傾いている。そしてパッケージ６６ｄのレンズは、上から下へ向かう軸の回りでわずかに傾いている。
【００１４】
システム７０は、レンズ７６をパッケージ６６に収める方法もしくは装置には影響されずに用いられる。システム１０は、しかし、レンズ７６の製造・検査・処理を自動的に行い、さらにパッケージ６６への包装をレンズ装填機構２２にあるロボットを使って行う大型のシステムで用いるのに適している。
【００１５】
図１と４において、搬送サブシステム１２は、コンベアベルト３２と平行レールの対３２ａ，３２ｂを備える。ベルト３２は、エンドレス行路の回りでの移動のためベルトを支持する一対もしくはそれ以上のプーリ（図示せず）に取り付けられる。そしてこれらプーリの一つは、プーリを回転させる適当な駆動手段（図示せず）に連結され、コンベアベルトを上述のエンドレス行路の回りで移動させる。好ましくは、先の駆動手段は、パッケージ６６が不連続に一ステップごとに停止しながらシステム１０を通過して移動するように作動される。すなわち、各パッケージは、レンズ装填機構および撮像サブシステム１６の下で、短い時間停止する。
【００１６】
パッケージ６６がレンズ装填機構２２の下で保持されている間、この機構２２は、レンズ７６を各パッケージの空隙７６に収めるように働く。業界では種々のレンズ装填機構が知られており、本発明においては適当なものを使用することができる。通常、これらのレンズ装填機構は、レンズ７６を供給源から運んでパッケージ６６の空隙７４に収めるのに使用されるロボットあるいはロボットアーム（ロボットセルと呼ばれることもある）を備える。好ましい態様においては、パッケージ６６は、ブリスターパックを形成するよう互いに連結され、レンズ装填機構２２は、各ブリスターパックに対して、レンズを３個同時に装填する。レンズがブリスターパック３２にある６個の空隙７４すべてに装填されると、このパックは、検査位置６４まで送られる。搬送サブシステム１２は、出願人整理番号９３０５に係る米国特許出願（発明の名称：「搬送兼エジェクタコンベア付き自動検査システム」）に詳細に記載してある。
【００１７】
さらに、システム１０においては、適当な拒絶機構２４も使用される。機構２４は、コントローラ２６で制御するのが好ましい。より詳しくいうと、コントローラ２６がサブシステム２０から特定のブリスターパックにレンズが存在しないという信号を受け取ると、コントローラ２６は、ブリスターパックを拒絶機構を通過した時点で流れから取り外すよう機構２６を作動させる。エジェクタ機構２４もまた、先の出願人整理番号９３０５に係る米国特許出願に詳細に記載してある。
【００１８】
図１および５において、サブシステム１４は、光ビーム８０を発生させ、そのビームをパッケージ６６を通過して検査位置７６に差し向けるのに使用される。より詳しくは、光源３６は蛍光灯であり、ハウジング３４に収められて光ビーム８０を発する。このビーム８０は、ハウジング３４の内壁で反射され、拡散器４０を通過し、例えば透明なレキサン（lexan:ポリカーボネート）カバープレートでできた窓８２を経てハウジング３４から射出される。
【００１９】
本発明の実施するに当っては、光ビームに特定の波長は必要ないことが分った。これは、パッケージ６６でレンズを検出するには、レンズ縁で形成されるグレーレベルの勾配で十分なためである。このため、システム１０の照明には、通常の蛍光灯を使用することができる。
【００２０】
ところで、蛍光灯の光は多くの場合放射が不均一であるが、サブシステム１４は均一な放射をする光ビームを発するのが好ましい。蛍光灯３６の放射の不規則製を解決し、ブリスターパック３０に広範囲で明瞭な照明視野を与えるため、蛍光灯の上部に拡散器４０を設ける。拡散器４０はきらめかせたオパールからつくられるが、この拡散器４０は、比較的短い行程では所望の均一な放射特性を示す光ビームを発するのを助け、サブシステム１４をコンベアベルト３２に比較的近い箇所に設置するのを可能にする。
【００２１】
図５に詳細に示す用に、電球３６は、光ビームがハウジングから射出するときの光軸８０からは外して設けられ、拡散プレート４０がその光軸と直交しない角度で設けられる。プレート４０のランベール(Lambert) 散乱特性により、バルブから発せられた放射エネルギーは、ハウジングを横断する方向に、均一に上方に向かう。ランベールの法則によれば、均一に拡散していく面Ｓに垂直な照明の強度がＩ0 で表されるときは、拡散面の法線方向の強度Ｉa はＩ0 cos(a)で示される。これは、面に直交しない角度から見たときの表面Ｓにおける見かけサイズの違いのためである。したがってａ＝４５°のときはＩ＝（０．７１）Ｉ0 である。
【００２２】
図５に示すように、プレート４０は、ランベールの法則に従って最大の照明強度を３０％未満の範囲で減衰させる４５°の角度に設置され、１０％の変動誤差で均一にエネルギーを分配する。実際には、上述の数値は完全なランベール面を想定した場合の近似値であるから、きらめかせたオパールは、３０％をわずかに上回るエネルギーを吸収する。電球３６とブリスターパック３０の間に拡散器４０を配置すると、電球とブリスターパックの間の効果的な光路も拡張される。光学の分野では、有限の要素の組合せで遠い光源のシミュレーションを行うのに、長い間研磨したガラスが用いられてきたが、きらめかせたオパールは、それ以上の角度効果を有する。電球３６は、ブリスターパック３０のすぐ下にはないため、均一に散乱された光だけが上方に進む。好ましくは、蛍光灯３６の長手軸は、振る下パックが照明サブシステム１４の上方を通過するとき、ブリスターパックの長手軸と平行であるのがよく、蛍光灯３６はブリスターパックより長い。このような構成にすると、各ブリスターパックにより均一な照明を行うことができる。
【００２３】
像ごとの光の変動は除去するのが好ましい。通常の６０Hz安定化周波数（周期0.0166秒）によって生起されるフリッカー（ちらつき）は、0.001 秒より大きなシャッタースピードで作動させると、カメラの焦点面アレーにとらえられる。Mercron 社の高周波安定器は、60、000Hz（周期0.000016秒）で電圧を発信してこのフリッカーを除去する。電子シャッターの周期０．００１秒の間に、ランプ３６は６０サイクルの電圧を受け、ランプの蛍光の減衰速度は、照明を一定に保つ。この解決策は、安定器の電圧は一定であることを前提としている。
【００２４】
照明サブシステム１４は、パッケージ６６の像を形成するが、この像においては、レンズ７６は周りのパッケージから識別することができる。例えば、図６は、光ビーム８０によって形成されるブリスターパック３０の像を示している。各パッケージを透過した光の大部分は、減衰していないか、してもわずかである。パッケージ６６と空隙７６の縁は光を偏向するため、ブリスターパックの像に対応する暗線を生じる。レンズ７６の縁も、ここを通過する光を偏向し、同様に画像上の対応箇所に暗黒領域を生ずる。レンズ７６を通過する光ビーム８０の一部は、レンズによってわずかに減衰され、その結果、レンズの像は、レンズパッケージの縁でない箇所の像ほど明るくない。
【００２５】
画像サブシステム１６は、検査位置６４においてレンズパッケージ６６を透過した光ビームを受け取り、光ビームを表す一連の信号を生起する。すでに述べたように、サブシステム１６は、好ましくは同一の３台のカメラ４２を備える。図７に示す各カメラ４２においては、カメラハウジング４４内部にあるシャッター５０のすぐ背後に、画素アレー４６が配置されている。また、各画素アレーは、好ましくは多数の光センサから構成され、これらの光センサはそれぞれ、そのセンサに入射した光に強度に比例するかまたはこれを表す大きさの一つの電流を生起することができる。さらに、システム１０の好ましい操作においては、与えられたブリスターパックが検査されると、３台のカメラ４２のそれぞれは、ブリスターパックにある６個のパッケージ６６の対応する対の画像を受け取る。図８は、１台のカメラ、詳しくは画素配列で撮像される典型的な画像を示す。
【００２６】
従来と同様、各画素アレー４６の光センサあるいは画素は、所与の行数および列数をもつ均一のグリッド状に配列される。例えば、グリッドは、約１０００個の行と１０００個の列からなる１００万画素から構成されるグリッドの行と列は、均一に離隔しておくのが好ましい。そして、アレーの縁部分にある画素を除いて、各画素は８個の画素に隣接する。
【００２７】
当業者には理解されるように、サブシステム１６には適当なカメラならいかなるものも使用することができる。例えば、各カメラ４２には、パナソニックのGP-MF522白黒ＣＣＤカメラを用いることができる。カメラは２飛び越し線のＲＳ−１７０モードで画像を出力する。画像サイズを200,000 個以下にとどめるため、飛び越し線フレームのうちただ一個だけが画像処理装置の入力としてとらえられる。全画像サイズをこの閾値以下にとどめると、処理装置ボード５４に要求されるメモリの寸法を定める上で役にたち、検査と画像処理システムのコストも抑えることができる。
【００２８】
Computar社製１６mmのＣマウントレンズをＣＣＤカメラに撮りつけ、Tiffen社のスカイフィルタでレンズを保護し、また閃光を抑えた。照明サブシステム１４は、カメラ４２の下でレンズの動きを凍結する必要はない。これは、搬送ベルト３２が連続的ではなく一ステップづつ進められるからである。また、カメラ４２の特徴である電子シャッタによる0.001 秒の露出のおかげで、適度に鮮明な画像が得られ、隣接するロボットやモータからの振動は画像の質には影響しない。
【００２９】
処理サブシステム２０は、撮像サブシステム１６、詳しくは画素アレーからの信号を受け取り、各パッケージ６６がレンズを収めているかそうでないかを仕分けするため、以下で説明する所定のプログラムに則ってこれらの信号を処理する。より詳しくいうと、各カメラ４２にある画素アレー４６からの電気信号は、処理装置ボード５４に送られる。処理装置ボード５４は、各画素アレー４６にある各画素からの電流信号をそれぞれデジタルデータに変換し、この値を、その電気信号を発生した画素のアドレスと関連するアドレスのメモリ領域に格納する。
【００３０】
システム１０には適当な処理ユニット５４、例えばPerceptics Corp.社のＩＰ９４０画像処理装置ビジョンボードを用いることができる。図９に示す処理ボードは、３つのカメラ入力をモノデジタイザボード８４に与え、３つのカメラ入力はすべて、ただ一個のＤＢ−１５コネクタ８６を介して内部にはいる。そして各ＣＰＵボードには、手動によるリセットボタン９０が設けられる。
【００３１】
処理ボード５４は、６４個までの装置との接続を可能にする入出力コネクタ９２を有する。この入出力コネクタはまた、光学隔離モジュールを介してロボットコントローラ２６と接続する。ロボットコントローラは、この接続チャネルを通して、ブリスターパック３０の送り（ブリスターパックのシステム１０を通過する移動）を制御することによりいつ検査を開始するか決定する。また、システム１０がレンズの存在しないことを検出したときは、ロボットコントローラ２６は、処理サブシステム２０からの報告パックを受け取った後拒絶機構２４と交信し、この機構に、レンズのないパッケージを含むブリスターパックを拒絶するよう支持を与える。
【００３２】
キーボード５６は、オペレータがプロセッサ５４に入力できるよう、プロセッサ５４と接続するが、キーボード端子６２は、プロセッサボードに入力されるデータもしくはメッセージを表示するために使用される。モニタ６０はまた、プロセッサ５４に接続され、プロセッサに格納されていたデータを基に、ビデオ画像を形成する。このモニタはさらに、検査結果と全体の値を示すためにも使用される。モニタ６０は、好ましくは高解像度のカラーモニタがよく、Perceptics社の高解像度ディスプレーカードＨＲＤ９００によって制御される。そしてこのディスプレーカードは、イメージボード５４に接続される。プロセッサボード５４にあるＲＳ−２３２コネクタは、端子５２がプロセッサボードと相互作用を行うことを可能にする。
【００３３】
サブシステム２０の各ハードウエア部品は、従来から当業者によく知られているものを用いる。図１０は、コントロールキャビネットに配置されたサブシステム２０のハードウエアを示す。キャビネットは、上方から下方に向けて、高解像度ディスプレー６０、ＲＳ２３２端子６２、キーボードを収める架、プロセッサボード５４を支えるＶＭＥシャシ、および無停電電源装置９４を備える。キーボード、端子６２、高解像度ディスプレー６０および画像処理ボード５４を備える制御コンソールは、ロボットコントローラ２６およびカメラ４２の両方と接続する。そして、ロボットコントローラは、搬送サブシステムおよび拒絶機構２４と接続する。
【００３４】
システム１０内での接続の模様は、図１１に示す。各カメラ４２はプロセッサボード５４と接続し、プロセッサボードは、ＭＵＸ９６−ＲＳ２３２インターフェースを介して端子６２と接続する。さらに、プロセッサボード５４は、ディスプレーカード１００を介してモニタ６０と接続する。そして、プロセッサボードは、光学隔離モジュール１０２を介してロボットセル２２と接続する。
【００３５】
上述のように、パッケージ６６が検査位置６４を通過する度に、パッケージを通って画素アレー４６の一つまで光が透過し、画素アレーにある各画素は、その画素に入射した光の強度を表す大きさの対応する出力電流を発生する。各画素に係る出力電流は、デジタルデータに変換され、プロセッサボード５４のアドレスに格納される。そしてこれらのデータは、パッケージがレンズを収めているかどうかを決定するために処理される。
【００３６】
図１２は、パッケージがレンズを収めているかどうかを決定する好ましい画像処理手順における主な工程を示す。これらの工程は、画像捕獲、画像前処理、画像分割、および対象の分類である。通常、画像捕獲の間は、プロセッサボード５４は、画像処理開始と画像の捕獲のため、ロボットコントローラ２６と接続する。この画像捕獲の後、画像データは、プロセッサ５４が画像のどこでレンズを捜せばよいか決定するため、前処理される。ついでレンズとおぼしき対象は、画像分割の間に識別される。そして対象分類工程において、これらレンズの候補に挙がった対象のひとつにレンズがあるかどうかについて決定が下される。
【００３７】
［画像捕獲およびロボットインターフェースとの通信プロトコル］
画像処理装置５４は、コントローラ２６に、次のブリスターパックの検査準備ができているという非同期メッセージを送った後、コントローラから送られるスタート信号を待つ。一旦スタート信号が受信されると、画像処理装置５４から延びる準備シグナルの出力線は、非活性化され、パッケージの画像がとらえられる。すなわち、カメラセンサの各画素にあるグレーレベルの強度情報は、電子的にプロセッサボードのメモリに移送される。好ましくは、６４０行Ｘ２４０列の画素のただ一つのビデオ視野がとらえられてプロセッサのメモリに格納されるのがよい。
【００３８】
プロセッサボード５４が画素の像をとらえた後、画像がさらに処理、分割、そしてプロセッサメモリで仕分けされている間に、ロボットコントローラ２６は、プロセッサボードから失敗の信号あるいは結果のメッセージを待つ。失敗信号は、システム１０のパッケージ６６を正確に検査する能力を阻害するような一もしくはそれ以上の条件が発生したことを指示するために用いられる。例えば、照明サブシステム１４からの光が所望の強度をもっていず、画素アレーの像が不鮮明になるような場合に、失敗信号が発せられる。これは、カメラ４２がうまく機能しなかったり、電球３６が切れたり、所望の強度の光を発しなかったり、あるいは搬送機構がカメラの下で多数のパッケージをごちゃごちゃにしたりしたときに起こる。これらの条件下でブリスターパックが決して通過しないようにするには、すべてのブリスターパックを拒絶する。
【００３９】
画像処理サブシステム２０がとらえば画像の処理を完了すると、このサブシステムは、ロボットコントローラ２６に、パッケージ検査の結果を知らせる。この結果は、パッケージにあるはずのレンズが確かに「存在する」かあるいは「見当たらない」かに仕分けするものである。この結果は、光学隔離回路を経て、ロボットコントローラへ伝えられる。
【００４０】
［画像前処理］
図１３に一般的な流れを示したが、画像前処理工程においては、パッケージを発見し、処理マスクを生成し、そしてコンベアベルトの位置を確認する。もしコンベアベルトが、パッケージのくぼみに設ける処理マスクの内側にあると、ベルトがレンズととらえられるおそれがあるため、コンベアベルトの位置を確認するのは、重要である。
【００４１】
ａ）パッケージ位置の発見
捕獲した画像について最初に行われる作業は、画像内におけるパッケージの位置を突き止めることである。これは、パッケージ発見アルゴリズムと呼ばれる手順によって行われる。この作業は、必要な情報がすべて詰まったメモリに画像があるのが好ましいが、プロセッサは、最初に画像の特徴を評価することなしには、画像内でどこを捜せばレンズを発見できるかを決定できないために行われる。図１４は、パッケージの特徴を捜す工程で用いられるサーチベクトル(search vector) の好ましいスキームを示す。ここでの第１の工程は、画像にある二つのパッケージのセンターライン位置を特定することである。このラインは、パッケージブレークとも呼ばれ、図１４ではＸ１Ｘ２線で示す。このセンターラインを発見するためには、プロセッサは、二つのサーチベクトルＡ１とＢ１に沿って相対する方向に捜す。これらのベクトルは実際、３×３のエッジオペレータである。
【００４２】
関心のある画素にこれらのオペレータを使うと、画像処理装置５４は特定の画素が勾配の縁にあるかどうかを決定する。下記の式（１）と（２）は、エッジオペレータが、各画素Ｐi,j に対して、いかにして垂直方向と水平方向の勾配を計算するかを示す。これらオペレータの空間的な位置は、図１５を参照すれば分る。この図は、関心のある画素およびこれに隣接する画素の回りの二次元マッピングを示すものである。添字ｉとｊはそれぞれ、関心のある画像座標フレームにおける単位ベクトルの行および列を示す。この関心フレームは、２次元ｘｙ面の鏡像であり、行はｉ軸方向に下方に向かうにつれて増加する。
【００４３】
【数１】
0003748919.tif 000002
【数２】
0003748919.tif 000003
【００４４】
行列の記号についていうと、式（１）の垂直オペレータは３×３の核であり、左側において、画像を横断して右方向に向かう勾配を見つけるのに使用される。また、式（２）の水平オペレータは３×３の核であり、画像を縦断して上から下に生じる勾配を試験するのに使用される。これらの画像行列において作用する核は、下記の式（３）と（４）で与えられる。
【００４５】
【数３】
0003748919.tif 000004
【数４】
0003748919.tif 000005
【００４６】
式（３）と（４）にある行列の形は、どちらが垂直演算子でどちらが垂直演算子であるかを示している。また、これらの行列においては、一方の側は負数であり、他方の側が正数である。このため、方向に感度を有する勾配ディテクタが生成される。したがって、もしＰi,j が縁の特徴の境界上、例えば図１４のパッケージ線Ｘ１Ｘ２上にあるときは、下記の式（５）で与えられる勾配値の符号は、この画素が境界の左にあるか右にあるかを指示する。
【００４７】
【数５】
0003748919.tif 000006
【００４８】
本発明で用いられる好ましいアルゴリズムは、例えば８ビットの明るさを表すスケールにおいて、明るい画素は大きな絶対値をもつという規約に則っている。このスケールにおいては、すべての値は０から２５５の範囲に収まる。このため、暗い境界の右側にあるＰi,j については、正の勾配Ｇi,j が予想される。一方、暗い境界の左側においては、負の勾配が予想される。サーチベクトルが出会う縁特性の側がどちらであるかを識別するこの能力は、正しいパッケージの境界位置を定める追加確認の役割を果たす。サーチベクトルの行程において勾配の符号が切り替わるということは、境界が存在することを示す。
【００４９】
パッケージの境界位置を正確に特定すると、検査の効率が向上する。詳しく述べると、処理の後の方の段階で使用されるメモリの量を最小にするため、パッケージ像の一部だけをレンズ発見のために捜す。パッケージ像の一部は、所定の大きさ・形状を有するマスクによって覆われ、またパッケージ像に重畳された領域である。マスク自体は、一定のパッケージの特徴部あるいは境界から所定の距離をおいて位置させることにより、パッケージ像の上に位置するようになる。もしマスクが、パッケージ像中で不正確に位置させられると、通常のパッケージの特徴部がレンズと誤認されることがある。マスクを正確に位置させられるかどうかは、マスクの位置設定に使用されるパッケージの特徴部を正確に位置させられるかに依存し、好ましい態様では、ベクトルＡ１とＢ１に沿ったサーチ（捜索）の正確さに依存する。
【００５０】
時に、単一のサーチベクトルでは、所望の正確さでパッケージ特徴部の位置データが得られないことがある。例えばブリスターパックに水滴が落ちて、サー美ベクトルＡ１とＢ１の収斂を妨害したときには、プロセッサボード５４は、ラインＸ１Ｘ２の幅を正確に定めることができないおそれがある。このため、サーチのアルゴリズムには冗長部を設ける。例えば、ラインＸ１Ｘ２の縁を発見するため、サーチベクトルを３対導入する。もし第１の対Ａ１，Ｂ１が水滴による妨害を受けたときは、画像処理装置は第２のベクトル対Ａ２，Ｂ２を用いる。そして、もし第２の対がパッケージの縁を識別し損ねたときは、このアルゴリズムは、その縁を発見するため、第３の対Ａ３，Ｂ３を用いる。これらベクトルの一対でもラインＸ１Ｘ２を見つけるのに十分であるかどうかを判定するため、ベクトルＡ１とＢ１の終端の間の差を、ラインＸ１Ｘ２の予想される幅の閾値と比較する。例えば、Ａ１とＢ１の終端が、ラインＸ１Ｘ２の予想される幅より４画素を越えて離れている場合は、第２のサーチベクトル対を使用する。画素の水平および垂直方向の解像度は、このような場合には互いに異なることに注意しなければならない。すなわち、センサの形状により、画素の大きさにおける垂直方向の許容差は、水平方向の許容差とは異なる。
【００５１】
最初にラインＸ１Ｘ２の位置を決定した後、このラインの位置は、ベクトルＧ１、Ｇ２、Ｇ３とＨ１、Ｈ２、Ｈ３の第２のセットに従って検索することにより、二重に調べられる。ベクトルＨｎとＧｎに沿った検索は、ベクトルＡｎとＢｎに沿った検索と同様にして行われる。しかし、ＨｎとＧｎベクトルは、ＡｎとＢｎベクトルより正確に位置される。すなわち、ＨｎとＧｎに沿った検索は、ＡｎとＢｎベクトルに沿った検索より、パッケージの縁により近いところから始まる。これは、この点におけるパッケージの位置、特にラインＸ１Ｘ２の位置についてより多くのことが知られているからである。
【００５２】
パッケージの頂点の位置、特にパッケージのｙ軸に沿った頂点の位置は、図１４に示したＹＤｎおよびＹＣｎベクトルのような、一もしくはそれ以上のベクトルに沿って下方に検索することにより見つけられる。パッケージの頂点に対する水平縁を発見した後は、パッケージの空隙もしくは井戸７２における第１の水平もしくは長手軸方向の縁が見つけられる。図１４において、この縁はＺ２Ｚ３と指定されている。そして、これは、Ｆｎベクトルのような一もしくはそれ以上のサーチベクトルに沿って検索することによって見つけられる。これらＦｎベクトルの出発点は、非常に正確に定められる。Ｘ１Ｘ２およびＹ１Ｙ２のすでに知られた位置のおかげで、また第１４図に示すように、Ｆｎパッケージの出発位置は、わずかな距離をおいて離隔された複数のパッケージの特徴の間にある。
【００５３】
ｂ）パッケージボウル内でのマスク領域の設定
ラインセグメントＹ１Ｙ２とＺ２Ｚ３が見つかったら、処理マスクもしくはテンプレートの第１点を計算する。このマスクの第１点は、各ラインＹ１Ｙ２およびＺ２Ｚ３からそれぞれ所定の距離を相殺して得られる。より詳しくいうと、Ｙ相殺量は、Ｙ１Ｙ２ラインの行座標に加算して得られ、Ｚ相殺量は、Ｚ１Ｚ２ラインの列座標に減算して得られる。図１４において、このＹ相殺量は、Ｌ３とラベル付けされている。そしてこの相殺量は、パラメータ「A1 row ofs」と呼ばれる。また、Ｚ相殺量は、Ｌ１とラベル付けされ、この相殺量は、パラメータ「A1 col ofs」と呼ばれる。これらのパラメータは、好ましくはユーザーにも使用できる定数（すなわちユーザーが利用できまたその値を変えることがてきる）であるのが好ましい。
【００５４】
この第１のマスクポイントが定まると、マスクを区画する複数の追加ポイントが決定される。例えば、図１４に示す用に、マスクの区画には９個のポイントが用いられている。すなわち、８個の追加ポイントの位置は、例えばまずすべてのマスクポイントについて名目的なアドレスの位置をプロセッサ５４に記憶しておき、ついで第１のマスクポイントの実際の位置と名目的な位置の差たる相殺量を決定し、これを先の各追加マスクポイントの名目的な位置に加えることによって定められる。下記の式（６）と（７）は、このマスクの第２ポイント決定の手順を数学的に表したものである。
【００５５】
【数６】
0003748919.tif 000007
【数７】
0003748919.tif 000008
【００５６】
各追加マスクポイントの行と列の位置を決定するのにも、同様の式が用いられる。
【００５７】
また、マスクの名目的な周縁部にある画素も、プロセッサメモリに格納される。この名目的な周縁部は、マスクを区画する９個のポイントの名目的なアドレスから数学的に決定される。また、この名目的な周縁部をプロセッサメモリに入れるため、図表的なプログラムも用いられる。例えば、ディスプレーは、マスクを区画する９個のポイントの位置を示す入力モニタ６２に形成され、カーソルはこれらのポイントの間で、マスクの周縁部をなぞりながら移動される。カーソルが画素から画素へ移動すると、カーソルになぞられたマスク周辺部にある各画素のアドレスは、プロセッサのメモリに追加される。何らかの実際の画像に二重写しにされたマスクの実際の周縁部は、名目的なマスク周縁部にある各画素のアドレスに、その特定の画像について計算された上述のｙ相殺量およびｚ相殺量を追加することによって定められる。アルゴリズムは、第３ポイントないし第９ポイントについて指定される。
【００５８】
ｃ）ベルト位置の確認
図１４に示すように、コンベアベルト３２の輪郭は、画像アレー４６に形成される画像上に現れる。このベルト３２の輪郭がマスク領域に侵入すると、ベルトは、画像処理装置５４には、レンズとして認識される。このような事態が起こるのを避けるため、コンベアベルトの位置に許容差を与えられるよう、マスク領域は最大に許容できる領域よりも小さくしておく。また、ベルトの位置は、図１４にＩｎで示したようなサーチベクトルに沿って検索することにより、画像内で検出される。ベクトルＩｎに沿った検索により、ベルトの頂縁でポイントもしくは画素がとらえられると、このラインはコンベアベルトの頂縁を表すもので、もし何らかのポイントでこのラインがマスクの境界を横切る場合は、エラー信号が発せられ、ブリスターパックは不合格となる。このような事態は、ベルト３２がその通常位置から移動した場合にのみ起こるのが好ましい。
【００５９】
［画像分割］
次に、画像分割と呼ばれる処理においては、処理マスク内の画像領域は、画像領域が識別される小さな部分および対象に分割される。システム１０で用いられる好ましいアルゴリズムにおいては、画像は、グレーレベルにある急激な変化に従って分割される。この変化を見つける上では、単一のポイントやラインは、対象の縁全体ほど重要ではない。
【００６０】
ｅ）縁の検出
ベクトルの表示においては、カメラ画素アレー４６に見られる、あるいはこのカメラ画素アレー４６上に形成される画像が、センサの行と列の位置の関数として記述される。対象を画像のバックグラウンドノイズから識別するには、勾配演算子を使う。好ましいアルゴリズムは、まず画像領域内で縁を捜し、ついでこれらの縁をレンズの縁かどうか決定するため分析する。
【００６１】
マスク領域の内側で縁を捜す好ましい方法は、画像関数ｆ（ｘ，ｙ）の照明値もしくはグレーレベルに係る画像アレーの二次元偏微分による近似である。画像の二次元勾配は、次のベクトル式で表される。
【００６２】
【数８】
0003748919.tif 000009
【００６３】
勾配ベクトルの大きさは、画像関数の二つの偏導関数の絶対値を合計することによって近似的に求められる。
【００６４】
【数９】
0003748919.tif 000010
【００６５】
ゾーベル(Sobel) 演算子として知られる水平および垂直演算子は、Ｇx およびＧy に代えて垂直および水平周縁演算子Ｖi,j およびＨi,j を用いることによって得られる。
【００６６】
【数１０】
0003748919.tif 000011
【００６７】
Ｖi,j およびＨi,j は、すでに述べた式（３）と（４）で与えられる３×３の核演算子から求められる。
【００６８】
Ｖi,j およびＨi,j の演算子は、ゾーベル演算子によって使用されるため、この演算は、関心の対象たるポイントＰi,j に対する勾配の方向には関知しない。ゾーベル演算子の場合は、方向に感度をもつことは必要ではない。レンズの酢地は、その位置と方向によって非常に異なるため、検出に好ましい幾何配置というものはないからである。したがって、ウエハ検査のような半導体産業で使用される簡単な技術は、コンタクトレンズの場合には効果的がない。パッケージ６６でレンズを検出するには、簡単なパターンのマッチングではなく、完全な画像の分割と分類が要求される。
【００６９】
処理マスクを使用すると、画像当り１００万回を越える演算を省略でき、ブリスターパック３０の検査も比較的小さな回数で行えばよいようになる。より詳しくいうと、ゾーベル演算子は、画像のあらゆる点において、二つの３×３核演算子が一緒に加えられることを要求する。６４０×２４０画像行列について単一の３×３核演算子を用いると、1,398,276 回の演算が必要になる。すなわち、６４２×２４２のメモリ位置それぞれについて９回の演算で足りる。処理マスクは、レンズが存在すると予想される場所に置かれるが、この場所ではレンズは３２００個未満の画素を占有する。このための演算は３×３核演算子について３１０００回より少なくて済む。ゾーベル縁演算子は、実際には画素当り１９回の演算を行うから、マスクに覆われる３２００個の画素については６４５００をわずかに越える回数になる。当業者には理解されるように、パッケージがレンズを収めているかどうかを判断するに当って、この比較的小さな画素領域を効果的に使用するためには、処理マスクを正確に位置させることが必要である。これは、マスクの位置設定に使用されるパッケージの特徴部が正確に位置されねばならないことを意味する。
【００７０】
ｂ）対象の探知
マスク領域内で対象の縁が見つかると、アルゴリズムは、縁を対象にまとめる。このためには適当な連結操作が行われる。例えば、縁は８個連結分析と呼ばれる技術を使って対象にまとめられる。この技術においては、第１の画素が特定の対象の縁と分ると、８個のすぐ隣接の画素が、第２の縁に当る画素を求めて一定の方向に検索される、そして第２の縁画素が見つかると、それは特定の対象の縁にあるとみなされる。そしてこの手法が繰り返され、この第２の縁画素の８個の隣接画素について第２の縁画素を求めて一定の方向に検索される。この方法は、縁もしくは対象追跡法と呼ばれるが、縁の終端が見つかるか、またはこのようにして判別された縁画素によって形成される縁が閉じたループを形成するまで、より詳しくは、縁が特定の対象の第１の縁画素に戻ってくるまで繰り返される。
【００７１】
図１６（ａ）と１６（ｂ）は、この８個連結分析法をより詳しく説明するものである。これらの図において、各画素は、各画素の回りでの検索をよりよく説明するため、点で示されている。図１６（ａ）は、対象の縁上にあると判別された第１の画素Ｐi,j を示す。８個の隣接画素は、Ｐi,j のすぐ上にある画素から始まって、反時計回りに検索される。この検索に合致することが分った第１の画素は、図１６（ａ）においては画素Ｐi,j+1 に当る次の縁の画素であるとみなされる。
【００７２】
図１６（ｂ）に示す次の工程においては、Ｐi,j+1 に係る８個の隣接画素が、次のような画素を求めて、Ｐi,j+1 のすぐ上の画素から始めて、反時計方向に再度検索される。その画素とは、（ｉ）所定の閾値を上回るグレーレベルを有し、(ii)直前の検索の中心となった画素でないものである。この検索に見合う第１の画素は、次の縁画素とみなされ、図１６（ｂ）においては次の縁画素Ｐi,j+2 である。この追跡は、検索が画素Ｐi,j に戻ってくるか、または与えられた画素の回りの検索が次の縁画素を突き止めるのに失敗するまで続けられる。
【００７３】
上述の方法において、特定の対象の縁上にあると判別された画素は、追跡対象と呼ばれるものの縁ないし輪郭を形成する。追跡対象の形は、この追跡の基になった最初の画像対象の形とは異なっている。これは、上述の８個連結分析においては、たとえ画素が対象の画像の縁上になくても。画素は縁画素として識別されるという事実の結果である。この第１の非縁画素から、アルゴリズムは、対象とする画像の実際の縁から外れるよう、その実際の縁に戻るまで続けられる。
【００７４】
より詳しくいうと、これは、グレー値における対象の画像の縁と、対象の縁に隣接する画像領域の間の差ないしコントラストは、対象の縁に沿って変化していくという事実による。コントラストが大きいとき、すなわち対象の縁が明瞭であるときは、３個連結分析は対象の縁に沿って追跡する。しかし、コントラストが小さいとき、すなわち対象の縁が不鮮明であるときは、８個連結分析はその縁画素は、非縁画素と判断する。
【００７５】
実際の縁と追跡した縁の間にあり得る差は、図１７（ａ）〜（ｄ）および図１８（ａ）〜（ｄ）を参照するとさらによく理解できる。図１７（ａ）〜（ｄ）は、レンズパッケージにおいて検出される可能性のある典型的な４個の対象を示している。図１７（ａ）〜（ｄ）は、上述の８個連結分析により、これらの図に示した対象の縁に沿って追跡し得られた縁を示す。
【００７６】
図１７（ａ）〜（ｄ）に示した態様はすべてレンズの画像であるが、図１７（ａ）と（ｃ）は折り曲げられていないレンズを、図１７（ｂ）と（ｄ）は折り曲げられたレンズを示す。
【００７７】
図１７（ａ）と（ｂ）に示した対象の全周縁は明瞭であるが、図１７（ｃ）と（ｄ）に示した対象の周縁には明瞭な部分とそうでない部分がある。図１７（ａ）〜（ｄ）に示した対象は、その形状と明瞭度に応じて、それぞれ折り曲げられていないレンズ、折り曲げられたレンズ、不鮮明な縁を有する折り曲げられていないレンズ、不鮮明な縁を有する折り曲げられたレンズと呼ばれる。好ましくは、対象は、図１７（ａ）〜（ｄ）に示したように、反時計回りに追跡される。図１７（ａ）〜（ｄ）に示したレンズ縁においては、いくつかのセグメントは、巣追跡中に喪失ないし除去されており、図１８（ａ）〜（ｄ）に示したように三日月ないし弧状となっている。ゾーベル演算子によって発見され、「edge thr」 と呼ばれる所与の値を上回る大きさの勾配をもつレンズだけが、プロセッサ５４のメモリに格納される。一部がマスク領域の外に位置するレンズは、マスクの境界において周縁特性を示さない。
【００７８】
図１７（ａ）と（ｂ）に示した対象は全周縁が明瞭であるため、８個連結分析は、図１８（ａ）と（ｂ）に示したような全周縁にわたり、対象の実際の周縁に沿って追跡を行う。８個連結分析はまた、図１７（ｃ）と（ｄ）に示した対象の明瞭な部分に沿って追跡を行う。しかし、この連結分析が対象周縁の不鮮明な部分に到達すると、分析は実際の対象周縁から外れ、より明瞭なグレーレベルの勾配によって形成される画像の周縁に沿って追跡が行われる。
【００７９】
レンズがロボット２２によって放出されると、レンズはパッケージ６６を好ましくは片側に打ちつける。しかし依然として宙に浮き角運動量を保持しているレンズの自由縁は、パッケージに付着したレンズの一部に覆いかぶさって折れ曲がる。図１７（ｂ）は、画素アレー４６の一つに形成されるパッケージ画像に現れるそのような折れ曲がったレンズの縁を示し、図１８（ｂ）は、レンズ縁が対象追跡ルーチンによって追跡されたときに形成される輪郭を示す。図１９に示すように、８個連結アルゴリズムにおいては、レンズ外形の輪郭だけが決定される。形状は、形状は対象ラベル付けという次の工程で完全に記述される。
【００８０】
画像歪みの第２の型の場合は、レンズが視野にあるマスク内に完全に収まっていたとしても、三日月形の対象を分割しなければならない。対象を追跡しようとしても、不鮮明な縁はなぞることはできない。例えば、レンズに過剰に水があると、レンズとパッケージの間の接触を円滑にする傾向があるが、これはレンズの湿潤した縁における観察可能なコントラストを弱める。もし、レンズが一部マスク境界の外にあると、小さな歪みが生ずる。レンズがマスクの空間的な境界を横断するところでは、画素ごとに光を異なって屈折するレンズの物理的な縁は存在しない。したがって、観察可能な周縁信号はほとんどない。一方、レンズのしわによるレンズ内部でのランダム領域には、明るさの振幅の小さな変動があるため、不鮮明な周縁信号の代わりに追跡される。その結果、レンズの両側は、追跡によってはつながらず、弧状の外形が形成される。
【００８１】
レンズの不鮮明な周縁は、もし定義可能なパラメータ「edge thr」が低い値に設定されるならば、プロセッサボード５４によって識別される。しかし、照明サブシステム１４は、好ましくは、ここからの照明がカメラの監視下にあるすべての対象についてコントラストを最大にするように設計され、小さな「edge thr」の値は、アルゴリズムに対し、パッケージ表面の詳細からより多くの事項ないし特性を、対象として識別させる。
【００８２】
対象の追跡は、所与の対象について最初の出発点に戻ってくれば、完了する。プロセッサボード５４は、ゾーベルの演算から十分に高い勾配結果を有する画素についてマスク領域を検索する。一旦そのような画素が蜜から卯と、プロセッサ５４は、そのような隣接画素はすべて発見し、さらに第１の画素が再度位置付けされるまで、隣接画素の検索を続行する。対象は、そのとき発見されたとみなされる。画像処理装置５４は、マスクの境界内において、すべての画素についてこのサイクルを繰り返す。
【００８３】
ｃ）対象のラベル付け
発見されたすべての対象は、ついでラベル付けされる。ラベルの過程において、各対象の内側にある画素は、すべて同じ予め設定されたグレーレベルを与えられるが、このグレーレベルは、各対象で異なっているのが好ましい。この予め設定されたグレーレベルは、モニタ６０の送られてきたビデオ信号についてディスプレー検索表で識別される一連の識別色に対応する。一般に、グレーレベル値を、各対象の内側にある画素に割り当てるためには、プロセッサ５４は、各画素について境界条件を認識し、ついでその境界内にある各画素に適当なグレーレベル値を与える。グレーレベル値を各対象の内側にある画素に割り当てるためには、標準的な形態学ルーチン（対象充填と呼ばれる処理）が用いられる。各対象は閉じた周縁を有するため、形態学ルーチンは、簡単なものである。
【００８４】
画像分割処理の最終工程である対象へのラベル付けの間、各対象は数個の数値による識別子を与えられる。第一に、対象は順番に番号を付され、各対象の内側にある画素に割り当てられる上述の色の値が対象の番号に対応し、またこの対象番号によって定められる。数値データはまた、周辺、面積、アスペクト比、および複雑さ（画像が入り組んでいること）とよばれるパラメータに対しても与えられる。
【００８５】
対象の周縁は、対象の周縁で遭遇した画素の全個数として定義される。図１８において、対象のアスペクト比は、比ａ／ｂとして定義され、対象の面積は、咳ａ・ｂと定義される（ここでａとｂはそれぞれ対象の幅と高さである）。対象の幅は、ラインＸ１Ｘ２に垂直な方向に対象を横切って引かれる最も長いライン節面との長さとして定義される。そして、対象の高さは、ラインＸ１Ｘ２に平行な方向に対象を横切って引かれる最も長いライン節面との長さとして定義される。当業者には理解されるように、面積パラメータは、対象の大きさを正確に指し示すものではない。その代わり、このパラメータは、対象を完全に包囲して境界ボックスと呼ばれる最小の矩形の大きさの近似値を与える。
【００８６】
複雑さのパラメータは、対象の外形の複雑さに係る測度であり、より詳しくは、対象の境界における方向変化の相対的な頻度を表す。例えば、複雑さは、ｐ2/Ａの比で定義される（ここでｐは対象周縁の長さ、Ａは上述の対象の面積値である）。対象のアスペクト比、面積、および複雑さは、数学的にはそれぞれ以下のように表される。
【００８７】
【数１１】
0003748919.tif 000012
【数１２】
0003748919.tif 000013
【数１３】
0003748919.tif 000014
【００８８】
各対象は、こうして番号、色および４個の数値的な記述子を与えられる。対象の番号と色は、同定の目的で使用され、面積、周縁、アスペクト比および複雑さは、分類の目的で使用される。
【００８９】
［対象の多重分類］
マスクの内側にある各対象はレンズ候補と考えられ、対象分割が完了した後、レンズ候補となった各対象は、分類アルゴリズムに従って処理ないし分類される。マスク内にみられるすべての対象の分類は、好ましくは、一次決定型の分類器によって行う。
【００９０】
多くの一次決定型の分類器は、本発明で使用することができる。例えば、図２０は、簡単な二次元一次分類器を示す。より詳しくいうと、図２０は、ｘ−ｙグラフ上での二つの対象グループをプロットしたものである。３個の対象からなる第１のグループ（サンプル番号１）は、レンズではなく、サンプル番号３でしめされるもう一つの対象グループがレンズである。図２０のｘ軸とｙ軸は、上述の追加パラメータのうち二つを表すことができ、対象の二グループのプロットから、それぞれ離隔したクラスター（集団）を形成することができる。
【００９１】
図２０に示すように、数値的記述子に基づくデータ値のクラスターへの分類は、代表的な画像が分割されれば行われる。代表的な画像は、数値記述子が、被検対象の識別可能な特性に独立に相関する場合にのみ、そのようなクラスター分けを実現する。例えば、図２０における特性１の軸は、サイズ（大きさ）を表す。
【００９２】
図２０に示すように、サンプル番号１の対象をサンプル番号３の対象と分別するラインは容易に引くことができる。実際、少なくとも二つの明瞭に区画される決定境界は、クラスター分けされるデータに対する要求を間属する。すなわち、レンズと非レンズを明白に区別する。しかし、図２０にプロットされたデータは、どの決定境界が最もよいかについては明瞭には示していない。サンプル１とサンプル３は、二つの境界線によって正しく分類されている（すなわち両者が各線の正しい側に位置している）かのように表される。しかし、二つの境界線の間にはかなり大きな面積があり、サンプル番号２で表される対象は、二つの境界線の間にプロットされるが、プロットされた対象の二つのクラスターのうちどちらに属するのかは明瞭ではない。サンプル２は、例えば、大きな水滴もしくは折れ曲がったレンズの可能性もある。このため、対象分類工程における好ましい態様においては、一次分類を行うのにより多くの情報を使う。
【００９３】
雛形となるシステムの最初の試験によれば、決定が面積および周縁の記述子だけを基に行われるならば、約７０％の決定は正しいことが判明した。多次元の決定関数は、決定の正確さを増大させる。分類を最も効率的にまとめるためには、決定関数の感度に基づいた誘導が行われる。決定関数は、好ましくは次の式で表される４次元関数である。
【００９４】
【数１４】
0003748919.tif 000015
【００９５】
式（１４）は、マスク境界内の全対象について各対象ｉを分類するため、決定関数と呼ばれる。対象記述子Ａ、Ｐ、ＲおよびＣはそれぞれ、対象ラベル付けの間に各画像の各対象について測定ないし決定される面積、周縁、アスペクト比および複雑さを表す。ωa 、ωp 、ωr 、ωc およびω5 は、分類ウエート付けベクトルと呼ばれる。ωa 、ωp 、ωr およびωc はそれぞれ、対象に割り当てられた面積、周縁、アスペクト比および複雑さに対するウエートを表し、ω5 は定数である。
【００９６】
もしＤi が０より大きい場合には、ウエート付けベクトルに数値が割り当てられるとともに、対象ｉはレンズではないとラベル付けられる。他方Ｄi が０以下である場合には、対象ｉはレンズであるとラベル付けられる。この条件を数学的に表すと、
【００９７】
【数１５】
0003748919.tif 000016
【００９８】
上述の値は、決定の正確さが９９％を上回るように、ウエート付けベクトルに割り当てられる。
【００９９】
幾千もの対象について、重畳する記述子の境界を用いながら、レンズもしくは非レンズという対象クラスを正確に分別するためには、パセプトロンアルゴリズムを用いて、式（１４）のベクトル定数をコンピュータでモデル化する。パセプトロン(Perceptron)アルゴリズムは業界で知られており、式（１４）におけるウエート付けベクトルの値を定めるには、そのうちの適当なアルゴリズムが用いられる。パセプトロンアルゴリズムは、例えば、Tou およびGonzalez著，「Pattern Recognition Principles」, Addison-Wesley Publishing Company (1974 年）の第５章に説明がある。通常、パセプトロンアルゴリズムは、決定的でかつ修正し得るパターン分類法である。分類する対象の複数の数学的な記述子の間の統計的な関係については、何の仮定も行われない。パセプトロンアルゴリズムは、解答が存在するという仮定をもっている点において決定的である。
【０１００】
与えられたデータは、二つのクラス分けのための計算が始まる前に、分けられる。非レンズ記述子のデータパターンには、すべて−１が乗ぜられる。例えば、ｘi が数値記述子Ａ、Ｐ、ＲおよびＣを含むトレーニングパターンのセットを表す場合は、アルゴリズムは、解答であるウエート付けベクトルω* を与える（ここでω* ｘi ＞０、ω* ＝ωa 、ωp 、ωr 、ωc またはω5 である）。
【０１０１】
図２１は、レンズ確認システムから取り出した実際のデータの複雑さを例証するものである。この図は、わずか３００個のデータを３次元空間に示すものである。図２１のデータを引き出す基となった画像は、理想的なレンズおよび水滴の代表であるが、簡単に区画できるクラスターは見当たらない。分類の正確さを上げるためには、４次元、５次元といった多次元面を境界として使用するのが好ましい。
【０１０２】
パセプトロンアルゴリズムによってωa 、ωp 、ωr 、ωc およびω5 に対する適当な値が求まると、決定関数は、恒久的にプロセッサボード５４のメモリに入れられる。次いで、全画像のマスク領域内で遭遇したすべての対象を分類するため、Ｄi を用いる。
【０１０３】
対象の適当な特徴、数値記述子および決定関数分類用のウエート付けベクトルのモデル化は、システム１０が高い精度を発揮するのを助ける。モデルの正確さを改善するためには、パセプトロンアルゴリズムが報酬と罰の概念を使用することである。本質的には、トレーニングセットから得られるすべてのデータパターンは、ｋ番目のω* ベクトルモデルを通して実行される。そして、もし決定が正しくない場合は、ω* はつぎのｋ＋１番目の試行のために因子ｃ分だけ増加させられる。先の罰とは、コンピュータは再計算しなければならないということであり、報酬とは計算を終えることである。
【０１０４】
ウエート付け因子の１組のセットを決定するため、８０個のパッケージ画像を分析し、処理した。この８０個のパッケージのうち、４０個はレンズを収め、残りの４０個にはレンズを収めなかった。種々の大きさの水滴をレンズを収めていない４０個のパッケージに含ませた。画像上に置かれた処理マスク内で見つかった各対象についての数値記述子は、記録しておいた。数値記述子の全８０個のアレーは、パセプトロン分類アルゴリズムを通された。このパセプトロンアルゴリズムでの計算の結果、上述の式（１４）の形のベクトルが得られた。分類用ウエート付けベクトルωa ，ωp ，ωr ，ωc およびω5 をこのパセプトロンによる計算結果に置き換えたところ、次式（１６）が得られた。
【０１０５】
【数１６】
0003748919.tif 000017
【０１０６】
試験においては、式（１６）を採用した画像処理装置（プロセッサ）５４は、数千のパッケージ画像のマスク内にある各対象を分類するのに使用された。プロセッサは、各パッケージを、「レンズ存在」と「レンズ不存在」という二つのクラスの内どちらに属するかを判別する。より詳しくいうと、各パッケージは、プロセッサがパッケージ中でレンズを発見したか発見しないかによって、「存在」と「不存在」のカテゴリーのどちらかに分別される。これらパッケージ画像はそれぞれ、モニタ６０上でオペレータによって観察され、プロセッサ５４による分類はそれぞれ、人手によって正しいか正しくないかを判定される。この結果、「不存在で正しい」、「不存在で誤り」、「存在で正しい」、および「存在で誤り」の４個の分類結果が想定される。
【０１０７】
検査した６５１６個のパッケージのうち、プロセッサ５４は、２７２個を正しくレンズ不存在と判定し、６４個を誤ってレンズ不存在と判定した。またレンズ存在と誤って判定したのが４個あった。
【０１０８】
この確認システムを改善するため、追加実験を行った。すなわち、数値記述子についての追加データを収集するため、追加のパッケージ画像を分析し、処理した。これら追加のデータのサンプルを図２２に表の形で示す。これらのテストにおいて、マスクで見つかった対象は、対象のパターンに基づいて、「丸型」、「パックマン型」、「折り曲げ型」および「オンサイド型」と呼ばれるグループの一つにそれぞれ分類される。２個以上のグループに入りそうで議論のあるボーダーラインの対象は、データから除外した。
【０１０９】
図２２の各表は、５列の情報を含む。第１の列は対象についての境界ボックスの大きさを、第２の列は複雑さを、第３の列はアスペクト比を、第４の列は周縁を、そして第５の列は型のコードをそれぞれ表す。
【０１１０】
これらの表において、典型的な丸型のレンズは、最も右側の列にある番号「１」によって表される。折り曲げ型、オンサイド型およびパックマン型のレンズは、それぞれコード「Ｆ」、「ＯＳ」および「Ｐ」で表される。折り曲げ型のレンズは、マスク内のどこでもみられ、一度ないし二度折り曲げることができる。オンサイド型のレンズは、マスクの縁に現れ、完全には見えない。パックマン型のレンズは、一般的には丸型をしているが、縁が不鮮明である。不鮮明な縁は、分割されたとき、三角形の形状内で喪失領域となる。水滴の画像は、コードＷで示した。このデータをパセプトロンアルゴリズムで処理すると、すべてのコードは、数値で置き換えられる。Ｆ、ＯＳおよびＰコードは、番号１で、そして水滴のコードは、−１で置き換えられる。
【０１１１】
これら追加の実験において、数値記述子は、３２８個の対象（半分はレンズ、もう半分は水滴である）について編集した。これらのデータは、パセプトロンアルゴリズム用の計算を編集し実行するSun Microsystems Sparcstation 1 に入力した。この処理の結果は、一次決定関数の形で、下記の式（１７）に示す。この式（１７）は４次元境界面を区画する。
【０１１２】
【数１７】
0003748919.tif 000018
【０１１３】
数個のプロセッサボードを式（１７）を使ってプログラムし、１６０００個を越えるパッケージ画像のマスク内にある各対象を分類するのに使用した。これらの試験は、図２３の表と棒グラフにまとめた。図示のように、約０．２２％のパッケージだけが誤ってレンズ不存在と判別され、また０．１％未満のパッケージがレンズ存在と誤って判断されたにとどまった。
【０１１４】
以上、本発明について十分に説明してきたが、当業者ならば数多くの変形例や他の態様を見つけ得るだろう。しかし、本発明の真の趣旨および範囲内に収まる変形例や他の態様は、すべて本出願の特許請求の範囲に包含される。
【０１１５】
本発明の具体的な実施態様は以下の通りである。
（Ａ） 透明なパッケージにおけるレンズの存在を確認する方法であって、
パッケージを検査位置に送る工程と、
画像面上にパッケージの画像を形成するため、光ビームをパッケージを通して画像面に送る工程と、
画像面上での画像を表す信号のセットを発生させる工程と、
パッケージにレンズが存在するかどうかを判断するため、これらの信号を分析する工程を含む方法であり、
この分析工程は、
i)不連続な対象の画像についてパッケージ画像を検索する工程と、
ii）パッケージ画像で発見された各対象の画像について、複数のパラメータの値を同定し、対象がレンズであるか否かを判別するため、これら同定された値を所定の手順に従って分析する工程と、
iii)パッケージ画像にある対象画像が一個でもレンズであると判別されたときにレンズ存在信号を発生させる工程と、
iv）パッケージ画像に対象画像が一つも見つからない場合か、パッケージ画像にある対象画像がすべてレンズでないと判別されたときに、レンズ不存在信号を発生させる工程を含む方法。
１）前記同定された値を分析する工程は、前記パラメータのそれぞれについて、
ｉ）パラメータにウエートを割り当てる工程と、
ii）パラメータのウエート付けした値を求めるため、前記パラメータについて同定された値に前記パラメータに割り当てられたウエートを乗ずる工程と、
iii)前記パラメータのウエート付けされた値を加算して合計値を求める工程と、
iv）対象がレンズであるか否かを判別するため、前記合計値を所定の値と比較する工程を含む実施態様Ａ記載の方法。
２）前記複数のパラメータについて値を同定する工程は、少なくとも４個のパラメータについて値を同定する工程を含み、
前記同定された値を分析する工程は、
ｉ）パラメータにウエートを割り当てる工程と、
ii）前記同定された値を次の式に従って分析する工程と、
Ｄ＝ωa Ａ＋ωp Ｐ＋ωr Ｒ＋ωc Ｃ＋ω5
（ここでＡ、Ｐ、ＲおよびＣは前記４個のパラメータに割り当てられた値であり、ωa 、ωp 、ωr およびωc は前記４個のパラメータに割り当てられたウエート、そしてω5 は所定の定数である）
iii)もしＤが０以下であるときは対象をレンズとして認定し、Ｄが０より大きいときは対象をレンズではないと認定する工程を含む方法。
３）前記発見された各対象の画像は周縁を有し、前記複数のパラメータについてその値を同定する工程は、前記対象画像周縁の長さを求める工程を含む実施態様Ａ記載の方法。
４）前記発見された各対象の画像は幅と高さを有し、前記複数のパラメータについてその値を同定する工程は、
前記対象画像の幅ａと高さｂを求める工程と、
式Ａ＝ａ・ｂにより、パラメータの一つについて値Ａを求める工程を含む実施態様Ａ記載の方法。
５）前記発見された各対象の画像は幅と高さを有し、前記複数のパラメータについてその値を同定する工程は、
前記対象画像の幅ａと高さｂを求める工程と、
式Ｒ＝ａ／ｂにより、パラメータの一つについて値Ｒを求める工程を含む実施態様Ａ記載の方法。
（Ｂ） 透明なパッケージにおけるレンズの存在を確認する方法であって、
パッケージを検査位置に送る工程と、
画素アレー上にパッケージの画像を形成するため、光ビームをパッケージを通して画素アレーに送る工程と、
前記アレーにある画素の少なくとも一群のそれぞれに入射した光の強度を表す各データ値を生成する工程と、
パッケージにレンズが存在するかどうかを判断するため、これらデータ値を分析する工程を含む方法であり、
この分析工程は、
i)前記画素アレー上にあるパッケージ画像の選択領域を同定する工程と、
ii）レンズがパッケージに存在するかどうか判断するため、前記選択領域にある画素に入射した光の強度を表すデータ値を分析する工程を含む方法。
６）前記パッケージは周縁を有し、前記パッケージ画像の選択領域を同定する工程は、
パッケージの周縁画像を同定する工程と、
パッケージの周縁画像から予め設定した距離にあるパッケージ画像の予め設定した領域を同定する工程を含む実施態様Ｂ記載の方法。
７）前記パッケージは、空隙と、この空隙の覆って延び周縁を有するカバーを備え、
前記パッケージ画像の選択領域を同定する工程は、前記カバーの周縁画像から予め設定した距離にある予め設定した領域を同定する工程を含む実施態様Ｂ記載の方法。
（Ｃ） 透明なパッケージにおけるレンズの存在を確認するためのシステムであって、
パッケージを検査位置に送る搬送サブシステムと、
画素アレーと、
画素アレー上にパッケージの画像を形成するため、光ビームを生成し、この光ビームを前記検査位置にあるパッケージを通して前記画素アレーに送る照明サブシステムと、
前記画素上での光ビームの強度を表すデータ値を前記画素の少なくとも一群のそれぞれに割り当てるデータ値生成器と、
パッケージにレンズが存在するかどうかを判断するため、これらデータ値を処理するプロセッサを含むシステムであり、
このプロセッサは、
i)不連続な対象の画像についてパッケージ画像を検索する手段と、
ii）発見された各対象の画像について、複数のパラメータの値を同定し、対象がレンズであるか否かを判別するため、これら各対象画像のパラメータについて同定された値を所定の手順に従って分析する手段と、
iii)パッケージ画像にある対象画像が一個でもレンズであると判別されたときにレンズ存在信号を発生させ、またパッケージ画像に対象画像が一つも見つからない場合か、パッケージ画像にある対象画像がすべてレンズでないと判別されたときに、レンズ不存在信号を発生させる信号発生器を含む方法。
８）前記パラメータの値を同定する手段は、
ｉ）各パラメータにウエートを割り当てる手段と、
ii）パラメータのウエート付けした値を求めるため、前記各パラメータに割り当てられた値に前記パラメータに割り当てられたウエートを乗ずる手段と、
iii)前記発見された各対象画像に係るパラメータのウエート付けされた値を加算してその対象画像に対する合計値を求める手段と、
iv）対象がレンズであるか否かを判別するため、前記発見された各対象画像についての合計値を所定の値と比較する手段を含む実施態様Ｃ記載のシステム。
９）前記発見された各対象画像は周縁を有し、前記複数のパラメータについてその値を同定する手段は、前記対象画像周縁の長さを求める手段を含む実施態様Ｃ記載のシステム。
１０）前記発見された各対象の画像は幅ａと高さｂを有し、前記複数のパラメータについてその値を同定する手段は、前記対象画像の幅と高さを求める手段と、式Ａ＝ａ・ｂにより、各対象画像に係るパラメータの一つについて値Ａを求める手段を含む実施態様Ｃ記載のシステム。
（Ｄ） 透明なパッケージにおけるレンズの存在を確認するためのシステムであって、
パッケージを検査位置で保持する手段と、
画素アレーと、
画素アレー上にパッケージの画像を形成するため、光ビームを前記パッケージを通して前記画素アレーに送る照明サブシステムと、
前記画素に入射した光の強度を表す各関連データ値を、前記アレーにある画素の少なくとも一群のそれぞれについて生成する手段と、
パッケージにレンズが存在するかどうかを判断するため、前記データ値を分析する処理サブシステムであり、
この処理サブシステムは、
i)前記画素アレー上にあるパッケージ画像の選択領域を同定する手段と、
ii）レンズがパッケージに存在するかどうか判断するため、前記パッケージ画像の選択領域にある画素に関連するデータ値を分析する手段を含むシステム。
１１）前記パッケージは周縁を含み、前記パッケージが像の選択領域を同定する手段は、
パッケージの周縁画像を同定する手段と、
パッケージの周縁画像から予め設定した距離にあるパッケージ画像の予め設定した領域を同定する手段を含む実施態様Ｄ記載のシステム。
１２）前記パッケージは、空隙と、この空隙の覆って延び周縁を有するカバーを備え、
前記パッケージ画像の選択領域を同定する手段は、前記カバーの周縁画像を同定する手段を含み、前記パッケージ画像の予め設定した領域を同定する手段は、前記カバーの周縁画像から予め設定した距離にある予め設定した領域を同定する手段を含む実施態様Ｄ記載のシステム。
【０１１６】
【発明の効果】
以上説明したように、本発明によれば、レンズがパッケージにあることを確認するためのパッケージの自動検査システムおよび方法が提供される。そして本発明によれば、レンズがパッケージにあることの確認は、１分間当り約１２個の割合で行われ、１％未満の誤差率でレンズパッケージを自動的に検査することができる。
【図面の簡単な説明】
【図１】本発明に一態様に係るパッケージ検査システムのブロック図。
【図２】図１のシステムで検査されるパッケージのグループを示す平面図。
【図３】図２に示したパッケージの一つの側面図。
【図４】図１のシステムで用いられる搬送サブシステムの位置を示す説明図。
【図５】図１のシステムで用いられる照明サブシステムの位置を示すブロック図。
【図６】図５の照明サブシステムにより形成される画像の説明図。
【図７】図１のシステムで用いるカメラの一つの説明図。
【図８】図１にシステムにおけるカメラの一つに撮影される典型的な画像の説明図。
【図９】図１の検査システムで使用される画像処理サブシステムの処理ボードを示す図。
【図１０】コンソールに配置された画像処理サブシステムの種々の要素を示す説明図。
【図１１】図１のシステムにおける種々の通信路を示す説明図。
【図１２】図１の検査システムとともに用いられる好ましい画像処理操作における主要な工程を示す流れ図。
【図１３】種々の画像前処理工程を示す流れ図。
【図１４】種々の特徴をもつ図８の画像を検索するのに用いられるサーチベクトルの好ましいスキームを示す説明図。
【図１５】画像の識別に用いる好ましい符号の意味を示す説明図。
【図１６】本発明の好ましい画像処理手順で使用される画像検索技術の説明図。
【図１７】パッケージ検査で見られる４つの対象を示す説明図。
【図１８】それぞれ、画像検索技術により形成された、図１７（ａ）〜（ｄ）に示した４つの対象の輪郭を示す説明図。
【図１９】生の画像が画像処理操作によって処理されていく模様を示す説明図。
【図２０】レンズを収めたパッケージとそうでないパッケージを識別する２次元線形分類器の説明図。
【図２１】レンズを収めたパッケージとそうでないパッケージを識別する多次元線形分類器の説明図。
【図２２】本発明の操作に使用される分類器を決定するのに用いられるデータサンプルのチャートを示す図。
【図２３】本発明の好ましい態様を説明する表と棒グラフの対応を示す図。
【図１】
0003748919.tif 000019
【図２】
0003748919.tif 000020
【図３】
0003748919.tif 000021
【図４】
0003748919.tif 000022
【図５】
0003748919.tif 000023
【図６】
0003748919.tif 000024
【図７】
0003748919.tif 000025
【図８】
0003748919.tif 000026
【図９】
0003748919.tif 000027
【図１０】
0003748919.tif 000028
【図１１】
0003748919.tif 000029
【図１２】
0003748919.tif 000030
【図１３】
0003748919.tif 000031
【図１４】
0003748919.tif 000032
【図１５】
0003748919.tif 000033
【図１６】
0003748919.tif 000034
【図１７】
0003748919.tif 000035
【図１８】
0003748919.tif 000036
【図１９】
0003748919.tif 000037
【図２０】
0003748919.tif 000038
【図２１】
0003748919.tif 000039
【図２２】
0003748919.tif 000040
【図２３】
0003748919.tif 000041