JP2020091126A - 計測装置、システム、表示方法及びプログラム - Google Patents
計測装置、システム、表示方法及びプログラム Download PDFInfo
- Publication number
- JP2020091126A JP2020091126A JP2018226724A JP2018226724A JP2020091126A JP 2020091126 A JP2020091126 A JP 2020091126A JP 2018226724 A JP2018226724 A JP 2018226724A JP 2018226724 A JP2018226724 A JP 2018226724A JP 2020091126 A JP2020091126 A JP 2020091126A
- Authority
- JP
- Japan
- Prior art keywords
- image
- unit
- distance
- work
- measuring device
- 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.)
- Pending
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
【課題】計測位置を容易に設定するのに有利な計測装置を提供する。【解決手段】対象物106の位置又は姿勢を計測する計測装置であって、対象物を撮像して撮像画像601を生成する撮像部104と、対象物の3次元形状に関する情報を取得する取得部と、取得部で取得された情報に基づいて、撮像画像に含まれるべき対象物の画像の大きさの指標となる、対象物のモデルを表すモデル画像603を生成する生成部と、撮像部で生成された撮像画像に、生成部で生成されたモデル画像を重畳して表示部に表示させる制御部と、を有する。【選択図】図7
Description
本発明は、計測装置、システム、表示方法及びプログラムに関する。
対象物を撮像して得られる画像に基づいて対象物の位置又は姿勢(3次元位置)を計測する計測装置において、対象物に対する計測位置の設定に関する技術が提案されている(特許文献1及び2参照)。特許文献1には、ばら積みされている複数の対象物を順次計測する際に、2回目以降の計測位置を、それまでの計測結果に基づいて決定する技術が開示されている。
また、特許文献2には、仮想3次元空間に対象物と計測装置とを配置し、かかる配置が計測に適しているか否かをシミュレーションで評価する技術が開示されている。かかる技術では、対象物と計測装置との最適な配置をシミュレーションで得ることができる。
特許文献1に開示された技術では、2回目以降の計測位置は自動的に設定されるが、1回目(初回)の計測位置を事前に設定する必要がある。また、特許文献2に開示された技術では、実空間において、シミュレーションで得られた配置となるように対象物と計測装置とを配置するためには、対象物の位置を計測しなければならず、計測位置を設定する必要がある。しかしながら、対象物の3次元位置を計測する計測装置において、適切な計測位置を設定する作業は、試行錯誤が必要な手間のかかる作業である。
本発明は、このような従来技術の課題に鑑みてなされ、計測位置を容易に設定するのに有利な計測装置を提供することを例示的目的とする。
上記目的を達成するために、本発明の一側面としての計測装置は、対象物の位置又は姿勢を計測する計測装置であって、前記対象物を撮像して撮像画像を生成する撮像部と、前記対象物の3次元形状に関する情報を取得する取得部と、前記取得部で取得された前記情報に基づいて、前記撮像画像に含まれるべき前記対象物の画像の大きさの指標となる、前記対象物のモデルを表すモデル画像を生成する生成部と、前記撮像部で生成された前記撮像画像に、前記生成部で生成された前記モデル画像を重畳して表示部に表示させる制御部と、を有することを特徴とする。
本発明の更なる目的又はその他の側面は、以下、添付図面を参照して説明される好ましい実施形態によって明らかにされるであろう。
本発明によれば、例えば、計測位置を容易に設定するのに有利な計測装置を提供することができる。
以下、添付図面を参照して、本発明の好適な実施の形態について説明する。なお、各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
図1は、本発明の一側面としてのシステム1の構成を示す概略図である。システム1は、工業製品の組立工程などにおいて、把持対象の物品であるワーク(対象物)106を把持(ピッキング)する機能を有する。システム1は、例えば、パレット107に不規則にばら積みされたワーク106を把持する。本実施形態では、パレット107において、複数のワーク106が積まれた状態で存在し、システム1は、順次、ワーク106を把持してパレット107から取り出す機能を有する。
システム1は、ロボットアーム101と、ハンド102と、ロボット制御部103と、撮像部104と、計測処理部105とを有する。システム1において、撮像部104及び計測処理部105は、ワーク106の位置又は姿勢(以下、「位置姿勢」と称する)を計測する計測装置として機能する。また、システム1において、ロボットアーム101、ハンド102及びロボット制御部103は、計測装置で計測されたワーク106の位置又は姿勢に基づいてワーク106を把持する把持装置として機能する。
撮像部104は、ロボットアーム101の先端に設けられたハンド102に取り付けられている。ロボット制御部103は、ロボットアーム101を制御して、パレット107にばら積みされたワーク106が計測装置の計測範囲に収まるような計測位置に、ハンド102によって撮像部104を移動させる(計測位置を設定する)。本実施形態では、後述するように、かかる計測位置を容易に設定することが可能となる。
ロボット制御部103は、計測処理部105に対して、ワーク106の位置姿勢の計測を指示する計測指示を送信する。この際、ロボット制御部103は、ハンド102の位置姿勢も計測処理部105に送信する。
計測処理部105は、ロボット制御部103からの計測指示を受信すると、撮像部104を制御して、撮像部104にワーク106を撮像させる。そして、計測処理部105は、撮像部104で生成された撮像画像と、ロボット制御部103から受信したハンド102の位置姿勢とに基づいて、ワーク106の位置姿勢を求める。また、計測処理部105は、ワーク106の位置姿勢をロボット制御部103に送信する。
ロボット制御部103は、計測処理部105から受信したワーク106の位置姿勢に基づいてロボットアーム101を制御し、ワーク106をハンド102で把持してパレット107から取り出す。
システム1では、上述した処理を、パレット107にばら積みされたワーク106がなくなるまで繰り返す。なお、計測処理部105は、撮像部104に組み込まれ、撮像部104と一体で計測装置を構成してもよい。また、計測処理部105は、ロボット制御部103に組み込まれ、ロボット制御部103の一部を構成してもよい。
図2は、撮像部104の構成の一例を示す概略図である。撮像部104は、ワーク106を撮像して撮像画像を生成する。撮像部104は、本実施形態では、投影部201と、濃淡画像用の光源202と、画像取得部203とを含む。
投影部201は、パターン画像用の光源204と、マスク205と、投影レンズ206とを含み、光源204からの第1波長の光でマスク205を照明し、投影レンズ206を介して、マスク205のパターン像をワーク106に投影する。第1波長の光は、本実施形態では、青色の光であり、光源204は、例えば、青色のLEDを含む。光源202は、第1波長とは異なる第2波長の光でワーク106を照明する。第2波長の光は、本実施形態では、赤色の光であり、光源202は、例えば、赤色のLEDを含む。
画像取得部203は、分光プリズム207と、結像レンズ208と、パターン画像用の撮像センサ209と、濃淡画像用の撮像センサ210とを含む。分光プリズム207は、ワーク106からの光(反射光)を第1波長の光と第2波長の光とに分割する。分光プリズム207は、本実施形態では、青色の光(第1波長の光)を透過し、赤色の光(第2波長の光)を反射するダイクロイックプリズムを含む。結像レンズ208は、ワーク106の像を各撮像センサ上に形成する。撮像センサ209及び210は、CMOSやCCDなどの2次元センサを含む。撮像センサ209は、ワーク106からの第1波長の光を検出してワーク106のパターン画像を出力する。撮像センサ210は、ワーク106からの第2波長の光を検出してワーク106の濃淡画像を出力する。
図3は、マスク205のパターンの画像、即ち、ワーク106に投影されるパターンの画像(マスク画像)800の一例を示す概略図である。マスク205は、本実施形態では、ラインが等間隔に配列されたラインパターンを有し、かかるラインパターンの各ラインにはドットが離散的に配列されている。このようなマスク205のマスク画像800は、図3に示すように、マスク205のラインパターンのラインに対応するライン(ライン画像)801と、マスク205の各ラインに配列されたドットに対応するドット(ドット画像)802とを含む。
本実施形態では、マスク画像800を用いた公知のドットライン法によって、ワーク106の点群データを取得する。点群データとは、ワーク106の表面上の点に対応する3次元座標の集合である。ドットライン法では、ワーク106のパターン画像からドットを抽出し、かかるドットとマスク画像800のドット802との対応付け(ドットの対応付け)を行い、ドットの対応付けの結果に基づいてラインの対応付けを行う。換言すれば、パターン画像に含まれるラインパターンの各ラインが、マスク画像800の何番目のライン801に対応するのかを求める。そして、パターン画像に含まれるラインパターンのライン上の各点に対応する、マスク画像上の点の位置を求め、両方の画像の対応する点の位置関係から、3角測量の原理に基づいて3次元座標を求める。
図4は、本実施形態のシステム1(計測装置)において、ワーク106の位置姿勢を計測する計測処理を説明するためのフローチャートである。S301において、撮像部104は、ワーク106を撮像して撮像画像を生成する。具体的には、撮像部104は、撮像画像として、ワーク106のパターン画像及び濃淡画像を生成する。
S302において、計測処理部105は、ドットライン法を用いて、S301で生成したパターン画像からワーク106の点群データを求める。S303において、計測処理部105は、公知のキャニー法を用いて、S301で生成した濃淡画像からワーク106のエッジデータを求める。
S304において、計測処理部105は、ワーク106の位置姿勢の初期値を設定する。S305において、計測処理部105は、ステップ304で設定した位置姿勢でワーク106のポリゴンモデルを生成する。計測処理部105は、ワーク106のCADデータを予め取得し、かかるCADデータに基づいてワーク106のポリゴンモデルを生成する。
S306において、計測処理部105は、S305で生成したワーク106のポリゴンモデルと、S302で求めたワーク106の点群データ及びS303で求めたワーク106のエッジデータとの対応度(相関度)を求める。対応度は、点群データに関しては、例えば、点群データを構成する各点とポリゴンモデルの表面との間の距離が短いほど値が大きくなるような評価式を用いて求める。また、対応度は、エッジデータに関しては、例えば、ポリゴンモデルから生成される仮想エッジ画像とエッジデータに対応するエッジ画像との重複領域が大きいほど値が大きくなるような評価式を用いて求める。なお、仮想エッジ画像は、仮想3次元空間にポリゴンモデル及び濃淡画像用の撮像センサを配置し、ポリゴンモデルを撮像センサに射影して生成する。また、エッジ画像に対して膨張処理を施してエッジを太らせた上で重複領域を求めるとよい。
S307において、計測処理部105は、最良対応度、及び、最良対応度に対応するワーク106の位置姿勢を更新する。最良対応度は、十分に小さい値に予め設定する。S306で求めた対応度が最良対応度よりも大きければ、最良対応度をS306で求めた対応度に更新する。更に、最良対応度に対応するワーク106の位置姿勢を、現在のワーク106の位置姿勢に更新する。
S308において、計測処理部105は、ワーク106の位置姿勢として想定される全ての位置姿勢に対して対応度を求めたかどうかを判定する。全ての位置姿勢に対して対応度を求めていない場合には、S309に移行する。一方、全ての位置姿勢に対して対応度を求めている場合には、S310に移行する。
S309において、計測処理部105は、ワーク106の位置姿勢として、新たな位置姿勢を設定し、S305に移行する。S310において、計測処理部105は、ワーク106の位置姿勢として、最良対応度に対応するワーク106の位置姿勢を出力する。
図5は、計測処理部105のハードウエア構成の一例を示すブロック図である。計測処理部105は、例えば、コンピュータ(情報処理装置)で構成される。計測処理部105は、マイクロプロセッサ(CPU)401と、ランダムアクセスメモリなどのメモリ402と、キーボードなどの入力部403と、ハードディスクドライブなどの記憶部404とを含む。また、計測処理部105は、撮像部104との間の通信インタフェース(以下、「撮像I/F」と称する)405と、ロボット制御部103との間の通信インタフェース(以下、「RCI/F」と称する)406とを含む。更に、計測処理部105は、表示部408との間の通信インタフェース(以下、「ビデオI/F」と称する)407を含む。
CPU401は、メモリ402に格納されたプログラムに従って種々の処理を実行する。また、CPU401は、本実施形態では、後述するように、ワーク106に対する撮像部104(計測装置)の計測位置を設定するための表示処理を実行する。かかる表示処理のためのプログラムは、記憶部404に記憶されていてもよいし、外部装置(不図示)から供給されてもよい。
計測処理部105(CPU401)は、撮像I/F405を介して、露光光量や露光時間などの撮像条件を撮像部104に送信する。また、計測処理部105は、撮像I/F405を介して、撮像部104に対してワーク106の撮像を指示するとともに、撮像部104で生成された画像を受信(取得)する。
計測処理部105(CPU401)は、RCI/F406を介して、ロボット制御部103からワーク106の位置姿勢の計測を指示する計測指示を受信するとともに、ワーク106の位置姿勢(計測結果)をロボット制御部103に送信する。
計測処理部105(CPU401)は、ビデオI/F407を介して、表示部408に種々の情報を表示する。本実施形態では、計測処理部105は、計測位置の設定を容易にするために、撮像部104で生成された撮像画像に、ワーク106のモデルを表すモデル画像を重畳して表示部408に表示させる。
図6(a)、図6(b)及び図6(c)は、計測装置の計測範囲を説明するための図である。図6(a)は、計測装置の計測範囲を模式的に示している。図6(a)に示す四角錐台は、計測範囲501を示している。ワーク106を撮像して得られる撮像画像に基づいてワーク106の位置姿勢を計測する計測装置では、ワーク106が撮像部104の焦点位置から大きく離れて配置されると、ワーク106がぼやけて撮像され、ワーク106の位置姿勢の計測精度が低下する。
そこで、このような計測装置では、ワーク106の位置姿勢を好適に計測するための、撮像部104(計測装置)とワーク106との間の距離、図6(a)では、距離Lnから距離Lfの範囲が計測範囲501として定められている。このように、計測範囲501とは、撮像部104によって、ワーク106の位置姿勢を要求精度で求めることが可能な撮像画像が得られる範囲である。以下では、計測範囲501において、撮像部104に近い方の端をニア端と称し、ニア端と撮像部104との間の距離Lnを最小計測距離と称する。同様に、計測範囲501において、撮像部104から遠い方の端をファー端と称し、ファー端と撮像部104との間の距離Lfを最大計測距離と称する。また、ワーク106が最も鮮明に撮像されるときの撮像部104とワーク106との間の距離、即ち、計測範囲501(距離Lnから距離Lfの範囲)の中点に対応する距離Lbを最良計測距離と称する。なお、本実施形態では、最良計測距離を計測範囲501の中点としているが、計測範囲501の中点に限らず、任意の位置(距離)を最良計測距離とすることができる。例えば、撮像部104の焦点位置に対応する距離Lbを最良計測距離としてもよい。
図6(b)は、ワーク106がニア端に位置する、即ち、撮像部104とワーク106との間の距離が最小計測距離Lnとなる状態において撮像部104で生成される撮像画像を模式的に示している。図6(c)は、ワーク106がファー端に位置する、即ち、撮像部104とワーク106との間の距離が最大計測距離Lbとなる状態において撮像部104で生成される撮像画像を模式的に示している。図6(b)及び図6(c)に示すように、撮像部104とワーク106との間の距離によって、撮像画像に含まれるワーク106の画像の大きさは変化する。
計測位置の設定は、ワーク106が計測範囲501に収まるように、撮像部104(計測装置)の位置又はワーク106の位置を設定する、即ち、撮像部104とワーク106との間の距離を調整する工程を意味する。ワーク106が計測範囲501に収まっているかどうかの確認は、ワーク106の点群データを求め、ワーク106に対応する点の3次元座標が計測範囲501に収まっているかどうかを確認することで行われる。従って、ワーク106が計測範囲501に収まっているかどうかを確認するためには、ワーク106を撮像することに加えて、点群データを求める必要がある。ワーク106に対応する点が得られない、或いは、ワーク106に対応する点が得られても計測範囲外である場合を考える。この場合、撮像部104とワーク106との間の距離が最小計測距離Lnよりも小さい状態、或いは、撮像部104とワーク106との間の距離が最大計測距離Lbよりも大きい状態であるため、計測位置を再度設定する必要がある。換言すれば、ワーク106が計測範囲501に収まるまで、撮像部104とワーク106との間の距離の調整と、ワーク106が計測範囲501に収まっているかどうかの確認を繰り返さなければならない。
図7(a)、図7(b)及び図7(c)を参照して、本実施形態における計測位置の設定について説明する。図7(a)は、撮像部104(計測装置)とワーク106との位置関係を模式的に示している。ロボットアーム101を制御することによって、パレット107にばら積みされたワーク106が計測範囲501に収まるように、ハンド102に取り付けられた撮像部104の位置を調整する。
図7(b)及び図7(c)は、撮像部104とワーク106との位置関係が図7(a)に示す位置関係である場合に、計測装置の表示部408に表示される画像の一例を模式的に示している。本実施形態では、図7(b)及び図7(c)に示すように、撮像部104で生成された撮像画像601に、ワーク106のモデル画像603を重畳して表示部408に表示する。モデル画像603は、撮像画像601に含まれるべきワーク106の画像の大きさの指標となる画像である。モデル画像603は、ワーク106が計測範囲内の距離に位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさで表示する。例えば、ワーク106が最良計測距離Lbに位置する、即ち、撮像部104とワーク106との間の距離が最良計測距離Lbとなる状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさでモデル画像603を表示する。
図7(b)は、撮像部104とワーク106との間の距離が最良計測距離Lbよりも長い場合に、表示部408に表示される画像を示している。撮像部104とワーク106との間の距離が最良計測距離Lbよりも長いため、撮像画像601に含まれるワーク106の画像の大きさは、モデル画像603の大きさよりも小さい。
図7(c)は、撮像部104とワーク106との間の距離が最良計測距離Lbである場合に、表示部408に表示される画像を示している。この場合、撮像画像601に含まれるワーク106の画像の大きさは、モデル画像603の大きさに一致する。
従って、本実施形態では、表示部408に表示される撮像画像601に含まれるワーク106の画像の大きさが、撮像画像601に重畳して表示されたモデル画像603の大きさと一致するように、撮像部104とワーク106との間の距離を調整する。これにより、撮像部104とワーク106との間の距離を最良計測距離Lbに容易に設定することが可能となる。例えば、ユーザは、表示部408に表示された画像(撮像画像601及びモデル画像603)を観察しながら、ロボットアーム101を制御して、撮像部104(計測装置)を図7(a)に示す矢印の方向に移動させる。なお、表示部408に表示された撮像画像601に含まれるワーク106の画像の大きさと、撮像画像601に重畳して表示されたモデル画像603の大きさとが一致するように、撮像部104とワーク106との間の距離を自動で調整してもよい。本実施形態では、ロボットアーム101を撮像部104とワーク106との間の距離を調整する調整部として機能させているが、これに限定されるものではない。例えば、ワーク106がばら積みされたパレット107を移動させる可動ステージなどを撮像部104とワーク106との間の距離を調整する調整部としてもよいし、かかる可動ステージ及びロボットアーム101の両方を調整部としてもよい。
このように、本実施形態によれば、計測位置の設定において、ワーク106の点群データを求めることが不要となり、計測位置の設定を繰り返すこともなくなる。また、計測位置を設定している間、撮像部104はワーク106を連続的に撮像し、リアルタイム又は低遅延で撮像画像601を表示部408に表示するとよい(即ち、表示部408に表示される撮像画像601を動画にするとよい)。
図8は、計測処理部105の機能構成を示すブロック図である。計測処理部105は、計測処理部105の各部を制御して種々の処理を実行する制御部701を含む。制御部701は、形状情報取得部702を制御して、ワーク106のCADデータなどの3次元形状に関する情報を外部から取得する。また、制御部701は、撮像制御部712を制御して、ワーク106の濃淡画像及びパターン画像を取得し、画像格納部703に格納する。
また、制御部701は、エッジ取得部704を制御して、ワーク106の濃淡画像からワーク106のエッジデータを取得(抽出)する。同様に、制御部701は、点群データ取得部705を制御して、ワーク106のパターン画像からワーク106の点群データを取得(演算)する。
制御部701は、位置姿勢取得部706を制御して、形状情報取得部702で取得した3次元形状情報と、エッジ取得部704で取得したエッジデータと、点群データ取得部705で取得した点群データとに基づいて、ワーク106の位置姿勢を取得(演算)する。また、制御部701は、位置姿勢取得部706で取得したワーク106の位置姿勢を、RC通信部711を介して、ロボット制御部103に送信する。
制御部701は、計測位置を設定する際に、計測距離入力部707を制御して、計測装置に設定すべき撮像部104(計測装置)とワーク106との間の距離(例えば、最良計測距離Lb)を入力する。また、制御部701は、モデル画像生成部708を制御して、モデル画像603を生成する。具体的には、モデル画像603の大きさが、ワーク106が計測距離入力部707で入力した距離に位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する。
制御部701は、重畳部709を制御して、撮像制御部712を介して取得した撮像画像601に、モデル画像生成部708で生成したモデル画像603を重畳する。また、制御部701は、表示制御部713を介して、撮像画像601と、重畳部709で撮像画像601に重畳したモデル画像603とを表示部408に表示する。
図9は、本実施形態において、計測位置の設定に関する表示制御処理(表示方法)を説明するためのフローチャートである。かかる表示制御処理は、計測処理部105の上述した各部で実行される。
S1101において、形状情報取得部702は、ワーク106の3次元形状に関する情報を取得する(第2工程)。S1102において、計測距離入力部707は、計測装置の計測範囲内の距離において、撮像部104とワーク106との間の距離を入力する。例えば、撮像部104とワーク106との間の距離として、最良計測距離Lbを入力する。
S1103において、モデル画像生成部708は、S1101で取得されたワーク106の3次元形状に関する情報に基づいて、ワーク106のモデルを表すモデル画像603を生成する(第3工程)。上述したように、モデル画像603の大きさが、ワーク106がS1102で入力した距離に位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する。
S1104において、撮像制御部712は、撮像部104でワーク106を撮像して撮像画像601を生成する(第1工程)。S1105において、重畳部709及び表示制御部713は、S1104で生成された撮像画像601に、S1103で生成されたモデル画像603を重畳して表示部408に表示する(第4工程)。
S1106において、制御部701は、計測位置の設定が完了しているかどうかを判定する。計測位置の設定が完了していない場合には、S1104に移行する。一方、計測位置の設定が完了している場合には、表示制御処理を終了する。
このように、本実施形態では、撮像部104で生成される撮像画像601に含まれるべきワーク106の画像の大きさの指標となるモデル画像603を、撮像画像601に重畳して表示する。従って、表示部408に表示される撮像画像601に含まれるワーク106の画像の大きさが、撮像画像601に重畳して表示されたモデル画像603の大きさと一致するように、撮像部104とワーク106との間の距離を調整することが可能となる。これにより、計測位置の設定において、ワーク106の点群データを求めることなく、また、計測位置の設定を繰り返すことなく、計測位置を容易に設定することができる。
これまでは、モデル画像603の大きさが、ワーク106が最良計測距離Lbに位置する際に生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する場合について説明した。この場合、撮像画像601に含まれるワーク106の画像の大きさがモデル画像603の大きさと一致するように、撮像部104とワーク106との間の距離を調整することで、かかる距離を最良計測距離Lbに設定することができる。但し、撮像部104とワーク106との間の距離は、最良計測距離Lbに限らず、計測範囲内であれば、最小計測距離Lnから最大計測距離Lfまでの範囲の任意の距離であってもよい。
例えば、広い視野が必要な場合には、撮像部104とワーク106との間の距離を最大計測距離Lfに設定してもよい。この場合、計測距離入力部707は、撮像部104とワーク106との間の距離として、最大計測距離Lfを入力する。そして、モデル画像生成部708は、モデル画像603の大きさが、ワーク106が最大計測距離Lfに位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する。
また、ワーク106を大きく撮像することが適切である場合には、撮像部104とワーク106との間の距離を最小計測距離Lnに設定してもよい。そして、モデル画像生成部708は、モデル画像603の大きさが、ワーク106が最小計測距離Lnに位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する。
また、計測処理部105は、計測距離入力部707が入力すべき撮像部104とワーク106との間の距離として、ユーザの操作に応じて、最良計測距離Lb、最大計測距離Lf、又は、最小計測距離Lnを選択する選択部を含んでいてもよい。この場合、計測距離入力部707は、撮像部104とワーク106との間の距離として、選択部で選択された距離を入力する。そして、モデル画像生成部708は、モデル画像603の大きさが、ワーク106が選択部で選択された距離に位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する。
また、計測距離入力部707は、計測範囲内において、撮像部104とワーク106との間の距離を外部から入力できるように構成してもよい。この場合にも、モデル画像生成部708は、モデル画像603の大きさが、ワーク106が入力した距離に位置する状態において撮像部104で生成される撮像画像601に含まれるワーク106の画像の大きさとなるように、モデル画像603を生成する。
また、パレット107にばら積みされたワーク106を取り出すシステム1では、ワーク106の取り出しに伴って、パレット107の底面に最も遠いワーク106の位置が変化していく。このような場合、パレット107の底面にあるワーク106も計測範囲501に収まるように計測位置を設定するとよい。具体的には、計測距離入力部707は、ワーク106の積み高さを取得し、以下の式(1)に示すように、最大計測距離Lfからワーク106の積み高さを減算した距離を、撮像部104とワーク106との間の距離として入力する。
(最大計測距離Lf)−(ワーク106の積み高さ) ・・・(1)
なお、本実施形態では、計測距離入力部707をワーク106の積み高さを取得する高さ取得部として機能させているが、計測処理部105は、計測距離入力部707とは別に、ワーク106の積み高さを取得する高さ取得部を含んでいてもよい。
なお、本実施形態では、計測距離入力部707をワーク106の積み高さを取得する高さ取得部として機能させているが、計測処理部105は、計測距離入力部707とは別に、ワーク106の積み高さを取得する高さ取得部を含んでいてもよい。
また、計測距離入力部707は、形状情報取得部702で取得されたワーク106の3次元形状に関する情報から得られるワーク106の大きさに基づいて、撮像部104とワーク106との間の距離を入力してもよい。例えば、計測距離入力部707は、撮像部104とワーク106との間の距離として、ワーク106の全体が撮像画像601に収まるような距離を入力する。
また、計測距離入力部707は、複数のワーク106が撮像画像601に収まるように、撮像部104とワーク106との間の距離として、ワーク106の全体が視野の1/nを占めるような距離を入力してもよい。この場合にも、撮像部104とワーク106との間の距離が計測範囲501(最小計測距離Lnから最大計測距離Lfまでの範囲)に収まるようにする。例えば、ワーク106の全体が撮像画像601の1/nを占めるような距離が最大計測距離Lfよりも長い場合には、撮像部104とワーク106との間の距離として、最大計測距離Lfを設定する。
また、重畳部709は、撮像画像601にモデル画像603を重畳する際に、撮像画像601に対するモデル画像603の向き及び位置の少なくとも一方を調整(変更)してもよい。例えば、重畳部709は、マウスなどの入力デバイスの操作に応じて、モデル画像603の向きや位置を調整する。この場合、撮像画像601に含まれるワーク106の画像の向きや位置と、モデル画像603の向きや位置とを一致させることが可能となるため、撮像画像601に含まれるワーク106の画像とモデル画像603の大きさの比較が容易になる。
重畳部709は、モデル画像生成部708で生成されるモデル画像603の大きさに応じて、撮像画像601に重畳するモデル画像603の位置を自動で調整してもよい。図10(a)、図10(b)及び図10(c)は、モデル画像901と、モデル画像901を表示する表示部408の表示画面408aとの位置関係を説明するための図である。図10(a)、図10(b)及び図10(c)は、箱状のパレットを表すモデル画像901を表示画面408aに表示している様子を示している。
図10(a)は、モデル画像901の全体が表示画面408aに収まる場合におけるモデル画像901の位置を示している。図10(a)では、表示画面408aの中央にモデル画像901が表示されている。換言すれば、表示画面408aの中心とモデル画像901の中心Aとが一致するように、モデル画像901を表示する。
図10(b)は、モデル画像901の一部だけが表示画面408aに収まる場合におけるモデル画像901の位置を示している。図10(a)と同様に、表示画面408aの中心とモデル画像901の中心Aとが一致するようにモデル画像901を表示すると、モデル画像901の外郭Bが表示されないため、モデル画像901の位置や姿勢を容易に認識することができない。
そこで、モデル画像901の一部だけが表示画面408aに収まる場合には、図10(c)に示すように、モデル画像901の外郭Bが表示画面408aに表示されるように、モデル画像901の位置を調整する。換言すれば、表示画面408aの中心からモデル画像901の中心Aをオフセットさせてモデル画像901を表示する。これにより、モデル画像901の外郭Bが表示画面408aに表示されるため、モデル画像901の位置や姿勢を容易に認識することができる。
また、計測処理部105は、ワーク106の大きさと、撮像部104とワーク106との間の距離の上限値との対応関係を示す距離情報を示す距離情報を記憶する記憶部を含んでいてもよい。この場合、計測距離入力部707は、ワーク106のそれぞれに対して必要なデータ数の点群データが得られるように、記憶部に記憶された距離情報を参照して、撮像部104とワーク106との間の距離を入力する。ワーク106に関して得られる点群データのデータ数(点の数)は、撮像画像601に含まれるワーク106の画像の大きさに依存する。撮像画像601に含まれるワーク106の画像の大きさが小さいと、得られる点群データのデータ数が少なく、計測精度が低下する。撮像部104とワーク106との間の距離が大きくなると、撮像画像601に含まれるワーク106の画像の大きさが小さくなる。従って、ワーク106の大きさに応じて、撮像部104とワーク106との間の距離の上限値を設定し、十分なデータ数の点群データが得られるように、撮像部104とワーク106との間の距離を設定するとよい。
図10(a)は、ワーク106の大きさと、撮像部104とワーク106との間の距離の上限値との対応関係を示す距離情報の一例を示している。図10(a)に示す距離情報は、撮像部104とワーク106との間の距離の上限値との対応関係を示すテーブルである。なお、ワーク106の大きさと、撮像部104とワーク106との間の距離の上限値との対応関係は、テーブルに限定されるものではなく、数式で示してもよい。ワーク106の大きさには、例えば、ワーク106を内包する直方体の各辺の長さのうち最短の長さを適用する。撮像部104とワーク106との間の距離の上限値は、大きさが異なるワーク106のそれぞれについて、必要なデータ数が得られる最小の距離を調べることで設定する。図10(b)は、ワーク106の大きさS1、S2及びS3のそれぞれと、最大計測距離Lf及び最小計測距離Ln(計測範囲501)との関係を示す図である。
計測位置を設定する際には、まず、形状情報取得部702で取得されたワーク106の3次元形状に関する情報に基づいて、ワーク106の大きさを求める。また、上述した距離情報を参照して、撮像部104とワーク106との間の距離の上限値を取得する。
ワーク106の大きさがS1よりも小さい場合には、必要な計測精度が得られない可能性があることを、例えば、表示部408に警告表示のダイアログを表示することでユーザに通知する。なお、最小計測距離Lnに対応する大きさのモデル画像603を警告用の色で表示してもよい。モデル画像603を警告用の色で表示することで、十分な計測精度でワーク106の位置姿勢を計測できないかもしれないことをユーザに通知する。
また、ワーク106の大きさがS2よりも小さい場合には、撮像部104とワーク106との間の距離の上限値がL2である。従って、撮像部104とワーク106との間の距離を、L2よりも短く、LnからL2までの範囲の距離に収まるように設定する。
また、ワーク106の大きさがS3よりも大きい場合には、撮像部104とワーク106との間の距離を、最小計測距離Lnから最大計測距離Lfまでの範囲の距離で設定することが可能である。但し、広い視野が得られるように、撮像部104とワーク106との間の距離を上限値、即ち、Lfに設定するとよい。
また、撮像部104とワーク106との間の距離の上限値が最良計測距離Lbよりも大きい場合には、撮像部104とワーク106との間の距離をLbに設定してもよい。一方、撮像部104とワーク106との間の距離の上限値が最良計測距離Lbよりも小さい場合には、撮像部104とワーク106との間の距離を上限値に設定する。これにより、ワーク106が大きい場合には、最良計測距離Lbでワーク106の位置姿勢を計測することができ、ワーク106が小さい場合には、必要なデータ数の点群データが得られる距離でワーク106の位置姿勢を計測することができる。
また、ワーク106の大きさと、撮像部104とワーク106との間の距離の上限値との対応関係を示す距離情報は、ワーク106の種類ごとに記憶してもよい。更に、計測処理部105は、ワーク106の位置姿勢の計測結果に基づいて、記憶部に記憶された距離情報における上限値を更新する更新部を含んでいてもよい。例えば、ワーク106の位置姿勢の計測の結果、点群データのデータ数が必要なデータ数に満たなかった場合には、かかるワーク106に関して記憶部に記憶されている距離情報における上限値を、現在の値よりも小さい値に更新する。一方、ワーク106の位置姿勢の計測の結果、点群データのデータ数が必要以上に多かった場合には、かかるワーク106に関して記憶部に記憶されている距離情報における上限値を、現在の値よりも大きい値に更新する。
本実施形態では、ワーク106のパターン画像からワーク106の点群データを取得する場合について説明したが、撮像画像を用いた他の方法で点群データを取得してもよい。例えば、ステレオカメラを用いてもよい。また、ワーク106に投影するパターンもラインパターンに限定されず、正弦パターンやランダムパターンを投影してもよい。
本実施形態では、ワーク106の濃淡画像を取得する場合について説明したが、濃淡画像の代わりに、カラー画像、赤外画像、分光画像を取得してもよい。また、ワーク106の位置姿勢を求める方法は、ポリゴンモデルと、点群データ及びエッジデータとの対応度に基づく方法に限定されるものではない。例えば、テンプレートマッチング法、ニューラルネットワークを用いる方法、ICPアルゴリズムを用いる方法などの公知の方法を用いてワーク106の位置姿勢を求めてもよい。
本発明は、上述の実施形態の1つ以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1つ以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されないことはいうまでもなく、その要旨の範囲内で種々の変形及び変更が可能である。例えば、本発明は、本実施形態の計測装置を有するロボットして実現することも可能であり、かかるロボットを利用したワーク取り出し装置や組立装置として実現することも可能である。また、本発明は、本実施形態の計測装置の機能を実現するロボット制御装置として実現することも可能である。
1:システム 101:ロボットアーム 102:ハンド 103:ロボット制御部 104:撮像部 105:計測処理部 106:ワーク
Claims (17)
- 対象物の位置又は姿勢を計測する計測装置であって、
前記対象物を撮像して撮像画像を生成する撮像部と、
前記対象物の3次元形状に関する情報を取得する取得部と、
前記取得部で取得された前記情報に基づいて、前記撮像画像に含まれるべき前記対象物の画像の大きさの指標となる、前記対象物のモデルを表すモデル画像を生成する生成部と、
前記撮像部で生成された前記撮像画像に、前記生成部で生成された前記モデル画像を重畳して表示部に表示させる制御部と、
を有することを特徴とする計測装置。 - 前記生成部は、前記モデル画像の大きさが、前記撮像部と前記対象物との間の距離が前記計測装置の計測範囲内の距離となる状態において前記撮像部で生成される撮像画像に含まれる前記対象物の画像の大きさとなるように、前記モデル画像を生成することを特徴とする請求項1に記載の計測装置。
- 前記計測装置の計測範囲内の距離において、前記撮像部と前記対象物との間の距離を入力する入力部を更に有し、
前記生成部は、前記モデル画像の大きさが、前記撮像部と前記対象物との距離が前記入力部で入力された距離となる状態において前記撮像部で生成される撮像画像に含まれる前記対象物の画像の大きさとなるように、前記モデル画像を生成することを特徴とする請求項1又は2に記載の計測装置。 - 前記表示部に表示された前記撮像画像に含まれる前記対象物の画像の大きさと、当該撮像画像に重畳して表示された前記モデル画像の大きさとが一致するように、前記撮像部と前記対象物との間の距離を調整する調整部を更に有することを特徴とする請求項1乃至3のうちいずれか1項に記載の計測装置。
- 前記生成部は、前記モデル画像の大きさが、前記撮像部と前記対象物との間の距離が前記計測装置の計測範囲内で最も大きくなる距離となる状態において前記撮像部で生成される撮像画像に含まれる前記対象物の画像の大きさとなるように、前記モデル画像を生成することを特徴とする請求項1又は2に記載の計測装置。
- 前記入力部が入力すべき前記撮像部と前記対象物との間の距離として、ユーザの操作に応じて、前記撮像部と前記対象物との間の距離が前記計測装置の計測範囲の中点に対応する距離、前記撮像部と前記対象物との間の距離が前記計測装置の計測範囲内で最も大きくなる距離、又は、前記撮像部と前記対象物との間の距離が前記計測装置の計測範囲内で最も小さくなる距離を選択する選択部を更に有し、
前記入力部は、前記選択部で選択された距離を、前記撮像部と前記対象物の間の距離として入力することを特徴とする請求項3に記載の計測装置。 - 前記入力部は、前記取得部で取得された前記情報から得られる前記対象物の大きさに基づいて、前記撮像部と前記対象物との間の距離を入力することを特徴とする請求項3に記載の計測装置。
- 複数の前記対象物が積まれた状態で存在し、
前記対象物の積み高さを取得する高さ取得部を更に有し、
前記入力部は、前記撮像部と前記対象物との間の距離が前記計測装置の計測範囲内で最も大きくなる距離から前記高さ取得部で取得した前記積み高さを減算した距離を、前記撮像部と前記対象物の間の距離として入力することを特徴とする請求項3に記載の計測装置。 - 前記制御部は、前記撮像画像に前記モデル画像を重畳する際に、前記撮像画像に対する前記モデル画像の向き及び位置の少なくとも一方を調整することを特徴とする請求項1乃至8のうちいずれか1項に記載の計測装置。
- 前記制御部は、前記モデル画像の大きさに応じて、前記撮像画像に重畳する前記モデル画像の位置を調整することを特徴とする請求項1乃至8のうちいずれか1項に記載の計測装置。
- 前記対象物の大きさと、前記撮像部と前記対象物との間の距離の上限値との対応関係を示す距離情報を記憶する記憶部を更に有し、
前記入力部は、前記記憶部に記憶された前記距離情報を参照して前記撮像部と前記対象物との間の距離を入力することを特徴とする請求項3に記載の計測装置。 - 前記記憶部は、前記対象物の種類ごとに前記距離情報を記憶することを特徴とする請求項11に記載の計測装置。
- 前記対象物の位置又は姿勢の計測結果に基づいて、前記記憶部に記憶された前記距離情報における前記上限値を更新する更新部を更に有することを特徴とする請求項11又は12に記載の計測装置。
- 前記取得部は、前記情報として、前記対象物のCADデータを取得することを特徴とする請求項1乃至13のうちいずれか1項に記載の計測装置。
- 対象物の位置又は姿勢を計測する計測装置と、前記計測装置で計測された前記対象物の位置又は姿勢に基づいて、前記対象物を把持する把持装置とを備えたシステムであって、
前記計測装置は、
前記対象物を撮像して撮像画像を生成する撮像部と、
前記対象物の3次元形状に関する情報を取得する取得部と、
前記取得部で取得された前記情報に基づいて、前記撮像画像に含まれるべき前記対象物の画像の大きさの指標となる、前記対象物のモデルを表すモデル画像を生成する生成部と、
前記撮像部で生成された前記撮像画像に、前記生成部で生成された前記モデル画像を重畳して表示部に表示させる制御部と、
を有することを特徴とするシステム。 - 対象物の位置又は姿勢を計測する計測装置が有する表示部に画像を表示する表示方法であって、
前記対象物を撮像して撮像画像を生成する第1工程と、
前記対象物の3次元形状に関する情報を取得する第2工程と、
前記第2工程で取得された前記情報に基づいて、前記撮像画像に含まれるべき前記対象物の画像の大きさの指標となる、前記対象物のモデルを表すモデル画像を生成する第3工程と、
前記第1工程で生成された前記撮像画像に、前記第3工程で生成された前記モデル画像を重畳して表示する第4工程と、
を有することを特徴とする表示方法。 - 請求項16に記載の表示方法の各工程をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018226724A JP2020091126A (ja) | 2018-12-03 | 2018-12-03 | 計測装置、システム、表示方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018226724A JP2020091126A (ja) | 2018-12-03 | 2018-12-03 | 計測装置、システム、表示方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020091126A true JP2020091126A (ja) | 2020-06-11 |
Family
ID=71012671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018226724A Pending JP2020091126A (ja) | 2018-12-03 | 2018-12-03 | 計測装置、システム、表示方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020091126A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022202655A1 (ja) * | 2021-03-24 | 2022-09-29 | ファナック株式会社 | 3次元測定システム |
CN115401527A (zh) * | 2022-10-08 | 2022-11-29 | 瑞安市博业激光应用技术有限公司 | 可视示教系统 |
-
2018
- 2018-12-03 JP JP2018226724A patent/JP2020091126A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022202655A1 (ja) * | 2021-03-24 | 2022-09-29 | ファナック株式会社 | 3次元測定システム |
CN115401527A (zh) * | 2022-10-08 | 2022-11-29 | 瑞安市博业激光应用技术有限公司 | 可视示教系统 |
CN115401527B (zh) * | 2022-10-08 | 2024-04-23 | 瑞安市博业激光应用技术有限公司 | 可视示教系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6892286B2 (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
US9672630B2 (en) | Contour line measurement apparatus and robot system | |
US9679385B2 (en) | Three-dimensional measurement apparatus and robot system | |
US9529945B2 (en) | Robot simulation system which simulates takeout process of workpieces | |
JP5829306B2 (ja) | レンジセンサの配置位置評価装置 | |
CN108965690B (zh) | 图像处理系统、图像处理装置及计算机可读存储介质 | |
JP5812599B2 (ja) | 情報処理方法及びその装置 | |
JP2018111165A (ja) | 視覚センサのキャリブレーション装置、方法及びプログラム | |
JP6703812B2 (ja) | 3次元物体検査装置 | |
JP6317618B2 (ja) | 情報処理装置およびその方法、計測装置、並びに、作業装置 | |
JP2016186469A (ja) | 情報処理装置、情報処理方法、プログラム | |
US9905016B2 (en) | Robot identification system | |
JP2014013146A5 (ja) | ||
JP6885856B2 (ja) | ロボットシステムおよびキャリブレーション方法 | |
JP2020047049A (ja) | 画像処理装置及び画像処理方法 | |
CN112276936A (zh) | 三维数据生成装置以及机器人控制系统 | |
JP2016159387A (ja) | 情報処理装置、処理システム、物体移動システム、および、物体移動方法 | |
JP2020091126A (ja) | 計測装置、システム、表示方法及びプログラム | |
JP2006224291A (ja) | ロボットシステム | |
JP2018122376A (ja) | 画像処理装置、ロボット制御装置、及びロボット | |
JP7439410B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
CN116472551A (zh) | 调整参数的装置、机器人系统、方法以及计算机程序 | |
JP2020071034A (ja) | 三次元計測方法、三次元計測装置、及び、ロボットシステム | |
JP2018017610A (ja) | 三次元計測装置、ロボット、ロボット制御装置、及びロボットシステム | |
WO2022249295A1 (ja) | ロボットシミュレーション装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |