(57)【要約】【課題】  ロバストエッジ区別マージンを用いるエッジ測定ビデオツールを提供する。【解決手段】  マシンビジョンシステムにおけるエッジ要素ビデオツールの関心領域内の複数のエッジを区別する確実な方法は、走査方向及び強度微分閾値を決定すること、及び関連付けられた微分隆起部を定義することを含む。微分閾値は、関心領域の画像から導出される強度微分プロファイルの特定の特徴に基づく最大範囲内にあることが必要とされ得る。微分隆起部は、強度微分プロファイルとエッジ微分閾値との間の順次交点にある区切りにより定義される。単一の隆起が、複数の各エッジに対応する微分極値を含むことができる。定義された微分隆起部に関連して選択エッジの位置を示す微分隆起部カウントパラメータが自動的に決定される。微分隆起部カウントパラメータは、走査方向に対応し得る。【選択図】図２
2014215301.tif 000002
【特許請求の範囲】
【請求項１】
マシンビジョン検査システムに含まれるエッジ要素ビデオツールの関心領域内の複数のエッジを区別する場合、エッジ検出の確実性を向上させる方法であって、
関心領域（ＲＯＩ）と、エッジ微分閾値、プロファイル走査方向、及び微分隆起部カウントパラメータを含む複数のエッジ検出パラメータにより制御されるエッジ検出動作と、関心領域インジケータ及びエッジ選択要素を含むビデオツールＧＵＩとを含むエッジ要素ビデオツールを提供すること、
ワークピースを前記マシンビジョン検査システムの視野に配置すること、
前記エッジ要素ビデオツールを動作させて、取得される前記ワークピース画像内に複数のエッジ要素を含むＲＯＩを定義すること、
前記エッジ要素ビデオツールを動作させて、前記ＲＯＩ内から前記エッジ要素ビデオツールの前記エッジ検出動作により検出されるエッジ要素を選択すること、
前記エッジ要素ビデオツールを動作させて、前記プロファイル走査方向及び前記エッジ微分閾値を決定すること、並びに
前記エッジ要素ビデオツールを動作させて、前記プロファイル走査方向及び前記エッジ微分閾値に対応する前記微分隆起部カウントパラメータを自動的に特定すること、
を含み、
前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を決定することは、前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を最大範囲内に設定することを含み、前記最大範囲は、一方の限度として、前記選択エッジの微分プロファイル極値を有するとともに、他方の限度として、前記関心領域内の前記選択エッジを横切る強度微分プロファイルに沿って、前記選択エッジの微分プロファイル極値に隣接し、且つ前記選択エッジの微分プロファイル極値とは逆の極性を有する２つの近傍極値である２つの微分プロファイル近傍極値のうちの一方を有し、
前記エッジ要素ビデオツールを動作させて、前記決定されるプロファイル走査方向及びエッジ微分閾値に対応する前記微分隆起部カウントパラメータを自動的に決定することは、前記微分隆起部カウントパラメータが条件を満たすように構成された前記エッジ要素ビデオツールの自動動作を実行することを含み、前記条件は、
（ａ）微分隆起部が、前記強度微分プロファイルと前記決定されるエッジ微分閾値との順次交点での前記強度微分プロファイルの区切りにより定義され、少なくとも、前記決定されるプロファイル走査方向に沿って前記選択エッジよりも前に遭遇する交点に関して定義されること、
（ｂ）単一の微分隆起部が、前記条件（ａ）により定義される前記区切り間で前記強度微分プロファイルに沿った複数のエッジに対応する複数の微分極値を含むことができること、及び
（ｃ）前記微分隆起部カウントパラメータは、前記定義される微分隆起部に関連して前記選択エッジの位置を示すことを含む、方法。
【請求項２】
前記２つの微分プロファイル近傍極値のうちの前記他方の限度となる極値は、前記選択エッジの前記微分プロファイル極値の値により近い方である、請求項１に記載の方法。
【請求項３】
前記２つの微分プロファイル近傍極値のうちの前記他方の限度となる限度極値は、前記決定されるプロファイル走査方向に沿って前記選択エッジよりも前に遭遇する前記近傍極値に対応するものである、請求項１に記載の方法。
【請求項４】
前記エッジ要素ビデオツールは、自動的に、前記エッジ微分閾値を、前記微分値ゼロを含む微分ノイズ帯内の値に設定しないようにする動作を含む、請求項１に記載の方法。
【請求項５】
前記２つの微分プロファイル近傍極値のうちの前記他方の限度となる極値が、前記微分ノイズ帯内にある場合、前記最大範囲の前記他方の限度は、前記選択エッジの微分プロファイル極値に最も近い前記微分ノイズ帯の限度よりも、前記選択エッジの微分プロファイル極値から離れないように定義される、請求項２に記載の方法。
【請求項６】
前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を前記最大範囲内に設定することは、前記最大範囲内に含まれるロバスト極値マージン内に前記エッジ微分閾値を設定することを含み、前記ロバスト極値マージンは定義条件を満たし、前記定義条件は、
（ａ）前記最大範囲に含まれ、前記決定されるプロファイル走査方向に沿って前記選択エッジ以前（選択エッジを含む）に遭遇する強度微分プロファイル内の微分極値に対応する、微分極値のランク付きリスト内の順次値である第１及び第２の微分極値により前記ロバスト極値マージンを制限すること、並びに
（ｂ）前記ロバスト極値マージンを制限する前記第１及び第２の微分極値は、（ｂ１）前記ランク付きリスト内の順次値間の最大差及び（ｂ２）前記エッジ要素ビデオツールにおいて定義される最小マージン値を超える差のうちの一方を示す順次値であることを含む、請求項１乃至請求項５に記載の方法。
【請求項７】
前記方法は、前記定義条件を満たすロバスト極値マージンを自動的に決定するように構成される前記エッジ要素ビデオツールの動作を実行することを含む、請求項４に記載の方法。
【請求項８】
前記ロバスト極値マージンを制限する前記第１及び第２の微分極値は、前記ランク付きリスト内の順次値間の最大差を示す前記順次値である、請求項７に記載の方法。
【請求項９】
前記ビデオツールＧＵＩ内に表示された強度微分プロファイルに前記自動的に決定されたロバスト極値マージンを重ねて表示することをさらに含む、請求項７に記載の方法。
【請求項１０】
前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を前記ロバスト極値マージン内に設定することは、前記エッジ微分閾値を前記自動的に決定されるロバスト極値マージン内に自動的に設定することを含む、請求項７に記載の方法。
【請求項１１】
前記ロバスト極値マージンを自動的に決定するように構成された前記動作は、条件を満たす第１及び第２のプロファイル走査方向ロバスト極値マージンを決定することを含み、前記条件は、
（ａ）前記第１のプロファイル走査方向ロバスト極値マージンは、前記第１のプロファイル走査方向に沿って前記選択エッジ以前（選択エッジを含む）に遭遇し、且つ第１の最大範囲に含まれる、前記強度微分プロファイル内の微分極値に対応する微分極値の第１のランク付きリスト内の順次値である第１及び第２の微分極値により制限され、前記第１のプロファイル走査方向ロバスト極値マージンを制限する前記第１及び第２の微分極値は、前記第１のランク付きリスト内の順次値間で最大差を示す順次値であること、及び
（ｂ）前記第２のプロファイル走査方向ロバスト極値マージンは、前記第２のプロファイル走査方向に沿って前記選択エッジ以前（選択エッジを含む）に遭遇し、且つ第２の最大範囲に含まれる、前記強度微分プロファイル内の微分極値に対応する微分極値の第２のランク付きリスト内の順次値である第１及び第２の微分極値により制限され、前記第２のプロファイル走査方向ロバスト極値マージンを制限する前記第１及び第２の微分極値は、前記第２のランク付きリスト内の順次値間で最大差を示す順次値であること、
を含み、
前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を前記ロバスト極値マージン内に設定することは、前記第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの一方を選択すること、及び前記エッジ微分閾値を当該選択したロバスト極値マージン内に設定することを含み、
前記エッジ要素ビデオツールを動作させて、前記プロファイル走査方向を決定することは、前記第１のプロファイル走査方向ロバスト極値マージンが選択される場合、前記プロファイル走査方向を前記第１のプロファイル走査方向に設定し、前記第２のプロファイル走査方向ロバスト極値マージンが選択される場合、前記第２のプロファイル走査方向に設定することを含む、請求項７に記載の方法。
【請求項１２】
前記ビデオツールＧＵＩ内に表示された強度微分プロファイルに第１及び第２のプロファイル走査方向ロバスト極値マージンを重ねて表示することをさらに含み、
前記第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの一方を選択することは、（ａ）前記表示された第１及び第２のロバスト極値マージンのうちの一方、及び（ｂ）前記表示された第１及び第２のプロファイル走査方向ロバスト極値マージンに対応する前記第１及び第２のプロファイル走査方向のうちの一方、のうちの少なくとも１つを手動で選択することを含む、請求項１１に記載の方法。
【請求項１３】
前記第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの一方を選択することは、前記第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの大きい方を自動的に選択することを含み、
前記エッジ微分閾値を前記選択されたロバスト極値マージン内に設定することは、前記エッジ微分閾値を前記自動的に選択されるロバスト極値マージン内に自動的に設定することを含む、請求項１１に記載の方法。
【請求項１４】
前記第１の最大範囲及び前記第２の最大範囲は、（ａ）前記第１及び第２の最大範囲が同じ最大範囲であり、その最大範囲のうちの前記他方の限度が、前記選択エッジの前記微分プロファイル極値に最も近い前記２つの近傍極値のうちの一方よりも、前記選択エッジ極値から遠くない、及び（ｂ）前記第１の最大範囲は、前記第１のプロファイル走査方向に沿って前記選択エッジよりも前に遭遇する第１の近傍極値に基づいて決定され、前記第２の最大範囲は、前記第２のプロファイル走査方向に沿って前記選択エッジよりも前に遭遇する第２の近傍極値に基づいて決定される、のうちの１つを満たす、請求項１１に記載の方法。
【請求項１５】
前記ビデオツールＧＵＩ内に表示された強度微分プロファイルに前記エッジ微分閾値の現在値に対応するエッジ微分閾値インジケータを重ねて表示することをさらに含む、請求項１に記載の方法。
【請求項１６】
前記表示されるエッジ微分閾値インジケータは、前記ビデオツールＧＵＩにおいて手動で調整可能であり、
前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を前記最大範囲内に設定することは、前記エッジ微分閾値インジケータを手動で調整することを含む、請求項１５に記載の方法。
【請求項１７】
前記エッジ要素ビデオツールを動作させて、前記エッジ微分閾値を前記最大範囲内に設定することは、前記エッジ微分閾値を前記最大範囲内に自動的に設定することを含む、請求項１に記載の方法。
【請求項１８】
前記方法は、学習動作モードに従って実行され、前記方法において決定されるパラメータは、同様のワークピースに将来使用するためにパートプログラムに保存される、請求項１に記載の方法。
【請求項１９】
前記ビデオツールＧＵＩは、前記エッジ要素ビデオツールを使用して、前記エッジ検出パラメータの現在のセットに基づいて、前記選択されたエッジ要素を検出することに関連するリスクの程度を示す検出ロバスト性インジケータを含み、前記方法は、前記検出ロバスト性インジケータを前記ビデオツールＧＵＩに表示することをさらに含む、請求項１に記載の方法。
【請求項２０】
前記ビデオツールＧＵＩに表示される強度微分プロファイルに前記エッジ微分閾値の現在値に対応するエッジ微分閾値インジケータを重ねて表示することをさらに含み、前記検出ロバスト性インジケータは、前記エッジ微分閾値インジケータに関連付けられた色を含む、請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはマシンビジョン検査システムに関し、より詳細には、密な間隔のエッジのロバストで精密なエッジ位置特定に関する。
【背景技術】
【０００２】
精密なマシンビジョン検査システム（又は略して「ビジョンシステム」）は、被検査物体の精密な寸法測定を取得し、様々な他の物体特徴を検査するために利用することができる。そのようなシステムは、コンピュータと、カメラ及び光学系と、複数の方向に移動可能であり、ワークピース検査を可能にする精密ステージとを含み得る。汎用「オフライン」精密ビジョンシステムとして特徴付けることができる１つの例示的な従来技術によるシステムは、イリノイ州Auroraに所在の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に説明されている。この種のシステムは、顕微鏡型光学系を使用可能であり、様々な倍率で小さいワークピース又は比較的大きなワークピースの検査画像を提供するようにステージを移動させることが可能である。
【０００３】
QUICK VISION（登録商標）システム等の汎用精密マシンビジョン検査システムは一般に、自動ビデオ検査を提供するようにプログラム可能でもある。そのようなシステムは通常、「非専門家」操作者が操作及びプログラミングを実行できるように、ＧＵＩ機能及び事前定義される画像解析「ビデオツール」を含む。例えば、米国特許第６，５４２，１８０号は、様々なビデオツールの使用を含む自動ビデオ検査を使用するビジョンシステムを教示している。例示的なビデオツールとしては、ワークピースのエッジ要素を見つけるために使用される「ボックスツール」と呼ばれることもあるエッジ位置特定ツールを含む。例えば、本願と同じ譲受人に譲渡された米国特許第７，６２７，１６２号は、ボックスツールの様々なアプリケーションを教示している。
【０００４】
特定の検査イベントシーケンス（すなわち、各画像を取得する方法及び各取得画像を解析／検査する方法）を含むマシン制御命令は一般に、特定のワークピース構成に固有の「パートプログラム」又は「ワークピースプログラム」として記憶される。例えば、パートプログラムは、ワークピースに対してカメラを位置決めする方法、照明レベル、倍率レベル等の各画像を取得する方法を定義する。さらに、パートプログラムは、例えば、エッジ／境界検出ビデオツール等の１つ又は複数のビデオツールを使用することにより、取得画像を解析／検査する方法を定義する。
【０００５】
ビデオツール（又は略して「ツール」）及び他のグラフィカルユーザインタフェース機能を手動で使用して、手動検査及び／又はマシン制御動作を達成し得る（「手動モード」で）。セットアップパラメータ及び動作は、学習モード中に記録して、自動検査プログラム又は「パートプログラム」を作成することもできる。ビデオツールとしては、例えば、エッジ／境界検出ツール、オートフォーカスツール、形状又はパターン照合ツール、寸法測定ツール等を挙げることができる。
【０００６】
ワークピース画像でエッジ要素を位置特定する様々な方法が既知である。例えば、エッジ要素を含む画像に輝度微分演算子を適用して、位置を特定する様々なアルゴリズム、例えば、キャニーエッジ検出器又は微分エッジ検出器が既知である。そのようなエッジ検出アルゴリズムは、輝度微分を強調し、又はエッジ位置精度及び再現性を向上させるために、入念に構成された照明及び／又は特別な画像処理技法も使用するマシンビジョン検査システムに含め得る。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
いくつかのマシンビジョンシステム（例えば、上述したQVPAK（登録商標）ソフトウェアを利用するもの）は、エッジ検出アルゴリズムの調整可能パラメータを有するエッジ位置特定ビデオツールを提供する。特定の実施態様では、このパラメータは、まず、学習動作モード中に代表的なワークピースのエッジについて特定され、次に、実行動作モード中に同様のワークピースの対応するエッジを見つけるために利用される。望ましいエッジ検出パラメータを学習モード中に自動的に特定することが困難又は不可能な場合、ユーザは、パラメータを手動で調整することを選び得る。しかし、特定のエッジ検出パラメータ（例えば、本明細書において概説されるＴＨ及びＴＨＳ等の閾値）は、大半のユーザ（例えば、比較的未熟なユーザ）にとって理解が難しいと見なされ、そのようなパラメータ調整が特定のエッジ検出動作にどのように影響するかは、可視化が難しいと考えられる。パラメータの調整は、汎用マシンビジョン検査システムをプログラミングして使用する場合に遭遇するであろう部分毎に異なる様々なエッジ状況及びワークピース材料によりさらに複雑になり得る。未熟なユーザであっても様々なタイプのエッジを確実に検査可能なようにエッジ位置特定ビデオツールのパラメータを調整することができる改良された方法及びシステムが望まれている。より詳細には、複数のエッジを含む関心領域画におけるエッジ検出の確実性を向上させる方法及びシステムが望ましい。
【課題を解決するための手段】
【０００８】
概要
この概要は、詳細な説明においてさらに後述する選択された概念を簡易化された形態で紹介するために提供される。この概要は、特許請求される主題の主要な特徴を識別する意図はなく、特許請求される主題の範囲を判断する際の助けとして使用される意図もない。
【０００９】
マシンビジョン検査システムに含まれるエッジ要素ビデオツールの関心領域内の複数のエッジを区別する場合、エッジ検出の確実性を向上させる方法が、本明細書に開示される。本方法は、関心領域（ＲＯＩ）と、エッジ微分閾値、プロファイル走査方向、及び微分隆起部カウントパラメータを含む複数のエッジ検出パラメータにより制御されるエッジ微分閾値、プロファイル操作方向エッジ検出動作と、関心領域インジケータ及びエッジ選択要素を含むビデオツールＧＵＩとを含むエッジ要素ビデオツールを、提供すること、ワークピースをマシンビジョン検査システムの視野に配置すること、エッジ要素ビデオツールを動作させて、取得されるワークピースの画像内にエッジ要素を含むＲＯＩを定義すること、エッジ要素ビデオツールを動作させて、前記ＲＯＩ内からエッジ要素ビデオツールのエッジ検出動作により検出されるエッジ要素を選択すること、エッジ要素ビデオツールを動作させて、プロファイル走査方向及びエッジ微分閾値を決定すること、並びにエッジ要素ビデオツールを動作させて、プロファイル走査方向及びエッジ微分閾値に対応する微分隆起部カウントパラメータを自動的に特定することを含む。
【００１０】
エッジ要素ビデオツールを動作させて、エッジ微分閾値を決定することは、エッジ要素ビデオツールを動作させて、エッジ微分閾値を最大範囲内に設定することを含み、最大範囲は、一方の限度として、選択エッジの微分プロファイル極値を有するとともに、他方の限度として、関心領域内の選択エッジを横切る強度微分プロファイルに沿って選択エッジの微分プロファイル極値に隣接し、且つ選択エッジの微分プロファイル極値とは逆の極性（例えば、極値が「山」の場合、その極値の逆の極性は「谷」であり、その逆も同様）を有する２つの近傍極値である２つの微分プロファイル近傍極値のうちの一方を有する。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部において決定されるプロファイル走査方向に沿って遭遇する最初又は最後の極値のうちの一方であり得る。
【００１１】
エッジ要素ビデオツールを動作させて、決定されるプロファイル走査方向及びエッジ微分閾値に対応する微分隆起部カウントパラメータを自動的に決定することは、微分隆起部カウントパラメータが条件を満たすように構成されたエッジ要素ビデオツールの自動動作を実行することを含み、条件は、（ａ）微分隆起部が、強度微分プロファイルと決定されるエッジ微分閾値との順次交点での強度微分プロファイルの区切りにより定義され、少なくとも、決定されるプロファイル走査方向に沿って選択エッジの前に遭遇する交点に関して定義されること、（ｂ）単一の微分隆起部が、条件（ａ）により定義される区切り間で強度微分プロファイルに沿った複数のエッジに対応する複数の微分極値を含むことができること、及び（ｃ）微分隆起部カウントパラメータは、定義される微分隆起部に関連して選択エッジの位置を示すことを含む。例えば、一実施形態では、微分隆起部カウントパラメータは、選択エッジ最大を含む微分隆起部を示す。そのような場合、関連する信号処理を使用して、本明細書に概説される原理に従って選択エッジを確実且つロバストに位置特定し得る。微分隆起部に関する概念については、図を参照して本明細書においてさらに詳細に後述する。
【００１２】
いくつかの実施形態では、２つの微分プロファイル近傍極値のうちの他方の限度となる極値（すなわち、最大範囲を制限する極値）は、選択エッジの微分プロファイル極値の値により近い方である。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部内で遭遇する唯一の極値であり得、その極値を見つける追加の信号処理が最小の状態で良好な検出確実性を可能にし得る。他の実施形態では、２つの微分プロファイルの近傍極値のうちの他方の限度となる極値は、選択エッジの微分プロファイル極値に最も近いか否かに関係なく、決定されたプロファイル走査方向に沿って選択エッジよりも前に遭遇する近傍極値に対応するものであり得る。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部において、決定されたプロファイル走査方向に沿って遭遇する最初の極値であり得、その極値を見つける追加の信号処理が最小の状態で良好な検出確実性を可能にし得る。
【００１３】
他の実施形態では、２つの微分プロファイル近傍極分値のうちの他方の限度となる極値は、選択エッジの微分プロファイル極値に最も近いか否かに関係なく、決定されたプロファイル走査方向に沿って選択エッジよりも後に遭遇する近傍極値に対応するものであり得る。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部において、決定されたプロファイル走査方向に沿って遭遇する最後の極値であり得る。しかし、後者の代替は、その極値を見つけるために比較的より複雑な信号処理を必要とし得、又はいくつかの用途では信頼性がより低いと見なされ得る。
【００１４】
いくつかの実施形態では、エッジ要素ビデオツールは、自動的に、エッジ微分閾値が、微分値ゼロを含む微分ノイズ帯内の値に設定されないようにする動作を含む。いくつかのそのような実施形態では、２つの近傍極値微分値のうちの他方の限度となる極値が、微分ノイズ帯内にある場合、最大範囲の他方の限度を、選択エッジの微分プロファイル極値に最も近い微分ノイズ帯の限度よりも、選択エッジの微分プロファイル極値から離れないように定義し得る。
【００１５】
いくつかの実施形態では、エッジ要素ビデオツールを動作させて、エッジ微分閾値を最大範囲内に設定することは、最大範囲内に含まれるロバスト極値マージン内にエッジ微分閾値を設定することを含み、ロバスト極値マージンは定義条件を満たし、定義条件は、（ａ）ロバスト極値マージンが、最大範囲に含まれ、決定されるプロファイル走査方向に沿って選択エッジ以前（選択エッジを含む）に遭遇する強度微分プロファイル内の微分極値に対応する、微分極値のランク付きリスト内の順次値である第１及び第２の微分極値によりロバスト極値マージンを制限すること、並びに（ｂ）ロバスト極値マージンを制限する第１及び第２の微分極値は、（ｂ１）ランク付きリスト内の順次値間の最大差及び（ｂ２）エッジ要素ビデオツールにおいて定義される最小マージン値を超える差のうちの一方を示す順次値であることを含む。
【００１６】
いくつかの実施形態では、エッジ要素ビデオツールは、定義条件を満たすロバスト極値マージンを自動的に決定するように構成される動作を含み、方法は、これらの動作を自動的に実行することを含む。いくつかのそのような実施形態では、ロバスト極値マージンを制限する第１及び第２の微分極値は、ランク付きリスト内の順次値間の最大差を示す順次値である。いくつかの実施形態では、方法は、ビデオツールＧＵＩに表示される強度微分プロファイルに重ねられる自動的に決定されたロバスト極値マージングを表示することをさらに含む。いくつかの実施形態では、エッジ要素ビデオツールを動作させ、エッジ微分閾値内にエッジ微分閾値を設定することは、エッジ微分閾値を、自動的に決定されたロバスト極値マージン内にエッジ微分閾値を自動的に設定することを含む。
【００１７】
いくつかの実施形態では、ロバスト極値マージンを自動的に決定するように構成された動作は、条件を満たす第１及び第２のプロファイル走査方向ロバスト極値マージンを決定することを含み、条件は、
（ａ）第１のプロファイル走査方向ロバスト極値マージンが、第１プロファイル走査方向に沿って選択エッジ以前に（選択エッジを含む）遭遇し、且つ第１の最大範囲に含まれる強度微分プロファイル内の微分極値に対応する微分極値の第１のランク付きリスト内の順次値である第１及び第２の微分極値により制限され、第１のプロファイル走査方向ロバスト極値マージンを制限する第１及び第２の微分極値は、第１のランク付きリスト内の順次値間の最大差を示す順次値であること、並びに
（ｂ）第２のプロファイル走査方向ロバスト極値マージングが、第２のプロファイル走査方向に沿って選択エッジ以前（選択エッジを含む）に遭遇し、且つ第２の最大範囲に含まれる強度微分プロファイル内の微分極値に対応する微分極値の第２のランク付きリスト内の順次値である第１及び第２の微分極値により制限され、第２のプロファイル走査方向ロバスト極値マージンを制限する第１及び第２の微分極値は、第２のランク付きリスト内の順次値間の最大差を示す順次値であることを含む。いくつかのそのような実施形態では、第１の最大範囲及び第２の最大範囲は同じ最大範囲であり得、最大範囲の他方の限度は、選択エッジの微分プロファイル極値の最も近い２つの近傍極値のうちの一方よりも、選択エッジ極値から離れていない。他のそのような実施形態では、第１の最大範囲は、第１のプロファイル走査方向に沿って選択エッジよりも前に遭遇する第１の近傍極値に基づいて決定され、第２の最大範囲は、第２のプロファイル走査方向に沿って選択エッジよりも前に遭遇する第２の近傍極値に基づいて決定される。
【００１８】
第１及び第２のプロファイル走査方向ロバスト極値マージンを決定する実施形態では、エッジ要素ビデオツールを動作させ、エッジ微分閾値をロバスト極値マージン内に設定することは、第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの一方を選択すること、並びにエッジ微分閾値を選択したロバスト極値マージン内に設定することをさらに含み得る。そのような実施形態では、エッジ要素ビデオツールを動作させ、プロファイル走査方向を決定することは、第１のロバスト極値マージンが選択される場合、プロファイル走査方向を第１のプロファイル走査方向に設定し、第２のロバスト極値マージンが選択される場合、第２のプロファイル走査方向に設定することを含み得る。いくつかのそのような実施形態では、方法は、ビデオツールＧＵＩに表示される強度微分プロファイルに第１及び第２のプロファイル走査方向ロバスト極値マージンを重ねて表示することを含み得、第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの一方を選択することは、（ａ）表示された第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの一方並びに（ｂ）表示された第１及び第２のプロファイル走査方向ロバスト極値マージンに対応する第１及び第２のプロファイル走査方向のうちの一方、のうちの少なくとも一方を手動で選択することを含む。他のそのような実施形態では、第１及び第２にプロファイル走査方向ロバスト極値マージンのうちの一方を選択することは、第１及び第２のプロファイル走査方向ロバスト極値マージンのうちの大きい方を自動的に選択することを含み得、エッジ微分閾値を選択されたプロファイル走査方向ロバスト極値マージン内に設定することは、エッジ微分閾値を自動的に選択されたプロファイル走査方向ロバスト極値マージン内に自動的に設定することを含み得る。
【００１９】
様々な実施形態では、方法は、ビデオツールＧＵＩに表示された強度微分プロファイルに、エッジ微分閾値の現在値に対応するエッジ微分閾値インジケータを重ねて表示することを含み得る。いくつかのそのような実施形態では、表示されたエッジ微分閾値インジケータは、ビデオツールＧＵＩにおいて手動で調整可能であり得、エッジ要素ビデオツールを動作させ、エッジ微分閾値を最大範囲内に設定することは、エッジ微分閾値インジケータを手動で調整することを含み得る。いくつかの実施形態では、方法は、対応する定義された微分隆起部をビデオツールＧＵＩに示すこと、及びエッジ微分閾値インジケータが調整される際、微分隆起部の表示を調整することをさらに含み得る。
【００２０】
様々な実施形態では、エッジ要素ビデオツールを動作させ、エッジ微分閾値を最大範囲内に設定することは、エッジ微分閾値を最大範囲内に自動的に設定することを含み得る。
【００２１】
様々な実施形態では、方法は、学習動作モードに従って動作し得、方法で決定されたパラメータは、同様のワークピースに対して将来使用するためにパートプログラムに保存し得る。
【００２２】
様々な実施形態では、ビデオツールＧＵＩは、エッジ要素ビデオツールを使用して、現在のエッジ検出パラメータセットに基づいて選択エッジを検出することに関連するリスクの程度を示す検出ロバスト性インジケータを含み得、方法は、検出ロバスト性インジケータをビデオツールＧＵＩに表示することを含み得る。いくつかのそのような実施形態では、検出ロバスト性インジケータは、ロバスト極値マージンの現在の大きさに対応してビデオツールＧＵＩに表示されるエッジ微分閾値インジケータに関連付けられた色を含み得る。
【図面の簡単な説明】
【００２３】
【図１】汎用精密マシンビジョン検査システムの様々な典型的な構成要素を示す図である。
【図２】図１と同様であり、本明細書に開示される特徴を含むマシンビジョン検査システムの制御システム部及びビジョン構成要素部のブロック図である。
【図３】複数のエッジの中から特定のエッジを見つける本明細書に開示される原理及び特徴に関連する様々な要素を含むユーザインタフェース表示の同様の実施形態を示す図である。
【図４】複数のエッジの中から特定のエッジを見つける本明細書に開示される原理及び特徴に関連する様々な要素を含むユーザインタフェース表示の同様の実施形態を示す図である。
【図５】複数のエッジの中から特定のエッジを見つけることに関連し、特に、エッジ位置結果がワークピース間の妥当に予期されるばらつきの影響を比較的受けにくいように、ロバスト極値マージン内に微分閾値を設定する方法に関連する様々な考慮事項を示す図である。
【図６】微分閾値の最大範囲を定義し、微分閾値を、代替の最大範囲に関連する代替のロバスト極値マージン内に設定する様々な代替を示す、図５と同様の図である。
【図７】微分閾値の最大範囲を定義し、微分閾値を、代替の最大範囲に関連する代替のロバスト極値マージン内に設定する様々な代替を示す、図５と同様の図である。
【図８Ａ】マシンビジョン検査システム内に含まれるエッジ要素ビデオツールの関心領域内の複数のエッジを区別する場合、エッジ検出の確実性を向上させる方法及び／又はルーチンを示す流れ図である。
【図８Ｂ】マシンビジョン検査システム内に含まれるエッジ要素ビデオツールの関心領域内の複数のエッジを区別する場合、エッジ検出の確実性を向上させる方法及び／又はルーチンを示す流れ図である。
【発明を実施するための形態】
【００２４】
詳細な説明
図１は、本明細書に記載の方法により使用可能な例示的な１つのマシンビジョン検査システム１０のブロック図である。マシンビジョン検査システム１０は画像測定機１２を含み、画像測定機１２は、制御コンピュータシステム１４とデータ及び制御信号を交換するように動作可能に接続される。制御コンピュータシステム１４は、モニタ又はディスプレイ１６、プリンタ１８、ジョイスティック２２、キーボード２４、及びマウス２６とデータ及び制御信号を交換するようにさらに動作可能に接続される。モニタ又はディスプレイ１６は、マシンビジョン検査システム１０の動作の制御及び／又はプログラムに適したユーザインタフェースを表示し得る。様々な実施形態では、タッチスクリーンタブレット等を、コンピュータシステム１４、ディスプレイ１６、ジョイスティック２２、キーボード２４、及びマウス２６のうちの任意又はすべての機能を代替し及び／又は重複して提供し得ることが理解されるだろう。
【００２５】
制御コンピュータシステム１４が一般に、任意の計算システム又は装置からなり得ることを当業者は理解するだろう。適する計算システム又は装置は、パーソナルコンピュータ、サーバコンピュータ、ミニコンピュータ、メインフレームコンピュータ、任意の上記を含む分散計算環境等を含み得る。そのような計算システム又は装置は、本明細書に記載の機能を実行するソフトウェアを実行する１つ又は複数のプロセッサを含み得る。プロセッサは、プログラマブル汎用又は専用マイクロプロセッサ、プログラマブルコントローラ、特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理装置（ＰＬＤ）等、又はそのような装置の組み合わせを含む。ソフトウェアは、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、フラッシュメモリ等、又はそのような構成要素の組み合わせ等のメモリに記憶し得る。ソフトウェアは、磁気若しくは光学ベースのディスク、フラッシュメモリ装置、又はデータを記憶する他の種類の不揮発性記憶媒体等の１つ又は複数の記憶装置に記憶してもよい。ソフトウェアは、特定のタスクを実行し、又は特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、構成要素、データ構造等を含む１つ又は複数のプログラムモジュールを含み得る。分散計算環境では、プログラムモジュールの機能は、結合してもよく、又は複数の計算システム若しくは装置にわたって分散し、サービス呼び出しを介してアクセスしてもよい。
【００２６】
画像測定機１２は、可動式ワークピースステージ３２と、光学撮像システム３４とを含み、光学撮像システム３４はズームレンズ又は交換式レンズを含み得る。ズームレンズ又は交換式レンズは一般に、光学撮像システム３４により提供される画像に様々な倍率を提供する。マシンビジョン検査システム１０は一般に、上述したQUICK VISION（登録商標）シリーズのビジョンシステム及びQVPAK（登録商標）ソフトウェア並びに同様の現在市販されている精密マシンビジョン検査システムに匹敵する。マシンビジョン検査システム１０は、本願と同じ譲受人に譲渡された米国特許第７，４５４，０５３号、同第７，３２４，６８２号、同第８，１１１，９０５号、及び同第８，１１１，９３８号にも記載されている。
【００２７】
図２は、図１のマシンビジョン検査システムと同様であり、本明細書に記載の特徴を含むマシンビジョン検査システム１００の制御システム部１２０と、ビジョン構成要素部２００とのブロック図である。より詳細に後述するように、制御システム部１２０は、ビジョン構成要素部２００の制御に利用される。ビジョン構成要素部２００は、光学アセンブリ部２０５と、光源２２０、２３０、及び２４０と、中央透明部２１２を有するワークピースステージ２１０とを含む。ワークピースステージ２１０は、ワークピース２０を位置決めし得るステージ表面に略平行な平面内にあるＸ軸及びＹ軸に沿って移動制御可能である。光学アセンブリ部２０５は、カメラ系２６０と、交換式対物レンズ２５０とを含み、レンズ２８６及び２８８を有するターレットレンズアセンブリ２８０を含み得る。ターレットレンズアセンブリの代替として、固定レンズ、又は手動で交換可能な倍率変更レンズ、又はズームレンズ構成等を含み得る。
【００２８】
光学アセンブリ部２０５は、制御可能なモータ２９４を使用することにより、Ｘ軸及びＹ軸に略直交するＺ軸に沿って制御可能に移動可能であり、制御可能なモータ２９４はアクチュエータを駆動して、光学アセンブリ部２０５をＺ軸に沿って移動させ、ワークピース２０の画像のフォーカスを変更する。制御可能なモータ２９４は、信号線２９６を介して入出力インタフェース１３０に接続される。
【００２９】
マシンビジョン検査システム１００を使用して撮像すべきワークピース２０又は複数のワークピース２０を保持するトレイ若しくは固定具は、ワークピースステージ２１０に配置される。ワークピースステージ２１０は、交換式対物レンズ２５０がワークピース２０上の位置及び／又は複数のワークピース２０間で移動するように、光学アセンブリ部２０５に相対して移動するように制御し得る。透過照明光２２０、落射照明光２３０、及び斜め照明光２４０（例えば、リング光）のうちの１つ又は複数は、光源光２２２、２３２、及び／又は２４２のそれぞれを発して、１つ又は複数のワークピース２０を照明する。光源２３０は、ミラー２９０を含む経路に沿って光２３２を発し得る。光源光はワークピース光２５５として反射又は透過し、撮像に使用されるワークピース光は、交換式対物レンズ２５０及びターレットレンズアセンブリ２８０を通過し、カメラ系２６０に集められる。カメラ系２６０により捕捉されたワークピース２０の画像は、信号線２６２上で制御システム部１２０に出力される。光源２２０、２３０、及び２４０は、信号線又はバス２２１、２３１、及び２４１のそれぞれを通して制御システム部１２０に接続し得る。画像の倍率を変更するには、制御システム部１２０は、信号線又はバス２８１を通して、軸２８４に沿ってターレットレンズアセンブリ２８０を回転させて、ターレットレンズを選択し得る。
【００３０】
図２に示されるように、様々な例示的な実施形態では、制御システム部１２０は、コントローラ１２５と、入出力インタフェース１３０と、メモリ１４０と、ワークピースプログラム生成・実行器１７０と、電源部１９０とを含む。これらの構成要素のそれぞれ並びに後述する追加の構成要素は、１つ若しくは複数のデータ／制御バス及び／又はアプリケーションプログラミングインタフェースにより、或いは様々な要素間の直接接続により相互接続し得る。
【００３１】
入出力インタフェース１３０は、撮像制御インタフェース１３１と、運動制御インタフェース１３２と、照明制御インタフェース１３３と、レンズ制御インタフェース１３４とを含む。運動制御インタフェース１３２は、位置制御要素１３２ａと、速度／加速度制御要素１３２ｂとを含み得るが、そのような要素は統合且つ／又は区別不可能であってもよい。照明制御インタフェース１３３は照明制御要素１３３ａ〜１３３ｎ及び１３３ｆｌを含み、照明制御要素１３３ａ〜１３３ｎ及び１３３ｆｌは、例えば、マシンビジョン検査システム１００の様々な対応する光源の選択、電力、オン／オフ切り替え、及び該当する場合にはストローブパルスタイミングを制御する。
【００３２】
メモリ１４０は、画像ファイルメモリ部１４１と、エッジ検出メモリ部１４０ｅｄと、１つ又は複数のパートプログラム等を含み得るワークピースプログラムメモリ部１４２と、ビデオツール部１４３とを含む。ビデオツール部１４３は、対応する各ビデオツールのＧＵＩ、画像処理動作等を決定するビデオツール部１４３ａ及び他のビデオツール部（例えば、１４３ｎ）と、関心領域（ＲＯＩ）生成器１４３ｒｏｉとを含み、ＲＯＩ生成器１４３ｒｏｉは、ビデオツール部１４３に含まれる様々なビデオツールで動作可能な様々なＲＯＩを定義する自動、半自動、及び／又は手動の動作をサポートする。
【００３３】
本開示の文脈の中では、当業者には既知のように、ビデオツールという用語は一般に、ビデオツールに含まれる動作のステップ毎のシーケンスを作成せずに、又は一般化されたテキストベースのプログラミング言語等を用いずに、マシンビジョンユーザが比較的単純なユーザインタフェース（例えば、グラフィカルユーザインタフェース、編集可能パラメータウィンドウ、メニュー等）を通して実施することができる比較的複雑な自動又はプログラムされた動作のセットを指す。例えば、ビデオツールは、動作及び計算を管理する少数の変数又はパラメータを調整することにより、特定のインスタンスに適用されカスタマイズされる画像処理動作及び計算の事前にプログラムされた複雑なセットを含み得る。基本的な動作及び計算に加えて、ビデオツールは、ユーザがビデオツールの特定のインスタンスについてそれらのパラメータを調整できるようにするユーザインタフェースを含む。例えば、多くのマシンビジョンビデオツールでは、ユーザは、マウスを使用する単純な「ハンドルドラッグ」動作を通して、グラフィカル関心領域（ＲＯＩ）インジケータを構成して、ビデオツールの特定のインスタンスの画像処理動作により解析すべき画像サブセットの位置パラメータを定義することができる。基本的な動作が暗黙的に含まれて、可視のユーザインタフェース機能がビデオツールと呼ばれることもあることに留意されたい。
【００３４】
多くのビデオツールに共通して、本開示のエッジ位置特定及びパラメータ設定主題は、ユーザインタフェース機能及び基本的な画像処理動作等の両方を含み、関連する機能は、対応するパラメータ設定部１４３ｐｓを有するマルチエッジ要素ビデオツール（又はマルチエッジビデオツール）１４３ｅｆの機能として特徴付け得る。マルチエッジ要素ビデオツール１４３ｅｆは一般に、エッジ位置を特定するアルゴリズムを含む。アルゴリズムは、場合によっては、学習モード中に自動的に決定されプログラムし得るエッジ検出パラメータにより管理され得、且つ／又はユーザにより手動で調整され得る（例えば、より詳細に後述するＴＨＳ等の閾値）。パラメータ設定部１４３ｐｓは、さらに詳細に後述する原理により様々な動作を実施する微分閾値部１４３ｇｔ及び微分隆起部カウンタ１４３ｇｐｃを含み得る。
【００３５】
ビデオツール部１４３は、既知のエッジ検出又は位置特定方法に従って動作する従来のエッジ要素ビデオツールを追加又は代替として含み得る。一実施形態では、マルチエッジ要素ビデオツール１４３ｅｆは、そのようなツールとリンクし得、又はそのようなツールと併せて動作し得る。例えば、一実施形態では、本明細書に開示されるエッジ微分閾値及び／又は隆起カウント動作は、既知のエッジツール（例えば、既知のボックスツール、円弧ツール、円ツール等）と同等のモードを含むマルチモードエッジ要素ツールにマルチエッジモードとして含まれ得、すなわち、単一のエッジツールに２つの動作モードがあり得る。他の実施形態では、マルチエッジ要素ビデオツール１４３ｅｆ及び既知又は従来のエッジツールは別個のツールであり得る。単一のエッジツールの２つのモードであるいくつかの実施形態では、エッジツールは手動動作に基づいて（例えば、図３及び図４を参照して後述するように、ボックスツールユーザインタフェースの「マルチエッジボックスツール−アドバンスパラメータ：タブを選択し、且つ／又はマルチエッジモードパラメータ／編集ボックスにおいてマルチエッジ選択肢を選択することにより）、又は自動動作に基づいて（例えば、同様のエッジがいくつＲＯＩに含まれるかの自動解析に基づいて）エッジツールを選び得る。
【００３６】
一実施態様では、ユーザがエッジ要素ビデオツールパラメータを確認し、且つ／又は手動で設定若しくは調整し得るために、パラメータ設定部１４３ｐｓは、様々なビデオツールパラメータ及び／又は該パラメータの関連する効果を示し、且つ／又は調整する様々なユーザインタフェース機能を含み得る。１つ又は複数のエッジ要素表現ウィンドウ（例えば、マシンビジョンシステムの走査線強度、走査線強度微分、及び／又は視野を示す）が提供され、このウィンドウは、図３、図４、図５、及び図６に関してより詳細に後述するように、パラメータの変更及び／又は現在のパラメータ設定に従って検出可能なエッジ要素の変更を示す。
【００３７】
透過照明光２２０、落射照明光２３０及び２３０’、並びに斜め照明光２４０のそれぞれの信号線又はバス２２１、２３１、及び２４１はすべて、入出力インタフェース１３０に接続される。カメラ系２６０からの信号線２６２及び制御可能なモータ２９４からの信号線２９６は、入出力インタフェース１３０に接続される。画像データの搬送に加えて、信号線２６２は、画像取得を開始する信号をコントローラ１２５から搬送し得る。
【００３８】
１つ又は複数のディスプレイ装置１３６（例えば、図１のディスプレイ１６）及び１つ又は複数の入力装置１３８（例えば、図１のジョイスティック２２、キーボード２４、及びマウス２６）も、入出力インタフェース１３０に接続することができる。ディスプレイ装置１３６及び入力装置１３８を使用して、ユーザインタフェースを表示することができ、ユーザインタフェースは、様々なグラフィカルユーザインタフェース（ＧＵＩ）機能を含み得、ＧＵＩ機能は、カメラ系２６０により捕捉された画像を閲覧するため、且つ／又はビジョンシステム構成要素部２００を直接制御するために、検査動作の実行、並びに／或いはパートプログラムの作成及び／又は変更に使用可能である。ディスプレイ装置１３６は、さらに詳細に後述するように、エッジ要素ビデオツール１４３ｅｆ及びパラメータ設定部１４３ｐｓに関連付けられたユーザインタフェース機能を表示し得る。
【００３９】
様々な例示的な実施形態では、ユーザは、マシンビジョン検査システム１００を利用して、ワークピース２０のパートプログラムを作成する場合、学習モードでマシンビジョン検査システム１００を動作させて、所望の画像取得トレーニングシーケンスを提供することにより、パートプログラム命令を生成する。例えば、トレーニングシーケンスは、代表的なワークピースの特定のワークピース要素を視野（ＦＯＶ）内に位置決めすること、光レベルを設定すること、フォーカス又はオートフォーカスすること、画像を取得すること、及び画像に適用される検査トレーニングシーケンスを提供すること（例えば、そのワークピース要素に対してビデオツールの１つのインスタンスを使用して）を含み得る。学習モードは、シーケンスを捕捉又は記録し、対応するパートプログラム命令に変換するように動作する。これらの命令は、パートプログラムが実行される場合、トレーニングされた画像取得・検査動作をマシンビジョン検査システムに再現させて、パートプログラム作成時に使用された代表的なワークピースに適合する１つ又は複数の実行モードワークピースにおけるその特定のワークピース要素（対応する位置の対応する特徴である）を自動的に検査する。
【００４０】
図３及び図４は、複数のエッジの中から特定のエッジを見つける、本明細書に開示される原理及び機能に関連する様々な要素を含むユーザインタフェース表示３００（３００’）の同様の実施形態を示す図である。図３及び図４は、ワークピース画像を含む視野ウィンドウ３１０と、選択バー３２０及び３４０等の様々な測定及び／又は動作選択バーと、リアルタイムＸ−Ｙ（位置）座標ウィンドウ３３０と、光制御ウィンドウ３５０と、エッジ検出パラメータウィンドウ３６０を含むエッジ検出ビデオツールユーザインタフェース（「ボックスツール」ユーザインタフェース）と、を含み、図３及び図４に示される実施形態では、ボックスツールユーザインタフェースの「マルチエッジボックスツール−アドバンスパラメータ」タブを選択することにより表示される。ボックスツールユーザインタフェースは、視野ウィンドウ３１０内の画像に重ねられたボックスツールＧＵＩウィジェット３５２も含み、このウィジェットは関心領域インジケータ３５５、上昇／下降インジケータＲＦ、走査方向矢頭ＳＤ、及びエッジセレクタＥＳ（この特定の実施形態では、破線で示される）を含み、これらは市販のシステムにおいて既知の要素である。上昇／下降インジケータＲＦは、走査方向矢頭ＳＤと併せて、検出されたエッジが走査方向に沿って上昇強度を有するか、それとも下降強度を有するかを定義する。エッジセレクタＥＳは、検出すべき（例えば、現在のツールパラメータセットにより）エッジを示す。エッジ検出パラメータウィンドウ３６０は、マルチエッジモードパラメータ／編集ボックス（本明細書に開示されるマルチエッジモード動作をイネーブル又はディセーブルするために使用し得、代替は従来のエッジ検出動作を使用するモードである）と、ＲＯＩ位置パラメータ／編集ボックスと、走査方向パラメータ／編集ボックスと、上昇／下降エッジ傾きパラメータ／編集ボックスと、選択エッジ隆起カウンタパラメータ／編集ボックスと、走査間隔パラメータ／編集ボックスと、も含み得る。様々なパラメータが、デフォルト値及び／又は前のユーザインタフェース動作等に基づいて自動的に決定される値を有し得ることが理解されるだろう。ユーザインタフェース３００（３００’） の原理及び／又は本明細書に記載の原理及び機能と組み合わせ得る追加の特徴は、本願と同じ譲受人に譲渡された米国特許出願第１１／６６９，３３３号（’３３３号出願）の開示を参照してさらに理解し得る。従来のエッジ要素ツールの動作及びパラメータと比較した、本明細書に記載されるマルチエッジ要素ツール動作及びパラメータ使用の違いにも拘わらず、様々な実施形態において、ＧＵＩウィジェット３５２等が、マルチエッジ要素動作及び従来のエッジ要素ツール動作の両方で略同様又は同一に表示し得ることに注目すべきである。これは、ユーザトレーニング及び使い易さの観点から望ましい。
【００４１】
エッジ検出パラメータウィンドウ３６０は、さらに後述するように、走査線強度プロファイルウィンドウ３６２（図３のみに示される）及び走査線強度微分プロファイルウィンドウ３６４、並びに現在のエッジ検出パラメータの表現又はインジケータを含み得る。走査線強度プロファイルウィンドウ３６２及び走査線強度微分プロファイルウィンドウ３６４は、エッジ要素ビデオツール３５２の選択エッジを横切る、関心領域にわたる代表的な走査線（例えば、中央又は平均走査線等）の走査線方向に沿ったピクセル位置での走査線強度プロファイルＩＰ及び走査線強度微分プロファイルＧＰ（走査線強度プロファイルＩＰの傾き）のグラフを示す。図３に示される走査線強度プロファイルウィンドウ３６２では、エッジ要素は、走査線に沿った比較的限られた距離にわたる大きな強度変化で表されると理解される。そのような大きな強度変化は、走査線強度微分プロファイルウィンドウ３６４での強度微分プロファイルＧＰにおいて対応する大きな極値（すなわち、微分の山又は谷）となる。
【００４２】
本明細書に開示されるマルチエッジ動作の新規特徴をよりよく理解するために、既知のエッジ検出ツールのいくつかの動作についてまず概説する。既知のエッジ検出動作及び／又はビデオツールは一般に、比較的区別可能に分離されたエッジの位置特定に適用される。一般に、そのようなエッジは当該エッジを横切って大きなコントラストを示し、それは、走査線強度プロファイルＩＰのエッジを横切る大きな強度変化に対応し、エッジは通常、比較的局所的又は「シャープ」であり、これは走査線強度微分プロファイルＧＰにおける微分の大きい山又は谷に対応する。したがって、そのようなエッジは従来、強度閾値パラメータ（エッジを横切る強度変化が、照明の不具合又は部分的な欠陥等による予期されたものではない場合、エラー通知を開始するという重要な機能を有し得る）及び強度微分閾値パラメータにより区別される。図３に示されるパラメータＴＨは、エッジに要求される最小レベルの輝度又は強度変化に関連する閾値を定義する。
【００４３】
別の場合、エッジにわたる最小レベルの強度変化率を必要とするパラメータ（例えば、エッジの幅又はシャープネスを特徴付け得る微分値）は、エッジの特定のインスタンスをさらに特徴付け得、また、ビデオツールの初期トレーニング／プログラミングに使用された「学習モード」エッジ形状又は照明と比べて、エッジの形状、照明（例えば、周囲照明変化若しくは方向変化）、又は画像のフォーカス（ピンぼけ画像はエッジを広げ、柔らかくする）に予期しない変化があった場合には、エッジ検出ビデオツールにエッジ位置を返すことを止めさせ得る。’３３３号出願では、関連する微分閾値パラメータはＴＨＳと示される。（同様の微分値閾値ＴＨＳＰが図３に示されるが、さらに後述するように、微分隆起部を定義するために異なる方法で使用される）。単に説明を目的として、強度閾値パラメータは、図３のウィンドウ３６２において、「ＴＨ６６．７」と記された水平線で示される。強度微分閾値パラメータは、ウィンドウ３６４において、「ＴＨＳＰ−２０．３」と記される水平線で示される。第２の強度微分閾値パラメータも、ウィンドウ３６４において、「ＴＨＳＰ２３．８」と記された水平線で示される。この第２の強度微分閾値の目的についてはさらに後述する。
【００４４】
エッジ要素位置の従来技術による方法及び関連するビデオツールでは、上述したパラメータＴＨ及びＴＨＳの組み合わせは、学習モード中にエッジの「プロトタイプ」インスタンスに対応し、且つ／又はそのインスタンスを特徴付けるように設定されるパラメータの典型であり、そして、同じパラメータが、実行モード中に対応するエッジを検出するために使用されたことが理解されるだろう。パラメータは、予期された条件が満たされない（又は略満たされない）場合、ビデオツールを「失敗」させることもでき、これは本方法のフェールセーフ機能である。そのような方法は、単一又は強力なエッジをＲＯＩにおいて確実に分離し得る場合に効果的である。
【００４５】
図３に示される実施形態では、ウィンドウ３６２及び３６４は、ＲＯＩの選択エッジＥＳを横切るすべての走査線の平均及び視野ウィンドウ３１０に表示された選択エッジＥＳを観察した強度特徴を比較的現実的に表す。選択エッジＥＳは、様々なウィンドウの関係を明確にするために、ウィンドウ３６２及び３６４において破線選択エッジインジケータＥＳ’でマークされる。様々な実施形態では、選択エッジインジケータＥＳ’は、ビデオツールユーザインタフェースに実際に示されてもよく、又は示されなくてもよい。図３において、選択エッジＥＳが、示される閾値ＴＨ及びＴＨＳＰを満たす強度及び微分値を有するという点で唯一のものではないことが分かり得、これは、複数のエッジがＲＯＩ内に含まれる場合、従来技術による検出方法に伴う一つの問題を示す。例えば、図３の選択エッジＥＳの左側の次のエッジは、非常によく似た特徴（例えば、同様の低強度値及び負の微分値）を有する。いくつかの従来技術による方法では、従来のパラメータ（例えば、ＴＨ及びＴＨＳ）並びに／或いは既知の方法を適用して、いくつかの同様のエッジを識別し、次に、走査の右側から左側に「エッジを数えて」、選択エッジを分離することにより、複数のエッジを区別しようとした。しかし、これは、従来の閾値パラメータの選択をさらに複雑化し、且つ／又は狭め、結果として生成されるエッジ検出パラメータは多くの場合、カウントしなければならない複数のエッジのうちの１つ又は複数の特徴の小さな差異から生じるエラーを受けやすい検出動作に繋がる。本明細書に開示される様々な実施形態では、複数の類似エッジがＲＯＩに存在し得るために、ウィンドウ３６２に示される強度閾値ＴＨは、選択エッジＥＳの区別に有用ではないことがあり、マルチエッジツール動作において無視又は省略され得る。この理由及び他の理由で、ウィンドウ３６２及び３６４内の情報が相互に関連し、いくらか冗長であり、様々な実施形態において、ウィンドウ３６２を省略し得ることが理解されるだろう（例えば、図４に示されるように）。
【００４６】
上述した理由により、エッジ位置特定の従来技術による方法は、ＲＯＩ内の複数の且つ／又は類似のエッジを区別するには広く適用可能ではなく、又は確実ではない。さらなる例として、ウィンドウ３１０では、ＲＯＩ内の「エッジ」のうちのいくつかは、テクスチャの変化等としてよりよく特徴付け得る。それらは選択エッジＥＳといくらか似た特徴を有するが、それらの配置及び数は実際に、特定のワークピースに適用される最終動作でランダムな差異に応じていくらか可変であり得る。
【００４７】
従来技術とは対照的に、本明細書に開示されるマルチエッジ動作の新規特徴に関して、ある意味では、本明細書に開示される方法は質的に、個々のエッジの検出に頼るのとは対照的に、ＲＯＩ内の選択エッジを「指摘」又は分離するために、エッジ要素又はテクスチャの全体パターンに頼ると考え得る。これは、特にいくつかの類似エッジが互いに近いか、又は予測不可能な数の類似エッジがワークピースの領域に発生する（例えば、表面仕上げから生じる「エッジ」等）場合、専ら個々のエッジを検出するよりも確実でロバストな手法であり得る。手短に言えば、後述する比較的単純で確実な方法は、対応する個々のエッジに関連する個々の微分ピークを識別するのとは対照的に、複数のエッジのような特徴（厳密な数は重要ではない）を含み得る「微分隆起部」を定義し、カウントすることを含む。微分隆起部は、選択エッジの特徴に主に基づく閾値の設定とは対照的に、安定した微分隆起部に繋がる可能性が高い原理に従って設定される閾値により定義又は区切られる。次に、微分隆起部は、関連付けられた隆起カウントパラメータに基づいて、ＲＯＩ内のエッジ要素の全体パターンにおいて選択エッジへの方法を示す安定したランドマークのように動作する。
【００４８】
図４は、本明細書に開示されるマルチエッジ動作及び／又はモードが強調されたユーザインタフェース３００’の一実施形態を示す。ユーザインタフェース３００’において、図３に示される強度プロファイルウィンドウ３６２は省かれ、強度微分プロファイルウィンドウ３６４は、さらに詳細に後述するように、いくつかの関連する特徴により強調され強化される。
【００４９】
ユーザインタフェース３００’が、さらに詳細に後述するように、マルチエッジ動作を含むエッジ要素ビデオツールの「現在のインスタンス」を反映することが理解されるだろう。エッジ要素ビデオツールの現在のインスタンスは、既知の方法により実施し得、既知の方法は、例えば、ユーザインタフェース３００’に示される「ツール」メニューを使用することにより、ビデオツールツールバー（図示せず）を表示すること、ツールバーで適切なビデオツールアイコンを選択すること、そして次に、ウィンドウ３１０をクリックして（又はウィンドウ３１０にアイコンをドラッグする等）、編集可能／調整可能なボックスツールＧＵＩウィジェット３５２の現在のインスタンスを作成することを含む。いくつかの実施形態では、この動作はパラメータウィンドウ３６０を開くこともできる。図４に示されるように、ＧＵＩウィジェット３５２は、ワークピース上の複数のエッジのような特徴を含むＲＯＩを定義するように調整されており、エッジセレクタＥＳは、ビデオツールのマルチエッジモードのエッジ検出動作により検出すべきＲＯＩ内の選択エッジ要素を定義するように位置決めされている。
【００５０】
いくつかの実施形態では、ＲＯＩが定義されると、対応する強度微分プロファイルＧＰを強度微分プロファイルウィンドウ３６４に表示し得る。上述したように、微分プロファイルＧＰは、選択エッジを含むＲＯＩにわたる代表的な「走査線」に沿ったピクセル強度値に基づいて既知の方法により計算し得る。様々な実施形態では、代表的な走査線は、画像ピクセルの単一行に対応する中央若しくは選択された走査線、フィルタリングされた走査線、又は代替としてピクセルのいくつかの行に基づく平均走査線等であり得る。微分プロファイルＧＰは一般に、エッジ又はエッジのような特徴に対応するいくつかの極値（極大及び極小又は山及び谷とも呼ばれる）を示す。本明細書では、大きさに関係なく、山及び谷は、逆方向を指す場合、逆の極性を有すると言われる。様々な実施形態では、図５を参照してさらに後述する理由により、ビデオツールにより実行されるマルチエッジ動作は、微分プロファイルＧＰに沿った有意な極大及び極小を含み得る。例えば、そのような動作は、図２を参照して上述した微分プロファイル解析部１４３ｇｐａにより実行し得る。
【００５１】
図４では、これらの極値のうちのいくつかの山（谷）は、参照のために、明るい水平破線でマークされる。図４は、微分値ゼロを囲む微分ノイズ帯ＧＮＢも示す。いくつかの実施形態では、微分ノイズ帯ＧＮＢ内に値を有する極大及び極小は、重要ではないとみなされ（例えば、重要ではないエッジ又はテクスチャ要素）、無視される。いくつかの実施形態では、ビデオツールのマルチエッジ動作は自動的に、エッジ微分閾値パラメータが微分ノイズ帯内の値に設定されないようにし得る。いくつかの実施形態では、ＧＮＢ限度は、実験に基づいて所定の値に設定し得る。いくつかの実施形態では、ＧＮＢ限度は、微分プロファイルＧＰのノイズ解析に基づいて自動的に設定し得、且つ／又はユーザにより手動で調整され得る（例えば、ユーザインタフェースにおいて微分ノイズ帯ＧＮＢの限度線をクリックしてドラッグすることにより、又は所望の数値を入力するなどにより）。
【００５２】
いくつかの実施形態では、選択されたエッジ要素が定義されると、さらに詳細に後述するように、様々なマルチエッジモード動作を実行し、関連する要素を特定し、且つ／又は表示し得る。図４は、様々な関連する要素を示す。エッジ微分閾値ＴＨＳＰ（例えば、２つのエッジ微分閾値ＴＨＳＰのうちの一方）を使用して、微分隆起部（例えば、隆起Ｐ１＞、Ｐ２＞等）を定義する。エッジ微分閾値ＴＨＳＰは最大範囲内に設定され、最大範囲は、一方の限度Ｌ−ＳＥとして、選択エッジの微分プロファイル極値を有するとともに、他方の限度（例えば、２つの限度ＯＬ−ＬＮＥ及びＯＬ−ＲＮＥのうちの一方）は、強度微分プロファイルＧＰに沿って選択エッジ極値に隣接し、且つ選択エッジＥＳの極値とは逆の極性を有する１つの近傍極値（例えば、左の近傍極値ＬＮＥ及び右の近傍極値ＲＮＥのうちの一方）の値ほど選択エッジ極値から離れていない。図４では、さらに後述する理由により、２つの「候補」エッジ微分閾値ＴＨＳＰが示される。値２３．８を有する閾値ＴＨＳＰは、左の近傍極値ＬＮＥに基づいて、他方の限度ＯＬ−ＬＮＥを有する最大範囲内に設定される。値−２０．３を有する閾値ＴＨＳＰは、右の近傍極値ＲＮＥに基づいて、他方の限度ＯＬ−ＲＮＥを有する最大範囲内に設定される。エッジ微分閾値ＴＨＳＰは、このように定義される最大範囲内に設定される場合、一般に、それにより、選択されるエッジ極値が、関連付けられた微分隆起部において決定されたプロファイル走査方向に沿って最初又は最後に遭遇する極値のうちの一方であることが分かり得、これは単純に、いくつかの実施形態では、選択エッジを確実に識別することに関連する処理であり得る。
【００５３】
隆起は、地理の分野では、中央のピーク並びに特定の高さを超える周囲のサブピークを含み得る地理的特徴である。「微分隆起部」という用語は同様の特徴を示唆する。特に、本用語が本明細書において使用される場合、微分隆起部は、決定されるエッジ微分閾値ＴＨＳＰと強度微分プロファイルＧＰとの交点で、強度微分プロファイルＧＰを区切って定義される。。選択エッジを位置特定するために、いくつかの実施形態では、決定されるプロファイル走査方向に沿って選択エッジ前に遭遇する交点及び／又は隆起を考慮する必要がある。上で示されるように交点での１つ以上の区切りにより定義される単一の微分隆起部が、強度微分プロファイルＧＰに沿った複数の各エッジに対応する複数の微分極値を含み得ることが理解されるだろう。いくつかの実施形態では、隆起が、エッジ微分閾値ＴＨＳＰに対して、選択エッジに対応する極値と同じ側に延びる微分プロファイルＧＰの部分に対応すると見なせれば十分である。しかし、他の実施形態では、本明細書に記載の方法及び実施形態を適宜調整して、両極性の隆起を考慮し得る。
【００５４】
いくつかの微分隆起部は、明確にするために、図４において斜線でマークして記される。この例では、記された各隆起は、エッジ微分閾値ＴＨＳＰの、選択エッジに対応する極値と同じ側に延びる。例えば、候補閾値ＴＨＳＰ＝２３．８（左の近傍極値ＬＮＥ及び左から右への走査方向に関連付けられる）は微分プロファイルＧＰと交差し、走査方向起点と最初の交点との間に第１の隆起Ｐ１＞（ここで、記号「＞」は左から右への走査方向に沿って向く）を定義する。微分隆起部Ｐ２＞は、走査線微分プロファイルに沿って左から右に進む２番目の交点と３番目の交点との間に定義され、微分隆起部Ｐ３＞は、４番目の交点で開始されて定義される。選択エッジＥＳ’が、微分隆起部Ｐ３＞内で走査方向い沿って進むことにより遭遇する最初の極値であり、微分隆起部Ｐ３＞の右端限度を考慮せずに選択エッジを位置特定できるようにすることが分かる。別のさらなる例として、候補閾値ＴＨＳＰ＝−２０．３（右の近傍極値ＲＮＥ及び右から左への走査方向に関連付けられる）は微分プロファイルＧＰと交差し、走査線微分プロファイルに沿って右から左に進む最初の交点と２番目の交点と間に第１の隆起Ｐ１＜（ここで、記号「＜」は右から左への走査方向に沿って向く）を定義する。選択エッジＥＳ’が微分隆起部Ｐ１＜において遭遇する最初の極値である（且つこの特定の場合、微分隆起部Ｐ１＜において遭遇する唯一の極値でもある）ことが分かる。
【００５５】
微分プロファイルＧＰに沿った選択エッジＥＳ’の大まかな位置が、ユーザによるエッジセレクタＥＳの位置決めに基づいて既知であることが理解されるだろう。したがって、隆起が選択エッジを含むことを自動的に特定することが可能である。さらに、本明細書に記載の実施形態について上述したように、選択エッジは、関連付けられた走査方向に沿って進む場合、その隆起内で遭遇する最初の有意な極値としてより具体的に識別し得る。上述した原理及び方法は、既知のプログラム方法及び／又は信号処理回路を使用して実施し得る。例えば、そのような動作は、図２を参照して上述したように、微分プロファイル解析部１４３ｇｐａ及び／又は微分隆起部カウンタ部１４３ｇｐｃにより実行し得る。
【００５６】
図４に示される例では、候補閾値ＴＨＳＰ＝−２０．３が、選択エッジＥＳ／ＥＳ’の位置特定に使用すべきエッジ微分閾値として選択されている。上述したように、エッジ微分閾値ＴＨＳＰ＝−２０．３は右の近傍極値ＲＮＥに基づく最大範囲に関連付けられる。図４に示される実施形態では、走査方向は、走査方向パラメータ／編集ボックスにより示されるように、右から左であるように選択される（すなわち、走査方向は左に向かって進む）。図４に示される特定の実施形態では、エッジ微分閾値ＴＨＳＰ＝−２０．３は、その走査方向及び／又はその最大範囲に関連付けられたロバスト極値マージンＲＥＭ＜の中間点に設定される。ロバスト極値マージンについては図５を参照してさらに詳細に後述する。
【００５７】
右の近傍極値ＲＮＥは、微分プロファイルにおいて、走査方向に沿って選択エッジよりも前に遭遇し、これは、微分隆起部区切りを定義する隣接交点に関連することが分かり、それにより、選択エッジは、走査線に沿って進む場合、対応する隆起Ｐ１＜において遭遇する最初の有意な極値である。選択エッジＥＳ／ＥＳ’に関連付けられた微分隆起部は、走査方向（上述したように、自動的に決定し得る）に沿った最初の微分隆起部Ｐ１＜であるため、選択エッジ隆起カウンタパラメータ／編集ボックスは「１」に自動的に設定し得る。この特定のタイプの隆起カウントパラメータは単なる例示であり、限定ではない。例えば、微分隆起部カウントパラメータは代わりに、交点又は両極性の隆起等をカウントし得ることが理解されるだろう。より一般に、上記説明に基づいて、微分隆起部カウントパラメータは、定義された微分隆起部に関連する選択エッジの位置を示すならば十分であり、その場合、関連する信号処理を利用して、上述した原理に従って選択エッジを確実且つロバストに位置特定し得ることが理解されるだろう。選択エッジを含む微分隆起部の番号の識別は、単に１つのそのような可能性である。
【００５８】
上記説明では、候補閾値ＴＨＳＰ＝−２０．３が、選択エッジＥＳ／ＥＳ’の位置特定に使用すべきエッジ微分閾値として選択された。しかし、別の例では、候補閾値ＴＨＳＰ＝２３．８を使用し得ることを理解されたい。そのような場合、エッジ微分閾値ＴＨＳＰ＝２３．８は左の近傍極値ＬＮＥに基づく最大範囲に関連付けられる。走査方向は、左から右になるように選択し得る（例えば、走査方向パラメータ／編集ボックスにおいて「右」ラジオボタンを選択することにより）。一実施形態では、エッジ微分閾値ＴＨＳＰ＝２３．８は、ロバスト極値マージンＲＥＭ＞の中間点に設定し得、右に向かう走査方向及び／又は左近傍極値ＬＮＥに関連付けられた最大範囲に関連付けられる。左近傍極値ＬＮＥは、微分プロファイルにおいて、右に進む走査方向に沿って選択エッジよりも前に遭遇し、これは、見ての通り、微分隆起部区切りを定義する隣接交点に関連し、それにより、選択エッジは、その走査方向に沿って進む場合、対応する隆起Ｐ３＞において遭遇する最初の有意な極値である。選択エッジＥＳ／ＥＳ’に関連付けられた微分隆起部は、走査方向（上述したように、自動的に決定し得る）に沿って３番目の微分隆起部Ｐ３＞であるため、選択エッジ隆起カウンタパラメータ／編集ボックスは「３」（図示せず）に自動的に設定し得る。
【００５９】
いくつかの実施形態では、ロバスト極値マージンＲＥＭ＞及びＲＥＭ＜を、２つの走査方向のそれぞれに対応して決定し得（例えば、図４に表示されるように）、２つのロバスト極値マージンのうちの一方を選択し得る。いくつかの実施形態では、この選択を手動で行い得（例えば、関連付けられたロバスト極値マージンインジケータ又はパラメータ編集ボックス等を選択することにより）、エッジ微分閾値を選択されたマージン内に設定し得る。走査方向は、選択されたロバスト極値マージンに対応して設定することもできる。あるいは、いくつかの実施形態では、走査方向の選択（例えば、走査方向ラジオボタンを手動で選択することにより）により、対応するロバスト極値マージンを自動的に選択し得る。
【００６０】
図３及び図４のユーザインタフェース例に示される要素の組み合わせが単なる例示であり、限定ではないことが理解されるだろう。様々な実施形態において、且つ／又は本明細書において概説された異なる動作フェーズ中、所望であれば、様々な要素を追加又はなくし得、且つ／又は様々な要素を、同様の機能を満たす異なる形態で提示し得る。例えば、いくつかの実施形態では、最大範囲を自動的に決定且つ／又は選択し得る、且つ／又はロバスト極値マージンを自動的に決定且つ／又は選択し得、エッジ微分閾値は、決定又は選択された最大範囲又はロバスト極値マージン内に自動的に設定し得る。そのような場合、様々な実施形態において、便宜上、上記に関連する任意の所望のＧＵＩ要素を表示し得（例えば、限度線又は陰影帯等の対応するインジケータを表示することにより）、又は簡易化のために省略し得る。
【００６１】
いくつかの実施形態では、所望の場合、現在のパラメータセットから生成される関連する微分隆起部を表示し得る。あるいは、様々な実施形態では、上記に関連する任意の所望のＧＵＩ要素を、ユーザによる認識、確認、及び／又は調整のために表示し得る。例えば、エッジ微分閾値の現在値に対応する微分閾値インジケータを、ビデオツールＧＵＩに表示された微分プロファイルに重ねる（例えば、図４に示されるように）ことにより表示し得、閾値インジケータ（及び基礎となるパラメータ）が手動で調整可能であり得る（例えば、ＧＵＩでの閾値インジケータの選択及びドラッグにより）。いくつかの実施形態では、現在のパラメータセットから生成される関連する微分隆起部を表示し得、所望の場合、パラメータインジケータの手動調整に対応してリアルタイムで更新し得る。
【００６２】
図３及び図４に示される例示的な実施形態は、ボックス型ツールの使用を示すが、同じ動作を円弧ツール又は円ツール等にも適用し得、その場合、選択エッジを横切る走査線プロファイルが半径方向を辿り得ることを理解されたい。
【００６３】
図５は、複数のエッジの中から特定のエッジを見つけることに関連し、特に、エッジ位置結果がワークピース間の妥当に予期されるばらつきの影響を比較的受けにくいように、ロバスト極値マージン内に微分閾値を設定する方法に関連する様々な考慮事項を示す図５００である。図５の要素は、図３及び図４のユーザインタフェースに示される相手方部分と概ね同様であり、一般に類推により理解し得る。例えば、図３及び図４において３ＸＸ及び４ＸＸと同じ「ＸＸ」接尾辞を有する図５の５ＸＸシリーズの番号は、以下において別のことが記載又は暗示される場合を除き、同様又は同一の要素を示し得る。
【００６４】
図５は走査線微分プロファイルＧＰを示す。極大及び極小（例えば、適切な解析ルーチンにおいて実施される既知の数学的方法により自動的に識別されるように）は、図５にマークされる微分極値ＧＥＶを有する。特に、選択エッジＥＳ’の左側（選択エッジＥＳ’を含む）に配置された第１の微分極値セットは、微分極値ＧＥＶ−Ｌ１〜ＧＥＶ−Ｌ１１とマークされる。「−ＬＸＸ」接尾辞は、これらの微分極値が選択エッジＥＳ／ＥＳ’の左側に配置されることを示す。これらの極値には、左端部から右に向かって微分プロファイルＧＰに沿い、選択エッジＥＳ／ＥＳ’を含め選択エッジＥＳ／ＥＳ’まで進む「右」走査方向に沿って遭遇することが理解されるだろう。これらの極値は、「右」走査方向ロバスト極値マージンである第１の走査方向ロバスト極値マージンを決定することに関連する。
【００６５】
微分閾値レベルが微分隆起部の定義に使用され、微分隆起部が、本明細書に開示される様々な実施形態において選択エッジの位置特定に使用されるランドマークであることを理解されたい。したがって、微分閾値を、微分プロファイルＧＰに示される任意の極値から比較的遠くにあるレベルに設定することが有利である。これは、ワークピース及び／又はワークピース画像間の特定の微分極値の潜在的なばらつきにも拘わらず、安定し再現可能なように微分隆起部を定義する。これを達成する一方法は、微分プロファイルＧＰにおいて走査方向に沿って選択エッジ前に遭遇する微分極値間の最大のギャップに微分閾値を設定することであることが分かり得る。したがって、ロバスト極値マージンが定義条件を満たすと言え、条件は、
（ａ）ロバスト極値マージンが、最大範囲内に含まれ、決定されるプロファイル走査方向に沿って選択エッジを含め、選択エッジ前に遭遇する強度微分プロファイルにおける微分極値に対応する微分極値のランク付きリスト内の順次値である第１及び第２の微分極値により制限されること、並びに
（ｂ）ロバスト極値マージンを制限する第１及び第２の微分極値が、（ｂ１）ランク付きリスト内の順次値間の最大差及び（ｂ２）エッジ要素ビデオツールにおいて定義される最大マージン値を超える差のうちの一方を示す順次値であること、
を含む。
【００６６】
図５において、微分極値ＧＥＶ−Ｌ１〜ＧＥＶ−Ｌ１１は、値が垂直軸に沿った値により順次ランク付け又は順序付けされるという点で、ランク付きリストとして示される。検査により、ＧＥＶ−Ｌ１がロバスト極値マージンＲＥＭ＞に関連する最大範囲外にあり、ロバスト極値マージンＲＥＭ＞は、この特定の例では、左近傍極値ＬＮＥに関連することが分かる。すなわち、この特定の例では、ロバスト極値マージンＲＥＭ＞に関連する最大範囲は、Ｌ−ＳＥ＝ＧＥＶｓｅｌ＝ＧＥＶ−Ｌ２とＯＬ−ＬＮＥ＝ＧＥＶ−ｎＬ＝ＧＥＶ−Ｌ１１との間に制限される。したがって、ＧＥＶ−Ｌ１は関連する最大範囲外にあり、検討から外される。残りのランク付きリスト内の順次値間のより大きな差のうちの２つは、例えば、ＧＥＶ−Ｌ３とＧＥＶ−Ｌ４との間及びＧＥＶ−Ｌ９とＧＥＶ−Ｌ１０との間である。ＧＥＶ−Ｌ９とＧＥＶ−Ｌ１０との間の差は、残りのランク付きリスト内の順次値間の最大差である。したがって、この特定の実施形態では、これらは、インジケータＲＥＭ＞により示されるように、「右」走査方向ロバスト極値マージンを制限する２つの微分極値である。微分閾値ＴＨＳＰ＝２３．８は、この例では、「右」走査方向ロバスト極値マージンＲＥＭ＞の中間に自動的に設定し得る。しかし、いくつかの実施形態では、ユーザは、微分閾値を、走査方向極値マージン内の他のどこかに配置することを選ぶこともできる。
【００６７】
図５の検査により、ロバスト極値マージンＲＥＭ＞内（限度を除く）の任意の場所にある微分閾値ＴＨＳＰが、「右」走査方向に沿って進む場合、隆起Ｐ３＞において生じる選択エッジになることが分かり得る。選択エッジ隆起カウンタパラメータ／編集ボックスは、上述した原理に従って対応する値（例えば、「３」）に自動的に設定し得る。したがって、上述したパラメータセットは、ワークピース及び／又は画像間で極値に妥当なばらつきがあっても、またビデオツールＲＯＩに複数の類似エッジが含まれていても、選択エッジをロバストに示すと見なし得る。
【００６８】
図５では、第２の微分極値セットが、選択エッジＥＳ’の右側に（選択エッジＥＳ’を含み）配置され、微分極値ＧＥＶ−Ｒ１〜ＧＥＶ−Ｒ４とマークされる。「−ＲＸＸ」接尾辞は、これらの微分極値が選択エッジＥＳ／ＥＳ’の右側に配置されることを示す。これらの極値には、右端部から左に向かって微分プロファイルＧＰに沿い、選択エッジＥＳ／ＥＳ’を含め選択エッジＥＳ／ＥＳ’まで進む「左」走査方向に沿って遭遇することが理解されるだろう。これらの極値は、「左」走査方向ロバスト極値マージンである第２の走査方向ロバスト極値マージンを決定することに関連する。微分極値ＧＥＶ−Ｒ１〜ＧＥＶ−Ｒ４は、値が垂直軸に沿った値により順次ランク付け又は順序付けされるという点で、ランク付きリストとして示される。
【００６９】
検査により、ＧＥＶ−Ｒ４がロバスト極値マージンＲＥＭ＜に関連する最大範囲外にあり、ロバスト極値マージンＲＥＭ＜は、この特定の例では、右近傍極値ＲＮＥに関連することが分かる。すなわち、この特定の例では、ロバスト極値マージンＲＥＭ＜に関連する最大範囲は、Ｌ−ＳＥ＝ＧＥＶｓｅｌ＝ＧＥＶ−Ｒ１とＯＬ−ＲＮＥ＝ＧＥＶ−ｎＲ＝ＧＥＶ−Ｒ３との間に制限される。したがって、ＧＥＶ−Ｒ４は関連する最大範囲外にあり、検討から外される。残りのランク付きリスト内の順次値間の最大差は、ＧＥＶ−Ｒ１とＧＥＶ−Ｒ２との間である。したがって、この特定の実施形態では、これらは、インジケータＲＥＭ＜により示されるように、「左」走査方向ロバスト極値マージンを制限する２つの微分極値である。微分閾値ＴＨＳＰ＝−２０．３は、この例では、「左」走査方向ロバスト極値マージンＲＥＭ＜の中間に自動的に設定し得る。
【００７０】
図５の検査により、ロバスト極値マージンＲＥＭ＜内（限度を除く）の任意の場所にある微分閾値ＴＨＳＰが、「左」走査方向に沿って進む場合、隆起Ｐ１＜において生じる選択エッジになることが分かり得る。選択エッジ隆起カウンタパラメータ／編集ボックスは、上述した原理に従って対応する値（例えば、「１」）に自動的に設定し得る。したがって、上述したパラメータセットは、ワークピース及び／又は画像間で特定の極値に妥当なばらつきがあっても、またビデオツールＲＯＩに複数の類似エッジが含まれていても、選択エッジをロバストに示すと見なし得る。
【００７１】
直前に説明した特定の例では、左走査方向ロバスト極値マージンＲＥＭ＜はかなり大きく、閾値は中間に設定される。いくつかの実施形態又は用途では、これは、微分ノイズ帯を不必要にし、微分ノイズ帯を無視又は省略し得る。したがって、左走査方向ロバスト極値マージンＲＥＭ＜は、いくつかの実施形態では、微分ノイズ帯内にあり得るＧＥＶ−Ｒ２まで延び得る。しかし、いくつかの実施形態では、微分プロファイルＧＰの形態が予測不可能であり、微分ノイズ帯内の極値が比較的弱いエッジ及び／又はテクスチャに対応し、ワークピース及び／又は画像間でかなりばらつき、且つ／又は不確実であり得ると仮定することがより安全である。したがって、いくつかの実施形態では、エッジ要素ビデオツールは、自動的に、エッジ微分閾値が、微分値ゼロを含む微分ノイズ帯内の値に設定されないようにする動作を含む。
【００７２】
いくつかの実施形態では、微分ノイズ帯は、特定の微分プロファイルで最小絶対値等を有する微分極値ＧＥＶの２５％を除外するように設定し得る。他の実施形態では、解析又は実験に基づいて、弱い又は不確実なエッジに対応することが分かっている所定の限度に設定し得る。
【００７３】
いくつかの実施形態では、近傍極値が微分ノイズ帯内にある場合、その近傍極値に対応する最大範囲の他方の限度を、選択エッジ極値に最も近い微分ノイズ帯の限度よりも、選択エッジ極値から離れないように定義し得る。これは、「ノイズの多い」近傍極値を除外し、それにより、微分ノイズ帯内のあらゆるノイズの多いロバスト極値マージン限度も自動的に除外し、微分閾値限度が微分ノイズ帯に設定されないことを自動的に保証するように最大範囲を制限する。
【００７４】
上述した右及び左ロバスト極値マージンのそれぞれは、ランク付きリスト内の順次値間で最大差を示す２つの順次微分極値に基づく。しかし、この実施形態は単なる例示であり、限定ではない。他の実施形態では、複数エッジ動作は、妥当な予期されるワークピース及び／又は画像のばらつきに安定した結果を提供すると判断された最小マージン値又は差要件を含み得、最小マージン値又は差要件を超える任意のロバスト極値マージンを使用し得る。
【００７５】
さらに、いくつかの実施形態では、左及び右ロバスト極値マージンのそれぞれを自動的に決定し得、より大きい方（例えば、図５の「左」走査方向ロバスト極値マージンＲＥＭ＜）を自動的且つ／又は手動で選択し得る。いくつかの実施形態では、エッジ微分閾値は、左及び右ロバスト極値マージンのうちの選択された一方内に自動的に設定し得る。熟練ユーザには、図３、図４及び図５に示されるエッジ例は右から左への走査をすればよく、本明細書に概説される方法が、このエッジ例には必要であるように見えないことがあることを示唆し得ることが理解されるだろう。しかし、上述した方法が、この常識的な結論を満たすのみならず、そのような「常識的」解決策及び他の従来技術による方法が失敗する場合（例えば、選択エッジＥＳの左側にあるなどのエッジ及びテクスチャは、選択エッジの右側にも生じる）にも有効な自動又は半自動方法を提供もすることが理解されるだろう。
【００７６】
図５は、ビデオツールユーザインタフェースのいくつかの実施形態において表示し得る検出ロバスト性インジケータ特徴も示す。検出ロバスト性インジケータは、エッジ要素ビデオツールを使用して、現在のエッジ検出パラメータセットに基づいて選択エッジ要素を検出することに関連するリスクの程度を示し得る。例えば、２３．８での微分閾値インジケータは、検出ロバスト性インジケータ「閾値安全度＝ＯＫ」を表示し、このインジケータは、微分プロファイル極値に妥当に予期されるか、又は予測可能なばらつきがある場合、対応するサイズの右走査方向ロバスト極値マージンＲＥＭ＞が、現在の「右走査」パラメータセットを使用して選択エッジを検出することに関連するリスクを、許容可能すなわち「ＯＫ」レベルに達するように低減することを示す。−２０．３での微分閾値インジケータは、左走査方向ロバスト極値マージンＲＥＭ＜のサイズが大きいので、検出ロバスト性インジケータ「閾値安全性＝高」を表示し、微分プロファイル極値の妥当に予期されるか、又は予測可能なばらつきに対する、関連する現在の「左走査」パラメータセットを使用して、選択エッジを検出することに関連するリスクのレベルを大幅に低減することを示す。検出ロバスト性インジケータが、エッジ微分閾値を示す線に関連付けられた色等を含み得ることが理解されるだろう。例えば、緑の閾値線を使用して、低リスク／高安全性を示し得、黄色の閾値線を使用して、ＯＫリスク／ＯＫ安全性を示し得、赤い線を使用して、高リスク／低安全性を示し得る。当然、任意の他の使い勝手のよい形態のリスクインジケータを使用してもよい。
【００７７】
一実施形態では、リスクインジケータは、微分走査線ＧＰに含まれる微分値の範囲に対する関連するロバスト極値マージン（又はロバスト極値マージンが特定の実施形態又は用途で適用可能ではない場合、関連する最大範囲等）の比率に基づいて自動的に決定し得る（例えば、いくつかの実施形態では、０．２５よりも大きな比率はＯＫリスクを示し得、０．３３よりも大きな比率は低リスクを示し得る）。上述したものと同様のリスクインジケータを設定する代替の解析又は代替のベースは、実験又は解析に基づいて決定し得る。
【００７８】
図６及び図７は、図５と同様の図６００及び７００を含み、微分閾値の最大範囲を定義し、代替の最大範囲に関連する代替のロバスト極値マージン内に微分閾値を設定する様々な代替を示す。図６及び図７の要素は、図５に示される相手方部分と概ね同様であり、一般に類推により理解し得る。例えば、図５において５ＸＸシリーズの番号と同じ「ＸＸ」接尾辞を有する図６及び図７の６ＸＸ及び７ＸＸシリーズの番号は、以下において別のことが記載又は暗示される場合を除き、同様又は同一の要素を示し得る。
【００７９】
上述したように、左及び右走査方向のいくつかの実施形態では、ロバスト極値マージンを自動的に決定し得、より大きい方を自動的且つ／又は手動で選択し得る。関連する動作の例について、図６及び図７を参照して以下に概説し、選択エッジＥＳ／ＥＳ’は図５に示されるものと異なる。
【００８０】
図６では、選択エッジＥＳ’の左側（選択エッジＥＳ’を含む）に配置された第１の微分極値セットは、微分極値ＧＥＶ−Ｌ１〜ＧＥＶ−Ｌ１０とマークされる。「−ＬＸＸ」接尾辞は、これらの微分極値が選択エッジＥＳ／ＥＳ’の左側に配置されることを示す。これらの極値には、左端部から右に向かって微分プロファイルＧＰに沿い、選択エッジＥＳ／ＥＳ’を含め選択エッジＥＳ／ＥＳ’まで進む「右」走査方向に沿って遭遇することが理解されるだろう。これらの極値は、「右」走査方向ロバスト極値マージンである第１の走査方向ロバスト極値マージンを決定することに関連する。
【００８１】
上述した理由により、微分極値ＧＥＶ−Ｌ１〜ＧＥＶ−Ｌ１０は、値が垂直軸に沿った値により順次ランク付け又は順序付けされるという点で、ランク付きリストとして示される。検査により、ＧＥＶ−Ｌ１〜ＧＥＶ−Ｌ１０がすべてロバスト極値マージンＲＥＭ＞に関連する最大範囲内にあり、ロバスト極値マージンＲＥＭ＞は、この特定の例では、左近傍極値ＬＮＥに関連することが分かる。すなわち、この特定の例では、ロバスト極値マージンＲＥＭ＞に関連する最大範囲は、Ｌ−ＳＥ＝ＧＥＶｓｅｌ＝ＧＥＶ−Ｌ１０とＯＬ−ＬＮＥ＝ＧＥＶ−ｎＬ＝ＧＥＶ−Ｌ１との間に制限される。ＧＥＶ−Ｌ１とＧＥＶ−Ｌ２との差は、残りのランク付きリスト内の順次値間の最大差である。したがって、この特定の実施形態では、これらは、インジケータＲＥＭ＞により示されるように、「右」走査方向ロバスト極値マージンを制限する２つの微分極値である。
【００８２】
第２の微分極値セットが、選択エッジＥＳ’の右側に（選択エッジＥＳ’を含み）配置され、微分極値ＧＥＶ−Ｒ１〜ＧＥＶ−Ｒ５とマークされる。「−ＲＸＸ」接尾辞は、これらの微分極値が選択エッジＥＳ／ＥＳ’の右側に配置されることを示す。これらの極値には、右端部から左に向かって微分プロファイルＧＰに沿い、選択エッジＥＳ／ＥＳ’を含め選択エッジＥＳ／ＥＳ’まで進む「左」走査方向に沿って遭遇することが理解されるだろう。これらの極値は、「左」走査方向ロバスト極値マージンＲＥＭ＜である第２の走査方向ロバスト極値マージンを決定することに関連する。微分極値ＧＥＶ−Ｒ１〜ＧＥＶ−Ｒ５は、値が垂直軸に沿った値により順次ランク付け又は順序付けされるという点で、ランク付きリストとして示される。
【００８３】
検査により、すべてのＧＥＶ−Ｒ１〜ＧＥＶ−Ｒ５がロバスト極値マージンＲＥＭ＜に関連する最大範囲内にあり、ロバスト極値マージンＲＥＭ＜は、この特定の例では、右近傍極値ＲＮＥに関連することが分かる。すなわち、この特定の例では、ロバスト極値マージンＲＥＭ＜に関連する最大範囲は、Ｌ−ＳＥ＝ＧＥＶｓｅｌ＝ＧＥＶ−Ｒ５とＯＬ−ＲＮＥ＝ＧＥＶ−ｎＲ＝ＧＥＶ−Ｒ１との間に制限される。ランク付きリスト内の順次値間の最大差は、ＧＥＶ−Ｒ１とＧＥＶ−Ｒ２との間である。したがって、この特定の実施形態では、これらは、インジケータＲＥＭ＜により示されるように、「左」走査方向ロバスト極値マージンを制限する２つの微分極値である。
【００８４】
様々な実施形態では、差ＲＥＭ＜を差ＲＥＭ＞と比較し得る。この特定の例では、ＲＥＭ＞のほうが大きい。したがって、ＲＥＭ＞が選択エッジの検出のベースとして選択され、微分閾値（例えば、ＴＨＳＰ＝−３５．６）を「右」走査方向ロバスト極値マージンＲＥＭ＞の中間に自動的に設定し得る。走査方向は右に設定される。選択エッジ隆起カウンタパラメータ／編集ボックスは、上述した原理に従って対応する値（例えば、「２」）に自動的に設定し得る。選択エッジＥＳ’は、この例では、対応する微分隆起部において走査方向に沿って遭遇する最初の極値である。上述したパラメータセットは、ワークピース及び／又は画像間で特定の極値に妥当なばらつきがあっても、またビデオツールＲＯＩに複数の類似エッジがあっても、選択エッジをロバストに示すと見なし得る。
【００８５】
図７及び以下の説明は、ワークピース画像６１０及び走査線微分プロファイルＧＰが同一であるという点で、図６と同等である。しかし、以下において概説される実施形態では、同じ最大範囲が、各ロバスト極値マージンの決定に使用される。特に、図７に示される実施形態では、最大範囲の他方の限度ＯＬは、選択エッジの微分プロファイル極値に最も近い２つの近傍極値微分値のうちの一方よりも、選択エッジ極値から離れていない。この特定の例では、右近傍極値微分値ＧＥＶ−ｎＲは、左近傍極値微分値ＧＥＶ−ｎＬよりも選択エッジの微分プロファイル極値ＧＥＶｓｅｌに近い。したがって、ロバスト極値マージンＲＥＭ＞及びＲＥＭ＜の両方に関連する最大範囲は、Ｌ−ＳＥ＝ＧＥＶｓｅｌ＝ＧＥＶ−Ｒ５＝ＧＥＶ−Ｌ１０とＯＬ−ＲＥ＝ＧＥＶ−ｎＲ＝ＧＥＶ−Ｒ１との間に制限される。
【００８６】
検査により、走査方向ロバスト極値マージンＲＥＭ＞に関連するランク付きリスト内の微分極値ＧＥＶ−Ｌ１〜ＧＥＶ−Ｌ３が、最大範囲外にあることが分かる。ＧＥＶ−Ｌ８とＧＥＶ−Ｌ９との差は、そのランク付きリストに残っている順次値間の最大差である。したがって、この特定の実施形態では、これらは、インジケータＲＥＭ＞により示されるように、「右」走査方向ロバスト極値マージンを制限する２つの微分極値である。「左」走査方向ロバスト極値マージンに関して、すべての微分極値ＧＥＶ−Ｒ１〜ＧＥＶ−Ｒ５は、最大範囲内にある。ランク付きリスト内の順次値間の最大差は、ＧＥＶ−Ｒ１とＧＥＶ−Ｒ２との間である。したがって、これらは、インジケータＲＥＭ＜により示されるように、「左」走査方向ロバスト極値マージンを制限する２つの微分極値である。
【００８７】
この特定の例では、ＲＥＭ＞はＲＥＭ＜よりも大きい。したがって、ＲＥＭ＞が選択エッジの検出のベースとして選択され、微分閾値（例えば、ＴＨＳＰ＝２２．２）を「右」走査方向ロバスト極値マージンＲＥＭ＞の中間に自動的に設定し得る。走査方向は右に設定される。選択エッジ隆起カウンタパラメータ／編集ボックスは、上述した原理に従って対応する値（例えば、「２」）に自動的に設定し得る。
【００８８】
最大範囲は、選択エッジの微分プロファイル極値に最も近い、２つの近傍極値微分値のうちの一方に基づくため、選択エッジＥＳ’は、この例では、対応する微分隆起部において走査方向に沿って遭遇する唯一の極値である。そのような実施形態では、最大範囲を定義する近傍極値が走査方向に沿って選択エッジより前にある必要はないが、微分プロファイルＧＰの特定のインスタンスに応じて、そうする必要があり得ることを理解されたい。いずれの場合でも、上述したパラメータセットは、ワークピース及び／又は画像間で特定の極値に妥当なばらつきがあっても、またビデオツールＲＯＩに複数の類似エッジがあっても、選択エッジをロバストに示すと見なし得る。
【００８９】
上述した右及び左ロバスト極値マージンのそれぞれは、ランク付きリスト内の順次値間で最大差を示す２つの順次微分極値に基づく。しかし、この実施形態は単なる例示であり、限定ではない。他の実施形態では、複数のエッジ動作は、妥当な予期されるワークピース及び／又は画像のばらつきに安定した結果を提供すると判断された最小マージン値又は差要件を含み得、最小マージン値又は差要件を超え、最大範囲内にある任意のロバスト極値マージンを使用し得る。
【００９０】
図５、図６、及び／又は図７を参照して上述した原理及び方法は、既知のプログラミング方法及び／又は信号処理回路を使用して実施し得る。例えば、そのような動作は、図２を参照して上述した微分プロファイル解析部１４３ｇｐａ、微分閾値部１４３ｇｔ、及び／又は微分隆起部カウンタ１４３ｇｐｃにより自動的に実行し得る。
【００９１】
図８Ａ及び図８Ｂは、マシンビジョン検査システムに含まれるエッジ要素ビデオツールの関心領域内の複数のエッジを区別する場合、エッジ検出の確実性を向上させる方法及び／又はルーチンを示す流れ図８００である。以下に概説する一般的な方法又はルーチンの様々な実施形態は、本明細書において先に開示した関連する動作及び／又は要素の様々な組み合わせの実施に基づいて実行し得る。
【００９２】
ブロック８１０において、エッジ要素ビデオツールが提供され、エッジ要素ビデオツールは、関心領域（ＲＯＩ）と、エッジ微分閾値、プロファイル走査線方向、及び微分隆起部カウントパラメータを含む複数のエッジ検出パラメータにより管理されるエッジ検出動作と、関心領域インジケータ及びエッジ選択要素を含むビデオツールＧＵＩとを含む。
【００９３】
ブロック８２０において、ワークピースが、マシンビジョン検査システムの視野に配置される。
【００９４】
ブロック８３０において、エッジ要素ビデオツールを動作させて、取得したワークピース画像内に複数のエッジ要素を含むＲＯＩを定義する。
【００９５】
ブロック８４０において、エッジ要素ビデオツールを動作させて、ＲＯＩ内のエッジ要素を、エッジ要素ビデオツールのエッジ検出動作により検出される選択エッジとして選択する。
【００９６】
ブロック８５０において、エッジ要素ビデオツールを動作させて、プロファイル走査方向及びエッジ微分閾値を決定する。エッジ要素ビデオツールを動作させて、エッジ微分閾値を決定することは、エッジ要素ビデオツールを動作させて、エッジ微分閾値を最大範囲内に設定することを含み、最大範囲は、選択エッジの微分プロファイル極値を一方の限度として有するとともに、他方の限度は、関心領域内の選択エッジを横切る強度微分プロファイルに沿って選択エッジ極値に隣接し、且つ選択エッジの極値とは逆の極性を有する２つの近傍極値である２つの微分プロファイル近傍極値のうちの１つの限度ほどは選択エッジ極値から離れていない。
【００９７】
上述したように、いくつかの実施形態では、２つの近傍極値微分値のうち限度極値（すなわち、最大範囲を制限する極値）となるのは、選択エッジの微分プロファイル極値により近いものである。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部内で遭遇する唯一の極値であり得、その極値を見つける追加の信号処理が最小の状態で良好な検出確実性を可能にし得る。
【００９８】
他の実施形態では、２つの近傍極値微分値のうちの限度極値は、選択エッジの微分プロファイル極値に近いか否かに関係なく、決定されたプロファイル走査方向に沿って選択エッジよりも前に遭遇する近傍極値に対応するものであり得る。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部において、決定されたプロファイル走査方向に沿って遭遇する最初の極値であり得、その極値を見つける追加の信号処理が最小の状態で良好な検出確実性を可能にし得る。
【００９９】
他の実施形態では、２つの近傍極値微分値のうちの限度極値は、選択エッジの微分プロファイル極値に近いか否かに関係なく、決定されたプロファイル走査方向に沿って選択エッジよりも後に遭遇する近傍極値に対応するものであり得る。それにより、そのような場合、選択エッジ極値は、関連付けられた微分隆起部において、決定されたプロファイル走査方向に沿って遭遇する最後の極値であり得る。しかし、後者の代替は、その極値を見つけるために比較的複雑な信号処理を必要とし得、又はいくつかの用途では信頼性がより低いと見なされ得る。ブロック８５０後、プロセスは、図８Ｂに続く参照マーカＡに続く。
【０１００】
図８Ｂの参照マーカＡの後、ブロック８６０において、エッジ要素ビデオツールを動作させ、プロファイル走査方向及びエッジ微分閾値に対応する微分隆起部カウントパラメータを自動的に決定する。エッジ要素ビデオツールを動作させ、決定されたプロファイル走査方向及びエッジ微分閾値に対応する微分隆起部カウントパラメータを自動的に決定することは、エッジ要素ビデオツールの自動動作を実行することを含み、自動動作は、微分隆起部カウントパラメータが次の条件を満たすように構成される。すなわち、条件は、（ａ）微分隆起部が、少なくとも、決定されたプロファイル走査方向に沿って選択エッジの前に遭遇する交点に関して、強度微分プロファイルと決定されたエッジ微分閾値との間の順次交点での強度微分プロファイルの区切りにより定義されること、（ｂ）単一の微分隆起部が、条件（ａ）により定義された区切り間の強度微分プロファイルに沿った複数のエッジに対応する複数の微分極値を含むことができること、並びに（ｃ）微分隆起部カウントパラメータが、定義された微分隆起部に関連して選択エッジの位置を示すこと、を含む。ブロック８６０の後、プロセスは終了する。
【０１０１】
学習動作モードに従って上で開示される様々な方法及び動作を実行し得、関連付けられたユーザインタフェース特徴を表示し得ることが理解されるだろう。次に、方法において決定されたパラメータを、同様のワークピースに対して将来使用するためにパートプログラムに保存し得る。当然、様々な実施形態において、方法は、追加又は代替として、パートプログラムで自動実行時実行するように実施し得る。
【０１０２】
本発明の様々な実施形態を示し説明したが、特徴及び動作シーケンスが示され説明された構成での多くの変形が、本開示に基づいて当業者には明らかになるだろう。したがって、本発明の趣旨及び範囲から逸脱せずに、様々な変更を行い得ることが理解されるだろう。
【符号の説明】
【０１０３】
１０、１００  マシンビジョン検査システム
１２  画像測定機
１４  制御コンピュータシステム
１６  ディスプレイ
１８  プリンタ
２０  ワークピース
２２  ジョイスティック
２４  キーボード
２６  マウス
３２  可動式ワークピースステージ
３４  光学撮像システム
１２０  制御システム部
１２５  コントローラ
１３０  入出力インタフェース
１３１  撮像制御インタフェース
１３２  運動制御インタフェース
１３２ａ  位置制御要素
１３２ｂ  速度／加速度制御要素
１３３  照明制御インタフェース
１３３ａ〜１３３ｎ、１３３ｆｌ  照明制御要素
１３４  レンズ制御インタフェース
１３６  ディスプレイ装置
１３８  入力装置
１４０  メモリ
１４０ｅｄ  エッジ検出メモリ部
１４１  画像ファイルメモリ部
１４２  ワークピースプログラムメモリ部
１４３、１４３ａ、１４３ｎ  ビデオツール部
１４３ｅｆ  マルチエッジ要素ビデオツール
１４３ｐｓ  パラメータ設定部
１４３ｇｔ  微分閾値部
１４３ｇｐａ  微分プロファイル解析部
１４３ｇｐｃ微分隆起部カウンタ
１４３ｒｏｉ  関心領域生成器
１７０  ワークピースプログラム生成・実行器
１９０  電源部
２００  ビジョン構成要素部
２０５  光学アセンブリ部
２１０  ワークピースステージ
２１２  中央透明部
２２０  透過照明光
２２１、２３１、２４１、２８１  バス
２３０、２３０’  落射照明光
２４０  斜め照明光
２３２  光
２５０  交換式対物レンズ
２５５  ワークピース光
２６０  カメラ系
２６２、２９６  信号線
２８０  ターレットレンズアセンブリ
２８４  軸
２８６、２８８  レンズ
２９０  ミラー
２９４  制御可能なモータ
３００、３００’  ユーザインタフェース表示
３１０  視野ウィンドウ
３２０、３４０  選択バー
３３０  リアルタイムＸ−Ｙ−Ｚ（位置）座標ウィンドウ
３５０  光制御ウィンドウ
３５２  ボックスツールＧＵＩウィジェット
３６０  エッジ検出パラメータウィンドウ
３６２  走査線強度プロファイルウィンドウ
３６４  走査線強度微分プロファイルウィンドウ
【図１】
2014215301.tif 000003
【図２】
2014215301.tif 000004
【図３】
2014215301.tif 000005
【図４】
2014215301.tif 000006
【図５】
2014215301.tif 000007
【図６】
2014215301.tif 000008
【図７】
2014215301.tif 000009
【図８Ａ】
2014215301.tif 000010
【図８Ｂ】
2014215301.tif 000011