(57)【要約】      （修正有）【課題】校正時間中に校正ターゲットの代わりに実行時ワークピース上の特徴を用いて２つのロケーションにおける座標空間を結合するシステムと方法を提供する。【解決手段】両ロケーションで同じワークピース１２４の特徴が撮像及び特定される。実行時ワークピースの撮像された特徴は各ロケーションで異なる（ＣＡＤ又は測定されたワークピース表現が利用可能）。モーションステージを含む第１ロケーションはハンドアイ校正を用いてモーションステージに校正されており、第２ロケーションは実行時部品を両ロケーション間で往復移動することによって同じモーションステージにハンドアイ校正される。品質は、実行時ワークピースをそれぞれ異なる姿勢で多数回動かし、各ロケーションでそのような特徴を抽出及び蓄積し、次いで蓄積された特徴を用いて２つの座標空間を結合することによって改善できる。【選択図】図１
2018169403.tif 000002
【特許請求の範囲】
【請求項１】
第１ロケーションにある第１ワークピースがマニピュレータによって第２ロケーションに移動され、第１ワークピースで行われる操作が第１ロケーションと第２ロケーションの座標空間を結合することに依拠する環境においてビジョンシステムを校正するための方法であって、
少なくとも１台のビジョンシステムカメラを、第１ロケーションに置かれたときに第１ワークピースを撮像し、及び第２ロケーションに置かれたときに第１ワークピースを撮像するように配置するステップと、
少なくとも１台のビジョンシステムカメラを第１ロケーションを基準に校正して第１座標空間を定義する第１の校正データを導き、及び少なくとも１台のビジョンシステムカメラを第２ロケーションを基準に校正して第２座標空間を定義する第２の校正データを導くステップと、
第１ロケーションで少なくとも第１ワークピースの特徴を第１ワークピースの第１の画像から特定するステップと、
第１の画像中に特定された特徴に基づいて第１座標空間を基準に第１ロケーションに対して相対的に第１ワークピースを位置決めするステップと、
マニピュレータを使って第１ワークピースを少なくとも１回掴んで第２ロケーションにおける所定のマニピュレータ位置に動かすステップと、
第２ロケーションで第１ワークピースの第２の画像を取得するステップと、
第２の画像中に特定された特徴に基づいて第２座標空間を基準に第２ロケーションに対して相対的に第１ワークピースを位置決めし、第１座標空間と第２座標空間を結合するステップと、を含む方法。
【請求項２】
第１の画像中に特定された特徴は第２の画像中に特定された特徴と同じであり、更に（ａ）第１の画像中に特定された特徴の位置を第１の校正データを基準にしてマッピングすること、（ｂ）第２の画像中に特定された特徴の位置を第２の校正データを基準にしてマッピングすること、及び（ｃ）第２ロケーションでマッピングされた特徴を第１ロケーションでマッピングされた特徴にマッピングする変換を計算することを含む、請求項１に記載の方法。
【請求項３】
第１の画像中に特定された特徴の一部は第２の画像中に特定された特徴と異なり、更に（ａ）第１の画像中に特定された特徴の位置を第１の校正データを基準にしてマッピングすること、（ｂ）第１ワークピースの特徴位置の保存された仕様に対して相対的な変換を計算すること、（ｃ）第２の画像中に特定された特徴の位置を第２の校正データを基準にしてマッピングすること、（ｄ）ワークピースが第１ロケーションに置かれたときにステップ（ｂ）で計算された変換を用いて第１座標空間における第２の画像から特定された特徴の位置を導くこと、及び（ｅ）第２ロケーションでマッピングされた特徴を第１ロケーションで対応する変換された特徴にマッピングする変換を計算することを含む、請求項１に記載の方法。
【請求項４】
前記仕様は、第１ワークピースのＣＡＤモデルに基づいている、請求項３に記載の方法。
【請求項５】
前記仕様は、第１ワークピースの測定モデルに基づいている、請求項３に記載の方法。
【請求項６】
更に、（ａ）第１ワークピースを第１ロケーションか又は第２ロケーションでモーションレンダリングデバイスによって反復的に複数の異なる姿勢に動かすこと、（ｂ）第１ロケーションと第２ロケーションでそれぞれ各姿勢での特徴を特定すること、及び（ｃ）特定された特徴情報を蓄積して精度を高めることを含み、第１ワークピースは同じワークピースであるか又は複数の個々に区別できるワークピースの１つである、請求項１に記載の方法。
【請求項７】
更に、第１ロケーションで画像座標系から校正座標系へのマッピングを提供することを含み、マッピングが合一である、請求項１に記載の方法。
【請求項８】
第２ロケーションは第２ワークピースを有しており、そこに入ると第１ワークピースは第２ワークピースと所望されたアライメントで係合する、請求項１に記載の方法。
【請求項９】
第２ワークピースは、第１ワークピースを更に加工するための部品、コンテナ又はフレームである、請求項８に記載の方法。
【請求項１０】
前記操作は、他方のオブジェクトを基準にしたアライメント操作、第１ワークピースへの印刷操作、及び第１ワークピースへの塗布操作の少なくとも１つである、請求項１に記載の方法。
【請求項１１】
前記操作は、少なくとも一部は第１ロケーションと第２ロケーションから離れた位置で行なわれる、請求項１０に記載の方法。
【請求項１２】
第１ロケーションにある第１ワークピースがマニピュレータによって第２ロケーションに移動され、第１ワークピースで行われる操作が第１ロケーションと第２ロケーションの座標空間を結合することに依拠する環境においてビジョンシステムを校正するための方法であって、
（ａ）少なくとも１台のビジョンシステムカメラを、第１ロケーションで第１ワークピースを撮像し、及び第２ロケーションを撮像するように配置するステップと、
（ｂ）少なくとも１台のビジョンシステムカメラを第１ロケーションを基準にしてハンドアイ校正して第１の校正データを導くステップと、
（ｃ）第１ワークピースを第１ロケーションに置くステップと、
（ｄ）第１ワークピースを第１ロケーションから第２ロケーションへ動かすステップと、
（ｅ）画像を取得して第１ワークピース上の特徴の位置を特定するステップと、
（ｆ）第１ワークピースを第２ロケーションから第１ロケーションに動かし、第１ロケーションでモーションレンダリングデバイスを動かすことにより第１ワークピースの姿勢を新しい既知の姿勢に変更するステップと、
（ｇ）特徴位置及びハンドアイ校正に関連するその他のデータが蓄積されるまでステップ（ｄ−ｆ）を反復するステップと、
（ｈ）蓄積されたデータを用いて少なくとも１台のビジョンシステムカメラを第２ロケーションを基準にしてハンドアイ校正し、第１座標空間と第２座標空間をハンドアイ校正から得られたモーションレンダリングデバイスに対して相対的な共通座標空間によって結合するステップと、を含む方法。
【請求項１３】
第２ロケーションはモーションレンダリングデバイス上に第２ワークピースを有しており、そこに入ると第１ワークピースは第２ワークピースと所望されたアライメントで係合する、請求項１２に記載の方法。
【請求項１４】
第２ワークピースは、第１ワークピースを更に加工するための部品、コンテナ又はフレームである、請求項１３に記載の方法。
【請求項１５】
前記操作は、他方のオブジェクトを基準にしたアライメント操作、第１ワークピースへの印刷操作、及び第１ワークピースへの塗布操作の少なくとも１つである、請求項１２に記載の方法。
【請求項１６】
第１ロケーションにある第１ワークピースがマニピュレータによって第２ロケーションに移動され、第１ワークピースで行われる操作が第１ロケーションと第２ロケーションの座標空間を結合することに依拠する環境においてビジョンシステムを校正するためのシステムであって、
第１ロケーションに置かれたときに第１ワークピースを撮像し、及び第２ロケーションに置かれたときに第１ワークピースを撮像するように配置された少なくとも１台のビジョンシステムカメラと、
少なくとも１台のビジョンシステムカメラを第１ロケーションを基準に校正して第１の校正データを導き、及び少なくとも１台のビジョンシステムカメラを第２ロケーションを基準に校正して第２の校正データを導く校正プロセスと、
少なくとも第１ロケーションで第１ワークピースの特徴を第１ワークピースの第１の画像から特定し、第１の画像中に特定された特徴に基づいて第１ワークピースを第１座標空間を基準にして第１ロケーションに対して相対的に位置決めし、及び第２ロケーションで第２の画像中に特定された特徴に基づいて第１ワークピースを第２座標空間を基準にして第２ロケーションに対して相対的に位置決めする特徴抽出プロセスと、
第１座標空間と第２座標空間を結合する校正プロセスと、を含むシステム。
【請求項１７】
第２ロケーションは第２ワークピースを有しており、そこに入ると第１ワークピースは第２ワークピースと所望されたアライメントで係合する、請求項１６に記載のシステム。
【請求項１８】
第１の画像中に特定された特徴の一部は第２の画像中に特定された特徴と異なり、更に校正プロセスは、（ａ）第１の画像中に特定された特徴の位置を第１の校正データを基準にしてマッピングし、（ｂ）第１ワークピースの特徴位置の保存された仕様に対して相対的な変換を計算し、（ｃ）第２の画像中に特定された特徴の位置を第２の校正データを基準にしてマッピングし、（ｄ）ワークピースが第１ロケーションに置かれたときにステップ（ｂ）で計算された変換を用いて第１座標空間における第２の画像から特定された特徴の位置を導き、及び（ｅ）第２ロケーションでマッピングされた特徴を第１ロケーションで対応する変換された特徴にマッピングする変換を計算するように構成及び配置されている、請求項１６に記載のシステム。
【請求項１９】
前記仕様は、第１ワークピースのＣＡＤモデルか又は第１ワークピースの測定モデルに基づいている、請求項１８に記載のシステム。
【請求項２０】
第２ロケーションは第２ワークピースを有しており、そこに入ると第１ワークピースは第２ワークピースと所望されたアライメントで係合する、請求項１６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は２０１５年６月８日に出願された同時係属米国特許仮出願第６２／２０１７２３号「案内された組立環境におけるマシンビジョン座標空間を結合するためのシステム及び方法」の利益を主張するものであり、その教示内容は参照により本明細書に組み込まれる。
【０００２】
記述分野
本発明はマシンビジョンシステム、より具体的には製造環境及び案内された組立環境でワークピース及びその他のオブジェクトの組立を案内するために使用されるビジョンシステムに関する。
【背景技術】
【０００３】
マシンビジョンシステム（本明細書中では「ビジョンシステム」とも呼ぶ）では、１台以上のカメラを使用して撮像されたシーン内のオブジェクト又は表面でビジョンシステムプロセスを実行する。これらのプロセスは、検査、コードの解読、アライメント及びその他の多様な自動化タスクを含むことができる。より具体的には、ビジョンシステムは撮像されたシーンを通過する扁平なオブジェクトを検査するために使用できる。シーンは通常１台以上のビジョンシステムカメラで撮像され、ビジョンシステムカメラは関連するビジョンシステムプロセスを作動して結果を生み出す内部又は外部ビジョンシステムプロセッサを含むことができる。１台以上のカメラを校正して、ビジョンタスクを十分な精度と信頼性をもって実行できるようにする。校正プレートを使用してカメラを校正して共通（グローバル）座標空間（座標「系」とも呼ぶ）を確定し、そこにおいて全てのカメラのピクセル位置が座標空間内の関連ポイントにマッピングされ、そうすることによっていずれかのカメラで撮像された特徴の位置を座標空間で特定することが可能になる。オブジェクトの組立を案内するためのモーションステージを用いる応用において、校正プロセスはモーションステージ（「運動座標空間」とも呼ぶ）と共通座標空間との間に関係を作ることを含むことができる。そのような校正は公知の「ハンドアイ」校正技術を用いて達成できる。
【０００４】
ビジョンシステムカメラの特筆すべきタスクは、自動化された組立メカニズムによってオブジェクト（「ワークピース」とも呼ぶ）の組立の案内及び検証を補助することであり、組立メカニズムは可動プラットフォーム（モーションステージ）を含んでおり、一方のワークピースを組立位置及びマニピュレータ（例えば「ピックアンドプレース」動作を実行するロボットハンド若しくはアーム又はその他のタイプのモーションデバイス／モーションステージ）に精確に支持し、他方のワークピースを「アセンブリモーション」で上下に重なるアライメント位置に動かしワークピースに組み立てられる。具体的なピックアンドプレース動作は、一方のワークピースを他方のワークピースとアライメントさせることを含む。例えば、タッチスクリーンをマニピュレータで操作してピックアンドプレース動作でモーションステージに載っている携帯電話の凹部の上方に動かして中に入れることができる。この場合、各々のタッチスクリーンはピックロケーションから取り出されて待機している携帯電話本体のプレースロケーション（ときどき「ステーション」と呼ぶ）に置かれる。タッチスクリーンと携帯電話本体との適切で精確なアライメントが極めて望ましい。
【０００５】
幾つかの例示的なシステムは最初に、システムの実行時動作中に各々のワークピースが他方のワークピースと正しくアライメントするようにトレーニングされる。トレーニング時にワークピースはそれぞれのロケーション／ステーションに置かれ、組み立てると、組み立てられたワークピースは所望の相互位置関係を持つ。トレーニングに続く実行時に、何らかの配置又は寸法のばらつきを考慮するために、ビジョンシステムを用いて関連するモーションステージの位置を制御して一方又は両方のワークピースをそれぞれのロケーションに再配置して、それから組み立てる。ステージを調節することによってワークピースはトレーニング時にあったのと同じ相互の（期待された）位置関係に置かれる。他の例示的なシステム、例えば実行時に組み立てられた部品のジオメトリを使用できるシステム、例えば第１の矩形オブジェクトが第２の矩形オブジェクト上にセンタリングされているシステムではトレーニングを省略できる。
【０００６】
ワークピースのあるシーンの撮像に続いて、最終的に所望された組立をもたらすステージの運動パラメータを計算するプロセスの一環として、各々のワークピースに付属している特徴が抽出されて共通座標空間にマッピングされる。共通座標空間へのマッピングは、校正プロセスの結果行われる。多くの組立システムで校正プロセスは、部品を移動する反復可能なマニピュレータを用いて両ロケーション間に特別の校正ターゲットを移動すること、及び両ロケーションで校正ターゲットを撮像することを含む。この技術は幾つかの短所がある。例えば、部品を移動するピックアンドプレースグリッパは、ワークピースの形状、重量又はその他の特徴が校正ターゲットと相違するために校正ターゲットを移動できないことがある。即ち、校正ターゲットはグリッパのパラメータと適合しない。そのようなシステムでは、共通座標空間へのパラメータのマッピングはユーザ入力により手動で指定しなければならないが、その結果としてしばしば準最適な校正が生じる。加えて、校正時と実行時にピックアンドプレースマニピュレータが通る運動経路は、部品と校正ターゲットの特徴、例えば厚さ又はその他の特徴が相違するために異なることがある。このことはマニピュレータが取る実行時運動ステップをトレーニング時運動ステップに対して変えることを要求するので、校正エラーを招くことがある。より一般的には、校正時間中に追加のセットアップステップなどのために別個の校正ターゲットを使用するのはユーザにとって不便である。
【０００７】
同様に不利には、校正のための先行技術は何らかの機械的及び／又は反復的な試行錯誤原理に依拠しているが、これらは限界があり及び／又は不便で実行するのに時間がかかる。例えば一技術では、機械的システムは第１ロケーションにおける座標空間と第２ロケーションにおける座標空間との関係が知られ確定されように構成できる。この技術はフレキシビリティを制限し、時間の経過に伴って生じ得る動き又は位置の変化を考慮しない。他の技術では、２つのロケーションの関係の初期推定が行なわれ、組み立てられた部品の品質を用いて反復的に精緻化される。この技術は時間がかかり、所望された精度を達成するために多数反復に依拠する。
【発明の概要】
【０００８】
本発明は、校正ターゲットをマニピュレータ（及び関連グリッパ）でピックロケーションとプレースロケーションの間に移動することによって生じる問題に関係した先行技術の短所を、校正時間中に実行時ワークピース上の特徴を用いて２つのロケーションにおける座標空間を結合する校正のためのシステム及び方法を提供することによって克服する。このシステム及び方法は少なくとも３通りのシナリオ／技術を含む。１つは、両ロケーションで同じ特徴を撮像及び特定できる。１つは、実行時ワークピースの撮像された特徴は各ロケーションで異なる（ＣＡＤ又は測定されたワークピース表現が利用可能）。そして１つは、モーションステージを含む第１ロケーションはハンドアイ校正を用いてモーションステージに校正されており、第２ロケーションは実行時部品を両ロケーション間で往復移動することによって同じモーションステージにハンドアイ校正される。例として、最初の２つの技術の品質は、実行時ワークピースをそれぞれ異なる姿勢で多数回動かし、各ロケーションでそのような特徴を抽出及び蓄積し、次いで蓄積された特徴を用いて２つの座標空間を結合することによって改善できる。より一般的に、このシステム及び方法は２つのロケーションを独立に校正して、組立中に移動するように構成及び配置／適合されたマニピュレータでワークピースを移動し、校正プレートの特徴の代わりにそのワークピースの特徴を用いることによって２つのロケーションに対する座標空間を結合する。
【０００９】
例示的な実施形態において、第１ロケーションにある第１ワークピースがマニピュレータによって第２ロケーションに移動される環境においてビジョンシステムを校正するためのシステム及び方法が提供される。第１ワークピース上で、第１ロケーションと第２ロケーションの座標空間を結合することに依拠する操作が行われる。少なくとも１台のビジョンシステムカメラが、第１ロケーションに置かれたときに第１ワークピースを撮像し、第２ロケーションに置かれたときに第１ワークピースを撮像するように配置される。少なくとも１台のビジョンシステムカメラが第１ロケーションを基準に校正されて、第１座標空間を定義する第１の校正データを導き、及び少なくとも１台のビジョンシステムカメラ（同じカメラでも可能）が第２ロケーションを基準に校正されて、第２座標空間を定義する第２の校正データを導く。少なくとも第１ワークピースの特徴は、第１ロケーションで第１ワークピースの第１の画像から特定される。第１の画像中に特定された特徴に基づいて、第１ワークピースが第１座標空間を基準に第１ロケーションに対して相対的に位置決めされる。第１ワークピースはマニピュレータによって少なくとも１回掴まれて第２ロケーションにおける所定のマニピュレータ位置に動かされ、この第２ロケーションで第１ワークピースの第２の画像が取得される。第２の画像中に特定された特徴に基づいて、第１ワークピースが第２座標空間を基準に第２ロケーションに対して相対的に位置決めされる。これにより第１座標空間と第２座標空間が結合される。例として、第１の画像中に特定された特徴が第２の画像中に特定された特徴と同じである場合に、このシステム及び方法は、（ａ）第１の画像中に特定された特徴の位置を第１の校正データを基準にしてマッピングすること、（ｂ）第２の画像中に特定された特徴の位置を第２の校正データを基準にしてマッピングすること、及び（ｃ）第２ロケーションでマッピングされた特徴を第１ロケーションでマッピングされた特徴にマッピングする変換を計算することを含む。代替として、第１の画像中に特定された特徴の一部が第２の画像中に特定された特徴と異なる場合に、このシステム及び方法は、（ａ）第１の画像中に特定された特徴の位置を第１の校正データを基準にしてマッピングすること、（ｂ）第１ワークピースの特徴位置の保存された仕様に対して相対的な変換を計算すること、（ｃ）第２の画像中に特定された特徴の位置を第２の校正データを基準にしてマッピングすること、（ｄ）ワークピースが第１ロケーションに置かれたときにステップ（ｂ）で計算された変換を用いて第１座標空間における第２の画像から特定された特徴の位置を導くこと、及び（ｅ）第２ロケーションでマッピングされた特徴を第１ロケーションで対応する変換された特徴にマッピングする変換を計算することを含む。第１ワークピースの仕様は、第１ワークピースのＣＡＤモデル又は第１ワークピースの測定モデル（例えばＣＭＭ生成測定）に基づくことができる。例として、このシステム及び方法は、（ａ）第１ワークピースを第１ロケーションか又は第２ロケーションでモーションレンダリングデバイスによって反復的に複数の異なる姿勢に動かすこと、（ｂ）第１ロケーションと第２ロケーションでそれぞれ各姿勢での特徴を特定すること、及び（ｃ）特定された特徴情報を蓄積して精度を高めることを含み、第１ワークピースは同じワークピースであるか又は複数の個々に区別できるワークピースの１つである。種々の実施形態において、このシステム及び方法は、第１ロケーションで画像座標系から校正座標系へのマッピングを提供することを含み、マッピングが合一である。実施形態において、第２ロケーションは第２ワークピースを有しており、そこに入ると第１ワークピースは第２ワークピースと所望されたアライメントで係合し、及び／又は第２ワークピースは、第１ワークピースを更に加工するための部品、コンテナ又はフレームであることができる。加えて、種々の実態形態において、操作は他方のオブジェクトを基準にしたアライメント操作、第１ワークピースへの印刷操作、及び第１ワークピースへの塗布操作の少なくとも１つであり、この操作は少なくとも一部は第１ロケーションと第２ロケーションから離れた位置で行なわれてよい。
【００１０】
別の例示的な実施形態において、第１ロケーションにある第１ワークピースがマニピュレータによって第２ロケーションに移動され、第１ワークピースで行われる操作が第１ロケーションと第２ロケーションの座標空間を結合することに依拠する環境においてビジョンシステムを校正するためのシステム及び方法が提供され、少なくとも１つのロケーションはハンドアイ校正を受ける。少なくとも１台のビジョンシステムカメラは、第１ロケーションで第１ワークピースを撮像し、及び第２ロケーションを撮像するように配置されている。少なくとも１台のビジョンシステムカメラは第１ロケーションを基準にしてハンドアイ校正されて第１の校正データを導き、第１ワークピースが第１ロケーションに置かれる。例として、第１ワークピースはマニピュレータによって第１ロケーションから第２ロケーションに動かされ、画像が取得されてそこから第１ワークピース上の特徴の位置が特定される。次に第１ワークピースは第２ロケーションから第１ロケーションに動かされ、第１ロケーションでモーションレンダリングデバイスを動かすことにより第１ワークピースの姿勢が新しい既知の姿勢に変更される。モーションレンダリングデバイスはいずれかのロケーションに置くことができ、モーションレンダリングデバイスによる姿勢変更はマニピュレータにより第２ロケーションから第１ロケーションに動かす前又は後で起こることができる。
【００１１】
上記のステップは、特徴位置及びハンドアイ校正に関連するその他のデータが蓄積及び保存されるまで反復され、次いで蓄積されたデータを用いて少なくとも１台のビジョンシステムカメラが第２ロケーションを基準にしてハンドアイ校正される。これは第１座標空間と第２座標空間をハンドアイ校正から得られたモーションレンダリングデバイスに対して相対的な共通座標空間によって結合する。例として、第２ロケーションはモーションレンダリングデバイス上に第２ワークピースを有しており、そこに入ると第１ワークピースは第２ワークピースと所望されたアライメントで係合する。第２ワークピースは、第１ワークピースを更に加工するための部品、コンテナ又はフレームであることができ、操作は、他方のオブジェクトを基準にしたアライメント操作、第１ワークピースへの印刷操作、及び第１ワークピースへの塗布操作の少なくとも１つであってよい。
【００１２】
以下に本発明を図面を参照して説明する。
【図面の簡単な説明】
【００１３】
【図１】模範的なピックアンドプレース組立環境を基準にして配置されたマルチカメラビジョンシステムの図であり、ワークピースをプレースロケーションに移送するために取り出すピックロケーションに置かれたピックアンドプレースマニピュレータを示しており、１つのロケーションがワークピース組立システムと組み合わせて用いられる例示的なモーションステージと、校正、トレーニング及び実行時動作のための関連するツール及びプロセスを有するビジョンプロセッサを含んでいる。
【００１４】
【図２】模範的なピックアンドプレース組立装置を基準にして配置された２カメラビジョンシステムの図であり、一方のワークピースは他方のワークピースとアライメントされており、プレースロケーションにありピックアップされた第１ワークピースを第２ワークピース上に置くピックアンドプレースマニピュレータを示している。
【００１５】
【図３】カメラシステムが１つのロケーションを基準にして校正され、各ロケーションでマニピュレータによって掴まれた実行時ワークピースの撮像に基づいて第１ロケーションにおける第１座標空間を第２ロケーションにおける第２座標空間に結合するための方法の一般化された概観を示すフローチャートである。
【００１６】
【図４】各ロケーションにおける特徴が同じである場合に、各ロケーションにおける実行時ワークピース画像の特徴を用いて第１ロケーションにおける座標空間を第２ロケーションにおける座標空間に結合するための、図３に一般化して示した方法のより詳細なフローチャートである。
【００１７】
【図５】それぞれの視野での可視性の相違のために少なくとも各ロケーションにおける特徴の一部が異なる場合に、各ロケーションにおける実行時ワークピース画像の特徴を用いて第１ロケーションにおける座標空間を第２ロケーションにおける座標空間に結合するための、図３に一般化して示した方法のより詳細なフローチャートである。
【００１８】
【図６】第１ロケーションと第２ロケーションで別個のハンドアイ校正を行うことによって第１ロケーションにおける座標空間を第２ロケーションにおける座標空間に結合するための方法のフローチャートである。
【００１９】
【図７】特徴が多数の未知の姿勢から抽出されて、蓄積された特徴を使用して各ロケーションにおける座標空間を結合する、図４及び図５の方法に関係する追加プロセのフローチャートである。
【発明を実施するための形態】
【００２０】
図１は、模範的なピックアンドプレース（マニピュレータ）メカニズム１２０を有する組立システム１００を図解する。この組立システム１００は、１実施形態に従い、実行時動作において第２ロケーションにある第２ワークピースに組み付けるためにマニピュレータによって操作される（ロケーション／ステーション間で移動される）オブジェクト（第１ワークピース）を用いて校正するためのシステム及び方法を使用できる。これらのロケーションは、特に移動されるべき実行時ワークピース１２４が最初に置かれるピックロケーション１２２と、この第１ワークピース１２４が組み付けられる第２ワークピース１１２が置かれているプレースロケーション１１０を含んでいる。マニピュレータは、第１ワークピース１２４と選択的に係合するために（例えば）吸引カップ１２５を備えたグリッパを含むことができる。マニピュレータ１２０は第１ワークピース１２４を選択的にピックアップして（矢印１３０）、第２ワークピース１１２上のアライメントロケーション１２６に移動する（矢印１３２）。この例では、マニピュレータ１２０を反復可能な経路に沿って案内するためのレール１２８が設けられている。このレールは随意であり、ピックロケーションとプレースロケーションの間でマニピュレータ１２０の反復可能な運動を可能にする任意の方策が明確に想定されている。例示により、マニピュレータは軸Ｘｍ、Ｙｍ及びＺｍによって特徴付けられる座標空間１３４を定義し、ここにおいてマニピュレータ１２０は少なくとも軸Ｙｍに沿って動き、ピック／プレース方向で軸Ｚｍに沿って動く。軸Ｚｍを中心とした回転θｚｍも示されているが、これはマニピュレータによって実行されてもされなくともよい。マニピュレータによって実行される運動は任意であり、ビジョンシステムは一般的に例示により示された運動と独立に動作する。
【００２１】
ピックロケーション１２２及び／又はプレースロケーション１１０は各々、ピック／プレース動作の前にそれぞれのワークピース１２４及び１１２が置かれるプラットフォームを定義する。ワークピース１２４、１１２は任意の容認可能な技術、例えばワークピース源からのコンベア、ロボットマニピュレータ、ユーザによる手動配置などによってロケーション／プラットフォーム（それぞれ１２２、１１０）に載置できる。別の実施形態では、ワークピース１２４はマニピュレータによって第１ロケーション１１０に保持されることができ、ロケーション／プラットフォーム１２２には載置されない。模範的なシステムにおいて、ロケーション／プラットフォーム１２２、１１０のいずれか一方が所望された精度を有する１度以上の自由度で動くモーションステージを含むことができる。そのようなステージ運動は反復可能なピックアンドプレース動作の前又は後にワークピース間のアライメントを取るために設けられている。即ち、一方のワークピースはモーションステージによってプレアライメントされ、次いでワークピースが定義された経路を移動する際にピック／プレース動作が所定のアライメントを維持する。代替として、ピック／プレース動作がワークピースを動かした後、組立／プレース動作の直前にワークピースの最終的なアライメントが起こることができる。各々のプラットフォーム（いずれか一方はモーションステージを含むことができる）はそれ自身の座標空間を定義するが、これはそれぞれのロケーションの校正済みローカル座標空間と見なすことができる。即ち、ピックプラットフォーム１２２は第１座標空間Ｘｓ１、Ｙｓ１、Ｚｓ１（直交軸１３５）を定義し、プレースプラットフォーム１１０は第２座標空間Ｘｓ２、Ｙｓ２、Ｚｓ２（直交軸１３７）を定義する。いずれか一方のプラットフォームはモーションステージを含んでいる場合は、その運動は図示された座標軸の１軸以上に沿って起こることができ、及び随意に少なくとも１回転自由度で（即ち図示されたθｚｓ１又はθｚｓ２に沿って）起こることができる。
【００２２】
この模範的なシステム環境／構成１００において、少なくとも１台のカメラ１４２、１４０がそれぞれ各ロケーション（１２２、１１０）を撮像する。代替として、単一のカメラ又は多数のカメラは単一の視野（ＦＯＶ）で両ロケーションを撮像できる。一般的に、及び本明細書中に記載されているように、ワークピースが所定のロケーションに置かれたときにワークピースの同じ又は異なる特徴が各ロケーションで１台以上のカメラに見えることが想定されている。カメラ１４０、１４２はビジョンプロセス（ビジョンプロセッサ）１６０と相互接続されている。一方又は両方のロケーション１２２、１１０は随意に追加のカメラ１４４（仮想線で示す）を含むことができる。ビジョンプロセス（ビジョンプロセッサ）１６０は関連ロケーションでステージ運動コントローラ１７０とも作動的に相互接続されており、これはプロセッサ１６０にステージ及び関連ワークピースの物理的位置の決定に使用するための運動情報（例えばエンコーダ又はステッパ距離／パルス情報）１７２を提供する。モーションステージは随意にロケーション１２２又は１１０に配置できるので、コントローラ１７０及び関連運動情報１７２は両ロケーションに対して同様に図示されている。ハンドアイ校正（以下に記述）の間、ステージを動かして運動情報を記録し、取得された画像と相関させる。
【００２３】
カメラ１４０、１４２、１４４はそれぞれビジョンシステムプロセッサ及び関連ビジョンシステムプロセス１６０と作動的に接続されており、これはカスタムビジョンプロセッサ回路として全体若しくは一部が１台以上のカメラハウジング内に組み込まれ、又は相互接続されたコンピューティングデバイス１８０内で提供されることができる。コンピューティングデバイス１８０は、ＰＣ、ラップトップ、タブレット、スマートフォン又は同種のものを含むがこれに限らず、適当なグラフィカルユーザインタフェース（ＧＵＩ−例えばディスプレイ及び／又はタッチスクリーン１８２、キーボード１８４及び／又はマウス１８６）を有しており、セットアップ（校正）、トレーニング及び／又は実行時動作を助ける。２台以上のカメラを使用する組立システムにおいて、各々のカメラは取得した画像又は当該画像から抽出された情報を中央プロセッサに送るように適合されていることに留意されたい。次いで中央プロセッサは、組立中に様々なカメラから得られた情報を統合する。ビジョンプロセス（ビジョンプロセッサ）１６０は様々なビジョンツール１６２、例えばエッジファインダ、ブロブ解析器、サーチツール、キャリパツールなどを含む、多様なビジョンシステムプロセス（又はエレメント／モジュール）を実行する。例として、ビジョンプロセス（プロセッサ）１６０は、２個のワークピースからの画像データのアライメントを以下に記述するやり方で実行するアライメントプロセス（プロセッサ）１６４を含んでいる。校正プロセス（プロセッサ）１６６は、以下に記述するカメラ校正及びハンドアイ校正の実行を容易にする。例として、トレーニングプロセス（プロセッサ）１６８は、ワークピースを再配置して第２ワークピースを第１ワークピースに対して精確に組み立てるように、本明細書で想定されている様々なトレーニング手順を実行する。ビジョンプロセッサ１６０は複数の相互接続されたカメラプロセッサ（又はその他のデバイス）又は単一のカメラアセンブリ内の中央プロセッサ（又はリモートコンピューティングデバイス）として設定できることに留意されたい。
【００２４】
本明細書中に様々な実施形態で示されている物理的ワークピース組立装置は、プラットフォーム／モーションステージの様々な領域を撮像する任意の数のカメラを含むことにも留意されたい。各ロケーション（及び／又は全体的な組立環境）を撮像するのに使用するカメラの数は、代替的な構成において極めて可変である。同様に、全体システム内でマニピュレータがタスクを実行するロケーションの数も極めて可変である。
【００２５】
加えて、図示された組立環境は、第１ワークピースが（例えば）反復可能なマニピュレータによって第１ロケーションから他方のロケーションに移動され、そこで第１ワークピース上で操作が行なわれる多様な配置構成の一例であることは明らかであろう。この操作は、第２ワークピースとの所望されたアライメントで係合することを含み、又は適当なメカニズムを用いて直接第１ワークピース上で実行できる。例えば、第２ワークピースは、第１ワークピースが組み付けられる部品、第１ワークピースが収容されるコンテナ／ボックス、及び／又は第１ワークピースが例えばキッティング装置の一部として配置されるフレームであることができる。そのような配置に加えて、操作は第１ワークピースに印刷すること又は転写を塗布すること、レーザ、カッタ、ツールヘッド又はその他のデバイス及び／又はその他ワークピースを変容する何らかのプロセスに暴露することも含んでよい。操作及び第２ワークピースに対する詳しい定義を以下に記載する。一般的に、主としてシステム及び方法は、第１ロケーションと第２ロケーションを撮像するカメラの座標空間を結合できるようにして操作が望ましいやり方で起こることを可能にすることが想定されている。
【００２６】
例示的なシステム及び方法の詳細を更に記述する前に、読者が本明細書中に紹介されたコンセプトを理解するのを助ける次の定義を参照する。
「校正済み座標空間」
（定義）カメラ校正、ハンドアイ校正又はその他の校正プロセス中に使用する校正ターゲットによって定義された座標空間。
「共通座標空間」
（定義）実行時にシステム中のカメラによって取得された特徴がこの空間にマッピングされる。共通座標空間はロケーション間で共有される。
「画像座標空間」
（定義）取得された画像の座標空間又は変換された画像の座標空間。
「運動座標空間」
（定義）モーションレンダリングデバイス（例えばモーションステージ）と関連する固有の座標空間。
「ワークピース座標空間」
（定義）ワークピースと関連する座標空間。この座標空間の可能なソースはワークピースのＣＡＤ仕様又はＣＭＭ表現である。
「ＣａｌｉｂｒａｔｅｄＦｒｏｍＩｍａｇｅ変換」
（定義）画像座標空間から校正済み座標空間にポイントをマッピングする変換。
「カメラ校正」
（定義）画像座標空間と校正済み座標空間との間の変換を確定するプロセス。
「ハンドアイ校正」
（定義）画像座標空間、校正済み座標空間及び運動座標空間の間の変換を確定する当業者に公知のプロセス。
「全ての」カメラ
（定義）本明細書で組立タスクにおいてシステムによって使用される全てのカメラをいう。別途シーンを撮像してよいビジョンシステムカメラ（又はその他のプロセス）によって使用される一部のカメラは組立タスクから除外できることが明確に想定されている。主として１台以上の（少なくとも１台の）カメラ（同じカメラであってよい）が組立時に各ロケーションを撮像し、共通座標系空間に校正されることが想定されている。
「操作」
（定義）第１ロケーション、第２ロケーション又は少なくとも部分的に第１ロケーションと第２ロケーションから離れた位置にある第１ワークピースで／に対して実行されるプロセスをいう。操作は（例えば）第２ワークピースを基準にした組立操作、第１ワークピースをボックス又はフレーム内に配置すること（即ちキッティング）、又は適当なメカニズムを用いた第１ワークピースに対する変容、例えば印刷、転写塗布、接着剤塗布などであり得る。
「第１ワークピース」
（定義）マニピュレータシステム（例えば組立システム）の実際の実行時動作において使用される部品又はその他のオブジェクトをいう−「実行時ワークピース」とも呼ぶ。第１ワークピースは、製造又はその他の実行時プロセス、後校正及びトレーニングの一部ではないシステムセットアップ／トレーニングのために使用される校正ターゲット／プレート又はその他のオブジェクトを明確に除く。
「第２ワークピース」
（定義）第１ロケーションか又は第２ロケーションで、（例えば）モーションレンダリングデバイス（モーションステージ）を用いて達成できるアライメントに基づいて第１ワークピースが組み付けられる、第２ロケーションに置かれたワークピースをいう。第２ワークピースは、第１ワークピースが入れられるコンテナ（ボックス）又はフレームということもできる。
【００２７】
図２を簡単に参照すると、マニピュレータ１２０はそのグリッパ１５０に第１ワークピース１２４を持ってレール１８０に沿って第１ロケーション１２２から第２ロケーション１１０に移動したことが示されている。マニピュレータ１２０は、第１ワークピース１２６をアライメントされた受取りロケーション１２６内で第２ワークピース１１２上に精確に配置すること（矢印２５０）が図示されている。このアライメントは、共通座標空間に基づいてモーションステージを動かすことによりカメラ１４０、１４２及び関連ビジョンシステムカメラプロセス（プロセッサ）１６０によって確定される。この共通座標空間は、次の段落で記述するように、校正中に２つのロケーション１２２、１１０の各々の校正済み座標空間を結合することによって確定される。
【００２８】
校正ターゲットのような剛性体について若干の校正原理を一般的に理解するために、運動は１対の姿勢、即ち運動直前の初期姿勢と運動直後の最終姿勢によって特徴付けることができる。本明細書において「姿勢」は、ある特定の瞬間において基礎となる何らかの座標空間における体の位置と向きを記述するための一連の数値として定義される−体の仮想的特徴付けである。例えば２次元では姿勢は３つの数、即ちＸにおける並進、Ｙにおける並進及び回転Ｒ（又はθ）によって特徴付けることができる。校正ターゲットの脈絡における姿勢は、校正ターゲットがカメラに対してどのように現れるかを表す。通常、標準的ないわゆる「ハンドアイ校正」において、校正ターゲットはモーションレンダリングデバイスによりカメラに対して幾つかの異なる姿勢に動かされ、各々のカメラはそのような各姿勢で校正ターゲットの画像を取得する。そのようなハンドアイ校正の目標は、カメラの姿勢、校正ターゲットの姿勢及びモーションレンダリングデバイスの姿勢を、「校正済み座標空間」と呼ぶことができる単一の座標空間において決定することである。通常、「運動」は物理的運動を与えることができる物理的装置、例えばロボットアーム又はモーションステージ又はガントリーによって提供される。ターゲットは１台以上の定置カメラに対して動くことができるか、又は、例えばカメラが運動を与える物理的装置に組み付けられている場合はカメラが定置ターゲットに対して動くことができることに留意されたい。そのようなモーションレンダリングデバイスのコントローラは数値（即ち姿勢）を使用して装置に何らかの所望された運動を与えるよう命令し、それらの値は、本明細書で「運動座標空間」と呼ぶ当該装置に対する固有の座標空間において解釈される。ここで図３を参照すると、マニピュレータによってロケーション間を動かされる実行時ワークピースを用いて、２つの離散したロケーション（例えばピックロケーションとプレースロケーション）の座標空間を結合するための全体的な校正プロセス３００が記述されている。とりわけ実行時ワークピースの使用は、校正ターゲットの使用に伴う短所を回避して、ユーザが実行時動作においてマニピュレータに期待されているハンドリングと同じ構造を簡便に使用できるようにする。プロセス３００はステップ３１０で開始し、１台以上のカメラを配置して第１ロケーションと第２ロケーションの画像を撮像／取得する。カメラは各ロケーションで実行時ワークピースの特徴を視る。それらの特徴は全部又は一部であってよく、各ロケーションでの同じ特徴又は各ロケーションでの異なる特徴であってよい。ステップ３２０で、第１ロケーション又は第２ロケーションで特徴を視るカメラは、それぞれの校正済み座標空間に対して校正される。これは、ステージによって校正ターゲットを動かして、そのような運動に基づきステージによって提供される運動情報との関連で座標空間を確定することによるハンドアイ校正を含むことができる。代替として、これは特別の校正ターゲット、例えば格子縞模様の校正プレートの画像を使用し、そうしてロケーションにおける全てのカメラをそれぞれの座標空間に結合することにより達成できる校正プロセスを含むことができ���。ステップ３３０で、第１ロケーションにあるワークピースを視る１台以上のカメラによって実行時ワークピースの画像が取得され、第１ロケーションで実行時ワークピース上の特徴の位置が特定／抽出される。次にステップ３４０で特定／抽出された特徴を使用してワークピースを、通常第１ロケーションと関係している第１の校正済み座標空間に対して関連付ける−。特徴はワークピース上で識別できる任意の視覚的要素、特に単独で又は組み合わせてワークピースの向きと位置を一義的に定義する視覚的要素であってよい。従ってエッジとコーナが識別された特徴として使用される場合は、そのようなエッジとコーナは全体的ワークピース上の何らかの位置に対して一義であることができる（例えばワークピースの側面の切欠き）。特徴抽出は当該技術に従い様々なビジョンシステムツール（例えばエッジ検出器、ブロブ解析器など）１６２（図１）の使用を伴うことができる。
【００２９】
ステップ３５０で、実行時ワークピースはマニピュレータによって（例えば図１では実行時ワークピース１２４に吸引カップ１２５を適用することによって）掴まれ、ワークピースは第２ロケーションに動かされる。この運動は少なくとも１回起こる（以下に図７を参照して説明するように異なる姿勢を用いて多数回起こることもできる）。次にステップ３６０で、第２ロケーションにある（ワークピース特徴を視ている）カメラがワークピースの１以上の画像を（当該ワークピースの画像座標空間内で）取得する。第１ロケーションで視られたのと同じか又は異なる特徴を第２ロケーションで使用して、第２ロケーションにあるワークピース上の位置を見出す。特徴が同じ場合は、２つの座標空間は直接結合できる。特徴が異なる場合は、ワークピースの仕様、例えばＣＡＤ図面又は測定された描画／表現（即ち座標測定機ＣＭＭを用いてワークピースを測定して寸法を保存する）により、各ロケーションにおける特徴をビジョンシステム校正プロセスによって対応させることが可能となる。対応させられた特徴により次に各々の座標空間を結合することが可能になる。ステップ３２０でロケーションの１つがハンドアイ校正される場合は、計算された共通座標空間はモーションステージの運動座標空間と同じであり得ることに留意されたい。
【００３０】
図４と図５は、それぞれ図３の一般化されたプロセスに従い第１ロケーションと第２ロケーションで座標空間を結合するために、２種類の方法／プロセス４００及び５００をより詳細に記述している。図４では、プロセス４００は２つのロケーションを撮像するために１台以上のカメラを配置するステップ４１０を含んでおり、そのうち１台はモーションステージを含むことができる。上述したように、モーションステージを有するロケーションを視ているカメラで随意のハンドアイ校正を実行して校正済み座標空間を確定することができる。より一般的にステップ４２０とステップ４３０で、第１ロケーションと第２ロケーションを撮像するカメラは適当な校正ターゲットを用いて校正できる。ステップ４４０で、カメラは第１ロケーションにあるワークピースの１以上の画像を取得し、それらの画像を使用してワークピース上の特徴ｆｅａｔｕｒｅｓＩｍａｇｅ１の位置を適当なビジョンシステムツールによって特定する（ステップ４５０）。これらの特徴は第１ロケーションの校正済み座標空間にマッピングできる（ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ１＝Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＩｍａｇｅ１＊ｆｅａｔｕｒｅｓＩｍａｇｅ１）。実行時ワークピースは次にマニピュレータによって掴まれて第２ロケーションに動かされる。ここでカメラは実行時オブジェクトの画像を取得する（ステップ４６０）。この技術では第２ロケーションでカメラにはｆｅａｔｕｒｅｓＩｍａｇｅ１と同じ特徴ｆｅａｔｕｒｅｓＩｍａｇｅ２が見えている。従ってステップ４７０で、第２ロケーションのカメラは、実行時ワークピース上の同じ特徴の位置を特定し、プロセス４００は第２ロケーションの校正データに基づいてロケーションをマッピングする（ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ２＝Ｃａｌｉｂｒａｔｅｄ２ＦｒｏｍＩｍａｇｅ２＊ｆｅａｔｕｒｅｓＩｍａｇｅ２）。次にステップ４８０で、プロセス４００はｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ２をｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ１（ステップ４５０から）にマッピングする変換Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＣａｌｉｂｒａｔｅｄ２，を計算する。この変換を用いて２つのロケーションの座標空間を次の関係に従って結合する。
ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ１＝Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＣａｌｉｂｒａｔｅｄ２＊ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ２
【００３１】
ステージを含むロケーションが随意にハンドアイ校正されている場合は、変換Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＣａｌｉｂｒａｔｅｄ２はハンドアイ校正結果と組み合わせて使用して実行時の部品の組立を案内できる。
【００３２】
図５では、プロセス５００は２つのロケーションを撮像するために１台以上のカメラを配置するステップ５１０を含んでおり、そのうち１台はモーションステージを含むことができる。上述したように、モーションステージを有するロケーションを視ているカメラで随意のハンドアイ校正を実行して校正済み座標空間を確定することができる。ステップ５２０とステップ５３０で、第１ロケーションと第２ロケーションは適当な校正ターゲットを用いて校正できる。ステップ５４０で、カメラは第１ロケーションにあるワークピースの１以上の画像を取得し、それらの画像を使用してワークピース上の特徴ｆｅａｔｕｒｅｓＩｍａｇｅ１の位置を適当なビジョンシステムツールによって特定する。ステップ５５０で、これらの特徴は第１ロケーションの校正済み座標空間にマッピングできる（ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ１）。ステップ５６０で、プロセス５００は第１ロケーションの第１の校正済み座標空間におけるワークピース特徴ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ１（ステップ５５０から）を、保存されているワークピース座標空間にマッピングする変換ＷｏｒｋｐｉｅｃｅＦｒｏｍＣａｌｉｂｒａｔｅｄ１を次の関係に従って：計算する。
ｆｅａｔｕｒｅｓＷｏｒｋｐｉｅｃｅ＝ＷｏｒｋｐｉｅｃｅＦｒｏｍＣａｌｉｂｒａｔｅｄ１＊ｆｅａｔｕｒｅｓＣａｌｉｂｒａｔｅｄ１
ワークピース座標空間は、特徴パラメータの描画を含むワークピースのコンピュータ支援設計（ＣＡＤ）モデルに基づいて確定される。代替として、実行時ワークピース座標空間の仕様はワークピースの物理的測定によって、例えば座標測定機（ＣＭＭ）を用いて通常の技術に従い確定できる。パラメータは、マッピングプロセスによって使用するために保存される。
【００３３】
実行時ワークピースは、次にマニピュレータによって掴まれて第２ロケーションに動かされる。ここでカメラは実行時オブジェクトの画像を取得する（ステップ５７０）。この技術では、第２ロケーションで視られた１以上の特徴は、第１ロケーションで視られた／撮像された特徴と異なることがあろう。その結果として、障害、カメラの視野（ＦＯＶ）などのために同じ特徴が両ロケーションのカメラに見えないことがある。ステップ５８０で、第２ロケーションのカメラは、実行時ワークピース上で見える特徴ｆｅａｔＶｉｓＩｎ２Ｉｍａｇｅ２の位置を特定して、それらの位置が第２ロケーションの校正データに基づいてマッピングされる（ｆｅａｔＶｉｓＩｎ２Ｃａｌｉｂｒａｔｅｄ２＝Ｃａｌｉｂｒａｔｅｄ２ＦｒｏｍＩｍａｇｅ２＊ｆｅａｔＶｉｓＩｎ２Ｉｍａｇｅ２）。ワークピース座標空間で対応するポイントが見出される（ｆｅａｔＶｉｓＩｎ２Ｗｏｒｋｐｉｅｃｅ．）。ステップ５９０で、プロセス５００はステップ５６０からの逆変換ＷｏｒｋｐｉｅｃｅＦｒｏｍＣａｌｉｂｒａｔｅｄ１を用いて、第２ロケーションで見える特徴が第１ロケーションにあった場合には、第１の校正済み空間における当該特徴の位置を計算する。
ｆｅａｔＶｉｓＩｎ２Ｃａｌｉｂｒａｔｅｄ１＝Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＷｏｒｋｐｉｅｃｅ＊ｆｅａｔＶｉｓＩｎ２Ｗｏｒｋｐｉｅｃｅ．
ステップ５９２で、第１ロケーションから計算された特徴位置と、第２ロケーションで検出された対応する特徴位置を使用して、各ロケーションにおける座標空間を次の関係に従って結合する。
ｆｅａｔＶｉｓＩｎ２Ｃａｌｉｂｒａｔｅｄ１＝Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＣａｌｉｂｒａｔｅｄ２＊ｆｅａｔＶｉｓＩｎ２Ｃａｌｉｂｒａｔｅｄ２
【００３４】
ステージを含むロケーションがハンドアイ校正されている場合は、変換Ｃａｌｉｂｒａｔｅｄ１ＦｒｏｍＣａｌｉｂｒａｔｅｄ２はハンドアイ校正結果と組み合わせて使用して実行時の部品の組立を案内できる。
【００３５】
様々な実施形態において、画像座標空間から第１ロケーションの校正座標空間へのマッピングは合一であり得ることが明確に想定されている。この技術は、図３〜図５で述べたように、第２ロケーションが校正されて、第１ロケーションの画像特徴が第２ロケーションの校正座標空間にマッピングされる構成に適応する。
【００３６】
図６は、２つの離散したロケーション座標空間を結合するために想定されている別の技術に従う方法／プロセス６００の詳細を示しており、第１ロケーションのカメラと第２ロケーションのカメラはいずれも校正されない。この構成では各ロケーションは別個にハンドアイ校正することができ、両ロケーションはモーションステージに対して相対的に同じ共通座標空間に結合できることが想定されている。ステップ６１０で、各ロケーションを撮像するためにカメラを配置する。モーションステージを含むロケーション（即ち第１ロケーション）は、ステップ６２０でハンドアイ校正される。次に実行時ワークピースはステップ６３０でステージ−を含む第１ロケーションに置かれる。次にステップ６４０で実行時ワークピースは掴まれて第２ロケーションに動かされ、そこでカメラにより１以上の画像が取得される。ステップ６５０でワークピース上の特徴の位置が特定される。随意に、ワークピースのＣＡＤ又はＣＭＭ仕様が利用可能ならば、そのような特徴はワークピース座標空間のＣＡＤ又はＣＭＭ描画と対応させることができる。特徴から導かれた姿勢はリストＸｌ１に保存される。ステップ６６０でワークピースは再び掴まれて第１ステージ／ロケーションに戻される。ステップ６４０、６５０及び６６０は反復される。なぜなら、十分なデータが把捉されてリストＸｌ１に保存されるまで、ステージが動かされて反復ごとに新しい姿勢が確定されるからである（ステップ６８０）。次いでプロセス６００は（ステップ６７０の決定を経て）ステップ６９０に進み、ステップ６５０（リストＸｌ１）から蓄積されたデータを使用して第２ロケーションのカメラをハンドアイ校正する。こうして両ロケーションでカメラ校正された座標空間は、共通座標空間によってモーションステージに対して結合される。
【００３７】
方法／プロセス４００及び５００（図４のステップ４５０と４７０及び図５のステップ５５０と５８０）は、実行時ワークピースからの特徴抽出を反復的に行うことによって強化できる。この強化されたプロセス７００の概観が図７に記述されている。ステップ７１０で、第１ロケーションにある実行時ワークピースの１以上の画像が取得されて特徴が抽出／特定される。次にステップ７２０でワークピースはマニピュレータによって掴まれ動かされて特徴が抽出／特定される（上述したように同じ又は異なる特徴）。マニピュレータはワークピースを第１ロケーションに反復的に戻してその都度姿勢を大まかに変更するか（ステップ７３０）、又は大まかに異なる姿勢を有するワークピースの多数のインスタンスを移動する。即ち、それぞれ運動サイクルによりロケーション間を移動される同じワークピース又は一連の異なるワークピースで、特徴の抽出及び蓄積を多数回反復することにより校正の精度及び堅牢性を強化できる。十分な特徴データが得られるまで、ステップ７１０及び７２０で反復ごとに第１ロケーションと第２ロケーションで画像から特徴が抽出される。この閾値は、所定の数又は他の測定基準に基づいてよい。プロセス７００は次に（ステップ７４０の決定を経て）ステップ７５０に進み、そこで多数の姿勢から蓄積された特徴データを使用して、一般的に上述したように各ロケーションの座標空間を結合する。
【００３８】
実行時ワークピースを使用する組立プロセスにおいて２つの離散したロケーションの座標空間を結合するための上述した技術が、校正ターゲットの使用に付随する短所を回避することは明らかであろう。これらの技術は、各ロケーションを基準にカメラを配置するやり方にフレキシビリティを与える。これらの技術はまた特徴抽出など様々なステップを反復することにより精度の強化／精緻化を可能にする。これらの技術は、上述した公知の機械的構成又は反復的な試行錯誤方式に依拠する先行技術の短所も回避する。
【００３９】
以上、本発明の例示的な実施形態を詳細に説明した。本発明の精神と範囲を逸脱することなく種々の改変及び追加を行うことができる。上述した種々の実施形態の各々の特徴は、関連する新しい実施形態において多数の特徴の組み合わせを提供するのに適する限り、別の記載された実施形態の特徴と組み合わされてよい。更に、上に本発明の装置と方法の多数の別個の実施形態を記したが、ここに記載されたものは本発明の原理の応用を例示したものに過ぎない。例えば本明細書中で使用される「プロセス」及び／又は「プロセッサ」という言葉は広く解釈して、電子ハードウェア及び／又はソフトウェアをベースとする多様な機能及びコンポーネントント（代替として機能的「モジュール」又は「エレメント」と呼ぶことがある）を含むものとする。更に、図示されたプロセス又はプロセッサは他のプロセス及び／又はプロセッサと組み合わせ、又は種々のサブプロセス又はサブプロセッサに分割されてよい。そのようなサブプロセス及び／又はサブプロセッサは、本明細書に記載された実施形態に従って多様に組み合わせることができる。同様に、本明細書中の何らかの機能、プロセス及び／又はプロセッサは、プログラム命令の非一時的コンピュータ可読媒体からなる電子ハードウェア、ソフトウェア、或いはハードウェアとソフトウェアの組合せを用いて実施できることが明確に想定されている。加えて、本明細書で使用される様々な方向及び／又は向きを表わす用語、例えば、「垂直」、「水平」、「上」、「下」、「底部」、「頂部」、「側部」、「前部」、「後部」、「左」、「右」およびこれに類するものは、相対的な表現法として用いられているに過ぎず、重力の作用方向など固定した座標系を基準とした絶対的な向きを表わすものではない。例として、１つのロケーションはロケーションステージを含んでいるが、例えば第１のモーションステージは１軸に沿ってワークピースを動かし、第２のステージは他の直交軸（又は第１のステージによって提供されない回転）に沿ってワークピースを動かす場合には多数のロケーションがステージを含み得ることが想定されている。従ってこの記述は例示としてのみ受け取られるべきであり、本発明の範囲を別途制限することを意味するものではない。
【００４０】
特許請求の範囲
【図１】
2018169403.tif 000003
【図２】
2018169403.tif 000004
【図３】
2018169403.tif 000005
【図４】
2018169403.tif 000006
【図５】
2018169403.tif 000007
【図６】
2018169403.tif 000008
【図７】
2018169403.tif 000009
【外国語明細書】
2018169403000001.pdf