(57)【要約】【課題】物体を運搬するタスクにおいて、ロボットの駆動状態等によって使用する参照データを切り替えることにより、タスクの実行時間を短縮する。【解決手段】ロボット１０は、画像取得を行うためのカメラユニット１と、カメラユニット本体の位置・向きを変えることができる、首・車輪・脚などの駆動部２と、把持対象物認識を行うために駆動部２を制御するロボット制御部３と、カメラユニット１により取得された画像の処理を行う画像処理部４と画像処理を行うための対象物データを登録・格納する認識対象物データベース部５を有しており、駆動部２の状態等によって、参照データ５１として特徴の情報量の多いものと少ないもの等、少なくとも２ケース以上用意されたデータについて、いずれを使用するか決定して切り替えを行い、ロボットが移動中でも効率的に対象物認識を行う。【選択図】図２
2010221325.tif 000002
【特許請求の範囲】
【請求項１】
周囲を撮影するカメラと、
第１の参照データと、当該第１の参照データよりも情報量の多い第２の参照データを格納するデータベース格納部と、
カメラが移動している場合には、前記データベース格納部に格納された第１の参照データを用い、カメラが静止している場合には、前記データベース格納部に格納された第２の参照データを用いて、前記カメラにより撮影された画像情報に基づき画像認識を行う画像処理部とを備えた移動ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラと画像処理手段を備えた移動ロボットに関して、特に画像認識技術に関するものである。
【背景技術】
【０００２】
近年、サービスロボットの機能のひとつとして、物体を運搬するタスクが挙げられる。運搬タスクを実行するためには、運搬対象物の認識が必要となるが、従来ではロボットに小型のＣＣＤ（Charge Coupled Device）カメラなどを配設しサンプリング周期ごとに画像を取得し、事前に登録された画像情報とテンプレートマッチングすることにより実現している。しかし、家庭用サービスロボットの場合、ロボットは室内外移動を行うため、搭載カメラが常に静止しているとは限らない。
【０００３】
搭載カメラが静止していない状態で撮影を行うと、一般的なＣＣＤカメラではフレームレートが遅いため取得画像がぶれてしまい、画像処理による対象物の認識率が低下することがある。この対策として、ロボットを一旦停止させ対象物認識を行うことが考えられるが、全体的なタスク実行時間が増えてしまう問題がある。また、ロボットの移動中に撮影した画像に対して画像処理を施し、対象物認識閾値を下げ画質の粗い画像を用いることや、特徴量の少ない参照データを用いることが考えられるが、対象物の誤検出や未検出の確率が高くなるデメリットがある。また、高フレームレートで撮影できるＣＣＤカメラを用いることによって、取得画像がぶれないようにすることが考えられるが、コストが高くなるほか、搭載スペースが増える、処理時間が余計にかかるなどのデメリットがある。また、移動カメラでも認識が容易になるように、単純模様の認識用マーカーを対象物に貼る方法が考えられるが、マーカー部分がカメラの死角に入ると認識できなくなるため、実用的ではない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１１９７４６号公報
【特許文献２】特開２００７−３１９９３８号公報
【特許文献３】特開平１１−３５１８３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術は、カメラの位置及び移動速度に基づいて、カメラ画像を補正し、補正画像に基づいて画像認識を行うことにより、カメラが静止していなくても被写体の認識を行うものである。しかしながら、撮影された画像について補正処理を行うため、情報量の多い場面においては処理時間が増加するものと考えられる。
特許文献２の技術は、頭部および手先に設置したカメラにより把持対象物の三次元形状を認識するものである。しかしながら、この方法では対象物までの距離が遠い場合には、三次元形状の算出の精度が低下し、物体の把握が難しくなる。
特許文献３の技術は、カメラ部と移動体速度計測部を組み合わせて、一定時間のデータ撮影と物体の移動速度を計測し蓄積する。この蓄積画像を物体の移動速度により間引きして物体上のパターン認識に即した画像を得るものである。しかしながら、この方法は固定撮像素子が１ラインしかないラインセンサカメラを用いるものであり、被写体の一部が視野から外れるといった場合には認識が難しくなる等の問題がある。
【０００６】
本発明は、このような問題を解決するためになされたものであり、移動中でも効率的に対象物認識を行うことができ、その結果、タスクの実行時間短縮を図ることができるロボットを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明にかかる移動ロボットは、周囲を撮影するカメラと、第１の参照データと、当該第１の参照データよりも情報量の多い第２の参照データを格納するデータベース格納部と、カメラが移動している場合には、前記データベース格納部に格納された第１の参照データを用い、カメラが静止している場合には、前記データベース格納部に格納された第２の参照データを用いて、前記カメラにより撮影された画像情報に基づき画像認識を行う画像処理部とを備えたものである。
【発明の効果】
【０００８】
本発明によれば、移動中でも効率的に対象物認識を行うことができ、その結果、タスクの実行時間短縮を図ることができるロボットを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１にかかるロボットの外観を示す図である。
【図２】実施の形態１にかかるロボットの全体構成を示す図である。
【図３】実施の形態１にかかる参照データの特徴を示す図である。
【図４】実施の形態１にかかるロボットの駆動の有無による参照データの切り替え手順を示すフローチャートである。
【図５】実施の形態１にかかるカメラの視野による参照データの切り替え手順を占めすフローチャートである。
【図６】実施の形態１にかかる物体の把持手順を示す図である。
【図７】実施の形態１にかかる物体の把持手順の並列処理を示す図である。
【図８】実施の形態２にかかる首旋回中のカメラ画像と参照データ切り替えのタイミングを示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して本発明の実施の形態について説明する。
【００１１】
発明の実施の形態１．
図１は、本発明の実施にかかるロボット１０の外観を示す図である。また、図２は、実施の形態１にかかるロボットの全体構成を示す図である。
【００１２】
図１、図２に示されるように、ロボット１０は、カメラユニット１と、駆動部２と、ロボット制御部３と、画像処理部４と、認識対象物データベース部５と、認識ロジック制御部６を備えている。
【００１３】
カメラユニット１は、ロボット１０の周囲を撮影し、画像取得を行う。カメラユニット１が取得した画像情報は、画像処理部４に出力する。
【００１４】
駆動部２は、カメラユニット１の位置・向きを変えることができる、首・車輪・脚などに設けられたアクチュエータである。
【００１５】
ロボット制御部３は、把持対象物の認識を行うために駆動部２を制御する制御コンピュータである。ロボット制御部３は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により構成され、制御プログラムに基づき、各種の処理を実行する。
【００１６】
画像処理部４は、カメラユニット１により取得された画像情報を入力し、画像処理を行う。
【００１７】
認識対象物データベース部５は、画像処理部４において画像処理を行う場合に参照される対象物の画像情報を登録・格納する記憶手段である。当該認識対象データベース部５には、登録される１つの対象物に対し、パターンマッチング用の複数の参照データ５１が格納されている。
【００１８】
認識ロジック制御部６は、ロボットの行動状態を把握し、認識対象物の参照データ５１を適宜切り替える処理部である。
【００１９】
次に、２つの参照データを用いて画像認識を行う手法について説明する。
ただし、ロボットはあらかじめ１つ対象物に対して参照データ５１を有しており、この参照データ５１には、対象物の特徴の情報量が少ないものと、特徴の情報量が多いものがそれぞれ登録されているものとする。図３に両者の特徴・メリット・デメリットを示す。図３に示されるように、情報量が少ない場合には、画像処理に必要な特徴点が少ないという特徴を有し、カメラ画像がぶれてもある程度マッチングできるというメリットがある一方で、誤検出が多くなるというデメリットがある。他方、情報量が多い場合には、画像処理に必要な特徴点が多いという特徴を有し、誤検出が少ないというメリットがある一方で、カメラ画像がぶれると、マッチングが困難であるというデメリットがある。
【００２０】
続いて、図４を用いて実施の形態１にかかるロボットの駆動の有無による参照データの切り替え処理の流れについて説明する。
【００２１】
ロボット１０は、駆動部２を用いてカメラユニット１を動かしながら、カメラユニット１で画像を取得した後、画像処理部３で画像認識を行う。このとき、認識ロジック制御部６は、駆動部３が駆動中であるか否かの判定を行う（ステップＳ１０１）。認識ロジック制御部６は、駆動部３が駆動中であると判定した場合には、情報量が少ないものとして認識対象物データベース部５に登録されたものを参照データ５１として選択する（ステップＳ１０２）。
【００２２】
また、認識ロジック制御部６は、駆動部３が駆動中でないと判定した場合には、情報量が多いものとして認識対象物データベース部５に登録されたものを参照データ５１として選択する（ステップＳ１０３）。
【００２３】
ステップＳ１０２及びステップＳ１０３に続いて、画像処理部４は、選択された参照データ５１と、カメラユニット１によって取得された画像情報を、パターンマッチング等により画像認識を行う（ステップＳ１０４）。その後ステップＳ１０１に戻り、同様の処理を繰り返し行う。
【００２４】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、あらかじめ登録しておく参照データ５１には、特徴の情報量の多いものと少ないものの２種類のみではなく、その中間にあたるもの等を複数用意し、駆動状態に即して適宜参照データ５１の切り替えを行うことができる。
【００２５】
次に、図５のフローチャートを用いて、駆動部の動きによらずに参照データを切り替える方法について示す。
【００２６】
まず、画像処理部４は、対象物の認識として、画像の特徴の情報量の少ない参照データを用いて画像処理を行う（ステップＳ２０１，Ｓ２０２）。次に、画像処理部４は、対象物候補がカメラの視野内にあると判定する（ステップＳ２０３）。さらに、画像処理部４は、対象物候補が画角の端にあるかを判定することにより、カメラの視野から外れそうであるか否かの判定を行う（ステップＳ２０４）。画像処理部４は、カメラの視野から外れそうであると判定した場合は、カメラ本体の移動方向を取得する（ステップＳ２０５）。
【００２７】
さらに、この場合に、対象物候補が画角から外れる方向であるか否かの判定を行う（ステップＳ２０６）。ステップＳ２０３において対象物が発見できない場合、ステップＳ２０４で対象物が画角の端ではない場合、ステップＳ２０６で対象物が画角から外れる方向でない場合には、それぞれステップＳ２０２に戻り画像処理を行う。
【００２８】
一方、ステップＳ２０６において対象物が画角から外れる方向であれば、ロボットを停止し（ステップＳ２０７）、画像の特徴の情報量の多い参照データに切り替えて（ステップＳ２０８）、画像処理を行う（ステップＳ２０９）。これにより対象物を発見できたか否かの判定を行い（ステップＳ２１０）、対象物が発見できれば認識結果を確定する。対象物が発見できなければステップＳ２０１に戻り、画像の特徴の情報量の少ない参照データでの画像処理を行う。
【００２９】
次に、画像認識を行う手法とともに、ステレオカメラ等を用いて物品運搬タスクを実施する手法について示す。物品の運搬タスクは、対象物を取ってくるタスクと、運搬目標位置まで移動するタスクと、対象物を目標位置に置くタスクから構成されている。本発明はこのうちの対象物を取ってくるタスクの実行時間短縮を図るものである。
【００３０】
図６に物体の把持を行う処理の手順を示す。まず、運搬対象物が置かれている近傍まで移動機構（脚・車輪など）を用いて移動する（ステップＳ３０１）。目標地点に到達後、画像処理部４は、ロボット搭載のカメラユニット１により画像を取得し（ステップＳ３０２）、画像処理を行う。次に、画像処理部４は、取得されたカメラ画像と参照データ５１に登録されている対象物データが一致するものを探し（ステップＳ３０３）、対象物認識を行う（ステップＳ３０４）。画像処理部４は、対象物認識に成功した場合は、ステレオカメラ等の技術を用いて対象物の３次元位置を算出する（ステップＳ３０５）。
認識ロジック制御部６は、次に物体がロボットから把持可能位置にあるかどうか判定を行う（ステップＳ３０６）。ロボット制御部３は、把持可能であると判定した場合には、アームを用いて物体の把持を行う。なお、ステップＳ３０４において対象物認識に失敗した場合およびステップＳ３０６においてロボットが物体を把持可能な位置に無いと判定された場合には、ステップ３０８において停止位置変更によるリカバリ処理を行い、ステップＳ３０１に戻る。
【００３１】
上記ステップＳ３０３において参照データ５１を用いる際に、参照データを画像の特徴の情報量の多いものと少ないものとで切り替えることにより、場面に応じて処理速度の向上を図ることができる。また、移動中に対象物認識を行い、適宜、移動目的地を修正することで、移動目的地到達後に対象物認識手順Ｓ３０３やリカバリ処理Ｓ３０８を行う手順を省くことができる。
【００３２】
次に、物体の把持を行う処理の手順について、ロボットの移動タスクと対象物発見のタスクを並列処理とする手法について示す。
【００３３】
図７は対象物発見のタスクを並列処理する手順を示した図である。図７の手順は図６のステップＳ３０１による移動手順を、ステップＳ３０２からステップＳ３０６と分離して並列処理させたものに相当する。具体的には、ステップＳ４０２はステップＳ３０１に相当し、ステップＳ４０３はステップＳ３０２に相当し、ステップＳ４０４〜Ｓ４０６はステップＳ３０３に相当し、ステップＳ４０７はステップＳ３０４に相当し、ステップＳ４０８はステップＳ３０５に相当し、ステップＳ４０９はステップＳ３０６に相当し、ステップＳ４１０はステップＳ３０７に相当し、ステップＳ４１１はステップＳ３０８に相当するものであり、各ステップにおける処理の説明は省略する。また、移動中に対象物認識を行う際にカメラ本体の旋回をチェックし、直進中であれば参照データは画像の特徴の情報量の多いものを用い、旋回中であれば画像の特徴の情報量の少ないものを用いて対象物発見を試みる。
【００３４】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【００３５】
発明の実施の形態２．
図８にロボットが移動を伴わず、首を動かしながら対象物認識を行う例について示す。これは移動しながら対象物認識を試みたが、目的地に到着した段階で対象物が発見できていない場合などに相当する。
【００３６】
まず図８(a)に示されるように、対象物が発見できてない場合には特徴の情報量の少ない参照データを採用し、首を動かしながら対象物の探査を行う。対象物候補が見つからない場合のカメラ画像は図８(d)のようになる。次に、図８(b)に示されるように、特徴の情報量の少ない参照データで対象物候補が発見された場合には、情報量の少ない参照データでは誤検出が多いため、首は静止しない。発見の度に静止してはタスクが進まないためである。画角から外れそうになったときのみ静止することにより、静止回数を低減することができる。この対象物候補の検出において誤検出が発生することがあり、誤検出が起きた場合のカメラ画像は図８(e)のようになる。次に、図８(c)に示されるように、対象物候補が発見された後も首旋回を対象物候補がカメラの視野から外れない範囲で継続し、新たに対象物候補が発見されたら、特徴の情報量の多い参照データに切り替え再度対象物認識を行う。対象物候補の誤検出と正常検出が同時に行われた場合のカメラ画像は図８(f)のようになる。対象物認識の結果、対象物候補のうち参照データ中の特徴と近いものを対象物として判定する。これにより誤検出による首旋回停止の回数を軽減して対象物の認識を行うことができる。
【００３７】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００３８】
１    カメラユニット
２    駆動部
３    ロボット制御部
４    画像処理部
５    データベース格納部
５１    マッチング用参照データ
６    認識ロジック制御部
１０    ロボット
Ｏ    対象物
Ｏ１    対象物候補(誤検出)
Ｏ２    対象物候補(正常)
Ｓ    首を動かす方向
【図１】
2010221325.tif 000003
【図２】
2010221325.tif 000004
【図３】
2010221325.tif 000005
【図４】
2010221325.tif 000006
【図５】
2010221325.tif 000007
【図６】
2010221325.tif 000008
【図７】
2010221325.tif 000009
【図８】
2010221325.tif 000010