(57)【要約】【課題】２つの異なる座標系の関係を正確かつ容易に校正できる方法及びその装置を提供する。【解決手段】異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出方法であって、ロボット座標系４２における移動が制御されるフランジ３６に、フランジ座標系４４において固定姿勢でマーク４０を取り付けるステップ（Ｓ１１）と、フランジ３６を移動させることによって、マーク４０を認識位置２４ａ〜２４ｅに移動させるステップ（Ｓ１３）と、認識位置２４ａ〜２４ｅにおいて、フランジ３６のロボット座標系４２における姿勢を示す姿勢情報と、カメラ座標系２６におけるマーク４０の位置を示す座標情報とを取得するステップ（Ｓ１４）と、認識位置２４ａ〜２４ｅごとの上記姿勢情報と上記座標情報とに基づいて、両座標系を対応付けるためのパラメータを算出するステップ（Ｓ１６）とを含む。【選択図】図１
2010188439.tif 000002
【特許請求の範囲】
【請求項１】
異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出方法であって、
第１座標系における並進及び回転を含む移動を制御可能な移動部を移動させることによって、上記移動部を基準とする座標系において位置及び方向を含む姿勢が固定されたマークを認識位置に移動させる移動ステップと、
上記認識位置において、上記移動部の第１座標系における姿勢を示す第１情報を取得し、かつ、第２座標系における上記マークの位置を示す第２情報を取得する第１及び第２情報取得ステップと、
少なくとも４つの上記認識位置について上記移動ステップと上記第１及び第２情報取得ステップとを繰り返すことによって取得される、上記認識位置ごとに対応付けられた上記第１情報と上記第２情報とに基づいて、上記第１座標系と上記第２座標系とを対応付けるためのパラメータを算出するパラメータ算出ステップとを含む
ことを特徴とするパラメータ算出方法。
【請求項２】
上記移動ステップでは、上記第１座標系において上記移動部が互いに異なる３つの位置で同一の方向を向いた場合に上記マークが位置付けられる３つの認識位置と、上記第１座標系において上記移動部が上記３つの認識位置における場合と異なる１つの位置で異なる方向を向いた場合に上記マークが位置付けられる１つの認識位置とを含む４つの認識位置に上記マークを移動させ、
上記パラメータ算出ステップでは、上記４つの認識位置について上記移動ステップと上記第１及び第２情報取得ステップとを繰り返すことによって取得される、上記認識位置ごとに対応付けられた４組の上記第１情報と上記第２情報とに基づいて、上記第１座標系と上記第２座標系とを対応付けるためのパラメータを算出する
ことを特徴とする請求項１に記載のパラメータ算出方法。
【請求項３】
上記移動ステップでは、上記マークを自動的に認識位置へ移動させる
ことを特徴とする請求項１又は請求項２に記載のパラメータ算出方法。
【請求項４】
異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出方法であって、
並進及び回転を含む移動を制御可能な移動部とともに移動させることによって、上記移動部を基準とする第３座標系における位置及び方向を含む姿勢が固定された視点を、予め設けられたマークを認識できる認識位置へ移動させる移動ステップと、
上記認識位置において、上記第３座標系の姿勢を示す第３情報を取得し、かつ、上記視点を基準とする第４座標系における上記マークの位置を示す第４情報を取得する第３及び第４情報取得ステップと、
少なくとも４つの上記認識位置について上記移動ステップと上記第３及び第４情報取得ステップとを繰り返すことによって取得される、上記認識位置ごとに対応付けられた上記第３情報と上記第４情報とに基づいて、上記第３座標系と上記第４座標系とを対応付けるためのパラメータを算出するパラメータ算出ステップとを含む
ことを特徴とするパラメータ算出方法。
【請求項５】
上記移動ステップでは、上記視点から上記マークに向けた視線が第１方向となる第１認識位置と、視線が上記第１方向と平行な第２方向となる第２認識位置と、視線が上記第１方向と平行でない第３方向となるとなる第３認識位置と、視線が上記第３方向と平行な第４方向となる第４認識位置とを含む４つの認識位置へ上記視点を移動させ、
上記パラメータ算出ステップでは、上記４つの認識位置について上記移動ステップと上記第３及び第４情報取得ステップとを繰り返すことによって取得される、上記認識位置ごとに対応付けられた４組の上記第３情報と第４情報とに基づいて、上記第３座標系と上記第４座標系とを対応付けるためのパラメータを算出する
ことを特徴とする請求項４に記載のパラメータ算出方法。
【請求項６】
上記移動ステップでは、上記マークを自動的に認識位置へ移動させる
ことを特徴とする請求項４又は請求項５に記載のパラメータ算出方法。
【請求項７】
異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出装置であって、
第１座標系における並進及び回転を含む移動を制御可能な移動部を移動させることによって、上記移動部を基準とする座標系において位置及び方向を含む姿勢が固定されたマークを予め決めた認識位置に移動させる移動制御手段と、
上記認識位置において、上記移動部の第１座標系における姿勢を示す第１情報を取得し、かつ、第２座標系における上記マークの位置を示す第２情報を取得する第１及び第２情報取得手段と、
少なくとも４つの上記認識位置について上記移動制御手段と上記第１及び第２情報取得手段とによって取得される、上記認識位置ごとに対応付けられた上記第１情報と上記第２情報とに基づいて、上記第１座標系と上記第２座標系とを対応付けるためのパラメータを算出するパラメータ算出手段とを備える
ことを特徴とするパラメータ算出装置。
【請求項８】
異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出装置であって、
並進及び回転を含む移動を制御可能な移動部を移動させることによって、上記移動部を基準とする第３座標系における位置及び方向を含む姿勢が固定された視点を、予め設けられたマークを認識できる認識位置へ移動させる移動制御手段と、
上記認識位置において、上記第３座標系の姿勢を示す第３情報を取得し、かつ、上記視点を基準とする第４座標系における上記マークの位置を示す第４情報を取得する第３及び第４情報取得手段と、
少なくとも４つの上記認識位置について上記移動制御手段と上記第３及び第４情報取得手段とによって取得される、上記認識位置ごとに対応付けられた上記第３情報と上記第４情報とに基づいて、上記第３座標系と上記第４座標系とを対応付けるためのパラメータを算出するパラメータ算出手段とを備える
ことを特徴とするパラメータ算出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パラメータ算出方法及びパラメータ算出装置に関し、特に、異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出方法及びパラメータ算出装置に関する。
【背景技術】
【０００２】
視覚センサでの認識結果に基づいて動作が制御されるロボットが増えている。このようなロボットでは、視覚センサに基づく画像情報は、センサ座標系によって表現される一方で、ロボットの動作は、ロボット座標系を用いて制御される。このような場合、異なる座標系を対応付けるために、パラメータの校正が必要になる。
【０００３】
例えば、視覚センサがロボットに対して独立して固定されている場合、センサ座標系とロボット座標系とを対応付けるためのパラメータを校正する。例えば、特許文献１には、視覚センサが検出可能なマークを同一平面上に４つ以上設け、ロボットの制御点をマークに位置決めすることによりロボット座標系におけるマークの座標値を取得する一方で、視覚センサでマークを検出することによりセンサ座標系におけるマークの座標値を取得する。その後、一定の評価により３つのマークを選択し、３つのマークのそれぞれに関するロボット座標系の座標値とセンサ座標系の座標値とに基づいて、両座標系の関係を対応付けるためのパラメータを校正する。
【０００４】
また例えば、多関節ロボットの先端部に視覚センサが固定されている場合、その先端部を基準とする先端部座標系と視覚センサが用いるセンサ座標系とを対応付けるためのパラメータを校正する。
【０００５】
非特許文献１には、多関節ロボットの先端部に視覚センサが固定されている場合に、先端部座標系とセンサ座標系とを対応付けるためのパラメータを求めるための解法が記載されている。具体的には、視覚センサの姿勢を変えて２方向から校正用マークを認識し、２つの視覚センサの姿勢に対応する先端部の姿勢に関する行列Ａと、２つの姿勢でのセンサ座標系における座標値に関する行列Ｂと、センサ座標系を先端部座標系に変換するパラメータとしての行列Ｘとを用いて表される方程式ＡＸ＝ＸＢを解くことによって、行列Ｘを算出する。ここで、行列Ａ，Ｂ，Ｘはいずれも、４×４行列である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３５４１９８０号公報
【非特許文献】
【０００７】
【非特許文献１】Y. Shiu and S. Ahmad：”Calibration of Wrist-Mounted Robotic Sensors by Solving Homogeneous Transform Equations of the Form AX = XB”，IEEE Trans. on Robotics and Automation，August 1989，vol. 5，no. 1，pp.16-29．
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の技術の場合、ロボット座標系におけるマークの座標値は、例えば、ロボットアームの先端に針状ツールを固定して、針状ツールの先端がマークの所定位置にタッチした時のロボットの状態に基づいて針状ツールの先端位置を算出することによって取得される。そのため、針状ツールは、ロボットアームの先端に長さと方向とが予め決めたものとなるように、正確に取り付けられる。
【０００９】
また、針状ツールがマークの所定位置にタッチするように、針状ツールの動作が制御されるが、針状ツールが勢いよくマークにあたると、マークの位置がずれてしまう。そのため、正確にかつ静かにマークの所定位置にタッチするように、針状ツールを動作させる必要があり、その操作は、極めて困難である。
【００１０】
次に、非特許文献１に記載の技術の場合、校正用マークは、少なくとも４点に、それらすべてが同一平面上に位置することにならないように、配置される。このような配置を実現するには、手間と時間が掛かる。
【００１１】
本発明は、上記の問題を解決するために、２つの異なる座標系の関係を正確かつ容易に校正できる方法及びその装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係るパラメータ算出方法は、異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出方法であって、
第１座標系における並進及び回転を含む移動を制御可能な移動部を移動させることによって、上記移動部を基準とする座標系において位置及び方向を含む姿勢が固定されたマークを認識位置に移動させる移動ステップと、
上記認識位置において、上記移動部の第１座標系における姿勢を示す第１情報を取得し、かつ、第２座標系における上記マークの位置を示す第２情報を取得する第１及び第２情報取得ステップと、
少なくとも４つの上記認識位置について上記移動ステップと上記第１及び第２情報取得ステップとを繰り返すことによって取得される、上記認識位置ごとに対応付けられた上記第１情報と上記第２情報とに基づいて、上記第１座標系と上記第２座標系とを対応付けるためのパラメータを算出するパラメータ算出ステップとを含む。
【００１３】
また、本発明に係るパラメータ算出方法は、異なる２つの３次元座標系を対応付けるためのパラメータを算出するパラメータ算出方法であって、
並進及び回転を含む移動を制御可能な移動部とともに移動させることによって、上記移動部を基準とする第３座標系における位置及び方向を含む姿勢が固定された視点を、予め設けられたマークを認識できる認識位置へ移動させる移動ステップと、
上記認識位置において、上記第３座標系の姿勢を示す第３情報を取得し、かつ、上記視点を基準とする第４座標系における上記マークの位置を示す第４情報を取得する第３及び第４情報取得ステップと、
少なくとも４つの上記認識位置について上記移動ステップと上記第３及び第４情報取得ステップとを繰り返すことによって取得される、上記認識位置ごとに対応付けられた上記第３情報と第４情報とに基づいて、上記第３座標系と上記第４座標系とを対応付けるためのパラメータを算出するパラメータ算出ステップとを含む。
【発明の効果】
【００１４】
本発明によると、マークは、移動部に相対的に固定されている。そのため、マークの第１座標系における座標値は、移動部の座標系におけるマークの座標値を変換することによって取得でき、また、第２座標系におけるマークの座標値を変換することによって取得できる。従って、移動部の座標系におけるマークの座標値と、第２座標系におけるマークの座標値とは、第１座標系における座標値を介して、対応付けることができる。
【００１５】
そのため、第１座標系におけるマークの座標値、移動部の座標系におけるマークの座標値が、未知のままであっても、第１座標系における座標値と第２座標系における座標値とを対応付けるパラメータを含む方程式を立てることができる。そして、その方程式を解くことによって、両座標系の関係を対応付けるためのパラメータを校正することが可能になる。
【００１６】
また、本発明によると、視点は、移動部に相対的に固定されている。そのため、複数の視点から取得した第４座標系におけるマークの座標値を対応付けることによって、視点の座標値がいずれの座標系においても未知のままであっても、第３座標系における座標値と第４座標系における座標値とを対応付けるパラメータを含む方程式を立てることができる。そして、その方程式を解くことによって、両座標系の関係を対応付けるためのパラメータを校正することが可能になる。
【００１７】
このように、これらの発明はいずれも、マーク又は視点を移動部に固定すれだけでよく、その固定する位置や方向を正確に予め定めたものに合わせる必要がない。また、マークも視野に配置されればよく、いずれかの座標において予め定めた位置に正確に合わせる必要はない。
【００１８】
そのため、極めて容易に手間をかけることなく、第１座標系及び第２座標系の関係を対応付けるためのパラメータを正確に校正することが可能である。
【図面の簡単な説明】
【００１９】
【図１】実施の形態１に係るロボットシステムの概略図である。
【図２】実施の形態１に係る認識位置の例を示す図である。
【図３】実施の形態１に係るパラメータ算出方法における操作及び処理の手順を示すフローチャートである。
【図４】実施の形態２に係る認識位置の例を示す図である。
【図５】実施の形態３に係るロボットシステムの概略図である。
【図６】実施の形態３に係るパラメータ算出方法における処理の手順を示すフローチャートである。
【図７】実施の形態４に係るロボットシステムの概略図である。
【図８】実施の形態４に係る認識位置の認識方向の例を示す図である。
【図９】実施の形態４に係るパラメータ算出方法における操作及び処理の手順を示すフローチャートである。
【図１０】実施の形態５に係る認識位置を認識するための視線方向の例を示す図である。
【図１１】実施の形態６に係るロボットシステムの概略図である。
【図１２】実施の形態６に係るパラメータ算出方法における処理の手順を示すフローチャートである。
【図１３】図１２に示すカメラの角度設定のための移動ステップＳ４５の詳細を示すフローチャートである。
【発明を実施するための形態】
【００２０】
（実施の形態１）
【００２１】
図１は、本発明の実施の形態１に係るロボットシステムの概略図である。本実施の形態のロボットシステム１０は、カメラで認識した情報に基づいてロボットを自動制御するシステムであって、カメラ２０と、ロボット３０とを含む。
【００２２】
カメラ２０は、レンズ等の光学系部材、イメージセンサ等を備える装置であり、空間内に固定されている。カメラ２０は、視野２２の中にある認識位置２４ａ〜２４ｅに移動したマーク４０を含む画像を示す画像情報を生成する。
【００２３】
認識位置２４ａ〜２４ｅは、図２に示すようにカメラ２０の視野２２の中に含まれる空間内の固定位置であり、校正のためにマーク４０が配置される位置である。好ましくは、認識位置２４ａ〜２４ｅは、視野２２の中央近傍（２４ａ）、左上部分（２４ｂ）、左下部分（２４ｃ）、右下部分（２４ｄ）、右上部分（２４ｅ）というように、視野２２の全体に散らばっている。
【００２４】
画像情報は、ケーブル２９を介してカメラ２０から画像処理装置２８に送出される情報であって、例えば視野２２に含まれる各画素について、カメラ座標系２６における座標値と輝度値とを示す情報を含む。
【００２５】
カメラ座標系（第２座標系）２６は、カメラ２０に対して固定された座標系であって、好ましくはカメラ２０が備えるレンズの中心を原点とし、光軸方向をｚ軸とする直交座標系である。
【００２６】
ここで、図１に示す視野２２は、カメラ２０のレンズからほぼ放射状に広がる視界の中で光軸（図１に示すカメラ座標系２６のｚ軸）に垂直な一断面を表す。また、図１に示す認識位置２４ａ〜２４ｅは、すべて視野２２に配置されているが、認識位置２４ａ〜２４ｅは、視界の中の異なる位置に配置されていればよい。
【００２７】
ロボット３０は、３次元の所定の範囲内における任意の位置に物を移動させる多関節ロボットであり、空間内に固定された基部３２と、互いに傾動可能に接続されたアーム部３４ａ〜３４ｄと、物を取り付けることができるフランジ３６とを備える。
【００２８】
アーム部３４ａの基端は、基部３２に固定される。アーム部３４ａ（３４ｂ，３４ｃ）の先端とアーム部３４ｂ（３４ｃ，３４ｄ）の基端とは、それぞれ、先端側のアーム部３４ｂ（３４ｃ，３４ｄ）が基端側のアーム部３４ａ（３４ｂ，３４ｃ）に対して所定の範囲内の任意の方向へ自由に傾動できるように、ジョイント部３８ａを介して接続される。各アーム部３４ａ〜３４ｄは、それぞれの軸を中心に所定の角度で旋回可能にする旋回機構部３８ｂを有する。
【００２９】
このようなジョイント部３８ａと旋回機構部３８ｂとによって、アーム部３４ａ〜３４ｄは、一定の範囲内で自由に動作することができる。
【００３０】
フランジ３６（移動部）は、アーム部３４ｄの先端に備えられており、アーム部３４ａ〜３４ｄが動作することによって、移動する。フランジ３６が移動することによって、ロボット座標系４２におけるフランジ３６の姿勢が変化する。
【００３１】
ここで、「姿勢」は、位置及び方向を含む。また、「移動する」又は「姿勢が変化する」とは、位置及び方向の少なくとも一方が変化することをいう。以下、同様の意味で用いる。
【００３２】
フランジ３６には、ロボットハンド等を取り付けることができ、本実施の形態では、校正用のマーク４０が、支持棒を介して固定的に取り付けられる。マーク４０の片面には、その位置を示す代表点をカメラ２０が識別できる所定の標識が描かれている。
【００３３】
本実施の形態の標識は、正方形の外枠と、その外枠の２本の対角線によって画成される４つの三角形とを含む模様であり、４つの三角形は、対向する三角形の一方の組みと他方の組みとで色分けされている。色分けには、好ましくは、カメラ２０が生成する画像情報に基づいて識別可能な異なる色が使用され。これによって、正方形の中央を代表点として使用可能になる。
【００３４】
なお、マーク４０は、その位置をカメラ２０によって認識できるものであればよく、例えば、ＬＥＤ（発光ダイオード）による発光点等であってもよい。
【００３５】
ロボット制御装置（パラメータ算出装置）５０は、ケーブル５４を介して接続された画像処理装置２８から取得する画像情報に基づいて、ケーブル５３を介して接続されたコントローラ５２から取得する情報に基づいて、及び／又は、予め決定された処理群を含むプログラムを実行することによって行われる判断に基づいて、ジョイント部３８ａでの傾動及び旋回機構部３８ｂでの旋回を制御し、それによって、アーム部３４ａ〜３４ｄの動作を制御するとともに、フランジ３６の移動を制御する。また、ロボット制御装置５０は、フランジ３６の姿勢を示す情報をリアルタイムで更新して保持し、その情報を出力することができる。
【００３６】
コントローラ５２は、利用者がロボット３０の動作を指示するための入力装置である。
【００３７】
ロボット制御装置５０は、フランジ３６を移動させる際、具体的には、ロボット座標系４２を使用して、フランジ座標系４４の姿勢を制御する。ロボット座標系４２（第１座標系）は、空間内に固定された座標系であって、好ましくは、基部３２の底部中心を原点とし、鉛直方向を軸の１つの方向とした直交座標系である。
【００３８】
フランジ座標系４４は、フランジ３６に対して固定された座標系であり、好ましくは、ランジ３６の先端の中心の位置を原点とする直交座標系である。そのため、フランジ３６の姿勢の変化に従って、フランジ座標系４４の原点の位置及び／又は各軸の方向も、変化する。
【００３９】
マーク４０は、上述のようにフランジ３６に固定される。そのため、フランジ座標系４４におけるマーク４０の座標値は、一定となる。また、フランジ３６が移動すると、マーク４０は、フランジ３６との相対的な位置関係を維持しながら移動する。
【００４０】
このように、ロボットシステム１０は、カメラ座標系２６と、ロボット座標系４２と、フランジ座標系４４という３つの異なる座標系を使用する。ロボット３０をカメラ２０によって取得される画像情報に基づいて正確に制御するには、互いに独立した座標系であるロボット座標系４２とカメラ座標系２６とを対応付けるパラメータが正確である必要がある。両座標系４２，２６の対応付けに関して、本実施の形態における基本的な考え方について説明する。
【００４１】
まず、フランジ座標系４４の固定位置に取り付けられたマーク４０の座標値について、ロボット座標系４２において（Ｘ，Ｙ，Ｚ）とし、カメラ座標系２６において（ｘ，ｙ，ｚ）とすると、両座標値の関係は、両座標系を対応付けるパラメータＲｖとｔｖとを用いて式（１）で表される。Ｒｖは３×３の回転行列であり、ｔｖは並進ベクトルである。ロボット座標系４２とカメラ座標系２６とを対応付けるために、Ｒｖとｔｖとを正確に求める必要がある。
【数１】
2010188439.tif 000003
【００４２】
ロボット座標系４２又はカメラ座標系２６におけるマーク４０の位置は、フランジ３６の姿勢と、フランジ３６に対する相対的な姿勢に依存して決定される。ロボット３０は、フランジ３６の姿勢を正確に制御できる。しかし、マーク４０は、フランジ３６に単に固定されるだけであって、フランジ３６に対する姿勢を予め決めたものに合わせて固定されるわけではない。そのため、ロボット座標系４２におけるマーク４０の正確な位置（Ｘ，Ｙ，Ｚ）を直ちに取得することはできない。
【００４３】
次に、フランジ座標系４４の固定位置に取り付けられたマーク４０の座標値について、ロボット座標系４２において（Ｘ，Ｙ，Ｚ）とし、フランジ座標系４４においてｔｂ（一定の位置ベクトル）とすると、両座標値の関係は、両座標系を対応付けるパラメータＲｆとｔｆとを用いて式（２）で表される。Ｒｆは３×３の回転行列であり、ｔｆは並進ベクトルである。回転行列Ｒｆと並進ベクトルｔｆとの組み合わせによって、ロボット座標系４２におけるフランジの姿勢が表される。また、
【数２】
2010188439.tif 000004
【００４４】
ロボット３０は、上述のように、ロボット制御装置５０による制御の下で各アーム部３４ａ〜３４ｄを動作させることにより、フランジ３６の姿勢を正確に制御する。そのため、回転行列Ｒｆと並進ベクトルｔｆとは、例えば両座標系４２，４４の初期状態における回転行列Ｒｆ０と並進ベクトルｔｆ０とをロボット制御装置５０が記憶しておくことによって、各アーム部３４ａ〜３４ｄの動作に応じてロボット制御装置５０の内部で生成できる。
【００４５】
マーク４０を認識位置２４ａ〜２４ｅの１つに移動させた場合、式（１）の右辺と式（２）の右辺とが等しいことから、式（３）が導かれる。認識位置２４ａ〜２４ｅのいずれかにあるカメラ座標系２６におけるマーク４０の座標値を（ｘｉ，ｙｉ，ｚｉ）とし、そのときのフランジ３６の姿勢をＲｆｉ，ｔｆｉとする。
【数３】
2010188439.tif 000005
【００４６】
式（３）において、未知数は、ｔｂの３成分、Ｒｖの９成分及びｔｖの３成分であって、全部で１５個ある。また、式（３）は、すべての未知数について一次式である。他方、１つの認識位置から式（３）のｘ成分，ｙ成分及びｚ成分の合計３つの一次方程式が得られる。従って、５つの認識位置について、式（３）に相当する方程式を取得することによって、両座標系を対応付けるパラメータＲｖとｔｖとを含む全ての未知数を決定することが可能になる。
【００４７】
このような考え方に基づいて、ロボットシステム１０は、カメラ座標系２６とロボット座標系４２という異なる２つの３次元座標系を対応付けるためのパラメータを算出する。
【００４８】
本実施の形態において、カメラ座標系２６とロボット座標系４２とを対応付けるパラメータを算出するために、操作者が実行する操作及びロボットシステム１０が実行する処理について、図３に示すフローチャートを参照して説明する。
【００４９】
利用者は、マーク４０をフランジ３６に取り付ける（Ｓ１１）。この時、利用者は、マーク４０をフランジ３６に固定するだけでよく、フランジ３６に対するマーク４０の位置や方向を特に意識する必要はない。そのため、この作業に関する利用者の負担は、極めて小さい。
【００５０】
ロボット制御装置５０は、以下に詳述する、移動ステップ（Ｓ１３）と、姿勢及び座標情報取得ステップ（第１及び第２情報取得ステップ；Ｓ１４）と、記憶ステップ（Ｓ１５）とを、全ての認識位置２４ａ〜２４ｅの各々について順に繰り返すループＡを実行する（Ｓ１２）。
【００５１】
ロボット制御装置５０は、コントローラ５２から取得する利用者の指示に従って、ロボット３０を制御し、マーク４０を認識位置２４ａ〜２４ｅの１つに移動させる（Ｓ１３）。利用者は、例えばカメラ２０から得られる画像をモニタ（図示せず）で観察しながら、コントローラ５２を介してロボット３０を操作する。
【００５２】
この時、マーク４０は認識位置２４ａ〜２４ｅの近傍で視野２２の中にあればよく、正確に位置あわせをする必要はない。そのため、移動ステップ（Ｓ１３）における利用者の負担は、極めて小さい。
【００５３】
ロボット制御装置５０は、ロボット座標系４２におけるフランジ３６（フランジ座標系４４）の姿勢を示す姿勢情報（第１情報）、及びセンサ座標系２０におけるマーク４０の位置を示す座標情報（第２情報）を取得する（Ｓ１４）。
【００５４】
なお、ロボット制御装置５０が姿勢情報及び座標情報を取得する順序は、いかなるものでもよい。すなわち、姿勢情報及び座標情報は、例えば、同時並行で取得されてもよく、又は姿勢情報、座標情報の順で若しくはその逆順で取得されてもよい。
【００５５】
姿勢情報は、例えばロボット制御装置５０が行った各アーム部３４ａ〜３４ｄの動作の履歴に基づいて、ロボット制御装置５０が算出することによって生成される。座標情報は、カメラ２０が生成した画像情報に基づいて、画像処理装置が所定の処理を実行することによって生成される。
【００５６】
画像処理装置が実行する座標情報を生成するための処理は、従来の方法でよく、ここではその一例を説明する。
【００５７】
上記処理は、例えば、標識を示す画像情報（以下、「標識画像情報」という。）を予め記憶し、その標識画像情報を参照するステップと、カメラ２０から取得した画像情報と標識画像情報とに基づいてマッピングをするステップと、カメラ２０から取得した画像情報が示す画像の中に標識画像情報が示す画像（以下、「標識画像」という。）と一致する部分があると判断した場合に、その一致する部分の中心（重心）の座標を算出するステップと、その座標を示す情報を含む座標情報を生成するステップとを含む。
【００５８】
マッピングは、例えば、カメラ２０から取得した画像情報が示す画像について、標識画像と同一の又は相似形の領域に含まれる画素値を取得し、領域と標識画像とで対応付けられる画素の画素値の差の絶対値を合計した値が閾値以下であるか否かににより行われ、合計した値が閾値以下である場合、カメラ２０から取得した画像情報が示す画像の中に認識位置画像と一致する部分があると判断し、合計した値が閾値より大きい場合、カメラ２０から取得した画像情報が示す画像の中に認識位置画像と一致する部分がないと判断する。
【００５９】
ここから再び、図３を参照する。
【００６０】
ロボット制御装置５０は、姿勢及び座標情報取得ステップ（Ｓ１４）において取得した姿勢情報及び座標情報を、認識位置２４ａ〜２４ｅの１つから取得されたものとして対応付けて、ロボット制御装置５０が備える記憶媒体に記憶させる（Ｓ１５）。
【００６１】
このような、移動ステップ（Ｓ１３）と姿勢情報及び座標情報取得ステップ（Ｓ１４）と記憶ステップ（Ｓ１５）とが、全ての認識位置２４ａ〜２４ｅの各々について終了すると、ロボット制御装置５０は、取得した５組（ｉ＝１〜５）の姿勢情報Ｒｆｉ，ｔｆｉ及び座標情報（ｘｉ，ｙｉ，ｚｉ）を上述の式（３）に適用することによって得られる方程式を解くことにより、カメラ座標系２６とロボット座標系４２とを対応付けるためのパラメータを算出する（Ｓ１６）。
【００６２】
以上、本発明の実施の形態１について説明した。本実施の形態によると、マーク４０がフランジ３６に固定されるだけであり、その固定位置を調整する必要がない。また、マークが移動する位置を正確に操作する必要がない。そのため、利用者の作業負担を軽減することができ、従って、ロボット座標系４２とカメラ座標系２６という２つの異なる座標系の関係を正確かつ容易に校正することが可能になる。
【００６３】
（実施の形態２）
【００６４】
実施の形態２に係るロボットシステムは、実施の形態１より少ない認識位置にマーク４０を移動させることによって、ロボット座標系４２とカメラ座標系２６との関係を校正する。実施の形態２に係るロボットシステムの構成は、実施の形態１に係るロボットシステムと概ね同じであり、本実施の形態では、マーク４０の移動を説明し易くするために、マーク４０に描かれる標識を実施の形態１とは異なるものにしている。本実施の形態では、実施の形態１に係るロボットシステム１０と同じ構成に関する説明は省略する。
【００６５】
図４は、実施の形態２に係る認識位置の例を示す図である。実施の形態２に係る認識位置の例を示す図である。本実施の形態の認識位置１２４ａ〜１２４ｄは、実施の形態１と同様に、カメラ２０の視野２２の中に含まれる空間内の固定位置であり、本実施の形態では図４に示すように４つあり、実施の形態１よりも１つ少ない。本実施の形態においても、認識位置１２４ａ〜１２４ｄは、好ましくは、視野２２の全体に散らばっている。
【００６６】
マーク４０の片面には、実施の形態１と同様に所定の標識が描かれている。本実施の形態の標識は、実施の形態１とは異なり、マーク４０の位置だけでなく、カメラ２０から見た回転方向をも認識できる模様を含む。マーク４０の方向を示すための模様は、種々考えられるが、図４には、当該部分として小さい四角形の突起が正方形の一辺の中央に接して配置されている例を示す。
【００６７】
なお、本実施の形態では、説明を容易にするため、小さい四角形の突起を付した標識が描かれたマーク４０を用いるが、マーク４０は、実施の形態１と同様に、その位置をカメラ２０によって認識できるものであればよい。
【００６８】
また、本実施の形態の認識位置１２４ａ〜１２４ｄは、図２に示すように、空間内の互いに異なる４箇所であればよい。そして、４つの認識位置１２４ａ〜１２４ｄのうち、３つの認識位置１２４ａ〜１２４ｃは、ロボット座標系４２においてフランジ３６が互いに異なる３つの位置で互いに同一の方向を向いた場合に、マーク４０が位置付けられる位置である。また、残り１つの認識位置１２４ｄは、認識位置１２４ａ〜１２４ｃにマーク４０を位置付ける場合とは、フランジ３６が異なる位置で異なる方向を向いた場合に、マーク４０が位置付けられる位置である。
【００６９】
マーク４０の方向は、フランジ座標系４４の方向によって決まる。そのため、認識位置１２４ａ〜１２４ｃにマーク４０が位置付けられる場合、フランジ座標系４４の姿勢は、ロボット座標系４２において、互いに異なる位置にあり、かつ、互いに同じ方向を向いている。また、認識位置１２４ｄにマーク４０が位置付けられる場合、フランジ座標系４４の姿勢は、ロボット座標系４２において、認識位置１２４ａ〜１２４ｃとは異なる位置にあり、かつ、認識位置１２４ａ〜１２４ｃにマーク４０が位置付けられる場合のフランジ座標系４４の方向とは異なる方向を向いている。
【００７０】
なお、認識位置１２４ｄにマーク４０が位置付けられる場合のフランジ３６の方向は、認識位置１２４ａ〜１２４ｃにマーク４０が位置付けられる場合のフランジ３６の方向と異なっており、かつ、マーク４０の位置をカメラ２０から認識できれば、任意の方向でよい。
【００７１】
このように、フランジ３６が同じ方向を向いた３つの認識位置１２４ａ〜１２４ｃとそれとは異なる方向を向いた１つの認識位置１２４ｄとを用いることによって、実施の形態１に係る認識位置２４ａ〜２４ｅよりも１つ少ない認識位置１２４ａ〜１２４ｄを用いてロボット座標系４２とカメラ座標系２６とを対応付けるためのパラメータを算出することが可能になる。両座標系４２，２６の対応付けに関して、本実施の形態における基本的な考え方について説明する。
【００７２】
各パラメータと関係式は、実施の形態１に係る式（１）〜式（３）と同様であるが、本実施の形態では、認識位置１２４ａ〜１２４ｃに移動した場合のマーク４０の、カメラ座標系２６における座標値を（ｘｉ，ｙｉ，ｚｉ）（ｉ＝１〜３）とし、ロボット座標系４２におけるフランジ３６の姿勢をＲｆｉ及びｔｆｉ（ｉ＝１〜３）とする。認識位置１２４ａに係る座標値及び姿勢は、ｉ＝１に対応し、認識位置１２４ｂに係る座標値及び姿勢は、ｉ＝２に対応し、認識位置１２４ｃに係る座標値及び姿勢は、ｉ＝３に対応する。
【００７３】
認識位置１２４ｄに移動した場合のマークの、カメラ座標系２６における座標値を（ｘ4，ｙ4，ｚ4）とし、ロボット座標系４２におけるフランジ３６の姿勢をＲｆ4及びｔｆ4とする。
【００７４】
例えば、認識位置１２４ａに移動した場合に成立する式（３）と、認識位置１２４ｂに移動した場合に成立する式（３）との両辺をそれぞれ引くことによって、式（４）が導かれる。
【数４】
2010188439.tif 000006
【００７５】
ここで、認識位置１２４ａと認識位置１２４ｂとは方向が同じである。そのため、フランジ３６の方向を変えずに並進するだけで、認識位置１２４ａと認識位置１２４ｂとに移動することができ、Ｒｆ１＝Ｒｆ２となり、式（５）が導かれる。
【数５】
2010188439.tif 000007
【００７６】
認識位置１２４ａに移動した場合に成立する式（３）と、認識位置１２４ｃに移動した場合に成立する式（３）とについても同様に、両辺をそれぞれ引き、更にフランジ３６の方向を変えずに移動できることを考慮すると、式（６）が導かれる。
【数６】
2010188439.tif 000008
【００７７】
Ｒｖは回転行列であるため、回転行列から選択される任意の１つの行（列）ベクトルについて、大きさが１であり、他の１つの行（列）ベクトルとの内積が０である。このようなＲｖの性質から導かれる式と、式（５）と、式（６）とから、９つの未知数を含むＲｖを算出することができる。
【００７８】
また、認識位置１２４ａに移動した場合に成立する式（３）と、認識位置１２４ｄに移動した場合に成立する式（３）との両辺をそれぞれ引くことによって、式（７）が導かれる。
【数７】
2010188439.tif 000009
【００７９】
Ｒｖを算出されたため、未知数は、ｔｂの各成分の値であって、３つである。従って、式（７）から得られる方程式を解くことによって、ｔｂを算出することができる。
【００８０】
このような考え方に基づいて、図３を参照して説明した、実施の形態１と同様の操作及び処理を実行することによって、カメラ座標系２６とロボット座標系４２とを対応付けるパラメータは算出される。そのため、本実施の形態では、操作者が実行する操作及びロボットシステム１０が実行する処理に関する説明は、省略する。
【００８１】
本実施の形態では、実施の形態１よりも少ない認識位置１２４ａ〜１２４ｃを使用する。それによって、図３のループＡ（Ｓ１２）において繰り返す処理を少なくすることができる。従って、精度を維持しながら、ロボットシステムが実行する処理を減らすことができるため、ロボット座標系４２とカメラ座標系２６という２つの異なる座標系の関係を正確に、かつより容易に校正することが可能になる。
【００８２】
（実施の形態３）
【００８３】
図５は、実施の形態３に係るロボットシステムの概略図である。実施の形態３に係るロボットシステム３１０は、実施の形態１に係るロボットシステム１０の構成に加えて、ロボット誘導装置３５４を備える。本実施の形態では、実施の形態１に係るロボットシステム１０と同じ構成に関する説明は省略する。
【００８４】
ロボット誘導装置３５４は、ケーブル３５３を介して画像処理装置２８に、ケーブル３５４を介してロボット制御装置５０に、相互に通信可能に接続されており、画像処理装置２８から取得した画像情報に基づいて、マーク４０が認識位置２４ａ〜２４ｅに移動するように、ロボット制御装置５０を介してフランジ３６を誘導する。
【００８５】
具体的には、ロボット誘導装置３５４は、実施の形態１では利用者の操作に基づいて行われていた移動ステップ（図３のＳ１３）を自動的に実行する。
【００８６】
カメラ座標系２６とロボット座標系４２とを対応付けるパラメータを算出するために、操作者が実行する操作及びロボットシステム３１０が実行する処理は、移動ステップ（図３のＳ１３）の詳細を除いて、実施の形態１と概ね同様である。そのため、本実施の形態では、ロボット誘導装置３５４が実行する移動ステップの詳細についてのみ説明し、その他の実施の形態１と同様の操作及び処理に関する説明は省略する。
【００８７】
図６は、実施の形態３に係るパラメータ算出方法における処理の手順を示すフローチャートである。
【００８８】
ロボット制御装置５０は、コントローラ５２から取得する利用者の指示に従って、ロボット３０を制御し、マーク４０を視野２２の中に移動させて、マーク４０の位置を設定する（Ｓ２１）。
【００８９】
ロボット３０は、視野２２の画像情報に基づいてマーク４０の移動を制御するため、このステップは、ロボット誘導装置３５４が自動的に実行するのではなく、利用者の指示に従う。このとき、好ましくは、マーク４０のマークが描かれた面は視覚センサで検出しやすいようにカメラ２０の光軸と平行な方向（図５では、カメラ座標系２６のｚ軸方向）に向けられている。
【００９０】
ロボットシステム１０は、ロボット座標系４２の全ての軸方向（ｘ方向，ｙ方向，ｚ方向）について、以下に詳述する、一定量移動ステップ（Ｓ２３）と、座標値変化取得ステップ（Ｓ２４）と、記憶ステップ（Ｓ２５）とを繰り返すループＢを実行する（Ｓ２２）。
【００９１】
ロボット制御装置５０は、ロボット座標系４２の一軸の方向、例えばｘ軸方向に（Ｄ，０，０）だけ、マーク４０を移動させる（Ｓ２３）。画像処理装置２８は、一定量移動ステップ（Ｓ２３）においてマーク４０が移動した場合、カメラ座標系２６でのマーク４０の座標値の変化（ｄｘ１，ｄｙ１，ｄｚ１）を示す変化情報を取得する（Ｓ２４）。ロボット制御装置５０は、その変化情報を画像処理装置２８から取得し、自身が備える記憶手段に記憶させる（Ｓ２５）。
【００９２】
ロボットシステム１０は、ロボット座標系４２の他の一軸の方向、例えばｙ軸方向についても同様の処理を実行する。すなわち、ロボット制御装置５０が、ロボット座標系４２のｙ軸方向に（０，Ｄ，０）だけ、マーク４０を移動させ（Ｓ２３）、画像処理装置２８が、その移動の前後における、カメラ座標系２６でのマーク４０の座標値の変化（ｄｘ２，ｄｙ２，ｄｚ２）を示す変化情報を取得し（Ｓ２４）、ロボット制御装置５０が、その変化情報を自身が備える記憶手段に記憶させる（Ｓ２５）。
【００９３】
ロボットシステム１０は、ロボット座標系４２の残る一軸の方向、例えばｚ軸方向についても同様の処理を実行する。すなわち、ロボット制御装置５０が、ロボット座標系４２のｚ軸方向に（０，０，Ｄ）だけ、マーク４０を移動させ（Ｓ２３）、画像処理装置２８が、その移動の前後における、カメラ座標系２６でのマーク４０の座標値の変化（ｄｘ３，ｄｙ３，ｄｚ３）を示す変化情報を取得し（Ｓ２４）、ロボット制御装置５０が、その変化情報を自身が備える記憶手段に記憶させる（Ｓ２５）。
【００９４】
ここで、一定量移動ステップ（Ｓ２３）においてマーク４０を移動させる距離Ｄは、予め定められる距離であって、マーク設定ステップ（Ｓ２１）において設定されるマーク４０の位置との関係で、移動後に視野２２から外れない程度の距離である。例えば、マーク設定ステップ（Ｓ２１）において視野２２のほぼ中央にマーク４０が設定される場合、移動距離Ｄは、視野２２の中の最短移動距離の半分より短い距離、例えば視野２２の中の最短移動距離の１／４〜１／３程度に予め決められ、ロボット制御装置５０が記憶している。
【００９５】
このように、ロボット座標系４２の全ての軸についてループＢ（Ｓ２２）を繰り返すことによって、視野２２の中でマーク４０を任意の姿勢で任意の位置に移動させることが可能になる。その基礎となる考え方をここで説明する。
【００９６】
まず、マーク４０の並進移動については、次のように考える。センサ座標系２６におけるマーク４０の相対移動量（ｄｘ，ｄｙ，ｄｚ）と、ロボット座標系４２におけるフランジ３６（フランジ座標系４４）の相対移動量（ｄＸ，ｄＹ，ｄＺ）との一般的な関係式（８）を導くことができる。
【数８】
2010188439.tif 000010
【００９７】
フランジ座標系４４の方向を変えることなく、カメラ座標系２６においてマーク４０を（ｄｘ、ｄｙ，ｄｚ）だけ相対移動させる場合のロボット座標系４２におけるフランジ３６の相対移動量（ｄＸ，ｄＹ，ｄＺ）は、式（８）をもとに、式（９）として導かれる。式（９）を利用することによって、マーク４０を視野２２の中の任意の位置に並進移動させることができる。
【数９】
2010188439.tif 000011
【００９８】
次に、マーク４０の、カメラ座標系２６の１軸を中心とした回転移動については、次のように考える。カメラ座標系２６でのマーク４０の相対移動量（１，０，０）がロボット座標系４２でのフランジ３６の相対移動量（ｄＸ１ｄＹ１，ｄＺ１）に対応し、カメラ座標系２６でのマーク４０の相対移動量（０，１，０）がロボット座標系４２でのフランジ３６の相対移動量（ｄＸ２，ｄＹ２，ｄＺ２）に対応するとした場合、ロボット座標系４２での相対移動量（ｄＸ１，ｄＹ１，ｄＺ１）及び（ｄＸ２，ｄＹ２，ｄＺ２）は、式（９）から決定できる。
【００９９】
このとき、（ｄＸ１ｄＹ１，ｄＺ１）及び（ｄＸ２，ｄＹ２，ｄＺ２）は、直交しており、かつ、これらを含む面は、カメラ座標系２６のｚ軸に直交する。そのため、その面に垂直な軸を中心にフランジ座標系４４を回転させれば、マーク４０のマークが描かれた面は、カメラ２６の方向を向いたまま方向を変える。従って、（ｄＸ１ｄＹ１，ｄＺ１）及び（ｄＸ２，ｄＹ２，ｄＺ２）に垂直な軸を中心とする回転行列に応じてフランジ３６の姿勢を変化させることによって、マーク４０を回転移動させることができる。
【０１００】
このように、カメラ座標系２６で直交する同じ距離の１組の相対移動量に対するロボット座標系４２での１組の相対移動量を算出し、算出された１組みの相対移動量を示すベクトルに垂直な軸を中心とする回転行列を利用することによって、カメラ座標系２６の１軸を中心にマーク４０を回転移動させることができる。
【０１０１】
ここで、フランジ３６の姿勢を大きく変化させると、マーク４０が視野２２の外に出てしまうことがある。これを防ぐために、ロボット制御装置５０は、画像処理装置２８から随時画像情報を取得しながらフランジ３６の姿勢を変化させ、マーク４０が視野２２の外側に近づくと、式（９）に従って並進によってマーク４０を視野２２の中心近傍に戻した後に、再び画像情報を取得しながらフランジ３６の姿勢を変化させる。これを繰り返すことによって、マーク４０が視野２２から外れることなく、マーク４０の方向を任意の方向に変えることができる。
【０１０２】
ロボット制御装置５０は、画像処理装置２８から取得する画像情報に基づいて、マーク４０と認識位置２４ａ〜２４ｅのうち目標となるものとの位置（中心）の違いを算出し、当該位置の違いを式（９）に適用することによって、両マークの位置を移動させるために必要なフランジ３６の第１動作量を算出する（Ｓ２６）。ロボット制御装置５０は、算出した第１動作量だけフランジ３６が移動するようにロボット３０を制御することによって、マーク４０を並進させる（Ｓ２７）。
【０１０３】
また、ロボット制御装置５０は、画像処理装置２８から取得する画像情報に基づいて、マーク４０と認識位置２４ａ〜２４ｅのうち目標となるものとの方向の違いを算出し、マーク４０を回転移動させるための上述の回転行列を当該方向の違いに適用することによって、両マークの方向を移動させるために必要なフランジ３６の第２動作量を算出する（Ｓ２８）。ロボット制御装置５０は、算出した第２動作量だけフランジ３６が移動するようにロボット３０を制御することによって、マーク４０を回転させる（Ｓ２９）。
【０１０４】
以上、本発明の実施の形態３について説明した。本実施の形態によると、カメラ２０を自動的に移動させることができるため、ロボット座標系４２とカメラ座標系２６という２つの異なる座標系を対応付けるパラメータをより容易に校正することが可能になる。
【０１０５】
なお、本実施の形態では、実施の形態１に係るロボットシステム１０を参照して説明したが、実施の形態２に係るロボットシステムについても同様にロボット誘導装置３５４を適用することができる。実施の形態２では、認識位置１２４ａ〜１２４ｄが４つだけであり、しかも、そのうち３つの認識位置１２４ａ〜１２４ｃが同じ方向を向いているため、これらの認識位置１２４ａ〜１２４ｃの間の移動では、回転が不要になり、計算及び移動に関する処理を低減することができる。
【０１０６】
また、実施の形態１のように５つの認識位置を使用する場合、認識位置は、カメラ２０の視界内の任意の位置でよく、従って、自動的にマーク４０を移動させる場合には、本実施の形態によらず、例えば、ロボット誘導装置３５４が生成する乱数に従って認識位置を決定して、その認識位置へマーク４０を移動させてもよい。
【０１０７】
（実施の形態４）
【０１０８】
図７は、実施の形態４に係るロボットシステムの概略図である。実施の形態４に係るロボットシステム４１０は、カメラ２０がフランジ３６に固定的に取り付けられており、またマークが空間内に配置されていることとを除いて、実施の形態１に係るロボットシステム１０と同様の構成を備える。本実施の形態では、実施の形態１に係るロボットシステム１０と同じ構成に関する説明は省略する。
【０１０９】
カメラ（視点）２０は、実施の形態１と同様の構成を有し、画像情報を生成する。フランジ３６には、実施の形態１のマーク４０に代えて、カメラ２０が固定的に取り付けられており、カメラ座標系２６とフランジ座標系４４とは、互いに固定した位置関係にある。
本実施の形態のマーク４２４は、１つだけ空間内の固定位置に配置されている。
【０１１０】
本実施の形態では、カメラ２０を移動させることによって、図８に模式的に示すように、異なる視線方向４５８ａ〜４５８ｅに適合する認識位置からマーク４２４を認識する。カメラ座標系２６とフランジ座標系４４とは、上述のように互いに固定した位置関係にあるが、その正確な関係は不明である。そのため、カメラ２０から取得する画像情報に基づいてロボット３０を制御するためには、カメラ座標系２６とフランジ座標系４４とを対応付けるパラメータを校正する必要がある。カメラ座標系２６とフランジ座標系４４との対応付けに関して、本実施の形態における基本的な考え方について説明する。
【０１１１】
まず、フランジ座標系（第３座標系）４４での座標値を（ＸＦ，ＹＦ，ＺＦ）とし、カメラ座標系（第４座標系）２６での座標値を（ｘ，ｙ，ｚ）とすると、両座標値は、両座標系を対応付けるパラメータＲｈとｔｈとを用いて式（１０）で表される。Ｒｈは３×３の回転行列であり、ｔｈは並進ベクトルである。
【数１０】
2010188439.tif 000012
【０１１２】
フランジ座標は、式（１１）によってロボット座標に変換される。Ｒｆは３×３の回転行列であり、ｔｆは並進ベクトルであって、Ｒｆとｔｆとによって、フランジ３６の位置及び方向を含む姿勢が表される。Ｒｆとｔｆとは、ロボット制御装置５０によって制御され、保持されている。
【数１１】
2010188439.tif 000013
【０１１３】
マーク４２４のロボット座標系４２における座標値を（Ｘｍ，Ｙｍ，Ｚｍ）として、ある認識位置に位置付けられた視点からマーク４２４を認識した時のフランジ３６（フランジ座標系４４）の姿勢をＲｆｉ，ｔｆｉとし、その時のマーク４２４のカメラ座標系２６における座標値を（ｘｉ，ｙｉ，ｚｉ）とする。また、他の認識位置に位置付けられた視点からマーク４２４を認識した時のフランジ３６の姿勢をＲｆｊ，ｔｆｊとし、その時のマーク４２４のカメラ座標系２６における座標値を（ｘｊ，ｙｊ，ｚｊ）とする。これらの変数には、式（１２）の関係が成立し、そこから式（１３）が導かれる。
【数１２】
2010188439.tif 000014
【数１３】
2010188439.tif 000015
【０１１４】
式（１３）において、未知数は、Ｒｈの９成分及びｔｈの３成分であって、全部で１２個ある。また、式（１３）は、すべての未知数について一次式である。他方、１つの視点からの認識に基づいて式（１３）のｘ成分，ｙ成分及びｚ成分の合計３つの一次方程式が得られる。従って、認識位置を５つの視点から認識して、式（１３）に相当する式を４つ取得することによって、両座標系を対応付けるパラメータＲｈとｔｈの全ての未知数を決定することが可能になる。
【０１１５】
このような考え方に基づいて、ロボットシステム１０は、カメラ座標系２６とフランジ座標系４４という異なる２つの３次元座標系を対応付けるためのパラメータを算出し、それによって、正確なロボットの制御を実現する。
【０１１６】
本実施の形態において、カメラ座標系２６とフランジ座標系４４とを対応付けるパラメータを算出するために、操作者が実行する操作及びロボットシステム４１０が実行する処理について、図９に示すフローチャートを参照して説明する。
【０１１７】
ロボット制御装置５０は、以下に詳述する、カメラ移動ステップ（移動ステップ；Ｓ３２）と、認識ステップ（Ｓ３３）と、座標情報取得ステップ（Ｓ３４）と、姿勢情報取得ステップ（Ｓ３５）と、記憶ステップ（Ｓ３６）とを、全ての認識位置４５８ａ〜４５８ｅについて繰り返すループＣを実行する（Ｓ３１）。
【０１１８】
ロボット制御装置５０は、コントローラ５２から取得する利用者の指示に従って、ロボット３０を制御してフランジ３６を移動させることによって、カメラ２０を視線４５８ａに適合する認識位置に移動させる（Ｓ３２）。利用者は、実施の形態１と同様に、例えばカメラ２０から得られる画像をモニタ（図示せず）で観察しながら、コントローラ５２を介してロボット３０を操作する。
【０１１９】
画像処理装置２８は、マーク４２４を認識し（Ｓ３３）、これによって、ロボット制御装置５０は、カメラ座標系（第４座標系）２６におけるマーク４２４の座標値を示す座標情報（第４情報）を取得する（Ｓ３４）。
【０１２０】
ロボット制御装置５０は、ロボット座標系４２におけるフランジ３６（フランジ座標系４４）の姿勢を示す姿勢情報（第３情報）を取得する（Ｓ３５）。
【０１２１】
なお、ロボット制御装置５０が座標情報及び姿勢情報を取得する順序は、いかなるものでもよい。すなわち、姿勢情報及び座標情報は、例えば、同時並行で取得されてもよく、又は姿勢情報、座標情報の順で若しくはその逆順で取得されてもよい。
【０１２２】
姿勢情報及び座標情報を生成するための処理は、実施の形態１と同様であるため、ここでの詳細な説明は省略する。
【０１２３】
ロボット制御装置５０は、座標情報取得ステップ（Ｓ３４）及び姿勢情報取得ステップ（Ｓ３５）において取得した座標情報及び姿勢情報を、同一の視線（視線４５８ａ〜４５８ｅの１つ）に適応する認識位置について取得されたものとして対応付けて、ロボット制御装置５０が備える記憶媒体に記憶させる（Ｓ３６）。
【０１２４】
このような、カメラ移動ステップ（Ｓ３２）と、認識ステップ（Ｓ３３）と、座標情報取得ステップ（Ｓ３４）と、姿勢情報取得ステップ（Ｓ３５）と、記憶ステップ（Ｓ３６）とを、全ての視線４５８ａ〜４５８ｅの各々について終了すると、ロボット制御装置５０は、取得した５組（ｉ＝１〜５）の姿勢情報Ｒｆｉ，ｔｆｉ及び座標情報（ｘｉ，ｙｉ，ｚｉ）を上述の式（１３）に適用することによって得られる方程式を解くことにより、カメラ座標系２６とフランジ座標系４４とを対応付けるためのパラメータを算出する（Ｓ３７）。
【０１２５】
以上、本発明の実施の形態４について説明した。本実施の形態によると、カメラ２０がフランジ３６に固定されるだけであり、その固定位置を調整する必要がない。そのため、利用者の作業負担を軽減することができ、従って、カメラ座標系２６とフランジ座標系４４という２つの異なる座標系の関係を正確かつ容易に校正することが可能になる。
【０１２６】
（実施の形態５）
【０１２７】
実施の形態５に係るロボットシステムは、実施の形態４に係るロボットシステム４１０と同様の構成を備えており、実施の形態４に係るロボットシステム４１０との違いは、マーク４２４を認識するカメラ（視点）２０の認識位置にある。そのため、本実施の形態では、実施の形態４と同様のロボットシステム４１０に関する説明は省略し、認識位置についてのみ説明する。
【０１２８】
図１０は、実施の形態５に係るマーク４２４を認識するための視線方向の例を示す図である。本実施の形態では、４つの異なる認識位置に位置付けたカメラ２０から、マーク４２４を認識する。
【０１２９】
第１認識位置と第２認識位置とは、視線４６０ａ，４６０ｂが平行（第１方向）になる位置であり、マーク４２４が視野に収まる位置である。視線４６０ａ，４６０ｂは、同一平面４６２上にある。
【０１３０】
また、第３認識位置と第４認識位置とは、視線４６０ｃ，４６０ｄが平行（第２方向）になる位置であり、マーク４２４が視野に収まる位置である。視線４６０ｃ，４６０ｄは、同一平面４６４上にある。視線４６０ａ，４６０ｂと、視線４６０ｃ，４６０ｄとは、平行ではない。
【０１３１】
このような位置にカメラ２０を配置することによって、例えば、第１認識位置と第２認識位置とでは、フランジ３６の姿勢のうち、方向が同じであるため、Ｒｆ１＝Ｒｆ２、かつ、ｔｆ１≠ｔｆ２となり、式（１３）から、式（１４）が導かれる。
【数１４】
2010188439.tif 000016
【０１３２】
また、第３認識位置と第４認識位置とについても同様にして、式（１５）が導かれる。
【数１５】
2010188439.tif 000017
【０１３３】
式（１４）及び式（１５）は、式（５）及び式（６）と同様に、回転行列Ｒｈの性質を利用して、これら２つの式からＲｈを求めることができる。Ｒｈが求まると、第１認識位置及び第３認識位置でのフランジ３６の姿勢及びセンサ座標系２６での座標値を、式（１３）に適用することによって、ｔｈを求めることができる。
【０１３４】
このような考え方に基づいて、図９を参照して説明した、実施の形態４と同様の操作及び処理を実行することによって、カメラ座標系２６とフランジ座標系４４とを対応付けるためのパラメータは算出される。そのため、本実施の形態では、操作者が実行する操作及びロボットシステム４１０が実行する処理に関する説明は、省略する。
【０１３５】
本実施の形態では、実施の形態４よりも１つ少ない認識位置からマーク４２４を認識することによって、カメラ座標系２６とフランジ座標系４４とを対応付けるためのパラメータを算出する。それによって、図９のループＣ（Ｓ３１）において繰り返す処理を少なくすることができるとともに、計算量を少なくすることができる。従って、精度を維持しながら、ロボットシステムが実行する処理を減らすことができるため、カメラ座標系２６とフランジ座標系４４という２つの異なる座標系の関係を正確に、かつより容易に校正することが可能になる。
【０１３６】
（実施の形態６）
【０１３７】
図１１は、実施の形態６に係るロボットシステムの概略図である。実施の形態６に係るロボットシステム６１０は、実施の形態４に係るロボットシステム４１０の構成に加えて、ロボット誘導装置６５４を備える。本実施の形態では、実施の形態４に係るロボットシステム４１０と同じ構成に関する説明は省略する。
【０１３８】
ロボット誘導装置６５４は、ケーブル６５５を介して画像処理装置２８に、ケーブル３５６を介してロボット制御装置５０に、相互に通信可能に接続されており、画像処理装置２８から取得した画像情報に基づいて、カメラ２０が所定の位置に配置されるように、ロボット制御装置５０を介してフランジ３６とともにカメラ２０を誘導する。
【０１３９】
具体的には、ロボット誘導装置６５４は、実施の形態４では利用者の操作に基づいて行われていたカメラ４０の移動（Ｓ３２）を自動的に実行する。本実施の形態では、実施の形態５において説明した４つの視線方向４６０ａ〜４６０ｄを実現する認識位置にカメラ２０を配置するための自動実行の一例について、図１２及び図１３のフローチャートを参照して説明する。
【０１４０】
図１２は、実施の形態６に係るパラメータ算出方法における処理の手順を示すフローチャートである。
【０１４１】
ロボット制御装置５０は、カメラ２０を予め決めた第１認識位置へ移動させる（Ｓ４１）。第１認識位置を示す情報は、例えばロボット制御装置５０が記憶している。なお、このステップは、操作者の手動操作によって実行されてもよい。
【０１４２】
ロボットシステム６１０は、第１認識位置において、マークを認識し、座標情報及び姿勢情報を取得し、取得した情報を記憶する（Ｓ４２）。これらの一連の処理は、図９の認識ステップ（Ｓ３３）から記憶ステップ（Ｓ３６）までの一連の処理と同様であるため、ここでの詳細な説明は省略する。
【０１４３】
ロボット誘導装置３５４は、センサ座標系２６における並進をさせることによって、カメラ２０を第２認識位置に移動させる（Ｓ４３）。
【０１４４】
ここで、センサ座標系２６において視線方向を平行移動する方法は、実施の形態３で説明した方法と同様であり、ロボット座標系４２の各軸方向に一定量移動させることによって得られるカメラ座標系４２における移動量に基づく式（９）を利用して、任意の移動量だけ視線を平行移動させることができる。この移動時に、ロボット誘導装置３５４は、画像情報を参照することにより、マーク４２４が視野から外れないように、カメラ２０の並進移動を制御する。
【０１４５】
ロボットシステム６１０は、第２認識位置において、マーク４２４を認識し、座標情報及び姿勢情報を取得し、取得した情報を記憶する（Ｓ４４）。このステップ（Ｓ４４）は、第１認識位置におけるステップ（Ｓ４２）と同様であるため、詳細な説明は省略する。
【０１４６】
ロボット誘導装置３５４は、第３認識位置からマーク４２４への視線４６０ｃに合致する角度にまで、カメラ２０を回転移動させる（Ｓ４５）。
【０１４７】
ここで、図１３は、カメラ２０の角度設定のための移動ステップ（Ｓ４５）の詳細を示すフローチャートである。
【０１４８】
ロボット誘導装置３５４は、センサ座標系２６での回転により、マーク４２４が視野２２の端部になるまでカメラ２０を移動させ（Ｓ５１）、センサ座標系２６での並進により認識位置が視野端部２２になるまでカメラ２０を移動させる（Ｓ５２）。これらの動きによって、１つの軸を中心にカメラ２０を回転させて視線を変えることができる。
【０１４９】
ここでの、回転は、実施の形態３と同様に、カメラ座標系２６で直交する同じ距離の１組の相対移動量に対するロボット座標系４２での１組の相対移動量を算出し、算出された１組みの相対移動量を示すベクトルに垂直な軸を中心とする回転行列を利用することによって、マーク４０を回転移動させることができる。
【０１５０】
ロボット誘導装置３５４は、センサ座標系２６で第３認識位置の視線４６０ｃに合致する角度であるか否かを判定する（Ｓ５３）。第３認識位置の視線４６０ｃに合致する角度でない場合（Ｓ５３でＮＯ）、カメラ２０の並進移動ステップ（Ｓ５１）及び回転移動ステップ（Ｓ５２）を繰り返す。第３認識位置の視線４６０ｃに合致する角度である場合（Ｓ５３でＹＥＳ）、角度設定処理を終了する。
【０１５１】
ここから、再び図１２を参照する。
【０１５２】
ロボット誘導装置３５４は、センサ座標系２６における並進をさせることによって、カメラ２０を第３認識位置に移動させる（Ｓ４６）。角度設定処理（Ｓ４５）ではカメラ２０の角度を設定したため、このステップ（Ｓ４６）において、位置を調整する。
【０１５３】
ロボットシステム６１０は、第３認識位置において、マーク４２４を認識し、座標情報及び姿勢情報を取得し、取得した情報を記憶する（Ｓ４７）。このステップ（Ｓ４７）は、第１認識位置におけるステップ（Ｓ４２）と同様であるため、詳細な説明は省略する。
【０１５４】
ロボット誘導装置３５４は、センサ座標系２６における並進をさせることによって、カメラ２０を第４認識位置に移動させる（Ｓ４８）。
【０１５５】
ロボットシステム６１０は、第４認識位置において、マーク４２４を認識し、座標情報及び姿勢情報を取得し、取得した情報を記憶する（Ｓ４９）。このステップ（Ｓ４９）は、第１認識位置におけるステップ（Ｓ４２）と同様であるため、詳細な説明は省略する。
【０１５６】
ロボット制御装置５０は、第１認識位置から第４認識位置までについて取得した４組（ｉ＝１〜４）の姿勢情報Ｒｆｉ，ｔｆｉ及び座標情報（ｘｉ，ｙｉ，ｚｉ）座標情報及び姿勢情報を上述の式（１３）に適用することによって得られる方程式を解くことにより、カメラ座標系２６とフランジ座標系４４とを対応付けるためのパラメータを算出する（Ｓ５０）。
【０１５７】
以上、本発明の実施の形態６について説明した。本実施の形態によると、カメラ２０を自動的に移動させることができるため、カメラ座標系２６とフランジ座標系４４という２つの異なる座標系を対応付けるパラメータをより容易に校正することが可能になる。
【０１５８】
以上、本発明の実施の形態について説明したが、本発明は、これらの実施の形態に限定されるものではない。
【０１５９】
例えば、カメラ２０は、一定の範囲内の状態を視覚的に感知して、画像情報を生成する視覚センサの一例であって、実施の形態では、１台のカメラのみを設置しているが、例えば２眼ステレオカメラのように複数の視覚センサを有するカメラ、複数台のカメラ等であってもよい。
【０１６０】
例えば、実施の形態では、多関節ロボットを例に説明したが、本発明は、視覚センサを備え、その認識結果に基づいて動作が自動制御されるロボットに適用できる。
【０１６１】
例えば、実施の形態では、マーク４０の位置を示す代表点をマーク４０の中心としたが、代表点は、マーク４０に含まれる点のうち、カメラ３０から取得される画像情報に基づいて特定可能な任意の点であってよい。
【０１６２】
例えば、図６において、並進量算出ステップ（Ｓ２６）及び回転量算出ステップ（Ｓ２８）を実行した後に、並進ステップ（Ｓ２７）及び回転ステップ（Ｓ２９）を実行する等のように、各ステップが実行される順序は、矛盾しない範囲で変更されてもよい。
【産業上の利用可能性】
【０１６３】
本発明は、異なる２つの３次元座標系を対応付けるためのパラメータを校正する装置等に適用でき、例えば、視覚センサで対象物を認識し、その対象物に対して自動的に所定の処理を実行するロボット等の装置に適用できる。
【符号の説明】
【０１６４】
１０，３１０、４１０、６１０  ロボットシステム、２０  カメラ、２４ａ，２４ｂ，２４ｃ，２４ｄ，２４ｅ，１２４ａ，１２４ｂ，１２４ｃ，１２４ｄ，４２４  認識位置、２６  カメラ座標系、２８  画像処理装置、３０  ロボット、３２  基部、３４  アーム部、３６  フランジ、３８ａ  ジョイント部、３８ｂ  旋回機構部、４０  マーク、４２  ロボット座標系、４４  フランジ座標系、５０  ロボット制御装置、５２  コントローラ、３５４，６５４  ロボット誘導装置、４５８ａ，４５８ｂ，４５８ｃ，４５８ｄ，４５８ｅ，４６０ａ，４６０ｂ，４６０ｃ，４６０ｄ  視線方向
【図１】
2010188439.tif 000018
【図２】
2010188439.tif 000019
【図３】
2010188439.tif 000020
【図４】
2010188439.tif 000021
【図５】
2010188439.tif 000022
【図６】
2010188439.tif 000023
【図７】
2010188439.tif 000024
【図８】
2010188439.tif 000025
【図９】
2010188439.tif 000026
【図１０】
2010188439.tif 000027
【図１１】
2010188439.tif 000028
【図１２】
2010188439.tif 000029
【図１３】
2010188439.tif 000030