JPH07318327A - 3次元輪郭位置補正方法 - Google Patents

3次元輪郭位置補正方法

Info

Publication number
JPH07318327A
JPH07318327A JP11062894A JP11062894A JPH07318327A JP H07318327 A JPH07318327 A JP H07318327A JP 11062894 A JP11062894 A JP 11062894A JP 11062894 A JP11062894 A JP 11062894A JP H07318327 A JPH07318327 A JP H07318327A
Authority
JP
Japan
Prior art keywords
contour
image
work
target
amount
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.)
Granted
Application number
JP11062894A
Other languages
English (en)
Other versions
JP3224687B2 (ja
Inventor
Katsuyuki Tanimizu
克行 谷水
Kenichi Arakawa
賢一 荒川
Yoshimasa Yanagihara
義正 柳原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP11062894A priority Critical patent/JP3224687B2/ja
Publication of JPH07318327A publication Critical patent/JPH07318327A/ja
Application granted granted Critical
Publication of JP3224687B2 publication Critical patent/JP3224687B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Length Measuring Devices By Optical Means (AREA)

Abstract

(57)【要約】 【目的】 直接、補正対象の輪郭等を画像観測して、そ
の位置や姿勢についての6自由度の補正を精度良く行え
る3次元輪郭位置補正方法を提供する。 【構成】 まず、基準の対象の輪郭に対し複数の設定位
置でのカメラ観測により画像データを獲得し、この画像
データ中で対象の輪郭の画像パターンを含むウィンドウ
領域を任意個数設定する。次に、基準の対象と同一形状
の補正対象に対して、上記設定位置での画像データを獲
得する。次に、基準の対象のウィンドウ領域と補正対象
の画像パターンとのマッチング処理を行ない、複数の画
像内での並進または回転方向の移動量を獲得する。この
結果に基づき、基準の対象の並進および回転による移動
後の位置の拘束条件式が得られる。次に、基準の対象の
移動後の3次元空間位置と上記曲面または直線との距離
が、最小になるように未知の並進量および回転量を最小
二乗法で算出する。この値に基づいて補正を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、3次元物体の輪郭や、
3次元環境内に存在する線状の対象の位置や姿勢を補正
する方法に関する。特に、予め定めておいた教示位置か
らの微小変動が生じる対象の3次元位置や姿勢を補正す
る方法に関する。
【0002】
【従来の技術】従来より、カメラによる画像処理により
物体の位置決めを行なう際は、例えば、台上の物体の上
方にカメラを設置し、予め基準の物体を正しい位置に設
置して画像入力しておき、未知の姿勢の物体に対して同
様に画像入力を行ない、画像のマッチングを行なうこと
により、位置の補正を行なう方法がある。
【0003】また、3次元空間内に伸びる線状の対象に
対する作業として、例えば従来より、溶接やシール剤塗
布作業のロボットによる自動化が行なわれている。通
常、ロボット作業は予め教示した経路に沿った動作の繰
り返しにより行なわれるが、対象の個体差により、作業
すべき経路が教示の経路から微妙にずれるため、作業に
先立つ経路補正が望まれている。
【0004】一例の技術として、自動車車体の製造ライ
ンにおける、カメラによる車体の位置決め技術が報告さ
れている。車体の防水、防臭用のシール剤のロボットに
よる塗布作業の精度向上を目的とするものであるが、こ
のような作業の対象は、車体を構成する各部材の継ぎ目
であり、3次元空間内で任意の方向に延びる線状の対象
となっている。ロボットにより作業を行なう場合は、作
業に先立って、予め、基準となる車体の対象部位に対し
て、作業経路をロボットに教示しておき、作業時は、教
示通りに動作を繰り返すことにより、対象部位にシール
材を塗布する作業を行なう。しかしながら、この場合、
各車体の作業部位の3次元位置は、車体製造時の個体差
のために、必ずしも基準となる車体の教示部位の位置と
一致しておらず、微小量の変位が避けられない。
【0005】従って、個体差による変位を補正するため
に、従来より、ロボットによる実際の作業に先立ち、カ
メラ等のセンサーを用いて観測を行ない、観測結果に基
づいてロボットの教示軌道を補正した上で、実際の作業
を実行している。
【0006】補正方法としては、渡辺,有松:“画像処
理装置を利用した3次元位置補正システム”,Robo
t No.95,pp.62−71(Nov.199
3)、および、國清、相澤、菅野:“車体位置ずれ検知
装置付シーリングロボットシステム”,Robot N
o.77,pp.86−95などに示される通り、ライ
ンの周囲にカメラを複数台設置して、ラインを流れてく
る車体のキャリア、車体上のゲージホールなどの基準穴
や、画像処理に適した特徴部を撮影する。カメラ毎に、
基準の車体に対して予め得られたカメラ画像の特徴位置
と、作業対象の車体について得られたカメラ画像の特徴
位置とのずれ量を検出する。そして、複数のカメラ画像
で得られたずれ量と、予めキャリブレーションされたカ
メラの位置および姿勢データを用いて、3次元的な車体
のずれ量が算出される。得られたずれ量に基づき、ロボ
ットの作業軌道を修正した後、塗布作業を行なう。
【0007】
【発明が解決しようとする課題】しかしながら、上記従
来の位置補正方法では、3次元物体の位置決めの場合、
6自由度の内、カメラの光軸に垂直な平面内の並進およ
び回転の3自由度の観測は可能であるが、残りの3自由
度については観測不可能であるので、補正処理が行なえ
ないという問題がある。
【0008】また、3次元空間の作業ラインの補正の場
合、作業対象であるラインの直接観測は行なわず、車体
の基準穴など、特徴部をカメラで観測し、算出された特
徴部の3次元的なずれ量もって作業対象のラインの位置
ずれ量としている。通常、裁断時の誤差により、作業対
象となる車体の合わせ板の端部と、基準穴などの特徴部
位との位置関係に関して、基準の車体とのずれが避けら
れないので、特徴部位の観測に基づく位置補正では、作
業の対象である3次元ラインを精度良く補正することが
できないという問題がある。
【0009】本発明は、このような問題点を解決するた
めになされたものであり、その目的は、直接、補正対象
の輪郭等を画像観測して、その位置や姿勢についての6
自由度の補正を精度良く行うことができる3次元輪郭位
置補正方法を提供することにある。
【0010】
【課題を解決するための手段】上記の目的を達成するた
め、請求項1の発明では、3次元空間内での形状が基準
と同一の物体または経路などの輪郭を有する対象の位置
もしくは姿勢またはその両方を並進量もしくは回転量ま
たはその両方で補正する方法であって、先ず、3次元空
間内で対象の輪郭に対して画像計測を行なうためのカメ
ラの観測位置を設定しておき、その観測位置において、
基準となる対象の輪郭のカメラ観測により画像データを
獲得して画像メモリ等に格納し、該獲得した画像データ
中で対象の輪郭の画像パターンを含むウィンドウ領域を
任意個数だけ設定する工程を、前記基準となる対象の輪
郭に対して複数のカメラ観測位置の設定により、任意の
複数回繰り返して実施しておき、次に、前記基準となる
対象と同一形状の輪郭を有する補正対象の未知の位置も
しくは姿勢またはその両方を検出するために、前記基準
となる対象の輪郭に対して予め設定したと同一の複数の
カメラ観測位置の各々において、前記補正対象の輪郭の
カメラ観測により画像データを獲得し、次に、前記基準
となる対象について獲得した画像データのウィンドウ領
域内の画像パターンと、前記補正対象について得られた
画像データ内の画像パターンとのマッチング処理を行な
い、画像内での並進方向あるいは回転方向の移動量を検
出する工程を、同一画像内に前記設定されている複数の
ウィンドウ領域に対して実行するとともに、引き続い
て、前記予め設定された他のカメラ観測位置において、
該工程を繰り返すことにより、前記複数画像内の複数の
ウィンドウ領域に対するマッチングの結果としての前記
移動量を獲得し、次に、前記マッチングの結果に基づ
き、前記基準となる対象上の点を移動した後の位置が3
次元空間内で曲面あるいは直線上に存在するという拘束
条件式が得られることにより、前記基準となる対象の並
進および回転による移動の結果、移動後の3次元空間位
置と、前記曲面あるいは直線との距離が最小になるよ
う、3次元空間での前記補正対象の未知の並進量および
回転量を最小二乗法により算出する3次元輪郭位置補正
方法を手段とする。
【0011】また、請求項2の発明では、ロボットが、
予め人手により教示しておいた教示軌道の繰り返しによ
り、3次元空間内の物体などの輪郭としての経路に沿っ
て動作しながら、所定の作業を行なう際に、輪郭を有す
る対象の位置もしくは姿勢またはその両方を補正する方
法であって、予め、基準となる対象の経路に対して、作
業空間内の複数のポイント指定により作業の軌道を教示
しておき、続いて、ロボットの先端に搭載したカメラを
用いてカメラ観測を行なうにあたり、先ず、基準となる
対象の経路としての輪郭に対して、画像計測を行うため
のカメラの観測位置を設定しておき、その観測位置にお
いて、前記基準となる対象の輪郭のカメラ観測により画
像データを獲得して画像メモリに格納し、該獲得した画
像データ中で対象の輪郭の画像パターンを含むウィンド
ウ領域を任意個数だけ設定する工程を、前記基準となる
対象の輪郭に対して複数の前記カメラ観測位置の設定に
より、任意の複数回繰り返して実施しておき、次に、前
記基準となる対象と同一形状の輪郭を有する補正対象の
未知の位置および姿勢を検出するために、前記基準とな
る対象の輪郭に対して予め設定したのと同一の複数のカ
メラ位置の各々において、前記補正対象の輪郭のカメラ
観測により画像データを獲得し、前記基準となる対象に
ついて獲得した画像データのウィンドウ領域内の画像パ
ターンと、前記補正対象について獲得した画像データ内
の画像パターンとのマッチング処理を行ない、画像内で
の並進方向あるいは回転方向の移動量を検出する工程
を、同一画像内に前記設定されている複数のウィンドウ
領域に対して実行するとともに、引き続いて、前記予め
設定された他のカメラ観測位置において、該工程を繰り
返すことにより、複数画像内の前記複数のウィンドウ領
域に対するマッチングの結果としての前記移動量を獲得
し、次に、前記マッチングの結果に基づき、前記基準と
なる対象上の点を移動した後の位置が3次元空間内で曲
面あるいは直線上に存在するという拘束条件式が得られ
ることにより、前記基準となる対象の並進および回転に
よる移動の結果、移動後の3次元空間位置と前記曲面あ
るいは直線との距離が最小になるよう、3次元空間での
補正対象の未知の並進量および回転量を最小二乗法によ
り算出し、次に、作業ロボットの軌道を教示する際に設
定した複数の教示点に対して、前記算出された並進量お
よび回転量に基づき、3次元座標を補正する処理を施す
ことにより、前記軌道を補正し、次に、該補正された軌
道に沿ってロボットが所定の作業を行なう3次元輪郭位
置補正方法を手段とする。
【0012】また、請求項3の発明では、上記の方法に
おいて、対象全体として剛体が成立しない場合に、前記
対象を剛体の成立するブロックに分割し、該ブロック毎
に対象の位置もしくは姿勢またはその両方を補正する方
法を適用する3次元輪郭位置補正方法を手段とする。
【0013】さらに、請求項4の発明では、上記の方法
において、補正対象の位置もしくは姿勢またはその両方
が基準となる対象の位置もしくは姿勢またはその両方か
ら大きくずれている場合に、予めおおよその前記補正対
象の位置もしくは姿勢またはその両方を検出し、その検
出量によりカメラ観測位置を修正して前記補正対象のカ
メラ観測を行い、算出された並進量および回転量に前記
修正と逆の修正を加える3次元輪郭位置補正方法を手段
とする。
【0014】
【作用】本発明の3次元空間輪郭位置補正方法では、先
ず、カメラの観測位置を設定しておき、その観測位置に
おいて、3次元空間内で基準となる対象の輪郭のカメラ
観測により画像計測を行って画像データを獲得し、得ら
れた画像データ中で対象の輪郭の画像パターンを含むウ
ィンドウ領域を任意個数だけ設定する工程を、基準とな
る対象の輪郭に対して複数のカメラ観測位置の設定によ
り、任意の複数回繰り返して実施しておく。
【0015】次に、基準となる対象と同一形状の輪郭を
有する補正対象について、未知の位置や姿勢を検出する
ために、基準となる対象の輪郭に対して予め設定したの
と同一のカメラ観測位置において、補正対象の輪郭のカ
メラ観測により画像データを獲得する。そして、基準と
なる対象の設定時に得られた画像のウィンドウ領域内の
画像パターンと、補正対象について得られた画像データ
内の画像パターンとのマッチング処理を行ない、画像内
での並進方向あるいは回転方向の移動量を検出する。こ
の一連の工程を、同一画像内に設定されている複数のウ
ィンドウ領域に対して実行し、さらに、引き続いて、予
め設定された他のカメラ観測位置においても、同様の工
程を繰り返すことにより、複数画像内の複数のウィンド
ウ領域に対するマッチングの結果としての移動量を獲得
する。
【0016】以上の通り行なったマッチングの結果に基
づき、基準となる対象上の点の移動後の位置が3次元空
間内で、曲面あるいは直線上に存在するという拘束条件
式が得られることになる。従って、基準となる対象の並
進および回転による移動の結果、移動後の3次元空間位
置と、上記曲面あるいは直線との距離が最小になるよう
に、未知の並進量および回転量を最小二乗法により算出
することにより、3次元空間内で、形状が基準となる同
一の物体や経路など、輪郭を有する対象の位置および姿
勢を補正することができる。
【0017】さらに、ロボットが、予め人手により教示
しておいた教示軌道の繰り返しにより、3次元空間内の
物体などの輪郭としての経路に沿って動作しながら、所
定の作業を行なうにあたり、作業対象の経路が基準の経
路と微妙にずれている場合の経路の補正方法では、まず
従来通り、予め、基準となる対象の経路に対して、作業
空間内の複数のポイント指定により作業の軌道が教示さ
れる。続いて、ロボットの先端に搭載したカメラによ
り、上述と同様に、基準の対象である経路に対して、画
像の観測、マッチングのためのウィンドウ領域の設定な
どを行なう。作業対象の経路についても、同様に、カメ
ラにより画像計測を行ない、各々のウィンドウ領域につ
いてマッチング処理を行ない、複数のマッチング結果か
ら得られる3次元空間内の平面、直線などの拘束条件式
を用いて、最小二乗法により、経路全体としての並進、
回転の変動量を算出する。
【0018】そして、作業ロボットの軌道教示の際に設
定した複数の教示点に対して、算出された変動量に基づ
き、3次元座標を補正する処理を施すことにより補正さ
れた軌道に沿ってロボットが所定の作業を行なう。この
結果、微妙な経路の変動を補正した上で作業を行なうこ
とができるので、ロボット作業の精度が向上する。
【0019】
【実施例】以下、図面により、本発明の一実施例として
の3次元輪郭位置補正方法について詳しく説明する。
【0020】図1(a)に示すように、3次元空間内に
線状の対象(ライン)L1がある。ラインL1は基準ワ
ークB上に存在する作業ラインである。ラインL1に沿
ってロボットRが作業を行なうため、予め、ロボットR
の軌道は、ティーチングペンダントなどを用いた3次元
空間内の複数のポイントの教示により、設定されてい
る。さて、このライン状の対象をロボットRの先端に搭
載したカメラCにより撮影し、画像データとする。3次
元空間の座標系の原点をOとする。例えば、3次元空間
内の観測位置Qにおいて、予め設定した姿勢でカメラ撮
影することにより、図1(b)に示すような画像101
が得られる。画像101内にはラインLの一部S1が撮
影されている。続いて、画像101内のラインS1の一
部を含むようにウィンドウW1を設定する。ウィンドウ
W1の中心点をP1とする。また、後述する画像マッチ
ングのサーチ範囲M1を設定する。サーチ範囲の広さは
任意の設定が可能であり、全画像領域としてもよく、画
像の一部領域としてもよい。またサーチ範囲の形状も矩
形に限らず任意の設定が可能である。
【0021】図1(b)では、設定するウィンドウの個
数は1個としているが、これに限らず、ウィンドウの個
数は任意の設定が可能である。
【0022】ロボットを動作させることにより、上記操
作を繰り返し、カメラCにより任意の位置および方向か
ら撮影して、得られた各画像データの内部に上記ウィン
ドウを複数個設定する。
【0023】作業対象のワーク(作業ワーク)上の作業
ラインに対して、ロボットが作業を行なう場合は、基準
ワークBの作業ライン撮影時と同一の3次元空間内の複
数の点において、予め設定した姿勢でカメラ撮影を行な
い、得られた各画像内で、予め設定したウィンドウ内の
パターンに対するマッチング処理を行なう。例えば、図
1(c)に示すように、作業ワークB2の作業ラインL
2に対して基準ワークの作業ライン撮影時と同一の3次
元空間内の観測位置Qにおいて、予め設定した同一の姿
勢でカメラ撮影を行なう。この結果、例えば、図1
(d)に示すように、作業対象のラインS2を含む画像
102が得られる。
【0024】続いて、上記の通り設定したサーチ範囲M
1の範囲内で、画像ウィンドウW1内の画像パターンと
一致する領域を、画像102内でサーチする。この結
果、例えば、最もマッチングする領域として、図1
(d)のW2で示されるウィンドウの領域が得られ、ウ
ィンドウW1からウィンドウW2へ移動量として、並進
量Δx,Δyおよび回転量θが算出される。これらの移
動量は、上記で設定した複数の画像内の各ウィンドウ領
域に対して算出される。
【0025】さて、図1(b)の作業ラインS1上の点
P1に着目すると、マッチング処理の結果からは、図1
(d)の点P2が対応する点であるといえるが、マッチ
ング対象の画像パターンは線状の対象であり、図1
(b)内のウィンドウW1と図1(d)の画像パターン
のマッチング処理を行なっても、図1(d)のラインS
2に沿った方向の自由度は残っていることになる。即
ち、ウィンドウW2は計算上最もマッチングの度合いが
高かったものであるが、照明条件など、画像取り込み時
の環境の微妙な変動により、同一対象であっても、例え
ば、ウィンドウW3のように、異なる位置でマッチング
の度合いが最大になることも有り得る。このように線状
の対象同士のマッチングでは、線に沿った方向の自由度
を残した状態でのマッチングが行なわれる。
【0026】さて、図1(b)の画像内の点P1に対応
する3次元空間内の点の座標は、予め、ロボットの教示
時に獲得することができる。作業ワークに対して上述の
通り獲得した画像とのマッチングの結果、ラインに沿っ
た方向の自由度が残っていることを上記で示したが、カ
メラの光軸方向の変動も観測できないので、作業ワーク
上のラインの奥行き方向にも自由度が残っている。
【0027】画像内で観測される直線(曲線)は、3次
元空間内では平面(曲面)に対応する。従って、線状の
対象の画像マッチングの結果からは、基準ワークに対す
る作業ワークの微小変動により、3次元空間内で着目す
る1点は、空間内の平面(曲面)上の点に移動したこと
が分かる。即ち、このことから、基準ワークのライン上
の点に対して、微小変動として並進および回転が施され
た点は、3次元空間内の平面(曲面)内に存在するとい
う拘束条件が得られる。これを式で表現することとす
る。
【0028】画像内の線分は両端の2点によって示され
る。画像内の2点によって決定される3次元空間内の平
面の式は、次の通り求められる。図2の通り、世界座標
系の原点をO、カメラの基準点をT(位置ベクトル
t)、未知の対象物1および2の位置を各々P1(位置
ベクトルp1)、P2(位置ベクトルp2)、対象物1お
よび2に対応する画像内の点をU1=(u1,v1)およ
びU2=(u2,v2)とする。また、カメラの方向を単
位ベクトルi,j,kで表わし、画像のU,V軸は各
々、ベクトルi,jに平行であるものとする。未知パラ
メータs1およびs2を用いて、画像内の点U1,U2とカ
メラの基準点Tと対象物1,2の点P1,P2の関係を表
すと、以下のようになる。
【0029】
【数1】
【0030】対象物の点P1およびP2とカメラの基準点
Tの3点を通る平面の式は、媒介変数(λ,λ′,μ,
μ′)表示により次式で得られる。即ち、
【0031】
【数2】
【0032】このように、画像内の線分に対応する3次
元空間内の平面の式が算出される。
【0033】なお、撮影時のカメラの位置および姿勢を
示すパラメータは、ロボットの姿勢と、ロボットとカメ
ラ取り付け位置との関係、および、カメラキャリブレー
ションによるカメラパラメータにより、予め決定されて
いる。
【0034】さて、カメラで観測する基準ワーク上の点
を、図1(a)の作業ラインL1上の屈曲点Kとした場
合、例えば、図3(a)に示すような画像が得られ、屈
曲点Kに対応する画像内の点P3を含むように、マッチ
ングのためのウィンドウW4が設定される。作業ワーク
に対して、上述の通り、カメラ観測を行ない、画像のマ
ッチングを行なった結果、例えば、図3(b)に示すよ
うに、対応する領域としてウィンドウW5の領域が得ら
れる。この場合、基準ワークの画像内の点P3に対応す
る点は、ウィンドウW5内の点P4となる。3次元空間
内でのカメラの光軸方向の変位は観測できないので、基
準ワーク上の着目点Kは、作業ワーク上では、画像面へ
の投影点が点P4となる3次元空間内の直線上の任意の
点に対応することになる。
【0035】即ち、このことから、基準ワークの屈曲部
などの特徴点に対して、微小変動として、並進および回
転が施された点は、3次元空間内の直線内に存在すると
いう拘束条件が得られる。これを式で表現することとす
る。
【0036】まず、画像内の1点により決定される直線
を算出する。3次元空間内の点P(位置ベクトルp)、
観測画像内の点U=(u,v)などを上記と同様に設定
する。直線をγとすると、媒介変数λを用いて、
【0037】
【数3】
【0038】の式で示される。ここで、方向ベクトルp
は、
【0039】
【数4】
【0040】で得られる。
【0041】このように、画像内の点に対応する3次元
空間内の直線の式が算出される。
【0042】さて、次に、画像マッチングによって得ら
れる拘束条件式を用いた、3次元対象の位置補正方法を
示す。
【0043】まず、観測される作業ラインが線状のもの
である場合、画像内のウィンドウ設定により、上述の通
り、線分のパターンについてマッチング処理を行なう。
マッチングの結果、検出されるのは線分の並進、回転な
どの変位量である。基準ワーク上で表示した3次元空間
の点は、画像面への投影がマッチングされた線分となる
3次元平面上に存在することになる。このことから、上
述した通り、一つの局所領域のマッチングにより、一つ
の拘束条件式が得られる。
【0044】x軸回りの回転をα、y軸回りの回転を
φ、z軸回りの回転をθとし、並進移動量をΔx,Δ
y、Δzとする。並進およびx,y,z軸回りの回転の
変換を示す4次の斉時行列を、T,R,R,R
とする。例えば、
【0045】
【数5】
【0046】と示される。
【0047】対象ワークの未知の位置および姿勢は、基
準ワークの位置および姿勢からのx,y,z各軸の回転
の後、並進移動によって得られたものとしたとき、変換
行列Rは次の通り得られる。
【0048】
【数6】
【0049】但し、記述を簡単化するため、cosをC
で示し、sinをSで示している。例えば、Cθ=co
sθ,Sφ=sinφなどである。
【0050】ここで回転量を微小として、α≒0,φ≒
0,θ≒0とすると、
【0051】
【数7】
【0052】さらに、2次以上の微小項を0として、
【0053】
【数8】
【0054】教示の際に、マッチングに使用するライン
の両端の点を指定する。これは、ウィンドウによって切
断されるラインの両端としてもよく、また、ウィンドウ
内に存在するラインの一部として線分の両端を指定する
ようにしてもよい。さて、局所領域における画像のウィ
ンドウマッチングにより、作業対象のライン上の対応す
る2点が得られる。
【0055】さて、i番目教示点をPi、また、対応す
る作業ラインの点をQiとし、各々の3次元座標を(x
pi,ypi,zpi)、(xqi,yqi,zqi)とする。
【0056】ここで、
【0057】
【数9】
【0058】である。
【0059】マッチングの結果、(3)式に従って、線
分に対応する平面が得られるが、この平面の係数ベクト
ルを、
【0060】
【数10】
【0061】とする。
【0062】画像のマッチングの結果得られる拘束平面
の式は次式の通りである。
【0063】
【数11】
【0064】観測される点Qiはこの拘束平面上にある
ので、xqiは(15)式を満たす。そこで、評価関数F
を、
【0065】
【数12】
【0066】のように平面からの距離の二乗和の累積と
したときに、Fを最小とする微小移動量α,φ,θ,Δ
x,Δy,Δzを求めればよい。このため、(16)式
を各変数について偏微分したものを0として得られる連
立方程式を解く。
【0067】さて、画像のマッチングを屈曲点のような
特徴点に対して行なった場合、教示点の移動後の位置
は、上述の通り、直線上に拘束される。
【0068】上述の直線γと3次元空間内の点Qとの距
離をδとすると、
【0069】
【数13】
【0070】で得られる。この場合、(17)式による
直線からの距離の二乗和を、評価関数Fに盛り込むこと
で適用可能である。線分のマッチングの場合と同様に、
(16)式を各変数について偏微分したものを0として
得られる連立方程式を解くことによって、各変数を算出
する。
【0071】このように、教示点が微小量移動した点の
存在する範囲が、平面あるいは直線上に限定されること
から、複数の教示点に対する拘束条件式から、最小二乗
法により、作業対象の微小変位の変動量を算出すること
ができる。
【0072】なお、変動量の算出のためには、独立な、
必要最小限以上の個数の画像マッチング結果が得られて
いる必要がある。
【0073】算出された6自由度の各ずれ量(移動量)
を用いて、ロボットの軌道教示時に指定した各教示点の
位置の補正量を求め、これらにより教示軌道を修正す
る。ロボットは修正された軌道に従って動作し、規定の
作業を行なう。
【0074】微小変位の変動量を算出する際は、変動の
範囲が予めある範囲内に限定されているので、明らかに
解としてふさわしくないものを除外して算出すればよ
い。なお、予め変位の傾向が明らかであり、6自由度全
ての移動量を算出する必要のない場合は、変数を削減し
て算出すればよい。
【0075】また、上記では、微小量の変動を扱うため
に、回転の変動がほぼゼロに等しいものとして話を進め
たが、これに限るものではなく、計算が煩雑となるが、
そのままcos,sinなどの項を用いて、算出するよ
うにしても差し支えない。
【0076】なお、画像マッチングの際には、対象のパ
ターンに応じて、マッチング処理時間を短縮するため
に、回転成分を除外して、x,yの並進方向の成分のみ
を検出するようにしてもよい。
【0077】また、図1(b)および図1(d)で示し
たように、対象が線状の場合、ラインに沿った方向では
任意の位置でマッチングが行なわれることが有り得る。
この場合は、基準画像におけるウィンドウ設定時に、ラ
インに沿った方向については、マッチングのサーチ範囲
を限定するようにしてもよい。例えば、対象に生じ得る
微小変動量の最大値を上限としてもよい。なお、極端に
は、ラインに垂直方向のみにマッチングのサーチを行な
うようにしてもよい。
【0078】図4に、本発明による位置補正方法および
作業の手順を示す。
【0079】先ず、基準ワークの作業ラインに対して、
ティーチングペンダントなどを用いて、ロボットの軌道
を教示する。通常、軌道に沿った3次元空間内の複数の
点として教示される。この結果、基準ワークの作業ライ
ンに対しては、精度良く、ロボットが経路をたどること
ができるようになる。
【0080】ロボットアームの先端には、予めキャリブ
レーションの施されたカメラが搭載されている。ロボッ
ト軌道の教示に続いて、ロボットを作動させ、カメラ観
測を行なうための位置を設定する。その位置において、
基準ワーク上の作業ラインをカメラにより観測し、画像
データを獲得し、画像メモリに格納する(画像入力)。
そして、画像内に画像マッチングのためのウィンドウ領
域(およびサーチ範囲など)を設定する。一つの画像内
で任意個数のウィンドウ領域が設定される。引き続き、
ロボットの動作によりカメラ観測位置を設定し、上記と
同様に、画像の獲得、ウィンドウの設定の処理を繰り返
す。
【0081】以上の処理は、作業に先立ち1回だけ、基
準ワークに対して行なわれる。但し、信頼性向上などの
目的により、上記作業を複数回実施することによって、
最適な設定が行なえるようにしても差し支えない。
【0082】次に、作業ワークを搬送し、それに対して
ロボット作業を行なう。作業に先立ち、上記の通り設定
した位置にロボットを動作させ、その位置においてカメ
ラ撮影し、画像データを獲得する(画像入力)。基準設
定時に得られた画像の設定ウィンドウ領域のパターン
と、作業ワークに対して得られた画像データ内のパター
ンとのマッチング処理を行なう。マッチングの結果、画
像上での対応位置が算出される。同一画像内に複数のウ
ィンドウが設定されている場合は、全てのウィンドウ領
域について、マッチング処理が行なわれる。引き続い
て、次の設定位置にロボットを移動させ、上記と同様の
画像の獲得、設定ウィンドウに対するマッチング処理を
繰り返す。
【0083】以上の通り、複数の画像内に設定された複
数のウィンドウ領域について得られたマッチング結果を
用いて、前述したように回転、並進方向の変動量を最小
二乗法により算出する。得られた変動量は、基準ワーク
全体を剛体として得られた、並進および回転の変動量で
あるので、作業を行うロボットの軌道を補正する場合
は、軌道教示の際に設定した複数の教示点に対して、変
動量に基づき、3次元座標を補正する。この際に、ロボ
ットの動特性を考慮した上で、教示点の補正処理が行な
うようにしてもよい。
【0084】上述の通り、ロボットの補正軌道が得られ
た後、作業ラインに対してロボットによる作業が実施さ
れる。
【0085】各作業ワークの作業ラインに対して、上記
の処理が繰り返し行なわれる。
【0086】上述の本発明の実施例の説明では、ロボッ
トの作業を前提として話を進めてきたが、本発明はこれ
に限らず、単に、3次元空間内の対象物の位置および姿
勢の変動量を検出するために本手法を用いることも可能
である。
【0087】以下、本発明の他の実施例としての3次元
輪郭位置補正方法について説明する。例えば、図5
(a)に示すような3次元物体20を対象とするものと
する。物体20と同一形状の物体がコンベアV上を流れ
ており、物体の位置は、指定の位置からずれが生じ得る
ものとする。物体に対して、後の工程で、例えば、ロボ
ットによる把持や、部品組み付けなどの作業がなされる
ものとし、位置および姿勢を検出した上で、作業を行な
うことが要求される。
【0088】まず、基準の物体20を基準の位置に固定
し、矢印D1〜D5で示す複数の方向から、カメラによ
り観測する。各方向から得られた画像データ内にマッチ
ングのためのウィンドウ領域を設定する。
【0089】次に、位置、姿勢が未知の対象物体がコン
ベアVを流れて来た場合に、上記と同一の複数の方向か
らカメラによる観測を行なう。そして、上記設定したウ
ィンドウ領域に対して画像マッチング処理を行ない、画
像内の変動量を得る。続いて、全てのウィンドウについ
て得られた画像中の変動量を用いて、物体として3次元
的な位置および姿勢の変動量が算出され、物体の正しい
位置および姿勢が得られる。
【0090】この例では平面内の回転および並進のみの
変動となっているが、これに限らず、例えば、作業台平
面の凹凸に微妙な変動があるために、3次元空間内で任
意の6自由度の変動が生じていても、補正が可能であ
る。
【0091】なお、観測するカメラはロボットに搭載す
るのに限らず、任意の治具により固定するようにしても
よい。
【0092】上述の通り、本発明による位置補正は、補
正対象のうち、剛体の成立する部分で、有効に作動す
る。線状の対象が長いために、剛体が成立しない場合
は、対象全体を剛体の成立するブロックに分割し、各ブ
ロック毎に位置補正処理を施すようにすればよい。例え
ば、図6に示すように、対象のラインが長い場合は、ね
じれなどにより、基準ワークのラインと作業ワークのラ
インとは必ずしも一致しない場合がある。この場合は、
例えば図6に示すように、全作業ラインを3つのブロッ
ク11,12,13に分割し、各ブロックについて、上
述の位置補正処理を行なうようにしてもよい。この例で
は、ブロック11はe1からe4およびe5の途中までの
ライン、ブロック12はe4からe6を越えe7の途中ま
でのライン、ブロック13はe5の後からe9までのライ
ンとなっている。
【0093】また、物体の全体の形状は基準と作業対象
とで異なっても、局所的には基準と形状が一致する部分
があれば、その局所部位について、本手法を適用するこ
とにより、局所部の位置補正を行なうことができる。
【0094】対象の位置および姿勢が、基準となる対象
の位置および姿勢から大きくずれている場合には、予め
ラフに位置姿勢を検出した上で、本発明の手法により位
置姿勢を補正するようにしてもよい。例えば、図5
(a)に示すような物体が、図5(b)に示すように、
同一の安定姿勢において大きく回転している場合、指定
の位置からカメラ観測する作業に先立ち、例えば、上方
からカメラ観測を行ない、平面内の回転量をラフを検出
しておき、予め指定したカメラの観測方向D1からD5
に対して、得られた回転量分の回転を施した後、所定の
画像獲得、画像マッチングなどの処理を行なうようにす
ればよい。
【0095】
【発明の効果】以上、詳述した通り、請求項1に代表さ
れる本発明の3次元輪郭位置補正方法によれば、補正対
象を直接カメラ観測し、基準の対象の画像内のウィンド
ウ領域に対するマッチング処理により得られる、3次元
空間内の点の変動後の位置が平面上あるいは直線上に拘
束されるという関係式を複数個用いて、最小二乗法を適
用することにより、3次元空間内の線状の対象物あるい
は輪郭の位置や姿勢を算出する、という極めて簡素な構
成により、3次元の補正対象の輪郭の基準の位置や姿勢
からのずれを、6自由度の変動量として算出して、その
位置や姿勢を正確に補正することができる。
【0096】また、請求項2の発明によれば、特に、ロ
ボット作業を行なう経路の個体差により生じる教示ライ
ンからのずれを、直接、作業ラインをカメラ観測するこ
とによって獲得することができ、作業に先立ち、ロボッ
トの軌道を正確に補正することができる。
【0097】また、請求項3の発明によれば、特に、剛
体の成立する局所的な部位に分割してカメラ観測を行う
ようにしたので、全体が長かったりするような対象で
も、局所部のみの、あるいは剛体の成立する部位毎に輪
郭位置の補正を行なうことができる。
【0098】さらに、請求項4の発明によれば、特に、
補正対象の位置や姿勢を検出して、予めラフにカメラ観
測位置を修正した上で、輪郭位置の補正処理を行うよう
にしたので、補正対象の位置や姿勢が基準よりも大きく
ずれている場合でも、輪郭位置の補正を行うことができ
る。
【図面の簡単な説明】
【図1】(a),(b),(c),(d)は本発明の一
実施例における基準ワークと作業ワークに対するカメラ
撮影法および画像のマッチング法に関する説明図
【図2】上記実施例における3次元座標系におけるカメ
ラ位置、撮影対象位置、画像内座標との対応に関する説
明図
【図3】(a),(b)は上記実施例における屈曲点の
カメラ観測により得られる画像データとウィンドウ領域
のマッチング処理を示す図
【図4】本発明による位置補正方法を用いてロボット作
業を行なう場合の手順を示す図
【図5】(a),(b)は3次元物体の位置および姿勢
検出のために本発明の輪郭位置補正方法を適用する場合
の説明図
【図6】長い作業ラインに本発明の輪郭位置補正方法を
適用する場合のブロック単位の分割を示す図
【符号の説明】
R…ロボット C…カメラ L1,L2,S1,S2…作業ライン B…基準ワーク B2…作業ワーク 101,102…画像データ W1,W2,W3,W4,W5…ウィンドウ M1…サーチ範囲 Q…カメラの観測位置 P1,P2…3次元空間内の点 U1,U2…画像内の点 O…世界座標系原点 T…カメラの基準点 K…屈曲点 D1〜D5…カメラ観測方向 11,12,13…ブロック e1〜e9…ライン上の点 V…コンベア

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 3次元空間内での形状が基準と同一の輪
    郭を有する対象の位置もしくは姿勢またはその両方を並
    進量もしくは回転量またはその両方で補正する方法であ
    って、 先ず、3次元空間内で予め設定したカメラ観測位置にお
    いて、基準となる対象の輪郭のカメラ観測により画像デ
    ータを獲得し、該獲得した画像データ中で対象の輪郭の
    画像パターンを含むウィンドウ領域を任意個数だけ設定
    する工程を、前記基準となる対象の輪郭に対して複数の
    前記カメラ観測位置の設定により、任意の複数回繰り返
    して実施しておき、 次に、前記基準となる対象に対して予め設定したと同一
    の複数のカメラ観測位置の各々において、補正対象の輪
    郭のカメラ観測により画像データを獲得し、 次に、前記基準となる対象について獲得した画像データ
    のウィンドウ領域内の画像パターンと、前記補正対象に
    ついて得られた画像データ内の画像パターンとのマッチ
    ング処理を行ない、画像内での並進方向あるいは回転方
    向の移動量を検出する工程を、同一画像内に前記設定さ
    れている複数のウィンドウ領域に対して実行するととも
    に、引き続いて、前記予め設定された他のカメラ観測位
    置において該工程を繰り返すことにより、複数画像内の
    前記複数のウィンドウ領域に対するマッチングの結果と
    しての前記移動量を獲得し、 次に、前記マッチングの結果に基づき、前記基準となる
    対象上の点を移動した後の位置が3次元空間内で曲面あ
    るいは直線上に存在するという拘束条件式が得られるこ
    とにより、前記基準となる対象の並進および回転による
    移動後の3次元空間位置と前記曲面あるいは直線との距
    離が最小になるよう、3次元空間での前記補正対象の未
    知の並進量および回転量を最小二乗法により算出するこ
    とを特徴とする3次元輪郭位置補正方法。
  2. 【請求項2】 ロボットが、予め人手により教示してお
    いた教示軌道の繰り返しにより、3次元空間内の輪郭と
    しての経路に沿って動作しながら、所定の作業を行なう
    際に、輪郭を有する対象の位置もしくは姿勢またはその
    両方を補正する方法であって、 予め、基準となる対象の経路に対して、作業空間内の複
    数のポイント指定により作業の軌道を教示しておき、 続いて、ロボットの先端に搭載したカメラを用いてカメ
    ラ観測を行なうにあたり、先ず、予め設定したカメラ観
    測位置において、前記基準となる対象の輪郭のカメラ観
    測により画像データを獲得し、該獲得した画像データ中
    で対象の輪郭の画像パターンを含むウィンドウ領域を任
    意個数だけ設定する工程を、前記基準となる対象の輪郭
    に対して複数の前記カメラ観測位置の設定により、任意
    の複数回繰り返して実施しておき、 次に、前記基準となる対象に対して予め設定したと同一
    の複数のカメラ観測位置の各々において、補正対象の輪
    郭のカメラ観測により画像データを獲得し、 次に、前記基準となる対象について獲得した画像データ
    のウィンドウ領域内の画像パターンと、前記補正対象に
    ついて獲得した画像データ内の画像パターンとのマッチ
    ング処理を行ない、画像内での並進方向あるいは回転方
    向の移動量を検出する工程を、同一画像内に前記設定さ
    れている複数のウィンドウ領域に対して実行するととも
    に、引き続いて、前記予め設定された他のカメラ観測位
    置において、該工程を繰り返すことにより、複数画像内
    の前記複数のウィンドウ領域に対するマッチングの結果
    としての前記移動量を獲得し、 次に、前記マッチングの結果に基づき、前記基準となる
    対象上の点を移動した後の位置が3次元空間内で曲面あ
    るいは直線上に存在するという拘束条件式が得られるこ
    とにより、前記基準となる対象の並進および回転による
    移動後の3次元空間位置と前記曲面あるいは直線との距
    離が最小になるよう、3次元空間での前記補正対象の未
    知の並進量および回転量を最小二乗法により算出し、 次に、作業ロボットの軌道を教示する際に設定した複数
    の教示点に対して、前記算出された並進量および回転量
    に基づき、3次元座標を補正する処理を施すことによ
    り、前記軌道を補正し、 次に、該補正された軌道に沿ってロボットが所定の作業
    を行なうことを特徴とする3次元輪郭位置補正方法。
  3. 【請求項3】 対象全体として剛体が成立しない場合
    に、前記対象を剛体の成立するブロックに分割し、該ブ
    ロック毎に対象の位置もしくは姿勢またはその両方を補
    正する方法を適用することを特徴とする請求項1または
    請求項2記載の3次元輪郭位置補正方法。
  4. 【請求項4】 補正対象の位置もしくは姿勢またはその
    両方が基準となる対象の位置もしくは姿勢またはその両
    方から大きくずれている場合に、予めおおよその前記補
    正対象の位置もしくは姿勢またはその両方を検出し、そ
    の検出量によりカメラ観測位置を修正して前記補正対象
    のカメラ観測を行い、算出された並進量および回転量に
    前記修正と逆の修正を加えることを特徴とする請求項1
    または請求項2記載の3次元輪郭位置補正方法。
JP11062894A 1994-05-25 1994-05-25 3次元輪郭位置補正方法 Expired - Fee Related JP3224687B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11062894A JP3224687B2 (ja) 1994-05-25 1994-05-25 3次元輪郭位置補正方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11062894A JP3224687B2 (ja) 1994-05-25 1994-05-25 3次元輪郭位置補正方法

Publications (2)

Publication Number Publication Date
JPH07318327A true JPH07318327A (ja) 1995-12-08
JP3224687B2 JP3224687B2 (ja) 2001-11-05

Family

ID=14540594

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11062894A Expired - Fee Related JP3224687B2 (ja) 1994-05-25 1994-05-25 3次元輪郭位置補正方法

Country Status (1)

Country Link
JP (1) JP3224687B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200260B1 (en) 1999-04-08 2007-04-03 Fanuc Ltd Teaching model generating device
CN102486371A (zh) * 2010-12-03 2012-06-06 沈阳黎明航空发动机(集团)有限责任公司 一种无基准轮廓度零件的测量与计算方法
US9483841B2 (en) 2013-11-01 2016-11-01 Fujitsu Limited Travel amount estimation device and travel amount estimating method
CN112288030A (zh) * 2020-11-10 2021-01-29 深圳市数字城市工程研究中心 一种基于自适应物方面元的最小二乘匹配方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200260B1 (en) 1999-04-08 2007-04-03 Fanuc Ltd Teaching model generating device
CN102486371A (zh) * 2010-12-03 2012-06-06 沈阳黎明航空发动机(集团)有限责任公司 一种无基准轮廓度零件的测量与计算方法
US9483841B2 (en) 2013-11-01 2016-11-01 Fujitsu Limited Travel amount estimation device and travel amount estimating method
CN112288030A (zh) * 2020-11-10 2021-01-29 深圳市数字城市工程研究中心 一种基于自适应物方面元的最小二乘匹配方法

Also Published As

Publication number Publication date
JP3224687B2 (ja) 2001-11-05

Similar Documents

Publication Publication Date Title
US9457470B2 (en) Robot system and method for calibration
US6044308A (en) Method and device for robot tool frame calibration
KR102271941B1 (ko) 비전을 갖는 자동화 기계가공 헤드 및 방법
US4725965A (en) Method for calibrating a SCARA robot
JP4267005B2 (ja) 計測装置及びキャリブレーション方法
JP4171488B2 (ja) オフラインプログラミング装置
US9857786B2 (en) System and method for aligning a coordinated movement machine reference frame with a measurement system reference frame
JP3946711B2 (ja) ロボットシステム
US5297238A (en) Robot end-effector terminal control frame (TCF) calibration method and device
US20150224649A1 (en) Robot system using visual feedback
US20180345493A1 (en) Teaching position correction device and teaching position correction method
JP2005300230A (ja) 計測装置
KR20080088165A (ko) 로봇 캘리브레이션 방법
EP2122422A2 (en) A method and an apparatus for compensating for geometrical errors between work objects and a holding device
KR100644174B1 (ko) 로봇 용접의 보정방법
Santolaria et al. Self-alignment of on-board measurement sensors for robot kinematic calibration
JP3224687B2 (ja) 3次元輪郭位置補正方法
KR100301231B1 (ko) 로봇의작업경로자동보정방법
Chiwande et al. Comparative need analysis of industrial robot calibration methodologies
Andreff et al. Vision‐based kinematic calibration of an H4 parallel mechanism: practical accuracies
JPH09222913A (ja) ロボットの教示位置補正装置
JP2718249B2 (ja) ロボットの位置ずれ検出装置
JPH0774964B2 (ja) ロボットの位置決め誤差補正方法
US20070050090A1 (en) Calibration method for improving the accuracy of a robotic measuring system with joint configuration dependent performance
JPH012104A (ja) ロボットの位置決め誤差補正方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070824

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080824

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees