(57)【特許請求の範囲】
【請求項１】
第１の要素及び前記第１の要素の少なくとも一部と干渉する第２の要素を含むワークを検査するように動作可能なマシンビジョン検査システムであって、前記マシンビジョン検査システムが、
メモリ要素および除外領域ジェネレータを含む制御システムと、
ワーク画像を提供するように動作可能な撮像システムと、
ワーク画像およびユーザインターフェース要素を表示するように使用可能なディスプレイと、
ワーク画像を解析するビデオツール動作を含むワーク検査動作シーケンスを定義するために、かつワーク特徴のエッジ点を検出するために、かつ前記ワーク特徴の少なくとも位置を特徴付けるために使用可能なユーザインターフェースと、
第１及び第２のビデオツールと、
を含み、
前記第１のビデオツールが、ワーク画像を解析して、前記第１の要素のエッジ点を検出し、かつ前記検出されたエッジ点に幾何学的要素を適合させ、前記幾何学的要素の寸法パラメータに基づいて、前記第１の要素を特徴付け、
前記除外領域ジェネレータが、前記第１の要素に適合された前記幾何学的要素の前記寸法パラメータに基づいて除外領域を決定するように構成され、
前記第２のビデオツールが、
前記ユーザインターフェースに含まれるビデオツールインターフェースを含み、
関心領域におけるエッジ点を検出し、
前記第２の要素のエッジ点セットが、前記関心領域において検出されたエッジ点を含み、かつ前記除外領域内に位置するエッジ点を含まないように、ワーク画像を解析し、かつ前記第２の要素のエッジ点セットを決定する除外領域動作を実行するように構成される、
マシンビジョン検査システム。
【請求項２】
前記マシンビジョン検査システムが、学習動作モードを含み、
前記除外領域ジェネレータが、前記マシンビジョン検査システムの前記学習動作モード中に定義された除外領域パラメータセットに基づいて前記除外領域を決定するように構成され、前記除外領域パラメータセットが、前記第１の要素の識別を含む、請求項１に記載のマシンビジョン検査システム。
【請求項３】
前記マシンビジョン検査システムが、実行動作モードを含み、
前記ユーザインターフェースが、前記学習動作モード中に代表的ワークを用いて、前記第１の要素を提供するために、前記第１のビデオツールにおける、少なくとも１つのインスタンスのパラメータを定義するように構成され、
前記ビデオツールインターフェースが、前記学習動作モード中に前記代表的ワーク上の前記第２の要素のエッジ点セットを決定するために用いられる、前記第２のビデオツールにおける現在のインスタンスのパラメータを定義するように構成され、
前記マシンビジョン検査システムが、前記第１のビデオツールの定義されたパラメータと、前記第２のビデオツールの前記現在のインスタンスの定義されたパラメータと、前記定義された除外領域パラメータセットと、をパートプログラムに記録するように構成され、
前記マシンビジョン検査システムが、前記代表的ワークと類似の実行モードワーク用の前記実行動作モード中に前記パートプログラムの動作を実行するように構成され、
前記パートプログラムの前記動作が、
前記第１のビデオツールの前記現在のインスタンスの記録された前記定義されたパラメータを用いて、前記実行モードワーク上の前記第１の要素の特徴付けを提供することと、
記録された前記定義された除外領域パラメータを用い、前記実行モードワーク上の前記第１の要素に基づいて前記除外領域を決定することと、
前記第２の要素のエッジ点セットが、前記実行モードワーク上で、前記第２のビデオツールの前記現在のインスタンスの前記関心領域において検出されたエッジ点を含み、かつ前記実行モードワーク上で前記第１の要素に基づいて決定された前記除外領域内に位置するエッジ点を含まないように、前記第２のビデオツールの前記現在のインスタンスの記録された前記定義されたパラメータを用いて、前記実行モードワーク上で前記第２の要素のエッジ点セットを決定することと、
を含む、請求項２に記載のマシンビジョン検査システム。
【請求項４】
前記ユーザインターフェースが、前記学習動作モード中に前記代表的ワークの画像を表示するように構成され、
ユーザが、前記第１のビデオツールの前記少なくとも１つのインスタンスを選択および構成できるように、前記ユーザインターフェースが構成され、前記第１のビデオツールが、環状関心領域を有する円ツール、アーク形状関心領域を有するアークツール、および直線エッジを特徴付け、かつ矩形関心領域を有するツールの１つであり、前記第１のビデオツールのユーザインターフェースが、前記代表的ワークの表示画像上に重ねられる関心領域インジケータを含み、前記第１のビデオツールの前記ユーザインターフェースが、前記学習動作モード中に前記代表的ワークを用いて、前記第１の要素を提供するために、前記第１のビデオツールのインスタンスの前記パラメータを定義するようにユーザによって構成され、
ユーザが、前記第２のビデオツールのインスタンスを選択および構成できるように、ユーザインターフェースが構成され、前記第２のビデオツールが、環状関心領域を有する円ツール、アーク形状関心領域を有するアークツール、および直線エッジを特徴付け、かつ矩形関心領域を有するツールの１つであり、前記ビデオツールインターフェースが、前記代表的ワークの表示画像上に重ねられる関心領域インジケータおよび除外領域インジケータを含み、前記ビデオツールインターフェースが、前記学習動作モード中に前記代表的ワーク上の前記第２の要素のエッジ点セットを決定するために用いられる前記第２のビデオツールの前記現在のインスタンスの前記パラメータを定義するために、前記ユーザによって構成される、請求項３に記載のマシンビジョン検査システム。
【請求項５】
前記除外領域ジェネレータが、前記学習動作モード中に、代表的ワーク上の前記第２の要素のエッジ点セットを決定するために用いられる前記第２のビデオツールの現在のインスタンスに最も近い前記第１の要素を自動で識別するように、かつ前記除外領域パラメータセットにおける前記第１の要素の識別を自動的に含むように構成される、請求項２に記載のマシンビジョン検査システム。
【請求項６】
前記ユーザインターフェースが、前記マシンビジョン検査システムの前記学習動作モード中に前記除外領域パラメータセットのメンバーを定義するように構成された除外領域パラメータ部を含み、
前記定義されたメンバーが、前記除外領域を決定するために用いられる前記第１の要素の識別を含む、請求項２に記載のマシンビジョン検査システム。
【請求項７】
前記除外領域パラメータ部が、前記除外領域を決定するために用いられる前記第１の要素の前記識別を提供するためにユーザによって構成される除外要素識別子を含む、請求項６に記載のマシンビジョン検査システム。
【請求項８】
前記除外領域パラメータ部が、前記制御システムによって自動的に生成される前記第１の要素のリストを含み、前記除外要素識別子が、前記除外領域を決定するために用いられる前記第１の要素の前記識別に含むために前記リストの少なくとも１つのメンバーを選択するように構成された選択要素を含む、請求項７に記載のマシンビジョン検査システム。
【請求項９】
前記ビデオツールインターフェースが、前記学習動作モード中に前記第２のビデオツールの現在のインスタンスのパラメータを定義するように構成され、
前記除外領域パラメータ部が、前記ビデオツールインターフェースに含まれ、
前記除外領域パラメータ部が、前記第２のビデオツールの前記現在のインスタンスに特に対応する除外領域用の前記除外領域パラメータセットの現在のインスタンスを定義するように構成され、前記除外領域パラメータセットの前記現在のインスタンスが、前記除外領域を決定するために用いられる前記第１の要素の現在のインスタンスの識別を含む、請求項６に記載のマシンビジョン検査システム。
【請求項１０】
前記ビデオツールインターフェースが、前記学習動作モード中に代表的ワークの画像上に重ねられて表示される、関心領域インジケータおよび除外領域インジケータを含む、請求項９に記載のマシンビジョン検査システム。
【請求項１１】
前記関心領域インジケータが、前記除外領域パラメータセットの前記現在のインスタンスが変更される場合には、自動的に変化する、請求項１０に記載のマシンビジョン検査システム。
【請求項１２】
前記除外領域インジケータが、前記除外領域インジケータのサイズを調整し、かつ前記除外領域パラメータセットの前記現在のインスタンスに対応する変更を加えるために、ユーザによって変更されるように構成される、請求項１０に記載のマシンビジョン検査システム。
【請求項１３】
前記除外領域を決定するために用いられる前記第１の要素を特徴付ける間に検出されたエッジ点の少なくとも大部分を前記除外領域が含むように、前記除外領域ジェネレータが、前記除外領域を決定するように構成される、請求項２に記載のマシンビジョン検査システム。
【請求項１４】
前記除外領域ジェネレータが、前記適合された幾何学的要素のサイズおよび位置の少なくとも１つを調整すること、およびその調整された、前記適合された幾何学的要素を前記除外領域の境界として用いることによって、前記除外領域を決定するように構成され、前記調整された、適合された幾何学的要素が、前記幾何学的要素を適合するために用いられる前記検出されたエッジ点の少なくとも大部分を含む境界を提供する、請求項１に記載のマシンビジョン検査システム。
【請求項１５】
前記第２のビデオツールが、前記関心領域におけるエッジ点を検出する自身の動作において用いられる走査方向を含み、前記除外領域ジェネレータが、前記走査方向と反対の方向に前記境界が移動するように、前記適合された幾何学的要素を調整するように構成される、請求項１４に記載のマシンビジョン検査システム。
【請求項１６】
前記第１の要素が、円ツールを用いることによって特徴付けられる要素であり、前記適合された幾何学的要素が円であり、前記第２のビデオツールが円ツールである、請求項１に記載のマシンビジョン検査システム。
【請求項１７】
前記第２のビデオツールが、
前記除外領域動作が実行される除外領域モードと、
前記第２の要素のエッジ点セットが、前記除外領域を考慮することなく前記関心領域において検出されるエッジ点を含むように、ワーク画像を解析し、かつ前記第２の要素のエッジ点セットを決定する非除外領域動作を含む非除外領域モードと、
前記第２のビデオツールのインスタンスが、前記除外領域モードまたは前記非除外領域モードのいずれで動作するかを決定するために、ユーザによって操作可能な除外領域活性化要素を含む前記ビデオツールインターフェースと、
を含む、請求項１に記載のマシンビジョン検査システム。
【請求項１８】
前記除外領域ジェネレータが、第１の波長セットを用いて露光される第１のワーク画像において、前記第１のビデオツールを用いることによって特徴付けられる要素である、前記第１の要素に基づいて、前記除外領域を決定するように構成され、
前記第２のビデオツールが、前記第１の波長セットと異なる第２の波長セットを用いて露光される第２のワーク画像において前記第２の要素のエッジ点セットを検出するように構成される、請求項１に記載のマシンビジョン検査システム。
【請求項１９】
前記第１および第２の波長セットの一方が、前記ワークによって放射される蛍光波長を含み、前記第１および第２の波長セットのもう一方が、前記蛍光波長を含まない、請求項１８に記載のマシンビジョン検査システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にマシンビジョン検査システムに関し、特にワーク上の潜在的な干渉要素を検査する方法に関する。
【背景技術】
【０００２】
精密マシンビジョン検査システム（または略して「ビジョンシステム」）を用いて、検査対象物の正確な寸法測定値を取得し、かつ様々な他の物性を検査することができる。かかるシステムには、コンピュータ、カメラおよび光学系、ならびに検査されているワークの要素をカメラが走査できるようにするために多方向に移動可能な精密ステージを含み得る。市販されている１つの例示的な先行技術のシステムが、イリノイ州オーロラ（Aurora,Illinois）にあるMitutoyo America Corporation (MAC)から入手可能なＰＣベースビジョンシステムのQUICK VISION（登録商標）シリーズおよびQVPAK（登録商標）ソフトウェアである。ビジョンシステムのQUICK VISION（登録商標）シリーズおよびQVPAK（登録商標）ソフトウェアの特徴および動作が、例えば、２００３年１月に発行されたQVPAK 3D CNC Vision Measuring Machine User's Guide、および１９９６年９月に発行されたQVPAK 3D CNC Vision Measuring Machine Operation Guideに一般的に説明されている。この製品は、例えば、QV302PROモデルによって例示されるように、様々な倍率でワークの画像を提供するように顕微鏡タイプの光学系を用いることができ、かつ必要に応じて、任意の単一のビデオ画像の制限を超えてワーク表面を通過するために、ステージを移動させることができる。単一のビデオ画像には、典型的には、かかるシステムの所望の倍率、測定解像度および物理的サイズ制限から判断すると、観察または検査されているワークの一部だけが含まれる。
【０００３】
マシンビジョン検査システムは、一般に自動ビデオ検査を利用する。米国特許第６，５４２，１８０号（’１８０特許）は、かかる自動ビデオ検査の様々な態様を教示する。’１８０特許で教示されているように、自動ビデオ検査計測機器は、一般に、各特定のワーク構成に対して、ユーザが自動検査イベントシーケンスを定義できるようにするプログラミング能力を有する。このプログラミングは、例えばテキストベースのプログラミングによって実行するか、またはグラフィカルユーザインターフェースの支援でユーザが実行する検査動作シーケンスに対応するマシン制御命令シーケンスを記憶することによって、検査イベントシーケンスを徐々に「学習」する記録モードを通して実行するか、または両方の方法の組み合わせを通して実行することができる。かかる記録モードは、「学習モード」または「訓練モード」と呼ばれることが多い。一旦検査イベントシーケンスが「学習モード」において定義されると、次には、かかるシーケンスを用いて、「実行モード」中にワークの画像を自動的に取得（かつさらに解析または検査）することができる。
【０００４】
特定の検査イベントシーケンス（すなわち、各画像を取得する方法、および各取得画像を解析／検査する方法）を含むマシン制御命令は、特定のワーク構成に特有の「パートプログラム」または「ワークプログラム」として一般に記憶される。例えば、パートプログラムは、例えば、ワークに対してカメラをどのように配置するか、どんな照明レベルか、どんな倍率レベルか等、各画像を取得する方法を定義する。さらに、パートプログラムは、例えば、エッジ／境界検出ビデオツールなどの１つまたは複数のビデオツールを用いることによって、取得画像を解析／検査する方法を定義する。
【０００５】
ビデオツール（または略して「ツール」）および他のグラフィカルユーザインターフェース機能を手動で用いて、（「手動モード」において）手動検査および／またはマシン制御動作を遂行してもよい。それらのセットアップパラメータおよび動作はまた、自動検査プログラムまたは「パートプログラム」を生成するために、学習モード中に記録することができる。ビデオツールには、例えば、エッジ／境界検出ツール、自動焦点ツール、形状またはパターンマッチングツール、寸法測定ツールなどを含んでもよい。
【０００６】
マシンビジョン検査システムの一用途は、ワーク上の要素の検査である。いくつかの場合に、これらの要素は、異なる層に含まれる可能性があり、かつ／または干渉を与えるか、もしくは重なり合うエッジを有する可能性がある。かかるワークの一例が、プリント回路基板（ＰＣＢ）であり、そこでは、ソルダレジスト層におけるパターンと、ソルダレジスト層によって露出および／または絶縁されるように意図された導電性要素との間の位置決め関係を測定することが望ましくなり得る。かかる要素は、同心円状の場合があり、または場合によっては、いくつかの要素のエッジに、重なったり、または干渉したりさせる製造エラーが発生する可能性がある。かかるエラーは、短絡またはＰＣＢの動作にとっての他の問題に関連し得る。したがって、ＰＣＢの検査中に、要素が適切に位置しているかどうかを正確に決定できることが重要である。しかしながら、かかる要素を自動的に検査するための先行技術の方法は、マシンビジョン検査システムの未熟練ユーザがプログラムできるほど容易ではなく、かつ潜在的に重ならないかまたは様々な程度で重なる可能性がある関連する要素の、種々様々に起こり得るアラインメント状態およびミスアラインメント状態下で、適切に動作するほど十分にロバスト（robust）ではない。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許第６，５４２，１８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ＰＣＢなどのワーク上において、潜在的に重なる要素または干渉する要素を正確に検出および／または測定することに関連する、プログラミングおよび技術における改善が、望ましいであろう。
【課題を解決するための手段】
【０００９】
この概要は、以下で詳細な説明においてさらに説明される概念の抜粋を簡略化した形態で導入するために提供される。この概要は、特許請求される主題の主な特徴を確認することも、特許請求される主題の範囲を決定する際の補助として用いられることも目的としていない。
【００１０】
マシンビジョン検査システムには、ワーク上の潜在的な干渉要素の検査に関連するプログラミングおよび技術が含まれる。マシンビジョン検査システムには、次のものを含んでもよい。すなわち、メモリ要素および除外領域ジェネレータを含む制御システムと、ワーク画像を提供するように動作可能な撮像システムと、ワーク画像およびユーザインターフェース要素を表示するように使用可能なディスプレイと、ワーク画像を解析するビデオツール動作を含むワーク検査動作シーケンスを定義するために、かつワーク要素のエッジ点を検出するために、かつワーク要素の少なくとも位置を特徴付けるために使用可能なユーザインターフェースと、エッジ検出を実行するロバストなビデオツールを含む複数のビデオツールと、を含んでもよい。ロバストなビデオツールには、関心領域と、ユーザインターフェースに含まれるロバストなビデオツールインターフェースと、関心領域におけるエッジ点を検出する動作と、現在の要素のエッジ点セットが関心領域において検出されたエッジ点を含むとともに少なくとも１つの予め特徴付けられた要素に基づいて決定された除外領域内に位置するエッジ点を含まないように、ワーク画像を解析し、かつ現在の要素のエッジ点セットを決定する除外領域動作と、が含まれる。本明細書で開示するように、予め特徴付けられた要素は、マシンビジョン検査システムの複数のビデオツールの１つを用い、ワーク画像を解析して、予め特徴付けられた要素のエッジ点を検出し、かつ検出エッジ点に基づいて、予め特徴付けられた要素の寸法パラメータを特徴付けることによって特徴付けられる要素であると定義される。本発明の原理によれば、除外領域ジェネレータは、少なくとも１つの予め特徴付けられた要素に基づいて除外領域を決定するように構成される。
【００１１】
用語「予め特徴付けられた要素」は、本明細書において時には次のように用いられることに留意されたい。すなわち、実際に特徴付けられる前のワーク要素に言及する場合であっても、除外領域を決定する目的で「予め特徴付けられる要素」である場合には、当該ワーク要素の記述名として用語「予め特徴付けられた要素」が用いられる。同様に、用語「現在の要素」についても、本明細書において時には次のように用いられる。すなわち、実際に解析される前または後の時点でのワーク要素に言及する場合であっても、（例えば、本明細書で開示するようなロバストなビデオツールを用いて）最終的に解析される際に「予め特徴付けられた要素」からの干渉を受け得るワーク要素の記述名として用語「現在の要素」が用いられる。
【００１２】
いくつかの実施形態において、除外領域ジェネレータは、学習モード中に定義された除外領域パラメータセットに基づいて除外領域を決定するように構成され、除外領域パラメータセットには、除外領域を決定するために用いられる、少なくとも１つの予め特徴付けられた要素の識別が含まれる。いくつかの実施形態において、除外領域ジェネレータは、学習モード中に、ロバストなビデオツールの現在のインスタンスに最も近い予め特徴付けられた要素を自動で識別するように、かつその予め特徴付けられた要素の識別を、除外領域を決定するために用いられる除外領域パラメータセットに自動で含むように、構成してもよい。
【００１３】
いくつかの実施形態において、ユーザインターフェースは、学習モード中に代表的ワークを用いて、少なくとも１つの予め特徴付けられた要素の特徴付けを提供するために、ビデオツールの少なくとも１つのインスタンスのパラメータを定義するように構成される。ロバストなビデオツールインターフェースは、学習モード中に、代表的ワーク上の現在の要素のための現在の要素のエッジ点セットを決定するために用いられるロバストなビデオツールにおける現在のインスタンスのパラメータを定義するように構成される。マシンビジョン検査システムは、これらのパラメータ、および定義された除外領域パラメータセットをパートプログラムに記録するように構成される。マシンビジョン検査システムは、代表的ワークと類似の実行モードワーク用の実行動作モード中に、パートプログラムの動作を実行するように構成してもよい。これらの動作には、記録された定義済みパラメータを用いて、実行モードワーク上の少なくとも１つの予め特徴付けられた要素の特徴付けを提供すること、すなわち、同様の代表的学習モードワーク上の少なくとも１つの予め特徴付けられた要素に対応する、実行モードワーク上の少なくとも１つの要素を特徴付けることを含んでもよい。これらの動作は、現在の要素のエッジ点セットが、実行モードワーク上のロバストなビデオツールの現在のインスタンスの関心領域において検出されたエッジ点を含むとともに、実行モードワーク上の少なくとも１つの予め特徴付けられた要素に基づいて決定された除外領域内に位置するエッジ点を含まないように、記録された除外領域パラメータを用い、実行モードワーク上の少なくとも１つの予め特徴付けられた要素に基づいて、除外領域を決定することと、ロバストなビデオツールの現在のインスタンスの記録された定義済みパラメータを用いて、実行モードワーク上の現在の要素のエッジ点セットを決定することと、をさらに含んでもよい。
【００１４】
様々な実施形態において、ユーザインターフェースは、ユーザが、複数のビデオツールに含まれるビデオツールの少なくとも１つのインスタンスを選択および構成できるように構成され、この場合に、そのビデオツールは、環状関心領域を有する円ツール、アーク形状関心領域を有するアークツール、および直線エッジを特徴付けるとともに矩形関心領域を有するツールのうちの１つである。そのビデオツールのユーザインターフェースには、学習モード中に代表的ワークの表示画像上に重ねられる関心領域インジケータが含まれる。そのビデオツールのユーザインターフェースは、学習動作モード中に代表的ワークを用いて少なくとも１つの予め特徴付けられた要素を提供するために、そのビデオツールのインスタンスのパラメータを定義するようにユーザによって構成される。様々な実施形態において、ユーザインターフェースは、ユーザが、ロバストなビデオツールのインスタンスを選択および構成できるように構成され、この場合に、ロバストなビデオツールはまた、環状関心領域を有する円ツール、アーク形状関心領域を有するアークツール、および直線エッジを特徴付けるとともに矩形関心領域を有するツールのうちの１つである。また、ロバストなビデオツールインターフェースには、学習モード中に代表的ワークの表示画像上に重ねられる、関心領域インジケータおよび除外領域インジケータが含まれる。ロバストなビデオツールインターフェースは、学習動作モード中に代表的ワーク上の現在の要素用の現在の要素のエッジ点セットを決定するために用いられるロバストなビデオツールの現在のインスタンスのパラメータを定義するために、ユーザによって構成される。
【００１５】
いくつかの実施形態において、ユーザインターフェースには、マシンビジョン検査システムの学習動作モード中に除外領域パラメータセットのメンバーを定義するように構成された除外領域パラメータ部が含まれ、定義されたメンバーには、除外領域を決定するために用いられる少なくとも１つの予め特徴付けられた要素の識別が含まれる。除外領域パラメータ部には、除外領域を決定するために用いられる、少なくとも１つの予め特徴付けられた要素の識別を提供するためにユーザによって構成される、除外要素識別子を含んでもよい。いくつかの実施形態において、除外領域パラメータ部には、制御システムによって自動で生成される予め特徴付けられた要素のリストが含まれ、除外要素識別子には、除外領域を決定するために用いられる、少なくとも１つの予め特徴付けられた要素の識別に含むためにリストの少なくとも１つのメンバーを選択するように構成された、選択要素が含まれる。
【００１６】
いくつかの実施形態において、除外領域パラメータ部は、ロバストなビデオツールインターフェースに含まれ、ロバストなビデオツールインターフェースは、ロバストなビデオツールの現在のインスタンスに特に対応する除外領域用の除外領域パラメータセットの現在のインスタンスを定義することを含めて、学習モード中にロバストなビデオツールの現在のインスタンスのパラメータを定義するように構成される。かかる場合において、除外領域パラメータセットの現在のインスタンスには、除外領域を決定するために用いられる少なくとも１つの予め特徴付けられた要素の現在のインスタンスの識別が含まれる。いくつかのかかる実施形態において、ロバストなビデオツールインターフェースには、学習動作モード中に代表的ワークの画像上に重ねられて表示される関心領域インジケータおよび除外領域インジケータが含まれる。関心領域インジケータは、除外領域パラメータセットの現在のインスタンスが変更される場合には、自動で変化してもよい。いくつかの実施形態において、除外領域インジケータは、除外領域インジケータのサイズを調整し、かつ除外領域パラメータセットの現在のインスタンスに対応する変更を加えるために、ユーザによって変更されるように構成される。
【００１７】
いくつかの実施形態において、除外領域ジェネレータは、除外領域が、除外領域を決定するために用いられる少なくとも１つの予め特徴付けられた要素を特徴付ける間に検出されるエッジ点の、少なくとも大部分を含むように、除外領域を決定するように構成してもよい。様々な実施形態において、除外領域は、全てのかかるエッジ点（しかし、かかる場合、検出エッジ点の「異常値」が、除外領域外に入ることがあってもよい）を含むのが好ましい。
【００１８】
いくつかの実施形態において、予め特徴付けられた要素は、（ａ）ワーク画像を解析して、その要素のエッジ点を検出することと、（ｂ）幾何学的要素を検出エッジ点に適合させることと、（ｃ）適合された幾何学的要素の特徴付けを提供することであって、その特徴付けが、適合された幾何学的要素の少なくとも寸法パラメータを含み（例えば、ビデオツールは、周知の円ツールか、アークツールか、または線を直線エッジに適合させるツール等であってもよい）、除外領域ジェネレータが、少なくとも１つの予め特徴付けられた要素の、適合された幾何学的要素の特徴付けに基づいて、除外領域を決定するように構成されてもよいこと、とを含む動作を実行する複数のビデオツールの１つを用いることによって特徴付けられる要素として定義してもよい。かかるビデオツールが、周知のマシンビジョン検査システムに存在し、かつかかる適合された幾何学的要素をかかるシステムにおけるメモリに記録する周知の方法が存在するので、本発明のかかる実施形態は、現存システムの比較的小さな変更だけで実行してもよく、かつ本発明の利益を得るために、ユーザに対して比較的わずかな追加訓練しか必要としない。
【００１９】
いくつかの実施形態において、除外領域ジェネレータは、適合された幾何学的要素のサイズおよび位置の少なくとも１つを調整すること、およびその調整された適合された幾何学的要素を除外領域の境界として用いることによって、除外領域を決定するように構成され、この場合に、調整された適合された幾何学的要素は、幾何学的要素を適合するために用いられる検出エッジ点の少なくとも大部分を含む境界を提供する。ロバストなビデオツールには、その関心領域におけるエッジ点を検出するその動作において用いられる走査方向を含んでもよく、除外領域ジェネレータは、境界が、その走査方向の反対の方向に移動するように、適合された幾何学的要素を調整するように構成してもよい。この方向に境界を移動させることは、ロバストなビデオツールが、少なくとも１つの予め特徴付けられた要素のエッジ点を現在の要素のエッジ点セットに含むのを防ぐ傾向があり、方向は、いくつかの実施形態において、自動で選択してもよい。
【００２０】
前述の機能は、ＰＣＢ上で潜在的に重なる円要素（例えば、ホール、銅パッドおよびソルダレジスト開口部）を検査するのに特に有用である。かかる用途において、予め特徴付けられた要素は、複数のビデオツールに含まれる円ツールを用いることによって特徴付けられる要素であり、適合された幾何学的要素は円であり、ロバストなビデオツールは円ツールである。蛍光および非蛍光撮像の両方とも、ＰＣＢ上の要素を検査するのに有用であり得る。なぜなら、ＰＣＢが、半透明の蛍光ソルダレジストコーティングを含む可能性があり、異なるタイプの撮像が、ソルダレジストの異なるタイプの要素および／またはそれが被覆する要素をよりはっきりと明らかにし得るからである。例えば、同時係属中で本発明の譲受人に譲渡された米国特許出願第１２／９０４，０１３号に開示されているように、異なるタイプの画像を提供してもよい。より一般的には、いくつかの実施形態において、除外領域ジェネレータは、第１の波長セットを用いて露光される第１のワーク画像において特徴付けられる要素である少なくとも１つの予め特徴付けられた要素に基づいて、除外領域を決定するように構成され、ロバストなビデオツールは、第１の波長セットと異なる第２の波長セットを用いて露光される第２のワーク画像において現在の要素のエッジ点セットを検出するように構成される。いくつかの実施形態において、第１および第２の波長セットの一方には、かなりの強度でワークによって放射される蛍光波長が含まれるが、第１および第２の波長セットのもう一方には、かなりの強度でワークによって放射される蛍光波長は含まれない。
【００２１】
いくつかの実施形態において、ロバストなビデオツールには、除外領域動作が実行される除外領域モードと、現在の要素のエッジ点セットが、除外領域を考慮することなく関心領域において検出されたエッジ点を含むように、ワーク画像を解析するとともに現在の要素のエッジ点セットを決定する非除外領域動作を含む非除外領域モードと、が含まれる。かかる場合に、ロバストなビデオツールインターフェースには、ロバストなビデオツールのインスタンスが、除外領域モードまたは非除外領域モードで動作するかどうかを決定するために、ユーザによって操作可能な除外領域活性化要素を含んでもよい。かかる汎用性のあるロバストなビデオツールは、ユーザ用の訓練およびプログラミングを単純化する。
【００２２】
上記で概説し、以下でより詳細に開示する機能が、ある用途に特に有用であり得ることが理解されよう。例えば、ワークが多層ワーク（例えば、ソルダレジスト層を含むプリント回路基板）であるインプリメンテーションにおいて、様々な層におけるエッジ要素は重なり合って、エッジ要素がどの層にあるかに関する「混乱」およびそれらのそれぞれのエッジを分離できないことゆえに、従来のエッジ検出ツールを機能しなくさせるか誤らせる。従来のビデオツールは、次の事実ゆえに、この問題を解決できない関心領域を有する。すなわち、要素が、実際に、いくつかのワーク上で重なり、他のワーク上では重ならず、その結果、特定の要素を確実に分離し、かつ全てのワーク条件に対して有効または確実に動作するように関心領域をプログラムすることができないという事実である。同様に、咬合または干渉要素が、常に存在し、したがって、全てのワーク条件に対しては有効または確実に動作し得ないと仮定することによる周知の要素「マスキング」プログラミング方法（例えば、米国特許第７，３２４，６８２号を参照。）が教示される。いくつかの適切に製造されたワークにとって、要素の咬合も重なりもなく、したがって、’６８２特許の方法は、適切に製造された代表的ワーク上の「現在の要素」の関心領域における干渉または咬合要素の不在ゆえに、学習モードにおいてプログラムすることさえできない。したがって、本発明に関連する機能は、あるタイプの用途にとって、先行技術と比較してより一般的で、実行がより簡単で、さらによりロバストである。特に、本明細書で開示する機能は、適切に製造されようと不適切に製造されようと代表的ワークに対して学習モードにおけるプログラミングを可能にし、適切に製造されたかまたは不適切に製造された実行モードワークに対して、得られる自動パートプログラムにおいてやはり確実に動作する。
【００２３】
本発明の前述の態様および付随する利点の多くは、それらが、添付の図面と共に以下の詳細な説明を参照して、よりよく理解されるようになるとともに、より容易に認識されよう。
【図面の簡単な説明】
【００２４】
【図１】汎用精密マシンビジョン検査システムの様々な典型的コンポーネントを示す図である。
【図２】本発明による機能を含む、図１のマシンビジョン検査システムの制御システム部およびビジョンコンポーネント部のブロック図である。
【図３Ａ】第１の要素が現在の要素とほぼ同心の理想的な製造の場合に対して、現在の要素用の現在の関心領域およびエッジ検出を示す代表的ワーク上の要素の上面図を示す。
【図３Ｂ】第１の要素が現在の要素とほぼ同心の理想的な製造の場合に対して、現在の要素用の現在の関心領域およびエッジ検出を示す代表的ワーク上の要素の上面図を示す。
【図３Ｃ】第１の要素のエッジが現在の要素のエッジと重なる非理想的な製造の場合に対して、現在の要素用の関心領域および不適切なエッジ検出を示す代表的ワーク上の要素の上面図を示す。
【図４Ａ】予め特徴付けられた要素を提供するために第１の要素を特徴付けるために用いられる関心領域およびエッジ検出を示す、図３Ｃの要素の上面図を示す。
【図４Ｂ】予め特徴付けられた第１の要素に基づいて除外領域の一実施形態を示す、図３Ｃおよび４Ａの要素の上面図を示す。
【図４Ｃ】第１の要素のエッジが現在の要素のエッジと重なる非理想的な製造の場合に対し、図４Ｂの除外領域に基づいて現在の要素および適切なエッジ検出用の関心領域を示す、図３Ｃおよび４Ａの要素の上面図を示す。
【図５】除外領域パラメータ部を含む、ロバストなビデオツールユーザインターフェースの一実施形態の様々な機能を示す図である。
【図６】ワーク画像、除外領域パラメータ部、関心領域インジケータおよび除外領域インジケータを含む、学習動作モード中のユーザインターフェースにおける一実施形態の様々な機能を示す図である。
【発明を実施するための形態】
【００２５】
図１は、本明細書で説明する方法に従って使用可能な１つの例示的なマシンビジョン検査システム１０のブロック図である。マシンビジョン検査システム１０には、データおよび制御信号を制御コンピュータシステム１４と交換するように動作可能に接続されたビジョン測定機１２が含まれる。制御コンピュータシステム１４は、さらに、モニタまたはディスプレイ１６、プリンタ１８、ジョイスティック２２、キーボード２４およびマウス２６とデータおよび制御信号を交換するように動作可能に接続される。モニタまたはディスプレイ１６は、マシンビジョン検査システム１０の動作を制御および／またはプログラムするのに適したユーザインターフェースを表示してもよい。
【００２６】
ビジョン測定機１２には、可動ワークステージ３２と、ズームレンズまたは交換レンズを含み得る光学撮像システム３４と、が含まれる。ズームレンズまたは交換レンズは、一般に、光学撮像システム３４によって提供される画像用に様々な倍率を提供する。マシンビジョン検査システム１０は、一般に、上記の、ビジョンシステムのQUICK VISION（登録商標）シリーズおよびQVPAK（登録商標）ソフトウェア、ならびに類似の最先端技術で市販の精密マシンビジョン検査システムに匹敵する。マシンビジョン検査システム１０はまた、本発明の譲受人に譲渡された米国特許第７，４５４，０５３号、同７，３２４，６８２号、２００８年１２月２３日出願の米国特許出願第１２／３４３，３８３号、２００９年１０月２９日出願の同１２／６０８，９４３号に説明されている。
【００２７】
図２は、図１のマシンビジョン検査システムと類似しており、かつ本発明による機能を含むマシンビジョン検査システム１００の制御システム部１２０およびビジョンコンポーネント部２００のブロック図である。以下でより詳細に説明するように、制御システム部１２０は、ビジョンコンポーネント部２００を制御するために用いられる。ビジョンコンポーネント部２００には、光学アセンブリ部２０５、光源２２０、２３０、２３０’および２４０、ならびに中央透明部２１２を有するワークステージ２１０が含まれる。ワークステージ２１０は、ワーク２０を配置可能なステージ表面と略平行な平面に位置するＸおよびＹ軸に沿って制御可能に移動できる。光学アセンブリ部２０５には、カメラシステム２６０および交換可能な対物レンズ２５０が含まれ、かつレンズ２８６および２８８を有するタレットレンズアセンブリ２８０を含んでもよい。タレットレンズアセンブリの代替として、固定もしくは手動で交換可能な倍率変更レンズ、またはズームレンズ構成等を含んでもよい。
【００２８】
光学アセンブリ部２０５は、制御可能モータ２９４、すなわち、アクチュエータを駆動して光学アセンブリをＺ軸に沿って移動させてワーク２０の画像の焦点を変更する制御可能モータ２９４を用いることによって、ＸおよびＹ軸に略垂直なＺ軸に沿って制御可能に移動できる。制御可能モータ２９４は、信号線２９６を介して入力／出力インターフェース１３０に接続される。
【００２９】
マシンビジョン検査システム１００を用いて撮像されることになるワーク２０または複数のワーク２０を保持するトレイもしくは固定具が、ワークステージ２１０上に配置される。ワークステージ２１０は、交換可能な対物レンズ２５０が、ワーク２０上の位置間で、および／または複数のワーク２０間で移動するために、光学アセンブリ部２０５に対して移動するように制御してもよい。透過照明光源２２０、第１の落射照明光源２３０、第２の落射照明光源２３０’および斜め照明光源（例えば、リング照明光源）２４０の１つまたは複数が、単数または複数のワーク２０を照明するために光源光２２２、２３２、２３２’および／または２４２をそれぞれ放射してもよい。以下でより詳細に説明するように、光源２３０および光源２３０’は、ミラー２９０を含む経路に沿って光２３２および２３２’を放射してもよい。第２の落射照明光源２３０’は、あるワーク材料（例えばソルダレジスト）に蛍光発光させる波長プロファイルを有する光源光２３２’を放射してもよい。かかる要素は、同時係属中で本発明の譲受人に譲渡された米国特許出願第１２／９０４，０１３号でより詳細に説明されている。蛍光および非蛍光撮像用に光源光を供給する光学経路用の上記で概説した特定の機能および要素が、単に例示的であり、非限定的であることが理解されよう。光源光が、ワーク光２５５として反射もしくは透過されるか、または蛍光ワーク光２５５’が放射され、撮像用に用いられるワーク光が、交換可能な対物レンズ２５０およびタレットレンズアセンブリ２８０を通過し、カメラシステム２６０によって集光される。単数または複数のワーク２０の画像は、カメラシステム２６０によって捕捉されるが、信号線２６２で制御システム部１２０に出力される。光源２２０、２３０、２３０’および２４０は、信号線またはバス２２１、２３１および２４１を介して制御システム部１２０にそれぞれ接続してもよい。画像倍率を変更するために、制御システム部１２０は、信号線またはバス２８１を介し、軸２８４に沿ってタレットレンズアセンブリ２８０を回転させてタレットレンズを選択してもよい。
【００３０】
図２に示すように、様々な例示的な実施形態において、制御システム部１２０には、コントローラ１２５、入力／出力インターフェース１３０、メモリ１４０、ワークプログラムジェネレータおよび実行器１７０、ならびに電源部１９０が含まれる。これらのコンポーネントのそれぞれは、以下で説明する追加的なコンポーネントと同様に、１つもしくは複数のデータ／制御バスおよび／またはアプリケーションプログラミングインターフェースによってか、または様々な要素間の直接接続によって、相互接続してもよい。
【００３１】
入力／出力インターフェース１３０には、撮像制御インターフェース１３１、運動制御インターフェース１３２、照明制御インターフェース１３３、およびレンズ制御インターフェース１３４が含まれる。運動制御インターフェース１３２には、位置制御要素１３２ａおよび速度／加速制御要素１３２ｂを含んでもよいが、しかしながら、かかる要素は、統合しても、かつ／または区別できないようにしてもよい。照明制御インターフェース１３３には、照明制御要素１３３ａ〜１３３ｎおよび１３３ｆｌが含まれ、これらの要素は、マシンビジョン検査システム１００の様々な対応する光源に対して、例えば、選択、電力、オン／オフスイッチ、およびストローブパルスタイミングを適宜制御する。照明制御要素１３３ｆｌはまた、蛍光ワーク材料を励起して蛍光画像光を放出させ得る第２の落射照明光源２３０’に対して選択、電力、オン／オフスイッチ、およびストローブパルスタイミングを適宜制御してもよい。
【００３２】
メモリ１４０には、画像ファイルメモリ部１４１と、以下でさらに概説するような予め特徴付けられた要素に関連するデータを記録するための予め特徴付けられた要素メモリ部１４０ｐｃｆと、１つまたは複数のパートプログラム等を含み得るワークプログラムメモリ部１４２と、ビデオツール部１４３と、が含まれる。ビデオツール部１４３には、対応するビデオツールのそれぞれに対してＧＵＩ、画像処理動作等を決定するビデオツール部１４３ａおよび他のビデオツール部（例えば１４３ｎ）と、関心領域ジェネレータ１４３ｒｏｉであって、ビデオツール部１４３に含まれる様々なビデオツールにおいて動作可能な、様々なＲＯＩを画定する自動、半自動および／または手動動作を支援する関心領域ジェネレータ１４３ｒｏｉと、が含まれる。
【００３３】
本開示の文脈において、かつ当業者によって周知のように、用語ビデオツールは、ビデオツールに含まれる段階的な動作シーケンスを生成することも、一般化されたテキストベースのプログラミング言語に頼ること等もなく、比較的単純なユーザインターフェース（例えば、グラフィカルユーザインターフェース、編集可能なパラメータウィンドウ、メニュー等）を介してマシンビジョンユーザが実行できる比較的複雑な動作セットを一般に指す。例えば、ビデオツールには、動作および計算を管理する少数の変数またはパラメータを調整することによって特定のインスタンスにおいて適用およびカスタマイズされる画像処理動作および計算の複雑なプリプログラムされたセットを含んでもよい。基本動作および計算に加えて、ビデオツールには、ユーザがビデオツールの特定のインスタンス用のパラメータを調整できるようにするユーザインターフェースが含まれる。例えば、多くのマシンビジョンビデオツールは、ビデオツールの特定のインスタンスにおける画像処理動作によって解析されることになる画像サブセットの位置パラメータを定義するために、ユーザが、マウスを用いた単純な「ハンドルドラッグ」動作を介してグラフィカルな関心領域インジケータを構成できるようにする。さらに、関心領域に位置する代表的ワークの特定の要素に対して、学習モード中にビデオツールのインスタンスを操作することによって、ビデオツールの画像処理動作は、ある代表的パラメータ（例えば、関心領域におけるエッジ要素を横切る強度変化）を自動的に抽出してもよく、これらの代表的パラメータは、ツールのインスタンス（すなわち、その動作）が、実行モード中に対応するワーク（例えば、同一部分または製品）上の対応する要素上で自動的に実行される場合に、パートプログラムに保存または記録して速度または信頼性を保証する限界として使用することができる。学習動作モードのこの態様は、ビデオツールの特定のインスタンスの「訓練」と呼ばれる。可視のユーザインターフェース機能が、時にはビデオツールと呼ばれ、基本動作が暗黙のうちに含まれることに留意されたい。
【００３４】
先行技術の方法とは対照的に、「除外領域動作」に関連して本明細書で開示する機能および方法が、除外領域動作以外の動作用に同様に有用な比較的単純なビデオツールを用いて実行可能であることを理解されたい。さらに、本明細書で開示する機能および方法は、それらが比較的未熟練のユーザによって実行可能であるという事実にもかかわらず、学習モード中および実行モード中の両方において、関連する要素関係（すなわち、潜在的な干渉要素または非干渉要素）に対してロバストである。
【００３５】
特に、前述の属性は、ビデオツール部１４３に含まれるロバストなビデオツール１４３ｒｔ、および関連する除外領域ジェネレータ１４３ｅｒに関連付けてもよい。それらは、本明細書において別個の要素として説明されるが、いくつかの実施形態において、除外領域ジェネレータ１４３ｅｒおよびロバストなビデオツール１４３ｒｔの機能および動作は、統合しても、かつ／または区別できないようにしてもよい。簡単に言えば、ロバストなビデオツール１４３ｒｔには、潜在的な干渉要素が、ロバストなビデオツール１４３ｅｒのインスタンスによって検査されるように意図された要素と「混同される」のを防ぐ除外領域動作１４３ｅｒｏが含まれる。いくつかの実施形態において、ロバストなビデオツール１４３ｒｔは、除外領域動作１４３ｅｒｏを含むモードで動作してもよく、かつ異なる時間に、これらの動作を省略するモードで動作してもよい。ロバストなビデオツール１４３ｒｔにはまた、ロバストなビデオツールインターフェース１４３ｒｔｕｉ（ユーザインターフェース）が含まれ、このロバストなビデオツールインターフェース１４３ｒｔｕｉには、除外領域パラメータ部１４３ｅｒｕｉを含んでもよい。しかしながら、いくつかの実施形態において、除外領域パラメータ部１４３ｅｒｕｉは、ロバストなビデオツールインターフェース１４３ｒｔｕｉの外部で（例えば、別個のインターフェース要素として、または除外領域ジェネレータ１４３ｅｒと関連して）実行してもよい。これらの要素に関連する機能および動作は、以下でより詳細に説明する。
【００３６】
一般に、メモリ部１４０は、ワーク２０の取得画像が所望の画像特性を有するように、ビジョンシステムコンポーネント部２００を動作させてワーク２０の画像を捕捉または取得するために利用可能なデータを記憶する。メモリ部１４０はまた、入力／出力インターフェース１３０を介して動作可能なグラフィカルユーザインターフェースを定義するデータを含んでもよい。メモリ部１４０はまた、検査結果データを記憶してもよく、さらに、手動または自動で、取得画像に様々な検査および測定動作を実行するようにマシンビジョン検査システム１００を動作させるために（例えば、一部はビデオツールとして実行される）、および入力／出力インターフェース１３０を介して結果を出力するために利用可能なデータを記憶してもよい。本明細書で開示するように、メモリ部１４０には、予め特徴付けられた要素メモリ部１４０ｐｃｆを含んでもよく、この要素メモリ部１４０ｐｃｆは、ある「予め特徴付けられた要素」（例えば、ビデオツールを用いて解析され特徴付けられた要素）に関連するデータを記憶して、そのデータが、ロバストなビデオツール１４３ｒｔの１つまたは複数のインスタンス用の除外領域を決定するために、除外領域ジェネレータ１４３ｅｒによって使用され得るようにする。様々な実施形態において、予め特徴付けられた要素は、ユーザインターフェースにおける参照用にラベル付けしてもよい（例えば、名前または番号を付ける）。予め特徴付けられた要素は、記憶された特定の測定結果（例えば、円要素の場合における円サイズおよび位置、または直線要素の場合における線位置および角度）と関連付け（またはそれによって特徴付け）てもよい。いくつかの実施形態において、予め特徴付けられた要素はまた、その測定結果を決定するために用いられる検出エッジ点、および／またはそれらの分散に関連する統計または寸法等（これらは、記憶してもよい）と関連付けて（またはそれらによって特徴付けて）もよい。しかしながら、いくつかの実施形態において、予め特徴付けられた要素が、測定結果、および／または不確実な統計もしくは寸法によって一旦特徴付けられると、基本エッジ点位置は、メモリから削除される。
【００３７】
透過照明光源２２０、落射照明光源２３０および２３０’ならびに斜め照明光源２４０の信号線またはバス２２１、２３１および２４１は、それぞれ全て、入力／出力インターフェース１３０に接続される。カメラシステム２６０からの信号線２６２および制御可能モータ２９４からの信号線２９６は、入力／出力インターフェース１３０に接続される。画像データを搬送することに加えて、信号線２６２は、画像取得を開始する、コントローラ１２５からの信号を搬送してもよい。
【００３８】
１つまたは複数の表示装置１３６（例えば、図１のディスプレイ１６）ならびに１つまたは複数の入力装置１３８（例えば、図１のジョイスティック２２、キーボード２４およびマウス２６）もまた、入力／出力インターフェース１３０に接続することができる。表示装置１３６および入力装置１３８は、ユーザインターフェースを表示するために用いることができるが、このユーザインターフェースには、検査動作を実行するために、および／またはカメラシステム２６０によって捕捉された画像を見るためにパートプログラムを生成し、かつ／もしくは修正するために、および／またはビジョンシステムコンポーネント部２００を直接制御するために利用可能な様々なグラフィカルユーザインターフェース（ＧＵＩ）機能を含んでもよい。
【００３９】
様々な例示的な実施形態において、ユーザが、マシンビジョン検査システム１００を用いてワーク２０用のパートプログラムを生成する場合に、ユーザは、ワークプログラミング言語を用いて、自動、半自動もしくは手動で命令を明示的に符号化することによってか、かつ／またはマシンビジョン検査システム１００を学習モードで動作させて所望の画像取得訓練シーケンスを提供することにより命令を生成することによって、パートプログラム命令を生成する。例えば、訓練シーケンスには、代表的ワークの特定のワーク要素の、視野（ＦＯＶ）における位置付け、照明レベルの設定、合焦または自動合焦、画像の取得、および（例えば、そのワーク要素に対してビデオツールの１つにおけるインスタンスを用いて）画像に適用される検査訓練シーケンスの提供を含んでもよい。学習モードは、単数または複数のシーケンスが捕捉または記録されて、対応するパートプログラム命令に変換されるように、動作する。これらの命令は、パートプログラムが実行された場合には、パートプログラムを生成する場合に用いられた代表的ワークと一致する実行モードのワーク（単数または複数）上のその特定のワーク要素（対応する位置における対応する要素）を自動で検査するために、マシンビジョン検査システムに、訓練された画像取得および検査動作を再現させる。
【００４０】
ワーク画像における要素を検査するために用いられるこれらの解析および検査方法は、典型的には、上記で概説したように、メモリ１４０のビデオツール部１４３に含まれる様々なビデオツール（例えば、ビデオツール１４３ａ、１４３ｎ等）において具体化される。多くの周知のビデオツールまたは略して「ツール」が、上記したビジョンシステムのQUICK VISION（登録商標）シリーズおよび関連するQVPAK（登録商標）ソフトウェアなどの市販のマシンビジョン検査システムに含まれる。
【００４１】
正確な測定値を確実に提供するロバストな検査動作を備えた汎用マシンビジョン検査システムを比較的未熟練のユーザがプログラムできるようにする方法およびツールを提供することが、汎用マシンビジョン検査システムにおける特別な課題である。本明細書で開示する機能および動作は、ワークの多数の層または表面に現れる要素など、ワーク上の潜在的な干渉要素に関連してこの課題に取り組む。
【００４２】
図３Ａおよび３Ｂは、代表的ワーク上の２つの要素、すなわち現在の要素３２０Ｅ（同様に領域３２０の円エッジ要素３２０Ｅである）および潜在的な干渉要素３１０Ｅ（同様に領域３１０上の円エッジ要素３１０Ｅである）を含む画像３０５のビュー３００Ａおよび３００Ｂを示す。図３Ａ−３Ｃもまた、（暗黙的な）ビデオツール４２０の現在の関心領域（ＲＯＩインジケータ４２０ｒｏｉによって示される）を示すが、このビデオツール４２０は、現在の要素３２０Ｅのエッジ検出用に用いられる円ツールである。ビュー３００Ａおよび３００Ｂは、要素３１０Ｅが現在の要素３２０Ｅとほぼ同心である理想的な製造の場合を示す。図３Ａ〜３Ｃおよび４Ａ〜４Ｃに示す例において、画像３０５には、第１の強度を提供する（点付き塗りつぶしパターンで示された）領域３３０（例えば、ソルダレジスト層によって被覆されたＰＣＢ材料を含む領域）と、第２の強度を提供する（クロスハッチ塗りつぶしパターンで示された）領域３２０（例えば、ソルダレジスト層によって被覆された銅パッドを含む領域）と、第３の強度を提供する（高密度塗りつぶしパターンで示された）領域３１０（例えば、ソルダレジスト層のホールを通して露出した銅パッドを含む領域）が含まれる。
【００４３】
図３Ａおよび３Ｂに示すように、現在の要素３２０Ｅのエッジ点４２０ＥＰを決定するための円ツール４２０が提供される。円および他のビデオツールの例示的な例が、米国特許第７，６２７，１６２号および同７，７６９，２２２号でより詳細に説明されている。円ツール４２０用のユーザインターフェースには、内側境界４２０ｉｎおよび外側境界４２０ｏｕｔを有する、関心領域インジケータ４２０ｒｏｉと、走査方向インジケータ４２２と、サンプリング方向インジケータ４２８と、検出されることになるエッジの代表的部分を示すためにユーザによって配置されるエッジセレクタ４２４と、が含まれる。走査方向インジケータ４２２は、画像におけるエッジを検出するために用いられる画素強度の解析用に使用されることになるシーケンスに対応する方向を指すように構成される。走査方向が、エッジまたは境界のテクスチャ化もしくは「ノイズ」の最も少ない側から、よりノイズのあるエッジ側に進むことが一般に有利である。このように、画像ノイズまたはテクスチャは、解析シーケンスにおいて最初に真のエッジに遭遇するという点において、エッジとして解釈される可能性がより少ない。サンプリング方向インジケータ４２８は、エッジ点方向走査が円ツール４２０のまわりで進む方向（例えば、左回りサンプリング方向）を示す。
【００４４】
図３Ａおよび３Ｂに示す場合において、内側境界４２０ｉｎは、それが、理想的に同心のエッジ要素３１０Ｅを関心領域４２０ｒｏｉから除外するように、学習モード中にユーザによって構成してもよい。かかる場合において、円ツール４２０は、エッジ要素３１０Ｅからの干渉なしに、現在の要素３２０Ｅのエッジ点４２０ＥＰを正確に決定することができる。この場合には、周知の円ツールが、所望の結果を伴って動作することになろう。対照的に、図３Ｃに関連して以下でより詳細に説明するように、エッジ要素３１０Ｅが現在の要素を３２０Ｅに重なる非理想的な場合には、図３Ａおよび３Ｂに示すように構成ならびに／または練習および記録された周知の円ツールは、正確な結果をもたらさない。
【００４５】
図３Ｃは、上記の要素に対応する（しかし異なるワーク上で）２つの要素、すなわち、現在の要素３２０Ｅ（図３Ａおよび３Ｂにおけるのと同じ番号を付けられている。なぜなら、それは、画像３０５および３０５’において同じ位置にあるからである）と、潜在的な干渉要素３１０’Ｅ（画像３０５’において位置を変更した）と、を含む画像３０５’のビュー３００Ｃを示す。図３Ｃはまた、現在の要素３２０Ｅのエッジ検出用に用いられるビデオツール４２０の現在の関心領域（ＲＯＩインジケータ４２０ｒｏｉによって示されるような）を示す。ビュー３００Ｃは、（例えば、領域３１０’が、ソルダレジスト層に間違って置かれたホールであり、かつ銅パッド領域３２０と同心でない場合に）要素３１０’Ｅが、現在の要素３２０Ｅを干渉する非理想的な製造の場合を示す。
【００４６】
図３Ｃに示すように、この場合に、関心領域４２０ｒｏｉにおける様々な走査位置で検出されたエッジ点は、現在の要素３２０Ｅの適切なエッジ点４２０ＥＰを含むエッジ点セットであって、しかしまた間違って置かれた干渉要素３１０’Ｅのエッジ点である不適切なエッジ４２０ＥＰ−Ｘを含むエッジ点セットを検出する。このエッジ点セットに適合する円は、現在の要素３２０Ｅ（またはその関連する領域３２０）の適切なサイズも位置も反映せず、したがってこの場合には、周知のビデオツールに典型的なように不適切な検査結果につながる。干渉要素３１０’Ｅの位置が、一連のワークに対して十分に予測可能ではないので、この問題は、関心領域を狭くするかまたは他の従来の手段によって解決することができない。同様に、比較的未熟練のユーザは、周知の領域マスキング技術を従来のビデオツールと統合して所望の結果をもたらすことができない。この問題の解決策は、以下で説明する。
【００４７】
簡単に言うと、図４Ａ〜４Ｃに関連してより詳細に説明するように、本明細書で開示する機能および動作には、単純なビデオツールを用いて潜在的な干渉要素を特徴付けることと、次に予め特徴付けられた潜在的な干渉要素（例えば、その実際の形状のサイズおよび／または位置測定によって特徴付けられる）に基づいた除外領域を使用する新しいタイプのロバストなビデオツールを用いて、予め特徴付けられた干渉要素の実際のエッジ点である、現在の要素の周りの関心領域で検出されたエッジ点を除外することと、が含まれる。したがって、要求通りに、潜在的な干渉要素の位置にかかわらず、現在の要素の有効なエッジ点だけが、結局、ロバストなビデオツールによって識別される。
【００４８】
図４Ａおよび４Ｂは、要素３２０Ｅおよび潜在的な干渉要素３１０’Ｅ（図３Ｃにおけるのと同じ番号を付けられている。なぜなら、同じ画像３０５’が与えられたとすると、ここで説明されるのは、現在の要素３２０Ｅを解析する新しい方法であるからである）を含む、図３Ｃに示した画像３０５’のビュー４００Ａおよび図４００Ｂを示す。図４Ａおよび４Ｂは、現在の要素３２０Ｅを解析するためにロバストなビデオツールを用いる前に実行される動作を示す。
【００４９】
特に、図４Ａは、ビデオツール４１０のＲＯＩインジケータ４１０ｒｏｉによって示すように、（暗黙的な）ビデオツール４１０の関心領域を示すが、このビデオツール４１０は、潜在的な干渉要素３１０’Ｅのエッジ検出および特徴付けのために用いられる。一実施形態において、ビデオツール４１０は、マシンビジョン検査システムに含まれる複数の標準ビデオツール（例えば、図２に関連して前に概説したビデオツール１４３ａ〜１４３ｎによって例示されるような）の１つであってもよい。図４Ａに示すように、潜在的な干渉要素３１０’Ｅの全ての潜在的な位置を包み、かつそれによって、全ての場合（例えば、破線輪郭線で示される場合３１０および３１０’’を含む全てのワーク）に対して干渉要素３１０’Ｅを確実に検出するために、関心領域４１０ｒｏｉは、非常に広くなければならない。ユーザは、経験または要素３１０’Ｅの周知の公差等に基づいて、学習モード中にＲＯＩ内側境界４１０ｉｎおよびＲＯＩ外側境界４１０ｏｕｔを構成してもよい。
【００５０】
図４Ａに示すように、ビデオツール４１０の広い関心領域は、潜在的な干渉要素３１０’Ｅと同様に要素３２０Ｅを含む可能性があり、これは、ビデオツール４１０が、要素３１０’Ｅの所望のエッジ点ではなく、要素３２０Ｅのエッジ点を誤って検出する可能性をもたらす。しかしながら、下記を含めて多くの周知の手段が、これを防ぎ得る。
【００５１】
第１に、走査方向が、（この例では）「インからアウトに」設定される場合に、走査方向に沿って検出される第１のエッジは、多くの場合に要素３１０’Ｅである傾向がある。なぜなら、それが、名目上、要素３２０Ｅより小さく、かつその内部にあるからである。
【００５２】
第２に、要素３１０’Ｅは、（この例では）要素３２０Ｅより大きな強度遷移を示し、この大きな遷移量は決定することができ、関連する大きな遷移閾値は、学習モード訓練中にツール４１０に記録することができる。ツール４１０が、許容基準としてこの閾値を用いて実行される場合（周知の慣行）には、要素３２０Ｅのエッジ点は、この閾値を満たさず、検出されない。
【００５３】
第３に、上記で概説した閾値技術の有効性は、エッジ要素３１０’Ｅにおいて強度遷移を増加させる、かつ／またはエッジ要素３２０’Ｅにおいて強度遷移を減少させる画像露光波長または照明角度を用いることによって、さらに向上させ得ることが理解されよう。したがって、いくつかの用途（全てでない）において、第１の画像（例えば、第１の波長セットを用いて露光された画像）は、潜在的な干渉要素（例えば、要素３１０’Ｅ）を検出するために用いてもよく、第２の画像は、ロバストなビデオツールを使用して現在のエッジ要素（例えば、要素３２０）を検出するために用いてもよい。いくつかの用途において、第１の画像は、第１の波長セットを用いて露光してもよく、第２の画像は、第１の波長セットと異なる第２の波長セットを用いて露光してもよい（例えば、画像の１つは、蛍光画像であってもよい）。いくつかの用途（例えば、要素の１つがスルーホールである場合）において、ホールは、一画像において（例えば透過照明光によって）背面照明してもよく、もう一方の要素は、別の画像において上から照明してもよい。
【００５４】
より一般的には、確実に特徴付けられた、予め特徴付けられた要素を提供するために、ユーザは、前述の技術のいずれを選択してもよく、かつ／または予め特徴付けられた要素が、より強いエッジ等を示す場合に、より小さな要素ではなくより大きな要素を予め特徴付けられた要素として測定することを選択してもよい。大きな円などのより大きな要素が、予め特徴付けられた要素として用いられる場合に、それは、除外領域である、円の外側のエリアであってもよい。それが、閉じた形態の内側または外側のエリアでも、線のより明るいかまたはより暗い側のエリアであっても、それは、デフォルト設定か、除外領域ジェネレータにおけるアルゴリズムか、またはユーザによって入力される設定により管理される除外領域極性パラメータによって管理可能な除外領域であると決定される。
【００５５】
図４Ａに示すように、適切な技術を用いて、ビデオツール４１０は、ＲＯＩインジケータ４１０ｒｏｉによって示される関心領域における潜在的な干渉要素３１０’Ｅの実際の位置にかかわらず、関心領域４１０ｒｏｉにおける様々な走査位置において、潜在的な干渉要素３１０’Ｅの適切なエッジ点４１０ＥＰを検出する。次に、以下でより詳細に説明するように、ロバストなビデオツールと共に用いるための除外領域を決定するのに適した予め特徴付けられた要素を提供するために、ビデオツール４１０は、円エッジ要素のエッジ点セットに円を適合させ、かつ潜在的な干渉要素３１０’Ｅのサイズおよび位置などの関連する寸法パラメータを特徴付けてもよい。
【００５６】
図４Ｂは、予め特徴付けられた要素３１０’Ｅに基づいて除外領域の一実施形態を示す画像３０５’の上面図４００Ｂを示す。除外領域は、除外領域インジケータＥＲＩによって示される。様々な実施形態において、除外領域は、学習動作モード中に定義された除外領域パラメータセットに基づいて、除外領域ジェネレータ（例えば、図２に関連して概説した除外領域ジェネレータ１４３ｅｒ）によって決定してもよい。様々な実施形態において、除外領域パラメータセットには、（例えば、図５に関連して以下で概説するような）他の除外領域パラメータと協力して除外領域を決定するために用いられる予め特徴付けられた要素の識別が含まれる。図示の実施形態において、除外領域は、それが、検出エッジ点４１０ＥＰの全て（少なくとも、異常値ではない検出エッジ点の全て）を含むように、予め特徴付けられた要素３１０’Ｅに基づいて決定される。その場合に、干渉エッジ要素３１０’Ｅ（予め特徴付けられた要素）のいずれかのエッジ点が、ロバストなビデオによって誤って検出された場合に、それは、（例えば、以下で概説するように）結局除外されることになる可能性が最も高い。しかしながら、他の実施形態において、ロバストなビデオツールによって検出されるエッジ点が、それぞれ「拡張されて」（例えば、それらの位置のまわりの膨張によって）、それらの拡張形態において、最初はそれらの生の位置を含まない除外領域内にそれらが部分的に入るようになるアプローチを取ってもよい。したがって、様々な実施形態において、除外領域は、予め特徴付けられた要素のサイズに近似する（それよりいくらか大きいかまたは小さい）様々なサイズで生成してもよく、信頼できる除外領域動作は、本明細書で開示するようなロバストなビデオツールによってやはり実行可能である。
【００５７】
例えば、いくつかの実施形態において、予め特徴付けられた要素は、ビデオツール、すなわち、ワーク画像を解析し、要素のエッジ点を検出し、かつ幾何学的要素を検出エッジ点（例えば円）に適合させて、適合された幾何学的要素を、そのサイズおよび／または位置（例えば、円中心位置および半径、もしくは直線位置および角度）を示す寸法パラメータで特徴付けるビデオツールによって、特徴付けてもよい。特徴付けは、図２に関連して概説した、予め特徴付けられた要素メモリ部１４０ｐｃｆに記憶してもよい。いくつかの実施形態において、除外領域は、その境界として適合された幾何学的要素を用いるか、または（例えば、図５に関連して以下で概説するように、除外領域パラメータセットにおける追加パラメータに基づいて）、適合された幾何学的要素のサイズおよび位置の少なくとも１つを調整し、その調整された、適合された幾何学的要素を除外領域の境界として用いることによって、（例えば、図２に関連して概説した除外領域ジェネレータ１４３ｅｒにより）決定してもよく、この場合に、調整された、適合された幾何学的要素は、幾何学的要素等を適合させるために用いられる検出エッジ点の大部分を含む境界を提供する。
【００５８】
一実施形態において、円ツールは、特徴付けの目的で円が適合されるエッジ点の分散に関連する円形寸法を提供してもよく、円は、円形寸法に基づいて調整してもよい。他の実施形態において、除外領域は、検出エッジ点等を連結する線または曲線のセグメントに沿って除外領域の境界を形成することによって、決定される。いくつかの実施形態において、除外領域のサイズの調整は、除外領域境界が走査方向とは反対の方向に動くように、（例えば、ロバストなビデオツールの走査方向インジケータまたは関連パラメータによって示されるような）走査方向に基づいている。これによって、いくつかの実施形態では、走査は、予め特徴付けられた干渉要素のいかなる誤ったエッジ点も検出しないうちに、除外領域で「停止」できることが保証される。しかしながら、除外領域を決定するかかる方法は、単に例示的であり、限定的ではない。予め特徴付けられた要素に基づいて除外領域を決定する様々な他の方法が、本開示の教示に基づいて当業者によって考案可能である。除外領域は、予め特徴付けられた要素メモリ部１４０ｐｃｆに記憶された要素を用い、図２に関連して概説した除外領域ジェネレータ１４３ｅｒによって決定してもよい。
【００５９】
図４Ｃは、ロバストなビデオツール４２０’（本明細書で開示する除外領域動作に関連する追加要素を除いて、ビデオツール４２０と同様であってもよい）の一実施形態を示す、かつ除外領域インジケータＥＲＩによって示すように、図４Ｂに関連して説明した除外領域を示す画像３０５’の上面図４００Ｃを示す。ロバストなビデオツール４２０’は、図３Ｃのビデオツール４２０に同様にまたは同一に構成してもよい（例えば、要素４２０ｒｏｉおよび４２０’ｒｏｉは、同様に構成してもよく、要素４２２、４２８および４２４は、同一であってもよい等である）。しかしながら、現在の要素のエッジ点セットが、関心領域４２０’ｒｏｉの領域において検出されたエッジ点を含むが、しかし（除外領域インジケータＥＲＩによって示された）除外領域におけるエッジ点を除外するように、ロバストなビデオツール４２０’は、ワーク画像を解析し、かつ現在の要素のエッジ点セット４２０ＥＰ’を決定する除外領域動作を含む。したがって、ロバストなビデオツール４２０’は、関心領域４２０’ｒｏｉ、すなわち、現在の要素に３２０Ｅの適切なエッジ点４２０ＥＰ’を含むが、しかし予め特徴付けられた要素３１０’Ｅに基づいて決定される（インジケータＥＲＩによって示される）除外領域に位置する予め特徴付けられた要素３１０’Ｅの不適切なエッジ点４２０ＥＰ−Ｘ（図３Ｃに示す）は除外する（含まない）関心領域４２０’ｒｏｉにおける現在の要素のエッジ点セットを検出する。したがって、この望ましい結果は、予め特徴付けられた要素３１０’Ｅの潜在的干渉位置にかかわらず、単純かつロバストな方法で達成される。
【００６０】
一実施形態において、現在の要素のエッジ点セットが除外領域内に位置するエッジ点を含むのを防ぐ、ロバストなビデオツール４２０’の除外領域動作には、関心領域４２０’ｒｏｉを解析して、そこにおける「一時的」エッジ点セット（例えば、そこにおいて検出されるエッジ点の全て）を識別することと、その後、除外領域に位置する一時的エッジ点を除去することと、残りの一時的エッジ点を、検出された現在の要素のエッジ点の最終セットとして用いることと、を含んでもよい。別の実施形態において、除外領域動作には、関心領域４２０’ｒｏｉから除外領域を除外して、修正動作関心領域を形成することと、修正動作関心領域を解析して、検出された現在の要素のエッジ点セットを決定することと、を含んでもよい。
【００６１】
図５は、ロバストなビデオツールインターフェース５００（ユーザインターフェース）の一実施形態における様々な機能を示す図であるが、このビデオツールインターフェース５００は、本明細書で開示する原理に従って除外領域を決定するために用いられる少なくとも１つの予め特徴付けられた要素の識別を含めて除外領域パラメータセットを定義するために、学習動作モード中に表示および使用される。この例において、ロバストなビデオツールインターフェース５００は、円タイプツール用であり、円ツールパラメータダイアログボックス５１０および除外領域パラメータ部５２０を含む。円ツールパラメータダイアログボックス５１０には、ユーザ選択可能タブ部５１０ａ、５１０ｂおよび５１０ｃが含まれる。ビデオツールの同様のタブ部および機能が、米国特許第７，７６９，２２２号でより詳細に説明されている。タブ部５１０ａ〜５１０ｃの全てに関し、底部のデフォルト回復ボタン５１２は、タブ部５１０ｂおよび５１０ｃにおけるエントリをそのデフォルト値へ回復し、ＯＫボタン５１４は、現在のパラメータを受け入れて、円ツールパラメータダイアログボックス５１０を閉じ、キャンセルボタン５１６は、全てのパラメータを、現在の編集シーケンスが開始する前の状態に戻して、ダイアログボックス５１０を閉じ、教示ボタン５１８は、学習モード用に用いられる代表的ワークの現在の要素（すなわち、関心領域におけるエッジ要素）に基づいて、ツールにおけるある学習動作モードを実行し、あるツールパラメータを訓練する。
【００６２】
タブ部５１０ａは、円ツールＲＯＩの中心のＸおよびＹ座標と、Ｒ１およびＲ２とそれぞれ表示された、円ツールＲＯＩの内側および外側半径と、を反映してもよい。これらの値は、関心領域インジケータを用いて、グラフィカルな定義によって決定してもよく、かつ／またはそれらは、ダイアログボックスに直接入力してもよい。タブ部５１０ａはまた、エッジセレクタの座標ＸＳおよびＹＳを反映してもよい。
【００６３】
’２２２特許でより詳細に説明されているように、ある実施形態において、タブ部５１０ｂは、選択されたＲＯＩ内で用いられるエッジ探索パラメータを反映してもよい。タブ部５１０ｂは、エッジ強度プロファイルが、円ツールによって示される円エッジ検出走査線方向に沿って進む場合に、下降傾斜（明から暗）、上昇傾斜（暗から明）または任意（どちらでも）の傾斜を示すことになるかを特定する傾斜パラメータタイプを反映してもよい。タブ部５１０ｂは、エッジ強度プロファイルが、強いエッジかそれとも弱いエッジに対応するかどうかを特定するパラメータタイプを反映してもよい。強いエッジ探索基準は、得られる検出においてより高い信頼性を保証するために、より厳格であってもよい。反対に、弱いエッジ探索基準は、弱いエッジが識別される可能性をより高くするために、信頼性をいくらか犠牲にする。タブ部５１０ｂはまた、ＲＯＩにおける円エッジに沿って点を識別するために用いられる走査パラメータを反映してもよい。異常値の除去によって、幾何学的に逸脱した点を拒絶することが可能になり、走査間隔値によって、点は、１度または５度等の間隔で識別することが可能になり、右回りまたは左回りのサンプリング方向は、エッジ走査と共に進むように指定可能である。
【００６４】
同様に’２２２特許でより詳細に説明されているように、ある実施形態において、タブ部５１０ｃには、エッジ検出を実行する前にＲＯＩにおける画像データに適用可能なフィルタタイプの選択を可能にする部分を含んでもよい。特定の例示的な一実施形態において、ユーザが、４つのフィルタタイプの１つを選択するかまたはフィルタを全く選択しないことができるようにしてもよい。ユーザは、メジアン、平均化、ガウシアンまたはモルフォロジーフィルタを選択してもよい。タブ部５１０ｃにはまた、エッジ検出動作を管理可能なエッジ検出閾値を反映する部分を含んでもよい。ある実施形態は、静的または動的エッジ閾値のどちらかの選択を可能にする。特定の例示的な一実施形態において、ユーザは、３つの値ＴＨ、ＴＨＲおよびＴＨＳを指定してもよい。静的閾値ＴＨは、エッジを画定する画素の平均画素強度を定義する。動的閾値ＴＨＲは、実行時間に値ＴＨＳを修正する。エッジ強度閾値ＴＨＳは、表面のエッジを画定する画素のグレースケール強度における差に対して最小受容閾値を定義する。これらの閾値は、エッジ点が、エッジ強度走査線に沿って識別されるか、または走査が「失敗する」かどうかを決定する。
【００６５】
図５に示す実施形態において、ロバストなビデオツールインターフェース５００は、ロバストな「除外領域モード」（すなわち、本明細書で開示するような除外領域動作を利用するモード）または周知の標準モード（すなわち、除外領域を考慮することなく、関心領域における現在の要素に対して、ワーク画像が解析され、かつエッジ点セットが決定される非除外領域モード）で動作可能な円タイプのビデオツールに対応する。この実施形態において、タブ部５１０ａには、除外領域活性化要素５２２が含まれるが、この除外領域活性化要素５２２は、除外領域パラメータ部５２０の一部を含んでもよく、かつビデオツールの現在のインスタンスが、除外領域モード（例えば、除外領域動作を用いて）かまたは非除外領域モードにおいて動作するかどうかを決定するために、ユーザによって操作可能である。この特定の実施形態において、除外領域活性化要素５２２には、ユーザ選択に基づいて切り換わる「ｙｅｓ／ｎｏ」ラジオボタンのペアが含まれる。一実施形態において、除外領域パラメータ部５２０は、「ｙｅｓ」ラジオボタンが選択された場合（すなわち、ロバストな除外領域動作モードが用いられることになる場合）にのみ、ディスプレイに現れる。他の実施形態において、これらの異なる「モード」が、代わりに２つの別個の円タイプビデオツールを用いて実行可能であることが理解されよう。
【００６６】
図５に示す実施形態において、タブ部５１０ａにもまた、「ｙｅｓ／ｎｏ」ラジオボタンのペアを含む除外要素候補インジケータ５１９が含まれ、この「ｙｅｓ／ｎｏ」ラジオボタンは、ツールの現在のインスタンスによって特徴付けられた要素が、「除外要素候補」リストに含まれるかどうかを決定するために、ユーザ選択に基づいて切り換わる。例えば、ロバストなモードが、ビデオツールインターフェース５００において活性化されない場合に、ユーザは、本明細書で開示するように、予め特徴付けられた要素を提供するために、ビデオツールの現在のインスタンスを用いて要素を特徴付けたいと思う可能性がある。その場合に、インジケータ５１９を用いて、予め特徴付けられた要素の候補リストに含むために現在の要素に印をつけ、かつ／または除外領域ジェネレータが後で用いるために、他の場合には記録されない可能性がある、ある学習されたパラメータおよび／もしくは検出エッジ点を記録することが有用になり得る。
【００６７】
除外領域パラメータ部５２０には、除外領域パラメータダイアログボックス５３０が含まれるが、この除外領域パラメータダイアログボックス５３０は、特に、ロバストなビデオツールの現在のインスタンスに対応する除外領域を生成するために用いられる除外領域パラメータセット（例えば、除外領域ジェネレータによって用いられるパラメータ）における現在のインスタンスのメンバーを定義するように構成してもよい。図５に示す実施形態において、除外領域パラメータダイアログボックス５３０には、識別部５３２、列５３６における除外領域境界調整要素、列５３８における除外方法選択要素、および列５３９における逆の領域極性選択要素が含まれる。
【００６８】
識別部５３２は、除外領域を決定するために用いられる単数または複数の予め特徴付けられた要素を識別する。図示の実施形態において、識別部５３２には、予め特徴付けられた要素のリストを含む列５３４、および対応する選択要素リストを含む列５３３が含まれ、これらは、ロバストなビデオツールの現在のインスタンス用の除外領域を決定するために用いられる、列５３４における特定の予め特徴付けられた要素の識別を提供するようにユーザによって構成される。この特定の実施形態において、各選択要素には、列５３４における対応する要素が、除外領域を決定するために用いられるかどうか（例えば、それが除外領域に含まれるかどうか）を示すために、ユーザ選択に基づいて切り換わる「ｙｅｓ／ｎｏ」ラジオボタンのペアが含まれる。一実施形態において、列５３４における予め特徴付けられた要素のリストは、マシンビジョン検査システムの制御システムによって自動で生成される。一実施形態において、リストには、全ての予め特徴付けられた要素を含んでもよい。別の実施形態において、リストには、同様に現在の画像内に位置する全ての予め特徴付けられた要素を含んでもよい。別の実施形態において、リストには、ロバストなビデオツールの現在のインスタンスの画定された関心領域に近い（例えば、その所定の距離内の）全ての予め特徴付けられた要素を含んでもよい。さらに他の実施形態において、ロバストなビデオツール動作および／または除外領域ジェネレータは、ロバストなビデオツールの現在のインスタンスに最も近い（すなわち、その関心領域に最も近い）予め特徴付けられた要素を、ロバストなビデオツールの現在のインスタンス用の除外領域を決定するために用いられる現在の除外領域パラメータセットに含まれる予め特徴付けられた要素として、自動で識別してもよい。かかる実施形態において、識別部５３２は省略してもよい。
【００６９】
前に概説したように、除外領域のサイズは、（例えば、除外領域が、予め特徴付けられた要素の検出エッジ点の大部分を含むように）検出エッジ点の膨張を調整するか、または適合された幾何学的要素のサイズを調整すること等に基づいて調整してもよい。列５３６における除外領域境界調整要素は、かかる調整のサイズを管理するために、ユーザが設定してもよい。図５に示す実施形態において、列５３６における除外領域境界調整要素には、スライダ５３６ｓが含まれるが、このスライダ５３６ｓは、調整量を決定するためにユーザがドラッグしてもよい。しかしながら、他の実施形態において、ユーザは、調整量として画素（または他の単位）数を入力してもよい。他の実施形態において、ユーザは、表示された除外領域インジケータ（例えば、図６に示すような）上のハンドルをドラッグしてもよく、または調整は、（例えば、デフォルト量、もしくは要素予め特徴付けられた要素の決定された分散パラメータ等に基づいて）自動であってもよく、かつ列５３６における除外領域境界調整要素は、省略してもよい。
【００７０】
前に概説したように、現在の要素のエッジ点セットが、除外領域内に位置するエッジ点を含むのを防ぐロバストなビデオツールの除外領域動作には、関心領域を解析して、そこにおける「一時的」エッジ点セットを識別することと、次に、除外領域に位置する一時的エッジ点を除去することと、残りの一時的エッジ点を、検出された現在の要素のエッジ点の最終セットとして用いることと、を含んでもよい。別の実施形態において、除外領域動作には、関心領域から除外領域を除外して修正動作関心領域を形成することと、修正動作関心領域を解析して、検出された現在の要素のエッジ点セットを決定ことと、を含んでもよい。一実施形態において、５３８列に示す除外方法選択要素は、これらの方法のどれが適用されるかを選択するために、ユーザが用いてもよい。他の実施形態において、方法は、予め決定してもよく、５３８列における要素は、省略してもよい。
【００７１】
前に概説したように、ユーザは、確実に特徴付けられた、予め特徴付けられた要素を提供するために、特徴がより強いエッジ等を示す場合に、予め特徴付けられた要素として、より小さな要素ではなくより大きな要素を測定することに選択してもよい。大きな円などのより大きな要素が、予め特徴付けられた要素として用いられる場合に、それは、ロバストなビデオツールの現在のインスタンスに適用可能な除外領域である「円の外側の」エリアであってもよい。一実施形態において、極性を逆にするためにユーザがクリック可能なトグルスイッチアイコンを含む、列５３９における逆の領域極性選択要素は、予め特徴付けられた要素に対して除外領域の「極性」を選択するために、ユーザが用いてもよい。他の実施形態において、極性は、ロバストなビデオツールの現在のインスタンスおよび／または関連する予め特徴付けられた要素の他のパラメータに基づいて、自動で決定してもよく、列５３９における要素は、省略してもよい。
【００７２】
ユーザインターフェース機能の前述の実施形態が、単に例示的であり、非限定的であることが理解されよう。ロバストなビデオツールユーザインターフェースの文脈における除外領域パラメータセットのメンバーを入力および／または変更するために使用可能な他の機能が、本開示に基づいて当業者には明らかであろう。
【００７３】
図６は、学習動作モード中におけるユーザインターフェースディスプレイ６００の一実施形態における様々な機能を示す図である。図６に示す例示的な状態において、ユーザインターフェースディスプレイ６００には、ワーク画像３０５’を表示する視野ウィンドウ６０３と、図５に関連して前に説明したロバストなビデオツールインターフェース要素５１０および５３０と同様に、例えば要素４２０’ｒｏｉ、４２０’ｉｎ、４２０’ｏｕｔ、４２２、４２４、４２８およびＥＲＩなど、図４Ｃに関連して前に説明したような、ロバストなビデオツールインターフェースのいくつかの番号を付けられた要素および機能と、が含まれる。ユーザインターフェースディスプレイ６００にはまた、選択バー６２０および６４０などの様々な測定および／または動作選択バー、リアルタイムＸ−Ｙ−Ｚ（位置）座標ウィンドウ６３０、ならびに照明制御ウィンドウ６５０が含まれる。
【００７４】
様々な実施形態において、ユーザは、複数の代替ビデオツールおよび／またはモード選択ボタン（全ては、ツールメニュー要素６１０の下でアクセスされる）を表示するドロップダウンメニューまたはツールバーからロバストなビデオツールを選択することによって、ロバストなビデオツールの現在のインスタンスを生成してもよい。かかる選択に基づき、一実施形態において、上記で概説したように、ユーザインターフェースは、選択されたロバストなビデオツールの様々なパラメータを構成するために、前に説明したロバストな円ツールパラメータダイアログボックス５１０および除外領域パラメータダイアログボックス５３０と同様に、関心領域インジケータ４２０’ｒｏｉの領域をデフォルト位置に自動で表示してもよい。
【００７５】
様々な実施形態において、視野ウィンドウ６０３に示すように、ロバストなビデオツールインターフェースは、関心領域インジケータ４２０’ｒｏｉと、検査される現在の要素３２０Ｅ上に重ねられた、ロバストなビデオツールの除外領域インジケータＥＲＩと、を表示する。様々な実施形態において、除外領域インジケータＥＲＩは、現在の関心領域４２０’ｒｏｉに最も近い予め特徴付けられた要素に基づいて決定されるようにか、または（図５に関連して上記で概説したように）予め特徴付けられた要素が、除外領域パラメータダイアログボックス５３０の適切な列を用いて選択されるとすぐになど、自動で現れてもよい。図６に示す実施形態において、除外領域インジケータＥＲＩにはサイズ調整ハンドルＥＲＩａｈが含まれるが、このサイズ調整ハンドルＥＲＩａｈは、ユーザがマウスを用いて係合しドラッグして、（例えば、上記で概説した原理に従って、除外領域ジェネレータによって生成されるように）除外領域をサイズ変更し、かつ関連する調整パラメータを定義または再定義してもよい。様々な実施形態において、除外領域インジケータＥＲＩは、変化が、除外領域パラメータダイアログボックス５３０等を用いて除外領域パラメータセットの現在のインスタンスにおいてなされる場合には、ディスプレイ上で自動で変化してもよい。
【００７６】
図６に示す例において、除外領域インジケータＥＲＩによって示される除外領域は、除外領域パラメータダイアログボックス５３０によって選択された予め特徴付けられた要素「円１」に対応する。その名前が示すように、円１は、予め特徴付けられた要素であって、例えば、そのエッジ点を検出し、かつその寸法パラメータを特徴付けるために、複数のビデオツール（例えば、ツールメニュー要素６１０を用いてアクセス可能なツール）に含まれる円ツールを用いて特徴付けられた、予め特徴付けられた要素である。一実施形態において、上記で概説したように、除外領域インジケータＥＲＩは、円１が（図５に関連して上記で概説したように）除外領域パラメータダイアログボックス５３０の適切な列を用いて選択されるとすぐに、要素円１の予め特徴付けられた位置に自動で現れてもよく、除外領域ジェネレータは、選択された円１、および除外領域パラメータダイアログボックス５３０において定義された関連パラメータに基づいて、除外領域を決定する。一実施形態において、要素円１の記憶された特徴付けデータは、（例えば、円ツールによって特徴付けられるように）予め特徴付けられたエッジ要素３１０’Ｅのエッジ点に適合された円に対応してもよく、除外領域インジケータＥＲＩは、最初は、除外領域パラメータダイアログボックス５３０の調整列に示されるようなデフォルトまたはユーザ入力調整量と共に、その適合された円に基づいて決定される除外領域に対応してもよい。望ましくは、調整量は、予め特徴付けられたエッジ要素３１０’Ｅのいかなる観察可能なエッジ点も除外領域内に入るように、設定されるべきであり、その結果、ロバストなビデオツールの除外領域動作（例えば、現在の要素のエッジ点セット４２０ＥＰ’が、関心領域４２０’ｒｏｉにおいて検出されるエッジ点を含み、かつＥＲＩによって示される除外領域内に位置するエッジ点を含まないように、現在の要素のエッジ点セット４２０ＥＰ’を決定する動作）は、ＥＲＩによって示される除外領域内に位置するエッジ点が、ロバストなビデオツールの現在のインスタンスによって検出および解析されることになる現在の要素３２０Ｅの現在の要素のエッジ点セット４２０ＥＰ’に含まれ得ないようにする。
【００７７】
前に概説したように、様々な実施形態において、マシンビジョン検査システム（例えば、図２に示すシステム１００）には、学習動作モードおよび実行動作モードが含まれる。そのユーザインターフェースは、学習動作モード中に代表的ワークを用いて少なくとも１つの予め特徴付けられた要素（例えば、図６に示す要素円１）を提供するために、複数のビデオツール（例えば、図２に示すビデオツール１４３ａ〜１４３ｎ）に含まれるビデオツールの少なくとも１つのインスタンスのパラメータを定義するように構成される。ロバストなビデオツールインターフェース（例えば、図５および６に示す要素５１０、５２０および５３０を含む）は、学習動作モード中に代表的ワーク上で、現在の要素用の現在の要素のエッジ点セット（例えば、図６に示す、現在の要素３２０Ｅの現在の要素のエッジ点セット４２０ＥＰ’）を決定するために用いられるロバストなビデオツールの現在のインスタンスのパラメータを定義するように構成される。マシンビジョン検査システムは、学習動作モード中に定義されたパラメータをパートプログラムに記録するように構成されるが、これらのパラメータには、少なくとも１つの予め特徴付けられた要素を提供するために用いられる少なくとも１つのビデオツールの定義されたパラメータと、ロバストなビデオツールの現在のインスタンスの定義されたパラメータと、定義された除外領域パラメータセットと、が含まれる。マシンビジョン検査システムはまた、代表的ワークと類似の実行モードワーク用の実行動作モード中にパートプログラムの動作を実行するように構成され、この場合に、パートプログラムの動作には、（ａ）少なくとも１つのビデオツールにおける現在のインスタンスの記録された定義済みパラメータを用いて、実行モードワーク上の少なくとも１つの予め特徴付けられた要素の特徴付けを提供することと、（ｂ）記録された定義済み除外領域パラメータを用い、実行モードワーク上の少なくとも１つの予め特徴付けられた要素に基づいて除外領域を決定することと、（ｃ）現在の要素のエッジ点セットが、実行モードワークにおいて、ロバストなビデオツールの現在のインスタンスの関心領域で検出されたエッジ点を含み、かつ実行モードワークにおいて、少なくとも１つの予め特徴付けられた要素に基づいて決定された除外領域内に位置するエッジ点を含まないように、ロバストなビデオツールの現在のインスタンスの記録された定義済みパラメータを用いて、実行モードワーク上の現在の要素の現在の要素のエッジ点を決定することと、が含まれる。
【００７８】
前に示したように、本発明の機能は、先行技術と比較して、より一般的で、実行がより簡単で、ある種の用途においてはさらによりロバストである。特に、上記で開示した動作および機能は、比較的未熟練のユーザによって操作可能なビデオツール動作および機能である。重要なことに、開示の機能および動作は、適切に製造されたかまたは不適切に製造された代表的ワークに対して学習モードでのプログラミングを可能にし、かつ適切に製造されたかまたは不適切に製造された実行モードワークに対して、得られる自動パートプログラムにおいてやはり確実に動作する。
【００７９】
本明細書で図示し説明する例は、円タイプビデオツールを用いて特徴付けられた円要素である、予め特徴付けられた要素および現在の要素を用いるが、その同様の教示および原理が、アーク形状関心領域を用いるアークツールまたは直線エッジを特徴付けて矩形関心領域用いるツールなどの他のタイプのビデオツールを用いて実行可能であることを理解されたい。かかるツールは、当該技術分野において周知であり、本明細書で開示する教示および原理に基づき、本発明によるロバストなビデオツールの機能を追加するように修正してもよい。
【００８０】
さらに、本明細書で図示し説明する例は、ロバストなビデオツールの特定インスタンスに対応するように定義された除外領域を用いるが、本明細書で開示する原理はまた、全体的に適用および／または実行可能である。例えば、一実施形態において、１つまたは複数のロバストなビデオツールのセットを学習モード中に定義してもよく、この場合に、各ツールには、上記で概説した除外領域動作が含まれる。除外領域を決定するために用いられる予め特徴付けられた要素のセットもまた、（例えば、一実施形態では、様々なビデオツールにおいて、図５に示す要素５１９と類似の要素を実行することによって）学習モード中に定義してもよい。一実施形態において、除外領域パラメータダイアログボックス５３０と類似のダイアログボックスを用いて、予め特徴付けられた要素のセットの各メンバーまたは全てに対して、関連する除外領域パラメータを定義してもよい。その後、学習モードの終わりかまたは別の適切な時間に、除外領域ジェネレータは、予め特徴付けられた要素の定義されたセットに対応する除外領域セットを含む「グローバル」除外領域を生成してもよい。その後、各ロバストなビデオツールは、その除外領域動作を実行する場合に、グローバル除外領域を参照してもよい。
【００８１】
本発明の様々な例示的な実施形態を図示し説明したが、動作の機能およびシーケンスの図示し説明した構成における多数の変形が、本開示に基づいて当業者には明らかであろう。他の実施形態において、本発明の除外領域方法の利用に特有の新しいタイプのビデオツールが、提供可能である。他のビデオツール実施形態および関連するグラフィカルユーザインターフェース機能が、本明細書で開示する一般的な教示の恩恵にあずかる当業者には明らかであろう。したがって、本明細書の教示による様々な変更が、本発明の趣旨および範囲から逸脱せずに、上記で概説した様々な特定の実施形態に対してなし得ることが理解されよう。
【符号の説明】
【００８２】
、１０・・・マシンビジョン検査システム、２０・・・ワーク、３２・・・可動ワークステージ、３４・・・光学撮像システム、１００・・・マシンビジョン検査システム、１２０・・・制御システム部、１２５・・・コントローラ、１３０・・・入力／出力インターフェース、１３１・・・撮像制御インターフェース、１３２・・・運動制御インターフェース、１３２ａ・・・位置制御要素、１３２ｂ・・・速度／加速制御要素、１３３・・・照明制御インターフェース、１３３ａ〜１３３ｎ・・・照明制御要素、１３３ｆｌ・・・照明制御要素、１３４・・・レンズ制御インターフェース、１３６・・・表示装置、１３８・・・入力装置、１４０・・・メモリ、１４０ｐｃｆ・・・予め特徴付けられた特徴メモリ部、１４１・・・画像ファイルメモリ部、１４２・・・ワークプログラムメモリ部、１４３・・・ビデオツール部、１４３ａ・・・ビデオツール部、１４３ｅｒ・・・除外領域ジェネレータ、１４３ｅｒｏ・・・除外領域動作、１４３ｅｒｕｉ・・・除外領域パラメータ部、１４３ｎ・・・ビデオツール部、１４３ｒｏｉ・・・関心領域ジェネレータ、１４３ｒｔ・・・ロバストなビデオツール、１４３ｒｔｕｉ・・・ロバストなビデオツールインターフェース、１７０・・・ワークプログラムジェネレータおよび実行器、１９０・・・電源部、２００・・・ビジョンコンポーネント部、２０５・・・光学アセンブリ部、２１０・・・ワークステージ、２１２・・・中央透明部、２２０・・・透過照明光源、２３０・・・第１の落射照明光源、２３０’・・・第２の落射照明光源、２４０・・・斜め照明光源、２５０・・・対物レンズ、２５５・・・ワーク光、２５５’・・・蛍光ワーク光、２６０・・・カメラシステム、３１０Ｅ・・・潜在的な干渉要素、３１０’Ｅ・・・潜在的な干渉要素、３２０Ｅ・・・現在の要素、３２０’Ｅ・・・エッジ特徴、４１０・・・ビデオツール、４１０ｒｏｉ・・・関心領域インジケータ、４１０ｉｎ・・・関心領域内側境界、４１０ｏｕｔ・・・関心領域外側境界、４２０・・・円ツール、４２０’・・・ロバストなビデオツール、４２０ＥＰ・・・現在の要素のエッジ点、４２０ＥＰ’・・・現在の要素のエッジ点セット、４２０ＥＰ−Ｘ・・・不適切なエッジ点、４２０ｉｎ・・・内側境界、４２０’ｉｎ・・・要素、４２０ｏｕｔ・・・外側境界、４２０’ｏｕｔ・・・要素、４２０ｒｏｉ・・・関心領域インジケータ、４２０’ｒｏｉ・・・関心領域インジケータ、４２２・・・走査方向インジケータ、４２４・・・エッジセレクタ、４２８・・・サンプリング方向インジケータ、５００・・・ロバストなビデオツールインターフェース、５１０・・・円ツールパラメータダイアログボックス、５１０ａ、５１０ｂ、５１０ｃ・・・ユーザ選択可能タブ部、ＥＲＩ・・・除外領域インジケータ、ＥＲＩａｈ・・・サイズ調整ハンドル、
【図１】
0006001305.tif 000002
【図２】
0006001305.tif 000003
【図３Ａ】
0006001305.tif 000004
【図３Ｂ】
0006001305.tif 000005
【図３Ｃ】
0006001305.tif 000006
【図４Ａ】
0006001305.tif 000007
【図４Ｂ】
0006001305.tif 000008
【図４Ｃ】
0006001305.tif 000009
【図５】
0006001305.tif 000010
【図６】
0006001305.tif 000011