JP2006021300A - 推定装置および把持装置 - Google Patents

推定装置および把持装置 Download PDF

Info

Publication number
JP2006021300A
JP2006021300A JP2004203669A JP2004203669A JP2006021300A JP 2006021300 A JP2006021300 A JP 2006021300A JP 2004203669 A JP2004203669 A JP 2004203669A JP 2004203669 A JP2004203669 A JP 2004203669A JP 2006021300 A JP2006021300 A JP 2006021300A
Authority
JP
Japan
Prior art keywords
camera
light
images
distance
moving
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
Application number
JP2004203669A
Other languages
English (en)
Inventor
Hironori Yamataka
大乗 山高
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP2004203669A priority Critical patent/JP2006021300A/ja
Publication of JP2006021300A publication Critical patent/JP2006021300A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】 環境の条件に限定されず、対象物までの距離を推定する。
【解決手段】 ロボット10は、白色LED23と、カラーカメラ24と、右アーム26と、カラーカメラ24が撮像した複数の画像および白色LED23がワーク14に照射した光の光量を対応付けて記憶するメモリ104と、同一の位置でワーク14を複数回撮像するように制御し、光量が変化するように白色LED23を制御し、2種類以上の画像中にあるワーク14上の同じ位置を表わす画素を特定し、その画素の輝度差および光量差を算出し、白色LED23からワーク14までの距離の推定値を算出し、白色LED23およびカラーカメラ24がワーク14に近づくように、右アーム26を制御する制御用コンピュータと、右アーム26に白色LED23およびカラーカメラ24の移動に従属して移動するように取付けられ、かつワーク14を把持する第1指34〜第3指28とを含む。
【選択図】 図1

Description

