(57)【特許請求の範囲】
【請求項１】
マシンビジョンシステムおよびロボットの間の較正の決定方法であって、
空間に固定されたカメラを用い、前記ロボットをロボット用の作業域内で最初の姿勢にして前記ロボットの作動体に固定された較正対象の最初の画像を取得し、前記ロボットをロボット用の作業域内で次の姿勢にして前記較正対象の次の画像を取得するステップであって、前記最初の姿勢と前記次の姿勢が互いに異なり、前記較正対象が第１の対象の特徴および第２の対象の特徴を備え、前記第１の特徴および前記第２の特徴が互いに固定の既知の距離に配置され、前記ロボットがロボット座標系を有し、前記カメラがカメラ座標系を有し、前記作動体が作動体座標系を有し、較正対象が対象座標系を有する、画像を取得するステップ、
前記カメラ座標系と前記ロボット座標系との間のカメラ―ロボット変換を特定するステップ、
前記対象座標系と前記作動体座標系との間の対象―作動体変換を特定するステップ、
前記最初の画像に第１の最初の画像の特徴および第２の最初の画像の特徴の位置を特定し、前記次の画像に第１の次の画像の特徴および第２の次の画像の特徴の位置を特定するステップであって、前記第１の最初の画像の特徴および前記第１の次の画像の特徴が前記第１の対象の特徴に対応し、前記第２の最初の画像の特徴および前記第２の次の画像の特徴が前記第２の対象の特徴に対応する、特徴の位置を特定するステップ、
前記固定の既知の距離、前記最初の姿勢、前記次の姿勢、前記カメラ―ロボット変換、および前記対象―作動体変換を用いて、前記最初の画像に対する、予測される第１の最初の画像の特徴および予測される第２の最初の画像の特徴、並びに、前記次の画像に対する、予測される第１の次の画像の特徴および予測される第２の次の画像の特徴を算出するステップであって、前記予測される第１の最初の画像の特徴および前記予測される第１の次の画像の特徴が前記第１の対象の特徴に対応し、前記予測される第２の最初の画像の特徴および前記予測される第２の次の画像の特徴が前記第２の対象の特徴に対応する、特徴を算出するステップ、
前記カメラ―ロボット変換または前記対象―作動体変換を変更して、前記第１の最初の画像の特徴および前記予測される第１の最初の画像の特徴、前記第２の最初の画像の特徴および前記予測される第２の最初の画像の特徴、前記第１の次の画像の特徴および前記予測される第１の次の画像の特徴、並びに前記第２の次の画像の特徴および前記予測される第２の次の画像の特徴、の少なくとも１つの間の差異を最少にすることで、最適化された変換を生成するステップ、
前記最適化された変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップ、
とを含むことを特徴とする較正の決定方法。
【請求項２】
前記較正対象が較正プレートを含むことを特徴とする請求項１に記載の較正の決定方法。
【請求項３】
前記最初の姿勢と前記次の姿勢との間の差異には、少なくとも２つの平行でない軸の回りの回転が含まれていることを特徴とする請求項１に記載の較正の決定方法。
【請求項４】
前記回転は、少なくとも５°の回転とされることを特徴とする請求項３に記載の較正の決定方法。
【請求項５】
取得した画像（以下、「取得画像」という。）の組を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、
異常値の組を決定するステップと、
異常値の組を決定するステップに応じて、前記異常値を有する取得画像の組から１つまたは複数の画像を削除し、減少された取得画像の組を生成するステップと、
前記減少された取得画像の組を再配列して、所望の動きを取得するステップと、
が含まれていることを特徴とする請求項１に記載の較正の決定方法。
【請求項６】
前記所望の動きには、前記減少された取得画像の組の識別の対の間の変化が含まれていることを特徴とする請求項５に記載の較正の決定方法。
【請求項７】
前記変換が自由度６とされることを特徴とする請求項１に記載の較正の決定方法。
【請求項８】
マシンビジョンシステムおよびロボットの間の較正の決定方法であって、
前記ロボットの作動体に固定されたカメラを用いて、前記ロボットがロボット用の作業域内で最初の姿勢を取って空間に固定された較正対象の最初の画像を取得し、前記ロボット用の作業域内で次の姿勢を取って前記較正対象の次の画像を取得するステップであって、前記最初の姿勢と前記次の姿勢が互いに異なり、前記較正対象が第１の対象の特徴および第２の対象の特徴を備え、前記第１の特徴および前記第２の特徴が互いに対して固定の既知の距離に配置され、前記ロボットがロボット座標系を有し、前記カメラがカメラ座標系を有し、前記作動体が作動体座標系を有し、前記較正対象が較正対象座標系を有する、画像を取得するステップ、
前記対象座標系と前記ロボット座標系との間の対象―ロボット変換を特定するステップ、
前記カメラ座標系と前記作動体座標系との間のカメラ―作動体変換を特定するステップ、
前記最初の画像に第１の最初の画像の特徴および第２の最初の画像の特徴の位置を特定し、前記次の画像に第１の次の画像の特徴および第２の次の画像の特徴の位置を特定するステップであって、前記第１の最初の画像の特徴および前記第１の次の画像の特徴が前記第１の対象の特徴に対応し、前記第２の最初の画像の特徴および前記第２の次の画像の特徴が前記第２の対象の特徴に対応する、特徴の位置を特定するステップ、
前記固定の既知の距離、前記最初の姿勢、前記次の姿勢、前記対象―ロボット変換、および前記カメラ―作動体変換を用いて、前記最初の画像に対する、予測される第１の最初の画像の特徴および予測される第２の最初の画像の特徴、並びに前記次の画像に対する、予測される第１の次の画像の特徴および予測される第２の次の画像の特徴を算出するステップであって、前記予測される第１の最初の画像の特徴および前記予測される第１の次の画像の特徴が前記第１の対象の特徴に対応し、前記予測される第２の最初の画像の特徴および前記予測される第２の次の画像の特徴が前記第２の対象の特徴に対応する、特徴を算出するステップ、
前記対象―ロボット変換または前記カメラ―作動体変換を変更して、前記第１の最初の画像の特徴および前記予測される第１の最初の画像の特徴、前記第２の最初の画像の特徴および前記予測される第２の最初の画像の特徴、前記第１の次の画像の特徴および前記予測される第１の次の画像の特徴、および前記第２の次の画像の特徴および前記予測される第２の次の画像の特徴、の少なくとも１つの間の差異を最少にして、最適化した変換を生成するステップ、
前記最適化した変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップ、
とを含むことを特徴とする較正の決定方法。
【請求項９】
前記較正対象が較正プレートを含むことを特徴とする請求項８に記載の較正の決定方法。
【請求項１０】
前記最初の姿勢と前記次の姿勢との間の差異には、少なくとも２つの平行でない軸の回りの回転が含まれていることを特徴とする請求項８に記載の較正の決定方法。
【請求項１１】
前記回転は、少なくとも５°の回転であることを特徴とする請求項１０に記載の較正の決定方法。
【請求項１２】
前記取得した画像（以下、「取得画像」という。）の組を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、
異常値の組を決定するステップと、
異常値の組を決定するステップに対応して、前記異常値を有する取得画像の組から１つまたは複数の画像を削除し、減少された取得画像の組を生成するステップと、
前記減少された取得画像の組を再配列して所望の動きを取得するステップと、
が含まれていることを特徴とする請求項８に記載の較正方法。
【請求項１３】
前記所望の動きには、前記減少された取得画像の組の識別の対の間の変化が含まれていることを特徴とする請求項１２に記載の較正方法。
【請求項１４】
前記変換が自由度６とされることを特徴とする請求項８に記載の較正方法。
【請求項１５】
マシンビジョンシステムおよびロボットの間の較正の決定方法であって、
空間に固定された主のカメラを用いて、前記ロボットがロボット用の作業域内で主の姿勢を取って前記ロボットの作動体に固定された較正対象の主の最初の画像を取得し、前記ロボットが前記ロボット用の作業域内で次の姿勢を取って前記較正対象の主の次の画像を取得するステップであって、前記主の最初の姿勢と前記主の次の姿勢が互いに異なり、前記較正対象が第１の対象の特徴および第２の対象の特徴を備え、前記第１の特徴および前記第２の特徴が互いに対して固定の既知の距離に配置され、前記ロボットがロボット座標系を有し、前記主のカメラが主のカメラ座標系を有し、前記作動体が作動体座標系を有し、較正対象が較正対象座標系を有する、画像を取得するステップ、
空間に固定された副のカメラを用いて、前記ロボットが前記ロボット用の作業域内で副の姿勢を取って前記較正対象の副の最初の画像を取得し、前記ロボットが前記ロボット用の作業域内で副の次の姿勢を取って前記較正対象の副の次の画像を取得するステップであって、前記副の最初の姿勢と前記副の次の姿勢が互いに異なり、前記副のカメラが副のカメラ座標系を有する画像を取得するステップ、
前記主のカメラおよび前記副のカメラの座標系の各々と前記ロボット座標系の間のカメラ―ロボット変換を特定するステップ、
前記対象座標系と前記作動体座標系との間の対象―作動体変換を特定するステップ、
第１の主の最初の画像の特徴および第２の主の最初の画像の特徴の位置を前記主の最初の画像に特定し、前記主の次の画像に第１の主の次の画像の特徴および第２の主の次の画像の特徴の位置を特定し、前記副の最初の画像に第１の副の最初の画像の特徴および第２の副の最初の画像の特徴の位置を特定し、前記副の次の画像に第１の副の次の画像の特徴および第２の副の次の画像の特徴の位置を特定するステップであって、前記第１の主の最初の画像の特徴、前記第１の主の次の画像の特徴、前記第１の副の最初の画像の特徴、および前記第１の副の次の画像の特徴が前記第１の対象の特徴に対応し、前記第２の主の最初の画像の特徴、前記第２の主の次の画像の特徴、前記第２の副の最初の画像の特徴、および前記第２の副の次の画像の特徴が前記第２の対象の特徴に対応する、特徴の位置を特定するステップ、
前記固定の既知の距離、前記主の最初の姿勢、前記主の次の姿勢、前記副の最初の姿勢、前記副の次の姿勢、前記カメラ―ロボット変換、および前記対象―作動体変換を用いて、前記主の最初の画像に対する、予測される第１の主の最初の画像の特徴および予測される第２の主の最初の画像の特徴、前記主の次の画像に対する、予測される第１の主の次の画像の特徴および予測される第２の主の次の画像の特徴、前記副の最初の画像に対する、予測される第１の副の主の最初の画像の特徴および予測される第２の副の最初の画像の特徴、並びに前記副の次の画像に対する、予測される第１の副の次の画像の特徴および予測される第２の副の次の画像の特徴を算出するステップであって、前記予測される第１の主の最初の画像の特徴、前記予測される第１の主の次の画像の特徴、前記予測される第１の副の最初の画像の特徴、前記予測される第１の副の次の画像の特徴が前記第１の対象の特徴に対応し、前記予測される第２の主の最初の画像の特徴、前記予測される第２の主の次の画像の特徴、前記予測される第２の副の最初の画像の特徴、前記予測される第２の副の次の画像の特徴が前記第２の対象の特徴に対応する、特徴を算出するステップ、
前記カメラ―ロボット変換および前記対象―作動体変換を変更して、前記第１の主の最初の画像の特徴および前記予測される第１の主の最初の画像の特徴、前記第２の主の最初の画像の特徴および前記予測される第２の主の最初の画像の特徴、前記第１の主の次の画像の特徴および前記予測される第１の主の次の画像の特徴、前記第２の主の次の画像の特徴および前記予測される第２の主の次の画像の特徴、前記第１の副の最初の画像の特徴および前記予測される第１の副の最初の画像の特徴、前記第２の副の最初の画像の特徴および前記予測される第２の副の最初の画像の特徴、前記第１の副の次の画像の特徴および前記予測される第１の副の次の画像の特徴、および前記第２の副の次の画像の特徴および前記予測される第２の副の次の画像の特徴の少なくとも１つの間の差異を最少にし、最適化した変換を生成するステップ、
前記最適化した変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップ、
とを含んでいることを特徴とする較正の決定方法。
【請求項１６】
前記較正対象が較正プレートを含むことを特徴とする請求項１５に記載の較正の決定方法。
【請求項１７】
前記主の最初の姿勢と前記主の次の姿勢との間の差異、および、前記副の最初の姿勢と前記副の次の姿勢との間の差異にはそれぞれ、少なくとも２つの平行でない軸の回りの回転が含まれていることを特徴とする請求項１５に記載の較正の決定方法。
【請求項１８】
前記回転は、少なくとも５°の回転であることを特徴とする請求項１７に記載の較正の決定方法。
【請求項１９】
前記取得した画像（以下、「取得画像」という。）の組を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、
異常値の組を決定するステップと、
異常値の組を決定するステップに対応して、前記異常値を有する取得画像の組から１つまたは複数の画像を削除し、減少された取得画像の組を生成するステップと、
前記減少された取得画像の組を再配列して所望の動きを取得するステップと、
が含まれていることを特徴とする請求項１５に記載の較正の決定方法。
【請求項２０】
前記所望の動きには、前記減少された取得画像の組の特定の対の間の変化が含まれていることを特徴とする請求項１９に記載の較正の決定方法。
【請求項２１】
前記カメラ―ロボット変換を特定するステップが、前記主および副のカメラのそれぞれに対し前記変換を同時に特定することを特徴とする請求項１５に記載の較正の決定方法。
【請求項２２】
前記変換が自由度６とされることを特徴とする請求項１５に記載の較正の決定方法。
【請求項２３】
マシンビジョンシステムおよびロボットの間の較正の決定方法であって、
前記ロボットの作動体に固定されたカメラを用いて、前記ロボットがロボット用の作業域内で主の最初の姿勢を取って空間に固定された較正対象の主の最初の画像を取得し、前記ロボットが前記ロボット用の作業域内で主の次の姿勢を取って前記較正対象の主の次の画像を取得するステップであって、前記主の最初の姿勢と前記主の次の姿勢が互いに異なり、前記較正対象が第１の対象の特徴および第２の対象の特徴を備え、前記第１の特徴および前記第２の特徴が互いに対して固定の既知の距離に配置され、前記ロボットがロボット座標系を有し、前記主カメラが主カメラ座標系を有し、前記作動体が作動体座標系を有し、較正対象が較正対象座標系を有する、主の画像を取得するステップ、
前記ロボットの作動体に固定された副カメラを用いて、前記ロボットが前記ロボット用の作業域内で副の最初の姿勢を取って空間に固定された較正対象の副の次の最初の画像を取得し、前記ロボットが前記ロボット用の作業域内で副の次の姿勢を取って前記較正対象の副の次の画像を取得するステップであって、前記副の最初の姿勢と前記副の次の姿勢が互いに異なり、前記副カメラが副カメラ座標系を有し、
前記主および副カメラ座標系の各々と前記作動体変換との間のカメラ―作動体変換を特定する、副の画像を取得するステップ、
前記対象座標系と前記ロボット座標系との間の対象―ロボット変換を特定するステップ、
前記主の最初の画像に第１の主の最初の画像の特徴および第２の主の最初の画像の特徴の位置を特定し、前記主の次の画像に第１の主の次の画像の特徴および第２の主の次の画像の特徴の位置を特定し、前記副の最初の画像に第１の副の最初の画像の特徴および第２の副の最初の画像の特徴の位置を特定し、前記副の次の画像に第１の副の次の画像の特徴および第２の副の次の画像の特徴の位置を特定するステップであって、前記第１の主の最初の画像の特徴、前記第１の主の次の画像の特徴、前記第１の副の最初の画像の特徴、および前記第１の副の次の画像の特徴が前記第１の対象の特徴に対応し、前記第２の主の最初の画像の特徴、前記第２の主の次の画像の特徴、前記第２の副の最初の画像の特徴、および前記第２の副の次の画像の特徴が前記第２の対象の特徴に対応する、特徴の位置を特定するステップ、
前記固定の既知の距離、前記主の最初の姿勢、前記主の次の姿勢、前記副の最初の姿勢、前記副の次の姿勢、前記カメラ―作動体変換、前記対象―ロボット変換を用いて、前記主の最初の画像に対する、前記予測される第１の主の最初の画像の特徴および予測される第２の主の最初の画像の特徴、前記主の次の画像に対する、予測される第１の主の次の画像の特徴および予測される第２の主の次の画像の特徴、前記副の最初の画像に対する、前記予測される第１の副の最初の画像の特徴および予測される第２の副の最初の画像の特徴、前記副の次の画像に対する、予測される第１の副の次の画像の特徴および予測される第２の副の次の画像の特徴を算出するステップであって、前記前記予測される第１の主の最初の画像の特徴、前記予測される第１の主の次の画像の特徴、前記予測される第１の副の最初の画像の特徴、および前記予測される第１の副の次の画像の特徴が前記第１の対象の特徴に対応し、前記予測される第２の主の最初の画像の特徴、前記予測される第２の主の次の画像の特徴、前記予測される第２の副の最初の画像の特徴、および前記予測される第２の副の次の画像の特徴が前記第２の対象の特徴に対応する、画像の特徴を算出するステップ、
前記カメラ―作動体変換および前記対象―ロボット変換を変更して、前記第１の主の最初の画像の特徴および前記予測される第１の主の最初の画像の特徴、前記第２の主の最初の画像の特徴および前記予測される第２の主の最初の画像の特徴、前記第１の次の画像の特徴および前記予測される第１の主の次の画像の特徴、および前記第２の主の次の画像の特徴および前記予測される第２の主の次の画像の特徴、前記第１の副の最初の画像の特徴および前記予測される第１の副の最初の画像の特徴、前記第２の副の最初の画像の特徴および前記予測される第２の副の最初の画像の特徴、前記第１の副の次の画像の特徴および前記予測される第１の副の次の画像の特徴、並びに前記第２の副の次の画像の特徴および前記予測される第２の副の次の画像の特徴、の少なくとも１つの間の差異を最少にして、最適化した変換を生成するステップ、
前記最適化した変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップ、
とを含んでいることを特徴とする較正の決定方法。
【請求項２４】
前記較正対象が較正プレートを含むことを特徴とする請求項２３に記載の較正の決定方法。
【請求項２５】
前記主の最初の姿勢と前記主の次の姿勢との間の差異、および、前記副の最初の姿勢と前記副の次の姿勢との間の差異にはそれぞれ、少なくとも２つの平行でない軸の回りの回転が含まれていることを特徴とする請求項２３に記載の較正の決定方法。
【請求項２６】
前記回転は、少なくとも５°の回転であることを特徴とする請求項２５に記載の較正の決定方法。
【請求項２７】
前記取得した画像（以下、「取得画像」という。）の組を事前処理して異常値を除去するステップをさらに含み、該事前処理するステップには、
異常値の組を決定するステップと、
異常値の組を決定するステップに対応して、前記異常値を有する取得画像の組から１つまたは複数の画像を削除し、減少された取得画像の組を生成するステップと、
前記減少された取得画像の組を再配列して所望の動きを取得するステップと、
が含まれていることを特徴とする請求項２３に記載の較正の決定方法。
【請求項２８】
前記所望の動きには、前記減少された取得画像の組の識別の対の間の変化が含まれていることを特徴とする請求項２７に記載の較正の決定方法。
【請求項２９】
前記カメラ―作動体変換を特定することが、前記主および副のカメラそれぞれのカメラに対し変換を同時に特定することを特徴とする請求項２３に記載の較正の決定方法。
【請求項３０】
前記変換が自由度６とされることを特徴とする請求項２３に記載の較正の決定方法。
【請求項３１】
マシンビジョンシステムおよびロボットの間の較正の決定方法であって、
空間に固定されたカメラを用いて、前記ロボットがロボット用の作業域内で較正対象を複数の異なる姿勢に動かして前記ロボットの作動体に固定された較正対象の複数の画像を取得するステップであって、前記較正対象が、第１の対象の特徴、第２の対象の特徴を備え、前記第１の較正対象の特徴および前記第２の較正対象の特徴が互いに対して固定の既知の距離に配置され、前記ロボットがロボット座標系を有し、前記２つ以上のカメラが各々カメラ座標系を有し、前記作動体が作動体座標系を有し、前記較正対象が較正対象座標系を有する、画像を取得するステップ、
前記２つ以上のカメラ座標系の各々と前記ロボット座標系との間のカメラ―ロボット変換を特定するステップ、
前記対象座標系と前記作動体座標系との間の対象―作動体変換を特定するステップ、
前記複数の画像に画像の特徴を特定するステップであって、前記画像の特徴が前記第１の対象の特徴および前記第２の対象の特徴に対応する、画像の特徴を特定するステップ、
前記固定の既知の距離、前記複数の姿勢、前記２つ以上のカメラ―ロボット変換、および前記対象―作動体変換を用いて、前記複数の画像における予測される特徴を算出するステップであって、前記予測される特徴が前記第１の対象の特徴および前記第２の対象の特徴に対応する、特徴を算出するステップ、
前記２つ以上のカメラ―ロボット変換および対象―作動体変換を同時に変更することにより、前記予測される特徴と画像の特徴との間の差異を最少にし、最適化した変換を生成するステップ、
前記最適化した変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップ、
とを含んでいることを特徴とする較正の決定方法。
【請求項３２】
マシンビジョンシステムおよびロボットの間の較正の決定方法であって、
ロボットの作動体に固定された２つ以上のカメラを用いて、前記ロボットがロボット用の作業域内で２つ以上のカメラを複数の異なる姿勢に動かして、空間に固定された較正対象の複数の画像を取得するステップであって、前記較正対象が第１の対象の特徴および第２の対象の特徴を備え、前記第１の対象の特徴および前記第２の対象の特徴が互いに対して固定の既知の距離に配置され、前記ロボットがロボット座標系を有し、前記２つ以上のカメラが各々カメラ座標系を有し、前記作動体が作動体座標系を有し、前記較正対象が較正対象座標系を有する、画像を取得するステップ、
前記２つ以上のカメラ座標系の各々と前記作動体座標系との間のカメラ―作動体変換を特定するステップ、
前記対象座標系と前記ロボット座標系との間の対象―ロボット変換を特定するステップ、
前記複数の画像に画像の特徴を特定するステップであって、前記画像の特徴が前記第１の対象の特徴および前記第２の対象の特徴に対応するステップ、
前記固定の既知の距離、前記複数の姿勢、前記２つ以上のカメラ―作動体変換、および前記対象―ロボット変換を用いて、前記複数の画像における予測される特徴を算出するステップであって、前記予測される特徴が前記第１の対象の特徴および前記第２の対象の特徴に対応する、特徴を算出するステップ、
前記２つ以上のカメラ―作動体変換および対象―ロボット変換を同時に変更することにより、前記予測される特徴と画像の特徴との間の差異を最少にし、最適化した変換を生成するステップ、
前記最適化した変換を用いて、前記マシンビジョンシステムおよび前記ロボットを較正するステップ、
とを含んでいることを特徴とする較正の決定方法。
【請求項３３】
マシンビジョンシステムおよびロボットの間の較正方法であって、
カメラ姿勢およびロボット姿勢の対の組を取得するステップと、
前記取得した対の組の中から対応するロボットの動きおよびカメラの動きを解析するステップと、
前記解析に基づいて異常値を検出するステップと、
検出した異常値が除去された状態で前記対の組を再配列して、所望の動きのカメラ姿勢およびロボット姿勢の対の組を取得するステップと、
前記所望の動きのカメラ姿勢およびロボット姿勢の対の組を用い、少なくとも２つの対のカメラ姿勢およびロボット姿勢の較正対象の複数の画像を取得し、前記複数の画像に特定された前記較正対象の特徴と前記カメラ用のカメラ座標系を用いて、前記ロボットの姿勢によって予測される前記較正対象の特徴、前記較正対象に対する較正対象座標系、静止している前記ロボットの一部分に対するロボット座標系、および移動して前記ロボット姿勢を取る前記ロボットの一部分に対する作動体座標系、との間の差異を最小にすることによって、較正を実行するステップ、
とを含んでいることを特徴とする較正方法。
【請求項３４】
前記所望の動きには、少なくとも５°の回転が含まれていることを特徴とする請求項３３に記載の較正方法。
【請求項３５】
前記所望の動きには、少なくとも２つの平行でない軸の回りの回転が含まれていることを特徴とする請求項３３に記載の較正方法。
【請求項３６】
前記対の組には、少なくとも３つのカメラ姿勢およびロボット姿勢の対が含まれていることを特徴とする請求項３３に記載の較正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実例の実施形態が、マシンビジョンシステムの較正に関し、さらに詳細にはマシンビジョンシステムおよびロボットの間の較正の装置および方法に関する。
【背景技術】
【０００２】
関節アームは、特定の姿勢に対して作業域に亘って端部作動体を正確に繰り返し動かすことのできる制御可能な機械である。本明細書で用いられるように、用語の姿勢が例示的に３次元の位置および３次元の回転の組合せを呼ぶ。例示的に、ロボット座標系に関して、ロボットの姿勢が端部作動体の姿勢に対応する。例示的に、端部作動体が加工対象物を掴んで離すことのできる制御可能な機械であり、たとえば、機械的な把持部、真空吸着部、電磁接触部などで構成される。典型的には、本明細書で用いるように、関節アームおよび端部作動体の組合せがロボットと称される。作業を実施するロボットが動ける３次元領域がロボットの作業域と称される。
【０００３】
例示的にロボットが用いられて、所定の連続のステップを実行することによって、作業域内で加工対象物を動かすなどの仕事が実行される。たとえば、端部作動体が軌道Ｔ１に沿って端部作動体姿勢Ｐ１に移動する。次に、端部作動体が加工対象物を掴んで、軌道Ｔ２に沿って端部作動体姿勢Ｐ２に移動する。姿勢Ｐ２に到達すると、次に端部作動体が加工対象物を離す。このようなロボットを用いることの不利な点として、加工対象物が知られている姿勢で存在していることが必要であることが知られ、これによってロボットが仕事を首尾良く実行できる。たとえば、加工対象物が初期位置に予期された姿勢で配置されない場合、端部作動体が加工対象物を掴めない。加工対象物姿勢の不正確性がこのようなロボット装置の良く知られた非常に不利な点であり、さらにこのことが、ロボットが把持、配置、および組立作業を実行する際に用いるのに選択されない典型的な理由である。
【０００４】
加工対象物姿勢の不正確性を除去するものとして、センサを用いて最初に加工対象物の姿勢を測定し次に測定した加工対象物の姿勢を用いてロボットの軌道を調節することが１つの知られた技術である。マシンビジョンが加工対象物の位置を検知するのに用いられる典型的な技術であり、とういうのは、マシンビジョンが典型的には早くて安価な非接触検知モーダリティであるからである。用語の視覚案内ロボット工学（Ｖｉｓｉｏｎ Ｇｕｉｄｅｄ Ｒｏｂｏｔｉｃｓ）（ＶＧＲ）が、例示的にロボットが仕事を実行するのを補助するマシンビジョンシステムを用いる処理を指す。
【０００５】
加工対象物の姿勢を測定するマシンビジョンを用いる非常に不利な点が、典型的にマシンビジョンシステムがマシンビジョンシステムの座標系において加工対象物の姿勢を測定し、一方でロボットがロボット座標系において端部作動体を動かすことである。このように、マシンビジョンシステムによって計算された加工対象物の姿勢がロボットの座標系に変換されて、マシンビジョンシステムによって計算された加工対象物の姿勢をロボットが使用することができるようになる。例示的に、ハンドアイ較正（ｈａｎｄ−ｅｙｅ  ｃａｌｉｂｒａｔｉｏｎ）という用語がマシンビジョンシステムの座標系およびロボットの座標系の間の関係を決定するタスクを指す。
【０００６】
当該技術分野の当業者によって理解されるように、ハンドアイ較正の正確さがＶＧＲ手順の正確さに直接に影響を与える。ハンドアイ較正がマシンビジョンシステムの座標系およびロボットの座標系の間の真の関係を直接に反映する場合、加工対象物の姿勢に対する正確なマシンビジョン測定によって、加工対象物の把持、配置、および組立てにおける端部作動体が正確な姿勢に導かれる。それに対して、ハンドアイ較正が不正確でマシンビジョンの座標系およびロボットの座標系の間の真の関係を反映しない場合、加工対象物の正確なマシンビジョン測定が必ずしも加工対象物の把持、配置、および組立てにおける端部作動体の正確な姿勢に導かない。これらの不正確なロボットの姿勢によって、ロボットが所定の仕事を実行できないことになる。
【０００７】
ＴｓａｉとＬｅｎｚがハンドアイ較正を実施する良く知られた技術を開発した。彼らの技術が「Ａ  Ｖｅｒｓａｔｉｌｅ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｅｃｈｉｎｃｓ  ｆｏｒ  Ｈｉｇｈ−Ａｃｃｕｒａｃｙ  ３Ｄ  Ｍａｃｈｉｎｅ  Ｖｉｓｉｏｎ  Ｍｅｔｒｏｌｏｇｙ  Ｕｓｉｎｇ  Ｏｆｆ−ｔｈｅ−Ｓｈｅｌｆ  ＴＶ  Ｃａｍeｒａｓ  ａｎｄ  Ｌｅｎｓｅｓ」、ＩＥＥＥ Ｔｒａｎｓａｃｔｉｏｎ ｏｎ Ｒｏｂｏｔｉｃｓ Ａｕｔｏｍａｔｉｏｎ、Ｖｏｌｕｍｅ ５、 Ｉｓｓｕｅ ３、 ｐａｇｅｓ ３４５−３４８に記載され、その内容は本明細書に援用される。ＴｓａｉとＬｅｎｚの技術が例示的にロボット姿勢および関連する取得画像の組を取得する。取得された画像それぞれに対して、較正対象物に対するカメラの姿勢を推量する。これが、較正対象物に対するロボット姿勢およびカメラの推量姿勢の組を生成する。ＴｓａｉとＬｅｎｚの技術によって、次に、ロボット姿勢および対応するカメラの推量姿勢の組から関節アームに対するカメラの姿勢を決定する。例示的に静止カメラの周囲の場合、ＴｓａｉとＬｅｎｚの技術の著しく不利な点が、ロボット基準に対してただ１つのカメラおよびただ１つのカメラ姿勢であること、および、端部作動体に対して１つのカメラおよびただ１つの較正対象姿勢という制約を明らかに取り込んでいないことである。代わりに、ＴｓａｉとＬｅｎｚの技術が、独立したそれ故に一貫しない可能性のあるカメラ姿勢の推量を許し、さらに、独立したそれ故に一貫しない可能性のある較正対象物姿勢の推量を許す。
【０００８】
ＴｓａｉとＬｅｎｚの技術のさらに著しく不利な点が、マシンビジョンシステムにおいて同時に１つのカメラに対してしか較正を実施できないことである。このように、マシンビジョンシステムにおいて複数のカメラに対して較正を実施したい場合、ＴｓａｉとＬｅｎｚの技術がカメラそれぞれに対して繰り返して実行されなけらばならない。このことが、較正を実行するに必要な時間を増やし、個々のカメラに対して独立したそれ故に一貫しない可能性のある較正を許すことになる。
【０００９】
ＴｓａｉとＬｅｎｚが、対の動きおよび数式ＡｉＸ＝ＸＢｉ（ここでＡｉがカメラの予測される動きを表わし、Ｂｉが端部作動体の相対動きを表す）を研究した。彼らがそれによって端部作動体およびカメラＸの間の変換を、Ｘに対して解くことで算出し、これがＡＸｉおよびＸＢｉの対の間の総合の差異を最小にした。２００６ ＩＥＥＥ／ＲＳＪ Ｉｎｔｅｒｎａｔｉｏｎａｌ Ｃｏｎｆｅｒｅｎｃｅ ｏｎ Ｉｎｔｅｌｌｉｇｅｎｔ Ｒｏｂｏｔｓ ａｎｄ Ｓｙｓｔｅｍｓ、 ２００８ ｐａｇｅｓ ４６４７−４６５３に公表された「Ｏｐｔｉｃａｌ  Ｈａｎｄ−Ｅｙｅ  Ｃａｌｉｂｒａｔｉｏｎ」におけるＳｔｒｏｂｌとＨｉｒｚｉｎｇｅｒの記載によれば、ハンドアイ較正の技術について数式ＡＸ＝ＺＢを研究して、端部作動体カメラ変換およびロボット較正プレート変換を推量したところ、問題は、固体変換（ｒｉｇｉｄ ｔｒａｎｓｆｏｒｍｓ）の系、すなわち、ＡｉＸ＝ＺＢｉ（ここで、Ａｉがカメラ及び較正プレートの間の予測される変換を、Ｘが端部動作体対カメラを、Ｚがロボット基準の較正プレート変換を、Ｂｉが端部作動体姿勢（端部作動体からロボット基準までの変換）をそれぞれ表す）に帰すことがわかった。これら両方の取組み（およびこの基礎技術に従う他の全ての取組み）の欠点は、２つの固体変換の間の推量差異、すなわち、ｄｉｆｆ（変換１、変換２）を含んでいることであり、そして、２つの変換の間の差異を測定する良く知られた物理的に意味のある方法がないことである。
【００１０】
ＴｓａｉとＬｅｎｚ、およびＳｔｒｏｂｌとＨｉｒｚｉｎｇｅｒによって記載された方法の別の欠点が、較正プレート姿勢のみに基づいてハンドアイ較正を推量することが次善の策であるということである。なぜなら、計算したカメラ較正プレート姿勢がそれぞれ通常にある方向において他の方向よりも正確であって、この方向の正確性情報がカメラ較正プレート姿勢に含まれていないからである。カメラ較正プレート姿勢が通常はある方向において他の方向よりも正確であることは、較正プレートの方向が通常較正プレートの傾きよりも正確に推量できることを研究して明らかになった。
【発明の概要】
【課題を解決するための手段】
【００１１】
本発明の例示の実施形態がマシンビジョンおよびロボットの間のロバストな較正の装置および方法を提供して、当技術分野の不利な点を解決する。実例的には、ロボットが複数の姿勢に動かされて、較正プレートなどの較正対象の画像が取得され、該較正対象が、ロボットの端部作動体に添付され、正確に知られる位置の特徴を含んでいる。別法では、較正対象が、空間に固定され、カメラがロボットに実装され、次に複数の姿勢に動かされて、そこでの較正対象の画像が取得される。マシンビジョンシステムが用いられて取得画像を画像の中の特徴の位置を測定することで分析する。この特定のロボット姿勢および測定画像特徴位置が用いられてマシンビジョンシステムの座標系およびロボットの座標系の間の関係を決定する。
【００１２】
典型的な静止カメラ周囲では、例示的に、本発明の例示の実施形態がそれぞれのカメラおよびロボット基準座標系の間で固有な自由度６の変換（６ＤＯＦ）であるという制約を課し、ロボット端部作動体および較正プレートの間の固有な６ＤＯＦがあるという制約を明示的に課す。尚、本発明の別法においては、異なる自由度の数が用いられても良い。このように、６ＤＯＦの記述が単に代表として用いられるに過ぎない。本発明の例示の実施形態が複数のカメラからロボット、加えて個々のカメラ較正の、同時較正を実例的に可能とし、それ故に先ずロボットの加工対象物に対するカメラを較正して、次にロボットに対するマシンビジョンシステムを較正する必要がなくなる。
【００１３】
カメラが、ロボットの作業域部分に拡がる視野を有する空間に実装されるか、ロボットの関節アームおよび／または端部作動体に実装されて良い。空間に実装されたカメラを本明細書では静止カメラと呼び、ロボットの関節アームおよび／または端部作動体に実装されたカメラを動くカメラと呼ぶ。１つのカメラが静止空間に実装される場合、本発明の例示の実施形態が２つの変換を計算し、該変換がロボットの座標系およびカメラの座標系の間の変換、較正対象の姿勢および端部作動体の姿勢の間の変換である。複数のカメラが空間に静止して実装される場合、本発明の例示の実施形態がロボットの座標系およびカメラの座標系のそれぞれの間の変換、および較正対象の姿勢および端部作動体の姿勢の間の変換を計算する。尚、用語の較正対象および較正プレートが本明細書では置き換え可能に用いられる。カメラの座標系が時にはカメラの姿勢と呼ばれる。較正対象の姿勢が時には較正対象の座標系と呼ばれる。１つまたは複数のカメラが較正されたときには、標準的な較正プレートの座標系がマシンビジョンの座標系と呼ばれる。マシンビジョンの座標系が時にはマシンビジョンシステムの世界座標系と呼ばれる。端部作動体の姿勢が時には端部作動体の座標系と呼ばれる。ロボットに対する端部作動体の姿勢が時にはロボット姿勢と呼ばれる。ロボットの座標系が時にはロボット基準の座標系と呼ばれる。尚、発明が、異なるカメラが異なる標準の較正プレート変換に対して較正され得る状況を扱える。換言すると、本発明の例示の実施形態が、１つまたは複数のカメラが異なるマシンビジョンシステムの座標系に対して較正された状況を扱える。これは、本発明がそれぞれのカメラの姿勢を推量し、カメラがマシンビジョンシステムの座標系に対して同じ姿勢に在る制約を必ずしも課さないからである。
【００１４】
１つのカメラがロボットに実装される場合、２つの変換がはやり計算され、すなわち、ロボット座標系および較正対象の間の変換およびカメラ姿勢および端部作動体の姿勢と間の変換である。多重ロボット実装（動き）カメラを用いる場合、本発明がロボット座標系および較正対象の間の変換およびそれぞれのカメラ姿勢および端部作動体姿勢の間の変換を計算する。
【００１５】
尚、マシンビジョンシステムの世界座標系が通常プレースホルダとして機能し、マシンビジョンシステムの世界座標系が通常本質的に物理的意味を有しない。その結果、単一の静止カメラに対して、ユーザが本発明によって計算されてハンドアイ較正変換を用いて、ロボット座標系に対するマシンビジョンシステムの世界座標系の間の変換を調節できる（一方でカメラおよびマシンビジョンシステムの世界座標系の間の変換が変更されない）。別法では、単一の静止カメラに対し、ユーザが本発明によって計算されてハンドアイ較正変換を用いて、カメラおよびマシンビジョンシステムの世界座標系の間の変換を調節できる（一方でロボット座標系に対するマシンビジョンシステムの世界座標系の間の変換が変更されない）。別法では、単一の静止カメラに対し、ユーザが本発明によって計算されてハンドアイ較正変換を用いて、端部作動体の座標系に対してマシンビジョンシステムの世界座標系を調節できる（一方でカメラおよびマシンビジョンシステムの世界座標系の間の変換が変更されない）。別法では、単一の静止カメラに対し、ユーザが本発明によって計算され、ハンドアイ較正変換を用いて、カメラおよびマシンビジョンシステムの世界座標系の間の変換を調節できる（一方で端部作動体の座標系に対するマシンビジョンシステムの世界座標系の間の変換が変更されない）。カメラ姿勢およびマシンビジョンシステムの世界座標系がこのように交換できるので、我々は時にはマシンビジョンシステムの世界座標系の推量をすることを指して、カメラ姿勢を推量することと呼び、カメラ姿勢を推量することを指して、マシンビジョンシステムの世界座標系を推量することと呼ぶ。
【００１６】
本発明の上記およびさらなる有利な点が添付の図面と共に次の説明を参照することでより良く理解され、図面において類似の参照番号が特定または機能的に類似の構成要素を指す。
【図面の簡単な説明】
【００１７】
【図１】本発明の例示の実施形態による、マシンビジョンシステムおよびロボットの間の較正に用いる、カメラが空間に静止して実装された状態の代表的なマシンビジョンロボットの周囲の概略図である。
【図２】本発明の例示の実施形態による、マシンビジョンシステムおよびロボットの間の較正に用いる、カメラがロボットに実装された状態の代表的なマシンビジョンロボットの周囲の概略図である。
【図３】本発明の例示の実施形態による、固体カメラを用いて、ロボットおよびマシンビジョンシステムの間の較正を実行する手順のステップを詳細に示す流れ図である。
【図４】本発明の例示の実施形態による、ロボットに実装されたカメラを用いて、ロボットおよびマシンビジョンシステムの間の較正を実行するための手順のステップを詳細に示す流れ図である。
【図５】本発明の例示の実施形態による、マシンビジョンシステムおよびロボットを用いて、代表的な制御システムの概略ブロック図である。
【発明を実施するための形態】
【００１８】
本発明の例示の実施形態がハンドアイ較正を正確に改良する装置および方法を提供し、一方、例示的には、それらが動くカメラの場合に対して、それぞれのカメラおよび端部作動体の間の特別な６ＤＯＦ（自由度）の変換であるとの制約を課し、静止カメラの場合に対してそれぞれのカメラおよびロボット基準の間の特別な６自由度の変換であるとの制約を課す。尚、本発明の別の実施形態では自由度の異なる数字が用いられる。このように、６自由度の記述がただ代表として挙げられる。さらには、本発明の例示の実施形態が、動くカメラの場合のロボットの座標系および較正プレートの間の特定の６自由度の変換があるという制約を例示的に課す。別法では、静止カメラの場合には、本発明の例示の実施形態が較正プレートの座標系および端部作動体の座標系の間の特定の６自由度の変換があるという制約を課す。例示的には、ロボットが特定の姿勢まで動かされ、正確に知られる物理的位置で特徴を有する較正対象の画像が取得される。本発明の例示の実施形態が物理的位置の特徴の正確な情報を含み、本発明の別の実施形態が知られた物理的位置の特徴を粗く用いる。較正対象が必ずしも平坦な対象物（特徴すべてが同じ面にある）でなくても良い。別法では、較正対象が立方体などの３次元の対象物であっても良く、特徴が複数の面に存在する。別法では、較正対象が特徴が１つまたは２つの面に存在する円盤でも良い。別法では、較正対象が特徴を有する球状でも良い。別法では、較正対象が特徴を有する円柱でも良い。
【００１９】
次にマシンビジョンシステムが画像の特徴の位置を測定することで取得データを分析して特定のロボット姿勢を測定した画像の特徴位置に関連させて、マシンビジョンシステムの座標系およびロボットの座標系の間の関係を決定する。本発明の例示の実施形態がそれぞれのカメラおよび端部作動体の間の特別な６自由度の変換があるという制約を明白に課し、かつ動くカメラに対するロボットの座標系および較正プレートの間の特別な６自由度の変換があるという制約を明白に課す分析を例示的に用いる。別法では、静止カメラの場合に、本発明の例示の実施形態がそれぞれのカメラおよびロボット基準の間の特別な６自由度の変換があるという制約を明白に課し、かつ較正プレートの座標系および端部作動体の座標系の間の特別な６自由度の変換があるという制約を明白に課す分析を例示的に用いる。
【００２０】
本発明の例示の実施形態が静止較正プレートおよび静止ロボットを用いることに関連し、本発明の別の実施形態が非静止較正プレートおよび／または非静止ロボットを用いることに関連し、その結果、複数の６自由度の変換が用いられる。用語のカメラが電磁波を測定する検知構成要素および電磁波を屈折させるレンズの複合を指す。カメラ検知構成要素の例にはＣＣＤセンサ、ＣＭＯセンサおよびサポート回路が含まれて輝度の２次元描写を形成する。レンズが通常用いられて、場面から電磁波をカメラ検知構成要素に焦点を絞る。カメラが時にはマシンビジョンカメラと呼ばれる。ハンドアイ較正用に、カメラおよびレンズが通常固定的に互いに位置付けられて一貫した観測をする。
【００２１】
改良技術の１つの実施形態が、変換でマッピングされた点の間の距離を比較することで差異を考察することに関係する。改良技術の１つの実施形態が較正プレート上の物理的なすべての点、Ｐiを考慮すること、およびＡＸＢ-1およびＺでマッピングされたそれら点間の物理的な空間の差異を考慮すること、を含む。Ｚによってマッピングされた物理的な各点Ｐi、すなわちロボット基台および較正プレートの間の変換が、ロボット座標系におけるＰiの物理的な位置に対応する。加えて、ＡＸＢ-1でマッピングされた物理的な各点Ｐiがやはりロボット座標系におけるＰiの物理的な位置に対応する。２つの物理的な点の間の距離が特別であって良く知られる。それ故に、すべての変換でマッピングされたすべての点の差異の二乗総和、Σ（ＡＸＢ-1Ｐi−Ｚｐi）2を検討でき、この構成が良く定義され、３次元の点の間の距離の測定に依存し、かつ固定変換の間の差異を推量することに依存しない。
【００２２】
Σ（ＡＸＢ-1Ｐi−Ｚｐi）2を最小にする実施形態が、カメラに対して較正プレート姿勢を推量することに依存するといった不利を免れ得なく、このような方法が次善の策であって、というのは、計算されたカメラ−較正プレート姿勢には初期の特徴データに及ばない情報しか含まれていないからである。各計算されたカメラ−較正プレート姿勢が、通常、ある方向において、他の方向よりも正確であり、該方向正確性情報がカメラ−較正プレート姿勢の中に含まれない。カメラ−較正プレート姿勢が、通常、ある方向において他の方向よりも正確であることは、較正プレートの向きの較正が通常較正プレートの傾きよりも正確に推量できるということを考慮すれば理解されよう。
【００２３】
留意点の１つとして、ＴｓａｉとＬｅｎｚおよびＳｔｒｏｂｌとＨｉｒｚｉｎｇｅｒにより記載されたような方法には、単一カメラを較正することを意図している欠点があることである。これらの方法が複数のカメラの同時に較正することを前提としていなく、各カメラがそれぞれに較正される。各カメラをそれぞれに較正することの欠点は、各個々の較正が異なる較正プレート姿勢を想定することであり、一方で較正プレートの姿勢がすべてのカメラに一貫していることが知られている。すべての関係する物理制約を組み込むことで、ほとんどの較正精度は常に改善する。
【００２４】
他に、相対変換を考慮するＴｓａｉとＬｅｎｚの方法の欠点が、相対変換が一時的に連続するロボット姿勢に基づいていることである。結果、ロボット姿勢の異なる一時的に順番が異なるハンドアイ較正を伴う恐れがある。例示的に、本発明がロボット姿勢の順番に影響されないハンドアイ較正を提供する。
【００２５】
この改良技術の例示の実施形態が、計算されたカメラ−較正プレート姿勢に依存する代わりに、観測される画像特徴位置から直接にハンドアイ較正のパラメータを推量する。改良技術の例示の実施形態において、装置が対応するカメラ上の三次元点の投影を推量し、推量二次元位置を測定した二次元位置と比較する。改良技術の別の実施形態において、各カメラにおける特徴点ｆiに対応する三次元光線ｒiが較正プレートの対応する変換した点の三次元点と比較される。次に、これらの個々の比較からの寄与が二乗総和のように集計、統合されて、それによって、二乗総和差異を最小にするハンドアイ較正パラメータが推量される。さらに別の実施形態では、個々の比較の寄与がそれぞれのカメラからの距離によって重み付けされて、三次元の放射および対応する三次元の点の間の距離が画像差異に近付く。
【００２６】
マシンビジョンカメラを視覚案内ロボットに対して実装する２つの基本的な方法がある。第１の例示の実施形態において、１つまたは複数のマシンビジョンカメラが、図１を参照して次に説明される、静止位置に実装されて、ロボットの作業域を見る。第２の例示の実施形態では、１つまたは複数のマシンビジョンカメラが関節のあるアームおよび／または端部作動体に取り付けられる（その結果１つまたは複数のカメラがロボットと動く）が、図２を参照して次に説明する。尚、マシンビジョン測定がロボットによって適宜に用いられるために、これら２つの基本的なマシンビジョンカメラの実装方法にはハンドアイ較正が必要である。
【００２７】
１．較正周囲
図１が本発明の例示の実施形態による典型的な周囲１００の概略図であり、較正プレートが端部作動体に取り付けられて状態で、複数のカメラが空間に実装されてロボット較正へのマシンビジョンを実施するのに用いられる。周囲１００が例示的には複数のカメラ１０５Ａ、Ｂ、Ｃを有し、それらが空間的に固定され、それぞれが少なくとも周囲１００の部分を見ている。カメラ１０５がそれぞれ、特別なカメラ座標系における視野の画像を取得する。３台のカメラ１０５Ａ、Ｂ、Ｃが示されているが、本発明の主旨では何れの数のカメラで用いられても良い。尚、別の実施形態では、異なるカメラ数が用いられても良い。このように、３つのカメラの記載が単に例として取り上げられる。ロボットが例示的にロボット基台１１０および端部作動体１２０が端部に配設されている関節アーム１１５を備える。例示的には、ロボット基台１１０が周囲１００内に固定される。本発明の例示の実施形態によれば、カメラ１０５の視野がロボット基台１１０に対して較正される。すなわち、ロボット基台１１０が較正に用いられるロボット座標系の原点として機能する。当業者が想定するように、ロボットがその端部作動体の繰り返し動作を実行して、ロボット基台に対して姿勢を取る。本発明の例示の実施形態がロボット基台の座標系に対してマシンビジョンシステムのロバストな較正を可能にする。
【００２８】
関節アーム１１５が例示的に３つの区分を有して示される。しかしながら、別の実施形態では、異なる数の区分が用いられることに留意すべきである。このように、３つの区分の関節アーム１１５の記述が単に例として取りあげられている。関節アームを端部作動体に位置付ける他の方法が多くあり、端部作動体に位置付ける代替の駆動部には、リニアステージの複合や、スチュワートプラットフォーム（Ｓｔｕａｒｔ  ｐｌａｔｆｏｒｍｓ）などが含まれる。さらには、端部作動体１２０が、機構的、電磁的、真空吸着などの従来技術に知られている何れの種類の端部作動体で構成されて良い。本発明の例示の実施形態によれば、較正プレート１２５が端部作動体１２０に付けられる。較正プレートが通常にマシンビジョンシステムに用いられる従来の較正プレートで構成されて良い。典型的な較正プレートがマサチューセッツ州ナティックのＣｏｇｎｅｘ社から販売されている。典型的な較正プレートがモデル番号３２０−５０２９ＲでＣｏｇｎｅｘ社から市販されている。代替の較正プレートおよび特徴の測定方法が米国特許第６，１３７，８９３号に記載されている。代替の較正プレートおよび特徴の測定方法が米国特許第６，８１６，１８７号に記載されている。代替の較正プレートおよび特徴の測定方法がＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ  Ｖｏｌｕｍｅ  ＲＡ−３、ｐａｇｅｓ３２３−３４４に、Ｒｏｇｅｒ  Ｙ  Ｔｓａｉによる「Ａ  Ｖｅｒｓａｔｉｌｅ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｈｉｇｈ−Ａｃｃｕｒａｃｙ  ３Ｄ  Ｍａｃｈｉｎｅ  Ｖｉｓｉｏｎ  Ｍｅｔｒｏｌｏｇｙ  Ｕｓｉｎｇ  Ｏｆｆ−ｔｈｅ−Ｓｈｅｌｆ  ＴＶ  Ｃａｍｅｒａ  ａｎｄ  Ｌｅｎｓｅｓ」に記載されている。
【００２９】
しかしながら、本発明の別の実施形態によれば、較正プレートの異なる種類が用いられても良いことに留意されたい。較正プレートの１つの例が、較正パターンを表示する表示画面である。較正プレートの別の例が変わるパターンを表示する表示画面であって、複数の画像が異なるパターンの表示画面が得られ、結果の組合せが較正プレートの単一の取得とみなされる。このように、上記の援用される米国特許出願に記載の較正プレートが単に例として挙げられるに過ぎない。較正プレート１２５が端部作動体が動いている間にずれることのないように端部作動体に固定される。さらに下記に記載のように、関節アーム１１５および端部作動体１２０がカメラ１０５の視野内で複数の姿勢に動く。尚、較正プレートが別法では端部作動体ではなく駆動部の何れかに取り付けられ、しかしながら、この代替の状況では、当該のロボット姿勢が駆動部の適当な位置の姿勢に対応しなければならない。複数の姿勢から収集された画像データが、次に本発明の例示の実施形態で教示するように用いられて、較正変換を生成する。
【００３０】
図２がマシンビジョンロボット較正用の代表的な周囲２００の概略図であって、本発明の例示の実施形態によれば、複数のカメラがロボットの関節アームに固定される。較正プレート１２５が周囲２００に固定される。例示的には、本発明の例示の実施形態によれば、較正プレートが固定されて較正処理中に動かない。ロボット基台１１０がやはり周囲２００内に固定される。関節アーム１１５がロボット基台１１０に連結され、端部作動体１２０が関節アーム１１５の端末に配置される。関節アーム１１５の端部に固定されるのは複数のカメラ２０５Ａ、Ｂである。カメラ２０５が例示的に関節アーム１１５および／または端部作動体１２０に固定される。カメラ２０５が動かないように固定されて関節アーム１１５および／または端部作動体１２０に影響されずに動かない。尚、本発明の例示の実施形態によれば、カメラ２０５が何れの数で用いられて良い。このように、２つのカメラ２０５Ａ、Ｂが用いられる説明は単に例として挙げられているに過ぎない。さらに図４を参照して次に記載のように、関節アーム１１５および／または端部作動体１２０が様々な姿勢に動いて、較正プレート１２５の画像が取得される。
【００３１】
尚、本発明の例示の実施形態によれば、別には、カメラが端部作動体とは別の駆動部の何れの部分に取り付けられ、しかしながら、この別法の状況では、当該のロボット姿勢が駆動部の適切な位置の姿勢に対応しなければならない。さらには、この別法の状況では、異なるカメラが駆動部の異なる部分に取り付けられなければならない。取得された画像から、較正情報が取得または計算されて、図５を参照して次に記載される制御システム（図示せず）がロボット基台座標系に関してロボットを制御できる。
【００３２】
２．固定の（静止の）カメラを用いての較正
例示的には、１つまたは複数の静止カメラのハンドアイ較正用に、較正プレートなどの較正対象がロボットの関節アームおよび／または端部作動体の何れに動かずに固定され、ロボットが様々な姿勢に動いて、その結果、較正対象が１つまたは複数のカメラで見られる。較正対象の取得画像がロボット姿勢と一緒に保存される。
【００３３】
単一の静止カメラの場合、ハンドアイ較正が例示的に２つの変換、（１）マシンビジョンシステムの世界座標系に関するロボットの座標系、（２）較正対象の姿勢および端部作動体の姿勢の間の変換、を推量することで実行される。カメラが外因性および内因性の両方のパラメータ用に前較正（ｐｒｅ―ｃａｌｉｂｒａｔｅｄ）され、カメラ較正がハンドアイ較正の間および後で一定に保たれることが考えられる。カメラ較正にはカメラの姿勢およびマシンビジョンシステムの世界座標系の間の変換が含まれるので、本質的にマシンビジョンシステムの世界座標系を推量することはカメラの姿勢を推量することであり、というのは、カメラの姿勢が一定に保たれるカメラ較正変換を介してマシンビジョンシステムの世界座標系に連結されるからである。
【００３４】
尚、ハンドアイ較正用に取得された画像がカメラ（すなわち、外因性および内因性パラメータを決定する）を較正するのに用いることもでき、このように、カメラがハンドアイ較正の前に較正されなくても良く、というのは、ハンドアイ較正手順が例示的に最初のステップとしてハンドアイ較正を含んで良いからである。
【００３５】
ハンドアイ較正の間、カメラが定位置に動かずにいると共にロボット基台が定位置に動かずにいるので、ロボットの座標系が一定に保たれると共に、マシンビジョンシステムの座標系も一定に保たれる。したがって、ロボット座標系および視覚装置の座標系の間の変換は１つだけである。同様に、ハンドアイ較正の処理中、較正対象が関節アームおよび／または端部作動体に動かずに固定維持されるので、端部作動体の姿勢を較正対象の姿勢に関係させる変換は１つだけである。
【００３６】
変換Ｇがロボットの座標系からマシンビジョンシステムの座標系へ移す。変換Ｈが較正対象から端部作動体の姿勢へ移す。マッピングＰがマシンビジョンシステムの座標系の３次元の点から取得画像の２次元の点に移すように、カメラが計算されているものと仮定する。カメラの較正および対応するマッピングＰがハンドアイ較正の間中およびその後で一定に維持されることが考えられる。変換Ｒｉが端部作動体姿勢（ステップｉにおける）からロボット座標系へ移す。用語のｘ（ｉ，ｕ，ｖ，ｗ）がステップｉにおける画像特徴抽出によって観察される画像特徴のｘ座標系を指し、較正対象の物理的な座標系（ｕ，ｖ，ｗ）に対応するものとする。用語のｙ（ｉ，ｕ，ｖ，ｗ）がステップｉにおける画像特徴抽出によって観察される画像特徴のｙ座標系を指し、較正対象の物理的な座標系（ｕ，ｖ，ｗ）に対応するものとする。したがって、（ｘ（ｉ，ｕ，ｖ，ｗ）、ｙ（ｉ，ｕ，ｖ，ｗ））が取得画像の発見された特徴の２次元の位置である。この取得画像の２次元の位置が較正対象の３次元の位置（ｕ，ｖ，ｗ）に対応する。較正対象の３次元の位置（ｕ，ｖ，ｗ）が端部作動体の３次元の位置Ｈ*（ｕ，ｖ，ｗ）に対応する。端部作動体の３次元の位置Ｈ*（ｕ，ｖ，ｗ）がロボット座標系における３次元の位置Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）に対応する。ロボット座標系の３次元の位置Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）がマシンビジョンシステムの座標系における３次元の位置Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）に対応する。３次元の位置Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）が取得画像の２次元の位置Ｐ（Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））に対応する。取得画像に発見された特徴の２次元位置（ｘ（ｕ，ｖ，ｗ），ｙ（ｕ，ｖ，ｗ））がそれぞれ推定される２次元位置Ｐ（Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））に対応する。発見された２次元の特徴位置それぞれに対して、発見された２次元の特徴位置が推定された２次元位置と比較されて、画像座標系における差異、Ｐ（Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））−（ｘ（ｉ，ｕ，ｖ，ｗ）、ｙ（ｉ，ｕ，ｖ，ｗ））を生成する。差異二乗総和
Σ｜Ｐ（Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））−（ｘ（ｉ，ｕ，ｖ，ｗ）、ｙ（ｉ，ｕ，ｖ，ｗ））｜2
が、実際の測定データおよび予測データの間の差異を連結させたものである。本発明の例示の実施形態によれば、実際に測定されたデータおよび予測されたデータの間の最小の残留二乗総和を生じるＧおよびＨパラメータを解くことによって、ハンドアイ較正が改善される。尚、Ｈが自由度６（６ＤＯＦ）であり、マシンビジョンシステムの座標系およびロボット座標系の間の変換をパラメータ化する（並進に３自由度、回転に３自由度）。尚、Ｇが６自由度（６ＤＯＦ）であり、較正対象で画定される較正物理座標系および端部作動体座標系の間の変換をパラメータ化する（並進に３自由度、回転に３自由度）。
【００３７】
Ｇａ、Ｇｂ、Ｇｃ、Ｇｃ、Ｇｘ、Ｇｙ、ＧｚがＧの６変数パラメータとされ、Ｈａ、Ｈｂ、Ｈｃ、Ｈｘ、Ｈｙ、ＨｚがＨの６変数パラメータとされる。Ｅ（Ｇａ，Ｇｂ，Ｇｃ，Ｇｃ，Ｇｘ，Ｇｙ，Ｇｚ，Ｈａ，Ｈｂ，Ｈｃ，Ｈｘ，Ｈｙ，Ｈｚ｜測定画像特徴位置、対応較正位置、および対応ロボット姿勢）が、１２変数Ｇａ，Ｇｂ，Ｇｃ，Ｇｃ，Ｇｘ，Ｇｙ，Ｇｚ，Ｈａ，Ｈｂ，Ｈｃ，Ｈｘ，Ｈｙ，Ｈｚ、および測定画像特徴位置、対応の較正位置、および対応のロボット姿勢で決まる二乗総和誤差関数を指すものとする。Ｅが｜Ｐ（Ｇ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））−（ｘ（ｉ，ｕ，ｖ，ｗ）、ｙ（ｉ，ｕ，ｖ，ｗ））｜2から個々の寄与を繰返し加算することに基づいて数値的に計算される。
【００３８】
例示の実施形態では、ハンドアイ較正のパラメータがＴｓａｉとＬｅｎｚの方法の変体を用いて、最初に大雑把に推量される。Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  Ｒｅｓｅａｒｃｈ、Ｖｏｌｕｍｅ  １８，  Ｎｏ．３，  ｐａｇｅ２８６−２９８に記載されたＤａｎｉｉｌｉｉｄｉｓ「Ｈａｎｄ  Ｅｙｅ  Ｃａｌｉｂｒａｔｉｏｎ  Ｕｓｉｎｇ  Ｄｕａｌ  Ｑｕａｔｅｒｎｉｏｎｓ」に記載された技術が、その内容が本明細書に援用されるが、例示的に用いられて、ハンドアイ較正パラメータを大雑把に推量する。別の実施形態では、ユーザがハンドアイ較正パラメータの粗い推量値を手で入力する。他の実施形態では、コンピュータプログラムがハンドアイ較正パラメータの粗い複数の推量値を挙げてこれら列記された粗い推量値をそれぞれ精度を上げて、最低の残留を発生する精度の上げられたハンドアイ較正パラメータを選択する。
【００３９】
例示的には、本発明の例示の実施形態が勾配降下技術を用いてパラメータ値を改良して、Ｅを最小にするパラメータ値を探す。ＧおよびＨの３次元回転のパラメータがハンドアイ較正に対応する変換の粗い推量を用いる。
【００４０】
四元法算法が３次元の回転空間をパラメータ化するよく知られた効果的な方法であるが、該四元法算法は４つのパラメータ、ｓ０、ｓ１、ｓ２、ｓ３を有するということから免れられない。四元法算法が、幸いなことに、投影される座標系について規定されるので、４つの値ｒ*ｓ０、ｒ*ｓ１、ｒ*ｓ２、ｒ*ｓ３をスケーリングすることが３次元回転に影響されない。その結果、１つの値の固定された座標系表示が規定されて、そこで四元法算法の４つの値の１つが１または−１に固定されて他の四元法算法座標系の３つが３つのパラメータに対応する。このパラメータ化が有効であり、というのは、おおよその３次元の回転が粗い推量から知られ、したがって１または−１として固定する該四元法算法座標系が適当に選択されるからである。
【００４１】
特には、Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑｕｅｔｔｅ最適化技術が例示的に用いられ、傾斜降下を実行して、誤差関数の偏導関数が局所的極値において０であり、Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑｕｅｔｔｅ技術が連立方程式について解を同時に数学的に解き、この場合、偏導関数のセットが、ｄＥ／ｄＧａ、ｄＥ／ｄＧｂ、ｄＥ／ｄＧｃ、ｄＥ／ｄＧｘ、ｄＥ／ｄＧｙ、ｄＥ／ｄＧｚ、ｄＥ／ｄＨａ、ｄＥ／ｄＨｂ、ｄＥ／ｄＨｃ、ｄＥ／ｄＨｙ、ｄＥ／ｄＨｚ、である。ここで、Ｅ（）はＧａ、Ｇｂ、Ｇｃ、Ｇｘ、Ｇｙ、Ｇｚ、Ｈａ、Ｈｂ、Ｈｃ、Ｈｙ、Ｈｚの関数なので、その偏導関数はすべてＧａ、Ｇｂ、Ｇｃ、Ｇｘ、Ｇｙ、Ｇｚ、Ｈａ、Ｈｂ、Ｈｃ、Ｈｙ、Ｈｚの関数で良い。
【００４２】
Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑｕｅｔｔｅ技術を用いるために、Ｅの偏導関数が任意のパラメータ値で計算される必要がある。用語ベクトルＪはパラメータ値の任意選択を指す。Ｅの偏導関数の第１次数が各独立値について数学的に推量でき、それは構成（ｃｏｎｆｉｇｕｒａｔｉｏｎ）Ｊで計算されたＥおよび隣接の構成で計算されたＥの間の差分を計算することでなされ、該隣接の構成が構成Ｊの周りで対称かつ値の１つにおいてわずかに異なるものとされ、次いで、対称構成での変数値の間の差分で除算する。たとえば、ＧｃについてのＥの偏導関数が構成Ｊで計算でき、該計算がＥ値の差分および変数の差分の間の比率（Ｅ（ＧａJ，ＧｂJ，ＧｃJ＋δ，ＧｘJ，ＧｙJ，ＧｚJ，ＨａJ，ＨｂJ，ＨｃJ,ＨｘJ，ＨｙJ，ＨｚJ）−Ｅ（ＧａJ，ＧｂJ，ＧｃJ−δ，ＧｘJ，ＧｙJ，ＧｚJ，ＨａJ，ＨｂJ，ＨｃJ,ＨｘJ，ＨｙJ，ＨｚJ））／（２δ）を計算することでなされる。例示的には、δに対する１０Λ−４の値が用いられが、他の実施形態ではδの異なる値を用いることもできる。別の実施形態では、変数に関するＥの偏導関数が構成Ｊにおいて非対象標本構成を用いて計算され、たとえば、該計算がＥ値の差分および変数の差分の間の比率（Ｅ（ＧａJ，ＧｂJ，ＧｃJ＋δ，ＧｘJ，ＧｙJ，ＧｚJ，ＨａJ，ＨｂJ，ＨｃJ,ＨｘJ，ＨｙJ，ＨｚJ）−Ｅ（ＧａJ，ＧｂJ，ＧｃJ，ＧｘJ，ＧｙJ，ＧｚJ，ＨａJ，ＨｂJ，ＨｃJ,ＨｘJ，ＨｙJ，ＨｚJ））／δを計算することでなされる。
【００４３】
別の実施形態が変数に関するＥの偏導関数を解析的に計算することができ、該計算が誤差関数Ｅに対する解析式を立てることでなされる。記号を用いて計算された偏導関数が数値を用いて計算された偏導関数よりも正確であり、またユーザが数値の偏導関数を計算するステップサイズを選択する必要がない。第１に、汎用代数誤差関数が、１つの２次元画像特徴位置および対応する３次元較正特徴位置の間の誤差、およびロボット姿勢を不明のパラメータの多変数代数式を特徴づけて公式化する。
【００４４】
内部的には、Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑａｕｄｔ最適化方法が最適化されるべき式の偏導関数を含む。式の系が誤差関数の偏導関数であるので、Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑａｕｄｔ技術が用いる偏導関数がＥ関数の第２次偏導関数となる。第２次偏導関数が２つの変数に対して数値的に推量され、該推量がｄＥ／ｄｖａｒ偏導関数における差分（変数の１つにおける小量で分離される）と該小量との間の比率を数値的に計算してなされる。たとえば、Ｇｃに対するＥの第２次偏導関数が構成Ｊにおいて計算でき、すなわち、（ｄＥ／ｄｖａｒ（ＧａJ，ＧｂJ，ＧｃJ＋ε，ＧｘJ，ＧｙJ，ＧｚJ，ＨａJ，ＨｂJ，ＨｃJ,ＨｘJ，ＨｙJ，ＨｚJ）−ｄＥ／ｄｖａｒ（ＧａJ，ＧｂJ，ＧｃJ，ＧｘJ，ＧｙJ，ＧｚJ，ＨａJ，ＨｂJ，ＨｃJ,ＨｘJ，ＨｙJ，ＨｚJ））／εで計算される。例示の実施形態では、最大１００の反復が用いられ、Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑａｕｄｔ最適化に対して、εの１０Λ−４の値、ラムダの１０Λ−２の値、δの１０Λ−６の値が計算される。変数ラムダが通常Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑａｕｄｔ最適化に対するダンピングファクタとして参照して用いられる。
【００４５】
尚、このハンドアイ較正の方法が各カメラおよび端部作動体の間に特別な６自由度変換があるという制約が明示的に課され、一方で、ロボット座標系および較正対象で画定される物理的座標系の間に特別な６自由度があるという制約を実行する。というのは、ハンドアイ較正方法が各カメラおよび端部作動体の間の６自由度変換、およびロボット座標系および較正プレートの間の６自由度変換をパラメータ化するからである。これらの制約が実際の物理系を正確に反映し、これらのハンドアイ較正方法における制約を課すことで、これら制約の係らないハンドアイ較正方法よりも、正確なハンドアイ較正方法を提供する。
【００４６】
本発明の別の態様の実施形態が、端部作動体に関係する複数のカメラの姿勢および較正プレートの姿勢について同時に較正することに関わる。発明のこの態様において、各カメラ姿勢が各カメラに対する６パラメータを用いてそれぞれパラメータ化される。これにより、ｎ台のカメラのハンドアイ較正をする全体システムが６*ｎ＋６パラメータを含み、その中で、６*ｎパラメータがｎ台のカメラ用の、６パラメータが端部作動体に対する較正対象の姿勢用である。ハンドアイ較正が各カメラに対する異なるマシンビジョン座標系を考慮することで、複数のカメラに実行される。このことは、特定のカメラの較正が各カメラに想定されマシンビジョン座標系の若干異なる姿勢がそのカメラのカメラ較正で特定されるよりも若干異なるカメラ姿勢と等しい。さらに、各カメラに対して異なるマシンビジョン座標系を特徴づけるこのアプローチが、ハンドアイ較正を改良するための体系に容易に組み込まれる。１つのカメラに対するハンドアイ較正に用いられる１２のパラメータ、Ｇ１ａ，Ｇ１ｂ，Ｇ１ｃ，Ｇ１ｘ，Ｇ１ｙ，Ｇ１ｚ，Ｈａ，Ｈｂ，Ｈｃ,Ｈｘ，Ｈｙ，Ｈｚと比べて、ハンドアイ較正がハンドアイ較正を特徴づけるために、６*（ｎ＋１）パラメータ、Ｇ１ａ，Ｇ１ｂ，Ｇ１ｃ，Ｇ１ｘ，Ｇ１ｙ，Ｇ１ｚ，Ｇ２ａ，Ｇ２ｂ，Ｇ２ｃ，Ｇ２ｘ，Ｇ２ｙ，Ｇ２ｚ、．．．Ｇｎａ，Ｇｎｂ，Ｇｎｃ，Ｇｎｘ，Ｇｎｙ，Ｇｎｚ、Ｈａ，Ｈｂ，Ｈｃ,Ｈｘ，Ｈｙ，Ｈｚを用いる。
【００４７】
複数のカメラのシステムにハンドアイ較正を実行するために、（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ））をカメラｋに対応する取得画像において発見された特徴の２次元位置とする。取得画像のこの２次元の位置が較正対象における３次元位置（ｕ，ｖ，ｗ）に対応する。較正対象の３次元位置（ｕ，ｖ，ｗ）が端部作動体における３次元位置Ｈ*（ｕ，ｖ，ｗ）に対応する。端部作動体における３次元位置Ｈ*（ｕ，ｖ，ｗ）がロボット座標系の３次元位置Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）に対応する。ロボット座標系の３次元位置Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）がカメラｋのマシンビジョンシステムの座標系における３次元位置Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）に対応する。３次元位置Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ）がカメラｋの取得画像における２次元位置Ｐｋ（Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））に対応する。各（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ））が予測される２次元位置Ｐｋ（Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））に対応する取得画像の発見された特徴の２次元位置である。各発見された２次元の特徴の位置用に、発見された２次元の特徴の位置が予測される２次元位置と比較して差異、Ｐｋ（Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））−（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ））を生成する。この差異の二乗が、｜Ｐｋ（Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））−（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ））｜2である。これら差異の二乗の総和がΣ｜Ｐｋ（Ｇｋ*Ｒｉ*Ｈ*（ｕ，ｖ，ｗ））−（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ））｜2である。
【００４８】
例示の実施形態では、マシンビジョンシステムの座標系を画定する較正対象姿勢がハンドアイ較正用の画像の１つを取得するように用いられるように、画像の取得および較正対象の位置が配置される。例示的には、これがハンドアイ較正用に取得された画像を、カメラ較正用の画像として用いて実現され、そこでは、ハンドアイ較正に用いられる画像の１つが、カメラ較正用のマシンビジョン座標系を画定するために用いられる画像である。別法では、先ずハンドアイ較正用の画像を取得し、次に較正対象を同じ姿勢のままでハンドアイ較正用に先ず取得した画像をマシンビジョン座標系を画定する画像として用いることで、これが実現される。
【００４９】
図３が、本発明の例示の実施形態による、固定カメラを用いてマシンビジョンをロボット較正に実行する代表的な手順３００のステップを詳述する流れ図である。手順３００がステップ３０５で始まりステップ３１０に続くが、ここで１つまたは複数のカメラが空間に固定される。上記のように、本発明の例示の実施形態では、複数のカメラを同時に較正できる。例示的には、較正に用いられるカメラが環境の中に固定され、そこで、動くことのできないようにして用いられる。較正プレートがステップ３１５で関節アームの端部作動体に固定される。別の実施形態では、較正プレートが端部作動体ではなく関節アームの１つの区分に固定せれても良い。このように、較正プレートが端部作動体に固定されることが単に例として取り上げて説明されたに過ぎない。
【００５０】
次いでステップ３２０で端部作動体が複数の姿勢に動いて、各複数の姿勢における較正プレートの画像が取得される。例示的には、これら姿勢の中の動きが少なくとも２つの非平行軸の回りの回転を含む。さらには、較正情報を良く取得するように、回転角度が少なくとも５°とされる。これが必須の条件ではないが、様々な姿勢の間の大きな回転および動きに対して改良された結果が得られる。
【００５１】
次いでステップ３２５で、画像特徴抽出技術が取得画像において実行されて較正プレートにおける特徴を抽出する。例示的には、特徴抽出ステップがＣｏｈｎｅｘ社からその特徴検出器として市販されているような技術を用いる。特徴を測定する別の方法が、米国特許第６，１３７，８９３に記載されている。特徴を測定する別の方法が、米国特許第６，８１６，１８７に記載されている。特徴を測定する別の方法が、ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ  Ｖｏｌｕｍｅ  ＲＡ−３、Ｎｏ４、ｐａｇｅｓ３２３−３４４に、Ｒｏｇｅｒ  Ｙ  Ｔｓａｉによる「Ａ  Ｖｅｒｓａｔｉｌｅ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｈｉｇｈ−Ａｃｃｕｒａｃｙ  ３Ｄ  Ｍａｃｈｉｎｅ  Ｖｉｓｉｏｎ  Ｍｅｔｒｏｌｏｇｙ  Ｕｓｉｎｇ  Ｏｆｆ−ｔｈｅ−Ｓｈｅｌｆ  ＴＶ  Ｃａｍｅｒａ  ａｎｄ  Ｌｅｎｓｅｓ」に記載されている。尚、しかしながら別の実施形態では、様々な特徴抽出技術が用いられて良い。このように、上記の援用される米国特許に記載の技術を用いることが単に例として取り上げて説明されたに過ぎない。さらに、本発明の別の実施形態では、特徴抽出がたとえば３次元カメラ、レンジカメラ、共に動作して３次元情報を供給する構造的な照明およびカメラの複合、感熱カメラを用いる熱特徴検出器などからの３次元特徴を用いることを含んだ、様々な技術を用いて良い。たとえば、２つ以上のカメラが較正プレートを見て各特徴の３次元位置を測定するステレオカメラ装置が用いられても良い。
【００５２】
別法では、不均一レンズや、ミラー、ホログラフレンズなどの複数の独自光路と一緒に用いられる単一検知要素が複数の個別カメラとなることが検討されても良い。別法では、同じ光路を共有する複数検知要素が単一カメラとなることが検討されても良い。
【００５３】
このように、従来のマシンビジョンシステムを用いる特徴検出が単に例として取り上げて説明されたに過ぎない。
【００５４】
各カメラに対して、較正プレート姿勢（各カメラに対する較正プレートの姿勢）が次いでステップ３３０で計算される。すなわち、固有データおよび知られる特徴位置および観察された特徴位置の間の相関性を用いて、カメラの姿勢が較正プレートに対して計算される。このステップがカメラの固有パラメータが前較正されていることを想定している。しかしながら、別の実施形態では、カメラが収集したデータを用いて較正されて、よって最初のカメラの較正および次のマシンビジョンシステムおよびロボットの間の較正の実行といった２つのステップをスキップして良い。カメラ較正が、たとえば米国特許第６，８１６，１８７記載されたような良く知られた技術を用いて実行されても良い。別法では、ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ  Ｖｏｌｕｍｅ  ＲＡ−３、Ｎｏ４、ｐａｇｅｓ３２３−３４４に、Ｒｏｇｅｒ  Ｙ  Ｔｓａｉによる「Ａ  Ｖｅｒｓａｔｉｌｅ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｈｉｇｈ−Ａｃｃｕｒａｃｙ  ３Ｄ  Ｍａｃｈｉｎｅ  Ｖｉｓｉｏｎ  Ｍｅｔｒｏｌｏｇｙ  Ｕｓｉｎｇ  Ｏｆｆ−ｔｈｅ−Ｓｈｅｌｆ  ＴＶ  Ｃａｍｅｒａ  ａｎｄ  Ｌｅｎｓｅｓ」に記載されている技術を用いて、カメラ較正が実行されても良い。尚、本発明の別の実施形態では、様々な形式のカメラ較正が用いられて良い。このように、上記に援用された米国特許出願を用いるカメラ較正が単に例として取り上げて説明されたに過ぎない。
【００５５】
対応するロボット姿勢と共に取得された画像が、次いでステップ３３５で処理される。この予備の処理が例示的にプレートおよびロボットの動きを記述する。各対の画像およびロボット姿勢が次いで動きを最大にするように再配列される。ステップ３３０で前較正されたカメラのパラメータで計算された各プレート姿勢の場合、各２つのプレート姿勢の間の動きが計算される。同様に、２つのロボット姿勢の間の動きが計算される。プレート動きおよびロボット動きの対が次いですべて計算されて、差異が所定の閾値でカットされるそれら対が例示的に異常値に見なされて動き対から除かれる。
【００５６】
ロボットの動きおよび較正プレートの動きに対して、単一軸の回りの等価な回転を用いて表すならば、またはスクリュモーションを用いて表すならば、回転角が理想状況に等しくなる。したがって、ロボットの動きおよび較正プレートの動きの間の同じ対との回転角の差が、差異として用いることができる。再配列によってシステムが任意の順番の姿勢から一定動作を抽出し、実質的に回転を有する動きを用い、その結果、より安定で正確でロバストな較正が決定される。
【００５７】
較正系が次いでステップ３４０でロボット基台座標系における変換を特定する直線系を解く。上記のように、これが例示的に変体をＴｓａｉとＬｅｎｚの技術に用いる。尚、ステップ３３０〜３４０が本発明の別の実施形態においては任意である。
【００５８】
別法では、カメラ−ロボット変換および端部作動体−較正位置変換の推量がステップ３４２で得られる。その変換が次いでステップ３４５で改善される。上記の予測された２次元特徴位置および発見された位置の間の差異の二乗総和を最小にすることに基づいて改善される。別法では、端部作動体から較正プレートまでの変換、および各カメラからロボット座標系までの変換の初期推量が先ず報告のロボット姿勢および計算されたロボット姿勢の中の差異を変換を用いて最小にする独立した精密化により改善される。次いで、精密化された変換が２次元特徴位置差異ベースの精密化ステップに送られる。別法では、チェックステップが精密化された後に付加されて、精密化結果が特定のチェック基準値対して精密化されていない結果よりも良好な結果でない場合に、精密化結果を無視することもできる。
【００５９】
変換一貫精密化（報告されたロボット姿勢および計算されたロボット姿勢の中の差異を変換を用いて最小にする）がやはり複数カメラ、すなわち、複数の固定カメラを同時に精密化して、較正プレート座標系からロボット端部作動体座標系への１つの変換だけである。
【００６０】
変換一貫精密化の一例が次の通りである。Ｚがカメラ座標系からロボット基台座標系への変換を表わすものとする。Ｘが較正プレート系からロボットの端部作動体系への変換を表わすものとする。Ｂｉが位置ｉでのロボット姿勢（ロボット端部作動体座標系からロボット基台座標系への変換）である。Ａｉが位置ｉでの１つのカメラに対する較正プレート姿勢（較正プレート座標系からカメラ座標系への変換）である。変換Ａｉが時には測定された変換と呼ばれる。合成Ｚ＿ｉｎｖｅｒｓｅ*Ｂｉ*Ｘが時には予期された変換と呼ばれる。次の合成が恒等変換（ｉｄｅｎｔｉｔｙ  ｔｒａｎｓｆｏｒｍ）（較正プレート座標系から較正プレート座標系への変換なので）と言える。
Ａｉ＿ｉｎｖｅｒｓｅ*Ｚ＿ｉｎｖｅｒｓｅ*Ｂｉ*Ｘ
精密化の目的が各Ａｉ＿ｉｎｖｅｒｓｅ*Ｚ＿ｉｎｖｅｒｓｅ*Ｂｉ*Ｘ、およびすべてのカメラおよび動きへの恒等変換の間の総合差異を最小にすることである。
【００６１】
ハンドアイ較正の応用において、２つの変換（または２つの姿勢）の間の差異を計算する例示的に方法が次のように作業空間次元を用いることに基づく。ロボット視覚応用の作業容積が境界ボックスで表わされ、次いで変換Ｘ１および変換Ｘ２の間の差異が、境界ボックスの８つのマッピングされた頂点の位置を比較して測定できる。
Σ（Ｘｉ*ｖｉ−Ｘ２*ｖｉ）
ｉ＝１−８
【００６２】
例示的にステップが、変換一貫精密化からの精密化の変換を用い、それを画像特徴ベースの精密化に供給される。そこで初期推量がさらにより精密化されて、精密化の変換が画像特徴を用いることにより高速化され、かつ最小局所に閉じ込められることを避けることができる。
【００６３】
チェック用基準の一例が、精密化前の二乗平均差異と比較されるように、精密化後に計算される画像座標系における差異の二乗平均平方根（ｒｍｓ）である。ある場合では、ロボット動きがマシンビジョン程度に正確でなくても良く、正確でないロボット姿勢に基づいたカメラ−端部作動体変換およびロボット基台−較正プレート変換に、精密化が過剰となるかもしれない。精密化前後の残余を比較することで、精密化の結果を取り込むかを決めることができる。
【００６４】
精密化が向上したかどうかを判断する別の方法では、カメラ較正の画像座標系における差異の二乗平均平方根（ｒｍｓ）で精密化された後に計算された画像座標系における二乗平均差異を比較する。精密化後の残余をカメラ較正に関連する残余と比較することで、精密化の結果を取り込むかを決めることができる。
【００６５】
次いでステップ３５０でカメラ／マシンビジョンシステムが変換で設定される。カメラ／マシンビジョン設定により、装置がロボット基台座標系に関してマシンビジョンシステムによって視覚される位置を報告することができる。次いでステップ３５５で手順３００が完了する。
【００６６】
Ｃ．動く（ロボットに実装の）カメラを用いた較正
例示の実施形態において、カメラが関節アームに固定されて、端部作動体に従って変形される。較正対象がカメラで視覚されるように位置付けられて、ロボットアーム／端部作動体が様々な姿勢に動いて較正対象が１つまたは複数のカメラで視覚される。較正対象の取得画像がロボット姿勢と合わせて再配列される。
【００６７】
単一固定カメラのハンドアイ較正の方法と同様に、単一の動きカメラのハンドアイ較正が２つの変換を計算することで実行され、それは、（１）較正対象で規定されるロボット座標系および物理座標系の間の変換、（２）カメラのマシンビジョン座標系および端部作動体の姿勢の間の変換である。ロボット基台および較正対象がハンドアイ較正手順の間は静止しているので、ロボット座標系および較正対象の間の１つの変換しかない。同様に、ハンドアイ較正の間はカメラが端部作動体に対して固定して位置付けられたままなので、端部作動体の姿勢をカメラの姿勢に関連させる１つの変換しかない。
【００６８】
さらに、静止カメラのハンドアイ較正の方法と同様に、動くカメラのハンドアイ較正がハンドアイ較正画像をすべて用いてハンドアイ較正を実行し、その結果、カメラがハンドアイ較正に先んじて前較正される必要がない。変換Ｇがロボット座標系から較正対象の座標系へ移す。ＧΛ−１変換が較正対象の座標系からロボット座標系へ移す。変換Ｈがカメラのマシンビジョンシステム座標系から端部作動体姿勢へ移す。変換ＨΛ−１が端部作動体姿勢からカメラのマシンビジョンシステム座標系へ移す。マッピングＰがマシンビジョンシステム座標系における３次元の点から取得画像における２次元の点へ移すようにカメラが較正されると仮定する。ハンドアイ較正手順およびその後で、カメラ較正（内部および外部パラメータ）および対応するマッピングＰが一定であるものと仮定される。用語Ｒｉが端部作動体姿勢（ステップｉにおける）からロボット座標系へ移す変換を指すものとする。用語ＲｉΛ−１がロボット座標系（ステップｉにおける）から端部作動体姿勢（ステップｉにおける）へ移す変換を指すものとする。用語ｘ（ｉ，ｕ，ｖ，ｗ）が、較正対象上の物理座標系（ｕ，ｖ，ｗ）に対応するステップｉにおける画像特徴位置のｘ座標系を指すものとする。用語ｙ（ｉ，ｕ，ｖ，ｗ）が、較正対象上の物理座標系（ｕ，ｖ，ｗ）に対応するステップｉにおける画像特徴位置のｙ座標系を指すものとする。各（ｘ（ｉ，ｕ，ｖ，ｗ），ｙ（ｉ，ｕ，ｖ，ｗ））が取得画像における発見された特徴の２次元の位置である。取得画像のこの２次元の位置が較正対象における３次元位置（ｕ，ｖ，ｗ）に対応する。較正対象の３次元位置（ｕ，ｖ，ｗ）がロボット座標系における３次元位置ＧΛ−１*（ｕ，ｖ，ｗ）に対応する。ロボット座標系における３次元位置ＧΛ−１*（ｕ，ｖ，ｗ）が端部作動体における３次元位置ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）に対応する。端部作動体の座標系における３次元位置ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）がカメラのマシンビジョンシステムの座標系における３次元位置ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）に対応する。３次元位置ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）が取得画像における２次元位置Ｐ（ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））に対応する。取得画像の発見された特徴の各（ｘ（ｉ，ｕ，ｖ，ｗ），ｙ（ｉ，ｕ，ｖ，ｗ）２次元位置が予測される２次元位置Ｐ（ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））に対応する。各発見された２次元特徴位置に対して、発見された２次元特徴位置が予測された２次元位置を比較されて差異Ｐ（ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））−（ｘ（ｉ，ｕ，ｖ，ｗ），ｙ（ｉ，ｕ，ｖ，ｗ）が生成される。この差異の距離の二乗が、｜Ｐ（ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））−（ｘ（ｉ，ｕ，ｖ，ｗ），ｙ（ｉ，ｕ，ｖ，ｗ）｜2である。これら差異の二乗の総和がΣ｜Ｐ（ＨΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））−（ｘ（ｉ，ｕ，ｖ，ｗ），ｙ（ｉ，ｕ，ｖ，ｗ）｜2であって、画像座標系における実際の測定データおよび予測された位置の間の複合差異に対応する。例示的には、実際の測定データおよび予測された位置の間の差異の最小二乗総和を発生するＧおよびＨパラメータを解くこ��で、ハンドアイ較正が計算される。パラメータ値が実際の測定データおよび予測された位置の間の差異の二乗総和を最小にするＧおよびＨに対して解かれる。
【００６９】
動くカメラ、すなわちカメラがロボットに実装されているカメラ、のハンドアイ較正の方法が、静止カメラのハンドアイ較正の方法と類似する。単一の静止カメラのハンドアイ較正の方法と同じように、単一の実装カメラのハンドアイ較正がやはり１２変数Ｇａ、Ｇｂ、Ｇｃ、Ｇｘ、Ｇｙ、Ｇｚ、Ｈａ、Ｈｂ、Ｈｃ、Ｈｘ、Ｈｙ、Ｈｚに関する系をパラメータ化し、そして、先ず、ハンドアイ較正の粗い推量を計算し、次いで傾斜降下などの最適化方法を用いてパラメータ推量を精密化する。単一静止カメラのハンドアイ較正の方法と同じように、単一の動くカメラのハンドアイ較正の方法がやはり誤差関数Ｅ（Ｇａ、Ｇｂ、Ｇｃ、Ｇｘ、Ｇｙ、Ｇｚ、Ｈａ、Ｈｂ、Ｈｃ、Ｈｘ、Ｈｙ、Ｈｚ）を計算し、該機能が実際の測定された特徴位置および予測された特徴位置の間の二乗総和差異を特徴付けて傾斜降下などの最適化方法を用いてパラメータを精密化する。単一の静止カメラのハンドアイ較正の方法と同じように、単一の動くカメラのハンドアイ較正の方法の例示の実施形態が、やはり誤差関数の偏導関数の系においてＬｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｄｔを用い、ここで、これらの偏導関数が数値的に計算される。
【００７０】
複数の静止カメラのハンドアイ較正の方法と同じように、複数の動くカメラのハンドアイ較正の方法の例示の実施形態がやはり複数のカメラを扱うが、これは、異なるマシンビジョンシステム座標系を各カメラに関連させ、６ｎ＋６パラメータを用い、ハンドアイ較正（この場合は１つのＧ変換およびｎのＨ変換であるが）Ｇａ、Ｇｂ、Ｇｃ、Ｇｘ、Ｇｙ、Ｇｚ、Ｈ１ａ、Ｈ１ｂ、Ｈ１ｃ、Ｈ１ｘ、Ｈ１ｙ、Ｈ１ｚ、Ｈ２ａ、Ｈ２ｂ、Ｈ２ｃ、Ｈ２ｘ、Ｈ２ｙ、Ｈ２ｚ．．．Ｈｎａ、Ｈｎｂ、Ｈｎｃ、Ｈｎｘ、Ｈｎｙ、Ｈｎｚを特徴付けて、ハンドアイ較正を特徴付けることでなされる。
【００７１】
複数の静止カメラのハンドアイ較正の方法のように、複数の動きカメラのハンドアイ較正の方法の例示の実施形態がやはり（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ））をカメラｋに対する取得画像の発見された特徴の２次元位置を指すものとする。取得画像のこの２次元位置が較正対象の３次元位置（ｕ，ｖ，ｗ）に対応する。較正対象の３次元位置（ｕ，ｖ，ｗ）がロボット座標系における３次元位置ＧΛ−１*（ｕ，ｖ，ｗ）に対応する。ロボット座標系における３次元位置ＧΛ−１*（ｕ，ｖ，ｗ）が端部作動体座標系における３次元位置ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）に対応する。端部作動体座標系における３次元位置ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）がカメラｋのマシンビジョンシステムの座標系における３次元位置ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）に対応する。３次元位置ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ）が取得画像における２次元位置Ｐｋ（ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））に対応する。取得画像の発見された特徴の各（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ）２次元位置が予測される２次元位置Ｐｋ（ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））に対応する。各発見された２次元特徴位置に対して、発見された２次元特徴位置が予測された２次元位置を比較されて差異Ｐｋ（ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））−（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ）が生成される。この差異の距離の二乗が、｜Ｐｋ（ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））−（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ）｜2である。これら差異の二乗の総和がΣ｜ｋＰ（ＨｋΛ−１*ＲｉΛ−１*ＧΛ−１*（ｕ，ｖ，ｗ））−（ｘｋ（ｉ，ｕ，ｖ，ｗ），ｙｋ（ｉ，ｕ，ｖ，ｗ）｜2であって、画像座標系における実際の測定データおよび予測された位置の間の複合差異に対応する。例示的には、実際の測定データおよび予測された位置の間の差異の最小二乗総和を発生するＧおよびＨ１．．．Ｈｎパラメータを解くことで、ハンドアイ較正が計算される。パラメータ値が実際の測定データおよび予測された位置の間の差異の二乗総和を最小にするＧおよびＨ１．．．Ｈｎに対して解かれる。
【００７２】
図４が本発明の例示の実施形態によるロボットに固定されたカメラを用いてマシンビジョンをロボット較正に実行する例示的に手順４００のステップを詳述する流れ図である。手順４００がステップ４０５で始まり、ステップ４１０に続き、そこでは１つまたは複数のカメラがロボットに固定される。上記のように、本発明の例示の実施形態が複数のカメラを同時に較正できる。例示的には、較正用に用いられるカメラがロボットの関節アームおよび／または端部作動体に固定される。較正プレートがステップ４１５で空間に固定される。例示的には、較正プレートが較正処理中に動かないように固定される。端部作動体が次いで複数の姿勢に動かされて、ステップ４２０で各複数の姿勢における較正プレートの画像が取得される。例示的には、すべての姿勢の中の動きには少なくとも２つの非平行軸の回りの回転が含まれる。より良い較正情報を得るには、回転角が少なくとも５度とされる。これは必須の要件ではないが、動きの中でより大きな回転の方が、改善された結果が得られる。
【００７３】
画像検出技術が取得画像に施されて、ステップ４２５で較正プレート上の特徴を検出する。上記のように、特徴検出がＣｏｇｎｅｘ社から特徴検出器として市販されているものなどの技術を用いて良い。特徴を測定する別の方法が米国特許第６，１３７，８９３号に記載されている。特徴を測定する別の方法が米国特許第６，８１６，１８７号に記載されている。特徴を測定する別の方法が、ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ  Ｖｏｌｕｍｅ  ＲＡ−３、Ｎｏ４、ｐａｇｅｓ３２３−３４４に、Ｒｏｇｅｒ  Ｙ  Ｔｓａｉによる「Ａ  Ｖｅｒｓａｔｉｌｅ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｈｉｇｈ−Ａｃｃｕｒａｃｙ  ３Ｄ  Ｍａｃｈｉｎｅ  Ｖｉｓｉｏｎ  Ｍｅｔｒｏｌｏｇｙ  Ｕｓｉｎｇ  Ｏｆｆ−ｔｈｅ−Ｓｈｅｌｆ  ＴＶ  Ｃａｍｅｒａ  ａｎｄ  Ｌｅｎｓｅｓ」に記載されている。さらに上記のように、本発明の別の方法において、特徴抽出がたとえば３次元カメラからの３次元特徴の使用、感熱カメラを用いた熱特徴検出などを含む様々な技術を用いて良い。
【００７４】
各カメラに対して、較正プレート姿勢が次いでステップ４３０で計算される。すなわち、内部データおよび知られた特徴位置および観察された特徴位置の間の対応の組を用いることで、カメラ姿勢が較正プレートに対して計算される。このステップがカメラが事前較正されていることを想定している。しかしながら、別の実施形態では、カメラが集合されたデータを用いて較正されても良く、これにより２つの処理、すなわち先ずカメラを較正し、次にヘッドマシンビジョンシステムおよびロボットの間の較正を実行することを避けても良い。取得画像および対応するロボット姿勢が次いでステップ４３５で事前処理される。この事前処理が例示的に各プレートおよびロボットの動きを記録する。画像およびロボット姿勢の各対が次いで再配列されて動きを最大にする。ステップ４３０で計算された事前較正のカメラパラメータのある各カメラ姿勢の場合、各２つのカメラ姿勢の間の動きが計算される。同様に、２つのカメラの姿勢の間の動きが計算される。カメラ動きおよびロボット動きの対がすべて計算され、所定の閾値でカットされる差異の対が異常値と見なされて動き対から除かれる。
【００７５】
ロボットおよびカメラ動きの対に対して、単一軸の回りの等価な回転を用いて回転を表わす場合、またはスクリュモーションを用いて回転を表わす場合、回転角が理想状態と等価とされる。したがって、ロボット動きおよびカメラ動きの間の回転角の同じ対との相異が差異として用いられる。
【００７６】
装置が再配列によって姿勢から任意の順の一貫した動きを抽出でき、実質的に回転の動きを用いることができ、その結果、さらに安定で正確でロバスト性のある較正を決定する。
【００７７】
尚、別の実施形態では、ステップ４３０−４４０が任意である。較正装置が次いで直線系を解いて、ステップ４４０でロボット基台座標系における変換を計算する。別の実施形態では、ステップ４４２で、カメラ−ロボット変換および端部作動体−較正プレート変換の初期推量が得られる。変換が次いでステップ４４５で精密化される。精密化が予測された上述の２次元画像特徴位置および発見された特徴位置の間の二乗総和差異を最小にすることに基づく。別法では、端部作動体からカメラへの変換、およびプレートからロボット基台系への変換に対する初期推量が先ず変換を用いて報告されたロボット姿勢および計算されたロボット姿勢の間の差異を最小にする個々の精密化で精密化される。次いで、精密化された変換が２次元特徴位置差異ベースの精密化へ供給される。別法では、チェックステップが精密化の後に追加されて、精密化の結果がチェック基準に対して精密化されていない結果よりも良い結果を提供しない場合に精密化された結果を無視する。
【００７８】
変換一貫精密化（報告されたロボット姿勢および計算されたロボット姿勢の０間の差異を変換を用いて最小にする）が、複数のカメラに対して位置を同時に精密化する。換言すると、複数の動いているカメラの場合に対して、較正プレート座標系からロボット基台座標系へ変換が１つしかない。
【００７９】
変換一貫精密化の１つの実施形態が次のようである。Ｚが較正プレート座標系からロボット基台座標系への変換を指すものとし、Ｘがカメラ座標系からロボット端部作動体座標系への変換である。Ｂｉがｉ点におけるロボット姿勢（ロボット端部作動体の座標系からロボット基台座標系への変換）である。Ａｉがｉ点における１つのカメラに対する較正プレート姿勢（較正プレート座標系からカメラ座標系への変換）である。変換Ａｉが測定された変換と呼ばれる場合がある。次の構成が識別の変換と言える（というのは、較正プレート座標系から較正プレート座標系への変換の構成であるからである）。
Ｚ＿ｉｎｖｅｒｓｅ*Ｂｉ*Ｘ*Ａｉ
精密化の目的がすべてのカメラおよび動きに対する各Ｚ＿ｉｎｖｅｒｓｅ*Ｂｉ*Ｘ*Ａｉおよび識別の変換の間の総合差異を最小にすることである。構成Ｚ＿ｉｎｖｅｒｓｅ*Ｂｉ*Ｘ*Ａｉの逆数が予測された変換と呼ばれる場合がある。
【００８０】
ハンドアイ較正の用途において、２つの変換（２つの姿勢）の間の差を計算する例示的に方法が次のように作業空間の大きさを用いることに基づく。ロボット−視覚用途の空間容積が境界ボックスで表されると仮定すると、変換Ｘ１および変換Ｘ２の間の差が変換、特には境界ボックスの８頂点、ｖ１からｖ８でマッピングされた点の間の距離を検討して計算される。
Σ（Ｘ１*ｖｉ−Ｘ２*ｖｉ）
ｉ＝１−８
【００８１】
例示的にステップが画像特徴ベースの精密化を用いてさらにカメラ−端部作動体変換およびロボット基台−較正プレート変換を精密化する前に、これらを精密化することである。最初にマッピングされた点の間の差異の基準を用いて変換を精密化することで、画像特徴ベースの精密化に対してより良い初期推量が得られ、ハンドアイ較正が高速化され、そのロバスト性もより高められる。
【００８２】
チェック基準の１つの実施形態が、精密化前の差異の二乗平均平方根と比較されるように、精密化後に計算された画像座標系差の差異の二乗平均平方根である。ある場合では、ロボット動きが視覚装置より正確ではなく、精密化が不正確なロボット姿勢に基づくカメラ−端部作動体変換およびロボット基台−較正プレート変換に過剰適合かもしれない。精密化の前後で残留を比較して、精密化の結果を取り込むかを決定できる。
【００８３】
精密化が改善されたかどうかを判断する別の方法が、精密化後の計算された画像座標系における差異の二乗平均平方根をカメラ較正の画像座標系における差異の二乗平均平方根と比較することである。精密化後の残留をカメラ較正に関連された残留と比較することによって、精密化からの結果を取り込むかを判断できる。
【００８４】
カメラ／マシンビジョンシステムが次いでステップ４５０で変換で構成される。手順４００が次いでステップ４５５で完了する。
【００８５】
Ｄ．制御メカニズム
図５が本発明の例示の実施形態による機械視覚装置およびロボット用の制御メカニズムを示す代表的な環境５００の概略ブロック図である。ロボット基台１１０が端部作動体１２０をその端末に有する関節アーム１１５に内部接続されて動作する。例示的に、ロボット制御装置５００がプロセッサ５１５、入力／出力アダプタセット５２０、およびメモリ５２５を備える。メモリ５２５に保存されるのは、ロボット制御装置５０５およびロボットとを制御するソフトウェア５３０である。例示的に、ロボット制御装置５０５がプログラマブルリードオンリメモリ（ＰＲＯＭ）や、不揮発ランダムアクセスメモリ（ＮＶＲＡＭ）などを使用することを含む様々なフォーマットに移植されて良い。このように、ロボット制御装置５０５の構成要素がただ例として取り上げて説明したに過ぎない。尚、さらに別の実施形態では、ロボット制御装置５０５がソフトウェアなどを持たないハードウェア接続であっても良い。
【００８６】
また、環境５００内には、カメラ１０５Ａ、Ｂが備えられる。尚、環境５００には、カメラ１０５が空間に固定されるように示されているが、別の実施形態では、カメラがロボットの関節アームまたは／および端部作動体１２０に実装されても良い。このように、カメラ１０５が空間に固定されることが単に例として取り上げているに説明しているに過ぎない。カメラ１０５が機械視覚装置５１０と動作可能に内部接続される。機械視覚装置５１０が例示的にプロセッサ５３５、入力／出力アダプタ５４０およびメモリ５４５を備える。メモリ５４５が例示的に本発明の例示的な実施形態による新規の較正技術を実行するソフトウェア５５０を有する。また、ロボット制御装置５０５を参照して上述したように、機械視覚装置５１０が、代替、または追加のおよび／または異なる構成要素を備えて良い。このように本明細書では単に例として取り上げて説明したに過ぎない。
【００８７】
上記に本発明の例示的な実施形態を詳述してきた。編成において発明の主旨および範囲から逸脱しないで様々な変体が生成できる。また、本説明がハードウェア上で実行されるソフトウェアに関して記載したが、本発明が教示されたことがソフトウェアとして実行できることは明白に分かり、該ソフトウェアにはプログラム指令を有し、コンピュータや、ハードウェア、ファームウェア、それらの複合上で実行するコンピュータ読取り可能メディアが含まれる。したがって、上記の説明は単に例として取り上げたに過ぎず、発明の範囲を限定するものではない。
【図１】
0005904676.tif 000002
【図２】
0005904676.tif 000003
【図３】
0005904676.tif 000004
【図４】
0005904676.tif 000005
【図５】
0005904676.tif 000006