(57)【要約】  物品が格納された棚に移動し、棚に格納された対象物を取り出す移動ロボットと、移動ロボットを制御する移動ロボット制御装置とを備える移動ロボット運用システムにおいて、複数の物品が存在する場合であっても、対象物を特定し、移動ロボットが特定した対象物から取り出すことができる移動ロボット運用システムを提供する。  移動ロボットは、前記対象物を含んだ第１対象物領域を撮影可能な第１条件で第１対象物領域を撮影し、第２対象物領域を第１対象物領域を含まずに撮影可能な第２条件で対象物領域を撮影し、対象物位置特定部が特定した対象物の位置に基づいて対象物を棚から取り出す。
2017033254.tif 000002
【特許請求の範囲】
【請求項１】
物品が格納された棚に移動し、前記棚に格納された対象物を取り出す移動ロボットと、前記移動ロボットを制御する移動ロボット制御装置とを備える移動ロボット運用システムであって、  前記移動ロボットは、物品を含む領域を画像として撮影する撮影部を有し、  前記移動ロボット運用システムは、  前記対象物を含む第１対象物領域を撮影可能な第１条件で撮影された画像から対象物が存在する可能性がある第２対象物領域を抽出する対象物領域抽出部と、  前記対象物領域抽出部が抽出した第２対象物領域を前記第１対象物領域を含まずに撮影可能な第２条件を設定する第２条件設定部と、  前記第２条件で撮影された画像から前記対象物を識別し、前記対象物の位置を特定する対象物位置特定部と、をさらに備え、  前記移動ロボットは、  前記第１条件で前記第１対象物領域を撮影し、  前記第２条件設定部で設定した第２条件で前記第２対象物領域を撮影し、  前記対象物位置特定部が特定した対象物の位置に基づいて前記対象物を前記棚から取り出すことを特徴とする移動ロボット運用システム。
【請求項２】
請求項１に記載の移動ロボット運用システムであって、  前記第１条件は、前記第１対象物領域を撮影可能な第１地点から撮影するものであり、  前記第２条件は、前記第２対象物領域を撮影可能であって前記第１地点より前記対象物に近い第２地点から撮影するものであり、  前記移動ロボットは、  前記第１条件に含まれる第１地点に移動して、前記第１対象物領域を撮影し、  前記第１地点から前記第２条件に含まれる第２地点に移動して、前記第２対象物領域を撮影することを特徴とする移動ロボット運用システム。
【請求項３】
請求項２に記載の移動ロボット運用システムであって、  前記対象物の特徴量と、詳細特徴量と、詳細撮影距離を特定可能な詳細撮影距離特定情報と、が登録された特徴量情報を保持し、  前記詳細撮影距離は、前記詳細特徴量を算出するために必要な前記撮影部から前記対象物までの距離であり、  前記対象物領域抽出部は、  前記第１地点で撮影された画像に含まれる画素の特徴量が前記特徴量情報に登録された対象物の特徴量から第１所定範囲内の画素を第２対象物領域に含まれる画素として抽出し、  前記第２条件設定部は、  前記第２対象物領域全体を最も近くで撮影可能な距離を示す対象物領域撮影距離を算出し、  前記対象物領域撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離以上である場合、前記第２対象物領域全体を撮影するために、前記第２対象物領域までの距離が前記詳細撮影距離以下となる複数の地点を第２地点として算出し、  前記対象物領域撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離より小さい場合、前記第２対象物領域までの距離が前記対象物領域撮影距離以上で前記詳細撮影距離以下となる地点を第２地点として算出し、  前記対象物位置特定部は、前記第２地点で撮影された画像に含まれる画素の詳細特徴量が前記特徴量情報に登録された対象物の詳細特徴量から所定範囲内の画素を対象物として識別し、前記識別した対象物の位置を特定することを特徴とする移動ロボット運用システム。
【請求項４】
請求項３に記載の移動ロボット運用システムであって、  前記第２条件設定部は、  前記第２対象物領域から前記対象物のみが存在する領域を特定できる場合、前記対象物のみが存在する領域全体を最も近くで撮影可能な距離を示す対象物撮影距離を算出し、  前記対象物撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離以上である場合、前記対象物のみが存在する領域を撮影するために、前記詳細撮影距離以下となる複数の地点を第２地点として算出し、  前記対象物撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離より小さい場合、前記対象物撮影距離以上で前記詳細撮影距離以下となる地点を第２地点として算出することを特徴とする移動ロボット運用システム。
【請求項５】
請求項４に記載の移動ロボット運用システムであって、  前記第２条件設定部は、前記第２対象物領域に含まれる画素の特徴量が前記特徴量情報に登録された対象物の特徴量から第２所定範囲内の画素を前記対象物のみが存在する領域に含まれる画素として抽出し、  前記第２所定範囲は前記第１所定範囲より狭いことを特徴とする移動ロボット運用システム。
【請求項６】
請求項３に記載の移動ロボット運用システムであって、  前記特徴量情報には、前記詳細特徴量が算出される前記対象物の領域である読取領域の当該対象物内での位置に関する情報が登録され、  前記第２条件設定部は、  前記第２対象物領域から前記対象物のみが存在する領域を特定できる場合、前記特徴量情報を参照し、前記対象物のみ存在する領域から前記読取領域に対応する領域を特定し、  前記特定した領域を撮影可能な地点を前記第２地点として算出することを特徴とする移動ロボット運用システム。
【請求項７】
請求項１に記載の移動ロボット運用システムであって、  前記対象物領域抽出部、前記第２条件設定部、及び前記対象物位置特定部の各々は、前記移動ロボット又は前記移動ロボット制御装置に配置されることを特徴とする移動ロボット運用システム。
【請求項８】
物品が格納された棚に移動し、前記棚に格納された対象物を取り出す移動ロボットであって、  前記移動ロボットは撮影部を備え、  前記対象物が格納された第１対象物領域を撮影可能な第１条件で前記第１対象物領域を撮影し、  前記第１条件で撮影された画像から抽出された対象物が存在する可能性がある第２対象物領域を前記第１対象物領域を含まずに撮影可能な第２条件で前記第２対象物領域を含む領域を撮影し、  前記第２条件で撮影された画像から特定された対象物の位置に基づいて前記対象物を前記棚から取り出すことを特徴とする移動ロボット。
【請求項９】
請求項８に記載の移動ロボットであって、  前記第１条件は、前記第１対象物領域を撮影可能な第１地点から撮影するものであり、  前記第２条件は、前記第２対象物領域を撮影可能であって前記第１地点より前記対象物に近い第２地点から撮影するものであり、  前記第１条件に含まれる第１地点に移動して、前記第１対象物領域を撮影し、  前記第１地点から前記第２条件に含まれる第２地点に移動して、前記第２対象物領域を撮影することを特徴とする移動ロボット。
【請求項１０】
請求項９に記載の移動ロボットであって、  前記対象物の特徴量と、詳細特徴量と、詳細撮影距離を特定可能な詳細撮影距離特定情報と、が登録された特徴量情報を保持し、  前記詳細撮影距離は、前記詳細特徴量を算出するために必要な前記撮影部から前記対象物までの距離であり、  前記移動ロボットは、  前記第１地点で撮影された画像に含まれる画素ごとに特徴量を算出し、前記算出した特徴量が前記特徴量情報に登録された対象物の特徴量から第１所定範囲内の画素を第２対象物領域に含まれる画素として抽出し、  前記第２対象物領域全体を最も近くで撮影可能な距離を示す対象物領域撮影距離を算出し、  前記対象物領域撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離以上である場合、前記第２対象物領域全体を撮影するために、前記第２対象物領域までの距離が前記詳細撮影距離以下となる複数の地点を第２地点として算出し、  前記対象物領域撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離より小さい場合、前記第２対象物領域までの距離が前記対象物領域撮影距離以上で前記詳細撮影距離以下となる地点を第２地点として算出し、  前記第２地点で撮影された画像に含まれる画素の詳細特徴量が前記特徴量情報に登録された対象物の詳細特徴量から所定範囲内の画素を対象物として識別し、前記識別した対象物の位置を特定することを特徴とする移動ロボット。
【請求項１１】
請求項１０に記載の移動ロボットであって、  前記第２対象物領域から前記対象物のみが存在する領域を特定できる場合、前記対象物のみが存在する領域全体を最も近くで撮影可能な距離を示す対象物撮影距離を算出し、  前記対象物撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離以上である場合、前記対象物のみが存在する領域を撮影するために、前記詳細撮影距離以下となる複数の地点を第２地点として算出し、  前記対象物撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離より小さい場合、前記対象物撮影距離以上で前記詳細撮影距離以下となる地点を第２地点として算出することを特徴とする移動ロボット。
【請求項１２】
請求項１０に記載の移動ロボットであって、  前記特徴量情報には、前記詳細特徴量が算出される前記対象物の領域である読取領域の当該対象物内での位置に関する情報が登録され、  前記第２対象物領域から前記対象物のみが存在する領域を特定できる場合、前記特徴量情報を参照し、前記対象物のみ存在する領域から前記読取領域に対応する領域を特定し、  前記特定した領域を撮影可能な地点を前記第２地点として算出することを特徴とする移動ロボット。
【請求項１３】
物品が格納された棚に移動する移動ロボットにおける前記棚に格納された対象物を取り出す対象物取り出し方法であって、  前記移動ロボットは、撮影部を有し、  前記対象物取り出し方法は、  前記移動ロボットが、前記対象物が格納された第１対象物領域を撮影可能な第１条件で前記第１対象物領域を撮影するように前記撮影部を制御し、  前記移動ロボットが、前記第１条件で撮影された画像から抽出された対象物が存在する可能性がある第２対象物領域を前記第１対象物領域を含まずに撮影可能な第２条件で前記第２対象物領域を含む領域を撮影するように前記撮影部を制御し、  前記移動ロボットが、前記第２条件で撮影された画像から特定された対象物の位置の前記対象物を前記棚から取り出すことを特徴とする対象物取り出し方法。
【請求項１４】
請求項１３に記載の対象物取り出し方法であって、  前記第１条件は、前記第１対象物領域を撮影可能な第１地点から撮影するものであり、  前記第２条件は、前記第２対象物領域を撮影可能であって前記第１地点より前記対象物に近い第２地点から撮影するものであり、  前記対象物取り出し方法は、  前記移動ロボットが、前記第１条件に含まれる第１地点に移動して、前記第１対象物領域を撮影するように前記撮影部を制御し、  前記移動ロボットが、前記第１地点から前記第２条件に含まれる第２地点に移動して、前記第２対象物領域を撮影するように前記撮影部を制御することを特徴とする対象物取り出し方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、物品が格納された棚から対象物となる物品を取り出す移動ロボットを備える移動ロボット運用システムに関する。
【背景技術】
【０００２】  本技術分野の背景技術として、特開２００５−８８１７５号公報（特許文献１）がある。この公報には、「ロボット装置は、制御の対象となる手先（制御注目点）を対象物の表面に接触させる動作をする。ロボット装置は、(２Ａ)：歩行によるアプローチ、(２Ｂ)：下半身動作によるアプローチ、(２Ｃ)：腕等の上半身動作によるアプローチ等の複数の動作を有し、（２Ａ）＞（２Ｂ）＞（２Ｃ）の順に、手先を移動させることが可能な可動範囲は狭いが制御精度が高いものとなっており、これらの各動作により得られる制御注目点の可動範囲分布（Ｌ（ｘ）,Ｈ（ｘ））と、対象物との距離から得られる対象物の存在確率分布Ｏ（ｘ）とに基づき上半身の可動範囲Ｌのなかで制御注目点を最も移動させやすい位置にて対象物に接触できるように各動作を切り替える。」と記載されている（例えば要約参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−８８１７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】  特許文献１に記載の技術は、空間に対象物しか存在しない場合を前提としている。このため、特許文献１に記載の技術は、複数の物品の中から対象物を特定できず、複数の物品が存在する空間（例えば、倉庫又は工場等）で運用できない。【０００５】  本発明は、複数の物品が存在する場合であっても、対象物を特定し、移動ロボットが特定した対象物から取り出すことができる移動ロボット運用システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】  上記課題を解決するために、物品が格納された棚に移動し、前記棚に格納された対象物を取り出す移動ロボットと、前記移動ロボットを制御する移動ロボット制御装置とを備える移動ロボット運用システムであって、前記移動ロボットは、物品を含む領域を画像として撮影する撮影部を有し、前記移動ロボット運用システムは、前記対象物を含む第１対象物領域を撮影可能な第１条件で撮影された画像から対象物が存在する可能性があり第１対象物領域よりも限定された第２対象物領域を抽出する対象物領域抽出部と、前記対象物領域抽出部が抽出した第２対象物領域を前記第１対象物領域の全体を含まずに撮影可能な第２条件を設定する第２条件設定部と、前記第２条件で撮影された画像から前記対象物を識別し、前記対象物の位置を特定する対象物位置特定部と、をさらに備え、前記移動ロボットは、前記第１条件で前記第１対象物領域を撮影し、前記第２条件設定部で設定した第２条件で前記第２対象物領域を撮影し、前記対象物位置特定部が特定した対象物の位置に基づいて前記対象物を前記棚から取り出すことを特徴とする。
【発明の効果】
【０００７】  本発明によれば、複数の物品が存在する場合であっても、対象物を特定し、移動ロボットが特定した対象物から取り出すことができる移動ロボット運用システムを提供できる。【０００８】  上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【０００９】
【図１】実施例１の移動ロボット運用システムの構成図である。
【図２】実施例１の移動ロボットが第１地点に達した状態の説明図である。
【図３】実施例１の移動ロボットが第２地点に達した状態の説明図である。
【図４】実施例１の移動ロボットのハードウェア構成図である。
【図５】実施例１の移動ロボット制御装置のハードウェア構成図である。
【図６】実施例１の特徴量テーブルの説明図である。
【図７】実施例１の対象物把持処理のフローチャートである。
【図８】実施例１の第２地点算出処理のフローチャートである。
【図９】実施例１の対象物撮影距離算出処理の説明図である。
【図１０】実施例１の複数の第２地点の算出する処理の説明図である。
【図１１】実施例２の第２地点算出処理のフローチャートである。
【図１２】実施例３の特徴量テーブルの説明図である。
【図１３】実施例３の第２地点算出処理のフローチャートである。
【図１４】実施例４の把持動作処理のシーケンス図である。
【発明を実施するための形態】
【実施例１】
【００１０】  図１は、実施例１の移動ロボット運用システムの構成図である。【００１１】  移動ロボット運用システムは、移動ロボット制御装置１０及び少なくとも一つの移動ロボット２０を有する。移動ロボット制御装置１０と移動ロボット２０とは、無線で接続される。【００１２】  移動ロボット制御装置１０は、移動ロボット２０を管理する。例えば、移動ロボット制御装置１０は、対象物の物品情報及び対象物位置情報等を含む搬送指示を移動ロボット２０に送信したり、移動ロボット２０及び棚３０（図２参照）の位置を管理する。【００１３】  移動ロボット２０は、対象物が格納された棚３０から対象物を取り出す。取り出した対象物は、例えば、所定の箱に格納されてもよいし、他の棚３０に格納されてもよいが、これらに限定されない。【００１４】  移動ロボット２０は物品を含む領域を画像として撮影する撮影部２５０（図２参照）を搭載しており、移動ロボット２０は、対象物を含んだ第１対象物領域９９９９を撮影部２５０が撮影可能な地点である第１地点まで移動して、撮影部２５０によって第１対象物領域９９９９全体を撮影する。そして、移動ロボット２０は、第１地点で撮影された画像から対象物が存在する可能性が高い領域である第２対象物領域を抽出して、第１対象物領域９９９９を含まずに第２対象物領域全体を撮影部２５０が撮影可能な地点である第２地点まで移動する。そして、移動ロボット２０は、第２地点で撮影された画像に基づいて対象物の位置を特定して、対象物を棚３０から取り出す。なお、移動ロボット２０は、第１対象物領域９９９９に含まれる対象物の情報を事前情報として保持している。ここで、第１対象物領域９９９９は、棚３０全体、棚３０の中のある一つの段、複数の棚３０などが考えられる。ここから、実施例１〜４において、第１対象物領域９９９９は、棚３０全体の場合を例にとって説明する。そのため、第１対象物領域９９９９は棚３０全体と記載する場合がある。また、撮影部２５０は、カメラや距離画像センサ、それらの組み合わせとして実装される。撮影結果はそれぞれ色情報を持つ画像、距離情報を持つ距離画像、それらの組み合わせとなる。ここから、実施例１〜４において、撮影部２５０は、カメラの場合を例にとり説明することから、撮影部２５０をカメラ２５０と表現することがある。それに合わせて、撮影結果は単に画像と表現する。【００１５】  図２は、実施例１の移動ロボット２０が第１地点に達した状態の説明図である。【００１６】  棚３０は、仕切り板３１Ａ〜３１Ｃによって区切られる複数の間口３２Ａ及び３２Ｂが設けられる。棚３０の上方側の間口３２Ａに箱Ａ３３Ａ及び箱Ｂ３３Ｂが格納される。箱Ａ３３Ａと箱Ｂ３３Ｂとは同じ色をしており、棚３０に格納されたその他の箱とは色が異なる。例えば、箱Ａ３３Ａが対象物であるとする。【００１７】  移動ロボット２０は、二つのアーム２６Ａ及び２６Ｂを有し、一方のアーム２６Ａにはカメラ２５０が取り付けられる。二つのアーム２６Ａ及び２６Ｂの先端は物品等を把持可能なグリッパとなっている。移動ロボット２０は、第１地点まで移動すると、カメラ２５０で棚３０全体を撮影する。【００１８】  図３は、実施例１の移動ロボット２０が第２地点に達した状態の説明図である。【００１９】  第１地点で撮影された画像から、対象物となる箱Ａ３３Ａ及び当該箱Ａ３３Ａと同じ色の箱Ｂ３３Ｂを含む領域が第２対象物領域として抽出される。移動ロボット２０は、第２対象物領域全体が撮影可能な地点である第２地点まで移動し、第２対象物領域全体をカメラ２５０で撮影する。【００２０】  第２地点で撮影された画像から、移動ロボット２０は、第１地点で撮影された画像より詳細な情報（例えばバーコード等）を読み取ることができ、第２対象物領域から対象物の箱Ａ３３Ａの位置を特定できる。移動ロボット２０は、アーム２６Ｂを動作させて、箱Ａ３３Ａをアーム２６Ｂの先端に設けられるグリッパにより把持し、箱Ａ３３Ａを棚３０から取り出す。【００２１】  図４は、実施例１の移動ロボット２０のハードウェア構成図である。【００２２】  移動ロボット２０は、コントローラ２００、電源ユニット２０５、通信インタフェース（ＩＦ）２４０、カメラ２５０、アーム制御モータ２６０、グリッパ制御モータ２７０、走行用モータ２８０、及び距離センサ２９０を有する。これらは、バス２９５を介して接続される。【００２３】  コントローラ２００は、カメラ２５０、アーム制御モータ２６０、グリッパ制御モータ２７０、及び走行用モータ２８０の動作を制御する。【００２４】  通信ＩＦ２４０は、移動ロボット制御装置１０又は他の移動ロボット２０と無線で通信するためのインタフェースである。【００２５】  カメラ２５０は、画像を撮影する装置であり、例えば、アーム２６Ａに取り付けられるが、これに限定されない。アーム制御モータ２６０は、アーム２６Ａ及びアーム２６Ｂそれぞれを独立して動作させるためのモータである。グリッパ制御モータ２７０は、アーム２６Ａ及びアーム２６Ｂの先端のグリッパをそれぞれ独立して動作させるためのモータである。走行用モータ２８０は、移動ロボット２０を移動させるためのモータである。距離センサ２９０は、障害物までの距離を測定するためのセンサであり、例えば赤外線センサ等である。電源ユニット２０５は、バッテリとして実装され、コントローラ２００、通信ＩＦ２４０、カメラ２５０、アーム制御モータ２６０、グリッパ制御モータ２７０、走行用モータ２８０、及び距離センサ２９０に電源を供給する。【００２６】  コントローラ２００は、距離センサ２９０の測定結果と、地図データ２２２をマッチングして、自身の位置を把握して、第１地点及び第２地点まで移動するように走行用モータ２８０を制御し、第１地点及び第２地点でカメラ２５０を制御してカメラ２５０によって撮影し、対象物を棚３０から取り出すために、アーム制御モータ２６０及びグリッパ制御モータ２７０を制御する。【００２７】  コントローラ２００は、プロセッサ２１０、メモリ２２０、及び二次記憶装置２３０を有する。プロセッサ２１０は、各種演算処理を実行する。二次記憶装置２３０は非揮発性の非一時的な記憶媒体であり、各種プログラム及び各種データが記憶される。メモリ２２０は揮発性の一時的な記憶媒体であり、メモリ２２０には、二次記憶装置２３０に記憶された各種プログラム及び各種データがロードされ、プロセッサ２１０がメモリ２２０にロードされた各種プログラムを実行し、メモリ２２０にロードされた各種データを読み書きする。【００２８】  プロセッサ２１０は、移動地点算出部２１１、及び動作制御部２１６を有する。移動地点算出部２１１は、第１地点及び第２地点を算出するものであり、第１地点算出部２１２、対象物領域抽出部２１３、第２地点算出部２１４、及び対象物位置特定部２１５を有する。動作制御部２１６は、カメラ２５０、アーム制御モータ２６０、グリッパ制御モータ２７０、及び走行用モータ２８０の動作を制御する。【００２９】  第１地点算出部２１２は、カメラ２５０が棚３０全体を撮影可能な第１地点を算出する。対象物領域抽出部２１３は、第１地点で撮影された画像から対象物が存在する可能性がある第２対象物領域を抽出する。第２地点算出部２１４は、第２対象物領域全体が撮影可能であって、第１地点より対象物に近い地点である第２地点を算出する。対象物位置特定部２１５は、第２地点で撮影された画像から対象物の位置を特定する。【００３０】  メモリ２２０には、特徴量テーブル２２１、地図データ２２２、及びパラメータテーブル２２３が記憶される。特徴量テーブル２２１には、物品の特徴量、及び詳細特徴量が登録される。特徴量は第２対象物領域を抽出する場合に参照され、詳細特徴量は対象物の位置を特定する場合に参照される。特徴量テーブル２２１の詳細は、図６で説明する。地図データ２２２には、移動ロボット２０が走行する空間全体の地図が登録される。なお、地図データ２２２は、移動ロボット制御装置１０によって配布される。パラメータテーブル２２３には、カメラ２５０の画角等が登録される。【００３１】  また、メモリ２２０には、移動地点算出部２１１に対応するプログラム、及び動作制御部２１６に対応するプログラムが記憶される。移動地点算出部２１１に対応するプログラムは、第１地点算出部２１２、対象物領域抽出部２１３、第２地点算出部２１４、及び対象物位置特定部２１５それぞれに対応するプログラムを含む。プロセッサ２１０が、メモリ２２０に記憶された移動地点算出部２１１に対応するプログラムを実行することによって、移動地点算出部２１１を実装する。また、プロセッサ２１０が、第１地点算出部２１２、対象物領域抽出部２１３、第２地点算出部２１４、及び対象物位置特定部２１５それぞれに対応するプログラムを実行することによって、第１地点算出部２１２、対象物領域抽出部２１３、第２地点算出部２１４、及び対象物位置特定部２１５を実装する。また、プロセッサ２１０が、メモリ２２０に記憶された動作制御部２１６に対応するプログラムを実行することによって、動作制御部２１６を実装する。【００３２】  図５は、実施例１の移動ロボット制御装置１０のハードウェア構成図である。移動ロボット制御装置１０は、プロセッサ５１０、メモリ５２０、二次記憶装置５３０、及び無線インタフェース（ＩＦ）５４０を有する。プロセッサ５１０、メモリ５２０、二次記憶装置５３０、及び無線インタフェース（ＩＦ）５４０は、バス５５０を介して互いに接続される。【００３３】  プロセッサ５１０、メモリ５２０、及び二次記憶装置５３０のハードウェア的な動作については、図４に示すプロセッサ２１０、メモリ２２０、及び二次記憶装置２３０と同じであるので、説明を省略する。無線ＩＦ５４０は、移動ロボット２０と無線で通信するためのインタフェースである。【００３４】  なお、移動ロボット制御装置１０は、図示しない入力デバイス及び出力デバイスを有してもよい。入力デバイスは、例えば、キーボード及びマウス等であり、出力デバイスは、例えば、ディスプレイ等である。【００３５】  移動ロボット制御装置１０は、移動ロボット２０が取り出す対象となる物品である対象物を決定し、対象物の搬送指示を移動ロボット２０に送信する。搬送指示は、例えば、対象物の物品情報、対象物が格納された間口３２の位置を示す格納間口情報、及び対象物が格納された棚３０までの経路を含む。なお、対象物の物品情報は、少なくとも対象物の識別子を含む。移動ロボット２０が特徴量テーブル２２１を有さない場合、当該対象物の特徴量及び詳細特徴量を含んでもよい。また、格納間口情報は、当該対象物が格納された当該対象物が格納された棚３０の位置と、当該棚３０の当該対象物が格納された間口３２の位置とを含む。また、移動ロボット２０が、搬送指示に含まれる格納間口情報に基づいて、対象物が格納された棚３０までの経路を算出できる場合、搬送指示に、対象物が格納された棚３０までの経路は含まれなくてもよい。【００３６】  図６は、実施例１の特徴量テーブル２２１の説明図である。【００３７】  特徴量テーブル２２１は、物品ＩＤ６０１、特徴量６０２、詳細特徴量６０３、及び詳細撮影距離６０４を含む。【００３８】  物品ＩＤ６０１には、物品の識別子が登録される。特徴量６０２には、物品の特徴量が登録される。特徴量は、例えば、物品の色に基づく特徴量、物品のテクスチャに基づく特徴量、及び物品のエッジに基づく特徴量の少なくとも一つを含む。【００３９】  詳細特徴量６０３には、物品の詳細特徴量が登録される。詳細特徴量は、例えば、物品のラベルに含まれる文字情報（例えば、物品番号等）に基づく特徴量、及び物品に貼付されるバーコードに基づく特徴量の少なくとも一方を含む。特徴量は、物品外観全体の特徴量であるのに対して、詳細特徴量は、物品の一部に付された情報の特徴量であり、物品自体を識別可能な特徴量である。【００４０】  詳細撮影距離６０４には、詳細特徴量を取得するために必要な対象物からカメラ２５０までの距離である詳細撮影距離を特定可能な情報が登録される。詳細撮影距離６０４に登録された情報は、対象物からカメラ２５０までの距離であってもよいし、カメラ２５０が撮影された所定の面積に含まれる画素数であってもよい。すなわち、詳細撮影距離６０４には、詳細撮影距離を特定可能な情報が登録されていればよい。【００４１】  図７は、実施例１の対象物把持処理のフローチャートである。【００４２】  対象物把持処理は、移動ロボット２０が、移動ロボット制御装置１０から搬送指示を受信してから対象物を把持するまでの処理である。【００４３】  まず、移動ロボット２０は、移動ロボット制御装置１０から搬送指示を受信する（７０１）。搬送指示は、図５で説明したように、対象物の物品情報、及び格納間口情報を少なくとも含む。【００４４】  次に、第１地点算出部２１２は、パラメータテーブル２２３に��録されたカメラ２５０の画角に基づいて、対象物が格納された棚３０全体を撮影可能な第１地点を算出する（７０２）。具体的には、第１地点算出部２１２は、自身の位置と、対象物が格納された棚３０のサイズ（縦、横、及び高さ）と、カメラ２５０の画角とに基づいて、対象物が格納された棚３０全体を撮影可能な地点を算出し、算出した地点のうち任意の一つの地点を第１地点とする。なお、棚３０のサイズは、パラメータテーブル２２３に予め登録されていてもよいし、搬送指示に含まれていてもよい。また、棚３０に対応する第１地点が予め登録されている場合等には、移動ロボット２０は、搬送指示に含まれる格納間口情報に基づいて、第１地点を特定できるので、移動地点算出部２１１は、必ずしも第１地点算出部２１２を有さなくてもよい。【００４５】  次に、動作制御部２１６は、自身の位置を認識しながら、走行用モータ２８０を制御して、ステップ７０２の処理で算出した第１地点まで移動する（７０３）。【００４６】  移動ロボット２０が第１地点に達した場合、動作制御部２１６は、カメラ２５０を制御して、対象物が格納された棚３０を撮影する（７０４）。【００４７】  次に、対象物領域抽出部２１３は、ステップ７０４の処理で撮影した画像に含まれる全ての画素の特徴量を算出し、算出した特徴量が特徴量テーブル２２１の対象物の物品ＩＤに対応するレコードの特徴量から第１所定範囲内である画素を、第２対象物領域として抽出する（７０５）。なお、第２対象物領域は、図３で説明したように、対象物以外の物品を含む可能性がある。【００４８】  次に、第２地点算出部２１４は、ステップ７０５の処理で抽出した第２対象物領域全体を撮影可能であって、第１地点より対象物に近い第２地点を算出する（７０６）。第２地点の算出処理の詳細は、図８で説明する。【００４９】  次に、動作制御部２１６は、自身の位置を認識しながら、走行用モータ２８０を制御して、ステップ７０６の処理で算出した第２地点まで移動する（７０７）。【００５０】  移動ロボット２０が第２地点に達した場合、動作制御部２１６は、カメラ２５０を制御して、第２対象物領域全体を撮影する（７０８）。【００５１】  次に、動作制御部２１６は、ステップ７０８の処理で撮影した画像に含まれる全ての画素の詳細特徴量を算出し、算出した詳細特徴量が特徴量テーブル２２１の対象物の物品ＩＤに対応するレコードの詳細特徴量から所定範囲内である画素を、対象物として抽出し、対象物の位置を特定する（７０９）。【００５２】  次に、動作制御部２１６は、アーム制御モータ２６０及びグリッパ制御モータ２７０を制御して、ステップ７０９の処理の位置の対象物を把持して、対象物を棚３０から取り出し（７１０）、処理を終了する。【００５３】  図８は、実施例１の第２地点算出処理のフローチャートである。【００５４】  まず、第２地点算出部２１４は、特徴量テーブル２２１の物品ＩＤ６０１に、受信した搬送指示に含まれる対象物の物品ＩＤが登録されたレコードの詳細撮影距離６０４に登録された距離を詳細撮影距離（Ｄ１）として取得する（８０１）。【００５５】  次に、第２地点算出部２１４は、ステップ７０５の処理で撮影された第２対象物領域全体を撮影可能���あって、対象物に最も近い距離を対象物撮影距離（Ｄ２）として算出する（８０２）。対象物撮影距離（Ｄ２）の算出について図９を用いて説明する。図９は、実施例１の対象物撮影距離算出処理の説明図である。【００５６】  図９では、第２対象物領域のカメラ２５０に最も近い辺の長さをＷとし、カメラ２５０の画角をＡとし、算出する対象物撮影距離をＤ２とする。この対象物撮影距離は式１を計算することによって算出される。なお、Ｗは、最も近い辺の長さに所定値を加えた値であってもよい。【００５７】
【数１】
2017033254.tif 000003
【００５８】  なお、対象物撮影距離は、式１を計算した値に所定値を加算した値であってもよい。【００５９】  次に、第２地点算出部２１４は、ステップ８０１の処理で取得した詳細撮影距離（Ｄ１）がステップ８０２の処理で算出した対象物領域撮影距離（Ｄ２）以上であるか否かを判定する（８０３）。【００６０】  ステップ８０３の処理で、対象物領域撮影距離（Ｄ２）が詳細撮影距離（Ｄ１）より小さいと判定された場合（８０３：ＮＯ）、第２地点算出部２１４は、第２対象物領域の最もカメラ２５０に近い辺の中点から対象物領域撮影距離（Ｄ２）以上であって詳細撮影距離（Ｄ１）以下となる地点を第２地点として算出し（８０４）、第２地点算出処理を終了する。【００６１】  一方、ステップ８０３の処理で、対象物領域撮影距離（Ｄ２）が詳細撮影距離（Ｄ１）以上であると判定された場合（８０３：ＹＥＳ）、第２地点算出部２１４は、カメラ２５０の画角に基づいて、対象物領域撮影距離（Ｄ２）から撮影可能な範囲（Ｗ１）を算出し、第２対象物領域のカメラ２５０に最も近い辺の長さ（Ｗ）を算出した範囲（Ｗ１）で除算して、対象物領域撮影距離（Ｄ２）から対象物領域全体を撮影するために必要な撮影回数を算出する（８０５）。具体的には、第２地点算出部２１４は、ＷをＷ１で除算した結果に余りが存在すれば除算した商に１を加算した値を、撮影回数とし、余りが存在しなければ除算した商を撮影回数とする。【００６２】  次に、第２地点算出部２１４は、各回のカメラ２５０の位置を第２地点として算出し（８０６）、第２地点算出処理を終了する。【００６３】  図１０は、実施例１の複数の第２地点の算出する処理の説明図である。【００６４】  まず、対象物領域撮影距離（Ｄ２）から撮影可能な範囲（Ｗ１）は、式２を計算することによって、算出される。【００６５】
【数２】
2017033254.tif 000004
【００６６】  第２対象物領域の移動ロボット２０に近い方の端部から第２対象物領域の辺に沿ってＷ／２離れた位置から詳細撮影距離（Ｄ１）以下となる地点が最初の回の第２地点となる。【００６７】  二回目の第２地点は、最初の回の第２地点から第２対象物領域の辺と平行な方向にＷ１だけ離れた位置となる。このように、前回の第２地点の位置にＷ１を加算した位置を次の第２地点として、第２対象物領域の全体（Ｗ）が撮影されるまでの第２地点を求める。【００６８】  本実施例によれば、移動ロボット２０は、第１地点で棚３０全体を撮影し、第１地点で撮影された画像から抽出された対象物が存在する可能性がある第２対象物領域を含む領域を撮影可能な第２地点に移動し、前記第２地点で前記第２対象物領域を撮影し、前記第２地点で撮影された画像から特定された対象物の位置に基づいて前記対象物を前記棚から取り出す。これによって、複数の物品が存在する場合であっても、対象物を特定し、移動ロボットが特定した対象物から取り出すことができる。【００６９】  また、本実施例によれば、対象物領域撮影距離が詳細撮影距離特定以上である場合、第２対象物領域全体を撮影するために、詳細撮影距離を満たす複数の地点を第２地点として算出し、対象物領域撮影距離が前記対象物の前記詳細撮影距離特定情報によって特定される詳細撮影距離より小さい場合、対象物領域撮影距離を満たす地点を第２地点として算出する。これによって、詳細特徴量を算出可能な距離で、第２対象物領域を撮影でき、正確に対象物を特定できる。
【実施例２】
【００７０】  実施例２を図１１を用いて説明する。実施例２では、対象物領域撮影距離が詳細撮影距離以上であっても、第２対象物領域で対象物のみが存在する領域が特定できる場合、当該対象物のみが存在する領域全体を撮影可能な地点を第２地点として算出する。これによれば、対象物でない物品を撮影しないので、移動ロボット２０の処理負荷を軽減できる。【００７１】  図１１は、実施例２の第２地点算出処理のフローチャートである。図１１では、実施例１の図８に示す第２地点算出処理と同じ処理は、同じ符号を付与し、説明を省略する。【００７２】  ステップ８０３の処理で、対象物領域撮影距離（Ｄ２）が詳細撮影距離（Ｄ１）以上であると判定された場合（８０３：ＹＥＳ）、第２地点算出部２１４は、第２対象物領域に含まれる画素の特徴量が特徴量テーブル２２１の対象物の物品ＩＤに対応するレコードの特徴量から第２所定範囲内である画素を、対象物のみが存在する領域として抽出し、当該領域が抽出されたか否かを判定する（１１０１）。第２所定範囲は、ステップ７０３の処理で用いる第１所定範囲より狭い範囲である。【００７３】  ステップ１１０１の処理で、対象物のみが存在する領域が抽出されないと判定された場合（１１０１：ＮＯ）、第２地点算出部２１４は、実施例１と同様にステップ８０５及び８０６の処理を実行する。【００７４】  一方、ステップ１１０１の処理で、対象物のみが存在する領域が抽出されたと判定された場合（１１０１：ＹＥＳ）、第２地点算出部２１４は、抽出された領域の対象物全体を撮影可能な距離である対象物撮影距離（Ｄ３）を算出する（１１０２）。【００７５】  次に、第２地点算出部２１４は、ステップ１１０２の処理で算出した対象物撮影距離（Ｄ３）がステップ８０１の処理で取得した詳細撮影距離（Ｄ１）以上であるか否かを判定する（１１０３）。【００７６】  ステップ１１０３の処理で、対象物撮影距離（Ｄ３）が詳細撮影距離（Ｄ１）より小さいと判定された場合（１１０３：ＮＯ）、第２地点算出部２１４は、対象物のみが存在する領域の最もカメラ２５０に近い辺の中点からの距離が対象物撮影距離（Ｄ３）以上であって詳細撮影距離（Ｄ１）以下となる地点を第２地点として算出し（１１０４）、第２地点算出処理を終了する。【００７７】  一方、ステップ１１０３の処理で、対象物撮影距離（Ｄ３）が詳細撮影距離（Ｄ１）以上である判定された場合（１１０３：ＹＥＳ）、第２地点算出部２１４は、ステップ８０５及び８０６の処理を実行する。この場合、第２対象物領域全体ではなく対象物のみが存在する領域全体を撮影するようにする回数及び第２地点を算出する。【００７８】  以上によって、対象物でない物品を撮影しないので、移動ロボット２０の処理負荷を軽減できる。また、撮影回数も減らすことができるので、より早く対象物を棚３０から取り出すことができる。
【実施例３】
【００７９】  実施例３を図１２及び図１３を用いて説明する。実施例３では、詳細撮影距離が対象物領域撮影距離より小さくても、第２対象物領域で対象物のみが存在する領域が特定できる場合、対象物のみが存在する領域に含まれる詳細特徴量を算出するために読み取る位置から詳細撮影距離だけ離れた地点を第２地点として算出する。これによれば、詳細特徴量の算出に関係しない領域を撮影しないので、移動ロボット２０の処理負荷を軽減できる。【００８０】  図１２は、実施例３の特徴量テーブル２２１の説明図である。【００８１】  実施例３の特徴量テーブル２２１は、物品ＩＤ６０１、特徴量６０２、詳細特徴量６０３、及び詳細撮影距離６０４の他に、詳細特徴量読取位置１２０１を含む。【００８２】  詳細特徴量読取位置１２０１には、詳細特徴量を算出するための領域（読取領域）の物品内での位置に関する情報が登録される。例えば、詳細特徴量読取位置１２０１には、当該領域を含む面の面積と、当該面における当該領域の位置とが登録される。【００８３】  図１３は、実施例３の第２地点算出処理のフローチャートである。図１３では、実施例１の図８に示す第２地点算出処理及び実施例２の図１１に示す第２地点算出処理と同じ処理は、同じ符号を付与し、説明を省略する。【００８４】  ステップ１１０１の処理で、対象物のみが存在する領域が抽出されたと判定された場合（１１０１：ＹＥＳ）、第２地点算出部２１４は、特徴量テーブル２２１の物品ＩＤ６０１に対象物となる物品の識別子が登録されたレコードの詳細特徴量読取位置１２０１に登録された情報を取得する（１３０１）。【００８５】  次に、第２地点算出部２１４は、ステップ１３０１の処理で取得した情報に基づいて、対象物のみが存在する領域における読取領域に対応する領域を特定する（１３０２）。具体的には、第２地点算出部２１４は、第１地点で撮影された画像における対象物のみが存在する領域の面積を算出し、第１地点と当該領域との間の距離に基づいて、算出した面積を実際の面積に変換する。そして、第２地点算出部２１４は、変換した面積が、ステップ１３０１の処理で取得した情報に含まれる読取領域を含む面の面積から所定範囲内である場合、対象物のみが存在する領域が読取領域を含む面であると判断する。そして、第２地点算出部２１４は、対象物のみが存在する領域内における詳細特徴量読取位置１２０１に登録された読取領域に対応する領域を特定する。【００８６】  次に、第２地点算出部２１４は、ステップ１３０２の処理で特定した読取領域に対応する領域全体を撮影可能な地点を第２地点として算出し（１３０３）、第２地点算出処理を終了する。読取領域は、例えばバーコード等が印刷されたラベル等である場合が多く、通常、読取領域に対応する領域全体を撮影可能な最小の距離は、詳細撮影距離より小さくなるので、第２地点算出部２１４は、読取領域に対応する領域全体を撮影可能な最小の距離以上であって詳細撮影距離以下となる地点を第２地点として算出すればよい。【００８７】  なお、読取領域に対応する領域全体を撮影可能な最小の距離が詳細撮影距離以上である場合、ステップ８０５及び８０６の処理のように、第２地点算出部２１４は、詳細撮影距離以下となる複数の地点を第２地点として算出してもよい。【００８８】  以上によって、詳細特徴量の算出に関係しない領域を撮影しないので、移動ロボット２０の処理負荷を軽減できる。また、撮影回数も減らすことができるので、より早く対象物を棚３０から取り出すことができる。
【実施例４】
【００８９】  実施例４を図１４を用いて説明する。本実施例では、移動ロボット制御装置１０が第１地点及び第２地点を算出する。本実施例では、移動ロボット２０は移動地点算出部２１１及び特徴量テーブル２２１を有さず、移動ロボット制御装置１０のプロセッサ５１０は、移動地点算出部２１１を有し、移動ロボット制御装置１０のメモリ５２０が、特徴量テーブル２２１及び各移動ロボット２０のパラメータテーブル２２３を記憶する。【００９０】  図１４は、実施例４の把持動作処理のシーケンス図である。図１４では、図７に示す処理と同じ処理は、同じ符号を付与し、説明を省略する。【００９１】  まず、移動ロボット制御装置１０は移動ロボット２０に対象物を棚３０から取り出させる場合、ステップ７０２の処理で、第１地点算出部２１２が、第１地点を算出し、算出した第1地点を含む第１地点移動指示を移動ロボット２０に送信する（１４０１）。【００９２】  移動ロボット２０が第１地点移動指示を受信した場合、ステップ７０３の処理で、動作制御部２１６は、走行用モータ２８０を制御し、第１地点まで移動し、ステップ７０４の処理でカメラ２５０を制御して対象物が格納された棚３０全体を撮影する。そして、移動ロボット２０は、第１地点で撮影した画像である棚撮影画像を移動ロボット制御装置１０に送信する（１４０２）。【００９３】  移動ロボット制御装置１０が棚撮影画像を受信した場合、ステップ７０５の処理で、対象物領域抽出部２１３が第２対象物領域を抽出し、ステップ７０６の処理で、第２地点算出部２１４が第２地点を算出し、算出した第２地点を含む第２地点移動指示を移動ロボット２０に送信する（１４０３）。【００９４】  移動ロボット２０が第２地点移動指示を受信した場合、ステップ７０７の処理で、動作制御部２１６は、走行用モータ２８０を制御し、第２地点まで移動し、ステップ７０８の処理でカメラ２５０を制御して第２対象物領域全体を撮影する。そして、移動ロボット２０は、第２地点で撮影した画像である詳細撮影画像を移動ロボット制御装置１０に送信する（１４０４）。【００９５】  移動ロボット制御装置１０が詳細撮影画像を受信した場合、ステップ７０９の処理で、対象物位置特定部２１５は、受信した詳細撮影画像に基づいて、対象物の位置を特定し、特定した対象物の位置を含む対象物把持指示を移動ロボット２０に送信する（１４０５）。【００９６】  移動ロボット２０が対象物把持指示を受信した場合、ステップ７１０の処理で、動作制御部２１６は、アーム制御モータ２６０及びグリッパ制御モータ２７０を制御して、受信した対象物把持指示に含まれる対象物の位置の対象物を把持して、対象物を棚３０から取り出す。【００９７】  以上によって、移動ロボット制御装置１０が第１地点及び第２地点を算出し、対象物の位置を特定するので、移動ロボット２０の処理負荷を軽減することができる。【００９８】  実施例１〜実施例４では、移動ロボット２０は、第１地点で棚３０全体を撮影し、第２地点まで移動して第２対象物領域を撮影したが、これに限定されない。例えば、移動ロボット２０は、カメラ２５０の棚３０全体を撮影可能な第１焦点距離で棚３０全体を撮影し、棚３０全体を含まずに第２対象物領域を撮影可能な第２焦点距離で第２対象物領域を撮影してもよい。なお、第２焦点距離は第１焦点距離より長い。また、画角が広ければ焦点距離が短く、画角が狭ければ焦点距離が長いので、画角を調整することによって第１焦点距離及び第２焦点距離を設定してもよい。移動ロボット２０は、カメラ２５０の棚３０全体を撮影可能な第１画角で棚３０全体を撮影し、棚３０全体を含まずに第２対象物領域を撮影可能な第２画角で第２対象物領域を撮影しもよい。なお、第２画角は第１画角より狭い。このため、特許請求の範囲では、第１地点、第１焦点距離、及び第１画角等を含む概念を第１条件として記載し、第２地点、第２焦点距離、及び第２画角等を含む概念を第２条件として記載した。第１地点算出部２１２は第１条件設定部に相当し、第２地点算出部２１４は第２条件設定部に相当する。【００９９】  なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることも可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、及び置換をすることが可能である。【０１００】  また、各実施例の構成の一部について、他の構成の追加、削除、及び置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。【０１０１】  また、前記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。【０１０２】  各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、または、ＩＣ（Integrated Circuit）カード、ＳＤカード、ＤＶＤ（Digital Versatile Disc）等の記録媒体に置くことができる。【０１０３】  また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。【０１０４】  事前情報として保持している対象物を含んだ第１対象物領域９９９９は、移動ロボット２０の運用中に生成されても良い。例えば、第２対象物領域を抽出する対象物領域抽出部２１３のように、第１対象物領域９９９９を含むより広い領域を撮影部２５０が撮影した画像から第１対象物領域９９９９を抽出する事前対象物領域抽出部９９９８を移動ロボット２０が備え、移動ロボット２０は、まず、事前対象物領域抽出部９９９８を用いて、撮影部２５０が撮影した画像から第１対象物領域９９９９を抽出しても良い。例えば、移動ロボット２０が事前情報として保持している棚３０のモデルに基づき、画像から棚３０を抽出し、第１対象物領域９９９９としても良い。
【図１】
2017033254.tif 000005
【図２】
2017033254.tif 000006
【図３】
2017033254.tif 000007
【図４】
2017033254.tif 000008
【図５】
2017033254.tif 000009
【図６】
2017033254.tif 000010
【図７】
2017033254.tif 000011
【図８】
2017033254.tif 000012
【図９】
2017033254.tif 000013
【図１０】
2017033254.tif 000014
【図１１】
2017033254.tif 000015
【図１２】
2017033254.tif 000016
【図１３】
2017033254.tif 000017
【図１４】
2017033254.tif 000018
【国際調査報告】
2017033254.tif 000019
2017033254.tif 000020
2017033254.tif 000021
2017033254.tif 000022