(57)【要約】  ツールとロボットに取り付けた一つのカメラを用いて対象物の３次元配置およびその取り扱いを行う方法が開示されている。該方法において、少なくとも６個の、対象物の通常の形状特徴である、目標となる形状特徴が対象物上で選択される。
2005515910.tif 000002
【特許請求の範囲】
【請求項１】
ロボットにより、該ロボットに取り付けられたツールおよび単一のカメラを用いて、対象物を取り扱う方法であって、該方法は、
ｉ）カメラのキャリブレーションを行なう工程であって、
ａ）カメラ固有のパラメータと、
ｂ）ロボットツールに対するカメラの位置（“ハンド−アイ”キャリブレーション）と、
ｃ）対象物が教示される場所に厳密な空間（“トレーニングスペース”）上でのカメラの位置とを検出することによって行われる工程と、
ｉｉ）対象物の形状特徴を教示する工程であって、
ａ）対象物を“トレーニングスペース”に置き、“カメラからトレーニングスペース”への変換が計算されたキャリブレーションポジションにおいて対象物の画像をロボットによって捕捉することと、
ｂ）捕捉した画像から少なくとも６個の可視の形状特徴を選択することと、
ｃ）“トレーニングスペース”での各々の形状特徴の３次元位置を計算することと、
ｄ）“トレーニングスペース”に整合されているが対象物に関連している“オブジェクトスペース”を定義し、形状特徴の３次元座標を“オブジェクトスペース”に置換することと、
ｅ）“オブジェクトスペース”内の形状特徴の３次元位置と前記画像内の形状特徴の位置を用いて“オブジェクトスペースからカメラ”への変換を計算することと、
ｆ）所期のロボット作業軌道を教示するために使用される“オブジェクトスペース”内の“オブジェクトフレーム”を定義することと、
ｇ）“オブジェクトフレームからカメラ”および“カメラからツール”の変換を用いて、“ツールフレーム”におけるオブジェクトフレームの位置および方向を計算することと、
ｈ）“オブジェクトフレーム”をロボットに送信することと、
ｉ）ロボットを用いて、“オブジェクトフレーム”に関して所期の作業軌道を教示することとによって行なわれる工程と、
ｉｉｉ）対象物の検出および配置を実行する工程であって、
ａ）ロボットを対象物が収容されている容器容器上の所定位置に配置し、対象物の画像を捕捉することと、
ｂ）その視野内において選択されるべき形状特徴の数が不十分な場合には、少なくとも６個の形状特徴が見つかるまでロボットを移動させることと、
ｃ）画像上の形状特徴の位置およびそれらに相応する教示工程で計算された“オブジェクトスペース”における位置を用いて“オブジェクトスペース”と“カメラスペース”間の変換として対象物の位置を計算することと、
ｄ）その変換を用いて、カメラが対象物に対して直交して見えるようにカメラを配置するためのロボットの動きを計算することと、
ｅ）ロボットを工程ｄ）で計算した位置へ移動することと、
ｆ）工程ｃ）と同様に“オブジェクトスペースからカメラスペース”への変換を求めることと、
ｇ）その求められた変換をと“カメラからツール”への変換とを用いて、教示工程で記憶されたオブジェクトフレームを計算することと、
ｈ）その計算された“オブジェクトフレーム”をロボットに送信することと、
ｉ）“ツール”の位置を用いて、“ロボットスペース”においてそのフレームを定義付け、“ロボットスペース”内の対象物に対して所期の作業軌道を実行することとによって行なわれる工程と、
を含む方法。
【請求項２】
ロボットにより、該ロボットに取り付けられたツールと単一のカメラを用いて対象物を取り扱う方法であって、該方法は、
ｉ）カメラのキャリブレーションを行なう工程であって、
ａ）カメラ固有のパラメータと、
ｂ）ロボットツールに対するカメラの位置（“ハンド−アイ”キャリブレーション）とを検出することによって行なわれる工程と、
ｉｉ）対象物の形状特徴を教示する工程であって、
ａ）対象物をカメラの視野内におき、該対象物の画像を捕捉することと、
ｂ）捕捉した画像から少なくとも６個の可視の形状特徴を選択することと、
ｃ）対象物と関係するスペース（“オブジェクトスペース”）内の選択された形状特徴の現実座標における３次元位置を計算することと、
ｄ）このスペースの形状特徴の３次元位置と画像上の位置とを用いて、“オブジェクトスペースからカメラ”の変換を計算することと、
ｅ）ハンドリング軌道を教示するために使われる“オブジェクトスペース”内の“オブジェクトフレーム”を定義付けることと、
ｆ）“オブジェクトフレームからカメラ”および“カメラからツール”の変換を用いて、“ツールフレーム”内の“オブジェクトフレーム”の位置と方向を計算することと、
ｇ）その計算された“オブジェクトフレーム”をロボットに送信することと、
ｈ）“オブジェクトフレーム”内での所期の作業軌道を教示することとによって行なわれる工程と、
ｉｉｉ）対象物の検出および配置を行なう工程であって、
ａ）ロボットを対象物が入っている容器容器上の所定位置に配置することと、
ｂ）前記視野内において選択されるべき形状特徴の数が不十分な場合には、少なくとも６個の形状特徴が見つかるまでロボットを移動させることと、
ｃ）前記画像からの形状特徴の位置およびそれらに相応する教示工程で計算された“オブジェクトスペース”における位置を用いて、“オブジェクトスペース”と“カメラスペース”間の変換として対象物の位置を計算することと、
ｄ）その変換を用い、カメラが対象物に対して直交して見えるようにカメラを配置するためのロボットの動きを計算することと、
ｅ）工程ｄ）と同様に“オブジェクトスペースからカメラスペース”への変換を求めることと、
ｆ）その求められた変換および“カメラからツール”への変換を用いて、教示工程で記憶されたオブジェクトフレームを計算することと、
ｇ）その計算された“オブジェクトフレーム”をロボットに送信することと、
ｈ）“ツール”の位置を用いて“ロボットスペース”におけるそのフレームを定義付け、“ロボットスペース”内の対象物に対する所期の作業軌道を実行することとによって行なわれる工程と、
を含む方法。
【請求項３】
請求項１に記載の方法において、前記６個の可視の形状特徴が、少なくとも１つのアンカー形状特徴と少なくとも５個の他の可視の形状特徴から構成され、前記アンカー形状特徴の位置と方向が、それら残り一連の選択された形状特徴の位置を計算するために用いられる方法。
【請求項４】
請求項３に記載の方法において、アンカー形状特徴の位置と方向が、残りの選択された形状特徴の位置を推測するために最初に使用され、その後、それらの残りの形状特徴の実際の位置が探索されて決定される方法。
【請求項５】
請求項２に記載の方法において、前記６個の可視の形状特徴が、少なくともひとつのアンカー形状特徴と少なくとも５個の他の形状特徴とから構成され、そのアンカー形状特徴の位置と方向とが、それら残り一連の選択された形状特徴の位置を計算するために用いられる方法。
【請求項６】
請求項５に記載の方法において、アンカー形状特徴の位置と方向が、残りの選択された形状特徴の位置を推測するために最初に使用され、その後、それらの残りの形状特徴の実際の位置が探索されて決定される方法。
【請求項７】
請求項２に記載の方法において、工程ｉｉ）のｃ）において、かかる形状特徴の３次元位置が対象物のＣＡＤモデルを用いて提供される方法。
【請求項８】
請求項２に記載方法において、工程ｉｉ）のｃ）において、かかる形状特徴の３次元位置が自動的に計算される方法。
【請求項９】
請求項１に記載の方法において、工程ｉｉ）のｈ）およびｉ）が、ユーザーに所望の作業軌道点を相互作用的に選択させることと、対象物の現在の位置と方向とを用いて計算される選択された点の座標をロボットに送信することとによって行なわれる方法。
【請求項１０】
請求項２に記載の方法において、工程ｉｉ）のｇ）およびｈ）が、ユーザーに所望の作業軌道点を相互作用的に選択させることと、対象物の現在の位置と方向とを用いて計算される選択された点の座標をロボットに送信することととによって行なわれる方法。
【請求項１１】
請求項１に記載の方法において、工程のｉｉ）のｉ）において、所期の作業軌道点がオフラインのロボットプログラミングソフトウェアアプリケーションから得られる方法。
【請求項１２】
請求項２に記載の方法において、工程ｉｉ）のｈ）において、所期作業軌道点がオフラインのロボットプログラミングソフトウェアアプリケーションから得られる方法。
【請求項１３】
請求項１に記載の方法において、“オブジェクトフレーム”ポイント、作業軌道点、またはその他対象となる点の座標が、ツールからロボットベースへの変換を用いて置換され、全ての座標がロボットベース座標フレーム内のロボットへ送信される方法。
【請求項１４】
請求項２に記載の方法において、“オブジェクトフレーム”ポイント、作業軌道点、またはその他対象となる点の座標が、ツールからロボットベースへの変換を用いて置換され、全ての座標がロボットベース座標フレーム内のロボットへ送信される方法。
【請求項１５】
請求項２に記載の方法において、工程ｉ）のａ）およびｂ）、並びに工程ｉｉ）のｃ）が、モデル認識によるロボティックアイおよびハンド−アイの関係のセルフキャリブレーション法を用いることによって排除される方法。
【請求項１６】
請求項１に記載の方法において、工程ｉｉｉ  ｄ）における対象物位置の決定がアルゴリズムを用いることによって行われ、そのアルゴリズムが、
ｉ）以下の論文に詳述されている方法から派生する、非線形の最大効率法を用いた３次元姿勢の推定であって、前記論文が、
・Zhengyou Zhangによる“A Flexible New Technique for Camera Calibration （カメラキャリブレーションのためのフレキシブルな新技術）”および
・Roger Y. Tsai による“An Efficient and Accurate Camera Calibration Technique for 3D Machine Vision（３Ｄ画像装置のための効率的で精度の高いカメラキャリブレーション技術）”である、３次元姿勢の推定と、
ｉｉ）Yucai Liu, Thomas S. Huang, Oliver D. Faugerasによる“Determination of Camera Location from 2D to 3D Line and Point Correspondances(２次元から３次元の線・点一致を判断するカメラロケーション）”に述べられている、選択された形状特徴がエッジ（縁）である場合における線の一致による３次元姿勢の推定と、
ｉｉｉ）Chien_Ping Lu, Gregory D. Hager, Eric Mjolsness による“Fast and Globally Convergent Pose Estimation from Video Images( 迅速に世界的レベルで収束しつつあるビデオ画像からの位置方向判断) ”に述べられている“直交的反復(orthogonal iteration)”を用いた姿勢の推定と、
ｉｖ）Thomas Huang, Alfred Bruckenstein, Robert Holt, Arun Netravaliによる“Ununiquness of 3D Pose Under Weak Perspective:A Geometric Proof(悪条件の視野における３次元位置方向判断の特徴：幾何学的) ”で試行された、悪条件視野での近似的対象物位置判断と、
ｖ）Chen, Armstrong, Raftopoulosによる“An investigation on the accuracy of three-dimensional space reconstruction using Direct Linear Transformation technique （直接一次的置換法を用いた３次元空間再構築の精度に基づく精査）”に述べられているＤＬＴ（直接一次的置換法）を用いた近似的対象物位置判断とのうちのいずれかである、方法。
【請求項１７】
請求項２に記載の方法において、工程ｉｉｉ  ｄ）における対象物位置の決定がアルゴリズムを用いることによって行われ、そのアルゴリズムが、
ｉ）以下の論文に詳述されている方法から派生する、非線形の最大効率法を用いた３次元姿勢の推定であって、前記論文が、
・Zhengyou Zhangによる“A Flexible New Technique for Camera Calibration （カメラキャリブレーションのためのフレキシブルな新技術）”および
・Roger Y. Tsai による“An Efficient and Accurate Camera Calibration Technique for 3D Machine Vision（３Ｄ画像装置のための効率的で精度の高いカメラキャリブレーション技術）”である、３次元姿勢の推定と、
ｉｉ）Yucai Liu, Thomas S. Huang, Oliver D. Faugerasによる“Determination of Camera Location from 2D to 3D Line and Point Correspondances （２次元から３次元の線・点一致を判断するカメラロケーション）”に述べられている、選択された形状特徴がエッジ（縁）の場合における線の一致による３次元姿勢の推定と、
ｉｉｉ）Chien_Ping Lu, Gregory D. Hager, Eric Mjolsness による“Fast and Globally Convergent Pose Estimation from Video Images( 迅速に世界的レベルで収束しつつあるビデオ画像からの位置方向判断) ”に述べられている“直交的反復(orthogonal iteration)”を用いた姿勢の推定と、
ｉｖ）Thomas Huang, Alfred Bruckenstein, Robert Holt, Arun Netravaliによる“Ununiquness of 3D Pose Under Weak Perspective:A Geometric Proof(悪条件の視野における３次元位置方向判断の特徴：幾何学的) ”で試行された、悪条件視野での近似的対象物位置判断と、
ｖ）Chen, Armstrong, Raftopoulosによる“An investigation on the accuracy of three-dimensional space reconstruction using Direct Linear Transformation technique （直接一次的置換法を用いた３次元空間再構築の精度に基づく精査）”に述べられているＤＬＴ（直接一次的置換法）を用いた近似的対象物位置判断とのうちのいずれかである、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本本発明は、ビジョンガイドロボティクス( 視覚認識ロボット制御）の分野、特にシングルカメラ三次元（３Ｄ）ビジョンガイドロボティクスの方法と装置に関連したものである。
【背景技術】
【０００２】
ロボットは製造工程において、多くの用途で幅広く使用されている。様々な種類のセンサがロボットを誘導するために使われているが、それらの作業において、なかでもマシンビジョンが益々多く使われる傾向にある。通常、そのようなマシンビションは、対象物がＸ，Ｙ平面上に位置していればよい２次元の用途において、単一カメラを用いて、使用されている。例として、ラルーサ(LaRussa) の特許文献１を参照されたい。しかしながら、多くのロボットの用途は、ロボットに対象物を３次元で位置を認識させ、且つ作業を行わせる必要がある。過去において、このような用途は２個もしくはそれ以上のカメラの使用を必要としてきた。例として、バーク(Birk)らの特許文献２およびビーマン(Bieman)らの特許文献３を参照されたい。ハードウェアのコストを削減するためには、単一のカメラの使用が望ましい。以前のシングルカメラシステムは、特化された複数のセンサを含むレーザー三角測量法を使用してきたが、該センサは幾何学的位置関係を保持するために厳密にパッケージ化されていなければならず、ツール間の精巧なキャリブレーション法を必要とし、工場内の環境下で作動されるときに損傷を受けやすく、また測定ミスなどの要因となることがあった。
【０００３】
目標対象物の移動空間内で、単一もしくは複数のカメラを用いて位置認識を行う場合、その支援には、対象物上の目標点が用いられてきた。ピンクニー(Pinkney) らの特許文献４およびプライアー(Pryor) の特許文献５〜８を参照されたい。通常、これらの方法は、対象物の以前の位置に対する新たな位置を計算することを含む。そのような位置の計算は開始時点における対象物の３次元上の位置情報を必要とするものである。しかし、これらの方法は産業用用途として要求される精度や反復性の条件を満たすには不向きである。
【特許文献１】米国特許第４，４３７，１１４号
【特許文献２】米国特許第４，１４６，９２４号
【特許文献３】米国特許第５，９５９，４２５号
【特許文献４】米国特許第４，２１９，８４７号
【特許文献５】米国特許第５，６９６，６７３号
【特許文献６】米国特許第５，９５６，４１７号
【特許文献７】米国特許第６，０４４，１８３号
【特許文献８】米国特許第６，３０１，７６３号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
それ故に、対象物の３次元上の位置を一般的なビデオカメラ装置を用いて計算する方法において、ロボットのためのビジョンガイダンス並びに対象物の３次元位置情報を必要とする他のアプリケーションに必要なレベルの精度及び反復性を提供することが可能な方法に対するニーズが存在するのである。
【課題を解決するための手段】
【０００５】
ロボットエンドエフェクターに取り付けられた１台のカメラおよびツールを用いたロボットにより、対象物を３次元で取り扱う方法を以下に開示する。この方法では、対象物の形状特徴もしくは目印が、対象物の３次元位置を計算するために使用される。そのプロセ
スは以下の３つの主な工程で行なわれる。
【０００６】
ａ）カメラのキャリブレーション。
ｂ）対象物上の形状特徴の選択。
ｃ）対象物の対象物の3 次元上の姿勢を認識し、その情報を用いて、ロボットを対象物へ誘導し、任意の作業（すなわちハンドリングや切断など）を行なわせる。
【０００７】
本発明の一態様によれば、本発明は、ロボットによって、ロボットに取り付けられたツールおよび単一のカメラを用いて、対象物を取り扱う方法を提供する。該方法は、以下のことを含む。
【０００８】
ｉ）カメラのキャリブレーションを以下の検出により行う。
ａ）カメラ固有のパラメータ
ｂ）ロボットのツールに関するカメラの位置（“ハンド−アイ（ロボットハンドとカメラアイ）”間のキャリブレーション）
ｃ）対象物が教示される場所に対して厳正な空間上でのカメラの位置（“トレーニングスペース”）
【０００９】
ｉｉ）対象物形状特徴の教示を以下によって行う。
ａ）対象物を“トレーニングスペース”に置き、キャリブレーションポジションにあるロボットによって対象物の画像を捕捉する。前記キャリブレーションポジションでは“カメラからトレーニングスペース”への変換が計算される。
ｂ）前記画像から少なくとも６個の可視の形状特徴を選択する。
ｃ）“トレーニングスペース”での各々の形状特徴の３次元位置を計算する。
ｄ）“トレーニングスペース”と整合されているが、対象物に関連している“オブジェクトスペース”を定義し、前記形状特徴の３次元座標を“オブジェクトスペース”に置換する。
ｅ）“オブジェクトスペース”内の形状特徴の３次元位置と前記画像内の形状特徴の位置を用いて“オブジェクトスペースからカメラ”への変換を計算する。
ｆ）所期の作業軌道を教示するために使用される“オブジェクトスペース”内の“オブジェクトフレーム”を定義する。
ｇ）“オブジェクトフレームからカメラ”および“カメラからツール”からの変換を用いて、“ツールフレーム”におけるオブジェクトフレームの位置および方向を計算する。
ｈ）“オブジェクトフレーム”をロボットに送信する。
ｉ）ロボットを用いて“オブジェクトフレーム”に関して所期の作業軌道を教示する。
【００１０】
ｉｉｉ）対象物の検出および配置を以下により実行する。
ａ）ロボットを対象物が収容されている容器容器上の所定位置に配置し、対象物の画像を捕捉する。
ｂ）その視野内において選択されるべき形状特徴の数が不十分な場合には、少なくとも６個の形状特徴が見つかるまでロボットを移動させる。
ｃ）前記画像からの形状特徴の位置およびそれらに相応する教示（トレーニング）工程で計算された“オブジェクトスペース”における位置を用いて、“オブジェクトスペース”と“カメラスペース”との間の変換として対象物の所在位置を計算する。
ｄ）前記変換を用いて、カメラが対象物に対して直交して見えるようにカメラを配置するためのロボットの動きを計算する。
ｅ）ロボットを工程ｄ）で計算した位置へ移動する。
ｆ）工程ｃ）と同様に“オブジェクトスペースからカメラスペース”への変換を求
める。
ｇ）その求められた変換と“カメラからツール”への変換を用いて、教示工程で記憶されたオブジェクトフレームを計算する。
ｈ）計算された“オブジェクトフレーム”をロボットに送信する。
ｉ）“ツール”の位置を用いて、“ロボットスペース”において、そのフレームを定義付け、“ロボットスペース”内の対象物に対して所期の作業軌道を実行する。
【００１１】
本発明の更なる態様によれば、ツールと（ロボットに）取り付けられた単一のカメラを用いたロボットにより、対象物を３次元的に取り扱う方法が提供される。該方法は以下のことを含む。
【００１２】
ｉ）カメラキャリブレーションを以下の検出により行う。
ａ）カメラ固有のパラメータ
ｂ）ロボットツールに関するカメラの位置（“ハンド−アイ”間のキャリブレーション）
【００１３】
ｉｉ）対象物形状特徴の教示を以下によって行なう。
ａ）対象物をカメラ視野内に置き、その画像を捕捉する。
ｂ）撮影した画像から少なくとも６個の可視の形状特徴を選択する。
ｃ）対象物と関係するスペース（“オブジェクトスペース”）内の選択された形状特徴の現実座標における３次元位置を計算する。
ｄ）このスペース内の形状特徴の３次元位置と画像上の位置とを用いて、“オブジェクトスペースからカメラ”の変換を計算する。
ｅ）作業軌道を教示するために使われる“オブジェクトスペース”内の“オブジェクトフレーム”を定義付ける。
ｆ）“オブジェクトフレームからカメラ”および“カメラからツール”の変換を用いて、“ツールフレーム”内の“オブジェクトフレーム”の位置および方向を計算する。
ｇ）その計算された“オブジェクトフレーム”をロボットに送信する。
ｈ）“オブジェクトフレーム”内での所期の作業軌道を教示する。
【００１４】
ｉｉｉ）対象物の検出および配置を以下によって実行する。
ａ）ロボットを対象物が収容されている容器の上の所定の位置に配置する。
ｂ）その視野内において選択されるべき形状特徴の数が不十分な場合には、少なくとも６個の形状特徴がその視野内に位置するまでロボットを移動させる。
ｃ）前記画像からの形状特徴の位置およびそれらに相応する教示工程で計算された“オブジェクトスペース”における位置を用いて、“オブジェクトスペース”と“カメラスペース”と間の変換として対象物の位置を計算する。
ｄ）その変換を用いて、カメラが対象物に対して直交して見えるような位置にカメラを動かすためのロボットの動きを計算する。
ｅ）工程ｄ）と同様に“オブジェクトスペースからカメラスペース”への変換を求める。
ｆ）求められた変換および“カメラからツール”への変換を用いて、教示工程で記憶されたオブジェクトフレームを計算する。
ｇ）その計算された“オブジェクトフレーム”をロボットに送信する。
ｈ）“ツール”の位置を用いて、“ロボットスペース”におけるそのフレームを定義付け、“ロボットスペース”内の対象物に対する所期の作業軌道を実施する。
【発明を実施するための最良の形態】
【００１５】
以下の記載には、本発明をより完璧に理解してもらうための詳細な説明が記されている。しかしながら、本発明はこれらの事項を有さなくても実施されることがある。他の例に
おいては、本発明を不必要に不明瞭にすることを避けるため、周知の要素を詳細に示したり、説明したりしていない。従って、明細書および図面は、意味に制限を加えるのではなく、例示的なものであると見なされるべきである。
【００１６】
図１は、作業アーム１２、ベース２２、およびカメラ１６を備えた取り付けツール１４を有するロボット１０を示している。ツール１４はパーツまたは目標対象物１８を扱うように設計されている。カメラ１６は、好ましくは市場汎用品のアナログもしくはデジタルビデオカメラである。カメラ１６およびロボット１０は、双方向のデータ通信を行うために、コンピュータコントロールステーション２４に電気的に接続されている。
【００１７】
この方法は、以下に述べられる主たる３つの工程で行なわれる。
ａ）カメラキャリブレーション。
ｂ）対象物上の形状特徴の教示。
【００１８】
ｃ）対象物の３次元上の位置を検出し、この情報を用いて、任意の作業（すなわちハンドリング、切断など）を行なうために、ロボットを対象物に接近するように誘導する。
以下の説明において、下記の用語は、図２に示されているように、以下のような意味を有する。
【００１９】
変換(transformation)：２つの空間の間における三次元回転(rotation)および並進(translation) 。
ツール１４：ロボットがハンドリングを行うためのツールであって、作業端部いわゆるエンド・エフェクターを有するツール。
【００２０】
カメラスペース２６：カメラ１６上の点に関して定義され、よってカメラ１６に対して厳正に定義されるフレーム。
ツールスペース２８：ツール１４上の点に関して定義され、エンドエフェクターの方向に沿って配向され、よってツール１４に対して厳正に定義されるフレーム。
【００２１】
ロボットベーススペース３０：ロボットアームの物理的基準に関して定義され、よってロボットベース３０に対して厳正に定義されるフレーム。
トレーニングスペース３２：キャリブレーションプレート４０上の点に関して定義されるとともに、その主軸に整合されているフレーム。
【００２２】
オブジェクトスペース３６：対象物１８に関して定義され、よって対象物１８に対して厳正に定義されるフレーム。
オブジェクトフレーム３４：対象物１８上の点に関して定義され、よって対象物１８に対して厳正に定義されるフレーム。
【００２３】
カメラキャリブレーション固有パラメータ：焦点距離、イメージセンター、現実のピクセルサイズ、レンズの放射方向の歪み（ラジアルディストーション）。
カメラキャリブレーションの外的パラメータ：カメラスペース２６関する外部スペースの回転および並進。
【００２４】
キャリブレーション
キャリブレーションのプロセスは、ｉ）カメラ固有のパラメータを検出することと、ｉｉ）ロボットのツールに対するカメラの配置（“ハンド−アイ（ロボットハンドとカメラアイとの間）”のキャリブレーション）とを含む。“トレーニングスペース”におけるカメラの位置も同様に判定される。前記“トレーニングスペース”は、対象物が教示される空間に対して厳正である。基本的なキャリブレーションアルゴリズムの概説および変数の
説明は以下の刊行物に記されている。
【００２５】
“An Efficient and Accurate Camera Calibration Technique for 3D Machine Vision（３Ｄ画像装置のための効率的で精度の高いカメラキャリブレーション技術）”、ロジャー  ワイ．ツァイ（Roger Y.Tsai)、Proceeding of IEEE Conference on Computer Vision and Pattern Recognition, Miami Beach, FL, 1986 年，第３６４〜３７４頁。
【００２６】
“A Versatile Camera Calibration Technique for High-Accuracy 3D Machine Vision
Metrology Using Off-the-Shelf TV Cameras and Lenses（市場汎用ＴＶカメラとレンズを用いた、高精度で何でも活用できる３Ｄ画像装置のためのカメラキャリブレーション技術）”, ロジャー  ワイ．ツァイ(Roger Y. Tsai), IEEE Journal of Robotics and Automation, Vol.RA-3,No.4, August 1987年，第３２３〜３４４頁。
【００２７】
“Tsai's Camera Calibration Method Revisited（ツァイのカメラキャリブレーション法再訪）”、http://wwww.ai.mit.edu/people/bkph/papers/tsaiexplain.pdf
ツァイのカメラモデルは投射図法のピンホールモデルに基づいている。３次元座標における、ある点（ポイント）の位置が与えられている場合、そのモデルは２次元のピクセル座標におけるその点の画像の位置を推測する。ツァイのモデルは１１個のパラメータであって、５つの内部パラメータ（固有(intrinsic) または内側(interior)パラメータとも称される）、すなわち、
ｉ）ｆ−ピンホールカメラの有効焦点距離、
ｉｉ）ｋａｐｐａｌ−放射状レンズ歪み一次係数、
ｉｉｉ）およびｉｖ）Ｃｘ，Ｃｙ−放射状レンズ歪みの中心の座標と、カメラのセンサー面でのカメラ座標フレームのＺ軸上の貫通点の座標、
ｖ）ｓｘ−フレームグラバーの水平方向スキャンライン再サンプリングに起因する不確実性を示すパラメータと、
６つの外部パラメータ（また外的(extrinsic) または外側(exterior)パラメータとも称される）すなわち、
ｉ）Ｒｘ，Ｒｙ，Ｒｚ−世界座標フレームとカメラ座標フレームと間の変換のための回転角度、
ｉｉ）Ｔｘ，Ｔｙ，Ｔｚ−世界座標フレームとカメラ座標フレームと間の変換のための並進成分とを有する。
【００２８】
内部パラメータはカメラがどのように画像を形成するかを表し、一方、外部パラメータは世界座標フレーム内でのカメラの姿勢（すなわち位置と方向性）を示す。このモデルのキャリブレーションデータは、形状特徴点（例えば、ｍｍ）の３次元（ｘ，ｙ，ｚ）世界座標とそれに相応する画像内での形状特徴点の２次元座標（Ｘｆ，Ｙｆ）（通常、ピクセル単位）から構成される。二つの形式のキャリブレーション、すなわち、
共面(Coplanar)、つまりキャリブレーションポイントが３次元において単一平面にある場合と、
非共面(Non-coplanar)、つまりキャリブレーションポイントが３次元全体にある場合とが可能である。
【００２９】
図２および図５に示されているように、キャリブレーションにおける第一工程は、ロボットアーム１２上のカメラ１６を、鏡によるアプローチを用いて、テンプレート４０に対して直交するように配置し、キャリブレーションに使用されるテンプレート４０に位置調整されたロボットの“トレーニングスペース”を定義付ける。キャリブレーションプレート４０は、床上または他の平面上に置かれる。キャリブレーションプレート４０は、点または四角の格子模様などの一連の固定された検知可能な形状特徴が記されている平らな一枚の紙、プラスティックまたはその他の媒体である。カメラ１６は、キャリブレーション
テンプレート４０の面に直交するように、すなわち、カメラの撮像平面がテンプレート４０に対して平行になるように配置される。直交性を確保するための鏡を使ったアプローチは、平らな鏡をテンプレート４０の格子模様の上に配置することと、格子の中央においてカメラレンズを鏡の上にセンタリングさせることとを含む。
【００３０】
次に、カメラの内部パラメータと“カメラからトレーニングスペース”への変換が、トレーニングスペースをもとに計算される。次に、“カメラからツール”への変換が、“カメラからトレーニングスペース”への変換を用いるとともに、“トレーニングスペース”における“ツール”の位置についてロボットに問い合わせを行なって、計算される。“カメラからトレーニングスペース”への変換をマニュアルで計算するために、オペレータはまず、前記ツールによって、既知の座標を有する前記格子上の３つの識別可能な点に触れる。次に、オペレータは、正しく計測された少なくとも２つの高さ、好ましくは４つの高さからの格子模様の画像を格納する。
【００３１】
これに代わって、キャリブレーションは、カメラの内部パラメータとハンド−アイキャリブレーションの双方を計算することで自動的に行われることも可能である。この技術は、カメラに示された平面パターンを複数の方向（少なくとも２方向）から観測させることを必要とする。パターンはレーザープリンターで印刷され得、平らな面（板など）に接着されている。各々の配置でのツールの位置はロボットから直接取得される。オペレータは、キャリブレーションパターンをロボットおよびカメラの前に配置し、手順を開始する。この自動キャリブレーションは１０分以下で完了する。キャリブレーションは教示および操作の部分から離れた場所で実行されることもできる。キャリブレーションパターンを実際の作業スペース外の固定位置に取り付けて、自動キャリブレーションを規則正しい時間間隔で行ってもよい。
【００３２】
自動キャリブレーションを実施するためには以下の工程が実行される。
ａ）キャリブレーションパターンがロボットに据え付けられたカメラ１６の視野内に配置される。
【００３３】
ｂ）ロボットがあらかじめ定められた複数の位置に移動される。その際、各々の位置でキャリブレーションパターンが前記視野内に位置するようにされる。（ロジャー  ワイ. ツァイ(Roger Y.Tsai)及びライマー  ケイ．レンツ(Reimer K. Lentz) ，“A New Technique for Fully Autonomous and Efficient 3D Robotics Hand/Eye Calibration （完全自動且つ効率的な３Ｄロボティクス  ハンド／アイ  キャリブレーションのための新技術）”, IEEE Transactions on Robotics and Automation, Vol.5, No.3,1989年6 月、p. 345
at p.350 を参照されたい）
ｃ）各々の位置において下記の作業が行われる。
【００３４】
−得られた画像からキャリブレーションポイントを抽出するために該画像が処理される。
−ツールの位置をロボットに問い合わせる。
【００３５】
ｄ）各々の位置でのキャリブレーションポイントの情報を用いて、カメラの内部パラメータを校正し、パターンからカメラへの外的な変換を計算する（チェンヨウ  チャン(Zhengyou Zhang), “A  Flexible New Technique for Camera Calibration （カメラキャリ
ブレーションのためのフレキシブルな新技術）”、http://research.microsoft.com/scripts/pubs/view.asp?TR_ID=MSR-TR-98-71を参照されたい）
ｅ）各々の位置での外的変換と相応するツールの位置を用い、カメラからツール間の変換が計算される。（ツァイおよびレンツの上記参照文献第３５０頁参照）
【００３６】
教示
対象物を教示するプロセスを以下に記す。
ａ）少なくとも６個の形状特徴のセットを対象物の画像から選択し、画像内でのそれらの形状特徴の位置を測定する。形状特徴とは、（画像から抽出された）縁、穴、角、ブロブまたは単純に画像のある領域などであり、それらはパターンマッチに使われる。好ましくは、独特な形状特徴が“アンカー形状特徴”として選択される。他の選択された形状特徴は、アンカー形状特徴に対して、小さく、また唯一ではない形状特徴であってよい。
【００３７】
ｂ）現実座標が選択された形状特徴に対して計算される。対象物は、ユーザースペースに位置し、それにより、対象物の底面から形状特徴までの高さを用いて、トレーニングスペース内の対象物形状特徴の３次元位置が、画像内での位置情報とキャリブレーション時に計算されたトレーニングスペースからカメラへの変換とにより計算され得る。これら全ての座標は、対象物に関係するスペース内で再構成され（第１の形状特徴が起点）、“トレーニングスペース”に整合される。
【００３８】
ｃ）またオブジェクトフレームが対象物に対して、ユーザーによって選択された位置で、厳正に定義付けられる。オブジェクトフレームを定義付けるためには３つの同一直線上にない点が必要である。
【００３９】
ｄ）オブジェクトフレーム（ツール座標内で計算された）はロボットに送られ、それがロボットのワーキングスペースとしてみなされる。このフレーム位置を検出するために、オブジェクトスペースからカメラへの、次いでカメラスペースからツールスペースへの変換が使用される。
【００４０】
ｅ）ツールスペースに関して、オペレータは、ロボットを動かしたり、または、対象物に対しての所望の作業軌道を創り出すためのオフラインのロボットプログラミングソフトウェアを用いることによって、ロボットの所期の作業軌道を教示することができる。後者の選択肢は、教示プロセスにおける工程ｄ）を排除することができる。
【００４１】
図３、図４および図６に示されているように、対象物の形状特徴の教示における第一工程は、“トレーニングスペース”内に対象物を置き、キャリブレーションポジション（“カメラからトレーニングスペース”への変換が計算される位置）において、ロボットで対象物の画像を捕捉することである。図４はオペレータのコンピュータスクリーンに対象物の画像５０が表示されている様子を示している。次に、少なくとも６個の形状特徴５４が選択される。好ましくは、少なくとも１個のアンカー形状特徴５２が画像内から選ばれ、少なくとも５個の目視できうる形状特徴５４が選定され、アンカー形状特徴に関連付けて位置付けられるのが望ましい。各々の形状特徴５４の３次元上の位置は対象物のベース平面（配置されている面）からその形状特徴までの高さと“カメラからトレーニングスペース”への変換を用いて“トレーニングスペース”内で計算される。その後、“オブジェクトスペース”が、“トレーニングスペース”に整合されているが、対象物に関連付けられて定義付けられ、形状特徴の３次元座標がそのスペース内に転置される。“オブジェクトスペースからカメラ”への変換は、このスペース内の形状特徴の３次元位置と画像内の位置を用いて計算される。画像内の位置は前述のツァイの方法を用いた工程からカメラキャリブレーションを用いての外部要因的キャリブレーションの計算によって導き出される。次に、“オブジェクトスペース”内の“オブジェクトフレーム”が所期の作業軌道の教示に使われるために定義付けられる。この“ツールフレーム”内におけるオブジェクトフレームの位置と方向は“オブジェクトフレームからカメラ”および“カメラからツール”への変換を用いて計算される。“オブジェクトフレーム”はロボットに送られ、そして所期作業軌道がこのスペース内で教示される。
【００４２】
以下の方法は、選択された形状特徴５４の３次元位置を自動的に計算するためにも使用され得る。それについて、対象となるパーツの事前知識は不要である。次にあげるアルゴリズムは以下の文献、すなわち、Guo-Quing Wei,. “Active Self-Calibration of Robotic Eyes and Hand-Eye Relationship with Model Identification ”、IEEE Transactions on Robotics and Automation, Vol. 14, No. 1, 1999年２月、p.158. に述べられてい
るアプローチを用いて開発されたものである。カメラはロボットグリッパー上に厳正に据え付けられている。導き出された方法は、ロボット動作パラメータ、得られたカメラからツール間の変換、画像座標計測およびカメラの内部パラメータに基づいて形状特徴の現実座標を計算するものである。ロボットツールは、ベースポジションＰ０から一連のポジションＰｊ．への一連の純粋な並進を経験するものとする。
【００４３】
画像内でのポイントｐｉにおける運動方程式は次のようになる。
【００４４】
【数１】
2005515910.tif 000003
上記式中、ｊは、計測がおこなわれる位置の指数（インデックス）を示し、
Ｒｃｇはカメラからツールへの変換の回転マトリックスの要素であり、
ｔｇ０ｊは現在の位置からベースポジションへの並進を示し、
ｕ０，ｖ０はカメラセンターポイントであり、
ｕｉｊ，ｖｉｊは位置ｊで得られた画像におけるｉ番目の形状特徴の非歪曲画像座標である。これらの値を計算するために、既に計測されたカメラの内部パラメータを使用してもよい。
【００４５】
この一次方程式で特有の解を得るためには、少なくとも２つの位置が必要であるが、画像上でのノイズや他に起こるかもしれないトラブル要因に備え、少なくとも３つの位置姿勢が用いられる。
【００４６】
Ｘ０，Ｙ０，Ｚ０はカメラスペースにおける全ての形状特徴のために計算されるが、その値はそれらに関連するあらゆるスペースすなわちトレーニングスペース、ツ−ルスペースまたロボットベーススペースにでさえも置換されるものとする。座標が表されるスペースは次のような意味を持つ、すなわちこのスペースはカメラへの現在の変換のみに使用され、その後オブジェクトフレームポイントをツールスペースに置き換えるために使われるのである。
【００４７】
ロボットの移動位置はベース（台座）を中心に円状に配置され均等な分布を確保する。
形状特徴の自動配置の工程は以下の通りである。
ａ）対象物がカメラ１６の前に置かれる。
【００４８】
ｂ）３次元パーツ配置に使用され得る形状特徴５４が選択される。
ｃ）以下によって自動教示手順が開始される。
ｉ）ロボットをベース２２を中心に一連の位置に動かす。
【００４９】
ｉｉ）各々の位置において台座に対するツールポジションを記憶させる。
ｉｉｉ）各々の位置において画像を得て、可視の形状特徴５４を検出して、それらの形状特徴の非歪曲な画像位置を計算する。
【００５０】
ｄ）各々の形状特徴について、所与の形状特徴が可視であった画像の数と同数の一次方程式を解く。
ｅ）計算された位置は、アプリケーションに適したスペース（空間）に変換される。
【００５１】
これに代わって、これら形状特徴の位置は、パーツの完全なＣＡＤモデルを使用することでも実行が可能である。
【００５２】
１．対象物の検出および配置
対象物の検出および配置を実行するために、以下のような工程が実行される。
ａ）ツール１４が対象物１８を含む容器の上部において所定の位置に配置される。
ｂ）対象物１８の画像が撮影される。
ｃ）教示されている形状特徴５４が探索される。アンカー形状特徴が選択されている場合には、最初の探索はアンカー形状特徴５２を対象として行なわれる。アンカー形状特徴５２の位置および方向を用いて、残りの形状特徴５４がそれらの相対位置により検出され得る。このアプローチは、比較的小さな検出対象領域において、似かよった形状特徴を、探索される形状特徴として選択することを可能にする。別の方法では、各々の形状特徴のパターンが画像全体の中から探索される。
【００５３】
ｄ）検出された形状特徴（少なくとも６個）の（画像５０内かつオブジェクトスペース内での）位置は、外部要因的キャリブレーションアルゴリズムを用いて、オブジェクトスペースとカメラスペースとの間の変換を計算するために使用される（前述のツァイの文献参照）。検出された位置は、教示時に使用された直交位置から対象物を見るために、カメラを再配向させるために用いられる。この最終工程は、対象物が大きな回転を有する場合に必要である。これは、そのような場合、形状特徴は歪められて、検出された位置が完全に正確ではなくなる可能性があるためである。
【００５４】
ｅ）上記工程ｃ）およびｄ）が繰り返される。
ｆ）前のスペースの変換を、“カメラからツール”変換と共に用いて、ツールスペース内におけるオブジェクトフレームの位置を検出する。
【００５５】
ｇ）オブジェクトフレームはロボットに送信され、ハンドリング等の作業を行う空間として使われる。
図７を参照すると、対象物の検出および配置を行うための好ましい工程が示されている。まず、ロボットが、対象物を保持する容器もしくはコンテナの上部の所定の位置に配置される。対象物がカメラ視野内に無い場合、ロボットは、画像上でアンカー形状特徴が検出されるまで移動される。次に、アンカー形状特徴の位置および方向を用いて、残りの形状特徴の位置を計算する。画像上においてすべての可視の形状特徴が検出される。画像からの形状特徴の位置およびそれに相応した“オブジェクトスペース”内での位置とともに、カメラキャリブレーションを用いて、“オブジェクトスペース”から“カメラスペース”への変換を計算する。カメラの外部要因的キャリブレーションが上記で参照されているツァイの論文に述べられているように用いられる。
【００５６】
次に、前述された変換を用いて、カメラが対象物に対して直交して「見る」ように、すなわち、教示時と同じ位置に、カメラを配置するロボットの動きを計算する。このようにして、教示された形状特徴と可能な限り同じ形状特徴が現れる。これにより、認識および配置の精度はより高まるのである。次に“オブジェクトスペースからカメラスペーズ”間の変換が以前の工程（形状特徴の位置を用いた）と同様な方法で見出される。教示時に記
憶されたオブジェクトフレームは、その見出された変換と“カメラからツール”への変換とを使って計算される。次に、その置換された“オブジェクトフレーム”がロボットに送られる。“ツール”の位置が“ロボットスペース”内でのフレームを定義付けるために使われる。教示されたロボット軌道はこの空間内で実行される。
【００５７】
このように、ロボットアームに据え付けられた一つのカメラを用いて、ロボットの教示および３次元上においてロボットによって対象物を取り扱う方法について開示した。この方法においては、対象物の上にある目標点が用いられている。目標は対象物の通常の形状的な特徴である。この方法に準じれば、対象物のＣＡＤ設計図を使用する必要はない。また対象物は固定される必要もなく、ロボットの作業スペース内であればどこに置かれていてもよい。この方法は、ひとつの教示された対象物について述べられてきたが、このプロセスを同様な方法で用いて、最初に対象物を認識し、次にその３次元空間での位置を検出してもよい。また、該方法は、対象物のある一つの面上において選択された一連の可視の形状特徴に関して述べられてきたが、該方法は作業状況で現れるあらゆる側面について拡張され得る。
【００５８】
上記の方法においては、キャリブレーション工程は、内部およびハンドアイキャリブレーションのみによって実行され得る（つまり、前述の工程ｉ）ｃ）は要さない）。そのような場合、教示工程ｉｉ）ｃにおいて、形状特徴の３次元配置は対象物のＣＡＤモデルを使って行われることも可能である。同様に、工程ｉｉ）ｃ）において、形状特徴の３次元配置は、いかなるモデルやパーツの計測も要さずに、自動的に計算されることが可能である。
【００５９】
さらに、教示工程ｉｉ）ｉ）またはｈ）は、所期のロボット軌道点の位置をロボットに送ることによって排除することができる。そのような位置は、対象物の現在の位置および方向を用いて計算されている。ロボット軌道点は、オフラインのロボットプログラミングソフトウェアアプリケーションからも得ることが可能である。また、対象物上のひとつもしくはそれ以上の形状特徴が把持ポイントとして用いられ、ロボット座標上でのそれらのポイントの位置がロボットに送信されて、ロボット教示ペンダントを用いたマニュアルでの把持点の教示の必要性が排除されるのである。これに代わって、オブジェクトフレームポイントまたは注目中の他の点（例：ロボット軌道点など）の座標は、ツールからロボットベース間の変換によって変換されることができ、代わりとして、全ての座標はロボットベース座標フレーム内のロボットに送られる。
【００６０】
さらに、キャリブレーションおよび教示工程ｉ）およびｉｉ）は、グオ−キン  ウェイ(Guo-Qing Wei)、クラウス  アルブタール(Klaus Arbter)およびゲルト  ヒルツィンガー(Gerd Hirzinger)による“Active self-calibration method of robotic eye and hand-eye relationship with model identification ”に述べられているモデル認識によるロボティックアイとハンド−アイの関係のセルフキャリブレーション法を用いて組み合わせることができる。この方法の結果から、カメラの内部パラメータ、ハンドアイキャリブレーションおよびカメラスペース内での選択された形状特徴の位置を得ることができる。残りの軌道教示とランタイムは依然として同様であり、この好ましいアプローチ内にある。
【００６１】
本発明によれば、工程ｉｉｉ−ｃにおける対象物位置の決定は、以下のアルゴリズムのいずれを用いても行うことができる。
ａ）前述した論文に記載されている方法から派生する、非線形の最適化法を用いた３次元姿勢の推定：
・Zhengyou Zhangによる“A Flexible New Technique for Camera Calibration （カメラキャリブレーションのためのフレキシブルな新技術）”
・Roger Y. Tsai による“An Efficient and Accurate Camera Calibration Techn
ique for 3D Machine Vision（３Ｄ画像装置のための効率的で精度の高いカメラキャリブレーション技術）”；
ｂ）Yucai Liu, Thomas S. Huang, Oliver D. Faugerasによる“Determination of Camera Location from 2D to 3D Line and Point Correspondances(２次元から３次元の線・点一致を判断するカメラロケーション) ”に述べられている線の一致による３次元位置判断；
ｃ）Chien_Ping Lu, Gregory D. Hager, Eric Mjolsness による“Fast and Globally Convergent Pose Estimation from Video Images( 迅速に世界的レベルで収束しつつあるビデオ画像からの位置判断) ”に述べられている“直交的反復(orthogonal iteration)”を用いた位置判断；
ｄ）Thomas Huang, Alfred Bruckenstein, Robert Holt, Arun Netravaliによる“Ununiquness of 3D Pose Under Weak Perspective:A Geometric Proof(悪条件の視野における３次元位置判断の特徴：幾何学的論証) ”で試行された、悪条件視野での近似的対象物位置判断；
ｅ）Chen, Armstrong, Raftopoulosによる“An investigation on the accuracy of three-dimensional space reconstruction using Direct Linear Transformation technique ( 直接一次的置換法を用いた３次元空間再構築の精度に基づく精査) ”に述べられているＤＬＴ（直接一次的置換法）を用いたでのおおよその対象物位置判断。
【００６２】
ロボッティクス（ロボット工学）における使用に加えて、上記方法は対象物の３次元位置判断の知識が要求される様々な産業及び非産業分野に適用されることができる。
当業者には明らかであるように、前述の開示を鑑みて、本発明の実施においては、本発明の精神および範囲から逸脱することなく、多くの別例および変更がなされ得る。よって、本発明の範囲は、以下の特許請求の範囲によって定義される内容によって解釈されるべきものとする。
【図面の簡単な説明】
【００６３】
【図１】ビジョンガイドロボットの斜視図。
【図２】対象物の位置を計算するための基準の関連フレームの概略図。
【図３】対象物に対する所期の作業軌道の計算を示す概略図。
【図４】対象物上で基準の形状特徴を選択するためのオペレータ用のコンピュータスクリーンを示す図。
【図５】ロボットアームに取り付けられたカメラのキャリブレーションを示すフローチャート。
【図６】対象物の形状特徴およびハンドリング軌道を教示する方法を示すフローチャート。
【図７】対象物の配置およびハンドリングの方法を示すフローチャート。
【図１】
2005515910.tif 000004
【図２】
2005515910.tif 000005
【図３】
2005515910.tif 000006
【図４】
2005515910.tif 000007
【図５】
2005515910.tif 000008
【図６】
2005515910.tif 000009
【図７】
2005515910.tif 000010
【国際調査報告】
2005515910.tif 000011
2005515910.tif 000012
2005515910.tif 000013