(57)【要約】【課題】適切に動作しないビデオツールを自動的にリカバリーする方法およびシステムを提供すること。【解決手段】リカバリー指示のセットがビデオツールと関連付けられ、当該ツールを自動的にリカバリーすることができる。リカバリー指示は、ワーク特徴の画像の取得および検査を左右する特徴検査パラメータを評価して修正するオペレーションを含んでいる。指示のセットは、画像取得パラメータを調整するリカバリーの初期フェーズを含んでいてもよい。画像取得パラメータの調整によってもツールが適切に動作しない場合には、追加的に、ツールの位置などの特徴検査パラメータが調整される。複数の特徴検査パラメータを考慮する順序は、最も効率的に自動ツールリカバリープロセスを実行できるように予め決まっている。【選択図】図６
2006126200.tif 000002
【特許請求の範囲】
【請求項１】
ワーク検査用の画像検査システムにおいて、適切に動作しないビデオツールを自動的にリカバリーする方法であって、
前記ビデオツールは、ワーク特徴画像の取得、および、当該ビデオツールによる当該画像におけるワーク特徴の検査動作に利用される特徴検査パラメータの最初のセットに基づいて適切に動作せず、
前記方法は、
（ａ）前記ビデオツールの不適切な動作を検出すると、少なくとも１つの特徴検査パラメータを前記ワーク特徴画像の解析に基づいて評価するステップと、
（ｂ）評価された前記各特徴検査パラメータについて、当該特徴検査パラメータが当該特徴検査パラメータについての所定の許容範囲内に入っているか否かを判定するステップと、
（ｃ）前記ステップ（ｂ）において特徴検査パラメータが前記許容範囲外であると判定された場合には、特徴検査パラメータの前記最初のセットの少なくとも１つの要素を自動的に調整して、前記ビデオツールを適切に動作させるような特徴検査パラメータの取替えセットを提供するステップと
を備えることを特徴とする方法。
【請求項２】
請求項１に記載の方法において、
前記ステップ（ａ）において評価される前記各特徴検査パラメータは、少なくとも１つの画像特性を含む
ことを特徴とする方法。
【請求項３】
請求項２に記載の方法において、
少なくとも１つの画像特性が当該画像特性についての所定の許容範囲外である場合には、前記ステップ（ｃ）は、少なくとも１つの画像取得パラメータを調整して、各画像特性が当該各画像特性についての所定の許容範囲内に入るようにするステップを含む
ことを特徴とする方法。
【請求項４】
請求項３に記載の方法において、
前記ステップ（ｃ）に含まれる、少なくとも１つの画像取得パラメータを調整して、各画像特性が当該各画像特性についての所定の許容範囲内に入るようにする前記ステップは、少なくとも１つの照明パラメータを調整して、輝度特性が当該輝度特性についての所定の許容範囲内に入るようにするステップを含む
ことを特徴とする方法。
【請求項５】
請求項３に記載の方法において、
前記ステップ（ｃ）に含まれる、少なくとも１つの画像取得パラメータを調整して、各画像特性が当該各画像特性についての所定の許容範囲内に入るようにする前記ステップは、少なくとも１つの焦点パラメータを調整して、焦点特性が当該焦点特性についての所定の許容範囲内に入るようにするステップを含む
ことを特徴とする方法。
【請求項６】
請求項３に記載の方法において、
前記ステップ（ｃ）に含まれる、少なくとも１つの画像取得パラメータを調整して、各画像特性が当該各画像特性についての所定の許容範囲内に入るようにする前記ステップは、
少なくとも１つの照明パラメータを調整して、輝度特性が当該輝度特性についての所定の許容範囲内に入るようにする第１のステップと、
前記第１のステップに続いて、少なくとも１つの焦点パラメータを調整して、焦点特性が当該焦点特性についての所定の許容範囲内に入るようにする第２のステップと
を含むことを特徴とする方法。
【請求項７】
請求項３に記載の方法において、
前記ステップ（ｃ）において、少なくとも１つの画像取得パラメータを調整して、各画像特性が当該各画像特性についての所定の許容範囲内に入るようにする前記ステップの後に行われる、特徴検査パラメータの前記最初のセットの少なくとも１つの要素を自動的に調整する前記ステップは、
（ｄ）少なくとも１つの調整された前記画像取得パラメータにより前記最初のセットにおける対応する要素を取り替えることによって、特徴検査パラメータの試験セットを形成するステップと、
（ｅ）前記試験セットに基づいて、ワーク特徴画像を取得し、前記ビデオツールによる当該画像におけるワーク特徴の検査動作を行うステップと、
（ｆ）前記ビデオツールが適切に動作した場合には、前記試験セットを前記取替えセットとして使用するステップと
を含むことを特徴とする方法。
【請求項８】
請求項７に記載の方法において、
前記ステップ（ｆ）の実行中に前記ビデオツールが適切に動作した場合には、
パートプログラムの実行中に、前記最初のセットを前記取替えセットに自動的に取り替えるステップ，
前記画像検査システムの訓練モード中に、前記最初のセットを前記取替えセットに自動的に取り替えるステップ，
前記ステップ（ｆ）における前記ビデオツールの適切な動作中に得られた検査結果を、パートプログラムにおける当該ビデオツール動作についての検査結果として自動的に使用し、当該パートプログラムにおける次の動作を自動的に続けるステップ
の少なくとも１つのステップが実行される
ことを特徴とする方法。
【請求項９】
請求項８に記載の方法において、
前記ビデオツールがエッジツールであり、当該ビデオツールが前記ステップ（ｆ）において適切に動作しなかった場合、特徴検査パラメータの前記最初のセットの少なくとも１つの要素を自動的に調整するステップは、
（ｇ）前記ステップ（ｅ）において前記ビデオツールがエッジを囲んでいなかったか否かを判定するステップと、
（ｈ）前記ステップ（ｅ）において前記ビデオツールがエッジを囲んでいなかった場合には、当該エッジの位置を当該ビデオツールの直近に設定し、当該ビデオツールが当該直近のエッジを囲むように、前記試験セットに含まれるツール位置パラメータを調整するステップと、
（ｉ）前記ステップ（ｅ）および（ｆ）を繰り返し行うステップと
を含むことを特徴とする方法。
【請求項１０】
請求項９に記載の方法において、
前記ビデオツールがエッジツールであり、当該ビデオツールが前記ステップ（ｉ）において適切に動作しなかった場合、特徴検査パラメータの前記最初のセットの少なくとも１つの要素を自動的に調整するステップは、
（ｊ）前記試験セットにおけるエッジ強度閾値パラメータを小さくするステップと、
（ｋ）前記ステップ（ｅ）および（ｆ）を繰り返し行うステップと
を含むことを特徴とする方法。
【請求項１１】
請求項１０に記載の方法において、
輝度パラメータ，焦点パラメータ，ツール位置パラメータ，エッジ強度パラメータによって構成される特徴検査パラメータのグループに含まれる少なくとも１つの特徴検査パラメータについての許容される自動調整範囲が、前記画像検査システムにおけるユーザインターフェイスのユーザによる操作に基づいて決定される
ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数方向に互いに相対移動可能なカメラおよびステージを備える画像検査システムを運転し、ステージ上のワークの選択された特徴を走査および検査する方法に関する。より詳細には、本発明は、このような画像システムにおいて使用されるビデオに基づく検査／測定ツールの動作を自動的にリカバリーし、あるいは、補うシステムおよび方法に関する。
【背景技術】
【０００２】
画像検査システム（あるいは、略して『画像システム』）は、検査対象の正確な寸法測定や、様々な他の特性の検査に利用されている。このようなシステムは、コンピュータ，カメラおよび光学システム，カメラが検査対象のワーク特徴を走査できるように複数方向に移動可能な精密ステージを含んでいる。このようなシステムの例として、イリノイ州オーロラのミツトヨアメリカ社（ＭＡＣ）から市販されているＰＣベースの画像システムである QUICK VISION（登録商標）シリーズや、QVPAK（登録商標）ソフトウェアが挙げられる。画像システムである QUICK VISION シリーズ、および、 QVPAK ソフトウェアの特徴および動作は、例えば、QVPAK 3D CNC Vision Measuring Machine Users Guide（2003年1月発行）や、QVPAK 3D CNC Vision Measuring Machine Operation Guide（1996年9月発行）に記載されている。この製品（例えば、QV-302 Pro model）は、ワークの画像を様々な倍率で提供し、１つのビデオ画像の境界を超えてワーク表面を横切るようにステージを動かすことができる顕微鏡タイプの光学システムを使用することができる。一般に、所望の倍率，測定分解能が設定され，さらに、物理的サイズの制限があるこのようなシステムでは、１つのビデオ画像が、観察あるいは検査対象のワークの一部のみを囲むに過ぎない。
【０００３】
画像検査システムは、自動ビデオ検査を行う。米国特許第6,542,180号には、このような自動ビデオ検査の様々な側面についての記載がある。この’180特許に記載されているように、自動ビデオ検査測定指示は、自動検査イベントシーケンス（自動検査の手順）がユーザによって各ワーク形状ごとに設定されることを可能とするプログラミング能力を含んでいる。これは、テキストベースプログラミング、または、ユーザによって実行される検査オペレーションのシーケンスに対応する装置制御指示のシーケンスを記録することによって検査イベントシーケンスを累進的に『学習する』記録モード、あるいは、以上の２つの方法の組合せなどによって実行することが可能である。このような記録モードは、通常、『学習モード』や『トレーニングモード』などと呼ばれている。一旦、検査イベントシーケンスが学習モードにおいて定義されると、『実行モード』では、このようなシーケンスによって、ワークの画像を自動的に取得する（そして、さらに解析あるいは検査する）ことができる。
【０００４】
特定の検査イベントシーケンスを含む装置制御指示（すなわち、各画像を取得する方法および各取得画像を解析／検査する方法）は、一般に、特定のワーク形状に固有の『パートプログラム』や『ワークプログラム』として記録される。例えば、パートプログラムは、どのように各画像を取得するか（例えば、どのような照明レベル，倍率レベルの下で、ワークに対してカメラをどのように配置するか）を規定する。さらに、パートプログラムは、どのように（例えば、エッジ／境界検出ビデオツールのような１または複数のビデオツールを使用することによって）取得画像を解析／検査するかを規定する。
【０００５】
ビデオツールが適切に動作するか否かは、ツールの動作に影響を与える装置，画像，ビデオツールパラメータを正しく設定できるか否かにかかっている。例えば、エッジ／境界検出ビデオツールを、画像中の検出対象エッジ／境界上に配置させるためには、画像は正しい照明／輝度，焦点，倍率レベルの下で取得されなければならない。また、ビデオツールの関心領域（すなわち、ビデオ画像中においてビデオツールが探索する領域）も、検出対象のエッジ／境界特徴を含むように設定されなければならない。
【０００６】
一般に、ワーク特徴の画像の取得および特徴の検査を左右する装置およびビデオツールパラメータは、ビデオツールを定義して訓練する初期の段階（例えば、運転またはプログラミングの訓練モード中）において想定された略理想的な状況の下で設定される。これは、一般に、オペレータが、ワーク特徴のリアルタイムの表示を見ながら、当該ワーク特徴の正確な検査結果を提供するために比較的理想的な状態になったとオペレータ自身が判断するまで、関連する装置およびビデオツールパラメータ（例えば、装置の位置，照明，ツールの位置および方向）の調整を行うからである。しかしながら、これに続く実行モードにおいて繰り返し行われるビデオツールの自動動作中には、部分の組立て状態，部分の固定状態，画像装置の劣化，周囲の照明状態などの予期しない各種の変動が生じるため、先に設定された動作パラメータのままでは、ビデオツールに適切な動作を行わせるのに適していない動作条件となってしまう。このように、従来のビデオツールは、例えば、動作条件やワーク特性における１または複数の予期しない変動のために、実行モード中において適切に動作しない場合があった。また、ツールの動作を十分に理解していない比較的経験の浅いユーザが装置，画像，ビデオツールパラメータを正しく設定することができなかった場合、従来のビデオツールは、学習モード中においても適切に動作しない場合があった。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来、ビデオツールが適切に動作しない場合には、以降のツールの動作が中止され、ユーザはツールのリカバリーをマニュアルで（例えば、ワークに対するカメラの位置，照明，ビデオツールの各種のパラメータをマニュアルで調整することによって）行わなければならなかった。これは煩雑で時間がかかる作業であり、学習モードにおけるオペレータの生産性や、実行モードにおける画像システムの検査処理量を大幅に低下させてしまうことになる。また、オペレータには、ビデオツールが適切に動作しない原因を解析し、動作が適切に行われるようにビデオツールパラメータを調整するための高度の技術や経験が必要とされることになる。
【０００８】
したがって、適切でないビデオツールの動作を自動的にリカバリーし、あるいは、補い、ビデオツールが適切に動作しないときにもオペレータが介入する必要のない方法およびシステムが必要である。
【課題を解決するための手段】
【０００９】
本発明は、画像システムにおいて適切に動作しないビデオツールを自動的にリカバリーする方法およびシステムを提供する。本発明は、ビデオツールに関連する、あるいは、ビデオツールに一体化され、当該ビデオツールが適切に動作しなくなったときに『呼び出される』プログラムまたはルーチンを提供し、当該ツールを自動的にリカバリーして検査結果の提供を続行できるようにする。すなわち、ビデオツールが適切に動作しなくなったときのために、リカバリープログラムまたはルーチンは、ワーク特徴の画像の取得および特徴の検査を左右する関連する装置，画像，ビデオツールパラメータを修正，再プログラム，調整する動作を含んでいる。以下、ワーク特徴の画像の取得および特徴の検査の重要な側面を左右する装置，画像，ビデオツールパラメータを、まとめて、あるいは、個別に、特徴検査パラメータと称する。
【００１０】
画像検査システムにおいてビデオツールの動作を自動的にリカバリーする方法は、次の３つのステップを含むリカバリーの画像特性解析フェーズを含んでいてもよい。第１のステップでは、検査対象のワーク特徴との関係でビデオツールが適切に動作していないことを検出すると、特徴の画像の解析に基づいて、少なくとも特徴の周囲の領域において、１または複数の画像特性値が決定される。画像特性値は、画像の輝度，画像の焦点のような画像の特性または特質を示す値であればどのようなものでもよい。第２のステップでは、決定された各画像特性値について、当該値が許容範囲（大抵は、予め決まっている範囲，デフォルト範囲，１または複数の特徴検査パラメータによって決まる範囲などである）内に入っているか否かが判断される。特性値に応じて、画像が暗過ぎる，明る過ぎる，焦点がずれているなどと、画像についての判断を下すことができる。第３のステップでは、画像特性値が許容範囲内に入るように、画像検査システムにおける適当な特徴検査パラメータが調整される。例えば、画像の平均輝度が許容範囲外である場合には、画像の照明状態に影響を与える各種のハードウェア／ソフトウェアパラメータが調整される。
【００１１】
本発明では、複数の特徴検査パラメータを考慮に入れて、前述した方法と同様に特徴検査パラメータを評価および修正する方法を、各特徴検査パラメータについて繰り返し行う。例えば、前述したようなリカバリーの画像特性解析フェーズを経てもビデオツールが適切に動作しない場合には、リカバリーの追加的なフェーズ（例えば、ツール／特徴位置および方向解析フェーズ）が実行され、他の特徴検査パラメータが調整される。さらに、このようなリカバリーの追加的なフェーズを経てもビデオツールが適切に動作しない場合には、リカバリーの画質向上フェーズが実行されるようにしてもよい。
【００１２】
調整作業は、特徴検査パラメータの数に関係なく実行される。ここで、複数の特徴検査パラメータおよびこれに関係する特徴を考慮に入れた調整作業の順序は、最も効率的に自動ツールリカバリープロセスを実行することができるように、予め設定されている。例えば、他の特徴検査パラメータを評価や調整するために適切に設定することが必要である特徴検査パラメータは、最初に評価および調整されるようになっており、他のパラメータが適切に調整された後だと評価や調整を最も良く行うことができるような特徴検査パラメータは、最後に評価および修正されるようになっている（例えば、多くの場合、画像の焦点は、画像の輝度が評価および調整された後だと、最も良く評価および修正される）。さらに、ツールが適切に動作しなくなってしまう際に生じる頻度が最も高い原因のうちの少なくとも１つに関連する特徴検査パラメータは、比較的早い段階で評価および修正されたほうがよく、ツールが適切に動作しなくなってしまう際に生じる頻度が比較的低い原因に関連する特徴検査パラメータは、比較的遅い段階で考慮されたほうがよい。さらに、比較的少ない、あるいは、高速で解析および調整されるハードウェア／ソフトウェア特性の調整によって修正可能な特徴検査パラメータは、比較的早い段階で評価および修正されたほうがよく、いくつかの、あるいは、比較的低速で解析および調整されるハードウェア／ソフトウェア特性の調整を必要とする特徴検査パラメータは、比較的遅い段階で考慮されたほうがよい。
【００１３】
ビデオツールを自動的にリカバリーする本発明の方法では、画像の輝度や画像の焦点を示す１または複数の画像特性値を算出してもよい。そして、いずれかの画像特性値が所定の許容範囲外であると判断されると、画像特性値が所定の許容範囲内に入るように、画像検査システムにおける適当なハードウェア／ソフトウェアパラメータ（例えば、各種の照明制御パラメータ）が調整される。
【００１４】
本発明の方法は、ビデオツールの位置や方向を再設定するステップ、より正確に言えば、検査対象の特徴に対してビデオツールの関心領域の位置や方向を再設定するステップを含んでいてもよい。このステップは、例えば、画像中におけるビデオツールの関心領域の位置の再設定や、ワークに対するカメラの位置の再設定および新しい画像の取得（必要であれば）などによって実行される。
【００１５】
本発明の方法は、ビデオツールの各種の動作パラメータを調整するステップを含んでいてもよい。例えば、各種のエッジ検出ツールについて、エッジ極性インジケータ，１または複数のエッジ検出閾値，その他のエッジツールパラメータを、画像の各種の特性に基づいて調整してもよい。端的に言えば、エッジ検出閾値は、ビデオツールがエッジ／境界特徴の存在を認識する光の強度勾配を規定する。したがって、ビデオツールのエッジ検出閾値を低くすれば、ツールは、光の強度勾配が小さい『弱い』エッジにも敏感に反応するようになる。多くの画像検査システムでは、学習モードにおいて、特徴検査のために配置されたエッジ検出ツールを『訓練』することによって、特定のワーク特徴と関連する１または複数のエッジ検出パラメータについて特定の値が決定される。このような訓練は、学習モードにおいて定型的に自動的に実行され、これに関連するパラメータ値が、ワーク検査のためのパートプログラムと関連付けられて記録される。
【００１６】
本発明では、各種の特徴検査パラメータを調整してもビデオツールが適切に動作しない場合には、１または複数の画質向上オペレーションを実行して、ビデオツールが適切に動作するようにしてもよい。例えば、各種のフィルタリングあるいは画像閾値オペレーションなどを、少なくとも検査対象の特徴周りの画像領域において実行してもよい。その後、ビデオツールは、結果として得られる画像上で再度実行される。しかしながら、このような場合、画質向上オペレーションが検査対象の特徴において検査に関連する側面を、（例えば、当初から明白だったエッジの位置を移動させることによって）大幅に変化させないように注意を払うことが重要である。
【００１７】
本発明では、リカバリーオペレーションのセットを行ってもビデオツールが適切に動作しない場合には、このビデオツールを、これと同様の検査結果を出すことができ、かつ、よりロバストなビデオツールに取り替えてもよい。例えば、ワーク画像における強度勾配に基づいて動作する従来のエッジ検出ツールは、周縁照明効果や、粗い面に囲まれることによるエッジの不明瞭化などのために、適切に動作しないことがある。このような場合、リカバリーオペレーションは、当該従来のエッジ検出ツールを、色や手触りなどの変化に基づく境界検出ツールに取り替えるステップを含んでいてもよい。但し、このようなツールの『取替え』は、実行するのに時間がかかり、あるいは、精度が低下してしまうこともあるので、最初から実行するのは好ましくない。
【００１８】
本発明の自動ツールリカバリー方法は、画像検査システムの制御システム部にロードされるコンピュータによって実行可能な指示によって実行されてもよい。
【００１９】
本発明では、照明，焦点，位置，方向，ワークエッジ／表面特性揺らぎなどについての許容度が高いロバストなビデオツールが設けられていてもよい。このビデオツールは、検査対象のワークの画像上において所定の画像解析／検査オペレーションを実行するように形成される。さらに、このビデオツールは、適切に動作しないツールのリカバリーを自動的に試みる自動ツールリカバリー指示の組と関連している。このような指示は、例えば、コンピュータプログラムに含まれていてもよい。また、指示はビデオツールの動作と一体不可分に構成されていてもよい。また、指示は、ビデオツールの動作とは別々に記録されているものの、当該ビデオツールの動作と関連して動作するプログラムやルーチンなどを含んでいてもよい。自動ツールリカバリー指示が、前述した本発明の１または複数の側面のいずれかに応じて動作するようにしてもよい。
【００２０】
本発明において、自動ツールリカバリー指示の動作は、全体に亘って、または、特定のビデオツールの動作との関係において、あるいは、両者を包含する形で、ユーザによって設定可能である。例えば、ユーザは、１あるいは複数の選択されたタイプの特徴検査パラメータの調整（例えば、照明の調整，焦点の調整，位置および方向の調整）が、自動リカバリー指示によって実行されるように、当該指示を設定することができる。他の例として、ユーザは、本来的に指示によって実行されるべき各タイプの調整について、許容レベルまたは許容調整範囲を指定してもよい。
【００２１】
本発明において、自動ツールリカバリー指示は、適切に動作しなかったビデオツールのタイプや、各ツールをリカバリーするために実行された調整のタイプなどを、特定の特徴，ワーク，画像検査システムなどと関係付けて記録するように設定されてもよい。このようなデータは、ユーザによって集められて解析され、例えば、ツールが適切に動作しなくなる原因のうち頻度の高いものを調査して、このようなことが将来的に起こらないようにするために利用されてもよい。例えば、解析に基づいて、ユーザは、装置を調整または修理してもよいし、各ツールが適切に動作するように各種のハードウェア／ソフトウェアパラメータを最適に規定してもよいし、各種の関係するリカバリーオペレーションを、全体に亘って、または、特定のツールとの関係において最適に設定してもよい。
【００２２】
本発明において、パートプログラムが、ＣＡＤデータなどに基づいて『オフライン』で生成され、本発明の自動リカバリーオペレーションを含むようにしてもよい。オフラインで生成されたパートプログラムは、最初は実際のワークを検査するために実行され、自動リカバリーオペレーションは、当該最初の実行中に適切に動作しない少なくともいくつかのビデオツールをリカバリーしようと試みる。ツールのリカバリーが成功すると、成功したツール動作に用いられた調整済みの特徴検査パラメータが、最初にパートプログラムに含まれていた『適切でない』パラメータ取り替えるために用いられる。この取替えは、成功したツールリカバリーに用いられた調整済みの特徴検査パラメータを特定する出力された報告に基づいてマニュアルで実行されてもよいし、半自動的に実行されてもよいし、自動的に実行されてもよい。取替えが半自動的または自動的に実行される場合には、自動取替えを行わせる指示は、取替えが行われた後には不要となって削除してもよく、結果として得られる新しいパートプログラムを、ユーザが故意に変えようとしない限り『安定』なものとしてもよい。結果として得られる新しいパートプログラムは記録される。この新しいパートプログラムは、その後、最初のパートプログラムよりも優先的に自動検査オペレーションにおいて使用される。
【００２３】
本発明の自動リカバリーオペレーションを含むパートプログラムは、実際のワークを検査するために実行され、自動リカバリーオペレーションは、実行中に適切に動作しない少なくともいくつかのビデオツールをリカバリーしようと試みる。このパートプログラムは、成功したツールリカバリーに用いられた１または複数の調整済みの特徴検査パラメータが、先にパートプログラムに含まれていた対応する『適切でない』パラメータと自動的に取り替えられるようにする指示を含む。この自動取替えを行わせる指示は、取替えが行われた後には不要となって削除してもよく、結果として得られる新しいパートプログラムを、ユーザが故意に変えようとしない限り『安定』なものとしてもよい。また、成功した特徴検査パラメータが、対応する『適切でない』パラメータと取り替えられることを可能にする指示が、パートプログラム中に存在し続けてもよく、当該指示は、ユーザが１または複数の適当なパートプログラム制御ステートメントを追加または変更することによって、実行可能とすることも実行不可能とすることもできるようにしてもよい。
【発明を実施するための最良の形態】
【００２４】
図１は、本発明の画像検査システム１０の一例を示す図である。画像検査システム１０は、データや制御信号をやり取りするために制御コンピュータシステム１４と接続された画像測定装置１２を含んでいる。制御コンピュータシステム１４は、さらに、データや制御信号をやり取りするためにモニタ１６，プリンタ１８，ジョイスティック２２，キーボード２４，マウス２６と接続されている。画像測定装置１２は、可動ワークステージ３２と、拡大レンズや交換可能レンズ群などを含む光学画像システム３４とを含んでいる。ズームレンズや交換可能レンズ群によれば、光学画像システム３４によって取得される画像の倍率を調整することができる。
【００２５】
ジョイスティック２２を用いれば、光学画像システム３４の焦平面と平行なＸ方向およびＹ方向に沿う可動ワークステージ３２の移動を制御することができる。また、ジョイスティック２２によって、Ｚ方向あるいは焦点方向に沿う光学画像システム３４の移動を制御することもできる。ここで、Ｚ方向移動は、ジョイスティック２２におけるハンドルやノブの回転要素によって制御されるようになっている。なお、ジョイスティック２２の機能を他のものに持たせてもよい。例えば、マウス２６などのコンピュータ入力装置によって制御可能な『仮想的な移動制御装置』をモニタ１６上に表示させて、ジョイスティック２２の代わりに用いてもよい。
【００２６】
図２は、本発明に基づく画像検査システム１００における制御システム部１２０と画像コンポーネント部２００とを示す図である。詳細については後述するが、制御システム部１２０は、画像コンポーネント部２００を制御するために利用される。画像コンポーネント部２００は、光学アセンブリ部２０５と、光源２２０，２３０，２４０と、中央透明部２１２を有するワークステージ２１０とを含んでいる。ワークステージ２１０は、ワーク２０が載置されるステージ面と平行な平面上に設定されるＸ軸およびＹ軸に沿って移動可能である。光学アセンブリ部２０５は、カメラシステム２６０と、交換可能な対物レンズ２５０と、タレットレンズアセンブリ２８０と、同軸光源２３０とを含んでいる。なお、タレットレンズアセンブリ２８０の代わりに、固定された、あるいは、手で交換可能な倍率可変レンズや、拡大レンズなどを設けてもよい。後述するように、光学アセンブリ部２０５は、制御モータ２９４によって、Ｘ軸およびＹ軸と垂直なＺ軸に沿って移動可能である。
【００２７】
画像検査システム１００によって画像が取得されるワーク２０は、ワークステージ２１０に載置される。光源２２０，２３０，２４０の少なくとも１つが、光源光２２２，２３２，２４２をそれぞれ出射し、ワーク２０を照明する。ワーク２０を照明した光は、ワーク光２５５のように反射または透過し、交換可能な対物レンズ２５０，タレットレンズアセンブリ２８０を通過した後、カメラシステム２６０に集められる。カメラシステム２６０によって取得されたワーク２０の画像は、信号線２６２によって制御システム部１２０に出力される。
【００２８】
ワーク２０の照明に利用される光源２２０，２３０，２４０は、ステージ光２２０，同軸光２３０，リング光やプログラム制御可能なリング光のような表面光２４０を出射可能であり、それぞれ、信号線あるいはバス２２１，２３１，２４１を介して制御システム部１２０に接続されている。光学アセンブリ部２０５は、画像検査システム１００における第１光学アセンブリとして、前記の各構成要素に加えて、レンズ，開口部のような光学素子，ビームスプリッタなどの同軸照明を生成する際に必要な構成要素や、画像検査システムのその他の機能にとって望ましい構成要素などを含んでいてもよい。そして、このような第１光学アセンブリに加え、画像検査システム１００における第２の光学アセンブリとして、タレットレンズアセンブリ２８０は、少なくとも、第１タレットレンズ位置およびレンズ２８６，第２のタレットレンズ位置およびレンズ２８８を含んでいる。制御システム部１２０は、信号線あるいはバス２８１を介して、タレットレンズアセンブリ２８０を、少なくとも第１および第２のタレットレンズ位置間において、軸２８４回りに回転させる。
【００２９】
ワークステージ２１０と光学アセンブリ部２０５との間の距離は調整可能であり、カメラシステム２６０によって取得されるワーク２０の画像の焦点を変化させることができる。特に、本実施形態では、光学アセンブリ部２０５は、アクチュエータを駆動する制御モータ２９４や接続ケーブルなどによって、ワークステージ２１０に対してＺ軸方向に沿った相対移動が可能であり、当該光学アセンブリ部２０５をＺ軸に沿って移動させることができる。ここで、Ｚ軸とは、光学アセンブリ部２０５によって取得される画像の焦点合わせをする際の移動方向に沿う軸のことである。制御モータ２９４は、使用時には、信号線２９６を介して入出力インターフェイス１３０に接続される。
【００３０】
図２に示されるように、本実施形態では、制御システム部１２０は、コントローラ１２５と、入出力インターフェイス１３０と、メモリ１４０と、ワークプログラム生成手段および実行手段１７０と、ＣＡＤファイル特徴抽出手段１８０と、電源部１９０とを含んでいる。これらの各構成要素は、以下で述べる追加的な構成要件と同様、データ／制御バスやアプリケーションプログラミングインターフェイスなどによって相互に接続され、あるいは、各種の構成要素と直接接続される。
【００３１】
入出力インターフェイス１３０は、画像制御インターフェイス１３１と、移動制御インターフェイス１３２と、照明制御インターフェイス１３３と、レンズ制御インターフェイス１３４とを含んでいる。移動制御インターフェイス１３２は、位置制御要素１３２ａと、速度／加速度制御要素１３２ｂとを含んでいる。ここで、これらの要素は一体不可分のものとして構成してもよい。照明制御インターフェイス１３３は、画像検査システム１００における対応する光源（例えば、光源２２０，２３０，２４０）についての、選択，電力，オン／オフスイッチ，ストロボパルスタイミングなどを制御する照明制御要素１３３１〜１３３ｎを含んでいる。
【００３２】
メモリ１４０は、画像ファイルメモリ部１４１と、パートプログラムなどを格納可能なワークプログラムメモリ部１４２と、ビデオツール部１４３とを含んでいる。ビデオツール部１４３は、対応するツールについてＧＵＩ（Graphical User Interface）や画像処理オペレーションなどを決定するツール部１４３１〜１４３ｍを含んでいる。また、ビデオツール部１４３は、当該ビデオツール部１４３に含まれる各種のビデオツールにおいてオペレート可能な各種の関心領域を定義する自動，半自動，手動オペレーションをサポートする関心領域生成手段１４３ｘも含んでいる。メモリ１４０は、画像中に所望の画像特徴が含まれるようにワーク２０の画像を取得する画像コンポーネント部２００のオペレートに利用されるデータを格納する。さらに、メモリ１４０は、取得された画像に対して各種の検査，測定オペレーションを手動または自動で実行し、結果を入出力インターフェイス１３０を通じて出力する画像検査システム１００のオペレートに利用されるデータも格納する。また、メモリ１４０は、入出力インターフェイス１３０を通じてオペレート可能なＧＵＩを定義するデータも格納する。
【００３３】
ステージ光２２０，同軸光２３０，表面光２４０の信号線あるいはバス２２１，２３１，２４１は、それぞれ、入出力インターフェイス１３０に接続される。カメラシステム２６０からの信号線２６２、および、制御モータ２９４からの信号線２９６も入出力インターフェイス１３０に接続される。信号線２６２は、カメラシステム２６０からの画像データの伝送に加えて、コントローラ１２５からの画像取得開始信号の伝送も行う。
【００３４】
１または複数の表示装置１３６や、１または複数の入力装置１３８を入出力インターフェイス１３０に接続することもできる。表示装置１３６および入力装置１３８は、パートプログラムの視認，生成，修正、カメラシステム２６０によって取得された画像の視認、画像コンポーネント部２００の直接制御などに利用することができる。なお、予め設定されたパートプログラム（あるいは、ワークプログラム）を有する完全に自動化されたシステムにおいては、表示装置１３６や入力装置１３８は省略することができる。
【００３５】
ＣＡＤファイル特徴抽出手段１８０に関しては、ワークや、これと実質的に同一のワークについての過去の画像などを表現するＣＡＤファイルのような情報が、画像検査システムを産業上の応用する際にしばしば利用可能である。ＣＡＤファイル表現のケースでは、ＣＡＤファイル表現におけるエッジや境界の位置は、ＣＡＤファイル特徴抽出について知られている各種の方法に基づいて、手動／半自動／完全自動でＣＡＤファイル表現から決定することができる。
【００３６】
本実施形態では、ユーザがワーク２０についてのワーク画像取得プログラムを生成するために画像検査システム１００を使用する場合、ユーザは、ワークプログラミング言語を用いて自動，半自動，手動で明示的に指示をコード化するか、あるいは、ワークプログラム指示がトレーニングシーケンスを取り込めるように、画像検査システム１００に画像取得トレーニングシーケンスを行わせることによって、ワークプログラム指示を生成する。このプロセスは、取得される画像群における複数の画像に対して繰り返し行われる。これらの指示は、実行されると、ワーク２０の特定部分が、カメラシステム２６０の視野内に入っており、かつ、取得される画像群の各画像において所望の焦点状態にあるように、ワークステージ２１０やカメラシステム２６０を所定の速度で画像検査システムに操作させる。このようなカメラとワークとの相対移動を制御するプログラム指示に加えて、画像取得時にワーク２０を所望の照明状態に置けるように光源２２０〜２４０を駆動するプログラム指示も必要であるところ、これを行うワーク画像取得プログラムも必要である。
【００３７】
一旦、ワーク画像取得指示のセットが規定されると、制御システム部１２０は、指示を実行し、当該指示に従ってワーク２０の１または複数の画像を取得するようにカメラシステム２６０に指令する。そして、制御システム部１２０は、コントローラ１２５による制御の下、取得された画像を入出力インターフェイス１３０を通じて入力し、当該画像をメモリ１４０に記憶する。コントローラ１２５は、取得された画像を表示装置１３６に表示させることもできる。
【００３８】
制御システム部１２０は、さらに、取得，記憶されたワーク検査画像を読み出したり、このようなワーク検査画像においてワーク特徴を検査，解析したり、検査結果を記録，出力したりすることもできる。このような方法は、メモリ１４０におけるビデオツール部１４３に含まれる各種ビデオツールにおいて実現される。このようなツールとしては、例えば、エッジ／境界検出ツール（その一例が、米国特許出願第09/987,986号に開示されている），形状またはパターンマッチングツール，寸法測定ツール，座標マッチングツールなどが挙げられる。このようなツールは、画像システムであるQUICK VISION（商標）シリーズや、これと関連する前記のQVPAK（商標）ソフトウェアなどのような市販されている各種の画像検査システムにおいて、慣習的に使用されているものである。
【００３９】
QVPAK ソフトウェアにおいて利用可能なビデオエッジ／境界検出ツールは、例えば、ポイントツール，ボックスツール，サークルツール，アークツールを含んでいる（QVPAK 3D CNC Vision Measuring Machine User’s Guide 参照）。簡潔に言えば、ポイントツールは、画像と、当該画像上に配置される１つの走査線との交点をデータポイントとして生成する（あるいは、交点の位置がデータポイントの位置であると突き止める）。ボックスツールは、互いに平行な一連の走査線を生成する。ここで、各走査線は、エッジ特徴が検出された点をデータポイントとして生成する。サークルツールは、原点周りの３６０°に亘って当該原点から径方向に沿って放射状に形成される一連の走査線を生成する。ここでも、各走査線は、エッジ特徴が検出された点をデータポイントとして生成する。アークツールは、原点から径方向に沿って放射状に形成される一連の走査線を生成する。ここでも、各走査線は、エッジ特徴が検出された点をデータポイントとして生成する（アークツールは、例えば、角が丸くなった部分からデータポイントを生成する上で有用である）。これらの各ツールは、画像における特定のエッジ／境界特徴を自動的に検出するために使用される。
【００４０】
これらのビデオツールのうちの１または複数を用いる画像検査／解析オペレーションが完了すると、制御システム部１２０は各解析／検査オペレーションの結果を入出力インターフェイス１３０に出力し、さらに、ビデオディスプレイ，プリンタなどのような各種の表示装置１３６に出力する。制御システム部１２０は、各検査オペレーションの結果をメモリ１４０に記録してもよい。
【００４１】
背景技術のセクションで述べたように、ビデオツールは各種の原因（例えば、ビデオツールの動作に影響を与えるパラメータの少なくともいくつかが正しく設定されていないなど）で適切に動作しないことがあり、また、部分の組立て状態，部分の固定状態，画像装置の劣化，周囲の照明状態などの予期しない各種の変動が生じると、先に設定された動作パラメータのままでは、ビデオツールに適切な動作を行わせるのに適していない動作条件となってしまうこともある。ビデオツールが適切に動作しない場合には、制御システム部１２０がエラーメッセージをビデオディスプレイなどに出力し、ツールが適切に動作せず、解析／検査結果を提供できなかったことをユーザに通知する。このような場合、従来では、ユーザがツールをマニュアルでリカバリーしなければならなかった。これに対して、本実施形態では、適切に動作しないビデオツールを、例えば、１または複数のメモリ１４０に格納されている自動リカバリー指示にしたがって、自動的にリカバリーする方法およびシステムを提供することができる。
【００４２】
図３Ａは、自動ツールリカバリールーチン３００を示すフローチャートである。現画像においてツールが適切に動作しなくなると、ブロック３０１では、当該現画像が解析され、各種の画像特性が決定および記録される。例えば、画像の平均輝度，画像において飽和した画素の数，画像の焦点状態を示す値などが算出されて記録される。以下、画像特性値という語を、取得された画像におけるいくつかの特性または特質を示すあらゆる値を包含する語として用いる。なお、画像特性値は、状態や特性の単純な有無を示すだけのものであってもよい。このような画像特性値（例えば、平均輝度，飽和度，焦点状態）を決定する上で有用な各種の方法およびビデオツールは、例えば、前述した QVPAK ソフトウェアにおいて利用可能である。先に引用した’180特許や、’986出願は、各種の画像について適用可能な、エッジ可視度，コントラスト，その他の特性に関連して画像特性を決定する方法について詳細に記述している。なお、以上の開示事項から当業者にとって明白となるような他の有用な特性、および、これらを決定するための方法は、当然、本発明の技術的範囲に属する。
【００４３】
判定ブロック３０２では、ブロック３０１において決定された各種の画像特性が許容可能か否かの評価が行われる。評価は、例えば、数値で表される画像特性を許容範囲と比較することによって行うことができる。また、画像特性が状態や特性の有無を示すインジケータである場合は、これを所望の状態と比較することによって評価を行うことができる。いずれの場合も、評価された画像特性の全てが許容可能であれば、オペレーションはブロック３０６にジャンプする。逆に、評価された画像特性のいずれかが許容可能でない場合には、オペレーションはブロック３０３に進む。
【００４４】
ブロック３０３では、評価された画像特性が許容可能になるように、適当な特徴検査パラメータ（ここでは、１または複数の画像取得パラメータ）が調整される。例えば、ブロック３０２において、画像の平均輝度（または強度値）が低すぎると判定された場合には、ブロック３０３では、平均輝度値に影響を与えるハードウェア／ソフトウェアパラメータ（例えば、光パワーレベルパラメータ）が調整される。他の例として、先に引用した’180特許および’986出願に開示されているツールのような１または複数の評価ツールが自動的に実行され、適当な画像取得パラメータやツールパラメータが自動的に調整されるようにしてもよい。また、米国特許第6,627,863号に開示されているツールのような包括的な自動照明選択および調整ツールを利用してもよい。同様に、市販されている多くの画像検査システムに含まれている自動焦点ツールを利用してもよい。さらに、適当な画像取得パラメータやツールパラメータを、合理的な範囲内で最初の設定から変化させ、変化させた結果得られる画像特性の評価が、許容可能な画像特性結果が得られるまで、あるいは、ビデオツールが適切に動作するようになるまで、続けられるようにしてもよい。より一般的には、パラメータの調整が、各種の公知の方法にしたがって行われるようにしてもよい。
【００４５】
ブロック３０３において、適当な画像取得パラメータが調整され、評価された画像特性が許容可能になると、ブロック３０４では、ビデオツールが、結果として得られる調整された画像に基づいて実行される。なお、ビデオツールが、ブロック３０３におけるパラメータ調整評価の一部として同じ画像について実行されていた場合には、ブロック３０４のオペレーションが、実質上、既に実行されていたことになる。いずれの場合も、ビデオツールが実行された後は、判定ブロック３０５に進み、ツールが適切に動作したと判定された場合には、ブロック３０５´が実行されてルーチンが終了する。
【００４６】
ブロック３０５´は、必要な場合にのみ実行すればよい。ブロック３０５´では、『ツールリカバリー報告』の準備および出力または記録が行われる。このような報告は、例えば、発生したツールの不適切な動作のタイプを明らかにするとともに、ツールをリカバリーするためにどの特徴検査パラメータの調整が行われたかを明らかにするようなものとすることができる。このような報告は、装置の劣化，部分の組立て状態の予期しない変動などを検出あるいは分析する上で有益である。パートプログラムが類似の部分について繰り返し実行される状況下では、このような一連の報告が、不適切な動作と、そのリカバリーの傾向を知るために解析され、部分組立てプロセスについての『プロセスドリフト』を検出することができ、画像システムに対する予防的なメンテナンスの必要性を明らかにすることができる。また、このような一連の報告は、パートプログラム指示において不適切に動作しがちなパラメータを見逃すことなく取り替えることができる１または複数の『最良の』あるいは平均的な特徴検査パラメータの調整方法を明らかにし、続くワーク検査中におけるビデオツールの不適切な動作を防止あるいは低減する上で有益である。
【００４７】
一方、調整された画像においてもツールが適切に動作しない場合には、ブロック３０５から判定ブロック３０６に進む。判定ブロック３０６では、当該ビデオツールについて、他に評価，調整すべき特徴検査パラメータがあるか否かが判定される。ビデオツールの不適切な動作のいくつかの潜在的な原因を自動的に修正することのリスクが大きすぎる場合（例えば、画像における特徴が極度に粗かったり、ノイズ成分を多く含んでいたりする場合や、各特徴が互いにかなり接近している場合など）には、自動ツールリカバリーオペレーションが、不適切なツールをリカバリーしようとする際には、いくつかの『リスクの小さい』パラメータ（例えば、照明を左右するパラメータ）を調整し、『リスクが大きい』とされるパラメータの調整（例えば、間隔が狭く、極度に粗い各特徴間へのビデオツールの再配置）を避けるように設定されてもよい。これは、欠陥のある検査結果が生じる可能性を少なくするための保守的なアプローチであるが、一方で、適切に動作しないツールのリカバリーのためにオペレータが介入する必要性を高めてしまうことにもなる。逆に、多くのタイプの自動パラメータ調整が『リスクの小さい』ものである場合（例えば、検査対象の各ワーク特徴が、なめらかで（粗くなく）、互いに十分に離隔している場合）には、自動ツールリカバリーオペレーションが、全ての自動調整可能なパラメータの調整を試みるように設定されてもよい。以上のように、自動リカバリーの試みに含まれる特定のタイプのパラメータ、または、個々のパラメータは、デフォルト条件として設定されてもよいし、特定の用途，個々の特徴，個々のビデオツール向けに（例えば、学習モードにおけるオペレータの入力に基づいて）設定されてもよい。いずれの場合も、許容可能な自動パラメータ調整候補は、判定ブロック３０６における判定をサポートするように規定される。ブロック３０６において評価，調整すべき特徴検査パラメータが他にないと判定された場合（他のパラメータの評価，調整が禁止されている場合や、パラメータについて試みた全ての調整がうまくいかなかった場合）には、ブロック３０７に進み、ツールの失敗表示あるいは報告が出力され、ルーチンが終了する。失敗表示は、ユーザに警告して、ツールを適切に動作させるためのユーザの介入を促すためのものである。例えば、ビデオツールの不適切な動作が、ハードウェア／ソフトウェアパラメータの調整では直すことのできない装置の故障（例えば、ライトバルブの故障）に起因している場合には、ユーザの介入が必要である。
【００４８】
一方、ブロック３０６において当該ビデオツールについて評価，調整すべき他の特徴検査パラメータがあると判定された場合には、ブロック３０８に進む。ブロック３０８では、現画像（ルーチン３００において先に行われたパラメータ調整によって『改善された』画像）が、評価，調整対象の現特徴検査パラメータに関連する特定の特性，プロセス，パラメータに関して解析される。例えば、評価対象の特徴検査パラメータが、予期される特徴（例えば、エッジ）が現画像におけるビデオツールの関心領域中に存在することを保証するパラメータである場合は、関心領域が検査されて、エッジを示す強度勾配の有無や大小が判定される（なお、エッジの有無を示すために必要とされる条件は、エッジ位置を正確に測定するために必要とされる条件と異なっていてもよい）。続いて、ブロック３０９では、ブロック３０８において解析された各種の特性や要素についての結果が評価され、これらがビデオツールの適切な動作をサポートする上で許容可能か否かが判定される。結果が許容可能である場合には、判定ブロック３０６に戻り、評価，調整すべき他の特徴検査パラメータがあるか否かが判定される。逆に、結果が許容可能でない場合には、ブロック３１０に進む。
【００４９】
ブロック３１０では、適当な特徴検査パラメータが、現特徴検査パラメータに関連する特性，プロセス，パラメータがツールを適切に動作させる上で許容可能になるように調整される。例えば、判定ブロック３０９において、エッジツールの関心領域中にエッジを示す勾配が１つもないと判定された場合には、ブロック３１０では、関心領域周りの合理的な範囲内において探索を行い、向きの調整を誤った（想定される）エッジ特徴の位置を突き止め、これに合わせて関心領域の位置パラメータを調整するためのオペレーションが実行される。なお、このようなオペレーションの詳細については、後述する。このような修正が、現特徴検査パラメータがツールの適切な動作をサポートすることを保証するために行われると、ブロック３０４に戻り、調整されたパラメータに基づいてツールが再度実行される。ブロック３０４〜３１０のオペレーションは、ツールが適切に動作したか、自動リカバリーオペレーションに利用可能なパラメータの調整がうまくいかなかったか、のいずれかの原因によってルーチンが終了するまで繰り返し行われる。
【００５０】
詳細については後述するが、各種の画像特性や他の特徴検査パラメータが考慮される順序は、ツールリカバリーにおける効率を最大限に高める上で重要である。特に、いくつかの画像，ツールパラメータは、他のパラメータ（例えば、画像焦点は、画像の輝度が適切に調整された後だと最も良く評価，調整することができる）の評価，調整を可能にするために、最初に評価，調整されなければならない。他に考慮すべきことは、ツールの不適切な動作のいくつかの原因が他の原因よりも頻繁に生じる場合は、自動リカバリーシーケンスの初期の段階でこれらに関連するパラメータの評価を行う必要があることである。また、いくつかの特徴検査パラメータが、他のパラメータよりも簡単に、または、早く修正することができるということも考慮すべきである。例えば、ＬＥＤ照明が使用される場合、照明変動は、ワークの配置よりも大幅に早く評価，調整，テストすることができる。このように、『早く調整可能な』パラメータをリカバリーシーケンスの初期の段階で調整することによって、多くの場合、リカバリーの実行速度を大きくすることができる。また、ツールの不適切な動作の頻度の高い原因に対応する画像特性値，修正が簡単な画像特性値，他のパラメータの評価または修正を可能にするために修正されなければならない画像特性値は、自動ツールリカバリープロセスを最も効率的に行わせるために、最初に考慮されて修正されるべきである。例えば、図３Ｂを参照して詳細に述べるように、取得された画像の照明や焦点の質を示す画像特性値は、最初に考慮されて修正されるべきである。
【００５１】
公知のファジーロジック（fuzzy logic）やニューラルプログラミングトレーニングメソッド（neural programming training method）を使用することによって、ブロック３０１および３０８において実行される特性解析の結果と、当該結果の観測されたパターンを修正する上で効果的なパラメータとの関連を『予め決定する』ことができる。すなわち、公知の方法にしたがって、典型的な画像および欠陥の組を利用した『分類手段』の発展あるいは訓練を行うことができる。この分類手段は、（例えば、ブロック３０２〜３０３，３０８〜３０９における）特性解析の結果に対しても適用可能であり、結果を分類して、対応するクラスに属する欠陥を修正する上で効果的であることが分かっている対応するパラメータ調整方法を選択することができる。このような方法は、ロバストで迅速な欠陥解析を実現することが知られている。しかしながら、このような技術を利用した場合であっても、分類手段の第１の組を、ツールの不適切な動作の頻度の高い原因に対応する特性値，修正が簡単な、あるいは、修正に時間のかからない特性値，他のパラメータの評価または修正を可能にするために修正されなければならない特性値に対応する特性の第１の組に、最初に適用するほうが有利である。これに続いて、分類手段の第２の組を、ツールの不適切な動作の頻度の低い原因に対応する特性値，修正が困難な、あるいは、修正に時間のかかる特性値，他のパラメータの修正の後だと最も良く修正される特性値に対応する特性の第２の組に適用して、最も効率的に自動ツールリカバリープロセスが遂行されるようにしてもよい。例えば、特性および分類手段の第１の組を、輝度および焦点に関する画像取得パラメータに主として関連するものとし、特性および分類手段の第２の組を、評価および調整を行うためには適切に照明され焦点が合った画像を必要とする特徴検査パラメータ（例えば、位置，方向に関連するパラメータや、正確な測定結果を保証する特徴固有のエッジ検出パラメータ（勾配関連閾値パラメータや、エッジを横切る強度変化についての閾値パラメータを含んでいてもよい））に関連するものとしてもよい。
【００５２】
図３Ｂは、ビデオツールの自動リカバリーの比較的詳細なルーチン３１５を示すフローチャートである。ルーチン３１５では、ツールの不適切な動作の４つのタイプの原因、すなわち、不適切な照明，不適切な焦点，画像における特徴に対するビデオツールの不適切な位置または方向，１または複数の不適切なエッジ検出パラメータを取り扱う。ルーチン３１５は、これらの原因をこの順序で取り扱う。これは、多くの場合、ツールの不適切な動作のいくつかの潜在的な原因を修正することが、他の原因を信頼性の高い評価および修正を行うためには必要だからである（例えば、焦点の評価は、適切な画像照明レベルが確保された後に限って最も良く行われる）。これらの各種の原因が取り扱われる順序は、特定の応用に対して有効な各種の仮定や判断に基づいて変更してもよいし、さらに、特定の応用に対応する特定のルーチンでは、より多くの、あるいは、より少ない原因を取り扱うようにしてもよい。なお、ルーチン３１５における順序は、不適切な動作の原因とパラメータの調整とを組み合わせる上で有利である。
【００５３】
ブロック３１６においてビデオツールの不適切な動作が生じると、判定ブロック３１８では、画像の輝度が評価され、許容範囲内に入っているか否かが判定される。例えば、ビデオツールの関心領域内において、平均輝度や飽和画素数が算出され、当該各値についての所定の許容可能範囲と比較される。画像の輝度が許容範囲内に入っていない場合には、少なくとも関心領域において、取得画像の輝度に影響を与える適当なハードウェア／ソフトウェアパラメータが調整される（ブロック３２０）。例えば、使用される光源の数／タイプと、各光源の光パワーレベルとが調整される。これとの関係で、自動的または半自動的に最適照明レベルを設定する各種のツールを使用してもよい。例えば、先に引用した’863特許に記載されている方法や、前述した QVPAK ソフトウェアにおいて利用可能な Lighting Wizard（登録商標）などを使用することができる。簡潔に言えば、Lighting Wizard は、異なる照明設定の組合せの下で複数の画像を取得し、さらなる照明設定の組合せのシミュレーションおよび補間を、シミュレーション画像に選択的に重ねることによって行い、最良のシミュレーション／補間画像に基づいて照明設定の最適な組合せを割り出すことによって、画像を取得するための最適照明レベルを自動的に見つける。他の例として、エッジの両側の２つの選択された画像領域を反復的および自動的に解析し、照明を調整して前記２つの画像領域間の輝度やコントラストの差異を最大化し、エッジを規定する勾配を大きくするために、先に引用した’180特許に記載されている方法や、前述した QVPAK ソフトウェアにおいて利用可能な方法を利用する Dual Area Contrast tool を使用してもよい。適当なハードウェア／ソフトウェアパラメータが調整されて、画像の輝度が修正された後、あるいは、ブロック３１８において、画像の輝度が既に許容範囲内に入っており、調整の必要がないと判定された後には、ブロック３２２において、画像の焦点が許容範囲内に入っているか否かが判定される。この目的のために、自動的または半自動的に画像の焦点状態を決定する公知の各種のツールや方法を利用することができる。焦点が許容可能でないと判定された場合には、ブロック３２４において、焦点状態に影響を与える適当なハードウェア／ソフトウェアパラメータが調整される。例えば、ワークステージ２１０と光学アセンブリ部２０５（図２参照）との間の距離が焦点状態を変えるために調整されてもよい。また、自動的または半自動的に最適焦点状態を実現することができる各種のツールを利用してもよい。例えば、カメラの位置をワークに対してＺ軸に沿って調整しながらワークの一部の複数の画像を取得し、取得画像の解析に基づいて、最良の焦点状態の画像を提供するカメラの位置を選択する前述した QVPAK ソフトウェアにおいて利用可能な AutoFocus tool を利用することができる。
【００５４】
適当なハードウェア／ソフトウェアパラメータが調整されて、画像の焦点状態が修正された後、あるいは、ブロック３２２において、画像の焦点が既に許容範囲内に入っており、調整の必要がないと判定された後には、ブロック３２６においてビデオツールが再実行される。なお、大抵の場合、輝度および焦点の組合せがツールの不適切な動作の原因になることが多いので、輝度および焦点の双方の調整後にツールを再実行するのがより効率的ではあるものの、ブロック３２０における輝度の調整の直後であって、ブロック３２２における画像焦点のチェックの前にツールを再実行することも可能である（例えば、照明調整の評価のために画像の取得が行われる場合）。なお、輝度および焦点がブロック３１８および３２２において許容可能であると判定されて調整が行われなかった場合には、ブロック３２６におけるツールの再実行は新しい情報を提供するものではないので、当該ブロック３２６をスキップしてしまってもよい。
【００５５】
ブロック３２８では、再実行されたツールが不適切に動作したか否かが判定される。ここで適切に動作したと判定された場合には、ブロック３４２に進み、ルーチン３１５は終了する（例えば、ツールがきちんとリカバリーされた場合）。一方、再実行されたツールが不適切に動作してしまった場合、不適切な動作の次に可能性の高い原因は、検出対象のエッジ／境界に対する、ツール，より厳密に言えばツールの関心領域の位置または方向が不適切であることだと思われる。そこで、ブロック３３０では、検出対象のエッジ／境界をツールの関心領域内に入れるために、ツールの位置または方向が直近のエッジ特徴に合わせて再設定される。このプロセスについては、図４Ａおよび４Ｂを参照して後で詳細に説明する。
【００５６】
ブロック３３０における位置または方向の再設定の後、ツールはブロック３３２において再実行される。ブロック３３４では、ツールが不適切に動作したか否かが判定される。ここで適切に動作したと判定された場合には、ツールがきちんとリカバリーされたのでルーチンはブロック３４２において終了する。一方、ツールが不適切に動作してしまった場合には、ブロック３３６に進み、エッジ強度閾値のようなエッジ検出閾値パラメータが調整される。通常、ツールが不適切に動作した場合には、エッジ強度閾値が低くされる。このような場合、学習モードにおいて特徴づけられた実際のエッジ画像に基づいて『訓練』され、あるいは、設定されたパラメータを有する各種のタイプのエッジ検出閾値を使用するのが普通である。このような技術は、貧弱なエッジ位置検査精度しか提供できないような勾配を示すエッジ特徴画像を拒絶するパラメータまたは制限を提供するとともに、エッジの『アイデンティティ』を示す傾向のあるパラメータを提供する。先に引用した QVPAK 3D CNC Vision Measuring Machine User’s Guide および QVPAK 3D CNC Vision Measuring Machine Operation Guide に詳細に記載されているように、エッジ検出閾値は、ビデオツールがエッジ／境界特徴を認識する閾値レベルを設定するために使用される。特に、エッジ／境界検出ツールは、光強度の変化を検出対象のエッジ／境界として認識する。このように、単純化された形態では、エッジ検出閾値は、エッジ／境界検出ツールがエッジ／境界として認識する光強度変化の量を規定する。例えば、エッジ検出閾値が高く設定された場合、エッジ／境界検出ツールは、２つの隣接する領域間で比較的大きな量の光強度変化を検出した部分においてのみエッジ／境界を認識するようになる。したがって、閾値が高く設定された場合には、ツールは、２つの領域間でコントラストの大きい、比較的はっきりした、あるいは、『強い』エッジのみを検出することができる。一方、エッジ検出閾値が低く設定された場合、エッジ／境界検出ツールは、比較的小さい量の光強度変化であっても、エッジ／境界として認識するようになる。したがって、閾値が低く設定された場合には、ツールは、強いエッジだけでなく、比較的ぼんやりした、あるいは、『弱い』エッジも検出することができる。ブロック３３６では、閾値が高すぎたためにツールがターゲットのエッジ／境界を検出することができなかったという仮定の下、エッジ検出閾値が低くされる。一般に、エッジ検出閾値が高くなると、画像におけるエッジ位置測定精度が高くなる可能性が高くなるが、ビデオツールが適切に動作しない可能性も高くなる。逆に、エッジ検出閾値が低くなると、ビデオツールが適切に動作しない可能性が低くなるが、（ノイズをエッジとして検出するなどして）間違った検出結果が得られる可能性や、測定精度が悪化する可能性が高くなる。最初は、閾値は、最良のエッジ選択性および測定精度をサポートするエッジ勾配のみを検出するように設定または訓練されたほうがよい。しかしながら、ツールが適切に動作しないときには、多くの場合、閾値を低くするとツールが適切に動作するようになる（すなわち、閾値による制限がエッジ勾配特性に反しなくなる）とともに、十分な（最適ではないが）選択性が��られる。
【００５７】
ブロック３３６における閾値の調整の後、ブロック３３７では、ツールが再実行される。ブロック３３８では、ツールが不適切に動作したか否かが判定される。ここで適切に動作したと判定された場合には、ツールがきちんとリカバリーされたのでルーチンはブロック３４２において終了する。一方、ツールが不適切に動作してしまった場合には、ブロック３４０において、ルーチンは、エラーインジケータを出力し、オペレータ（ユーザ）にマニュアルでのツールのリカバリーを促す。例えば、ツールの不適切な動作の原因が装置の故障である場合には、ユーザの介入が必要となる。そして、オペレータは、ツールをマニュアルでリカバリーする。
【００５８】
なお、リカバリーオペレーションのセットが、ブロック３３８においてビデオツールの適切な動作を実現することができない場合には、現ビデオツールを、予め用意されている『予備』ビデオツール（現ビデオツールと同様の検査結果を提供可能）に取り替えてもよい。一般に、『予備』ビデオツールは、取替え前のツールとは幾分か異なる動作を行うので、（取替え前のツールとは違って）適切に動作する可能性がある。例えば、ワーク画像における強度勾配に基づいて動作する従来のエッジ検出ツールは、周縁照明効果や、粗い面に囲まれることによるエッジの不明瞭化などのために、適切に動作しないことがある。このような場合、リカバリーオペレーションは、当該従来のエッジ検出ツールを、色や手触りなどの変化に基づく境界検出ツールに取り替えるステップを含んでいてもよい。但し、このようなツールの『取替え』は、実行するのに時間がかかり、あるいは、精度が低下してしまうこともあるので、最初から実行するのは好ましくない。例えば、このようなツールとしては、従来のエッジツールの取替えに使用可能なロバストな境界検出ツールが挙げられる（先に引用した’986出願に記載されている）。このようなツールの取替えがブロック３３８の後に行われると、取替え後のツールの関心領域が、取替え前のツールの関心領域に代わって配置され、ツールが現画像あるいは新たに取得された画像上で実行される。取替え後のツールが適切に動作すれば、ルーチンは終了する。そうでなければ、ルーチン３１５は、始めのブロック３１８から続けられる（繰り返される）。
【００５９】
図４Ａおよび４Ｂは、適切に動作しなかったビデオツールの位置（図４Ａでは、方向も含まれる）を直近のエッジに対して再設定するためのルーチン（図３Ｂに示されるルーチン３１５のブロック３３０において実行される）を示すフローチャートである。図４Ａは、エッジツール（例えば、エッジ（大抵は真っ直ぐなエッジ）に沿って多数の点を検出するボックスツール，エッジに沿って１つの点を検出するポイントツール）の位置の再設定に利用され、このようなツールの自動リカバリーを容易にするルーチン４０１を示している。このようなツールの例は、前述した QVPAK ソフトウェアに記載されている。
【００６０】
例えば、自動リカバリーシーケンスにおいて、ツールの不適切な動作の原因のうち、（ツールの位置よりも）可能性の高い他の全ての原因を点検し終わったときのように、エッジツールの位置を再設定すべき判定されると、ルーチン４０１がブロック４０２から開始する。ブロック４０２では、少なくとも関心領域を囲む近傍において、現画像におけるエッジ（あるいは、エッジ画素）が探索される。１つの有用なエッジ画素割出しプロセスの詳細については、図５を参照して後述する。より一般的には、各種の公知のエッジ検出（エッジ画素割出し）方法、例えば、Canny edge detector を使用してもよい。いくつかの公知のエッジ検出方法の例が、Machine Vision, by Ramesh Jain, et al., McGraw Hill, 1995 という本の第５章に記載されている。また、エッジ画素の検出は、実行時間を短くし、重要でない（遠くの）画像特徴が所望のエッジの検出作業に悪影響を及ぼしたり混乱させたりするのを防ぐために、ツールの関心領域の近傍（通常は、特定のビデオツールの関心領域を規定するボックスよりも多少大きい）に限定されるようにするのが好ましい。このように、図４Ａ，４Ｂ，５との関連で使用される『画像』という語は、元々のカメラ視野内のサブ画像を意味している。
【００６１】
画像におけるエッジ画素が割り出されると、ブロック４０４において、ツールの中心、あるいは、より正確にはツールの関心領域の中心の位置が、『十分に強い』エッジ画素、例えば、関連するエッジツールの走査方向に沿って高い勾配値を示す位置に対応する画素の直近に再設定される。なお、回転方向に沿った配置不良のリカバリーが必要な場合には、ツールの向きの再設定を行ってもよい。直近の『十分に強い』エッジ画素を含む真っ直ぐなエッジの方向は、例えば、直近の『十分に強い』エッジ画素や、『十分に強い』エッジ画素を含む隣接画素のグループから取得される勾配方向情報を利用することによって決定されてもよい。位置または方向の再設定が終わると、ルーチンは終了する。エッジ検出閾値に関連して先に簡潔に記載したように、各エッジの強度は、エッジを規定する２つの隣接領域間の光強度変化の量との関連で定義される。このように、エッジ検出閾値，勾配閾値，他のエッジ検出パラメータを、デフォルト設定，ユーザ設定，関連するツールの訓練中にエッジ特性から得られる設定によって十分に高いレベルに設定することができ、ツールを、当該ツールに適切な動作を行わせるのに十分なエッジ強度と関連する画素との関係のみにおいて位置の再設定を行えばよいようになっている。
【００６２】
図４Ｂは、曲がったエッジツール（例えば、サークルツール，アークツール）の位置の再設定に使用されるルーチン４１０を示している。このようなツールの例は、前述した QVPAK ソフトウェアに記載されている。サークルツールは、図６に示されている。例えば、自動リカバリーシーケンスにおいて、ツールの不適切な動作の原因のうち、（ツールの位置よりも）可能性の高い他の全ての原因を点検し終わったときのように、サークルまたはアークツールの位置を再設定すべき判定されると、ルーチン４１０は開始される。ルーチン４１０は、ブロック４１２から開始する。ブロック４１２では、図４Ａにおけるブロック４０２に関して述べたように、現画像におけるエッジ（あるいは、エッジ画素）が探索される。ブロック４１４では、エッジ画素勾配方向のノイズを少なくするための公知の画像フィルタリング技術にしたがって画像が平滑化される
【００６３】
次に、ブロック４１５では、Generalized Hough 変換が実行される。Generalized Hough 変換は、大量のデータに隠されているパターン（その位置）を見つける技術においてよく知られている、画像解析に使用される標準的なツールである。Hough 変換技術の各種の側面は、当該技術の特定の形態について記載している米国特許第5,136,660号から理解することができる。Generalized Hough 変換の応用については、『Generalizing The Hough Transformation To Detect Arbitrary Shapes』（by D.H. Ballard, in Pattern Recognition, 13(2), 1981, pp. 111-122）から理解することができる。ここで基礎として用いる技術は、２以上の次元を有する適当なパラメータ空間においてパラメータ化できる円／円弧パターンを見つける技術である。
【００６４】
特に、ブロック４１６では、半径（Ｒ１＋Ｒ２）／２の円に対応して［勾配方向，中心オフセット］ルックアップテーブルが準備される。ここで、Ｒ１は、関心領域の円状または円弧状の境界の内半径であり、Ｒ２は、ツールの外半径である（図６における６２３Ａ´および６２３Ｂ´を参照）。このような半径は、ツールによって位置を見出されて測定されるべきエッジ特徴の半径の合理的な見積もりである。勾配方向という語は、ここでは最大勾配方向、あるいは、円状のエッジを横切る径方向、あるいは、その部分という意味で用いる。テーブルは、勾配方向、すなわち、基準の軸に対してなす角度によってインデックス付けされている。
【００６５】
ブロック４１８では、ブロック４１２および４１４において得られた全てのエッジ画素に対する勾配方向が算出される（エッジ画素以外の画素については算出されない）。ブロック４２０では、［勾配方向，中心オフセット］ルックアップテーブルを用いて、各エッジ画素に対して、２Ｄアキュムレータアレイにおけるセルがインクリメントされる。特に、Generalized Hough 変換への単純な拡張を行うことによって、セルのインクリメントが、円の可能な中心同士を結ぶ線分（勾配方向）に沿ってエッジ画素の両側で実行されるようになる。可能な中心の位置は、エッジ画素について算出された勾配方向に対応するルックアップテーブルにおける中心オフセットベクトルを利用して算出される。このベクトルは、第１の可能な円の中心を得るために現画素の座標に加算され、第２の可能な円の中心を得るために減算される。エッジの両側における２つの可能な円の中心を考慮することによって、２つの可能なエッジ傾斜または極性（一方は、エッジを横切る走査方向に沿って上昇する強度に関連し、他方は、エッジを横切って下降する強度に関連する）を説明することができる。
【００６６】
アキュムレータアレイにおける１つのセルのインクリメントの代わりに線分を使用することによって、この特定のアルゴリズムは、先に見積もった（Ｒ１＋Ｒ２）／２とは若干異なる半径を有する円や円弧を見つけることができる。このように、円や円弧に対する Hough 変換は、３パラメータ空間（位置を定義する２Ｄアキュムレータアレイおよび円半径のフレキシビリティー（３つ目のパラメータ））を効果的に使用している。変換は、２Ｄアキュムレータアレイにおける点の代わりに、線分に対応する値を生成することによって達成される。
【００６７】
ブロック４２１では、２Ｄアキュムレータアレイ（パラメータ画像のようなものと考えてもよい）に閾値処理が行われ、ブロック４２０において重要でない値をアキュムレートした全てのセルが除去される。小さな値のセルは、予期される大きさおよび形状を有する特徴上には存在しない。元々の、および、閾値処理後の２Ｄアキュムレータアレイは、いずれも、後での参照のために記録される。
【００６８】
ブロック４２２では、形態学的閉塞オペレーション（膨張処理と、これに引き続く侵食処理）が、領域中の穴を閉塞するために閾値処理後の２Ｄアキュムレータアレイ上で実行される。ブロック４２４では、公知の画像処理方法（領域ラベリング方法など）にしたがって閾値処理後の２Ｄアキュムレータアレイにおける連結した要素（領域）が見出され、対応する『画素』に、当該画素が特定の連結領域に属することを示すためのラベリングが行われる。ブロック４２６では、ラベリングされた画素のアドレスに基づいて各連結領域の重心が決定され、元々の２Ｄアキュムレータアレイにおける連結領域に対応する（すなわち、一致する）全てのセルの値が加算されて、位置検出対象の特徴の予期される半径および形状にどれだけ強く符合するかを示す『票数』が算出される。
【００６９】
ブロック４２８では、全ての連結領域（すなわち、円の中心の候補）に、その票数（各領域の票の合計）およびツールの中心との距離（重心についての）に基づいて、ランク付けが行われる。例えば、票数および距離についての値が同じ数値範囲に規格化され、各連結領域について、規格化された票数および規格化された距離が加算されて、数量的なランク値が算出されるようにしてもよい。ブロック４３０では、関連する円の中心が最高のランク値を有する連結領域の重心に配置されるように、すなわち、ツールによって解析される位置設定不良の特徴の最も可能性の高い中心に合わせるように、当該ツールの位置が再設定される。そして、ルーチンは終了する。
【００７０】
図５は、画像においてエッジ（あるいは、エッジ画素）を見つけるために利用可能なルーチン５００を示すフローチャートである。このルーチン５００は、図４Ａに示されるルーチン４０１におけるブロック４０２や、図４Ｂに示されるルーチン４１０におけるブロック４１２などにおいて実行される。ブロック５０２では、例えば平均フィルタを使用することによって画像が平滑化され、粗い表面を含む画像についてのヒストグラムモダリティー（histogram modality）が向上される。ブロック５０４では、画像のグレイスケールヒストグラムが算出されて平滑化される。判定ブロック５０６では、グレイスケールヒストグラムが明確なモード（すなわち、画像において最も頻繁に生じる画素値を反映する値の孤立した集合）を有するか否かが判定される。もしそうであれば、ブロック５０８では、ヒストグラムのモードに基づいて閾値が割り出され（自動閾値処理）、当該閾値が画像に適用されて、ヒストグラムの値の孤立した集合の一方または双方に対応する明確な領域（対象または特徴）をより良く定義するバイナリ画像が生成される。これに対して、ブロック５０６においてグレイスケールヒストグラムが明確なモードを有しない判定されると、ブロック５０７において、例えば Sobel オペレータを使用することによって勾配画像が算出され、当該勾配画像に適当な閾値が適用されてバイナリエッジ画像が生成される。
【００７１】
バイナリ画像がブロック５０７および５０８のいずれにおいて決定されたかに関わらず、ブロック５１０では、形態学的閉塞オペレーション（膨張処理と、これに引き続く侵食処理）がバイナリ画像上で実行され、明確な領域（対象または特徴）における穴が閉塞される。
【００７２】
ブロック５１２では、ブロック５１０において形態学的にフィルタリングされたバイナリ画像において連結領域が定義され、当該連結領域にサイズフィルタが適用されて、所定のサイズ閾値よりも小さい関係のない領域が除去される。ブロック５１４では、ここで残っている連結領域の境界における画素がエッジ画素として特定され、ルーチンが終了する。前述した Sobel オペレータが使用される場合には、画像におけるエッジ画素に最も良く対応するのは、連結領域の『中心線』である。しかしながら、このような連結領域は、とても狭くなりやすく、境界におけるエッジ画素の特定が、当該エッジ画素を利用する続くオペレーションの結果に大きな影響を与えにくくなる。
【００７３】
なお、自動ツールリカバリー方法は、コンピュータによって実行可能な指示を含む自動ツールリカバリーコンピュータプログラムによって実行される。当該プログラムは、画像検査システムにおける制御システム部１２０（図２参照）にロードされてもよい。また、自動ツールリカバリーコンピュータプログラムは、制御システム部１２０におけるメモリ１４０のビデオツール部１４３に含まれていてもよい。このリカバリープログラムは、ビデオツールに関連していてもよいし（各ビデオツールの一部として機能的に一体化されてもよい）、ビデオツールとは『別々』にされ、当該ビデオツールのいずれかが適切に動作しないときに呼び出されるようにしてもよい。いずれの場合も、このようなプログラムがビデオツールの動作に関連していれば、当該ビデオツールが自動的に自身をリカバリーできるようになるという点で、当該ビデオツールのロバスト性が高まる。
【００７４】
なお、自動ツールリカバリー指示のセットは、ユーザによって設定されてもよい。図６は、画像における円状特徴に対するサークルツールの自動再配置と同様に、自動ツールリカバリー指示のセットのユーザ設定（またはカスタマイズ）を可能にするユーザインターフェイスの一例を示すビデオディスプレイからのサンプルスクリーンショットである。図６において、ビデオディスプレイ６０１は、検査対象の円状特徴６０２，メッセージウィンドウ６０５，コントロールパネル６０７を示す画像ウィンドウ６０３を含んでいる。コントロールパネル６０７は、画像の解析に基づいて算出された関連する画像特性値（例えば、画像の焦点や輝度）を表示する画像特性値パネル６１０を含んでいる。当該パネル６１０は、熟練ユーザの参照用として有用である。コントロールパネル６０７は、さらに、リカバリータイプ選択パネル６０８，許容度設定パネル６０９，リカバリートライアルコマンドパネル６１１を含んでいる。
【００７５】
リカバリータイプ選択パネル６０８は、自動ツールリカバリーコンピュータプログラムによって実行される調整の１または複数のタイプのユーザによる選択を可能にする。図示された例では、４つのタイプの調整、すなわち、『Light』，『Focus』，『Position』（画像特徴に対するツールの位置），『THS』（エッジ強度閾値）が選択される。そして、結果として得られる自動ツールリカバリー指示のセットが、これらの各タイプの調整を自動的に実行するように設定される。ユーザは、対応するチェックボックスの状態を変更することによって、これらのタイプの調整が行われないようにすることもできる。例えば、ユーザは、自動ツールリカバリーコンピュータプログラムが『Light』，『Focus』の調整のみを実行するように、『Position』，『THS』の調整が行われないようにすることができる。
【００７６】
許容度設定パネル６０９は、各調整タイプ（図６においては、『Light』，『Focus』，『Position』，『THS』）についての許容レベルのユーザによる設定を可能にする。特に、調整の各タイプは、リカバリープロセス中に使用可能な設定範囲を有しており、当該範囲のどの割合（部分）がツールリカバリー中に使用されるかを許容レベルは効果的に設定することができる。図示された例では、許容度設定パネル６０９では、各許容度が『Low』，『Medium』，『High』に設定できるようになっている。『Low』は、与えられたパラメータ（照明，焦点，ツール位置など）を許容可能な値にする上で、全ての可能な調整設定のうち比較的小さい部分の使用が許容されることを意味し、『High』は、与えられたパラメータを許容可能な値にする上で、全ての可能な調整設定のうち比較的大きい部分（あるいは全部）の使用が許容されることを意味する。『許容度』という語は、ここでは、ツールリカバリーオペレーション中に各種の特徴検査パラメータをうまく調整しようとするときに使用される各種のパラメータ探索範囲について設定される限界を意味する。一般に、許容度が低い（Low）状態での調整は、パラメータ探索範囲が小さいので、短時間になりやすい。しかしながら、許容度が低いと、制限されたパラメータ探索範囲では適当なパラメータ調整を見出すことができないことがあるため、リカバリーが失敗する可能性が高くなる。したがって、ユーザが自動ツールリカバリーの速度を上げることを希望し、リカバリーの失敗する可能性が高くなることをいとわない場合には、ユーザは、『Low』の許容レベルを選択すればよい。一方、効果的なパラメータ調整が行われる可能性が高いことが求められ、ユーザが、調整されたパラメータ値がツールの不適切な動作の原因となったパラメータ値と大幅に異なることや、リカバリーの速度が遅くなることを受け入れる場合には、ユーザは、『High』の許容レベルを選択すればよい。なお、許容レベルは、各種の他のフォーマットやインターフェイス装置を利用することによって各種の他の方法によって設定されてもよく、本発明は、図６の例によって限定されることはない。例えば、３つの選択肢（『Low』，『Medium』，『High』）の代わりに、より多いあるいは少ない選択肢を設けてもよい。他の例として、許容度設定パネル６０９が、許容値の設定のためにユーザに数値入力を促すようなものであってもよい。
【００７７】
リカバリートライアルコマンドパネル６１１は、自動ツールリカバリー指示のセットの特定の設定の予備的なテストを実行し、ユーザが当該設定の有効性を評価できるようにするために使用することができる。例えば、ユーザは、ツール（例えば、図６に示されるサークルツール６２０）を故意に『外れた位置』に定義および配置したり、照明設定を故意に誤って調整したりした後に、『Recover Circle Tool』ボタンを押して、当該ツール、および、自動ツールリカバリー指示の現在の設定を実行させてもよい。このとき、リカバリーが成功すれば、照明は適切に調整され、他の特徴検査パラメータも適切に調整され、メッセージウィンドウ６０５に表示された『TOOL OK!...』のメッセージの通り、ツールが適切に実行されるようになる。位置が再設定されたサークルツール６２０´は、元のサークルツール６２０とともに表示され、ユーザが、円状特徴６０２に対する表示画像上のツールの最初のおよび調整後の位置を見ることができるようになっている。図６に示されるように、リカバリーされたサークルツール６２０´は、その関心領域の内径６２３Ａ´および外径６２３Ｂ´が検査対象の円状特徴６０２のエッジを囲むように配置されている。
【００７８】
本発明では、自動ツールリカバリーコンピュータプログラムは、さらに、そのオペレーションを追跡するように、すなわち、どのタイプのツールが何回不適切に動作したかといった情報や、さらに、各ツールの不適切な動作についてどのタイプの調整がツールのリカバリーのために必要であったかといった情報を集めるように設定されてもよい。適当な数の計数手段が追跡オペレーションの実行のために設けられていてもよい。ツールの不適切な動作およびそのリカバリーの履歴が記録されて、例えばツールの不適切な動作の頻度の高い原因を調査するために、ユーザによって解析されるようにしてもよい。
【００７９】
以上、本発明の好適な実施形態について述べてきたが、本発明の原理，精神，範囲から外れなければ、各種の変更を加えることが可能である。
【図面の簡単な説明】
【００８０】
【図１】本発明に基づく画像検査システムの一例を示す図である。
【図２】本発明に基づく画像検査システムにおける制御システム部と画像コンポーネント部とを示す図である。
【図３Ａ】自動ツールリカバリールーチンを示すフローチャートである。
【図３Ｂ】ビデオツールの自動リカバリーの比較的詳細なルーチンを示すフローチャートである。
【図４Ａ】エッジツールの位置の再設定に利用され、このようなツールの自動リカバリーを容易にするルーチンを示すフローチャートである。
【図４Ｂ】曲がったエッジツールの位置の再設定に使用されるルーチンを示すフローチャートである。
【図５】画像においてエッジを見つけるために利用可能なルーチンを示すフローチャートである。
【図６】自動ツールリカバリー指示のセットのユーザ設定を可能にするユーザインターフェイスの一例を示すビデオディスプレイからのサンプルスクリーンショットである。
【図１】
2006126200.tif 000003
【図２】
2006126200.tif 000004
【図３Ａ】
2006126200.tif 000005
【図３Ｂ】
2006126200.tif 000006
【図４Ａ】
2006126200.tif 000007
【図４Ｂ】
2006126200.tif 000008
【図５】
2006126200.tif 000009
【図６】
2006126200.tif 000010