"マシンビジョンシステムおよびロボットの間の較正の決定方法であって、それぞれが前記ロボット用の作業域の少なくとも一部を網羅する視野を有する1つまたは複数のカメラを空間に固定するステップと、較正対象を前記ロボットの端部作動体に固定するステップと、前記ロボットによって前記ロボット用の作業域内で前記較正対象を複数の異なる姿勢に動かしつつ、前記較正対象の複数の画像を取得するステップと、前記1つまたは複数のカメラそれぞれからロボット座標系への変換を特定するステップであって、前記複数の画像における観測された特徴の組および予測された画像の特徴の組の間の差異を最適化するステップと、前記特定された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップと、を含むことを特徴とする較正の決定方法。前記較正対象が較正プレートを含むことを特徴とする請求項1に記載の較正の決定方法。前記複数の異なる姿勢それぞれには、少なくとも2つの平行でない軸の回りの回転が含まれていることを特徴とする請求項1に記載の較正の決定方法。前記回転は、少なくとも5°の回転とされることを特徴とする請求項3に記載の較正の決定方法。前記取得した画像以下、取得画像という。を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、異常値の組を決定するステップと、異常値の組を決定するステップに応じて、前記異常値を有する1つまたは複数の取得画像を削除し、減少された取得画像の組を生成するステップと、前記減少された取得画像の組を再配列して、所望の動きを取得するステップと、が含まれていることを特徴とする請求項1に記載の較正の決定方法。前記所望の動きには、前記減少された取得画像の組の特定の対の間の変化が含まれていることを特徴とする請求項5に記載の較正の決定方法。前記1つまたは複数のカメラそれぞれから前記ロボット座標系への変換を特定するステップが、前記1つまたは複数のカメラそれぞれの前記変換を同時に特定することを特徴とする請求項1に記載の較正の決定方法。前記変換が自由度6とされることを特徴とする請求項1に記載の較正の決定方法。マシンビジョンシステムおよびロボットの間の較正の決定方法であって、それぞれが前記ロボット用の作業域の少なくとも一部を網羅する視野を有する1つまたは複数のカメラをロボットの端部作動体に固定するステップと、較正対象を空間に固定するステップと、前記ロボットによって前記ロボット用の作業域内で前記1つまたは複数のカメラを複数の異なる姿勢に動かしつつ、前記較正対象の複数の画像を取得するステップと、前記1つまたは複数のカメラそれぞれから端部作動体座標系への変換を特定するステップであって、前記複数の画像における観測された特徴の組および予測された画像の特徴の組の間の差異が最適化されるステップと、前記特定された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップと、を含むことを特徴とする較正の決定方法。前記較正対象が較正プレートを含むことを特徴とする請求項9に記載の較正の決定方法。前記複数の異なる姿勢それぞれには、少なくとも2つの平行でない軸の回りの回転が含まれていることを特徴とする請求項9に記載の較正の決定方法。前記回転は、少なくとも5°の回転であることを特徴とする請求項11に記載の較正の決定方法。前記取得した画像以下、取得画像という。を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、異常値の組を決定するステップと、異常値の組を決定するステップに対応して、前記異常値を有する1つまたは複数の取得画像を削除して、減少された取得画像の組を生成するステップと、前記減少された取得画像の組を再配列して所望の動きを取得するステップと、が含まれていることを特徴とする請求項9に記載の較正方法。前記所望の動きには、前記減少された取得画像の組の特定の対の間の変化が含まれていることを特徴とする請求項13に記載の較正方法。前記1つまたは複数のカメラそれぞれからロボット座標系への変換を特定するステップが、前記1つまたは複数のカメラそれぞれの変換を同時に特定することを特徴とする請求項9に記載の較正方法。前記変換が自由度6とされることを特徴とする請求項9に記載の較正方法。マシンビジョンシステムおよびロボットの間の較正の決定方法であって、それぞれが前記ロボット用の作業域の少なくとも一部をカバーする視野を有する1つまたは複数のカメラを空間に固定するステップと、較正対象をロボットの端部作動体に固定するステップと、前記ロボットによって前記較正対象を前記ロボット用の作業域内で複数の異なる姿勢に動かしつつ、前記較正対象の複数の画像を取得するステップと、前記1つまたは複数のカメラそれぞれからロボット座標系への変換を特定するステップであって、観測されたデータおよび対応する予測されたデータの全てが同じカメラからのデータではない前記観測されたデータおよび対応する予測されたデータの間の差異の総計を最小化するステップ、と、前記特定された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップと、を含んでいることを特徴とする較正の決定方法。前記較正対象が較正プレートを含むことを特徴とする請求項17に記載の較正の決定方法。前記複数の異なる姿勢それぞれには、少なくとも2つの平行でない軸の回りの回転が含まれていることを特徴とする請求項17に記載の較正の決定方法。前記回転は、少なくとも5°の回転であることを特徴とする請求項19に記載の較正の決定方法。前記取得した画像以下、取得画像という。を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、異常値の組を決定するステップと、異常値の組を決定するステップに対応して、前記異常値を有する1つまたは複数の取得画像を削除して、減少された取得画像の組を生成するステップと、前記減少された取得画像の組を再配列して所望の動きを取得するステップと、が含まれていることを特徴とする請求項17に記載の較正の決定方法。前記所望の動きには、前記減少された取得画像の組の特定の対の間の変化が含まれていることを特徴とする請求項21に記載の較正の決定方法。前記1つまたは複数のカメラそれぞれからロボット座標系への変換を特定するステップが、前記1つまたは複数のカメラそれぞれの変換を同時に特定することを特徴とする請求項17に記載の較正の決定方法。前記変換が自由度6とされることを特徴とする請求項17に記載の較正の決定方法。マシンビジョンシステムおよびロボットの間の較正の決定方法であって、それぞれが前記ロボット用の作業域の少なくとも一部をカバーする視野を有する2つ以上のカメラをロボットの端部作動体に固定するステップと、較正対象を空間に固定するステップと、前記ロボットによって前記ロボット用の作業域内で前記2つ以上のカメラを複数の異なる姿勢に動かしつつ、前記較正対象の複数の画像を取得するステップと、前記2つ以上のカメラそれぞれから端部作動体座標系への変換を特定するステップであって、観測されたデータおよび対応する予測されたデータの全てが同じカメラからのデータではない前記観測されたデータおよび対応する予測されたデータの間の差異の総計を最小化するステップ、と、前記特定された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップと、を含んでいることを特徴とする較正の決定方法。前記較正対象が較正プレートを含むことを特徴とする請求項25に記載の較正の決定方法。前記複数の異なる姿勢それぞれには、少なくとも2つの平行でない軸の回りの回転が含まれていることを特徴とする請求項25に記載の較正の決定方法。前記回転は、少なくとも5°の回転であることを特徴とする請求項27に記載の較正の決定方法。前記取得した画像以下、取得画像という。を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、異常値の組を決定するステップと、異常値の組を決定するステップに対応して、前記異常値を有する1つまたは複数の取得画像を削除して、減少された取得画像の組を生成するステップと、前記減少された取得画像の組を再配列して所望の動きを取得するステップと、が含まれていることを特徴とする請求項25に記載の較正の決定方法。前記所望の動きには、前記減少された取得画像の組の特定の対の間の変化が含まれていることを特徴とする請求項29に記載の較正の決定方法。前記2つ以上のカメラそれぞれからロボット座標系への変換を特定するステップが、前記2つ以上のカメラそれぞれの変換を同時に特定することを特徴とする請求項25に記載の較正の決定方法。前記変換が自由度6とされることを特徴とする請求項25に記載の較正の決定方法。マシンビジョンシステムおよびロボットの間の較正の決定方法であって、それぞれが前記ロボット用の作業域の少なくとも一部をカバーする視野を有する1つまたは複数のカメラを空間に固定するステップと、較正対象を前記ロボットの端部作動体に固定するステップと、前記ロボットによって前記較正対象を前記ロボット用の作業域内で複数の異なる姿勢に動かしつつ、前記較正対象の複数の画像を取得するステップと、前記1つまたは複数のカメラおよび前記較正対象の間の推量された変換、および較正パラメータに対応する予測された変換によってマッピングされた点の位置とを比較することによって、前記推量された変換と前記予測された変換とを比較するステップ、と、前記1つまたは複数のカメラそれぞれからロボット座標系への変換を特定するステップであって、前記推量された変換および前記予測された変換によってマッピングされた前記点の位置の間の差異を最適化するステップ、と、前記特定された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップと、を含んでいることを特徴とする較正の決定方法。マシンビジョンシステムおよびロボットの間の較正の決定方法であって、それぞれが前記ロボット用の作業域の少なくとも一部をカバーする視野を有する1つまたは複数のカメラをロボットの端部作動体に固定するステップと、較正対象を空間に固定するステップと、前記ロボットによって前記較正対象を前記ロボット用の作業域内で複数の異なる姿勢に動かしつつ、前記較正対象の複数の画像を取得するステップと、前記1つまたは複数のカメラおよび前記較正対象の間の推量された変換、および較正パラメータに対応する予測された変換によってマッピングされた点の位置とを比較することによって、前記推量された変換と前記予測された変換とを比較するステップ、と、前記1つまたは複数のカメラそれぞれから端部作動体座標系への変換を特定するステップであって、前記推量された変換および前記予測された変換によってマッピングされた前記点の位置の間の差異を最適化するステップ、と、前記特定された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップと、を含んでいることを特徴とする較正の決定方法。マシンビジョンシステムおよびロボットの間の較正方法であって、カメラ姿勢およびロボット姿勢の対の組を取得するステップと、前記取得した対の組の中から対応するロボットの動きおよびカメラの動きを解析するステップと、前記解析に基づいて異常値を検出するステップと、検出した異常値が除去された状態で前記対の組を再配列して、所望の動きのカメラ姿勢およびロボット姿勢の対の組を取得するステップと、前記所望の動きのカメラ姿勢およびロボット姿勢の対の組を用いて、較正を実行するステップと、を含んでいることを特徴とする較正方法。前記所望の動きには、少なくとも5°の回転が含まれていることを特徴とする請求項35に記載の較正方法。前記所望の動きには、少なくとも2つの平行でない軸の回りの回転が含まれていることを特徴とする請求項35に記載の較正方法。前記対の組には、少なくとも3つのカメラ姿勢およびロボット姿勢の対が含まれていることを特徴とする請求項35に記載の較正方法。マシンビジョンシステムおよびロボットの間の較正方法であって、それぞれの画像が特定の姿勢に関連した、複数の姿勢の較正対象の画像の組を取得するステップと、前記取得画像を解析して前記取得画像のそれぞれにおいて測定された特徴位置の対の組を決定するステップと、ロボット動き対の組を使用して、前記マシンビジョンシステムおよびロボットの間の較正を計算するステップであって、それぞれのロボット動き対が前記複数の取得画像の2つ、および該2つの取得画像に関連した特定の姿勢を含んでいるステップと、を含んでいることを特徴とする較正方法。本発明の例示の実施形態がマシンビジョンおよびロボットの間のロバストな較正の装置および方法を提供して、当技術分野の不利な点を解決する。実例的には、ロボットが複数の姿勢に動かされて、較正プレートなどの較正対象の画像が取得され、該較正対象が、ロボットの端部作動体に添付され、正確に知られる位置の特徴を含んでいる。別法では、較正対象が、空間に固定され、カメラがロボットに実装され、次に複数の姿勢に動かされて、そこでの較正対象の画像が取得される。マシンビジョンシステムが用いられて取得画像を画像の中の特徴の位置を測定することで分析する。この特定のロボット姿勢および測定画像特徴位置が用いられてマシンビジョンシステムの座標系およびロボットの座標系の間の関係を決定する。典型的な静止カメラ周囲では、例示的に、本発明の例示の実施形態がそれぞれのカメラおよびロボット基準座標系の間で固有な自由度6の変換6DOFであるという制約を課し、ロボット端部作動体および較正プレートの間の固有な6DOFがあるという制約を明示的に課す。尚、本発明の別法においては、異なる自由度の数が用いられても良い。このように、6DOFの記述が単に代表として用いられるに過ぎない。本発明の例示の実施形態が複数のカメラからロボット、加えて個々のカメラ較正の、同時較正を実例的に可能とし、それ故に先ずロボットの加工対象物に対するカメラを較正して、次にロボットに対するマシンビジョンシステムを較正する必要がなくなる。カメラが、ロボットの作業域部分に拡がる視野を有する空間に実装されるか、ロボットの関節アームおよび/または端部作動体に実装されて良い。空間に実装されたカメラを本明細書では静止カメラと呼び、ロボットの関節アームおよび/または端部作動体に実装されたカメラを動くカメラと呼ぶ。1つのカメラが静止空間に実装される場合、本発明の例示の実施形態が2つの変換を計算し、該変換がロボットの座標系およびカメラの座標系の間の変換、較正対象の姿勢および端部作動体の姿勢の間の変換である。複数のカメラが空間に静止して実装される場合、本発明の例示の実施形態がロボットの座標系およびカメラの座標系のそれぞれの間の変換、および較正対象の姿勢および端部作動体の姿勢の間の変換を計算する。尚、用語の較正対象および較正プレートが本明細書では置き換え可能に用いられる。カメラの座標系が時にはカメラの姿勢と呼ばれる。較正対象の姿勢が時には較正対象の座標系と呼ばれる。1つまたは複数のカメラが較正されたときには、標準的な較正プレートの座標系がマシンビジョンの座標系と呼ばれる。マシンビジョンの座標系が時にはマシンビジョンシステムの世界座標系と呼ばれる。端部作動体の姿勢が時には端部作動体の座標系と呼ばれる。ロボットに対する端部作動体の姿勢が時にはロボット姿勢と呼ばれる。ロボットの座標系が時にはロボット基準の座標系と呼ばれる。尚、発明が、異なるカメラが異なる標準の較正プレート変換に対して較正され得る状況を扱える。換言すると、本発明の例示の実施形態が、1つまたは複数のカメラが異なるマシンビジョンシステムの座標系に対して較正された状況を扱える。これは、本発明がそれぞれのカメラの姿勢を推量し、カメラがマシンビジョンシステムの座標系に対して同じ姿勢に在る制約を必ずしも課さないからである。1つのカメラがロボットに実装される場合、2つの変換がはやり計算され、すなわち、ロボット座標系および較正対象の間の変換およびカメラ姿勢および端部作動体の姿勢と間の変換である。多重ロボット実装動きカメラを用いる場合、本発明がロボット座標系および較正対象の間の変換およびそれぞれのカメラ姿勢および端部作動体姿勢の間の変換を計算する。尚、マシンビジョンシステムの世界座標系が通常プレースホルダとして機能し、マシンビジョンシステムの世界座標系が通常本質的に物理的意味を有しない。その結果、単一の静止カメラに対して、ユーザが本発明によって計算されてハンドアイ較正変換を用いて、ロボット座標系に対するマシンビジョンシステムの世界座標系の間の変換を調節できる一方でカメラおよびマシンビジョンシステムの世界座標系の間の変換が変更されない。別法では、単一の静止カメラに対し、ユーザが本発明によって計算されてハンドアイ較正変換を用いて、カメラおよびマシンビジョンシステムの世界座標系の間の変換を調節できる一方でロボット座標系に対するマシンビジョンシステムの世界座標系の間の変換が変更されない。別法では、単一の静止カメラに対し、ユーザが本発明によって計算されてハンドアイ較正変換を用いて、端部作動体の座標系に対してマシンビジョンシステムの世界座標系を調節できる一方でカメラおよびマシンビジョンシステムの世界座標系の間の変換が変更されない。別法では、単一の静止カメラに対し、ユーザが本発明によって計算され、ハンドアイ較正変換を用いて、カメラおよびマシンビジョンシステムの世界座標系の間の変換を調節できる一方で端部作動体の座標系に対するマシンビジョンシステムの世界座標系の間の変換が変更されない。カメラ姿勢およびマシンビジョンシステムの世界座標系がこのように交換できるので、我々は時にはマシンビジョンシステムの世界座標系の推量をすることを指して、カメラ姿勢を推量することと呼び、カメラ姿勢を推量することを指して、マシンビジョンシステムの世界座標系を推量することと呼ぶ。本発明の上記およびさらなる有利な点が添付の図面と共に次の説明を参照することでより良く理解され、図面において類似の参照番号が特定または機能的に類似の構成要素を指す。本発明の例示の実施形態がハンドアイ較正を正確に改良する装置および方法を提供し、一方、例示的には、それらが動くカメラの場合に対して、それぞれのカメラおよび端部作動体の間の特別な6DOF自由度の変換であるとの制約を課し、静止カメラの場合に対してそれぞれのカメラおよびロボット基準の間の特別な6自由度の変換であるとの制約を課す。尚、本発明の別の実施形態では自由度の異なる数字が用いられる。このように、6自由度の記述がただ代表として挙げられる。さらには、本発明の例示の実施形態が、動くカメラの場合のロボットの座標系および較正プレートの間の特定の6自由度の変換があるという制約を例示的に課す。別法では、静止カメラの場合には、本発明の例示の実施形態が較正プレートの座標系および端部作動体の座標系の間の特定の6自由度の変換があるという制約を課す。例示的には、ロボットが特定の姿勢まで動かされ、正確に知られる物理的位置で特徴を有する較正対象の画像が取得される。本発明の例示の実施形態が物理的位置の特徴の正確な情報を含み、本発明の別の実施形態が知られた物理的位置の特徴を粗く用いる。較正対象が必ずしも平坦な対象物特徴すべてが同じ面にあるでなくても良い。別法では、較正対象が立方体などの3次元の対象物であっても良く、特徴が複数の面に存在する。別法では、較正対象が特徴が1つまたは2つの面に存在する円盤でも良い。別法では、較正対象が特徴を有する球状でも良い。別法では、較正対象が特徴を有する円柱でも良い。次にマシンビジョンシステムが画像の特徴の位置を測定することで取得データを分析して特定のロボット姿勢を測定した画像の特徴位置に関連させて、マシンビジョンシステムの座標系およびロボットの座標系の間の関係を決定する。本発明の例示の実施形態がそれぞれのカメラおよび端部作動体の間の特別な6自由度の変換があるという制約を明白に課し、かつ動くカメラに対するロボットの座標系および較正プレートの間の特別な6自由度の変換があるという制約を明白に課す分析を例示的に用いる。別法では、静止カメラの場合に、本発明の例示の実施形態がそれぞれのカメラおよびロボット基準の間の特別な6自由度の変換があるという制約を明白に課し、かつ較正プレートの座標系および端部作動体の座標系の間の特別な6自由度の変換があるという制約を明白に課す分析を例示的に用いる。本発明の例示の実施形態が静止較正プレートおよび静止ロボットを用いることに関連し、本発明の別の実施形態が非静止較正プレートおよび/または非静止ロボットを用いることに関連し、その結果、複数の6自由度の変換が用いられる。用語のカメラが電磁波を測定する検知構成要素および電磁波を屈折させるレンズの複合を指す。カメラ検知構成要素の例にはCCDセンサ、CMOセンサおよびサポート回路が含まれて輝度の2次元描写を形成する。レンズが通常用いられて、場面から電磁波をカメラ検知構成要素に焦点を絞る。カメラが時にはマシンビジョンカメラと呼ばれる。ハンドアイ較正用に、カメラおよびレンズが通常固定的に互いに位置付けられて一貫した観測をする。改良技術の1つの実施形態が、変換でマッピングされた点の間の距離を比較することで差異を考察することに関係する。改良技術の1つの実施形態が較正プレート上の物理的なすべての点、Piを考慮すること、およびAXB1およびZでマッピングされたそれら点間の物理的な空間の差異を考慮すること、を含む。Zによってマッピングされた物理的な各点Pi、すなわちロボット基台および較正プレートの間の変換が、ロボット座標系におけるPiの物理的な位置に対応する。加えて、AXB1でマッピングされた物理的な各点Piがやはりロボット座標系におけるPiの物理的な位置に対応する。2つの物理的な点の間の距離が特別であって良く知られる。それ故に、すべての変換でマッピングされたすべての点の差異の二乗総和、ΣAXB1Pi-Zpi2を検討でき、この構成が良く定義され、3次元の点の間の距離の測定に依存し、かつ固定変換の間の差異を推量することに依存しない。ΣAXB1Pi-Zpi2を最小にする実施形態が、カメラに対して較正プレート姿勢を推量することに依存するといった不利を免れ得なく、このような方法が次善の策であって、というのは、計算されたカメラ-較正プレート姿勢には初期の特徴データに及ばない情報しか含まれていないからである。各計算されたカメラ-較正プレート姿勢が、通常、ある方向において、他の方向よりも正確であり、該方向正確性情報がカメラ-較正プレート姿勢の中に含まれない。カメラ-較正プレート姿勢が、通常、ある方向において他の方向よりも正確であることは、較正プレートの向きの較正が通常較正プレートの傾きよりも正確に推量できるということを考慮すれば理解されよう。留意点の1つとして、TsaiとLenzおよびStroblとHirzingerにより記載されたような方法には、単一カメラを較正することを意図している欠点があることである。これらの方法が複数のカメラの同時に較正することを前提としていなく、各カメラがそれぞれに較正される。各カメラをそれぞれに較正することの欠点は、各個々の較正が異なる較正プレート姿勢を想定することであり、一方で較正プレートの姿勢がすべてのカメラに一貫していることが知られている。すべての関係する物理制約を組み込むことで、ほとんどの較正精度は常に改善する。他に、相対変換を考慮するTsaiとLenzの方法の欠点が、相対変換が一時的に連続するロボット姿勢に基づいていることである。結果、ロボット姿勢の異なる一時的に順番が異なるハンドアイ較正を伴う恐れがある。例示的に、本発明がロボット姿勢の順番に影響されないハンドアイ較正を提供する。この改良技術の例示の実施形態が、計算されたカメラ-較正プレート姿勢に依存する代わりに、観測される画像特徴位置から直接にハンドアイ較正のパラメータを推量する。改良技術の例示の実施形態において、装置が対応するカメラ上の三次元点の投影を推量し、推量二次元位置を測定した二次元位置と比較する。改良技術の別の実施形態において、各カメラにおける特徴点fiに対応する三次元光線riが較正プレートの対応する変換した点の三次元点と比較される。次に、これらの個々の比較からの寄与が二乗総和のように集計、統合されて、それによって、二乗総和差異を最小にするハンドアイ較正パラメータが推量される。さらに別の実施形態では、個々の比較の寄与がそれぞれのカメラからの距離によって重み付けされて、三次元の放射および対応する三次元の点の間の距離が画像差異に近付く。マシンビジョンカメラを視覚案内ロボットに対して実装する2つの基本的な方法がある。第1の例示の実施形態において、1つまたは複数のマシンビジョンカメラが、図1を参照して次に説明される、静止位置に実装されて、ロボットの作業域を見る。第2の例示の実施形態では、1つまたは複数のマシンビジョンカメラが関節のあるアームおよび/または端部作動体に取り付けられるその結果1つまたは複数のカメラがロボットと動くが、図2を参照して次に説明する。尚、マシンビジョン測定がロボットによって適宜に用いられるために、これら2つの基本的なマシンビジョンカメラの実装方法にはハンドアイ較正が必要である。1.較正周囲図1が本発明の例示の実施形態による典型的な周囲100の概略図であり、較正プレートが端部作動体に取り付けられて状態で、複数のカメラが空間に実装されてロボット較正へのマシンビジョンを実施するのに用いられる。周囲100が例示的には複数のカメラ105A、B、Cを有し、それらが空間的に固定され、それぞれが少なくとも周囲100の部分を見ている。カメラ105がそれぞれ、特別なカメラ座標系における視野の画像を取得する。3台のカメラ105A、B、Cが示されているが、本発明の主旨では何れの数のカメラで用いられても良い。尚、別の実施形態では、異なるカメラ数が用いられても良い。このように、3つのカメラの記載が単に例として取り上げられる。ロボットが例示的にロボット基台110および端部作動体120が端部に配設されている関節アーム115を備える。例示的には、ロボット基台110が周囲100内に固定される。本発明の例示の実施形態によれば、カメラ105の視野がロボット基台110に対して較正される。すなわち、ロボット基台110が較正に用いられるロボット座標系の原点として機能する。当業者が想定するように、ロボットがその端部作動体の繰り返し動作を実行して、ロボット基台に対して姿勢を取る。本発明の例示の実施形態がロボット基台の座標系に対してマシンビジョンシステムのロバストな較正を可能にする。関節アーム115が例示的に3つの区分を有して示される。しかしながら、別の実施形態では、異なる数の区分が用いられることに留意すべきである。このように、3つの区分の関節アーム115の記述が単に例として取りあげられている。関節アームを端部作動体に位置付ける他の方法が多くあり、端部作動体に位置付ける代替の駆動部には、リニアステージの複合や、スチュワートプラットフォームStuartplatformsなどが含まれる。さらには、端部作動体120が、機構的、電磁的、真空吸着などの従来技術に知られている何れの種類の端部作動体で構成されて良い。本発明の例示の実施形態によれば、較正プレート125が端部作動体120に付けられる。較正プレートが通常にマシンビジョンシステムに用いられる従来の較正プレートで構成されて良い。典型的な較正プレートがマサチューセッツ州ナティックのCognex社から販売されている。典型的な較正プレートがモデル番号320-5029RでCognex社から市販されている。代替の較正プレートおよび特徴の測定方法が米国特許第6,137,893号に記載されている。代替の較正プレートおよび特徴の測定方法が米国特許第6,816,187号に記載されている。代替の較正プレートおよび特徴の測定方法がIEEEJournalofRoboticsandAutomationVolumeRA-3、pages323-344に、RogerYTsaiによるAVersatileCameraCalibrationTechniqueforHigh-Accuracy3DMachineVisionMetrologyUsingOff-the-ShelfTVCameraandLensesに記載されている。しかしながら、本発明の別の実施形態によれば、較正プレートの異なる種類が用いられても良いことに留意されたい。較正プレートの1つの例が、較正パターンを表示する表示画面である。較正プレートの別の例が変わるパターンを表示する表示画面であって、複数の画像が異なるパターンの表示画面が得られ、結果の組合せが較正プレートの単一の取得とみなされる。このように、上記の援用される米国特許出願に記載の較正プレートが単に例として挙げられるに過ぎない。較正プレート125が端部作動体が動いている間にずれることのないように端部作動体に固定される。さらに下記に記載のように、関節アーム115および端部作動体120がカメラ105の視野内で複数の姿勢に動く。尚、較正プレートが別法では端部作動体ではなく駆動部の何れかに取り付けられ、しかしながら、この代替の状況では、当該のロボット姿勢が駆動部の適当な位置の姿勢に対応しなければならない。複数の姿勢から収集された画像データが、次に本発明の例示の実施形態で教示するように用いられて、較正変換を生成する。図2がマシンビジョンロボット較正用の代表的な周囲200の概略図であって、本発明の例示の実施形態によれば、複数のカメラがロボットの関節アームに固定される。較正プレート125が周囲200に固定される。例示的には、本発明の例示の実施形態によれば、較正プレートが固定されて較正処理中に動かない。ロボット基台110がやはり周囲200内に固定される。関節アーム115がロボット基台110に連結され、端部作動体120が関節アーム115の端末に配置される。関節アーム115の端部に固定されるのは複数のカメラ205A、Bである。カメラ205が例示的に関節アーム115および/または端部作動体120に固定される。カメラ205が動かないように固定されて関節アーム115および/または端部作動体120に影響されずに動かない。尚、本発明の例示の実施形態によれば、カメラ205が何れの数で用いられて良い。このように、2つのカメラ205A、Bが用いられる説明は単に例として挙げられているに過ぎない。さらに図4を参照して次に記載のように、関節アーム115および/または端部作動体120が様々な姿勢に動いて、較正プレート125の画像が取得される。尚、本発明の例示の実施形態によれば、別には、カメラが端部作動体とは別の駆動部の何れの部分に取り付けられ、しかしながら、この別法の状況では、当該のロボット姿勢が駆動部の適切な位置の姿勢に対応しなければならない。さらには、この別法の状況では、異なるカメラが駆動部の異なる部分に取り付けられなければならない。取得された画像から、較正情報が取得または計算されて、図5を参照して次に記載される制御システム図示せずがロボット基台座標系に関してロボットを制御できる。2.固定の静止のカメラを用いての較正例示的には、1つまたは複数の静止カメラのハンドアイ較正用に、較正プレートなどの較正対象がロボットの関節アームおよび/または端部作動体の何れに動かずに固定され、ロボットが様々な姿勢に動いて、その結果、較正対象が1つまたは複数のカメラで見られる。較正対象の取得画像がロボット姿勢と一緒に保存される。単一の静止カメラの場合、ハンドアイ較正が例示的に2つの変換、1マシンビジョンシステムの世界座標系に関するロボットの座標系、2較正対象の姿勢および端部作動体の姿勢の間の変換、を推量することで実行される。カメラが外因性および内因性の両方のパラメータ用に前較正pre―calibratedされ、カメラ較正がハンドアイ較正の間および後で一定に保たれることが考えられる。カメラ較正にはカメラの姿勢およびマシンビジョンシステムの世界座標系の間の変換が含まれるので、本質的にマシンビジョンシステムの世界座標系を推量することはカメラの姿勢を推量することであり、というのは、カメラの姿勢が一定に保たれるカメラ較正変換を介してマシンビジョンシステムの世界座標系に連結されるからである。尚、ハンドアイ較正用に取得された画像がカメラすなわち、外因性および内因性パラメータを決定するを較正するのに用いることもでき、このように、カメラがハンドアイ較正の前に較正されなくても良く、というのは、ハンドアイ較正手順が例示的に最初のステップとしてハンドアイ較正を含んで良いからである。ハンドアイ較正の間、カメラが定位置に動かずにいると共にロボット基台が定位置に動かずにいるので、ロボットの座標系が一定に保たれると共に、マシンビジョンシステムの座標系も一定に保たれる。したがって、ロボット座標系および視覚装置の座標系の間の変換は1つだけである。同様に、ハンドアイ較正の処理中、較正対象が関節アームおよび/または端部作動体に動かずに固定維持されるので、端部作動体の姿勢を較正対象の姿勢に関係させる変換は1つだけである。変換Gがロボットの座標系からマシンビジョンシステムの座標系へ移す。変換Hが較正対象から端部作動体の姿勢へ移す。マッピングPがマシンビジョンシステムの座標系の3次元の点から取得画像の2次元の点に移すように、カメラが計算されているものと仮定する。カメラの較正および対応するマッピングPがハンドアイ較正の間中およびその後で一定に維持されることが考えられる。変換Riが端部作動体姿勢ステップiにおけるからロボット座標系へ移す。用語のxi,u,v,wがステップiにおける画像特徴抽出によって観察される画像特徴のx座標系を指し、較正対象の物理的な座標系u,v,wに対応するものとする。用語のyi,u,v,wがステップiにおける画像特徴抽出によって観察される画像特徴のy座標系を指し、較正対象の物理的な座標系u,v,wに対応するものとする。したがって、xi,u,v,w、yi,u,v,wが取得画像の発見された特徴の2次元の位置である。この取得画像の2次元の位置が較正対象の3次元の位置u,v,wに対応する。較正対象の3次元の位置u,v,wが端部作動体の3次元の位置Hu,v,wに対応する。端部作動体の3次元の位置Hu,v,wがロボット座標系における3次元の位置RiHu,v,wに対応する。ロボット座標系の3次元の位置RiHu,v,wがマシンビジョンシステムの座標系における3次元の位置GRiHu,v,wに対応する。3次元の位置GRiHu,v,wが取得画像の2次元の位置PGRiHu,v,wに対応する。取得画像に発見された特徴の2次元位置xu,v,w,yu,v,wがそれぞれ推定される2次元位置PGRiHu,v,wに対応する。発見された2次元の特徴位置それぞれに対して、発見された2次元の特徴位置が推定された2次元位置と比較されて、画像座標系における差異、PGRiHu,v,w-xi,u,v,w、yi,u,v,wを生成する。差異二乗総和Σ|PGRiHu,v,w-xi,u,v,w、yi,u,v,w|2が、実際の測定データおよび予測データの間の差異を連結させたものである。本発明の例示の実施形態によれば、実際に測定されたデータおよび予測されたデータの間の最小の残留二乗総和を生じるGおよびHパラメータを解くことによって、ハンドアイ較正が改善される。尚、Hが自由度66DOFであり、マシンビジョンシステムの座標系およびロボット座標系の間の変換をパラメータ化する並進に3自由度、回転に3自由度。尚、Gが6自由度6DOFであり、較正対象で画定される較正物理座標系および端部作動体座標系の間の変換をパラメータ化する並進に3自由度、回転に3自由度。Ga、Gb、Gc、Gc、Gx、Gy、GzがGの6変数パラメータとされ、Ha、Hb、Hc、Hx、Hy、HzがHの6変数パラメータとされる。EGa,Gb,Gc,Gc,Gx,Gy,Gz,Ha,Hb,Hc,Hx,Hy,Hz|測定画像特徴位置、対応較正位置、および対応ロボット姿勢が、12変数Ga,Gb,Gc,Gc,Gx,Gy,Gz,Ha,Hb,Hc,Hx,Hy,Hz、および測定画像特徴位置、対応の較正位置、および対応のロボット姿勢で決まる二乗総和誤差関数を指すものとする。Eが|PGRiHu,v,w-xi,u,v,w、yi,u,v,w|2から個々の寄与を繰返し加算することに基づいて数値的に計算される。例示の実施形態では、ハンドアイ較正のパラメータがTsaiとLenzの方法の変体を用いて、最初に大雑把に推量される。InternationalJournalofRoboticsResearch、Volume18,No.3,page286-298に記載されたDaniiliidisHandEyeCalibrationUsingDualQuaternionsに記載された技術が、その内容が本明細書に援用されるが、例示的に用いられて、ハンドアイ較正パラメータを大雑把に推量する。別の実施形態では、ユーザがハンドアイ較正パラメータの粗い推量値を手で入力する。他の実施形態では、コンピュータプログラムがハンドアイ較正パラメータの粗い複数の推量値を挙げてこれら列記された粗い推量値をそれぞれ精度を上げて、最低の残留を発生する精度の上げられたハンドアイ較正パラメータを選択する。例示的には、本発明の例示の実施形態が勾配降下技術を用いてパラメータ値を改良して、Eを最小にするパラメータ値を探す。GおよびHの3次元回転のパラメータがハンドアイ較正に対応する変換の粗い推量を用いる。四元法算法が3次元の回転空間をパラメータ化するよく知られた効果的な方法であるが、該四元法算法は4つのパラメータ、s0、s1、s2、s3を有するということから免れられない。四元法算法が、幸いなことに、投影される座標系について規定されるので、4つの値rs0、rs1、rs2、rs3をスケーリングすることが3次元回転に影響されない。その結果、1つの値の固定された座標系表示が規定されて、そこで四元法算法の4つの値の1つが1または-1に固定されて他の四元法算法座標系の3つが3つのパラメータに対応する。このパラメータ化が有効であり、というのは、おおよその3次元の回転が粗い推量から知られ、したがって1または-1として固定する該四元法算法座標系が適当に選択されるからである。特には、Levenberg-Marquette最適化技術が例示的に用いられ、傾斜降下を実行して、誤差関数の偏導関数が局所的極値において0であり、Levenberg-Marquette技術が連立方程式について解を同時に数学的に解き、この場合、偏導関数のセットが、dE/dGa、dE/dGb、dE/dGc、dE/dGx、dE/dGy、dE/dGz、dE/dHa、dE/dHb、dE/dHc、dE/dHy、dE/dHz、である。ここで、EはGa、Gb、Gc、Gx、Gy、Gz、Ha、Hb、Hc、Hy、Hzの関数なので、その偏導関数はすべてGa、Gb、Gc、Gx、Gy、Gz、Ha、Hb、Hc、Hy、Hzの関数で良い。Levenberg-Marquette技術を用いるために、Eの偏導関数が任意のパラメータ値で計算される必要がある。用語ベクトルJはパラメータ値の任意選択を指す。Eの偏導関数の第1次数が各独立値について数学的に推量でき、それは構成configurationJで計算されたEおよび隣接の構成で計算されたEの間の差分を計算することでなされ、該隣接の構成が構成Jの周りで対称かつ値の1つにおいてわずかに異なるものとされ、次いで、対称構成での変数値の間の差分で除算する。たとえば、GcについてのEの偏導関数が構成Jで計算でき、該計算がE値の差分および変数の差分の間の比率EGaJ,GbJ,GcJδ,GxJ,GyJ,GzJ,HaJ,HbJ,HcJHxJ,HyJ,HzJ-EGaJ,GbJ,GcJ-δ,GxJ,GyJ,GzJ,HaJ,HbJ,HcJHxJ,HyJ,HzJ/2δを計算することでなされる。例示的には、δに対する10Λ-4の値が用いられが、他の実施形態ではδの異なる値を用いることもできる。別の実施形態では、変数に関するEの偏導関数が構成Jにおいて非対象標本構成を用いて計算され、たとえば、該計算がE値の差分および変数の差分の間の比率EGaJ,GbJ,GcJδ,GxJ,GyJ,GzJ,HaJ,HbJ,HcJHxJ,HyJ,HzJ-EGaJ,GbJ,GcJ,GxJ,GyJ,GzJ,HaJ,HbJ,HcJHxJ,HyJ,HzJ/δを計算することでなされる。別の実施形態が変数に関するEの偏導関数を解析的に計算することができ、該計算が誤差関数Eに対する解析式を立てることでなされる。記号を用いて計算された偏導関数が数値を用いて計算された偏導関数よりも正確であり、またユーザが数値の偏導関数を計算するステップサイズを選択する必要がない。第1に、汎用代数誤差関数が、1つの2次元画像特徴位置および対応する3次元較正特徴位置の間の誤差、およびロボット姿勢を不明のパラメータの多変数代数式を特徴づけて公式化する。内部的には、Levenberg-Marqaudt最適化方法が最適化されるべき式の偏導関数を含む。式の系が誤差関数の偏導関数であるので、Levenberg-Marqaudt技術が用いる偏導関数がE関数の第2次偏導関数となる。第2次偏導関数が2つの変数に対して数値的に推量され、該推量がdE/dvar偏導関数における差分変数の1つにおける小量で分離されると該小量との間の比率を数値的に計算してなされる。たとえば、Gcに対するEの第2次偏導関数が構成Jにおいて計算でき、すなわち、dE/dvarGaJ,GbJ,GcJε,GxJ,GyJ,GzJ,HaJ,HbJ,HcJHxJ,HyJ,HzJ-dE/dvarGaJ,GbJ,GcJ,GxJ,GyJ,GzJ,HaJ,HbJ,HcJHxJ,HyJ,HzJ/εで計算される。例示の実施形態では、最大100の反復が用いられ、Levenberg-Marqaudt最適化に対して、εの10Λ-4の値、ラムダの10Λ-2の値、δの10Λ-6の値が計算される。変数ラムダが通常Levenberg-Marqaudt最適化に対するダンピングファクタとして参照して用いられる。尚、このハンドアイ較正の方法が各カメラおよび端部作動体の間に特別な6自由度変換があるという制約が明示的に課され、一方で、ロボット座標系および較正対象で画定される物理的座標系の間に特別な6自由度があるという制約を実行する。というのは、ハンドアイ較正方法が各カメラおよび端部作動体の間の6自由度変換、およびロボット座標系および較正プレートの間の6自由度変換をパラメータ化するからである。これらの制約が実際の物理系を正確に反映し、これらのハンドアイ較正方法における制約を課すことで、これら制約の係らないハンドアイ較正方法よりも、正確なハンドアイ較正方法を提供する。本発明の別の態様の実施形態が、端部作動体に関係する複数のカメラの姿勢および較正プレートの姿勢について同時に較正することに関わる。発明のこの態様において、各カメラ姿勢が各カメラに対する6パラメータを用いてそれぞれパラメータ化される。これにより、n台のカメラのハンドアイ較正をする全体システムが6n6パラメータを含み、その中で、6nパラメータがn台のカメラ用の、6パラメータが端部作動体に対する較正対象の姿勢用である。ハンドアイ較正が各カメラに対する異なるマシンビジョン座標系を考慮することで、複数のカメラに実行される。このことは、特定のカメラの較正が各カメラに想定されマシンビジョン座標系の若干異なる姿勢がそのカメラのカメラ較正で特定されるよりも若干異なるカメラ姿勢と等しい。さらに、各カメラに対して異なるマシンビジョン座標系を特徴づけるこのアプローチが、ハンドアイ較正を改良するための体系に容易に組み込まれる。1つのカメラに対するハンドアイ較正に用いられる12のパラメータ、G1a,G1b,G1c,G1x,G1y,G1z,Ha,Hb,HcHx,Hy,Hzと比べて、ハンドアイ較正がハンドアイ較正を特徴づけるために、6n1パラメータ、G1a,G1b,G1c,G1x,G1y,G1z,G2a,G2b,G2c,G2x,G2y,G2z、...Gna,Gnb,Gnc,Gnx,Gny,Gnz、Ha,Hb,HcHx,Hy,Hzを用いる。複数のカメラのシステムにハンドアイ較正を実行するために、xki,u,v,w,yki,u,v,wをカメラkに対応する取得画像において発見された特徴の2次元位置とする。取得画像のこの2次元の位置が較正対象における3次元位置u,v,wに対応する。較正対象の3次元位置u,v,wが端部作動体における3次元位置Hu,v,wに対応する。端部作動体における3次元位置Hu,v,wがロボット座標系の3次元位置RiHu,v,wに対応する。ロボット座標系の3次元位置RiHu,v,wがカメラkのマシンビジョンシステムの座標系における3次元位置GkRiHu,v,wに対応する。3次元位置GkRiHu,v,wがカメラkの取得画像における2次元位置PkGkRiHu,v,wに対応する。各xki,u,v,w,yki,u,v,wが予測される2次元位置PkGkRiHu,v,wに対応する取得画像の発見された特徴の2次元位置である。各発見された2次元の特徴の位置用に、発見された2次元の特徴の位置が予測される2次元位置と比較して差異、PkGkRiHu,v,w-xki,u,v,w,yki,u,v,wを生成する。この差異の二乗が、|PkGkRiHu,v,w-xki,u,v,w,yki,u,v,w|2である。これら差異の二乗の総和がΣ|PkGkRiHu,v,w-xki,u,v,w,yki,u,v,w|2である。例示の実施形態では、マシンビジョンシステムの座標系を画定する較正対象姿勢がハンドアイ較正用の画像の1つを取得するように用いられるように、画像の取得および較正対象の位置が配置される。例示的には、これがハンドアイ較正用に取得された画像を、カメラ較正用の画像として用いて実現され、そこでは、ハンドアイ較正に用いられる画像の1つが、カメラ較正用のマシンビジョン座標系を画定するために用いられる画像である。別法では、先ずハンドアイ較正用の画像を取得し、次に較正対象を同じ姿勢のままでハンドアイ較正用に先ず取得した画像をマシンビジョン座標系を画定する画像として用いることで、これが実現される。図3が、本発明の例示の実施形態による、固定カメラを用いてマシンビジョンをロボット較正に実行する代表的な手順300のステップを詳述する流れ図である。手順300がステップ305で始まりステップ310に続くが、ここで1つまたは複数のカメラが空間に固定される。上記のように、本発明の例示の実施形態では、複数のカメラを同時に較正できる。例示的には、較正に用いられるカメラが環境の中に固定され、そこで、動くことのできないようにして用いられる。較正プレートがステップ315で関節アームの端部作動体に固定される。別の実施形態では、較正プレートが端部作動体ではなく関節アームの1つの区分に固定せれても良い。このように、較正プレートが端部作動体に固定されることが単に例として取り上げて説明されたに過ぎない。次いでステップ320で端部作動体が複数の姿勢に動いて、各複数の姿勢における較正プレートの画像が取得される。例示的には、これら姿勢の中の動きが少なくとも2つの非平行軸の回りの回転を含む。さらには、較正情報を良く取得するように、回転角度が少なくとも5°とされる。これが必須の条件ではないが、様々な姿勢の間の大きな回転および動きに対して改良された結果が得られる。次いでステップ325で、画像特徴抽出技術が取得画像において実行されて較正プレートにおける特徴を抽出する。例示的には、特徴抽出ステップがCohnex社からその特徴検出器として市販されているような技術を用いる。特徴を測定する別の方法が、米国特許第6,137,893に記載されている。特徴を測定する別の方法が、米国特許第6,816,187に記載されている。特徴を測定する別の方法が、IEEEJournalofRoboticsandAutomationVolumeRA-3、No4、pages323-344に、RogerYTsaiによるAVersatileCameraCalibrationTechniqueforHigh-Accuracy3DMachineVisionMetrologyUsingOff-the-ShelfTVCameraandLensesに記載されている。尚、しかしながら別の実施形態では、様々な特徴抽出技術が用いられて良い。このように、上記の援用される米国特許に記載の技術を用いることが単に例として取り上げて説明されたに過ぎない。さらに、本発明の別の実施形態では、特徴抽出がたとえば3次元カメラ、レンジカメラ、共に動作して3次元情報を供給する構造的な照明およびカメラの複合、感熱カメラを用いる熱特徴検出器などからの3次元特徴を用いることを含んだ、様々な技術を用いて良い。たとえば、2つ以上のカメラが較正プレートを見て各特徴の3次元位置を測定するステレオカメラ装置が用いられても良い。別法では、不均一レンズや、ミラー、ホログラフレンズなどの複数の独自光路と一緒に用いられる単一検知要素が複数の個別カメラとなることが検討されても良い。別法では、同じ光路を共有する複数検知要素が単一カメラとなることが検討されても良い。このように、従来のマシンビジョンシステムを用いる特徴検出が単に例として取り上げて説明されたに過ぎない。各カメラに対して、較正プレート姿勢各カメラに対する較正プレートの姿勢が次いでステップ330で計算される。すなわち、固有データおよび知られる特徴位置および観察された特徴位置の間の相関性を用いて、カメラの姿勢が較正プレートに対して計算される。このステップがカメラの固有パラメータが前較正されていることを想定している。しかしながら、別の実施形態では、カメラが収集したデータを用いて較正されて、よって最初のカメラの較正および次のマシンビジョンシステムおよびロボットの間の較正の実行といった2つのステップをスキップして良い。カメラ較正が、たとえば米国特許第6,816,187記載されたような良く知られた技術を用いて実行されても良い。別法では、IEEEJournalofRoboticsandAutomationVolumeRA-3、No4、pages323-344に、RogerYTsaiによるAVersatileCameraCalibrationTechniqueforHigh-Accuracy3DMachineVisionMetrologyUsingOff-the-ShelfTVCameraandLensesに記載されている技術を用いて、カメラ較正が実行されても良い。尚、本発明の別の実施形態では、様々な形式のカメラ較正が用いられて良い。このように、上記に援用された米国特許出願を用いるカメラ較正が単に例として取り上げて説明されたに過ぎない。対応するロボット姿勢と共に取得された画像が、次いでステップ335で処理される。この予備の処理が例示的にプレートおよびロボットの動きを記述する。各対の画像およびロボット姿勢が次いで動きを最大にするように再配列される。ステップ330で前較正されたカメラのパラメータで計算された各プレート姿勢の場合、各2つのプレート姿勢の間の動きが計算される。同様に、2つのロボット姿勢の間の動きが計算される。プレート動きおよびロボット動きの対が次いですべて計算されて、差異が所定の閾値でカットされるそれら対が例示的に異常値に見なされて動き対から除かれる。ロボットの動きおよび較正プレートの動きに対して、単一軸の回りの等価な回転を用いて表すならば、またはスクリュモーションを用いて表すならば、回転角が理想状況に等しくなる。したがって、ロボットの動きおよび較正プレートの動きの間の同じ対との回転角の差が、差異として用いることができる。再配列によってシステムが任意の順番の姿勢から一定動作を抽出し、実質的に回転を有する動きを用い、その結果、より安定で正確でロバストな較正が決定される。較正系が次いでステップ340でロボット基台座標系における変換を特定する直線系を解く。上記のように、これが例示的に変体をTsaiとLenzの技術に用いる。尚、ステップ330~340が本発明の別の実施形態においては任意である。別法では、カメラ-ロボット変換および端部作動体-較正位置変換の推量がステップ342で得られる。その変換が次いでステップ345で改善される。上記の予測された2次元特徴位置および発見された位置の間の差異の二乗総和を最小にすることに基づいて改善される。別法では、端部作動体から較正プレートまでの変換、および各カメラからロボット座標系までの変換の初期推量が先ず報告のロボット姿勢および計算されたロボット姿勢の中の差異を変換を用いて最小にする独立した精密化により改善される。次いで、精密化された変換が2次元特徴位置差異ベースの精密化ステップに送られる。別法では、チェックステップが精密化された後に付加されて、精密化結果が特定のチェック基準値対して精密化されていない結果よりも良好な結果でない場合に、精密化結果を無視することもできる。変換一貫精密化報告されたロボット姿勢および計算されたロボット姿勢の中の差異を変換を用いて最小にするがやはり複数カメラ、すなわち、複数の固定カメラを同時に精密化して、較正プレート座標系からロボット端部作動体座標系への1つの変換だけである。変換一貫精密化の一例が次の通りである。Zがカメラ座標系からロボット基台座標系への変換を表わすものとする。Xが較正プレート系からロボットの端部作動体系への変換を表わすものとする。Biが位置iでのロボット姿勢ロボット端部作動体座標系からロボット基台座標系への変換である。Aiが位置iでの1つのカメラに対する較正プレート姿勢較正プレート座標系からカメラ座標系への変換である。変換Aiが時には測定された変換と呼ばれる。合成Z_inverseBiXが時には予期された変換と呼ばれる。次の合成が恒等変換identitytransform較正プレート座標系から較正プレート座標系への変換なのでと言える。Ai_inverseZ_inverseBiX精密化の目的が各Ai_inverseZ_inverseBiX、およびすべてのカメラおよび動きへの恒等変換の間の総合差異を最小にすることである。ハンドアイ較正の応用において、2つの変換または2つの姿勢の間の差異を計算する例示的に方法が次のように作業空間次元を用いることに基づく。ロボット視覚応用の作業容積が境界ボックスで表わされ、次いで変換X1および変換X2の間の差異が、境界ボックスの8つのマッピングされた頂点の位置を比較して測定できる。ΣXivi-X2vii=1-8例示的にステップが、変換一貫精密化からの精密化の変換を用い、それを画像特徴ベースの精密化に供給される。そこで初期推量がさらにより精密化されて、精密化の変換が画像特徴を用いることにより高速化され、かつ最小局所に閉じ込められることを避けることができる。チェック用基準の一例が、精密化前の二乗平均差異と比較されるように、精密化後に計算される画像座標系における差異の二乗平均平方根rmsである。ある場合では、ロボット動きがマシンビジョン程度に正確でなくても良く、正確でないロボット姿勢に基づいたカメラ-端部作動体変換およびロボット基台-較正プレート変換に、精密化が過剰となるかもしれない。精密化前後の残余を比較することで、精密化の結果を取り込むかを決めることができる。精密化が向上したかどうかを判断する別の方法では、カメラ較正の画像座標系における差異の二乗平均平方根rmsで精密化された後に計算された画像座標系における二乗平均差異を比較する。精密化後の残余をカメラ較正に関連する残余と比較することで、精密化の結果を取り込むかを決めることができる。次いでステップ350でカメラ/マシンビジョンシステムが変換で設定される。カメラ/マシンビジョン設定により、装置がロボット基台座標系に関してマシンビジョンシステムによって視覚される位置を報告することができる。次いでステップ355で手順300が完了する。C.動くロボットに実装のカメラを用いた較正例示の実施形態において、カメラが関節アームに固定されて、端部作動体に従って変形される。較正対象がカメラで視覚されるように位置付けられて、ロボットアーム/端部作動体が様々な姿勢に動いて較正対象が1つまたは複数のカメラで視覚される。較正対象の取得画像がロボット姿勢と合わせて再配列される。単一固定カメラのハンドアイ較正の方法と同様に、単一の動きカメラのハンドアイ較正が2つの変換を計算することで実行され、それは、1較正対象で規定されるロボット座標系および物理座標系の間の変換、2カメラのマシンビジョン座標系および端部作動体の姿勢の間の変換である。ロボット基台および較正対象がハンドアイ較正手順の間は静止しているので、ロボット座標系および較正対象の間の1つの変換しかない。同様に、ハンドアイ較正の間はカメラが端部作動体に対して固定して位置付けられたままなので、端部作動体の姿勢をカメラの姿勢に関連させる1つの変換しかない。さらに、静止カメラのハンドアイ較正の方法と同様に、動くカメラのハンドアイ較正がハンドアイ較正画像をすべて用いてハンドアイ較正を実行し、その結果、カメラがハンドアイ較正に先んじて前較正される必要がない。変換Gがロボット座標系から較正対象の座標系へ移す。GΛ-1変換が較正対象の座標系からロボット座標系へ移す。変換Hがカメラのマシンビジョンシステム座標系から端部作動体姿勢へ移す。変換HΛ-1が端部作動体姿勢からカメラのマシンビジョンシステム座標系へ移す。マッピングPがマシンビジョンシステム座標系における3次元の点から取得画像における2次元の点へ移すようにカメラが較正されると仮定する。ハンドアイ較正手順およびその後で、カメラ較正内部および外部パラメータおよび対応するマッピングPが一定であるものと仮定される。用語Riが端部作動体姿勢ステップiにおけるからロボット座標系へ移す変換を指すものとする。用語RiΛ-1がロボット座標系ステップiにおけるから端部作動体姿勢ステップiにおけるへ移す変換を指すものとする。用語xi,u,v,wが、較正対象上の物理座標系u,v,wに対応するステップiにおける画像特徴位置のx座標系を指すものとする。用語yi,u,v,wが、較正対象上の物理座標系u,v,wに対応するステップiにおける画像特徴位置のy座標系を指すものとする。各xi,u,v,w,yi,u,v,wが取得画像における発見された特徴の2次元の位置である。取得画像のこの2次元の位置が較正対象における3次元位置u,v,wに対応する。較正対象の3次元位置u,v,wがロボット座標系における3次元位置GΛ-1u,v,wに対応する。ロボット座標系における3次元位置GΛ-1u,v,wが端部作動体における3次元位置RiΛ-1GΛ-1u,v,wに対応する。端部作動体の座標系における3次元位置RiΛ-1GΛ-1u,v,wがカメラのマシンビジョンシステムの座標系における3次元位置HΛ-1RiΛ-1GΛ-1u,v,wに対応する。3次元位置HΛ-1RiΛ-1GΛ-1u,v,wが取得画像における2次元位置PHΛ-1RiΛ-1GΛ-1u,v,wに対応する。取得画像の発見された特徴の各xi,u,v,w,yi,u,v,w2次元位置が予測される2次元位置PHΛ-1RiΛ-1GΛ-1u,v,wに対応する。各発見された2次元特徴位置に対して、発見された2次元特徴位置が予測された2次元位置を比較されて差異PHΛ-1RiΛ-1GΛ-1u,v,w-xi,u,v,w,yi,u,v,wが生成される。この差異の距離の二乗が、|PHΛ-1RiΛ-1GΛ-1u,v,w-xi,u,v,w,yi,u,v,w|2である。これら差異の二乗の総和がΣ|PHΛ-1RiΛ-1GΛ-1u,v,w-xi,u,v,w,yi,u,v,w|2であって、画像座標系における実際の測定データおよび予測された位置の間の複合差異に対応する。例示的には、実際の測定データおよび予測された位置の間の差異の最小二乗総和を発生するGおよびHパラメータを解くことで、ハンドアイ較正が計算される。パラメータ値が実際の測定データおよび予測された位置の間の差異の二乗総和を最小にするGおよびHに対して解かれる。動くカメラ、すなわちカメラがロボットに実装されているカメラ、のハンドアイ較正の方法が、静止カメラのハンドアイ較正の方法と類似する。単一の静止カメラのハンドアイ較正の方法と同じように、単一の実装カメラのハンドアイ較正がやはり12変数Ga、Gb、Gc、Gx、Gy、Gz、Ha、Hb、Hc、Hx、Hy、Hzに関する系をパラメータ化し、そして、先ず、ハンドアイ較正の粗い推量を計算し、次いで傾斜降下などの最適化方法を用いてパラメータ推量を精密化する。単一静止カメラのハンドアイ較正の方法と同じように、単一の動くカメラのハンドアイ較正の方法がやはり誤差関数EGa、Gb、Gc、Gx、Gy、Gz、Ha、Hb、Hc、Hx、Hy、Hzを計算し、該機能が実際の測定された特徴位置および予測された特徴位置の間の二乗総和差異を特徴付けて傾斜降下などの最適化方法を用いてパラメータを精密化する。単一の静止カメラのハンドアイ較正の方法と同じように、単一の動くカメラのハンドアイ較正の方法の例示の実施形態が、やはり誤差関数の偏導関数の系においてLevenberg-Marquadtを用い、ここで、これらの偏導関数が数値的に計算される。複数の静止カメラのハンドアイ較正の方法と同じように、複数の動くカメラのハンドアイ較正の方法の例示の実施形態がやはり複数のカメラを扱うが、これは、異なるマシンビジョンシステム座標系を各カメラに関連させ、6n6パラメータを用い、ハンドアイ較正この場合は1つのG変換およびnのH変換であるがGa、Gb、Gc、Gx、Gy、Gz、H1a、H1b、H1c、H1x、H1y、H1z、H2a、H2b、H2c、H2x、H2y、H2z...Hna、Hnb、Hnc、Hnx、Hny、Hnzを特徴付けて、ハンドアイ較正を特徴付けることでなされる。複数の静止カメラのハンドアイ較正の方法のように、複数の動きカメラのハンドアイ較正の方法の例示の実施形態がやはりxki,u,v,w,yki,u,v,wをカメラkに対する取得画像の発見された特徴の2次元位置を指すものとする。取得画像のこの2次元位置が較正対象の3次元位置u,v,wに対応する。較正対象の3次元位置u,v,wがロボット座標系における3次元位置GΛ-1u,v,wに対応する。ロボット座標系における3次元位置GΛ-1u,v,wが端部作動体座標系における3次元位置RiΛ-1GΛ-1u,v,wに対応する。端部作動体座標系における3次元位置RiΛ-1GΛ-1u,v,wがカメラkのマシンビジョンシステムの座標系における3次元位置HkΛ-1RiΛ-1GΛ-1u,v,wに対応する。3次元位置HkΛ-1RiΛ-1GΛ-1u,v,wが取得画像における2次元位置PkHkΛ-1RiΛ-1GΛ-1u,v,wに対応する。取得画像の発見された特徴の各xki,u,v,w,yki,u,v,w2次元位置が予測される2次元位置PkHkΛ-1RiΛ-1GΛ-1u,v,wに対応する。各発見された2次元特徴位置に対して、発見された2次元特徴位置が予測された2次元位置を比較されて差異PkHkΛ-1RiΛ-1GΛ-1u,v,w-xki,u,v,w,yki,u,v,wが生成される。この差異の距離の二乗が、|PkHkΛ-1RiΛ-1GΛ-1u,v,w-xki,u,v,w,yki,u,v,w|2である。これら差異の二乗の総和がΣ|kPHkΛ-1RiΛ-1GΛ-1u,v,w-xki,u,v,w,yki,u,v,w|2であって、画像座標系における実際の測定データおよび予測された位置の間の複合差異に対応する。例示的には、実際の測定データおよび予測された位置の間の差異の最小二乗総和を発生するGおよびH1...Hnパラメータを解くことで、ハンドアイ較正が計算される。パラメータ値が実際の測定データおよび予測された位置の間の差異の二乗総和を最小にするGおよびH1...Hnに対して解かれる。図4が本発明の例示の実施形態によるロボットに固定されたカメラを用いてマシンビジョンをロボット較正に実行する例示的に手順400のステップを詳述する流れ図である。手順400がステップ405で始まり、ステップ410に続き、そこでは1つまたは複数のカメラがロボットに固定される。上記のように、本発明の例示の実施形態が複数のカメラを同時に較正できる。例示的には、較正用に用いられるカメラがロボットの関節アームおよび/または端部作動体に固定される。較正プレートがステップ415で空間に固定される。例示的には、較正プレートが較正処理中に動かないように固定される。端部作動体が次いで複数の姿勢に動かされて、ステップ420で各複数の姿勢における較正プレートの画像が取得される。例示的には、すべての姿勢の中の動きには少なくとも2つの非平行軸の回りの回転が含まれる。より良い較正情報を得るには、回転角が少なくとも5度とされる。これは必須の要件ではないが、動きの中でより大きな回転の方が、改善された結果が得られる。画像検出技術が取得画像に施されて、ステップ425で較正プレート上の特徴を検出する。上記のように、特徴検出がCognex社から特徴検出器として市販されているものなどの技術を用いて良い。特徴を測定する別の方法が米国特許第6,137,893号に記載されている。特徴を測定する別の方法が米国特許第6,816,187号に記載されている。特徴を測定する別の方法が、IEEEJournalofRoboticsandAutomationVolumeRA-3、No4、pages323-344に、RogerYTsaiによるAVersatileCameraCalibrationTechniqueforHigh-Accuracy3DMachineVisionMetrologyUsingOff-the-ShelfTVCameraandLensesに記載されている。さらに上記のように、本発明の別の方法において、特徴抽出がたとえば3次元カメラからの3次元特徴の使用、感熱カメラを用いた熱特徴検出などを含む様々な技術を用いて良い。各カメラに対して、較正プレート姿勢が次いでステップ430で計算される。すなわち、内部データおよび知られた特徴位置および観察された特徴位置の間の対応の組を用いることで、カメラ姿勢が較正プレートに対して計算される。このステップがカメラが事前較正されていることを想定している。しかしながら、別の実施形態では、カメラが集合されたデータを用いて較正されても良く、これにより2つの処理、すなわち先ずカメラを較正し、次にヘッドマシンビジョンシステムおよびロボットの間の較正を実行することを避けても良い。取得画像および対応するロボット姿勢が次いでステップ435で事前処理される。この事前処理が例示的に各プレートおよびロボットの動きを記録する。画像およびロボット姿勢の各対が次いで再配列されて動きを最大にする。ステップ430で計算された事前較正のカメラパラメータのある各カメラ姿勢の場合、各2つのカメラ姿勢の間の動きが計算される。同様に、2つのカメラの姿勢の間の動きが計算される。カメラ動きおよびロボット動きの対がすべて計算され、所定の閾値でカットされる差異の対が異常値と見なされて動き対から除かれる。ロボットおよびカメラ動きの対に対して、単一軸の回りの等価な回転を用いて回転を表わす場合、またはスクリュモーションを用いて回転を表わす場合、回転角が理想状態と等価とされる。したがって、ロボット動きおよびカメラ動きの間の回転角の同じ対との相異が差異として用いられる。装置が再配列によって姿勢から任意の順の一貫した動きを抽出でき、実質的に回転の動きを用いることができ、その結果、さらに安定で正確でロバスト性のある較正を決定する。尚、別の実施形態では、ステップ430-440が任意である。較正装置が次いで直線系を解いて、ステップ440でロボット基台座標系における変換を計算する。別の実施形態では、ステップ442で、カメラ-ロボット変換および端部作動体-較正プレート変換の初期推量が得られる。変換が次いでステップ445で精密化される。精密化が予測された上述の2次元画像特徴位置および発見された特徴位置の間の二乗総和差異を最小にすることに基づく。別法では、端部作動体からカメラへの変換、およびプレートからロボット基台系への変換に対する初期推量が先ず変換を用いて報告されたロボット姿勢および計算されたロボット姿勢の間の差異を最小にする個々の精密化で精密化される。次いで、精密化された変換が2次元特徴位置差異ベースの精密化へ供給される。別法では、チェックステップが精密化の後に追加されて、精密化の結果がチェック基準に対して精密化されていない結果よりも良い結果を提供しない場合に精密化された結果を無視する。変換一貫精密化報告されたロボット姿勢および計算されたロボット姿勢の0間の差異を変換を用いて最小にするが、複数のカメラに対して位置を同時に精密化する。換言すると、複数の動いているカメラの場合に対して、較正プレート座標系からロボット基台座標系へ変換が1つしかない。変換一貫精密化の1つの実施形態が次のようである。Zが較正プレート座標系からロボット基台座標系への変換を指すものとし、Xがカメラ座標系からロボット端部作動体座標系への変換である。Biがi点におけるロボット姿勢ロボット端部作動体の座標系からロボット基台座標系への変換である。Aiがi点における1つのカメラに対する較正プレート姿勢較正プレート座標系からカメラ座標系への変換である。変換Aiが測定された変換と呼ばれる場合がある。次の構成が識別の変換と言えるというのは、較正プレート座標系から較正プレート座標系への変換の構成であるからである。Z_inverseBiXAi精密化の目的がすべてのカメラおよび動きに対する各Z_inverseBiXAiおよび識別の変換の間の総合差異を最小にすることである。構成Z_inverseBiXAiの逆数が予測された変換と呼ばれる場合がある。ハンドアイ較正の用途において、2つの変換2つの姿勢の間の差を計算する例示的に方法が次のように作業空間の大きさを用いることに基づく。ロボット-視覚用途の空間容積が境界ボックスで表されると仮定すると、変換X1および変換X2の間の差が変換、特には境界ボックスの8頂点、v1からv8でマッピングされた点の間の距離を検討して計算される。ΣX1vi-X2vii=1-8例示的にステップが画像特徴ベースの精密化を用いてさらにカメラ-端部作動体変換およびロボット基台-較正プレート変換を精密化する前に、これらを精密化することである。最初にマッピングされた点の間の差異の基準を用いて変換を精密化することで、画像特徴ベースの精密化に対してより良い初期推量が得られ、ハンドアイ較正が高速化され、そのロバスト性もより高められる。チェック基準の1つの実施形態が、精密化前の差異の二乗平均平方根と比較されるように、精密化後に計算された画像座標系差の差異の二乗平均平方根である。ある場合では、ロボット動きが視覚装置より正確ではなく、精密化が不正確なロボット姿勢に基づくカメラ-端部作動体変換およびロボット基台-較正プレート変換に過剰適合かもしれない。精密化の前後で残留を比較して、精密化の結果を取り込むかを決定できる。精密化が改善されたかどうかを判断する別の方法が、精密化後の計算された画像座標系における差異の二乗平均平方根をカメラ較正の画像座標系における差異の二乗平均平方根と比較することである。精密化後の残留をカメラ較正に関連された残留と比較することによって、精密化からの結果を取り込むかを判断できる。カメラ/マシンビジョンシステムが次いでステップ450で変換で構成される。手順400が次いでステップ455で完了する。D.制御メカニズム図5が本発明の例示の実施形態による機械視覚装置およびロボット用の制御メカニズムを示す代表的な環境500の概略ブロック図である。ロボット基台110が端部作動体120をその端末に有する関節アーム115に内部接続されて動作する。例示的に、ロボット制御装置500がプロセッサ515、入力/出力アダプタセット520、およびメモリ525を備える。メモリ525に保存されるのは、ロボット制御装置505およびロボットとを制御するソフトウェア530である。例示的に、ロボット制御装置505がプログラマブルリードオンリメモリPROMや、不揮発ランダムアクセスメモリNVRAMなどを使用することを含む様々なフォーマットに移植されて良い。このように、ロボット制御装置505の構成要素がただ例として取り上げて説明したに過ぎない。尚、さらに別の実施形態では、ロボット制御装置505がソフトウェアなどを持たないハードウェア接続であっても良い。また、環境500内には、カメラ105A、Bが備えられる。尚、環境500には、カメラ105が空間に固定されるように示されているが、別の実施形態では、カメラがロボットの関節アームまたは/および端部作動体120に実装されても良い。このように、カメラ105が空間に固定されることが単に例として取り上げているに説明しているに過ぎない。カメラ105が機械視覚装置510と動作可能に内部接続される。機械視覚装置510が例示的にプロセッサ535、入力/出力アダプタ540およびメモリ545を備える。メモリ545が例示的に本発明の例示的な実施形態による新規の較正技術を実行するソフトウェア550を有する。また、ロボット制御装置505を参照して上述したように、機械視覚装置510が、代替、または追加のおよび/または異なる構成要素を備えて良い。このように本明細書では単に例として取り上げて説明したに過ぎない。上記に本発明の例示的な実施形態を詳述してきた。編成において発明の主旨および範囲から逸脱しないで様々な変体が生成できる。また、本説明がハードウェア上で実行されるソフトウェアに関して記載したが、本発明が教示されたことがソフトウェアとして実行できることは明白に分かり、該ソフトウェアにはプログラム指令を有し、コンピュータや、ハードウェア、ファームウェア、それらの複合上で実行するコンピュータ読取り可能メディアが含まれる。したがって、上記の説明は単に例として取り上げたに過ぎず、発明の範囲を限定するものではない。"