JP2005028468A - ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置 - Google Patents
ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置 Download PDFInfo
- Publication number
- JP2005028468A JP2005028468A JP2003193664A JP2003193664A JP2005028468A JP 2005028468 A JP2005028468 A JP 2005028468A JP 2003193664 A JP2003193664 A JP 2003193664A JP 2003193664 A JP2003193664 A JP 2003193664A JP 2005028468 A JP2005028468 A JP 2005028468A
- Authority
- JP
- Japan
- Prior art keywords
- coordinate system
- matrix
- robot
- visual
- orientation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】ロボットの視覚座標系位置姿勢を同定できる方法を提供する。
【解決手段】頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定方法であって、視覚装置の視野内において手先を3点以上の異なる点へ移動する度に画像を取得する過程と、画像のそれぞれから手先の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める過程と、ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める過程と、ロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列headTvis(但し、headTvis=(rbtThead)−1・rbtTvis)を求める過程とを有する。
【選択図】 図1
【解決手段】頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定方法であって、視覚装置の視野内において手先を3点以上の異なる点へ移動する度に画像を取得する過程と、画像のそれぞれから手先の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める過程と、ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める過程と、ロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列headTvis(但し、headTvis=(rbtThead)−1・rbtTvis)を求める過程とを有する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置に関する。
【0002】
【従来の技術】
従来から二脚歩行式人型ロボットが知られている(例えば、特許文献1参照)。人型ロボットでは頭部に単眼あるいは複眼のカメラによる視覚装置が搭載されている。視覚装置で得られる画像を利用して周辺にある対象物のロボットに対する位置姿勢を計測することにより対象物に接近する、よける、把持するなどのロボットの動作への応用ができる。またロボット周辺の環境の形状計測などへも応用できる。
【0003】
【特許文献1】
特開2003−145458号公報
【0004】
【発明が解決しようとする課題】
ところで、人型ロボットは、視覚装置による対象物の位置姿勢検出はまず視覚装置に固定された座標系(以降、視覚座標系と記す)で算出されるが、視覚座標系での対象物の位置姿勢は頭部の位置姿勢の変化に伴い変化してしまう。視覚装置で得られた情報に基づいて、ロボット動作への応用、環境形状計測などへ用いるためには、視覚座標系での位置姿勢表現から腰部などに相対的に固定されている座標系(以降、ロボットベース座標系と記す)における位置姿勢表現に変換しなければならないという問題がある。
また、視覚座標系のロボットに対する位置姿勢は、視覚装置の設置位置姿勢の設計値から求める方法と、ロボットベース座標系からみて相対的に既知な位置にジグなどを使いマークを置き、視覚装置により計測した視覚座標系でのマークの位置と設計値から想定されるロボットベース座標系でのマーク位置との対応から求める方法がある。しかし、設計値から求める方法は一般に精度が悪く、既知な位置にジグなどを使いマークを置く方法は、周辺の環境によってはロボットベース座標系に対して正確な位置にマークを置くことが困難な場合があるという問題がある。
【0005】
本発明は、このような事情に鑑みてなされたもので、ロボットの視覚座標系位置姿勢を表す行列を同定できるともに、座標系間の座標変換を行うことができるロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置を提供することを目的とする。
【0006】
【課題を解決するための手段】
請求項1に記載の発明は、ロボット頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定方法であって、ロボットが備える視覚装置の視野内において頭部以外の駆動部を3点以上の異なる点へ移動する度に前記頭部以外の駆動部の画像を取得する過程と、前記画像のそれぞれから前記駆動部の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める過程と、前記ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める過程と、前記ロボット頭部座標系における前記視覚座標系原点の位置姿勢を表す行列headTvis(ただし、headTvis=(rbtThead)−1・rbtTvis)を求める過程とを有することを特徴とする。
【0007】
請求項2に記載の発明は、請求項1に記載の視覚座標系位置姿勢同定方法によって得られた位置姿勢を表す行列headTvisを使用して、視覚座標系からロボットベース座標系へ座標変換を行う座標変換方法であって、各関節の駆動角度から算出したロボットベース座標系におけるロボット頭部の位置姿勢を表す行列rbtTheadを求める過程と、前記行列headTvisと前記行列rbtTheadとからロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvis(ただし、rbtTvis=rbtThead・headTvis)を求める過程と、視覚座標系における対象物の位置姿勢を表す行列visTobjを求める過程と、前記行列rbtTvisと前記行列visTobjとからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobj(ただし、rbtTobj=rbtTvis・visTobj)を求める過程とを有することを特徴とする。
【0008】
請求項3に記載の発明は、ロボット頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定装置であって、ロボットが備える視覚装置の視野内において頭部以外の駆動部を3点以上の異なる点へ移動する度に前記頭部以外の駆動部の画像を取得する手段と、前記画像のそれぞれから前記駆動部の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める手段と、前記ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める手段と、前記ロボット頭部座標系における前記視覚座標系原点の位置姿勢を表す行列headTvis(ただし、headTvis=(rbtThead)−1・rbtTvis)を求める手段とを備えたことを特徴とする。
【0009】
請求項4に記載の発明は、請求項3に記載の視覚座標系位置姿勢同定装置によって得られた位置姿勢を表す行列headTvisを使用して、視覚座標系からロボットベース座標系へ座標変換を行う座標変換装置であって、各関節の駆動角度から算出したロボットベース座標系におけるロボット頭部の位置姿勢を表す行列rbtTheadを求める手段と、前記行列headTvisと前記行列rbtTheadとからロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvis(ただし、rbtTvis=rbtThead・headTvis)を求める手段と、視覚座標系における対象物の位置姿勢を表す行列visTobjを求める過程と、前記行列rbtTvisと前記行列visTobjとからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobj(ただし、rbtTobj=rbtTvis・visTobj)を求める手段とを備えたことを特徴とする。
【0010】
【発明の実施の形態】
以下、本発明の一実施形態による人型ロボットの座標変換装置を図面を参照して説明する。図1は同実施形態の構成を示すブロック図である。この図において、符号1は、2台のCCDカメラを備えた視覚装置である。符号2は、座標変換を行う座標変換計算部であり、視覚装置1における視覚座標系における検出値からロボット腰部のロボットベース系における値に変換する。符号3は、人型ロボットの行動を制御する動作制御部である。符号4は、人型ロボットの首の関節、肩、肘、手首、掌の各腕の関節、股、膝、足首の各関節部分を駆動する関節駆動部である。
【0011】
ここで、図2を参照して、人型ロボット内の各座標系の関係を説明する。人型ロボットが持つ座標系は、ロボットの腰部の座標系であるロボットベース座標系、視覚装置1が備えられるロボット頭部6のロボット頭部座標系及び視覚装置1の座標系である視覚座標系が存在する。人型ロボットは、視覚装置1で得られた情報に基づいて、自己の関節部分を駆動することにより動作を制御する必要があるため、視覚座標系における検出値(例えば、自己の腕との位置関係)をロボットベース座標系における値に変換することにより、精度の高い動作制御を実現する必要がある。視覚装置1による対象物の位置姿勢検出(例えば、カメラの原点からの方向や距離)はまず視覚装置1に固定された視覚座標系で算出される。視覚装置1はロボット頭部6に固定されているため、頭部6の位置姿勢により視覚座標系での対象物の位置姿勢は異なる。ロボット動作へ応用するためにはロボットの腰部に相対的に固定されているロボットベース座標系における対象物の位置姿勢に変換する必要がある。
なお、本実施形態において、頭部とは視覚装置1が搭載され、視覚装置1の光軸の方向を変化させる部位のことである。
【0012】
次に、座標変換に必要なロボット頭部6に対する視覚座標系の位置姿勢を求める方法を説明する。
<ロボット頭部座標系に対する視覚座標系原点の位置姿勢同定>
初めに、ロボット頭部6に固定されたロボット頭部座標系での視覚座標系原点の位置姿勢を表す行列を同定する(キャリブレーション)方法を説明する。
3点以上の異なる点に対してロボットベース座標系における位置と視覚座標系での位置の対応がわかれば、下記に示すように視覚座標系からロボットベース座標系への座標変換行列を求めることができる。
【0013】
視覚座標系での3次元位置からロボットベース座標系での3次元位置への変換は(1)式のように表現する。
rbtP=rbtTvis・visP ・・・(1)
ここで、
rbtP=[rbtP1 rbtP2 rbtP3 …]
visP=[visP1 visP2 visP3 …]
rbtPn:ロボットベース座標系における点の3次元位置を表す拡張ベクトル
visPn:視覚座標系における点の3次元位置を表す拡張ベクトル
rbtTvis:視覚座標系からロボットベース座標系への3次元ユークリッド変換行列
である。
【0014】
(1)式より視覚座標系からロボットベース座標系への座標変換行列は以下のように計算する。
【0015】
実際には、図2に示すように、ロボットの手先にクロスマーク7を設置し、視覚装置1によりクロスマーク7を撮像する。座標変換計算部2は、取得した画像より画像処理によりクロスマーク7の3次元位置を視覚座標系で算出し、同時にその時の手先位置を関節駆動部4から取得することでロボットベース座標系でのクロスマーク7の3次元位置を得る。また、座標変換計算部2は、ロボット頭部6を動かさずに手先を視覚装置1視野内で動かすことにより8つの位置についての視覚座標系での座標位置とロボットベース座標系ので座標位置の対より視覚座標系からロボットベース座標系への座標変換行列rbtTvisを(2)式より算出する。
【0016】
なお、ロボット手先にクロスマーク7を必ず設置する必要はなく、手先に識別が容易なマークが描かれていてもよい。また、画像処理によって、手先の特徴点を抽出し、この抽出した特徴点の3次元座標値を求めるようにしてもよい。さらには、画像を撮像する部分は、手先である必要もなく、頭部以外の駆動部(例えば脚)を視覚装置1の視野内に移動して、この駆動部の特徴点を抽出し、この抽出した特徴点の3次元座標値を求めるようにしてもよい。
【0017】
視覚座標系からロボットベース座標系への座標変換行列は、(3)式のようにロボットベース座標系での頭部座標原点の位置姿勢と頭部座標系での視覚座標原点の位置姿勢を表す行列の積に分解される。頭部6が動いた場合は、(3)式でrbtTheadが変化するためにrbtTvisが変化する、つまり、視覚座標系がロボットベース座標系に対して動く。頭部6のロボットベース座標系での位置姿勢rbtTheadは関節駆動部4から得ることができる。よって、頭部6に対する視覚座標系の位置姿勢headTvis(固定値)が既知であれば、頭部6が動いたとしても視覚座標系からロボットベース座標系への座標変換行列rbtTvisを換算することができる。
【0018】
8つの位置のクロスマーク7を検出した時の視覚装置1が固定されている頭部6の位置姿勢を関節駆動部4より取得し、以下の(4)式により頭部6に対する視覚座標原点の位置姿勢を算出する。
ここで、rbtTheadはロボットベース座標系でのロボット頭部座標系原点の位置姿勢を表す3次元ユークリッド変換行列である。
【0019】
次に、座標変換行列のキャリブレーションの動作を、図3を参照して、説明する。まず、動作制御部3は、視覚装置1は、視覚装置1に対して、キャリブレーション開始コマンドを発する(ステップS1)。これを受けて、視覚装置1は、内部の初期化を実行し、コマンド終了を送信する(ステップS2)。そして、動作制御部3は、開始処理手順の終了を確認する(ステップS3)。
【0020】
次に、動作制御部3は、手先を所定の位置に移動する指示を関節駆動部4へ送信する。これにより、ロボットの手先が所定位置へ移動する(ステップS4)。続いて、動作制御部3は、視覚装置1に対して、クロスマーク7の検出コマンドを送信する(ステップS5)。これを受けて、視覚装置1は、クロスマーク7を検出し(ステップS6)、検出の可否を判定する。この結果、検出できれば戻り値に「1」をセットし、現時点の手先位置と首位置のデータをデータファイルへ追加する(ステップS8、S10)。一方、検出できない場合は、戻り値に「0」をセットする(ステップS9)。そして、視覚装置1は、戻り値を動作制御部3へ返す(ステップS11)。
【0021】
次に、動作制御部3は、視覚装置1から通知された戻り値を判定(ステップS12)し、戻り値が「0」であれば、検出失敗として処理する。戻り値が「1」であれば、クロスマークの検出点数は十分か否かを判定する(ステップS13)。この判定の結果、十分でなければステップS4に戻り、手先の位置を変えて同様の処理を繰り返す。
【0022】
次に、検出点数が十分である場合、動作制御部3は、キャリブレーション終了コマンドを視覚装置1に対して送信する(ステップS14)。これを受けて、視覚装置1は、クロスマーク画像群、手先位置データ、首位置データからロボットベース座標系から視覚座標系への座標変換行列を求め(ステップS15)、処理を終了する。
【0023】
<視覚座標系からロボットベース座標系への変換>
次に、前述した処理によって同定された行列により視覚装置1で検出された対象物の位置姿勢をロボットベース座標系での位置姿勢へ変換する方法を説明する。
まず、動作制御部2は、頭駆動部3、腕駆動部4及び脚駆動部5から得た各関節の駆動角度から算出されるロボットベース座標系でのロボット頭部6の位置姿勢を表す行列rbtTheadと(4)式により求めたロボット頭部座標系での視覚座標系原点の位置姿勢を表す行列headTvisとから(5)式よりロボットベース座標系での視覚座標系原点の位置姿勢を表す行列rbtTvisを算出する。また、動作制御部2は、(6)式により視覚座標系における対象物の位置姿勢を表す行列visTobjからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobjを算出する。
【0024】
このように、人型ロボットの視覚装置1を用い対象物あるいは周辺環境との相対位置関係を計測し、自己の行動制御を行うことが可能となる。また、変換行列を用いることにより、座標系間の座標変換を簡単な行列演算によって実現することができる。
【0025】
なお、前述した説明では、人型ロボットを例にして説明したが、本発明を適用することができるロボットは、人型に限らず、犬型や猫型ロボットでもよい。すなわち、複数のリンクから構成されており、視覚装置が前記リンクの一つに搭載されているロボットに適用可能である。
【0026】
また、図1における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより座標変換処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0027】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0028】
【発明の効果】
以上説明したように、この発明によれば、視覚座標系における姿位置や姿勢などの検出値をロボットベース座標系における値に変換することができるという効果が得られる。また、視覚装置の視野に入る頭部以外の駆動部の特徴点の視覚座標系およびロボットベース座標系での位置検出値を用いることにより、周辺の環境によらず、簡易に視覚座標系位置姿勢を同定することができる。また、変換行列を用いることにより、座標系間の座標変換を簡単な行列演算によって実現することができるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施形態の構成を示すブロック図である。
【図2】各座標系の関係を示す説明図である。
【図3】図1に示す装置の動作を示すフローチャートである。
【符号の説明】
1・・・視覚装置
2・・・座標変換計算部2
3・・・動作制御部
4・・・関節駆動部
6・・・頭部
7・・・マーカ
【発明の属する技術分野】
本発明は、ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置に関する。
【0002】
【従来の技術】
従来から二脚歩行式人型ロボットが知られている(例えば、特許文献1参照)。人型ロボットでは頭部に単眼あるいは複眼のカメラによる視覚装置が搭載されている。視覚装置で得られる画像を利用して周辺にある対象物のロボットに対する位置姿勢を計測することにより対象物に接近する、よける、把持するなどのロボットの動作への応用ができる。またロボット周辺の環境の形状計測などへも応用できる。
【0003】
【特許文献1】
特開2003−145458号公報
【0004】
【発明が解決しようとする課題】
ところで、人型ロボットは、視覚装置による対象物の位置姿勢検出はまず視覚装置に固定された座標系(以降、視覚座標系と記す)で算出されるが、視覚座標系での対象物の位置姿勢は頭部の位置姿勢の変化に伴い変化してしまう。視覚装置で得られた情報に基づいて、ロボット動作への応用、環境形状計測などへ用いるためには、視覚座標系での位置姿勢表現から腰部などに相対的に固定されている座標系(以降、ロボットベース座標系と記す)における位置姿勢表現に変換しなければならないという問題がある。
また、視覚座標系のロボットに対する位置姿勢は、視覚装置の設置位置姿勢の設計値から求める方法と、ロボットベース座標系からみて相対的に既知な位置にジグなどを使いマークを置き、視覚装置により計測した視覚座標系でのマークの位置と設計値から想定されるロボットベース座標系でのマーク位置との対応から求める方法がある。しかし、設計値から求める方法は一般に精度が悪く、既知な位置にジグなどを使いマークを置く方法は、周辺の環境によってはロボットベース座標系に対して正確な位置にマークを置くことが困難な場合があるという問題がある。
【0005】
本発明は、このような事情に鑑みてなされたもので、ロボットの視覚座標系位置姿勢を表す行列を同定できるともに、座標系間の座標変換を行うことができるロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置を提供することを目的とする。
【0006】
【課題を解決するための手段】
請求項1に記載の発明は、ロボット頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定方法であって、ロボットが備える視覚装置の視野内において頭部以外の駆動部を3点以上の異なる点へ移動する度に前記頭部以外の駆動部の画像を取得する過程と、前記画像のそれぞれから前記駆動部の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める過程と、前記ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める過程と、前記ロボット頭部座標系における前記視覚座標系原点の位置姿勢を表す行列headTvis(ただし、headTvis=(rbtThead)−1・rbtTvis)を求める過程とを有することを特徴とする。
【0007】
請求項2に記載の発明は、請求項1に記載の視覚座標系位置姿勢同定方法によって得られた位置姿勢を表す行列headTvisを使用して、視覚座標系からロボットベース座標系へ座標変換を行う座標変換方法であって、各関節の駆動角度から算出したロボットベース座標系におけるロボット頭部の位置姿勢を表す行列rbtTheadを求める過程と、前記行列headTvisと前記行列rbtTheadとからロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvis(ただし、rbtTvis=rbtThead・headTvis)を求める過程と、視覚座標系における対象物の位置姿勢を表す行列visTobjを求める過程と、前記行列rbtTvisと前記行列visTobjとからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobj(ただし、rbtTobj=rbtTvis・visTobj)を求める過程とを有することを特徴とする。
【0008】
請求項3に記載の発明は、ロボット頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定装置であって、ロボットが備える視覚装置の視野内において頭部以外の駆動部を3点以上の異なる点へ移動する度に前記頭部以外の駆動部の画像を取得する手段と、前記画像のそれぞれから前記駆動部の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める手段と、前記ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める手段と、前記ロボット頭部座標系における前記視覚座標系原点の位置姿勢を表す行列headTvis(ただし、headTvis=(rbtThead)−1・rbtTvis)を求める手段とを備えたことを特徴とする。
【0009】
請求項4に記載の発明は、請求項3に記載の視覚座標系位置姿勢同定装置によって得られた位置姿勢を表す行列headTvisを使用して、視覚座標系からロボットベース座標系へ座標変換を行う座標変換装置であって、各関節の駆動角度から算出したロボットベース座標系におけるロボット頭部の位置姿勢を表す行列rbtTheadを求める手段と、前記行列headTvisと前記行列rbtTheadとからロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvis(ただし、rbtTvis=rbtThead・headTvis)を求める手段と、視覚座標系における対象物の位置姿勢を表す行列visTobjを求める過程と、前記行列rbtTvisと前記行列visTobjとからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobj(ただし、rbtTobj=rbtTvis・visTobj)を求める手段とを備えたことを特徴とする。
【0010】
【発明の実施の形態】
以下、本発明の一実施形態による人型ロボットの座標変換装置を図面を参照して説明する。図1は同実施形態の構成を示すブロック図である。この図において、符号1は、2台のCCDカメラを備えた視覚装置である。符号2は、座標変換を行う座標変換計算部であり、視覚装置1における視覚座標系における検出値からロボット腰部のロボットベース系における値に変換する。符号3は、人型ロボットの行動を制御する動作制御部である。符号4は、人型ロボットの首の関節、肩、肘、手首、掌の各腕の関節、股、膝、足首の各関節部分を駆動する関節駆動部である。
【0011】
ここで、図2を参照して、人型ロボット内の各座標系の関係を説明する。人型ロボットが持つ座標系は、ロボットの腰部の座標系であるロボットベース座標系、視覚装置1が備えられるロボット頭部6のロボット頭部座標系及び視覚装置1の座標系である視覚座標系が存在する。人型ロボットは、視覚装置1で得られた情報に基づいて、自己の関節部分を駆動することにより動作を制御する必要があるため、視覚座標系における検出値(例えば、自己の腕との位置関係)をロボットベース座標系における値に変換することにより、精度の高い動作制御を実現する必要がある。視覚装置1による対象物の位置姿勢検出(例えば、カメラの原点からの方向や距離)はまず視覚装置1に固定された視覚座標系で算出される。視覚装置1はロボット頭部6に固定されているため、頭部6の位置姿勢により視覚座標系での対象物の位置姿勢は異なる。ロボット動作へ応用するためにはロボットの腰部に相対的に固定されているロボットベース座標系における対象物の位置姿勢に変換する必要がある。
なお、本実施形態において、頭部とは視覚装置1が搭載され、視覚装置1の光軸の方向を変化させる部位のことである。
【0012】
次に、座標変換に必要なロボット頭部6に対する視覚座標系の位置姿勢を求める方法を説明する。
<ロボット頭部座標系に対する視覚座標系原点の位置姿勢同定>
初めに、ロボット頭部6に固定されたロボット頭部座標系での視覚座標系原点の位置姿勢を表す行列を同定する(キャリブレーション)方法を説明する。
3点以上の異なる点に対してロボットベース座標系における位置と視覚座標系での位置の対応がわかれば、下記に示すように視覚座標系からロボットベース座標系への座標変換行列を求めることができる。
【0013】
視覚座標系での3次元位置からロボットベース座標系での3次元位置への変換は(1)式のように表現する。
rbtP=rbtTvis・visP ・・・(1)
ここで、
rbtP=[rbtP1 rbtP2 rbtP3 …]
visP=[visP1 visP2 visP3 …]
rbtPn:ロボットベース座標系における点の3次元位置を表す拡張ベクトル
visPn:視覚座標系における点の3次元位置を表す拡張ベクトル
rbtTvis:視覚座標系からロボットベース座標系への3次元ユークリッド変換行列
である。
【0014】
(1)式より視覚座標系からロボットベース座標系への座標変換行列は以下のように計算する。
【0015】
実際には、図2に示すように、ロボットの手先にクロスマーク7を設置し、視覚装置1によりクロスマーク7を撮像する。座標変換計算部2は、取得した画像より画像処理によりクロスマーク7の3次元位置を視覚座標系で算出し、同時にその時の手先位置を関節駆動部4から取得することでロボットベース座標系でのクロスマーク7の3次元位置を得る。また、座標変換計算部2は、ロボット頭部6を動かさずに手先を視覚装置1視野内で動かすことにより8つの位置についての視覚座標系での座標位置とロボットベース座標系ので座標位置の対より視覚座標系からロボットベース座標系への座標変換行列rbtTvisを(2)式より算出する。
【0016】
なお、ロボット手先にクロスマーク7を必ず設置する必要はなく、手先に識別が容易なマークが描かれていてもよい。また、画像処理によって、手先の特徴点を抽出し、この抽出した特徴点の3次元座標値を求めるようにしてもよい。さらには、画像を撮像する部分は、手先である必要もなく、頭部以外の駆動部(例えば脚)を視覚装置1の視野内に移動して、この駆動部の特徴点を抽出し、この抽出した特徴点の3次元座標値を求めるようにしてもよい。
【0017】
視覚座標系からロボットベース座標系への座標変換行列は、(3)式のようにロボットベース座標系での頭部座標原点の位置姿勢と頭部座標系での視覚座標原点の位置姿勢を表す行列の積に分解される。頭部6が動いた場合は、(3)式でrbtTheadが変化するためにrbtTvisが変化する、つまり、視覚座標系がロボットベース座標系に対して動く。頭部6のロボットベース座標系での位置姿勢rbtTheadは関節駆動部4から得ることができる。よって、頭部6に対する視覚座標系の位置姿勢headTvis(固定値)が既知であれば、頭部6が動いたとしても視覚座標系からロボットベース座標系への座標変換行列rbtTvisを換算することができる。
【0018】
8つの位置のクロスマーク7を検出した時の視覚装置1が固定されている頭部6の位置姿勢を関節駆動部4より取得し、以下の(4)式により頭部6に対する視覚座標原点の位置姿勢を算出する。
ここで、rbtTheadはロボットベース座標系でのロボット頭部座標系原点の位置姿勢を表す3次元ユークリッド変換行列である。
【0019】
次に、座標変換行列のキャリブレーションの動作を、図3を参照して、説明する。まず、動作制御部3は、視覚装置1は、視覚装置1に対して、キャリブレーション開始コマンドを発する(ステップS1)。これを受けて、視覚装置1は、内部の初期化を実行し、コマンド終了を送信する(ステップS2)。そして、動作制御部3は、開始処理手順の終了を確認する(ステップS3)。
【0020】
次に、動作制御部3は、手先を所定の位置に移動する指示を関節駆動部4へ送信する。これにより、ロボットの手先が所定位置へ移動する(ステップS4)。続いて、動作制御部3は、視覚装置1に対して、クロスマーク7の検出コマンドを送信する(ステップS5)。これを受けて、視覚装置1は、クロスマーク7を検出し(ステップS6)、検出の可否を判定する。この結果、検出できれば戻り値に「1」をセットし、現時点の手先位置と首位置のデータをデータファイルへ追加する(ステップS8、S10)。一方、検出できない場合は、戻り値に「0」をセットする(ステップS9)。そして、視覚装置1は、戻り値を動作制御部3へ返す(ステップS11)。
【0021】
次に、動作制御部3は、視覚装置1から通知された戻り値を判定(ステップS12)し、戻り値が「0」であれば、検出失敗として処理する。戻り値が「1」であれば、クロスマークの検出点数は十分か否かを判定する(ステップS13)。この判定の結果、十分でなければステップS4に戻り、手先の位置を変えて同様の処理を繰り返す。
【0022】
次に、検出点数が十分である場合、動作制御部3は、キャリブレーション終了コマンドを視覚装置1に対して送信する(ステップS14)。これを受けて、視覚装置1は、クロスマーク画像群、手先位置データ、首位置データからロボットベース座標系から視覚座標系への座標変換行列を求め(ステップS15)、処理を終了する。
【0023】
<視覚座標系からロボットベース座標系への変換>
次に、前述した処理によって同定された行列により視覚装置1で検出された対象物の位置姿勢をロボットベース座標系での位置姿勢へ変換する方法を説明する。
まず、動作制御部2は、頭駆動部3、腕駆動部4及び脚駆動部5から得た各関節の駆動角度から算出されるロボットベース座標系でのロボット頭部6の位置姿勢を表す行列rbtTheadと(4)式により求めたロボット頭部座標系での視覚座標系原点の位置姿勢を表す行列headTvisとから(5)式よりロボットベース座標系での視覚座標系原点の位置姿勢を表す行列rbtTvisを算出する。また、動作制御部2は、(6)式により視覚座標系における対象物の位置姿勢を表す行列visTobjからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobjを算出する。
【0024】
このように、人型ロボットの視覚装置1を用い対象物あるいは周辺環境との相対位置関係を計測し、自己の行動制御を行うことが可能となる。また、変換行列を用いることにより、座標系間の座標変換を簡単な行列演算によって実現することができる。
【0025】
なお、前述した説明では、人型ロボットを例にして説明したが、本発明を適用することができるロボットは、人型に限らず、犬型や猫型ロボットでもよい。すなわち、複数のリンクから構成されており、視覚装置が前記リンクの一つに搭載されているロボットに適用可能である。
【0026】
また、図1における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより座標変換処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0027】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0028】
【発明の効果】
以上説明したように、この発明によれば、視覚座標系における姿位置や姿勢などの検出値をロボットベース座標系における値に変換することができるという効果が得られる。また、視覚装置の視野に入る頭部以外の駆動部の特徴点の視覚座標系およびロボットベース座標系での位置検出値を用いることにより、周辺の環境によらず、簡易に視覚座標系位置姿勢を同定することができる。また、変換行列を用いることにより、座標系間の座標変換を簡単な行列演算によって実現することができるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施形態の構成を示すブロック図である。
【図2】各座標系の関係を示す説明図である。
【図3】図1に示す装置の動作を示すフローチャートである。
【符号の説明】
1・・・視覚装置
2・・・座標変換計算部2
3・・・動作制御部
4・・・関節駆動部
6・・・頭部
7・・・マーカ
Claims (4)
- ロボット頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定方法であって、
ロボットが備える視覚装置の視野内において頭部以外の駆動部を3点以上の異なる点へ移動する度に前記頭部以外の駆動部の画像を取得する過程と、
前記画像のそれぞれから前記駆動部の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める過程と、
前記ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める過程と、
前記ロボット頭部座標系における前記視覚座標系原点の位置姿勢を表す行列headTvis(ただし、headTvis=(rbtThead)−1・rbtTvis)を求める過程と、
を有することを特徴とする視覚座標系位置姿勢同定方法。 - 請求項1に記載の視覚座標系位置姿勢同定方法によって得られた位置姿勢を表す行列headTvisを使用して、視覚座標系からロボットベース座標系へ座標変換を行う座標変換方法であって、
各関節の駆動角度から算出したロボットベース座標系におけるロボット頭部の位置姿勢を表す行列rbtTheadを求める過程と、
前記行列headTvisと前記行列rbtTheadとからロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvis(ただし、rbtTvis=rbtThead・headTvis)を求める過程と、
視覚座標系における対象物の位置姿勢を表す行列visTobjを求める過程と、
前記行列rbtTvisと前記行列visTobjとからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobj(ただし、rbtTobj=rbtTvis・visTobj)を求める過程と
を有することを特徴とする座標変換方法。 - ロボット頭部に固定されたロボット頭部座標系における視覚座標系原点の位置姿勢を表す行列を同定する視覚座標系位置姿勢同定装置であって、
ロボットが備える視覚装置の視野内において頭部以外の駆動部を3点以上の異なる点へ移動する度に前記頭部以外の駆動部の画像を取得する手段と、
前記画像のそれぞれから前記駆動部の特徴点を抽出し、少なくとも3点の特徴点から視覚座標系における3次元位置とロボットの各関節角から割り出したロボットベース座標系での3次元位置との対応により、ロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvisを求める手段と、
前記ロボットベース座標系におけるロボット頭部系座標原点の位置姿勢を表す行列rbtTheadを求める手段と、
前記ロボット頭部座標系における前記視覚座標系原点の位置姿勢を表す行列headTvis(ただし、headTvis=(rbtThead)−1・rbtTvis)を求める手段と、
を備えたことを特徴とする視覚座標系位置姿勢同定装置。 - 請求項3に記載の視覚座標系位置姿勢同定装置によって得られた位置姿勢を表す行列headTvisを使用して、視覚座標系からロボットベース座標系へ座標変換を行う座標変換装置であって、
各関節の駆動角度から算出したロボットベース座標系におけるロボット頭部の位置姿勢を表す行列rbtTheadを求める手段と、
前記行列headTvisと前記行列rbtTheadとからロボットベース座標系における視覚座標系原点の位置姿勢を表す行列rbtTvis(ただし、rbtTvis=rbtThead・headTvis)を求める手段と、
視覚座標系における対象物の位置姿勢を表す行列visTobjを求める過程と、
前記行列rbtTvisと前記行列visTobjとからロボットベース座標系における対象物の位置姿勢を表す行列rbtTobj(ただし、rbtTobj=rbtTvis・visTobj)を求める手段と
を備えたことを特徴とする座標変換装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003193664A JP2005028468A (ja) | 2003-07-08 | 2003-07-08 | ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003193664A JP2005028468A (ja) | 2003-07-08 | 2003-07-08 | ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005028468A true JP2005028468A (ja) | 2005-02-03 |
Family
ID=34205069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003193664A Withdrawn JP2005028468A (ja) | 2003-07-08 | 2003-07-08 | ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005028468A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011036975A (ja) * | 2009-08-18 | 2011-02-24 | Honda Motor Co Ltd | ロボットの制御方法 |
JP2011067941A (ja) * | 2009-09-22 | 2011-04-07 | Gm Global Technology Operations Inc | 人間型ロボットのための視覚認知システムおよび方法 |
US8855819B2 (en) | 2008-10-09 | 2014-10-07 | Samsung Electronics Co., Ltd. | Method and apparatus for simultaneous localization and mapping of robot |
CN108687769A (zh) * | 2017-03-30 | 2018-10-23 | 本田技研工业株式会社 | 位置估计方法及把持方法 |
WO2018191970A1 (zh) * | 2017-04-21 | 2018-10-25 | 深圳前海达闼云端智能科技有限公司 | 一种机器人控制方法、机器人装置及机器人设备 |
CN109227532A (zh) * | 2017-07-11 | 2019-01-18 | 精工爱普生株式会社 | 机器人的控制装置及其系统、机器人及摄像机的校正方法 |
CN112123370A (zh) * | 2019-06-24 | 2020-12-25 | 天津工业大学 | 期望位姿变动的移动机器人视觉镇定控制 |
WO2022205941A1 (zh) * | 2021-03-31 | 2022-10-06 | 深圳市优必选科技股份有限公司 | 运动控制方法、装置、机器人控制设备及可读存储介质 |
WO2022237787A1 (zh) * | 2021-05-10 | 2022-11-17 | 武汉联影智融医疗科技有限公司 | 机器人定位和位姿调整方法和系统 |
-
2003
- 2003-07-08 JP JP2003193664A patent/JP2005028468A/ja not_active Withdrawn
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8855819B2 (en) | 2008-10-09 | 2014-10-07 | Samsung Electronics Co., Ltd. | Method and apparatus for simultaneous localization and mapping of robot |
JP2011036975A (ja) * | 2009-08-18 | 2011-02-24 | Honda Motor Co Ltd | ロボットの制御方法 |
JP2011067941A (ja) * | 2009-09-22 | 2011-04-07 | Gm Global Technology Operations Inc | 人間型ロボットのための視覚認知システムおよび方法 |
CN108687769A (zh) * | 2017-03-30 | 2018-10-23 | 本田技研工业株式会社 | 位置估计方法及把持方法 |
CN108687769B (zh) * | 2017-03-30 | 2022-06-24 | 本田技研工业株式会社 | 位置估计方法 |
US11325255B2 (en) | 2017-04-21 | 2022-05-10 | Cloudminds Robotics Co., Ltd. | Method for controlling robot and robot device |
WO2018191970A1 (zh) * | 2017-04-21 | 2018-10-25 | 深圳前海达闼云端智能科技有限公司 | 一种机器人控制方法、机器人装置及机器人设备 |
JP2019014030A (ja) * | 2017-07-11 | 2019-01-31 | セイコーエプソン株式会社 | ロボットの制御装置、ロボット、ロボットシステム、並びに、カメラの校正方法 |
JP7003462B2 (ja) | 2017-07-11 | 2022-01-20 | セイコーエプソン株式会社 | ロボットの制御装置、ロボットシステム、並びに、カメラの校正方法 |
CN109227532A (zh) * | 2017-07-11 | 2019-01-18 | 精工爱普生株式会社 | 机器人的控制装置及其系统、机器人及摄像机的校正方法 |
CN109227532B (zh) * | 2017-07-11 | 2023-08-29 | 精工爱普生株式会社 | 机器人的控制装置及其系统、机器人及摄像机的校正方法 |
CN112123370A (zh) * | 2019-06-24 | 2020-12-25 | 天津工业大学 | 期望位姿变动的移动机器人视觉镇定控制 |
CN112123370B (zh) * | 2019-06-24 | 2024-02-06 | 内蒙古汇栋科技有限公司 | 期望位姿变动的移动机器人视觉镇定控制 |
WO2022205941A1 (zh) * | 2021-03-31 | 2022-10-06 | 深圳市优必选科技股份有限公司 | 运动控制方法、装置、机器人控制设备及可读存储介质 |
WO2022237787A1 (zh) * | 2021-05-10 | 2022-11-17 | 武汉联影智融医疗科技有限公司 | 机器人定位和位姿调整方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Meng et al. | Autonomous robot calibration using vision technology | |
JP5606241B2 (ja) | 人間型ロボットのための視覚認知システムおよび方法 | |
JP6180087B2 (ja) | 情報処理装置及び情報処理方法 | |
JP5233601B2 (ja) | ロボットシステム、ロボット制御装置およびロボット制御方法 | |
JP7111114B2 (ja) | 情報処理装置、情報処理方法及び情報処理システム | |
JP4961860B2 (ja) | ロボット装置及びロボット装置の制御方法 | |
JP6985532B2 (ja) | データ処理方法及び装置、電子機器並びに記憶媒体 | |
JP6324025B2 (ja) | 情報処理装置、情報処理方法 | |
Seo et al. | A comparative study of in-field motion capture approaches for body kinematics measurement in construction | |
JP2007319938A (ja) | ロボット装置及び物体の三次元形状の取得方法 | |
JPWO2018043525A1 (ja) | ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法 | |
JP2014068714A (ja) | 関節角度測定システム | |
CN112476489B (zh) | 基于自然特征的柔性机械臂同步测量方法及系统 | |
JP6885856B2 (ja) | ロボットシステムおよびキャリブレーション方法 | |
KR101021470B1 (ko) | 영상 데이터를 이용한 로봇 움직임 데이터 생성 방법 및 생성 장치 | |
JP2005028468A (ja) | ロボットの視覚座標系位置姿勢同定方法、座標変換方法および装置 | |
CN114918926B (zh) | 机械臂视觉配准方法、装置、控制终端及存储介质 | |
US20220383547A1 (en) | Hand-eye calibration of camera-guided apparatuses | |
JPH0538688A (ja) | 産業用ロボツトシステムの座標系較正方法 | |
JP6626338B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
JP4533193B2 (ja) | 情報処理装置および情報処理方法 | |
KR102451791B1 (ko) | 영상 내 물체의 위치 추정 시스템 및 방법 | |
JP2018001333A (ja) | 校正ボード、ロボット、及び検出方法 | |
CN112584041A (zh) | 一种图像识别动态纠偏方法 | |
JP2798393B2 (ja) | 物体の姿勢推定方法及びその装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20061003 |