本発明は、推定装置および把持装置に関し、特に人の居住空間のような複雑・多様な環境下で作業を行うロボットがワークの把持および操作を確実に実施できる推定装置および把持装置に関する。
ロボットがワーク(ワークの中でも特に位置や姿勢が不確定なもの)を把持したり操作したりするためには、何らかの方法でワークの位置や姿勢を推定する必要がある。
ワークの位置や姿勢を推定するために、ロボットハンド・グリッパなど(ワークの把持や操作を行うためのもの)に加えて、CCDカメラなどを使用するシステムは「ハンドアイ」システムと呼ばれている。「ハンドアイ」システムは、次の理由から一般によく用いられている。その理由の第1は、多様なワークについて位置や姿勢を推定できることである。理由の第2は、取得できる情報量に対してセンサを取付けるための労力が少ないことである。
ハンドアイシステムを利用する場合、次の処理を含む制御が実施される。その第1の処理は、CCDカメラなどにより取得した画像からワークの位置および姿勢を推定する処理である。第2の処理は、推定された結果に基づいてロボットの動作を変更する処理である。このような手法は「ビジュアルフィードバック」と呼ばれる。「ビジュアルフィードバック」は、ロボティクス技術の1分野を形成している。
ワークの位置および姿勢を推定する方法には、特許文献1に示されている物体認識システムがある。このシステムは、農産物を認識の対象とするシステムである。このシステムは、光源の光量を変えた画像間の比較を行なうことにより、画像中の背景から、農産物の領域を抽出する(このように、認識の対象物の領域を背景から分離する処理を、以下「セグメント化」と称する)。
この他の方法として、レーザ干渉計を用いる方法や、ステレオ視などを用いる方法が含まれる(特許文献2はこの方法にかかる環境認識装置を開示する)。レーザ干渉計を用いる方法とは、ワーク上の干渉縞の様子(この縞模様はカメラで撮影される)からワーク表面形状を推定する方法である。ステレオ視などを用いる方法とは、複数視点からの画像(複数のカメラを利用したり、複数の位置にカメラを移動したりする)を用いて、三角測量の原理で複数の視点から距離を推定する方法である。
しかしながら、特許文献1に開示されたように、光源の光量を変えた画像間の比較を行なうことによりセグメント化を実施する場合、ロボットに適用することが困難であるという問題点がある。その理由は、ロボットにはさまざまなワークを把持したり操作したりする必要があるという点にある。この問題点は、ロボットが複雑で多様な環境(人の居住空間など)内に置かれたとき、特に顕著になる。ロボットに適用することが困難な理由は、カメラおよび光源位置を固定する必要があるという点にある。
レーザ干渉計を用いる場合、光源としてレーザ光などの強い光源を必要するという問題点がある。その理由は、ワーク表面が明るくても、干渉縞が十分なコントラストを成す必要があるという点にある。
ステレオ視を利用する方法の場合、複数のカメラを配置するか、カメラを移動させながらワークを撮影する必要がある。このようなことは、コストの増大などを招く。また、この方法の場合、画像処理の負荷が大きくなるという問題点と、認識の対象物が限られるという問題点とがある。負荷が大きくなる理由は、画像の間で対応点を探す必要があるという点にある。認識の対象物が限られる理由は、ワーク表面にテクスチャ(局所的な特徴)が必要という点にある。
以上まとめると、従来の技術は、環境の条件(背景を含む)およびワークを限定できる用途(産業用ロボットなど)に適したものであったと考えられる。しかし、ロボットが多様で複雑な環境下(人の居住空間など)においてセグメント化を実施し、対象物までの距離を推定するためには、安全性やコストの面で課題があったといえる。
特開平7−302343号公報 特開平4−137112号公報
本発明は、上述の問題点を解決するためになされたものであって、その目的は、環境の条件に限定されず、対象物までの距離を推定できる推定装置および把持装置を提供することにある。
上記目的を達成するために、本発明のある局面にしたがうと、推定装置は、対象物に光を照射するための照射手段と、対象物を撮像する第1のカメラと、照射手段および第1のカメラを移動させるための移動手段と、対象物を、第1のカメラよりも広い範囲の背景を含むように撮像する第2のカメラと、第2のカメラが撮像した画像を用いて、対象物の位置を検出するための検出手段と、検出手段が検出した位置を用いて、第1のカメラが対象物を撮像する位置を決定するための決定手段と、決定手段が決定した同一の位置で対象物を複数回撮像するように、第1のカメラおよび移動手段を制御するための第1の制御手段と、第1のカメラが対象物を複数回撮像する合間に光量が変化するように、照射手段を制御するための第2の制御手段と、第1のカメラが撮像した複数の画像および照射手段が対象物に照射した光の光量を対応付けて記憶するための第1の記憶手段と、第1の記憶手段が記憶した画像を構成する画素の輝度から、光量が変化した前後に撮像した2種類以上の画像中にある対象物上の同じ位置を表わす画素を特定するための特定手段と、特定手段が特定した画素の輝度差および2種類以上の画像に対応する光の光量差を算出するための第1の算出手段と、光量差に対する輝度差の比が照射手段から対象物までの距離の2乗に反比例することを用いて、照射手段から対象物までの距離の推定値を算出するための第2の算出手段とを含む。
すなわち、移動手段は、決定手段が決定した位置へ照射手段および第1のカメラを移動させる。第2の制御手段は、第1のカメラが同一の位置で対象物を複数回撮像する合間に光量が変化するように、照射手段を制御する。これにより、対象物にあわせて移動された第1のカメラにより、対象物への光量が異なる複数の画像が撮像されるので、第2の算出手段は、光量差に対する輝度差の比が照射手段から対象物までの距離の2乗に反比例することを用いて、照射手段から対象物までの距離の推定値を算出することができる。その結果、環境の条件に限定されず、対象物までの距離を推定できる推定装置を提供することができる。
また、上述の移動手段は、照射手段および第1のカメラを対象物までの距離が等しくなるように移動させるための手段を含むことが望ましい。
すなわち、照射手段および第1のカメラは、同一の部材に対象物までの距離が等しくなるように移動される。これにより、第1のカメラが対象物に近づくと同時に照射手段をカメラに近づけることができる。照射手段が第1のカメラと同時に対象物に近づけられるので、照射手段からの光量が照射手段から対象物までの距離の2乗に反比例する特性を利用して、対象物と対象物以外のものの輝度差をより大きくすることができる。輝度差がより大きくなるので、特定手段はより容易に対象物上の同じ位置を表わす画素を特定することができる。対象物上の同じ位置を表わす画素がより容易に特定されるので、第2の算出手段は、より確実に推定値を算出することができる。その結果、環境の条件に限定されず、対象物までの距離をより確実に推定できる推定装置を提供することができる。
また、上述の対象物までの距離が等しくなるように移動させるための手段は、照射手段および第1のカメラを同一の部材に対象物までの距離が等しくなるように固定して移動させるための手段を含むことが望ましい。
すなわち、照射手段および第1のカメラは、同一の部材に対象物までの距離が等しくなるように固定して移動される。これにより、より簡単な構成で、さらに確実に、照射手段および第1のカメラを対象物までの距離が等しくなるように移動させることができる。その結果、簡単な構成で、環境の条件に限定されず、対象物までの距離をさらに確実に推定できる推定装置を提供することができる。
また、上述の推定装置は、対象物の撮像面に対する、照射手段からの光以外の光を遮蔽するための遮蔽手段をさらに含むことが望ましい。
すなわち、遮蔽手段は、対象物の撮像面に対する、照射手段からの光以外の光を遮蔽する。そのような光が遮蔽されるので、そのような光の影響が少なくなる。影響が少なくなるので、照射手段がより光量の少ない光を照射しても、特定手段は、対象物上の同じ位置を表わす画素を特定することができる。特定手段が画素を特定できるので、第1の算出手段が算出する輝度差はより大きくなる。輝度差がより大きくなるので、輝度差に対する誤差の影響は小さくなる。誤差の影響が小さくなるので、第2の算出手段は、より確実に距離の推定値を算出することができる。その結果、環境の条件に限定されず、より確実に対象物までの距離を推定できる推定装置を提供することができる。
また、上述の推定装置は、第1あるいは第2のカメラが撮像した画像のいずれかを用いて、対象物の種類を識別するための識別手段と、対象物の種類ごとに、対象物の表面の属性を表わす属性情報を記憶するための第2の記憶手段とをさらに含むことが望ましい。あわせて第2の算出手段は、属性情報を用いて、識別手段が識別した対象物の種類に対応するように、距離の推定値を算出するための手段を含むことが望ましい。
すなわち、第2の算出手段は、第2の記憶手段が記憶した属性情報を用いて、識別手段が識別した対象物の種類に対応するように、距離の推定値を算出する。これにより、推定値の誤差はより少なくなる。その結果、環境の条件に限定されず、対象物までの距離をより誤差が少なくなるように推定できる推定装置を提供することができる。
本発明の他の局面にしたがうと、把持装置は、対象物に光を照射するための照射手段と、対象物を撮像する第1のカメラと、対象物を、第1のカメラよりも広い範囲の背景を含むように撮像する第2のカメラと、第2のカメラが撮像した画像を用いて、対象物の位置を検出するための検出手段と、検出手段が検出した位置を用いて、第1のカメラが対象物を撮像する位置を決定するための決定手段と、照射手段および第1のカメラを移動させるための移動手段と、決定手段が決定した同一の位置で対象物を複数回撮像するように、第1のカメラおよび移動手段を制御するための第1の制御手段と、第1のカメラが対象物を複数回撮像する合間に光量が変化するように、照射手段を制御するための第2の制御手段と、第1のカメラが撮像した複数の画像および照射手段が対象物に照射した光の光量を対応付けて記憶するための記憶手段と、記憶手段が記憶した画像を構成する画素の輝度から、光量が変化した前後に撮像した2種類以上の画像中にある対象物上の同じ位置を表わす画素を特定するための特定手段と、特定手段が特定した画素の輝度差および2種類以上の画像に対応する光の光量差を算出するための第1の算出手段と、光量差に対する輝度差の比が照射手段から対象物までの距離の2乗に反比例することを用いて、照射手段から対象物までの距離の推定値を算出するための第2の算出手段と、第2の算出手段が算出した値を用いて、照射手段および第1のカメラが対象物に近づくように、移動手段を制御するための第3の制御手段と、移動手段に照射手段および第1のカメラの移動に従属して移動するように取付けられ、かつ対象物を把持するための把持手段とを含む。
すなわち、移動手段は、把持手段に対象物を把持させるために照射手段および第1のカメラを移動させることができる。把持手段に対象物を把持させるために照射手段および第1のカメラが移動されるので、第1のカメラは、把持手段を移動させる合間に対象物を撮像することができる。第2の算出手段は、把持手段を移動させる合間に距離の推定値を算出することができる。第3の制御手段は、第2の算出手段が算出した値を用いて、照射手段および第1のカメラが対象物に近づくように、移動手段を制御する。照射手段および第1のカメラが対象物に近づくように、移動手段が制御されるので、把持手段も対象物に近づく。これにより、把持手段は、速く適格に対象物を把持できる。その結果、環境の条件に限定されず、対象物までの距離を推定でき、かつより速く適格に対象物を把持できる把持装置を提供することができる。
本発明に係る推定装置および把持装置は、環境の条件およびワークに限定されず、位置および姿勢を推定できる。
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同一である。したがって、それらについての詳細な説明は繰返さない。
図1を参照して、本実施の形態に係るロボット10が、ワーク14を認識する状況を説明する。図1は、ロボット10が対象物(撮像の対象となる物のこと。本実施の形態の場合、ワーク14がこれにあたる。)を後述する第1指34〜第3指38で掴んで移動させる作業を表わす図である。ロボット10の手前に、テーブル12(本実施の形態において、テーブル12は緑色で無地である)に載せられた、ワーク14が存在する。ロボット10は、ワーク14を認識して、ワーク14を把持する。ワーク14は、円筒状の形状を有する。ワーク14は赤く塗装されている。
ロボット10は、ボディ部20と、メインカメラ22と、白色LED(Light Emitting Diode)23と、カラーカメラ24と、右アーム26と、右ハンド30と、第1指34と、第2指36と、第3指38とを含む。ボディ部20は、ロボット10を制御する制御用コンピュータ100を格納する。ボディ部20は、メインカメラ22、および右アーム26を取付ける構造体でもある。メインカメラ22は、ボディ部20の上(ロボット10の頭に相当する位置)からテーブル12の上に置かれたワーク14を撮像する。これにより、メインカメラ22は、制御用コンピュータ100と協調することによって、1つの装置として、ワーク14の配置を検出できる。白色LED23は、ワーク14に光を照射する。カラーカメラ24は、第1指34〜第3指38の間から、対象物などを撮像する。これにより、制御用コンピュータ100は、カラーカメラ24が撮像した画像に基づき、ビジュアルフィードバックを用いて、ワーク14の正確な位置を認識できる。カラーカメラ24は、CCD(Charge Coupled Device)カメラまたはCMOS(Complementary Metal- Oxide Semiconductor)カメラとする。ただし、CMOSカメラを採用する場合、自動ホワイトバランス(Auto White Balance、AWB)機能を停止させておく必要がある。カラーカメラ24をこれらに限定する理由は、画素の輝度から直接ワーク14表面の明るさを推定できる点にある。本実施の形態において、カラーカメラ24は、CCDカメラを用いることとする。右アーム26は、右ハンド30を移動させる。右アーム26は、図示しないリンク、駆動用アクチュエータ、および関節用の角度センサからなる。右アーム26の自由度は「7」である。右アーム26は、右ハンド30に固定された白色LED23およびカラーカメラ24を移動させる装置である。右ハンド30は、カラーカメラ24および第1指34〜第3指38を移動させる。右ハンド30も、図示しないリンク、駆動用アクチュエータ、および関節用の角度センサからなる。第1指34〜第3指38は、それぞれ屈曲可能な複数の部材である。第1指34〜第3指38は、互いに協調して、ワーク14を把持し、かつワーク14の背景を遮蔽する。これらは、右ハンド30を介して右アーム26に白色LED23およびカラーカメラ24の移動に従属して移動するように取付けられ、かつワーク14を把持する、1つの装置である。第1指34〜第3指38も、図示しないリンク、駆動用アクチュエータ、および関節用の角度センサからなる。本実施の形態において、第1指34〜第3指38はいずれも黒く塗装されていることとする。
制御用コンピュータ100は、ボディ部20、右アーム26、右ハンド30、および第1指34〜第3指38をそれぞれ制御する。制御用コンピュータ100は、メインカメラ22およびカラーカメラ24から取得した画像を処理する回路でもある。制御用コンピュータ100は、白色LED23の駆動電圧を複数段階に調整する回路でもある。本実施の形態において、駆動電圧の複数段階には電圧が0ボルトの段階が含まれる。電圧が0ボルトの段階において、白色LED23は消灯する。制御用コンピュータ100は、画像を処理した結果をボディ部20、右アーム26、右ハンド30、および第1指34〜第3指38の動作の制御に結びつける回路でもある。図2を参照して、制御用コンピュータ100は、制御用コンピュータ100自体およびロボット10の各部を集中的に管理し、かつ制御するCPU(Central Processing Unit)102と、ROM(Read Only Memory)またはRAM(Random Access Memory)を含んで構成されるメモリ104と、固定ディスク106と、キーによる入力を受付けるキーボード108と、液晶からなるディスプレイ110と、FD(Flexible Disk)120が着脱自在に装着されて、装着されたFD120にアクセスするFD駆動装置112と、CD−ROM(Compact Disk Read Only Memory)122が着脱自在に装着されて、装着されたCD−ROM122にアクセスするCD−ROM駆動装置114とを含む。これらの各部はバスを介して通信・接続される。
メモリ104は、一般部、配置部および候補部を含む。一般部は、ワーク群(本実施の形態の場合、テーブル12上に存在するワーク14を含む)に関する、大きさの情報、形状の情報、および表面の性質などの特性を表わす情報を記録する。配置部は、右アーム26、右ハンド30、および第1指34〜第3指38のサイズ、ならびに右アーム26、右ハンド30、および第1指34〜第3指38の角度センサが取得した情報(角度を表わす情報)を記録する。これらの情報は、それぞれの配置を表わす情報となる。候補部は、カラーカメラ24および第1指34〜第3指38の配置の複数の候補を表わす情報を記録する。
このロボット10は、上述した各部材(制御用コンピュータ100を含む)と、CPU102により実行されるソフトウェアとにより実現される。一般的にこうしたソフトウェアは、FD120やCD−ROM122などの記録媒体に格納されて流通し、FD駆動装置112やCD−ROM駆動装置114などにより記録媒体から読取られて固定ディスク106に一旦格納される。さらに固定ディスク106からメモリ104へ読出されて、上述したCPU102により実行される。上述した制御用コンピュータ100のハードウェア自体は一般的なものである。したがって、本発明の最も本質的な部分は、CD−ROM122などの記録媒体に記録されたソフトウェアである。
図3および図4を参照して、ロボット10で実行されるプログラムは、ワーク14の識別に関し、以下のような制御構造を有する。
ステップ100(以下、ステップをSと略す。)にて、ロボット10の制御用コンピュータ100は、ボディ部20上部に取付けたメインカメラ22によりテーブル12上のワーク14の状態を撮像する。
S102にて、制御用コンピュータ100は、テーブル12および予め登録されているワーク群の画像データと、メインカメラ22が撮像したワーク14の画像データとを比較することにより、ワーク14の種類を決定する。
S104にて、制御用コンピュータ100は、予め登録されているワーク14の大きさおよびメインカメラ22とテーブル12との位置関係に基づいて、ワーク14のおよその位置・姿勢情報を生成する。これらの情報は、次の処理を経て生成される。第1の処理は、メインカメラ22で撮像した画面内のワーク14の位置、サイズ、傾きを検出する処理である。この処理が可能となる理由は、ワーク14の大きさがメモリ104に予め登録されている点にある。第2の処理は、ワーク14の位置、サイズ、傾きから、メインカメラ22を基準とした座標系内でのワーク14の位置や姿勢を算出する処理である。この処理は、メインカメラ22からワーク14までの距離とワーク14のサイズとが反比例することを利用して実施される。第3の処理は、メインカメラ22を基準とした座標系内でのワーク14の位置や姿勢を、制御用コンピュータ100がカラーカメラ24などの移動に用いる座標系(本実施の形態において、特に指定がない場合、「座標」とはこの座標系における座標をいう)に換算する処理である。第4の処理は、第3の処理で換算したワーク14の座標と、テーブル12の座標から、ワーク14の3次元座標を算出する処理である。ワーク14は、カメラのレンズの焦点とワーク14の重心とを結ぶ線がテーブル12に交差する位置にある。ワーク14の3次元座標は、このことを利用して算出される。なお、以上の処理により得られる座標の精度は高くない。しかし、これ以降の処理においてワーク14のより正確な座標が推定されるので、大きな問題は生じない。
S106にて、制御用コンピュータ100は、S104にて得られた情報により、ロボット10の動作を選択する。具体的な選択の内容は次の通りである。制御用コンピュータ100は、S100にて取得したカメラ画像からワーク14の表面に照射されている環境光を推定する。環境光が推定されると、制御用コンピュータ100は、環境光が白色LED23(右ハンド30に搭載してある)の輝度に比べて十分小さいか否かを判断する。環境光が白色LED23の輝度に比べて十分小さいと判断した場合(S106にてYES)、処理はS108へと移される。もしそうでないと(S106にNO)、処理はS110へと移される。
S108にて、制御用コンピュータ100は、右アーム26、右ハンド30、および第1指34〜第3指38を「第1の位置」まで移動させる。図5に「第1の位置」を示す。
S110にて、制御用コンピュータ100は、右アーム26、右ハンド30、および第1指34〜第3指38を「第2の位置」まで移動させる。図6に「第2の位置」を示す。「第2の位置」におけるカラーカメラ24からワーク14までの距離は、「第1の位置」におけるカラーカメラ24からワーク14までの距離よりも近い。また、「第2の位置」における第1指34〜第3指38は、ワーク14の撮像面(「撮像面」とは、カラーカメラ24の光軸に直交する面であって、ワーク14とカラーカメラ24との間にある面のいずれかをいう。ちなみに「撮像」とは、カメラのレンズを通過した光を、実像として合成できるような信号に変換することをいう。)に対する、白色LED23からの光以外の光を遮蔽する。環境光を遮蔽する理由は、カラーカメラ24が撮像する画像のコントラストを上昇させる点にある。
S112にて、制御用コンピュータ100は、白色LED23の入力電圧を「0」(すなわち消灯した状態)にする。カラーカメラ24は、ワーク14を撮像する。これにより、「第1の画像」が得られる。制御用コンピュータ100のメモリ104は、カラーカメラ24が撮像した第1の画像および白色LED23がワーク14に照射した光の光量(この場合光量は「0」である)を対応付けて記憶する。
S114にて、制御用コンピュータ100は、白色LED23の光量を決定する。白色LED23の光量は、第1の画像の中心部40、周辺部42、および予めメモリ104に記録されている情報(ワーク14の表面に関する情報)に基づいて決定される。白色LED23の光量は次の要件をいずれも満たす量とすべきである。第1の要件は、所定量を下回ることである。ここでいう「所定量」とは、カラーカメラ24を構成するCCD素子のダイナミックレンジに相当する量である。その理由は、光量がダイナミックレンジを越えると、CCD素子の出力が不適切となる可能性があるという点にある。CCD素子の出力が不適切となる原因は、光量がダイナミックレンジを越えると、CCD素子の出力が飽和する点(一般にこの状態を「白飛び」と称する)にある。第2の要件は、なるべく多いことである。その理由は、S112にて取得した「第1の画像」と比較する際、十分にコントラストを得る必要がある点にある。
S116にて、制御用コンピュータ100は、白色LED23の駆動電圧を計算する。この電圧は、S114にて決定した光量に基づいて計算される。駆動電圧が計算されると、制御用コンピュータ100は、その電圧値に基づいて白色LED23を発光させる。S118にて、制御用コンピュータ100は、カラーカメラ24は、ワーク14を撮像する。これにより、「第2の画像」が得られる。制御用コンピュータ100のメモリ104は、カラーカメラ24が撮像した第2の画像および白色LED23がワーク14に照射した光の光量(この場合光量は白色LED23の駆動電圧で表わされる)を対応付けて記憶する。
S120にて、制御用コンピュータ100は、計算により、白色LED23の発光がワーク14の明るさに与えた影響を抽出する。本実施の形態において、白色LED23の発光がワーク14の明るさに与えた影響は、第2の画像の各画素の輝度値から第1の画像の各画素の輝度値を引いた値によって表わされる。このため、制御用コンピュータ100は、次の処理を経て白色LED23の発光がワーク14の明るさに与えた影響を抽出する。その第1の処理は、第1の画像および第2の画像を構成する画素の輝度から、第1の画像中および第2の画像中にあるワーク14上の同じ位置を表わす画素を特定する処理である。その第2の処理は、制御用コンピュータ100自身が第1の処理にて特定した画素の輝度差および第1の画像および第2の画像に対応する光の光量差(上述の通り、これらの光量は制御用コンピュータ100のメモリ104に記憶されている)を算出する処理である。
S122にて、制御用コンピュータ100は、白色LED23からワーク14までの距離を推定する。制御用コンピュータ100は、光量差に対する輝度差の比が白色LED23からワーク14までの距離の2乗に反比例することを用いて、白色LED23からワーク14までの距離の推定値を算出する。S124にて、制御用コンピュータ100は、自らが算出した値を用いて、白色LED23およびカラーカメラ24がワーク14に近づくように、右アーム26を制御する。S126にて、制御用コンピュータ100は、ワーク14を把持させる。
以上のような構造およびフローチャートに基づく、ロボット10の動作について説明する。なお、以下の説明において、テーブル12およびワーク14は、反射光(反射光の光源は、複数の光源からの直接光および散乱光を含む)からなる環境光によって照射されているものとする。
図1に示すように、メインカメラ22はワーク14を上方から見下ろす位置に配置されている。メインカメラ22がこの位置に配置されているので、ロボット10は、ワーク14のおおまかな位置の認識およびワーク14の種類の推定が可能となる(メインカメラ22により撮像した画像の処理が必要)。ワーク14のおおまかな位置の認識およびワーク14の種類の推定が可能なので、ロボット10の制御用コンピュータ100は、ボディ部20上部に取付けたメインカメラ22によりテーブル12上のワーク14の状態を撮像する(S100)。ワーク14の状態が撮像されると、制御用コンピュータ100は、ワーク14の種類を決定する(S102)。ワーク14の種類が決定されると、制御用コンピュータ100は、ワーク14のおよその位置・姿勢情報を生成する(S104)。位置・姿勢情報が生成されると、制御用コンピュータ100は、環境光が白色LED23の輝度に比べて十分小さいか否かを判断する(S106)。この場合、ワーク14に照射されている環境光が強すぎると判断されるので(S106にてNO)、制御用コンピュータ100は、右アーム26および右ハンド30に対し、ビジュアルフィードバックを実施する。その目的は、ワーク14を把持する前に精密に位置決めする点にある。ビジュアルフィードバックは、近距離から撮像したワーク14の画像の内容に応じて実施される。カラーカメラ24は、このような撮像のために設けられたカメラである。このため、制御用コンピュータ100は、右アーム26、右ハンド30、および第1指34〜第3指38を「第2の位置」まで移動させる(S110)。
右アーム26などが移動すると、制御用コンピュータ100は、白色LED23を消灯した状態にする(S112)。カラーカメラ24は、ワーク14を撮像する。これにより、「第1の画像」が得られる。図7に、このとき撮像した「第1の画像」を示す。図7の中央にワーク14が写っている。図7の両脇の部分にテーブル12が写っている。便宜上、カメラ画像の各領域を、ワーク14の中心部40、ワーク14の周辺部42、およびテーブルの領域44に分類する。このときの中心部40および周辺部42の輝度はほぼ同一である。その理由は、この場合ワーク14に環境光のみが照射されている点にある。第1の画像が撮像されると、制御用コンピュータ100のメモリ104は、カラーカメラ24が撮像した第1の画像および白色LED23がワーク14に照射した光の光量を対応付けて記憶する。
「第1の画像」が得られると、制御用コンピュータ100は、白色LED23の光量を決定する(S114)。光量が決定されると、制御用コンピュータ100は、白色LED23の駆動電圧を計算する。駆動電圧が計算されると、制御用コンピュータ100は、その電圧値に基づいて白色LED23を発光させる(S116)。白色LED23が発光させられると、制御用コンピュータ100は、カラーカメラ24は、ワーク14を撮像する(S118)。これにより、「第2の画像」が得られる。このとき、制御用コンピュータ100は、同一の位置でワーク14を複数回撮像するように、カラーカメラ24および右アーム26を制御することとなる。また、制御用コンピュータ100は、カラーカメラ24がワーク14を複数回撮像する合間に光量が変化するように、白色LED23を制御することとなる。図8に、このとき撮像した「第2の画像」を示す。ワーク14の中心部40は、最も明るく照らされる。その理由は、白色LED23との距離が最も近い点にある。ワーク14の周辺部42は、白色LED23の発光の影響がやや小さくなる。その理由は、白色LED23との距離が中心部40に比較してやや遠くなる点にある。テーブルの領域44は、白色LED23が発光してもほとんど影響を受けることがない。その理由は、白色LED23と最も離れた領域である点にある。第2の画像が撮像されると、制御用コンピュータ100のメモリ104は、カラーカメラ24が撮像した第2の画像および白色LED23がワーク14に照射した光の光量を対応付けて記憶する。
「第2の画像」が得られると、制御用コンピュータ100は、計算により、白色LED23の発光がワーク14の明るさに与えた影響を抽出する(S120)。図9および図10を参照して、この影響について説明する。図9は、ワーク14とカラーカメラ24との位置の関係を表わす側面図である。図10は、ワーク14に光が照射された状況を表わす図である。図9の撮像の範囲50はカラーカメラ24が撮像する画像の範囲を示す。第1矢印52は白色LED23とワーク14との距離を示す矢印である。第2矢印54は白色LED23とテーブル12との距離を示す矢印である。ワーク14はテーブル12上にある。これにより、第2矢印54は第1矢印52より長くなる。このとき、ロボット10がカラーカメラ24をワーク14(ひいては白色LED23)に接近させればさせるほど、第2矢印54の第1矢印52に対する比率は大きくなる。この比率が大きくなると白色LED23の発光の影響が大きくなる(その理由は、この比率の2乗に反比例して白色LED23の発光の影響が小さくなる点にある)。すなわち、白色LED23の発光前に図10(A)の状態であっても、カラーカメラ24をワーク14に接近させると、図10(B)のようにワーク14の表面が明るく照らされる。カラーカメラ24がワーク14にそれほど接近していなければ、図10(C)のようにワーク14の表面はそれほど明るくならない。カラーカメラ24をワーク14に接近させればさせるほど、発光の影響が大きくなるので、テーブル12の明るさの変化とワーク14の明るさの変化との差が大きくなる。差が大きくなるので、影響を抽出することが容易になる。影響が抽出されると、制御用コンピュータ100は、白色LED23からワーク14までの距離を推定する(S122)。ワーク14の各点の距離を推定した後、制御用コンピュータ100は、自らが算出した値を用いて、白色LED23およびカラーカメラ24がワーク14に近づくように、右アーム26を制御する(S124)。右ハンド30および第1指34〜第3指38がワーク14の近傍へ移されると、制御用コンピュータ100は、ワーク14を把持させる(S126)。これにより、白色LED23からワーク14までの距離を推定する処理は、右ハンド30などをワーク14に近づけた後ワーク14を把持するという一連の動作中に実施されることとなる。距離を推定する処理が一連の動作中に実施されるので、ロボット10の動作は滑らかになる。
以上のようにして、本実施の形態に係るロボットは、発光体の光をワークの近距離から照射する。この照射によりワークの輝度は大幅に上昇する。ワークの背景の輝度はそれほど上昇しない。これにより、発光の前後の輝度の上昇幅を比較すると、セグメント化やワークの距離の推定が実現できる。ワークの距離を測定する専用のセンサなどが不要になる。
なお、制御用コンピュータ100は、第1の画像および第2の画像の輝度差が一定の閾値以上か否かに応じて、白色LED23からワーク14までの距離を粗く推定したり、ワーク14の中心部40および周辺部42とテーブルの領域44の領域を分離したりすることができる。
また、精密な画像の情報を得たい場合、制御用コンピュータ100は、セグメント化を行った後のワーク14の周辺に対して追加の画像処理を行えばよい。この場合に生じる処理時間のオーバヘッドは小さなものでしかない。その理由は、このとき実施される処理の内容が、画素を比較するような単純な処理にすぎない点にある。
また、S100〜S104にてメインカメラ22が撮像した画像を用いてワーク14の位置などを検出する代わりに、カラーカメラ24を予め定めておいた方向に向け、そのまま撮像してもよい。この場合、そのようにして撮像した画像が第1の画像や第2の画像となる(その結果、S102にて、制御用コンピュータ100は、テーブル12および予め登録されているワーク群の画像データと、カラーカメラ24が撮像したワーク14の画像データとを比較することにより、ワーク14の種類を決定すなわち識別することとなる)。そしてこの場合、カラーカメラ24は第1指34〜第3指38が届く範囲すべてを撮像することにより、第1の画像や第2の画像を得ることとなる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
本発明の実施の形態に係るロボットがテーブル上のワークを指で掴んで移動させる作業を表わす図である。 本発明の実施の形態に係る制御用コンピュータの制御ブロックを示す図である。 本発明の実施の形態に係るロボットの識別処理の制御の手順を示すフローチャート(その1)である。 本発明の実施の形態に係るロボットの識別処理の制御の手順を示すフローチャート(その2)である。 本発明の実施の形態に係るロボットの指およびカラーカメラの第1の位置を表わす図である。 本発明の実施の形態に係るロボットの指およびカラーカメラの第2の位置を表わす図である。 本発明の実施の形態に係るカラーカメラの映像(その1)を示す図である。 本発明の実施の形態に係るカラーカメラの映像(その2)を示す図である。 本発明の実施の形態に係るカラーカメラワークおよびカラーカメラの位置を表わす側面図である。 本発明の実施の形態に係るワークに光が照射された状況を表わす図である。
符号の説明
10 ロボット、12 テーブル、14 ワーク、20 ボディ部、22 メインカメラ、23 白色LED、24 カラーカメラ、26 右アーム、30 右ハンド、34 第1指、36 第2指、38 第3指、40 中心部、42 周辺部、44 テーブルの領域、50 撮像の範囲、52 第1矢印、54 第2矢印、100 制御用コンピュータ、102 CPU、104 メモリ、106 固定ディスク、108 キーボード、110 ディスプレイ、112 FD駆動装置、114 CD-ROM駆動装置、120 FD、122 CD-ROM。

