JP4504433B2 - オブジェクト探索装置及び方法 - Google Patents

オブジェクト探索装置及び方法 Download PDF

Info

Publication number
JP4504433B2
JP4504433B2 JP2008018105A JP2008018105A JP4504433B2 JP 4504433 B2 JP4504433 B2 JP 4504433B2 JP 2008018105 A JP2008018105 A JP 2008018105A JP 2008018105 A JP2008018105 A JP 2008018105A JP 4504433 B2 JP4504433 B2 JP 4504433B2
Authority
JP
Japan
Prior art keywords
information
object information
target
search
detecting
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.)
Active
Application number
JP2008018105A
Other languages
English (en)
Other versions
JP2009181222A (ja
Inventor
学 西山
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008018105A priority Critical patent/JP4504433B2/ja
Priority to US12/360,511 priority patent/US8116904B2/en
Priority to US12/361,002 priority patent/US7842982B2/en
Publication of JP2009181222A publication Critical patent/JP2009181222A/ja
Application granted granted Critical
Publication of JP4504433B2 publication Critical patent/JP4504433B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0003Home robots, i.e. small robots for domestic use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49302Part, workpiece, code, tool identification

Description

本発明は、環境内に散在するオブジェクトを探索するオブジェクト探索装置に関する。
視覚情報等を用いて対象オブジェクトの位置をセンシングし、検出した情報を基にマニピュレータ装置を制御するようなロボットシステムは産業用、研究用を問わず、数多く存在する。家庭内にロボットシステムを導入して、食器やペットボトルなどのオブジェクトを取ってこさせたり、別の場所に運ばせたりする場合、対象となるオブジェクトはロボットから見えるところに置いてあるとは限らず、棚の中にあったり、冷蔵庫に入っていたりすることが多々ある。このような状況で確実に目標オブジェクトを見つけるためには、オブジェクトAがオブジェクトBの中に入っている(もしくはBの上においてある)といったオブジェクト同士の包含関係や位置関係(以下では階層関係と呼ぶ)を何らかの形で把握する必要がある。
例えば特許文献1に記載されている、オブジェクトの階層関係の管理手法では、検索対象オブジェクトにRFID(Radio Frequency Identification)タグを取り付けておき、棚など所定の箇所にタグリーダを設置する。そして、各オブジェクトがある棚に置かれた時に、その棚に設定されているタグリーダにより当該オブジェクトのRFIDタグ情報が読み出されることにより、当該オブジェクトがその棚に置かれているかという階層関係を記憶する。各棚に設置されている各タグリーダは予め階層的に管理され、しかも各オブジェクトと、該オブジェクトが置かれている棚との階層関係を上記のように記憶することにより、目的とする特定のオブジェクトに対して例えば“棚Aの3段目の引き出しの中にある”といった階層的な位置情報で管理される。
このように複数のオブジェクトの位置が予め階層的に管理されていると、例えば、棚Aの3番目の引き出しの中にある所望のオブジェクトを見つける場合には、最初に棚Aを見つけた後に、棚Aの3番目の引き出しを見つけ、さらに、その引き出しのなかから当該所望のオブジェクトを見つけるというように、当該階層構造を考慮した適切な順序で短時間に所望のオブジェクトを探索できるようになり、所望のオブジェクトに到達する確実性が大幅に向上することが期待できる。
特開2007−34356号公報
しかし、上記のようにして、複数のオブジェクトの位置を、該複数のオブジェクトが収納される棚やその中の引き出しなどの収納設備の階層構造を用いて予め記憶して管理するには、各オブジェクト棚や引き出しなどの各収納位置にタグリーダを設置しておく必要がある。さらに設置されている全タグリーダの階層関係や、各タグリーダにより検知された各オブジェクトの位置情報を記憶するためのデータベースが必要となる。これは実現可能な構成ではあるものの、家庭内など小規模な環境で実現するには装置が非常に大掛かりとなる。
このように、従来は、家庭(宅内)などの比較的小規模な環境内に散在する複数のオブジェクト(例えば器、道具類など)を、階層的な位置関係を用いて容易に探索することができないという問題点があった。
そこで、本発明は上記問題点に鑑み、散在する複数のオブジェクトを容易に探索することができるオブジェクト探索装置及び方法を提供することを目的とする。
オブジェクト探索装置は、
目的オブジェクトを入力する入力手段と、
ICタグから、該ICタグを貼り付けるオブジェクトの識別子、階層レベル、該オブジェクトを検出するための画像処理の種類を含む該オブジェクトを検出するための検出方法、及び該オブジェクトの操作方法を含むオブジェクト情報を取得する取得手段と、
前記取得手段で取得された、目的オブジェクトのオブジェクト情報を含むオブジェクト情報群から、該目的オブジェクトよりも前記階層レベルの高いオブジェクト情報及び該目的オブジェクトのオブジェクト情報のうちの1つを、前記階層レベルの高い順に選択する選択手段と、
画像を取得し該画像から前記オブジェクトを検出する画像処理手段と、
前記選択手段で選択されたオブジェクト情報中の前記検出方法を用いて、当該オブジェクト情報に対応するオブジェクトを検出する検出手段と、
前記検出手段で検出されたオブジェクトを、該オブジェクトのオブジェクト情報中の前記操作方法に従って操作する操作手段と、
前記操作手段によって操作されるマニピュレータと、
を含み、
前記検出手段は、前記目的オブジェクトより前記階層レベルの高いオブジェクト及び該オブジェクトが有するオブジェクトを前記階層レベルの高いオブジェクトから下位の前記階層レベルのオブジェクトへ順次検出することにより、該目的オブジェクトを検出する。
散在する複数のオブジェクトを容易に探索することができる。
以下、本発明の実施形態について図面を参照して説明する。
ここでは、宅内に散在する道具や器などのオブジェクトを探索する場合を例にとり説明する。宅内に散在する各オブジェクトには、RFIDのICタグ(無線タグ)が設けられている(例えば各オブジェクトへのICタグの貼り付け)。
図1は、本実施形態に係るオブジェクト探索装置1の構成例を示したものである。図1に示すように、オブジェクト探索装置1は、タグ読み取り部2、探索制御部3、オブジェクト検出部4、移動部5、マニピュレータ操作部6、入力部7、及び通信部8を含む。
タグ読み取り部2は、各オブジェクトに貼付されたICタグに記憶されているオブジェクト情報を読み出すためのRFIDタグリーダ105を含む。
探索制御部3は、タグ読み取り部2で読み取られたオブジェクト情報を用いて、次に行うべきオブジェクト探索装置の処理動作や処理手順を決定し、タグ読み取り部2、オブジェクト検出部4、移動部5、マニピュレータ操作部6などを制御する。例えば、より下位の階層にあるオブジェクトの探索処理を行うか、タグ読み取り部2でオブジェクト情報を受信する受信範囲を変えて、現在取得したオブジェクト情報以外の他のオブジェクト情報を取得するための探索処理を行うかなどの探索処理の手順などを決定する。
オブジェクト検出部4は、探索制御部4から指示に従って、オブジェクトの検出処理を行う。
マニピュレータ操作部6は、探索制御部4からの指示に従って、オブジェクトを掴むなどのハンドリングするために、アームなどを操作する。
入力部7は、オブジェクト探索装置1に探索命令などをオブジェクト探索装置1に入力するためのものである。
通信部8は、PDAやパーソナルコンピュータ、リモコンなどの端末と通信を行うことにより、端末からオブジェクト探索装置1に入力された探索命令などを入力する。
入力部7や通信部8を介して入力された探索命令は、探索制御部3に送られる。
移動部5は、探索制御部4からの指示に従って、例えば車輪などを駆動して、オブジェクト探索装置1の位置(少なくとも、タグ読取部2、オブジェクト検出部4、及びアーム104のいずれかの位置)を移動させる。
図2は、図1のオブジェクト検出部4の構成例を示したものである。図2のオブジェクト検出部4は、画像を取得して、その画像からオブジェクトを検出するものである。図2のオブジェク検出部4は、カメラ等を含む撮像部4aと、撮像部4aで得られた画像データからオブジェクトを検出するための画像処理を行う画像処理部4bとを含む。画像処理部4bは、複数種類の画像処理プログラムを記憶するメモリと、該メモリに記憶されているプログラムを実行するためのプロセッサとを含む。プロセッサは、メモリに記憶されている複数種類の画像処理プログラムのうち、探索制御部3から指示された画像処理プログラムを実行して、撮像部4aで撮像された画像から目的とするオブジェクトを検出し、検出結果を探索制御部3へ通知する。
図3は、図2に示した構成のオブジェクト検出部4を有するブジェクト探索装置1の一例を示したもので、ここでは、移動ロボットの例を示している。
図3のロボットの目101、102は、それぞれオブジェクトの画像を取得する撮像部4aである。さらに、移動部5により駆動される車輪103、マニピュレータ操作部6により操作されて、オブジェクトをハンドリングするために用いるアーム104を装備している。胸部に装備されたRFIDタグリーダ105はタグ読み取り部2の一部である。
このような構成のロボットは、その入力部7から、例えば、“ペットボトルを取ってきて”といった、探索対象のオブジェクトを指示する探索命令を受けると、ペットボトルを目標オブジェクトとして家庭環境内を探し回り、当該ペットボトルが冷蔵庫の中にあることを検出して、当該ペットボトルを持ち帰る、という動作を行う。
ここで、家庭環境内で、図1のオブジェクト探索装置1の探索対象となる複数のオブジェクトについて、図4を参照して説明する。
ここで、オブジェクトとは、図4に示すように、食器303、306、310、ペットボトル302、カップ307、グラス311などの「ハンドリング対象」(オブジェクト探索装置1の探索対象となる)レベルのオブジェクトの他、冷蔵庫301、テーブル308、食器棚309などの「家具」レベルのオブジェクトや、冷蔵庫301の中の棚321〜323、食器棚309の段や引き出し312〜314といった「容器」レベルのオブジェクトがある。さらに、「家具」レベル、「容器」レベル、「ハンドリング対象」レベルの各レベルに属するオブジェクトを含む「部屋」レベルのオブジェクトがある。
これら各オブジェクトの階層レベルは、「部屋」が最も高く、「部屋」の下に当該「部屋」に配置されている「家具」があり、「家具」の下に、当該「家具」の棚や引き出しに対応する「容器」があり、「容器」の下に、当該「容器」に置かれた「ハンドリング対象」となる。
各オブジェクトには、その種類に応じて、予め階層レベルが定められている。ここでは、階層レベルは数値で表されている。例えば、「部屋」レベルは「1」、「家具」レベルは「2」、「容器」レベルは「3」、「ハンドリング対象」レベルは「4」という整数値で表現する。ここでは例えば値が小さいほど階層レベルが上位であることを示す。
ICタグを貼り付けるオブジェクトには、階層レベルを付与する必要があるが、「容器」レベルである引き出しの中に入っている箱のように中間階層に属すると判断されるオブジェクトに関しては「3.5」など、中間に属することを表す実数値を階層レベルとして与える。
各オブジェクトに貼り付けられているICタグには、オブジェクト情報が記憶されている。オブジェクト情報には、以下に示すような情報が含まれている。
・該オブジェクトの固有の識別子(タグID)
・該オブジェクトの種類(例えば、冷蔵庫、テーブル、食器棚、冷蔵庫の中の1番目の棚、ペットボトル、皿など)
・該オブジェクトが、「ハンドリング対象」、「容器」、「家具」、「部屋」などのどの階層に属するのかを表す階層レベル
・該オブジェクトを検出するための検出方法(該オブジェクトを検出するために必要な画像処理の種類(例えば、画像処理プログラムの識別情報など)や、該画像処理に用いるパラメータ(例えば該オブジェクトと判定するために必要な特徴情報(条件、パラメータなど))
・該オブジェクトの下位階層へ移行するための該オブジェクトの操作方法(例えば、該オブジェクトの開扉方法(扉を開けるための把持点や把持姿勢、動作方向)など、該オブジェクトが有する(該オブジェクトよりも階層レベルの低い)オブジェクト群を検出するために必要な該オブジェクトの操作方法)、または該オブジェクトのハンドリング方法
なお、上記オブジェクト情報は、ICタグの記憶領域に直接書き込んでおいても良いし、ICタグからは当該タグのIDのみを読み出して、別に用意されているデータベースに対しこのIDをキーとして、上記オブジェクト情報をデータベースから読み出す、という形態の実装であっても構わない。
図5は、冷蔵庫301のオブジェクト情報の一例を示したもので、図6は、カップ307のオブジェクト情報の一例を示したものである。
図5の冷蔵庫のオブジェクト情報は、そのタグIDや種別、階層レベルの他、検出方法として、撮像部4aで得られた画像データから色成分を抽出するための画像処理プログラムの識別情報と、抽出された色成分値に対し、該冷蔵庫と判定するために必要なパラメータ(抽出された色成分値が当該冷蔵庫であると判定するための各色毎の閾値など)が含まれている。また、操作方法として、扉の取っ手の座標と、該取っ手を引っ張ること、とが含まれている。
図6のカップのオブジェクト情報は、そのタグIDや種別、階層レベルの他、検出方法として、撮像部4aで得られた画像データから楕円形状を検出するための画像処理プログラムの識別情報と、当該画像処理に必要なパラメータ(抽出された楕円が当該カップであると判定するための楕円のサイズなど)が含まれている。また、操作方法として、カップの取っ手の座標と、該取っ手を握ること、とが含まれている。
画像処理部4b内のメモリには、オブジェクト検出のために必要な複数種類の画像処理プログラムが記憶されている。当該メモリには、
(1)画素のRGB値に対する閾値を使った領域検出処理
(2)物体のテクスチャ情報をテンプレートとして画像中から類似の物体を検出するテンプレートマッチング処理
(3)画像中のエッジ成分から楕円形をした部分を検出する楕円検出処理
などの複数種類の画像処理プログラムが記憶されている。
上記(1)の領域検出処理では、パラメータとして、画素のR、G、Bそれぞれに対する閾値の条件を受け取る。この条件は例えば「R>150,G<230,Bは条件なし」といったものである。このようなパラメータは数値列もしくは文字列で表されて、オブジェクト情報に含まれている。
処理手順としては、まず、撮像部4aから画像処理部4bに入力された画像中の各画素に対しパラメータとして与えられる閾値条件に合致するか否かを判定し、その成否で画像を二値化する。続いて二値化された画像に対し、条件に合致する画素が連続する領域ごとに分割していく。得られた複数の領域のうち、面積があらかじめ定められた閾値以上である領域が存在すればそれを検出領域として検出する(目的のオブジェクトの検出成功)。複数のカメラを用いて対象領域を撮影し、そのうち1つの画像で以上のような処理を行う。そして検出された領域をテンプレートとして別の画像に対しテンプレートマッチングを行う。ステレオ視の原理を用いれば、検出した物体の3次元位置情報を取得することも可能である。
上記の(2)のテンプレートマッチング処理において、テンプレートして用いるのは検出したい物体を撮影した画像である。このテンプレートと同じサイズの画像を撮像部4aで撮像された画像から切り出すことを繰り返し行って、最も類似度の高い位置を探索する。類似度が最も高く、かつそのときの類似度があらかじめ決めておいた閾値よりも高ければ、画像中のその領域が検出したい物体であると判定する。類似度はテンプレートと入力画像の画素値の差分の絶対値の総計や差分の二乗の総計などを用いることが出来る。前述の(1)の閾値を用いた領域検出処理と同様に、複数の画像間でステレオ視を行うことによって検出物体の3次元位置を算出可能である。また、画像中の無効領域については探索しない。テンプレートマッチング処理の場合、物体ごとにテンプレートが異なるため、画像処理情報に含まれるパラメータはマッチングにより見つけるべき物体のテンプレートを表すIDである。これは整数値で記述することが出来る。
上記(3)の楕円検出処理は、お椀や皿のように円形部分を持つ物体を検出するのに用いる。その処理手順はまず、撮像部4aで取得した画像に対しCannyオペレータなどの手法でエッジ情報を抽出する。次にエッジ情報を連結したエッジごとに分割する。分割されたエッジに対し、楕円の方程式
Ax+By+Cxy+Dx+Ey+F=0
に当てはめたときのパラメータA,B,C,D,E,Fを最小二乗法により求める。そして求められた楕円とエッジがどのくらい離れているかを求めて楕円の良さを評価する。この評価値が一定値以上のものを楕円形の物体であると判断する。このアルゴリズムの場合、ステレオ視を使うことにより、物体の3次元位置だけでなく、検出した楕円の実際のサイズを求めることができる。このサイズ情報を用いて物体の絞り込みを行う。したがって、楕円検出処理でオブジェクトの判定に用いる閾値条件のパラメータとして、該オブジェクト(楕円)の実際のサイズを用いる。これが、オブジェクト情報に、当該オブジェクトの検出方法として含まれている。例えば、“この皿は半径60mmである”といったように実数値で記述された閾値条件が、オブジェクト情報に含まれている。
オブジェクト情報から得られる検出方法のうち、その検出処理に用いるパラメータは上述のような数値列もしくは文字列で表現可能である。ここで挙げた3つの画像処理はあくまで例であり、実際に実装されるべき画像処理を限定するものではない。しかし、各画像処理に与える情報は、上述の例と同様、ICタグやデータベースに記録することが可能である。また、画像処理プログラムのIDは、通し番号あるいはプログラム名を表す文字列を使って表現できる。
次に、図1のオブジェクト探索装置(図3のロボット)1の処理動作について、図7に示すフローチャートを参照して説明する。
ここでは、家庭内のどこかの部屋に待機しているロボット1が、ユーザから「IDがbe9f3e27-8869-4052のペットボトルを取ってきて」のようなハンドリング対象オブジェクトだけが指定された探索命令を受けた場合を例にとり説明する。ユーザからの探索命令は、入力部7や通信部8から入力される。
ユーザは、例えば、入力部7が有するディスプレイに表示されているオブジェクトの一覧表から、所望のオブジェクトを選択することにより、あるいは音声にて、所望のオブジェクト名「ペットボトル」を発声して音声認識により、当該所望のオブジェクトに対応するID(タグID)を入力する。音声入力を行う場合には、入力部7は音声認識機能をもつ必要がある。例えば、「ペットボトル」あるいはこれを指定するコマンドを音声で入力する。入力部7は音声認識した結果から、これに対応するIDを得る。
ユーザは、所持する端末から、通信部8を介して上記同様に所望のオブジェクトのIDを入力してもよい。該端末は、PDAやパーソナルコンピュータであってもよい。また、音声認識機能を備えていてもよい。例えば、端末が有するディスプレイに表示されているオブジェクトの一覧表から、所望のオブジェクトを選択することにより、あるいは音声にて、「ペットボトル」を指定することで、当該IDを入力する。
ここで、階層レベルが「部屋」であるオブジェクトについて説明する。「部屋」レベルのオブジェクト情報は、実際の部屋そのものではなく、部屋間の仕切りとなるドアやふすま、アコーディオンカーテンなどのオブジェクトに付与する。1つの仕切りには両方の部屋に対応するタグを貼り付けておき、同じ部屋につながる複数の仕切りには同じIDを割り当てるか、「種類」によって同じ部屋であることが認識できるようにしておく。2つの部屋間が直接ドア等で仕切られている場合は、このように「部屋」レベルのオブジェクト情報を設定しても、仕切りの存在そのものが部屋の存在に対応しているため問題ない。一方、廊下を介して2つの部屋が接続されている場合についても、廊下自体を1つの部屋であると解釈すれば、“仕切りの存在=部屋の存在”の対応が成り立つ。
図7は、命令を受けたロボット1の探索動作における部屋間の移動手順を説明したものである。入力部7あるいは通信部8を介して探索命令を受けたロボット1の探索制御部3は、移動部5に指示を出して、車輪を駆動させることにより、待機していた部屋内を検出対象の目的オブジェクト(ここでは、“IDがbe9f3e27-8869-4052のペットボトル”)を求めて探索する(ステップS1)。各部屋内での探索手順については後述するが、この探索の段階で、ドアなど「部屋」レベルのオブジェクトのオブジェクト情報をタグ読み取り部2で受信した場合は、それを例えば探索制御部3内のメモリに記憶しておく。すなわち、現在探索中の部屋及びそれ以外の部屋の複数のオブジェクト情報を受信した場合には、それを当該メモリに記憶しておく。
この部屋の探索を終えると、ステップS2へ進み、探索制御部3は、それまでに受信されたオブジェクト情報を基に、目的オブジェクトが検出されたどうか判定する。検出された場合はステップS5へ進み、探索制御部3は、「探索成功」を返す。このとき、通信部8を介して、ユーザが所持する端末へ、「探索成功」を示すメッセージを送信してもよい。実際はこの後目的オブジェクトを掴んで別の部屋に運ぶなど、アプリケーションに合わせた処理動作を探索制御部3の指示により実行することになる。一方、ステップS2において、目的オブジェクトを検出できなかった場合は、ステップS3へ進む。
ステップS3では、ステップS1の探索行動中に受信した「部屋」レベルの複数のオブジェクト情報のうち、まだ探索していない部屋がある場合には、ステップS4へ進み、未探索の部屋のオブジェクト情報がない場合には、全ての部屋を巡回し探索し終えたことになり、この場合にはステップS6へ進む。なお、部屋内のドアにタグを貼り付けていない場合は最初の部屋の探索直後にステップS6に進むことになる。ステップS6では、探索制御部3は、「探索失敗」を返し、処理を終了する。このとき、通信部8を介して、ユーザが所持する端末へ、「探索失敗」を示すメッセージを送信してもよい。探索失敗と判定された後、ロボット1にどのような行動をとらせるかはこのシステムを利用したアプリケーションによって決まる。
ステップS3において、探索していない部屋が残っている場合、ステップS4へ進むが、ステップS4では、未探索の「部屋」レベルのオブジェクトのオブジェクト情報のなかからの1つを選択し、当該部屋に移動する。具体的な部屋(そのオブジェクト情報)の選択方法の1つとしては、未探索の「部屋」レベルのオブジェクト情報をタグ読み取り部2で受信される度に、探索制御部3は、その内部に設けられたスタックメモリ内に、当該オブジェクト情報あるいはそのオブジェクトIDをプッシュしていく方法がある。この場合、ステップS4では、このスタックメモリから最後に追加された最も新しいオブジェクト情報を1つ読み出す。この方法だと出来るだけ今の部屋から近い部屋を選択することになり、効率的な移動が期待できる。移動のためのドア(仕切り)の検出およびノブの操作等は部屋内の探索と同じ処理である(後述)。
以上の手順により、ロボット1が、複数の部屋間を移動しながら、目的オブジェクトの探索を行うことにより、家庭環境の複雑な地図データが無くても全ての部屋の巡回が可能になるし、ドアにタグを貼り付けないことで進入禁止の部屋を簡単に設定できるという副次的な効果がある。
次に、図8のフローチャートを参照して、図1のステップS1〜ステップS3における各部屋での探索処理手順について、より詳細に説明する。以下の説明では“IDがbe9f3e27-8869-4052のペットボトルを取ってきて”という探索命令を受けたロボット1が、図4に示したように、オブジェクト群が配置されたダイニングキッチン(DK)に入ってきて、この中にあるペットボトル302を探す、という場面を想定する。図4では、各オブジェクトの階層的な位置関係は、図9のようになるが、本実施形態では、このような階層的な位置関係自体は記憶・管理する必要がない。探索行動中に受信されるオブジェクト情報中の階層レベルから、図10のように、各オブジェクトの属する階層レベルは認識する。受信される各オブジェクトのオブジェクト情報から、その上位や下位の階層との接続関係(オブジェクト間の階層的位置関係)までは認識する必要はない。ロボット1は、図8に示したような処理動作を行うことにより、オブジェクト情報を受信した複数のオブジェクト間の階層的な位置関係を認識する。
図8のステップS11では、ロボット1の探索制御部3は、移動部5に指示を出して、車輪を駆動させることにより部屋内を巡回しながら、タグ読取部2でロボット1周辺にある各ICタグからオブジェクト情報を読み取る。ICタグからのオブジェクト情報を受信すると、探索制御部3は、当該オブジェクト情報中に階層レベルが「部屋」レベルであるものがあるか、または当該オブジェクト情報中のタグIDが探索対象のオブジェクト(目的オブジェクト)のIDと一致するものがあるかを調べる。
受信したオブジェクト情報中の階層レベルが「部屋」レベルであるものがある場合には(ステップS12)、ステップS13へ進み、当該オブジェクト情報を探索制御部3内のスタックにプッシュする。スタックに記憶された「部屋」レベルのオブジェクト情報は、前述したように、図7の部屋間の移動に利用される。
その後、または受信したオブジェクト情報中の階層レベルが「部屋」レベルであるものがない場合には、ステップS14へ進み、当該オブジェクト情報中にタグIDが探索対象のオブジェクト(目的オブジェクト)のIDと一致するものがあるかを調べる。目的オブジェクトのIDをもつオブジェクト情報がない場合には、ロボット1の現在位置の周辺に目的オブジェクトはないことを表すため、ステップS23、ステップS11へと進み、そのまま巡回を続ける。ステップS14で、目的オブジェクトのIDをもつオブジェクト情報が受信された場合には、目的オブジェクトは現在位置の近くにあるということであり、探索制御部3は巡回を停止して、ステップS15へ進み、本格的な探索を開始する。
なお、ステップS11で受信したオブジェクト情報に「部屋」レベルのオブジェクト情報も、目的オブジェクトのオブジェクト情報もない場合、またはオブジェクト情報が受信されなかった場合には、ステップS23へ進む。ステップS23において、部屋内の巡回が終わったときには、当該部屋の探索を終了する。この後、図7のステップS4へ進む。巡回を終えていない場合は、ステップS11に戻って同じ手順を繰り返す。
ステップS15以降では、目的オブジェクトの位置を絞り込んだ後に行う探索処理である。まず、ステップS15では、探索制御部3は、巡回移動行動を停止して、目的オブジェクトのオブジェクト情報と、それととともに受信された、「部屋」レベル以外のオブジェクト情報とを含むオブジェクト情報群を探索制御部3内のメモリに記録する。
図4の環境において、ペットボトルのICタグからそのオブジェクト情報を受信する際に、これと同時に受信されるオブジェクト情報群から得られた各オブジェクトの階層レベルの例を図11に示す。目的オブジェクトのオブジェクト情報とともに受信される(目的オブジェクトのオブジェクト情報を含む)オブジェクト情報群の発信元のオブジェクト群は、目的オブジェクトの近くにあるということだから、当該オブジェクト情報群は目的オブジェクトと階層的な位置関係にある可能性が高い。しかし、実際の関係は分からないままである。そのため、以下では、受信された各オブジェクト情報の階層レベルを基に、図12に示すように、階層的な位置関係の可能性を仮定した上で探索を行っていく。
まず、ステップS16では、探索制御部3は、受信されたオブジェクト情報群のうち、最も階層レベルの高いものから1つを選択する。図12の例では冷蔵庫のオブジェクト情報が選択される。冷蔵庫は「家具」レベルであるが、これを選ぶということは、この中に目的のペットボトルが入っていると仮定して先に冷蔵庫を見つける、という手順を踏んでいることに相当する。
次に、ステップS17では、当該選択したオブジェクト情報(ここでは、図5の冷蔵庫のオブジェクト情報)中の検出方法を用いて、オブジェクト検出部4が、当該オブジェクトに対応する検出処理を行う。
オブジェクト検出部4の画像処理部4bは、探索制御部3から図5のオブジェクト情報中の検出方法(画像処理プログラムの識別情報や、パラメータなどを含む)を受け取り、冷蔵庫の検出のために、閾値を用いた領域検出処理を行う。すなわち、画像処理部4bは、そのメモリから領域検出処理プログラムをロードして実行する。冷蔵庫は「家具」レベルであるから、他の物の中に入っていることはないため、ロボットが探索を開始した地点から周囲を見回せば必ず見つかるはずである。冷蔵庫が検出された場合には(検出成功)、オブジェクト検出部4は、その旨を探索制御部3へ返し、ステップS18へ進む。
ステップS18において、探索制御部3は、当該検出されたオブジェクトが目的オブジェクトである場合には、さらにステップS19へ進み、目的オブジェクトの探索成功と決定する。ステップS17で検出されたオブジェクトが目的のオブジェクトでない場合には、ステップS20へ進み、当該検出されたオブジェクトの「内部」をさらに探索する。
ステップS20では、探索制御部3は、ステップS15で得られたオブジェクト情報群のなかに、ステップS17で検出されたオブジェクトよりも下位の階層レベルのオブジェクト情報があるかどうかを調べる。下位の階層レベルのオブジェクト情報がある場合、それらが当該検出されたオブジェクト(ここでは冷蔵庫)の中にあると仮定して、ステップS21へ進む。
ステップS21では、当該検出されたオブジェクト(ここでは冷蔵庫)の内部を探索するため、探索制御部3は、当該オブジェクト情報中の操作方法を実行する。例えば、ここでは、操作方法として、扉の取っ手の座標と、該取っ手を引っ張ること、とが含まれているので、マニピュレータ操作部6に対し、ロボット1のアーム104が当該取っ手を掴み引っ張るように制御する。
図5のオブジェクト情報であれば、冷蔵庫オブジェクトの基準点からの相対座標が指定されているため、その点をアーム104で掴んで手前に引く、という作業を実行する。操作の実行に際し、ロボットは移動を行うことが出来る。テーブルなど、特に操作の必要なく内部(実際はテーブルの上)を探索できる場合は操作に関する情報は指定されない。
上記のような操作が終わると、ステップS22へ進み、探索制御部3は、ステップS15で得られたオブジェクト情報群のうち、当該冷蔵庫オブジェクトよりも階層レベルが低く、その中で最も階層レベルが高いものを選択して、これを新たな検出対象のオブジェクトとし、ステップS17へ戻る。これは図12の破線を辿って1つ下の階層に下りることに相当する。「容器」レベル以降は冷蔵庫に入っていないかもしれないので、ステップS17で実行される検出処理に失敗する可能性がある。
なお、図12に示すように、容器レベルよりも下位の階層は検出範囲が冷蔵庫の中に限定されるため、冷蔵庫の中を見回して画像処理で検出されないのであれば検出失敗と判定できる。検出失敗の場合はステップS20に進み、探索制御部3は、検出失敗したオブジェクトと同レベル以下のオブジェクトのうち、まだ検出対象として選択されていないオブジェクト情報があれば、ステップS21へ進み、そのうちで最も階層レベルの高いオブジェクト情報を1つ選択する。そして、選択したオブジェクト情報を新たな検出対象として、ステップS17へ戻り、上記同様の処理を繰り返す。
図9の階層関係は冷蔵庫を頂点とした探索により目的オブジェクトのペットボトルが見つかる例であるが、図13の階層構造のようにペットボトルが部屋の床に置いてあり、なおかつ偶然その場所が冷蔵庫の近くであった場合も図12の階層関係を予想してしまうことになる。この場合は冷蔵庫を頂点としていくら探索を行っても目的オブジェクトが見つからないことになり、最終的にはステップS20からステップS25に進む。
ステップS25において、探索制御部3は、ステップS15で得たオブジェクト情報群のうち、冷蔵庫の中を探索してもオブジェクトの検出できなかったオブジェク情報が存在する場合には、ステップS16へ戻る。すなわち、冷蔵庫の外に何らかのオブジェクトがある場合には、ステップS25からステップS16へ進む。
ステップS16では、探索制御部3は、未検出のオブジェクト情報のうち、最も階層レベルの高いオブジェクト情報を1つ選択し、以下、新たな探索を開始することになる。
基本的に以上の処理によって目的オブジェクトが見つかるはずであるが、例えば、画像処理精度の上限を超えている等の理由で、目的オブジェクトの検出に失敗した場合には、最終的にステップS25において、未検出のオブジェクトがなくなり、この地点での探索を終了する。
以上の処理により、家庭環境のようにあるオブジェクトが他のオブジェクトの内部に格納されているような状況での特定物体の探索が可能になる。しかも、階層レベルの高い順から探索していくため(図12の例では冷蔵庫が探索開始点)、目的オブジェクトが格納されていそうな箇所から探すという効率の良い経路で探索行動を実行できる。
また、探索制御部3で階層レベルに高い順に検出対象のオブジェクト情報を選択して、オブジェクト検出部4はこの選択された順にオブジェクトを検出する。すなわち、「冷蔵庫」の中に「棚2」を検出し、「棚2」から「ペットボトル」が検出されると、図9に示すように、「ペットボトル」の上位階層に「棚2」があり、「棚2」の上位階層に「冷蔵庫」がある、という「冷蔵庫」「棚2」「ペットボトル」の階層的な位置関係が得られることになる。
以上の説明では、探索対象の目的オブジェクトを指定された場合である。次に目的オブジェクトの格納場所が指定された場合、例えば“冷蔵庫の中のペットボトルを取ってきて”という探索命令を受けた場合の探索処理手順について説明する。
この場合のロボット1の動作の概略は、図7と同様である。ただし、特定の部屋が指定されている場合、図7のステップS1の部屋内の探索では、「部屋」レベルのオブジェクト情報の検出を行う。詳しくは後述する。
部屋内の探索手順について、図14及び図15のフローチャートを参照して説明する。なお、ここでは、目的オブジェクトの格納先として指定された「部屋」、「家具」、もしくは「容器」レベルのオブジェクトのことを「指定オブジェクト」と呼び、「指定オブジェクト」の階層レベルのことを「指定レベル」と呼ぶ。
図14及び図15の処理手順は、大きく分けて次のように2つの手順を含む。
(1)指定オブジェクトを探索する手順(図14のステップS106〜ステップS114)
(2)指定オブジェクトの内部を探索して目的オブジェクトを探索する手順(図15のステップS116〜ステップS124)
この2つの手順のそれぞれは、図7に示した手順と同様、階層レベルに基づき階層レベルの高い順にオブジェクトを探索する。図7と異なる点は、図14及び図15では目的オブジェクトは指定オブジェクトの中にあることが分かっているため、指定レベルの他のオブジェクトおよびその内部は探索せずにすむことになり、探索範囲を限定することができる、ということである。
ここでは、ハンドリング対象のオブジェクトのID(タグID)と、その上位の階層レベルをもつオブジェクトのID(タグID)を入力部7または通信部8から入力する必要がある。各オブジェクトのIDの入力方法は、前述同様、オブジェクトの一覧表からの選択や音声などで入力する。
以下、図14及び図15を参照して、主に、図8と異なる部分を説明する。
図14のステップS101では、ロボット1の探索制御部3は、移動部5に指示を出して、車輪を駆動させることにより部屋内を巡回しながら、タグ読取部2でロボット1周辺にある各ICタグからオブジェクト情報を読み取る。ICタグからのオブジェクト情報を受信すると、探索制御部3は、当該オブジェクト情報中に階層レベルが「部屋」レベルであるものがあるか、または当該オブジェクト情報中のタグIDが探索対象の指定オブジェクトのIDと一致するものがあるかを調べる。
受信したオブジェクト情報中の階層レベルが「部屋」レベルであるものがある場合には(ステップS102)、ステップS103へ進み、当該オブジェクト情報を探索制御部3内のスタックにプッシュする。スタックに記憶された「部屋」レベルのオブジェクト情報は、前述したように、図7の部屋間の移動に利用される。
次に、受信したオブジェクト情報中の階層レベルが「部屋」レベルであるものがない場合、「部屋」レベル」であるものがある場合にも、ステップS104へ進み、当該オブジェクト情報中のタグIDが指定オブジェクトのIDと一致するものがあるかを調べる。指定オブジェクトのIDをもつオブジェクト情報がない場合には、ロボット1の現在位置の周辺に指定オブジェクト及び目的オブジェクトはないことを表すため、ステップS112、ステップS101へと進み、そのまま巡回を続ける。ステップS104で、指定オブジェクトのIDをもつオブジェクト情報が受信された場合には、指定オブジェクト(及び目的オブジェクト)は現在位置の近くにあるということであり、ステップS105へ進み、探索制御部3は巡回を停止して、本格的な指定オブジェクトの探索を開始する。
なお、ステップS101で受信したオブジェクト情報に「部屋」レベルのオブジェクト情報も、指定オブジェクトのオブジェクト情報もない場合、またはオブジェクト情報が受信されなかった場合には、ステップS112へ進む。ステップS112において、部屋内の巡回が終わったときには、当該部屋の探索を終了する。この後、図7のステップS4へ進む。巡回を終えていない場合は、ステップS101に戻って同じ手順を繰り返す。
ステップS105以降では、指定オブジェクトの位置を絞り込んだ後に行う探索処理である。まず、ステップS105では、探索制御部3は、巡回移動行動を停止して、指定オブジェクトのオブジェクト情報と、それととともに受信された、指定レベルよりも上位階層のオブジェクト情報とを含むオブジェクト情報群を探索制御部3内のメモリに記録する。
まず、ステップS106では、受信されたオブジェクト情報群のうち、最も階層レベルの高いものから1つを選択する。次に、ステップS107では、当該選択したオブジェクト情報中の検出方法を用いて、オブジェクト検出部4が、当該オブジェクトに対応する検出処理を行う。当該オブジェクトが検出された場合には(検出成功)、オブジェクト検出部4は、その旨を探索制御部3へ返し、ステップS108へ進む。
ステップS108において、探索制御部3は、当該検出されたオブジェクトが指定オブジェクトである場合には、指定オブジェクトの内部を探索して目的オブジェクトを探索するために、図15のステップS116へ進む。
ステップS107で検出されたオブジェクトが指定のオブジェクトでない場合には、ステップS109へ進み、当該検出されたオブジェクトの下位階層、すなわち「内部」をさらに探索する。
ステップS109では、探索制御部3は、ステップS105で得られたオブジェクト情報群のなかに、ステップS107で検出されたオブジェクトよりも下位の階層レベルのオブジェクト情報があるかどうかを調べる。下位の階層レベルのオブジェクト情報がある場合、それらが当該検出されたオブジェクトの中にあると仮定して、ステップS110へ進む。下位の階層レベルのオブジェクト情報がない場合にはステップS114へ進む。ステップS114において、未検出のオブジェク情報が存在する場合には、さらにステップS106へ戻り、探索制御部3は、未検出のオブジェクト情報のうち、最も階層レベルの高いオブジェクト情報を1つ選択し、以下、新たな探索を開始することになる。
ステップS110では、当該検出されたオブジェクトの内部を探索するため、探索制御部3は、当該オブジェクト情報中の操作方法を実行する。この操作の後、ステップS111へ進み、当該検出されたオブジェクトよりも階層レベルが低く、その中で最も階層レベルが高いものを選択して、これを新たな検出対象のオブジェクトとし、ステップS107へ戻る。
以上の処理手順により、ステップS108で、指定オブジェクトが検出された場合、次に、図15のステップS116へ進み、目的オブジェクトを探索を開始する。まず、ステップS116では、ステップS101で受信されたオブジェクト情報群のうち、指定レベルより下位の階層レベルのオブジェクト情報を探索制御部3内のメモリに記録し、図15のステップS117以下の処理を行い、このメモリに記録されたオブジェクト情報を階層レベルの高いものから順に探索して、目的オブジェクトを検出する。図15のステップS117〜ステップS124の処理動作は、図8のステップS16以下の処理動作と同様であるので説明は省略する。
以上説明したように、目的オブジェクトの他に、その目的オブジェクトより上位の階層レベル(「部屋」、「家具」、「容器」)のオブジェクトが指定されている場合には、まずこの指定されたオブジェクトを検出した後に、その下位の階層レベルのオブジェクト情報に絞り込んで目的オブジェクトを探索することで、より高速に目的オブジェクトを検出することができる。
一度、図8や、図14及び図15に示した処理動作を行い、探索制御部3で選択された順にオブジェクト検出部4でオブジェクトを検出することにより、探索した範囲に存在するオブジェクト群の階層的な位置関係(すなわち、どのオブジェクトがどのオブジェクトを有するかという階層的な位置関係)を認識することができるので、これを記憶して、次に、同じ又は別の目的オブジェクトを探索する際に利用することも可能である。しかし、探索した結果得られた複数のオブジェクト間の階層的な位置関係は、一時的なものであり、次の探索時には変化してしまっている可能性があるが、もし変化していないのが確認できれば、この階層関係を利用して高速な探索が可能になる。
この場合、図16に示すように、オブジェクト探索装置1は、記憶部10を含み、この記憶部10に、過去に、目的オブジェクトを探索したときに得られた各オブジェクトのタグIDと、例えば図9に示すような各オブジェクトの階層的な位置関係を記憶する。
次に、図17に示すフローチャートを参照して、図16のオブジェクト探索装置1が、記憶部10に記憶された情報を用いて、目的オブジェクトを探索する際の処理動作について説明する。
ここでは、過去のペットボトルの探索時に、図9に示したような階層的な位置関係を記憶部10に記憶した場合に、新たに冷蔵庫に入った食器を取ってくるよう命令された場合の処理手順である。
ロボット1の探索制御部3は、記憶部10から、目的オブジェクトが格納されている「容器」オブジェクト、この「容器」オブジェクトが格納されている「家具」オブジェクト、この「家具」オブジェクトが格納されている「部屋」オブジェクトの各タグIDを読み出す。このように目的オブジェクトが格納されている部屋、家具、容器オブジェクトを既に知っているので、まず目的オブジェクトのある部屋まで移動する(ステップS201〜ステップS204)。この場合、探索制御部3は、オブジェクト情報を受信しながら部屋を動き回り、目的オブジェクトのある部屋のオブジェクト情報を受信した場合には、当該オブジェクト情報中の検出方法を用いて、オブジェクト検出部4が当該部屋(例えば、この場合、扉など)を検出し、当該オブジェクト情報中の操作方法を用いて、マニピュレータ操作部6の操作によって当該扉を開いて、当該部屋へ移動し、ステップS201からステップS206へ進む。
ステップS206では、ロボット1は、当該部屋の中を巡回し、ステップS207で、目的オブジェクトの入った家具のオブジェクト情報を受信する。このとき当該家具のオブジェクト情報とともに、当該家具付近にある(当該家具の中にある)各オブジェクトのオブジェクト情報も受信する。家具の中に目的オブジェクトが存在するならば、この受信されたオブジェクト情報のなかには目的オブジェクトのオブジェクト情報も含まれている。
そして、ステップS208において、当該家具のオブジェクト情報中の検出方法を用いて、オブジェクト検出部4が当該家具を検出し、当該オブジェクト情報中の操作方法を用いて、マニピュレータ操作部6の操作によって当該家具の扉を開き、ステップS209へ進む。
ステップS209〜ステップS211では、ロボット1は、当該家具のオブジェクト情報とともに受信したオブジェクト情報群のうちの、当該家具の中にある容器レベルのオブジェクト情報を用いて、上記同様にして、当該容器レベルのオブジェクトを検出し、さらに、当該オブジェクトを操作して、その下位階層へ移行する。
さらに、ステップS212〜ステップS214では、ロボット1は、当該家具、当該容器のオブジェクト情報とともに受信したオブジェクト情報群のなかにある、目的オブジェクトのオブジェクト情報中の検出方法を用いて、当該目的オブジェクトを検出する。
なお、ステップS207において、目的の「家具」レベルのオブジェクト情報が受信できなかった場合、ステップS210において、目的の「家具」レベルのオブジェクト情報は受信できたが、その中の目的の「容器」レベルのオブジェクト情報が受信できなかった場合、ステップS213において、目的の「家具」レベル、「容器」レベルのオブジェクト情報は受信できたが、目的オブジェクトのオブジェクト情報が受信できなかった場合には、過去の探索から現在までの間に、これらの階層的な位置関係が変化している可能性が高いので、ステップS205へ進み、図7,図8に示した通常の探索処理を開始する。そして、この通常の探索処理を行った後に、記憶部10を更新する。すなわち、探索処理により得られた各オブジェクトの階層的な位置関係を記憶部10に記憶する。
最初は探索する環境におけるオブジェクト間の階層的な位置関係が不明であるために、図8に示したような網羅的な探索を行いながら目的オブジェクトを見つける。しかし、探索を繰り返すうちに段々と環境内での各オブジェクトの階層的な位置関係が明らかになってくる。そのため、階層的な位置関係が記憶部10に記憶されているオブジェクトについては、その情報を利用して効率的な検出が可能である。一方、記憶部10に記憶している階層的な位置関係は過去のある時点のものであるから、新たな探索のときには変化している可能性がある。このような変化が検出された場合はもう一度網羅的な探索を行い、その結果で記憶部10に記憶されている情報を更新する。
以上説明したように、上記実施形態によれば、各オブジェクトが有するICタグから、該オブジェクトの識別子、階層レベル、該オブジェクトを検出するための検出方法、及び該オブジェクトの下位階層へ移行するための該オブジェクトの操作方法を含むオブジェクト情報を取得するタグ読み取り部2で、目的オブジェクトのオブジェクト情報を含むオブジェクト情報群を取得し、各オブジェクト情報の検出方法及び操作方法を用いて、階層レベルの高い順に、該目的オブジェクトよりも階層レベルの高いオブジェクト、及び該オブジェクトが有するオブジェクトを順次検出することにより、該目的オブジェクトを検出する。これにより、散在する複数のオブジェクトを容易に探索することができる。
オブジェクト(ロボットが掴んで運ぶ「ハンドリング対象」、ハンドリング対象を入れる箱や引き出しなどの「容器」、容器が置かれたり、中に収めていたりするテーブル、冷蔵庫などの「家具」、家具が設置されている「部屋」などをオブジェクトと表現する)にICタグをあらかじめ貼り付けておく。ICタグには、該オブジェクト固有のID(タグID)、該オブジェクトが「ハンドリング対象」、「容器」、「家具」、「部屋」のどの階層に属するのかを表す階層レベル、該オブジェクトを検出するための認識プログラムのIDやパラメータといった情報(検出方法)、該オブジェクトが有する該オブジェクトよりも下位の階層レベルのオブジェクトの存在する位置に到達するための操作方法(例えば、掴む、扉を開けるための把持点や把持姿勢、動作方向といった情報など、該オブジェクトの下位階層へ移行するための該オブジェクトの操作方法)を含むオブジェクト情報が記憶されている。またはICタグから読み出されたタグIDをキーとしてデータベースから当該オブジェクト情報が読み出せるようになっている。階層レベルの高低は、高い順に「部屋」、「家具」、「容器」、「ハンドリング対象」と定義する。
目的オブジェクトを探索する際には、まず、目的オブジェクトのオブジェクト情報が受信されるまで、各部屋を巡回する。目的オブジェクトのオブジェクト情報を含むオブジェクト情報群を受信すると、その中で階層レベルが高い順に、オブジェクトの検出を行っていく。この順序はまず大きくて見つけやすく、なおかつ外側に存在するものから、続いて中に入っているものを見つける、という探索を行うことになる。探索中に例えば「家具」レベルのオブジェクトを1つ見つけると、その中に「容器」レベルのオブジェクトが入っていると仮定して容器の検出を行う。他の階層でも下の階層のオブジェクトが中に入っていると仮定して検出処理を実行していく。この探索を目標オブジェクトが見つかるまで繰り返す。
このような構成により、環境内に散在する複数のオブジェクトの階層的な位置関係(どのオブジェクトがどのオブジェクトを有しているかという階層的な位置関係)を予め記憶・管理することなく、目的オブジェクトを容易に探索できる。このために、各オブジェクトから、その階層レベルが取得できる仕組みさえ準備すればよく、装置構成を大幅に簡略化できる。一方で、実際の探索行動では、目的オブジェクトが入っていそうな家具および容器を先に見つけるような探索順序が自動的に生成されるため、物体同士の位置関係に階層構造があるような環境であっても特定オブジェクトの探索の信頼性が高くなることが期待できる。
本発明の実施の形態に記載した本発明の手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、半導体メモリなどの記録媒体に格納して頒布することもできる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
オブジェクト探索装置の構成例を示した図。 オブジェクト検出部の構成例を示した図。 図2に示した構成のオブジェクト検出部を有するブジェクト探索装置1の一例を示した図。 図1のオブジェクト探索装置で探索される、ダイニングキッチン内に散在するオブジェクトを示した図。 冷蔵庫のオブジェクト情報の一例を示した図。 カップのオブジェクト情報の一例を示した図 オブジェクト探索装置の処理動作を概略を説明するためのフローチャート。 オブジェクト探索装置の部屋内の探索手順を説明するためのフローチャート。 DK(ダイニングキッチン)環境に散在するオブジェクト群の階層的な位置関係の具体例を示した図。 オブジェクト探索装置がDKを巡回することにより得られる情報(すなわち、各オブジェクトの階層レベル)を示した図。 オブジェクト探索装置がDK内の冷蔵庫付近で受信されたオブジェクト情報群から得られた情報(各オブジェクトの階層レベル)を示した図。 図11に示したオブジェクト群の階層レベルから想定される該オブジェクト群の階層的な位置関係を示した図。 DK環境に散在するオブジェクト群の階層的な位置関係の他の具体例を示した図。 目的オブジェクトと、該目的オブジェクトを有する該目的オブジェクトよりも上位階層のオブジェクト(指定オブジェクト)とが指定された場合の探索手順を説明するためのフローチャート。 目的オブジェクトと、該目的オブジェクトを有する該目的オブジェクトよりも上位階層のオブジェクト(指定オブジェクト)とが指定された場合の探索手順を説明するためのフローチャート。 オブジェクト探索装置の他の構成例を示した図。 オブジェクト検出部で検出されたオブジェクト群の階層的な位置関係を記憶部に記憶しておき、この記憶部に記憶された情報を用いて、目的オブジェクトを探索する探索手順を説明するためのフローチャート。
符号の説明
1…オブジェクト探索装置
2…タグ読取部
3…探索制御部
4…オブジェクト検出部
5…移動部
6…マニピュレータ操作部
7…入力部
8…通信部
4a…撮像部
4b…画像処理部

Claims (7)

  1. 目的オブジェクトを入力する入力手段と、
    ICタグから、該ICタグを貼り付けるオブジェクトの識別子、階層レベル、該オブジェクトを検出するための画像処理の種類を含む該オブジェクトを検出するための検出方法、及び該オブジェクトの操作方法を含むオブジェクト情報を取得する取得手段と、
    前記取得手段で取得された、目的オブジェクトのオブジェクト情報を含むオブジェクト情報群から、該目的オブジェクトよりも前記階層レベルの高いオブジェクト情報及び該目的オブジェクトのオブジェクト情報のうちの1つを、前記階層レベルの高い順に選択する選択手段と、
    画像を取得し該画像から前記オブジェクトを検出する画像処理手段と、
    前記選択手段で選択されたオブジェクト情報中の前記検出方法を用いて、当該オブジェクト情報に対応するオブジェクトを検出する検出手段と、
    前記検出手段で検出されたオブジェクトを、該オブジェクトのオブジェクト情報中の前記操作方法に従って操作する操作手段と、
    前記操作手段によって操作されるマニピュレータと、
    を含み、
    前記検出手段は、前記目的オブジェクトより前記階層レベルの高いオブジェクト及び該オブジェクトが有するオブジェクトを前記階層レベルの高いオブジェクトから下位の前記階層レベルのオブジェクトへ順次検出することにより、該目的オブジェクトを検出するオブジェクト探索装置。
  2. 前記操作方法は、該オブジェクトの中にある該オブジェクトよりも階層レベルの低いオブジェクト群を検出するために必要な該オブジェクトの操作方法を含むことを特徴とする請求項1記載のオブジェクト探索装置。
  3. 前記操作方法は、該オブジェクトのハンドリング方法を含むことを特徴とする請求項1記載のオブジェクト探索装置。
  4. 前記選択手段は、
    前記目的オブジェクトの格納先である指定オブジェクトであって、前記目的オブジェクトより前記階層レベルの高い指定オブジェクトのオブジェクト情報、及び該指定オブジェクトより前記階層レベルの高いオブジェクト情報のうちの1つを、前記階層レベルの高い順に選択する第1の選択手段と、
    前記指定オブジェクトより前記階層レベルの低いオブジェクト情報を、前記階層レベルの高い順に選択する第2の選択手段と、
    を含み、
    前記検出手段は、前記第1の選択手段で選択された順に各オブジェクトを検出することにより、前記指定オブジェクトを検出したとき、該指定オブジェクトが有するオブジェクトを前記第2の選択手段で選択された順に検出することにより、前記目的オブジェクトを検出し、前記第2の選択手段は、前記指定オブジェクトを検出したとき、前記オブジェクト情報を選択することを特徴とする請求項1記載のオブジェクト探索装置。
  5. 前記検出手段で検出されたオブジェクト群の階層的な位置関係を記憶する記憶手段をさらに備え、
    前記選択手段は、前記記憶手段に位置関係を記憶したオブジェクト群に含まれる上位オブジェクトの中から前記目的オブジェクトのオブジェクト情報、及び該目的オブジェクトを有する該目的オブジェクトより前記階層レベルの高い前記上位オブジェクトのオブジェクト情報のうちの1つを、前記階層レベルの高い順に選択し、
    前記検出手段は、前記上位オブジェクトを検出した後、前記上位オブジェクトが有する前記目的オブジェクトを検出することを特徴とする請求項1記載のオブジェクト探索装置。
  6. 各オブジェクトのオブジェクト情報に含まれている前記検出方法は、前記画像処理に用いるパラメータとを含むことを特徴とする請求項1記載のオブジェクト探索装置。
  7. 目的オブジェクトを入力する入力手段と、
    ICタグから、該ICタグを貼り付けるオブジェクトの識別子、階層レベル、該オブジェクトを検出するための画像処理の種類を含む該オブジェクトを検出するための検出方法、及び該オブジェクトの操作方法を含むオブジェクト情報を取得する取得手段と、
    前記取得手段で取得された、目的オブジェクトのオブジェクト情報を含むオブジェクト情報群から、該目的オブジェクトよりも前記階層レベルの高いオブジェクト情報及び該目的オブジェクトのオブジェクト情報のうちの1つを、前記階層レベルの高い順に選択する選択手段と、
    画像を取得し該画像から前記オブジェクトを検出する画像処理手段と、
    前記選択手段で選択されたオブジェクト情報中の前記検出方法を用いて、当該オブジェクト情報に対応するオブジェクトを検出する検出手段と、
    前記検出手段で検出されたオブジェクトを、該オブジェクトのオブジェクト情報中の前記操作方法に従って操作する操作手段と、
    前記操作手段によって操作されるマニピュレータと、
    を備えたオブジェクト探索装置におけるオブジェクト探索方法であって、
    前記入力手段が、目的オブジェクトを入力する入力ステップと、
    前記取得手段が、オブジェクト情報群を取得する取得ステップと、
    前記選択手段が、前記オブジェクト情報群から目的オブジェクトより高い階層レベルをもつ第1のオブジェクト情報を選択する第1の選択ステップと、
    前記検出手段が、前記第1のオブジェクト情報中の前記検出方法を用いて、第1のオブジェクトを検出する第1の検出ステップと、
    前記操作手段が、前記第1のオブジェクト情報中の前記操作方法に従って、前記第1の検出ステップで検出された前記第1のオブジェクトを操作する第1の操作ステップと、
    前記選択手段が、前記オブジェクト情報群から前記目的オブジェクトのオブジェクト情報を選択する第2の選択ステップと、
    前記検出手段が、前記目的オブジェクトより前記階層レベルの高いオブジェクト及び該オブジェクトが有するオブジェクトを前記階層レベルの高いオブジェクトから下位の前記階層レベルのオブジェクトへ順次検出することにより、前記第1のオブジェクトから前記目的オブジェクトを検出する第2の検出ステップと、
    を含むオブジェクト探索方法。
JP2008018105A 2008-01-29 2008-01-29 オブジェクト探索装置及び方法 Active JP4504433B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008018105A JP4504433B2 (ja) 2008-01-29 2008-01-29 オブジェクト探索装置及び方法
US12/360,511 US8116904B2 (en) 2008-01-29 2009-01-27 Object search apparatus and method
US12/361,002 US7842982B2 (en) 2008-01-29 2009-01-28 Semiconductor device and manufacturing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008018105A JP4504433B2 (ja) 2008-01-29 2008-01-29 オブジェクト探索装置及び方法

Publications (2)

Publication Number Publication Date
JP2009181222A JP2009181222A (ja) 2009-08-13
JP4504433B2 true JP4504433B2 (ja) 2010-07-14

Family

ID=40900033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008018105A Active JP4504433B2 (ja) 2008-01-29 2008-01-29 オブジェクト探索装置及び方法

Country Status (2)

Country Link
US (1) US8116904B2 (ja)
JP (1) JP4504433B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7877014B2 (en) 2001-07-05 2011-01-25 Enablence Technologies Inc. Method and system for providing a return path for signals generated by legacy video service terminals in an optical network
US7953325B2 (en) 2004-08-19 2011-05-31 Enablence Usa Fttx Networks, Inc. System and method for communicating optical signals between a data service provider and subscribers
US7986880B2 (en) 2003-03-14 2011-07-26 Enablence Usa Fttx Networks Inc. Method and system for providing a return path for signals generated by legacy terminals in an optical network

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012524663A (ja) * 2009-04-23 2012-10-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 物体学習ロボットおよび方法
TWI388956B (zh) * 2009-05-20 2013-03-11 Univ Nat Taiwan Science Tech 行動機器人與其目標物處理路徑的規劃方法
US8359344B2 (en) * 2010-01-21 2013-01-22 Qualcomm Incorporated Automatic linking of points of interest for indoor location based searching
US8553954B2 (en) 2010-08-24 2013-10-08 Siemens Medical Solutions Usa, Inc. Automated system for anatomical vessel characteristic determination
JP5892361B2 (ja) 2011-08-02 2016-03-23 ソニー株式会社 制御装置、制御方法、プログラム、及びロボット制御システム
JP5879877B2 (ja) * 2011-09-28 2016-03-08 沖電気工業株式会社 画像処理装置、画像処理方法、プログラム、および画像処理システム
US9072929B1 (en) * 2011-12-01 2015-07-07 Nebraska Global Investment Company, LLC Image capture system
JP6343337B2 (ja) * 2013-03-15 2018-06-13 ニューラ ラブス コーポレイション 知識への1段階アクセスを提供する適応ユーザインターフェースを有する知的インターネットシステム
US20150002660A1 (en) * 2013-06-28 2015-01-01 Lg Electronics Inc. Electric product
KR102145607B1 (ko) * 2013-06-28 2020-08-18 엘지전자 주식회사 전기제품
CN104462137A (zh) * 2013-09-22 2015-03-25 北大方正集团有限公司 互动对象的创建方法及装置
JP2015099550A (ja) * 2013-11-20 2015-05-28 東芝テック株式会社 商品認識装置及び商品認識プログラム
US9597801B2 (en) * 2014-10-21 2017-03-21 Centurylink Intellectual Property Llc Automated data center
US10025473B2 (en) 2014-12-18 2018-07-17 Aditazz, Inc. Room plan generation user interface for room plan selection
US20160179315A1 (en) * 2014-12-18 2016-06-23 Aditazz, Inc. Room plan generation user interface for component placement configuration
CN107516087A (zh) * 2017-09-01 2017-12-26 华北科技学院 一种用于现实增强技术的物体识别方法
KR102032284B1 (ko) * 2017-09-22 2019-10-15 엘지전자 주식회사 인공지능 이용한 이동 로봇 및 이동 로봇의 제어방법
CN108052860A (zh) * 2017-11-06 2018-05-18 珠海格力电器股份有限公司 物品检索方法及装置
CN109029449B (zh) * 2018-06-29 2020-09-29 英华达(上海)科技有限公司 寻物方法、寻物装置及寻物系统
JP7185869B2 (ja) 2018-09-04 2022-12-08 国立大学法人大阪大学 処理装置
CN109064719A (zh) * 2018-09-04 2018-12-21 高新兴科技集团股份有限公司 一种操作规范的检测方法和设备
US11551537B2 (en) * 2019-04-11 2023-01-10 Nexite Ltd. Wireless dual-mode identification tag
EP3996289A1 (en) 2019-04-11 2022-05-11 Nexite Ltd. Wireless dual-mode identification tag
CN110355322B (zh) * 2019-07-11 2021-07-13 爱驰汽车有限公司 铆模选取系统及方法
CN110990594B (zh) * 2019-11-29 2023-07-04 华中科技大学 一种基于自然语言交互的机器人空间认知方法及系统
EP4275160A1 (en) 2021-01-11 2023-11-15 Nexite Ltd. Contactless and automatic operations of a retail store
US11797928B2 (en) 2021-12-13 2023-10-24 Nexite Ltd. Dual-antenna, four-armed identification tag
US11861959B2 (en) * 2022-01-06 2024-01-02 Johnson Controls Tyco IP Holdings LLP Methods and systems for integrating autonomous devices with an access control system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005280890A (ja) * 2004-03-29 2005-10-13 Nec Fielding Ltd 資料管理システム
JP2006289547A (ja) * 2005-04-11 2006-10-26 Ntt Docomo Inc 物品管理システム、物品管理サーバ、物品モジュール、およびロボット
JP2007519583A (ja) * 2003-12-09 2007-07-19 サビ テクノロジー、インク. ネスト化され近接したコンテナのアイテムレベル可視化技術
JP2007217069A (ja) * 2006-02-14 2007-08-30 Fujitsu Ltd 在庫管理ロボットおよびそれによる在庫管理方法
JP2008502559A (ja) * 2004-06-14 2008-01-31 オラクル・インターナショナル・コーポレイション 階層的に配置された物体の位置および状態を検査するための方法およびシステム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2004106009A1 (ja) * 2003-06-02 2006-07-20 松下電器産業株式会社 物品取扱いシステムおよび物品取扱いサーバ
JP2007034356A (ja) 2005-07-22 2007-02-08 Keirin Hirabayashi オブジェクト管理装置、オブジェクト管理方法、プログラム及びオブジェクト管理システム
US7932809B2 (en) * 2006-02-23 2011-04-26 Rockwell Automation Technologies, Inc. RFID/biometric area protection

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007519583A (ja) * 2003-12-09 2007-07-19 サビ テクノロジー、インク. ネスト化され近接したコンテナのアイテムレベル可視化技術
JP2005280890A (ja) * 2004-03-29 2005-10-13 Nec Fielding Ltd 資料管理システム
JP2008502559A (ja) * 2004-06-14 2008-01-31 オラクル・インターナショナル・コーポレイション 階層的に配置された物体の位置および状態を検査するための方法およびシステム
JP2006289547A (ja) * 2005-04-11 2006-10-26 Ntt Docomo Inc 物品管理システム、物品管理サーバ、物品モジュール、およびロボット
JP2007217069A (ja) * 2006-02-14 2007-08-30 Fujitsu Ltd 在庫管理ロボットおよびそれによる在庫管理方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7877014B2 (en) 2001-07-05 2011-01-25 Enablence Technologies Inc. Method and system for providing a return path for signals generated by legacy video service terminals in an optical network
US7986880B2 (en) 2003-03-14 2011-07-26 Enablence Usa Fttx Networks Inc. Method and system for providing a return path for signals generated by legacy terminals in an optical network
US8682162B2 (en) 2003-03-14 2014-03-25 Aurora Networks, Inc. Method and system for providing a return path for signals generated by legacy terminals in an optical network
US7953325B2 (en) 2004-08-19 2011-05-31 Enablence Usa Fttx Networks, Inc. System and method for communicating optical signals between a data service provider and subscribers

Also Published As

Publication number Publication date
JP2009181222A (ja) 2009-08-13
US8116904B2 (en) 2012-02-14
US20090192647A1 (en) 2009-07-30

Similar Documents

Publication Publication Date Title
JP4504433B2 (ja) オブジェクト探索装置及び方法
EP3002656B1 (en) Robot cleaner and control method thereof
US11429103B2 (en) Semantic obstacle recognition for path planning
JP6054425B2 (ja) 自己位置推定を自動的に実行する方法
US20060195226A1 (en) Mobile robot system and program for controlling the same
CN111328386A (zh) 通过自主移动机器人对未知环境的探察
CN108344414A (zh) 一种地图构建、导航方法及装置、系统
KR101222624B1 (ko) 군집 로봇 및 군집 로봇을 이용한 수색 방법
WO2018111789A1 (en) Object recognition tool
US20150212520A1 (en) Robot And Method For Autonomous Inspection Or Processing Of Floor Areas
JP2019525342A (ja) 自律移動ロボッを制御する方法
US8035687B2 (en) Image processing apparatus and program
US20190310092A1 (en) Method, system and apparatus for dynamic path generation
KR20160048750A (ko) 로봇 청소기 및 로봇 청소기의 제어방법
Anup et al. Visual positioning system for automated indoor/outdoor navigation
EP4071684A1 (en) Warehouse monitoring system
Gallagher et al. Gatmo: A generalized approach to tracking movable objects
US20220067634A1 (en) Delivery method and system using robot
CN114359692A (zh) 房间识别方法、装置、电子设备及存储介质
US20240004388A1 (en) Method and system for navigation of robot from one area to another area
JP2004243499A (ja) 生活空間用の物品取扱いシステム、物品取扱い方法、及びロボット操作装置
US20230111067A1 (en) Systems, robots, and methods for selecting classifiers based on context
KR20130105964A (ko) 영상 처리 장치 및 그 방법
CN114510022A (zh) 一种医疗运输机器人及其控制方法
JP2006338059A (ja) 物品管理システム及びその制御用プログラム並びにその制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091023

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100303

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100330

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100422

R151 Written notification of patent or utility model registration

Ref document number: 4504433

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140430

Year of fee payment: 4