Claims (6)

  1. 対象物に光を照射するための照射手段と、
    前記対象物を撮像する第1のカメラと、
    前記照射手段および第1のカメラを移動させるための移動手段と、
    前記対象物を、前記第1のカメラよりも広い範囲の背景を含むように撮像する第2のカメラと、
    前記第2のカメラが撮像した画像を用いて、前記対象物の位置を検出するための検出手段と、
    前記検出手段が検出した位置を用いて、前記第1のカメラが前記対象物を撮像する位置を決定するための決定手段と、
    前記決定手段が決定した同一の位置で前記対象物を複数回撮像するように、前記第1のカメラおよび前記移動手段を制御するための第1の制御手段と、
    前記第1のカメラが前記対象物を複数回撮像する合間に光量が変化するように、前記照射手段を制御するための第2の制御手段と、
    前記第1のカメラが撮像した複数の画像および前記照射手段が対象物に照射した光の光量を対応付けて記憶するための第1の記憶手段と、
    前記第1の記憶手段が記憶した画像を構成する画素の輝度から、光量が変化した前後に撮像した2種類以上の画像中にある対象物上の同じ位置を表わす画素を特定するための特定手段と、
    前記特定手段が特定した画素の輝度差および前記2種類以上の画像に対応する光の光量差を算出するための第1の算出手段と、
    前記光量差に対する前記輝度差の比が前記照射手段から前記対象物までの距離の2乗に反比例することを用いて、前記照射手段から前記対象物までの距離の推定値を算出するための第2の算出手段とを含む、推定装置。
  2. 前記移動手段は、前記照射手段および第1のカメラを前記対象物までの距離が等しくなるように移動させるための手段を含む、請求項1に記載の推定装置。
  3. 前記対象物までの距離が等しくなるように移動させるための手段は、前記照射手段および第1のカメラを同一の部材に前記対象物までの距離が等しくなるように固定して移動させるための手段を含む、請求項2に記載の推定装置。
  4. 前記推定装置は、前記対象物の撮像面に対する、前記照射手段からの光以外の光を遮蔽するための遮蔽手段をさらに含む、請求項1に記載の推定装置。
  5. 前記推定装置は、
    前記第1あるいは第2のカメラが撮像した画像のいずれかを用いて、前記対象物の種類を識別するための識別手段と、
    前記対象物の種類ごとに、前記対象物の表面の属性を表わす属性情報を記憶するための第2の記憶手段とをさらに含み、
    前記第2の算出手段は、前記属性情報を用いて、前記識別手段が識別した対象物の種類に対応するように、前記距離の推定値を算出するための手段を含む、請求項1に記載の推定装置。
  6. 対象物に光を照射するための照射手段と、
    前記対象物を撮像する第1のカメラと、
    前記対象物を、前記第1のカメラよりも広い範囲の背景を含むように撮像する第2のカメラと、
    前記第2のカメラが撮像した画像を用いて、前記対象物の位置を検出するための検出手段と、
    前記検出手段が検出した位置を用いて、前記第1のカメラが前記対象物を撮像する位置を決定するための決定手段と、
    前記照射手段および第1のカメラを移動させるための移動手段と、
    前記決定手段が決定した同一の位置で前記対象物を複数回撮像するように、前記第1のカメラおよび前記移動手段を制御するための第1の制御手段と、
    前記第1のカメラが前記対象物を複数回撮像する合間に光量が変化するように、前記照射手段を制御するための第2の制御手段と、
    前記第1のカメラが撮像した複数の画像および前記照射手段が対象物に照射した光の光量を対応付けて記憶するための記憶手段と、
    前記記憶手段が記憶した画像を構成する画素の輝度から、光量が変化した前後に撮像した2種類以上の画像中にある対象物上の同じ位置を表わす画素を特定するための特定手段と、
    前記特定手段が特定した画素の輝度差および前記2種類以上の画像に対応する光の光量差を算出するための第1の算出手段と、
    前記光量差に対する前記輝度差の比が前記照射手段から前記対象物までの距離の2乗に反比例することを用いて、前記照射手段から前記対象物までの距離の推定値を算出するための第2の算出手段と、
    前記第2の算出手段が算出した値を用いて、前記照射手段および第1のカメラが前記対象物に近づくように、前記移動手段を制御するための第3の制御手段と、
    前記移動手段に前記照射手段および第1のカメラの移動に従属して移動するように取付けられ、かつ前記対象物を把持するための把持手段とを含む、把持装置。
JP2004203669A 2004-07-09 2004-07-09 推定装置および把持装置 Withdrawn JP2006021300A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004203669A JP2006021300A (ja) 2004-07-09 2004-07-09 推定装置および把持装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004203669A JP2006021300A (ja) 2004-07-09 2004-07-09 推定装置および把持装置

Publications (1)

Publication Number Publication Date
JP2006021300A true JP2006021300A (ja) 2006-01-26

Family

ID=35794945

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004203669A Withdrawn JP2006021300A (ja) 2004-07-09 2004-07-09 推定装置および把持装置

Country Status (1)

Country Link
JP (1) JP2006021300A (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007319973A (ja) * 2006-05-31 2007-12-13 Hitachi Ltd ロボット装置
JP2009154240A (ja) * 2007-12-26 2009-07-16 Nec Access Technica Ltd ロボット、その行動制御方法およびその行動制御プログラム
JP2009294781A (ja) * 2008-06-03 2009-12-17 Toyota Central R&D Labs Inc 物体存在判定装置
CN101479082B (zh) * 2006-06-27 2011-07-13 丰田自动车株式会社 机器人装置和机器人装置的控制方法
JP2012228765A (ja) * 2011-04-27 2012-11-22 Toyota Motor Corp ロボット、ロボットの動作方法、及びプログラム
JP2014176937A (ja) * 2013-03-15 2014-09-25 Yaskawa Electric Corp ロボットシステム及び被作業物の製造方法
US20160052135A1 (en) * 2014-08-25 2016-02-25 Seiko Epson Corporation Robot and robot system
CN106325302A (zh) * 2015-06-17 2017-01-11 电子科技大学 一种移动物体位置跟踪平台、跟踪装置及跟踪方法
CN106625675A (zh) * 2016-12-29 2017-05-10 芜湖哈特机器人产业技术研究院有限公司 用于引导机器人智能抓取的嵌入式测控系统和方法
JP2019152518A (ja) * 2018-03-02 2019-09-12 セイコーエプソン株式会社 検査装置、検査システム、及び検査方法
WO2020044491A1 (ja) * 2018-08-30 2020-03-05 TechShare株式会社 ロボット
US10850370B2 (en) 2018-03-13 2020-12-01 Kabushiki Kaisha Toshiba Holding device, flight body, and transport system
WO2022168350A1 (ja) * 2021-02-03 2022-08-11 株式会社Pfu 物体認識装置および物体処理装置

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007319973A (ja) * 2006-05-31 2007-12-13 Hitachi Ltd ロボット装置
JP4578438B2 (ja) * 2006-05-31 2010-11-10 株式会社日立製作所 ロボット装置
CN101479082B (zh) * 2006-06-27 2011-07-13 丰田自动车株式会社 机器人装置和机器人装置的控制方法
JP2009154240A (ja) * 2007-12-26 2009-07-16 Nec Access Technica Ltd ロボット、その行動制御方法およびその行動制御プログラム
JP2009294781A (ja) * 2008-06-03 2009-12-17 Toyota Central R&D Labs Inc 物体存在判定装置
JP2012228765A (ja) * 2011-04-27 2012-11-22 Toyota Motor Corp ロボット、ロボットの動作方法、及びプログラム
JP2014176937A (ja) * 2013-03-15 2014-09-25 Yaskawa Electric Corp ロボットシステム及び被作業物の製造方法
US9132554B2 (en) 2013-03-15 2015-09-15 Kabushiki Kaisha Yaskawa Denki Robot system and method for producing to-be-processed material
US20160052135A1 (en) * 2014-08-25 2016-02-25 Seiko Epson Corporation Robot and robot system
CN106325302A (zh) * 2015-06-17 2017-01-11 电子科技大学 一种移动物体位置跟踪平台、跟踪装置及跟踪方法
CN106625675A (zh) * 2016-12-29 2017-05-10 芜湖哈特机器人产业技术研究院有限公司 用于引导机器人智能抓取的嵌入式测控系统和方法
JP2019152518A (ja) * 2018-03-02 2019-09-12 セイコーエプソン株式会社 検査装置、検査システム、及び検査方法
US10850370B2 (en) 2018-03-13 2020-12-01 Kabushiki Kaisha Toshiba Holding device, flight body, and transport system
WO2020044491A1 (ja) * 2018-08-30 2020-03-05 TechShare株式会社 ロボット
JPWO2020044491A1 (ja) * 2018-08-30 2021-08-10 TechShare株式会社 ロボット
WO2022168350A1 (ja) * 2021-02-03 2022-08-11 株式会社Pfu 物体認識装置および物体処理装置
JP7442697B2 (ja) 2021-02-03 2024-03-04 株式会社Pfu 物体認識装置および物体処理装置

Similar Documents

Publication Publication Date Title
US10839261B2 (en) Information processing apparatus, information processing method, and storage medium
US11691273B2 (en) Generating a model for an object encountered by a robot
JP4309439B2 (ja) 対象物取出装置
KR100920931B1 (ko) Tof 카메라를 이용한 로봇의 물체 자세 인식 방법
US8244402B2 (en) Visual perception system and method for a humanoid robot
US7203573B2 (en) Workpiece taking-out apparatus
KR101453234B1 (ko) 워크 취출 장치
KR20080029548A (ko) 실사기반 이동기기 제어 방법 및 장치
JP2006021300A (ja) 推定装置および把持装置
US20170142340A1 (en) Image processing apparatus, robot system, robot, and image processing method
JP2019089188A (ja) 作動システムおよびプログラム
JP5145606B2 (ja) 変形性薄物展開装置
JP5145605B2 (ja) 変形性薄物展開装置
US9595095B2 (en) Robot system
JP5609760B2 (ja) ロボット、ロボットの動作方法、及びプログラム
JP2010058243A (ja) ピッキング装置
KR102267514B1 (ko) 작업대상물의 피킹 및 플레이스 방법
JP2018146347A (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
EP4094904B1 (en) Robot system control device, robot system control method, computer control program, and robot system
KR101820241B1 (ko) 그리퍼를 이용한 물체의 움직임 추정 장치 및 그 방법
JP2006007390A (ja) 撮像装置、撮像方法、撮像プログラム、撮像プログラムを記録したコンピュータ読取可能な記録媒体
CN116175542A (zh) 抓取控制方法、装置、电子设备和存储介质
WO2019093299A1 (ja) 位置情報取得装置およびそれを備えたロボット制御装置
US20230415349A1 (en) Method for controlling a robot for manipulating, in particular picking up, an object
WO2023112337A1 (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: 20071002