(57)【要約】      （修正有）【課題】計算時間を低減して人間の行動を正確に特定できるコミュニケーションロボットおよびそれを用いた動作識別システムを提供する。【解決手段】動作識別システム１０はコミュニケ−ショロボット１２を含み、コミュニケ−ショロボット１２は人間が所持する、または人間の近傍に存在する物品のタグＩＤを検出する。コミュニケーションロボット１２は、検出したタグＩＤから人間の動作候補を決定する。また、コミュニケ−ショロボット１２は、眼カメラで、人間の画像（映像）を撮影する。そして、動作候補の各々と撮影画像との類似度を算出し、撮影画像が示す動作を、類似度が最も高い動作として特定する。【選択図】図１
2006268607.tif 000002
【特許請求の範囲】
【請求項１】
人間を撮影する撮影手段、
前記人間の近傍に存在する物体についての識別情報を検出する識別情報検出手段、
前記識別情報検出手段によって検出された識別情報に基づいて前記人間の動作を予測する動作予測手段、および
前記撮影手段によって撮影された撮影画像が示す前記人間の実動作と前記動作予測手段によって予測された予測動作とから当該実動作を特定する動作特定手段を備える、コミュニケーションロボット。
【請求項２】
前記撮影画像が示す前記人間の実動作と前記予測動作の各々との類似度を算出する類似度算出手段をさらに備え、
前記動作特定手段は、前記類似度算出手段によって算出された類似度が最も高い前記予測動作を前記実動作として特定する、請求項１記載のコミュニケーションロボット。
【請求項３】
コミュニケーションロボットと、このコミュニケーションロボットと通信可能に設けられるサーバとを備える動作識別システムであって、
前記コミュニケーションロボットは、
人間を撮影する撮影手段、
前記人間の近傍に存在する物体についての識別情報を検出する識別情報検出手段、
検出した識別情報を前記サーバに送信する識別情報送信手段、
前記サーバから前記人間の予測動作情報を受信する予測動作情報受信手段、および
前記撮影手段によって撮影された撮影画像が示す前記人間の実動作と前記予測動作情報受信手段によって受信された予測動作情報とから当該実動作を特定する動作特定手段を備え、
前記サーバは、
前記識別情報送信手段に送信された識別情報を受信する識別情報受信手段、および
前記識別情報受信手段によって受信された識別情報に基づいて取得した前記人間の予測動作情報を前記コミュニケーションロボットに送信する予測動作情報送信手段を備える、動作識別システム。
【請求項４】
コミュニケーションロボットと、このコミュニケーションロボットと通信可能に設けられるサーバとを備える動作識別システムであって、
前記コミュニケーションロボットは、
人間を撮影する撮影手段、
前記人間の近傍に存在する物体についての識別情報を検出する識別情報検出手段、および
前記撮影手段によって撮影された撮影画像と前記識別情報検出手段によって検出された識別情報とを前記サーバに送信する送信手段を備え、
前記サーバは、
前記送信手段に送信された撮影画像と識別情報とを受信する受信手段、
前記受信手段によって受信された識別情報に基づいて前記人間の動作を予測する動作予測手段、
前記識別情報受信手段によって受信された撮影画像が示す前記人間の実動作と前記動作予測手段によって予測された予測動作とから当該実動作を特定する動作特定手段を備える、動作識別システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はコミュニケーションロボットおよびそれを用いた動作識別システムに関し、特にたとえば、人間の動作を識別する、コミュニケーションロボットおよびそれを用いた動作識別システムに関する。
【背景技術】
【０００２】
本件出願人は、特許文献１に代表されるように、人間と相互作用するコミュニケーションロボットを提案してきた。
【特許文献１】特開２００２−３５５７８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
背景技術のコミュニケーションロボットを用いて、その周囲に存在する人間の動作を識別する場合には、たとえば、人間のあらゆる動作（行動）についての映像を予め記録しておき、撮影した映像と予め記録しておいた映像とを比較し、いずれか１つの動作を特定する。これでは、計算量が膨大である。また、映像のみで動作を判断した場合には、異なる動作であっても映像が似ている動作では、誤った動作として特定してしまう可能性がある。
【０００４】
それゆえに、この発明の主たる目的は、新規な、コミュニケーションロボットおよびそれを用いた動作識別システムを提供することである。
【０００５】
この発明の他の目的は、計算処理を低減して人間の行動を正確に特定できる、コミュニケーションロボットおよびそれを用いた動作識別システムを提供することである。
【課題を解決するための手段】
【０００６】
請求項１の発明は、人間を撮影する撮影手段、人間の近傍に存在する物体についての識別情報を検出する識別情報検出手段、識別情報検出手段によって検出された識別情報に基づいて人間の動作を予測する動作予測手段、および撮影手段によって撮影された撮影画像が示す人間の実動作と動作予測手段によって予測された予測動作とから当該実動作を特定する動作特定手段を備える、コミュニケーションロボットである。
【０００７】
請求項１の発明では、コミュニケーションロボットは、撮影手段、識別情報検出手段、動作予測手段、および動作特定手段を備える。撮影手段は、たとえば、人間を撮影する。識別情報検出手段は、ロボット自身が存在する環境において、その周辺に存在する物体（物品）、厳密には、人間の近傍に存在する物品についての識別情報を検出する。実施例では、物品に装着した無線タグから発信されるタグＩＤを検出する。動作予測手段は、識別情報検出手段によって検出された識別情報に基づいて人間の動作を予測する。たとえば、人間が鉛筆を所持したり、人間の近傍に鉛筆が存在する場合には、人間が文字等を書いたり、書いた文字等を読んだりするなどしていると、その動作を予測することができる。そして、動作特定手段は、撮影手段によって撮影された撮影画像が示す人間の実動作と動作予測手段によって予測された予測動作とから当該実動作を特定する。
【０００８】
請求項１の発明によれば、人間の近傍に存在する物体に基づいて動作を予測し、予測した動作から実動作を特定するので、あらゆる動作から１の動作を特定する場合よりも、大幅に特定処理を軽減することができる。また、物体と実動作との組み合わせにより、１の動作を特定するので、動作を正確に特定することができる。
【０００９】
請求項２の発明は請求項１に従属し、撮影画像が示す人間の実動作と予測動作の各々との類似度を算出する類似度算出手段をさらに備え、動作特定手段は、類似度算出手段によって算出された類似度が最も高い予測動作を実動作として特定する。
【００１０】
請求項２の発明では、コミュニケ−ショロボットは、類似度算出手段をさらに備える。この類似度算出手段は、撮影画像が示す人間の実動作と予測動作の各々との類似度を算出する。動作特定手段は、類似度が最も高い予測動作を実動作として特定する。
【００１１】
請求項２の発明では、識別情報に基づいて絞り込んだ予測動作との類似度を算出するだけなので、すべての動作との類似度を算出する場合に比べて処理負担を軽減することができる。また、絞り込んだ予測動作から実動作を特定するので、すべての動作について類似度を算出する場合よりも、識別精度を高くすることができる。
【００１２】
請求項３の発明は、コミュニケーションロボットと、このコミュニケーションロボットと通信可能に設けられるサーバとを備える動作識別システムであって、コミュニケーションロボットは、人間を撮影する撮影手段、人間の近傍に存在する物体についての識別情報を検出する識別情報検出手段、検出した識別情報をサーバに送信する識別情報送信手段、サーバから人間の予測動作情報を受信する予測動作情報受信手段、および撮影手段によって撮影された撮影画像が示す人間の実動作と予測動作情報受信手段によって受信された予測動作情報とから当該実動作を特定する動作特定手段を備え、サーバは、識別情報送信手段に送信された識別情報を受信する識別情報受信手段、および識別情報受信手段によって受信された識別情報に基づいて取得した人間の予測動作情報をコミュニケーションロボットに送信する予測動作情報送信手段を備える、動作識別システムである。
【００１３】
請求項３の発明は、コミュニケーションロボットと、このコミュニケーションロボットと通信可能に設けられるサーバとを備える動作識別システムである。この動作識別システムでは、コミュニケーションロボットは、人間の近傍に存在する物体の識別情報を検出すると、その識別情報をサーバに送信する。サーバは、識別情報に基づいて動作を予測し、予測動作情報をコミュニケーションロボットに送信する。つまり、請求項２の発明では、動作を予測する手段ないし役割としてのサーバが設けられる点が請求項１の発明と異なる。
【００１４】
請求項３の発明によれば、請求項１の発明と同様に、動作特定についての計算処理を大幅に低減できる。また、ロボットにおける計算処理の負担を軽減できる。
【００１５】
請求項４の発明は、コミュニケーションロボットと、このコミュニケーションロボットと通信可能に設けられるサーバとを備える動作識別システムであって、コミュニケーションロボットは、人間を撮影する撮影手段、人間の近傍に存在する物体についての識別情報を検出する識別情報検出手段、および撮影手段によって撮影された撮影画像と識別情報検出手段によって検出された識別情報とをサーバに送信する送信手段を備え、サーバは、送信手段に送信された撮影画像と識別情報とを受信する受信手段、受信手段によって受信された識別情報に基づいて人間の動作を予測する動作予測手段、識別情報受信手段によって受信された撮影画像が示す人間の実動作と動作予測手段によって予測された予測動作とから当該実動作を特定する動作特定手段を備える、動作識別システムである。
【００１６】
請求項４の発明では、コミュニケーションロボットは、識別情報と人間の撮影画像とをサーバに送信し、サーバが識別情報に基づいて行動を予測し、予測行動の各々と撮影画像とから、撮影画像が示す人間の動作を特定するようにしてある以外は、請求項３の発明と同じである。
【００１７】
請求項４の発明においても、請求項１の発明と同様に、動作特定についての計算処理を大幅に低減できる。また、ロボットにおける計算処理の負担を軽減できる。
【発明の効果】
【００１８】
この発明によれば、人間の近傍に存在する物体から人間の動作を推定し、推定した動作のいずれか１つに特定するので、計算量を大幅に低減することができる。また、映像のみならず、物体との組み合わせにより、動作を特定するので、正確に動作を特定することができる。
【００１９】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００２０】
＜第１実施例＞
図１を参照して、この第１実施例の動作識別システム（以下、単に「システム」という。）１０は、コミュニケーションロボット（以下、単に「ロボット」という。）１２および複数のタグ１４を含む。ロボット１２は、人間との間で、身振り手振りのような身体動作ないし行動（以下、「コミュニケーション行動」ということがある。）を取ることができる。ただし、コミュニケーション行動としては、ロボット１２と人間との間における会話が含まれる場合もある。タグ１４は、たとえばパッシブタイプの無線タグ（ＲＦタグ、ＩＣタグなど）であり、少なくともロボット１２が存在する環境に存在する物体（図１では省略する。）に装着される（貼り付けられる）。
【００２１】
ロボット１２は、人間のような身体を有し、その身体を用いてコミュニケーションのために必要な複雑な身体動作を生成する。具体的には、図２を参照して、ロボット１２は台車３２を含み、この台車３２の下面には、このロボット１２を自律移動させる車輪３４が設けられる。この車輪３４は、車輪モータ（ロボット１２の内部構成を示す図３において参照番号「３６」で示す。）によって駆動され、台車３２すなわちロボット１２を前後左右任意の方向に動かすことができる。
【００２２】
なお、図２では示さないが、この台車３２の前面には、衝突センサ（図３において参照番号「３８」で示す。）が取り付けられ、この衝突センサ３８は、台車３２への人や他の障害物の接触を検知する。そして、ロボット１２の移動中に障害物との接触を検知すると、直ちに車輪３４の駆動を停止してロボット１２の移動を急停止させる。
【００２３】
また、ロボット１２の背の高さは、この第１実施例では、人、特に子供に威圧感を与えることがないように、１００ｃｍ程度とされている。ただし、この背の高さは任意に変更可能である。
【００２４】
台車３２の上には、多角形柱のセンサ取付パネル４０が設けられ、このセンサ取付パネル４０の各面には、超音波距離センサ４２が取り付けられる。この超音波距離センサ４２は、取付パネル４０すなわちロボット１２の周囲の主として人との間の距離を計測するものである。
【００２５】
台車３２の上には、さらに、ロボット１２の胴体が、その下部が上述の取付パネル４０に囲まれて、直立するように取り付けられる。この胴体は下部胴体４４と上部胴体４６とから構成され、これら下部胴体４４および上部胴体４６は、連結部４８によって連結される。連結部４８には、図示しないが、昇降機構が内蔵されていて、この昇降機構を用いることによって、上部胴体４６の高さすなわちロボット１２の高さを変化させることができる。昇降機構は、後述のように、腰モータ（図３において参照番号「５０」で示す。）によって駆動される。上で述べたロボット１２の身長１００ｃｍは、上部胴体４６をそれの最下位置にしたときの値である。したがって、ロボット１２の身長は１００ｃｍ以上にすることができる。
【００２６】
上部胴体４６のほぼ中央には、１つの全方位カメラ５２と、１つのマイク１６とが設けられる。全方位カメラ５２は、ロボット１２の周囲を撮影するもので、後述の眼カメラ５４と区別される。マイク１６は、周囲の音、とりわけ人の声を取り込む。
【００２７】
上部胴体４６の両肩には、それぞれ、肩関節５６Ｒおよび５６Ｌによって、上腕５８Ｒおよび５８Ｌが取り付けられる。肩関節５６Ｒおよび５６Ｌは、それぞれ３軸の自由度を有する。すなわち、右肩関節５６Ｒは、Ｘ軸，Ｙ軸およびＺ軸の各軸廻りにおいて上腕５８Ｒの角度を制御できる。Ｙ軸は、上腕５８Ｒの長手方向（または軸）に平行な軸であり、Ｘ軸およびＺ軸は、そのＹ軸に、それぞれ異なる方向から直交する軸である。左肩関節５６Ｌは、Ａ軸，Ｂ軸およびＣ軸の各軸廻りにおいて上腕５８Ｌの角度を制御できる。Ｂ軸は、上腕５８Ｌの長手方向（または軸）に平行な軸であり、Ａ軸およびＣ軸は、そのＢ軸に、それぞれ異なる方向から直交する軸である。
【００２８】
上腕５８Ｒおよび５８Ｌのそれぞれの先端には、肘関節６０Ｒおよび６０Ｌを介して、前腕６２Ｒおよび６２Ｌが取り付けられる。肘関節６０Ｒおよび６０Ｌは、それぞれ、Ｗ軸およびＤ軸の軸廻りにおいて、前腕６２Ｒおよび６２Ｌの角度を制御できる。
【００２９】
なお、上腕５８Ｒおよび５８Ｌならびに前腕６２Ｒおよび６２Ｌ（いずれも図２）の変位を制御するＸ，Ｙ，Ｚ，Ｗ軸およびＡ，Ｂ，Ｃ，Ｄ軸では、「０度」がホームポジションであり、このホームポジションでは、上腕５８Ｒおよび５８Ｌならびに前腕６２Ｒおよび６２Ｌは下方向に向けられる。
【００３０】
また、図２では示さないが、上部胴体４６の肩関節５６Ｒおよび５６Ｌを含む肩の部分や上述の上腕５８Ｒおよび５８Ｌならびに前腕６２Ｒおよび６２Ｌを含む腕の部分には、それぞれ、タッチセンサ（図３において参照番号６４で包括的に示す。）が設けられていて、これらのタッチセンサ６４は、人がロボット１２のこれらの部位に接触したかどうかを検知する。
【００３１】
前腕６２Ｒおよび６２Ｌのそれぞれの先端には、手に相当する球体６６Ｒおよび６６Ｌがそれぞれ固定的に取り付けられる。なお、この球体６６Ｒおよび６６Ｌに代えて、この第１実施例のロボット１２と異なり指の機能が必要な場合には、人の手の形をした「手」を用いることも可能である。また、球体６６Ｒには、右手用のタグリーダ１０２が設けられ、球体６６Ｌには、左手用のタグリーダ１０４が設けられる。ただし、いずれか一方の球体ないし手にのみタグリータを設けるようにしてもよい。
【００３２】
上部胴体４６の中央上方には、首関節６８を介して、頭部７０が取り付けられる。この首関節６８は、３軸の自由度を有し、Ｓ軸，Ｔ軸およびＵ軸の各軸廻りに角度制御可能である。Ｓ軸は首から真上に向かう軸であり、Ｔ軸およびＵ軸は、それぞれ、このＳ軸に対して異なる方向で直交する軸である。頭部７０には、人の口に相当する位置に、スピーカ７２が設けられる。スピーカ７２は、ロボット１２が、それの周囲の人に対して音声または声によってコミュニケーションを図るために用いられる。ただし、スピーカ７２は、ロボット１２の他の部位たとえば胴体に設けられてもよい。
【００３３】
また、頭部７０には、目に相当する位置に眼球部７４Ｒおよび７４Ｌが設けられる。眼球部７４Ｒおよび７４Ｌは、それぞれ眼カメラ５４Ｒおよび５４Ｌを含む。なお、右の眼球部７４Ｒおよび左の眼球部７４Ｌをまとめて眼球部７４といい、右の眼カメラ５４Ｒおよび左の眼カメラ５４Ｌをまとめて眼カメラ５４ということもある。眼カメラ５４は、ロボット１２に接近した人の顔や他の部分ないし物体等を撮影してその映像信号を取り込む。
【００３４】
なお、上述の全方位カメラ５２および眼カメラ５４のいずれも、たとえばＣＣＤやＣＭＯＳのような固体撮像素子を用いるカメラであってよい。
【００３５】
たとえば、眼カメラ５４は眼球部７４内に固定され、眼球部７４は眼球支持部（図示せず）を介して頭部７０内の所定位置に取り付けられる。眼球支持部は、２軸の自由度を有し、α軸およびβ軸の各軸廻りに角度制御可能である。α軸およびβ軸は頭部７０に対して設定される軸であり、α軸は頭部７０の上へ向かう方向の軸であり、β軸はα軸に直交しかつ頭部７０の正面側（顔）が向く方向に直交する方向の軸である。この第１実施例では、頭部７０がホームポジションにあるとき、α軸はＳ軸に平行し、β軸はＵ軸に平行するように設定されている。このような頭部７０において、眼球支持部がα軸およびβ軸の各軸廻りに回転されることによって、眼球部７４ないし眼カメラ５４の先端（正面）側が変位され、カメラ軸すなわち視線方向が移動される。
【００３６】
なお、眼カメラ５４の変位を制御するα軸およびβ軸では、「０度」がホームポジションであり、このホームポジションでは、図２に示すように、眼カメラ５４のカメラ軸は頭部７０の正面側（顔）が向く方向に向けられ、視線は正視状態となる。
【００３７】
図３には、ロボット１２の内部構成を示すブロック図が示される。この図３に示すように、ロボット１２は、全体の制御のためにマイクロコンピュータまたはＣＰＵ７６を含み、このＣＰＵ７６には、バス７８を通して、メモリ８０，モータ制御ボード８２，センサ入力／出力ボード８４および音声入力／出力ボード８６が接続される。
【００３８】
メモリ８０は、図示しないが、ＲＯＭやＨＤＤ、ＲＡＭ等を含み、ＲＯＭまたはＨＤＤにはこのロボット１２の制御プログラムおよびデータ等が予め格納されている。ＣＰＵ７６は、このプログラムに従って処理を実行する。具体的には、ロボット１２の身体動作を制御するための複数のプログラム（行動モジュールと呼ばれる。）が記憶される。たとえば、行動モジュールが示す身体動作としては、「握手」、「抱っこ」、「万歳」…などがある。行動モジュールが示す身体動作が「握手」である場合には、当該行動モジュールを実行すると、ロボット１２は、たとえば、右手を前に差し出す。また、行動モジュールが示す身体動作が「抱っこ」である場合には、当該行動モジュールを実行すると、ロボット１２は、たとえば、両手を前に差し出す。さらに、行動モジュールが示す身体動作が「万歳」である場合には、当該行動モジュールを実行すると、ロボット１２は、たとえば、両手を数回（たとえば、２回）上下させる。また、ＲＡＭは、一時記憶メモリとして用いられるとともに、ワーキングメモリとして利用され得る。
【００３９】
モータ制御ボード８２は、たとえばＤＳＰ(Digital Signal Processor)で構成され、右腕、左腕、頭および眼等の身体部位を駆動するためのモータを制御する。すなわち、モータ制御ボード８２は、ＣＰＵ７６からの制御データを受け、右肩関節５６ＲのＸ，ＹおよびＺ軸のそれぞれの角度を制御する３つのモータと右肘関節６０Ｒの軸Ｗの角度を制御する１つのモータを含む計４つのモータ（図３ではまとめて、「右腕モータ」として示す。）８８の回転角度を調節する。また、モータ制御ボード８２は、左肩関節５６ＬのＡ，ＢおよびＣ軸のそれぞれの角度を制御する３つのモータと左肘関節６０ＬのＤ軸の角度を制御する１つのモータとを含む計４つのモータ（図３ではまとめて、「左腕モータ」として示す。）９０の回転角度を調節する。モータ制御ボード８２は、また、首関節６８のＳ，ＴおよびＵ軸のそれぞれの角度を制御する３つのモータ（図３ではまとめて、「頭部モータ」として示す。）９２の回転角度を調節する。モータ制御ボード８２は、また、腰モータ５０、および車輪３４を駆動する２つのモータ（図３ではまとめて、「車輪モータ」として示す。）３６を制御する。さらに、モータ制御ボード８２は、右眼球部７４Ｒのα軸およびβ軸のそれぞれの角度を制御する２つのモータ（図３ではまとめて、「右眼球モータ」として示す。）９４の回転角度を調節し、また、左眼球部７４Ｌのα軸およびβ軸のそれぞれの角度を制御する２つのモータ（図３ではまとめて、「左眼球モータ」として示す。）９６の回転角度を調節する。
【００４０】
なお、この第１実施例の上述のモータは、車輪モータ３６を除いて、制御を簡単化するためにそれぞれステッピングモータまたはパルスモータであるが、車輪モータ３６と同様に、直流モータであってよい。
【００４１】
センサ入力／出力ボード８４も、同様に、ＤＳＰで構成され、各センサやカメラからの信号を取り込んでＣＰＵ７６に与える。すなわち、超音波距離センサ４２の各々からの反射時間に関するデータがこのセンサ入力／出力ボード８４を通して、ＣＰＵ７６に入力される。また、全方位カメラ５２からの映像信号が、必要に応じてこのセンサ入力／出力ボード８４で所定の処理が施された後、ＣＰＵ７６に入力される。眼カメラ５４からの映像信号も、同様にして、ＣＰＵ７６に与えられる。また、タッチセンサ６４からの信号がセンサ入力／出力ボード８４を介してＣＰＵ７６に与えられる。
【００４２】
スピーカ７２には音声入力／出力ボード８６を介して、ＣＰＵ７６から、合成音声データが与えられ、それに応じて、スピーカ７２からはそのデータに従った音声または声が出力される。また、マイク２４からの音声入力が、音声入力／出力ボード８６を介してＣＰＵ７６に取り込まれる。
【００４３】
また、ＣＰＵ７６には、バス７８を通して、通信ＬＡＮボード９８が接続される。この通信ＬＡＮボード９８も、同様に、ＤＳＰで構成され、ＣＰＵ７６から与えられた送信データを無線通信装置１００に与え、無線通信装置１００から送信データを送信させる。また、通信ＬＡＮボード９８は無線通信装置１００を介してデータを受信し、受信データをＣＰＵ７６に与える。
【００４４】
さらに、ＣＰＵ７６には、バス７８を介して、タグリーダ１０２、タグリーダ１０４およびデータベース１０６が接続される。ただし、データベース１０６は、ロボット１２内部に設ける必要はなく、ロボット１２と通信可能に、その外部に設けるようにすることもできる。タグリーダ１０２およびタグリーダ１０４は、上述したように、ロボット１２の手（球体６４Ｒおよび６４Ｌ）に設けられ、ロボット１２の周辺に存在する物体等に装着されたタグ１４が発信するタグ情報（タグＩＤ）を受信して、ＣＰＵ７６に与える。
【００４５】
また、データベース１０６には、図４および図５に示すように、物品データ１０６ａ、動作候補データ１０６ｂおよび動作テンプレートデータ１０６ｃ等のデータが記憶される。図４（Ａ）に示すように、物品データ１０６ａは、タグ１４の識別情報（タグＩＤ）に対応して、該当するタグ１４が装着された物品（物体）の名称が記述される。つまり、物品データ１０６ａは、タグＩＤから物品を特定するためのテーブルデータである。また、図４（Ｂ）に示すように、動作候補データ１０６ｂは、物品の名称に対応して、動作の候補（動作候補）が記述される。たとえば、物品が「鉛筆」である場合には、動作候補として、「持つ」、「書く」、「見る」、「置く」などの動作が記述される。また、物品が「包丁」である場合には、「持つ」、「置く」、「切る」、「研ぐ」、「洗う」などの動作が記述される。たとえば、人間の近くに鉛筆がある場合には、人間は当該鉛筆を持ったり（握ったり）、当該鉛筆で文字等を書いたり、当該鉛筆で書いた内容を見たり、当該鉛筆を置いたりするなどの動作をすると考えられる。また、人間の近くに包丁がある場合には、人間は当該包丁を持ったり（握ったり）、当該包丁を置いたり、当該包丁で食物（肉、魚、野菜、果物など）を切ったり、当該包丁を研いだり、当該包丁を洗ったりするなどの動作をすると考えられる。つまり、動作候補データ１０６ｂは、物品（物体）から予測（推測）され得る人間の動作（行動）の候補を決定するためのテーブルデータである。
【００４６】
また、図５に示すように、動作テンプレートデータ１０６ｃは、動作に対応して、当該動作を行う人間を撮影したときの映像（画像）ファイルのファイル名が記述される。図示は省略するが、データベース１０６には、実際の画像ファイルも記憶される。ただし、各動作に対応して、画像ファイルそのものを記述するようにしてもよい。
【００４７】
たとえば、図６に示すように、或る部屋２００に、システム１０は適用される。ただし、図６では、簡単のため、ロボット１２および一部のタグ１４を示してある。また、図６に示すように、部屋２００には、人間２０２が存在し、その近傍にロボット１２が存在する。また、部屋２００には、机２０４が配置され、机２０４の上には、ノート２０６が載置される。たとえば、人間２０２は、鉛筆２０８を持って、ノート２０６に文字等を書いている。さらに、部屋２００の隅には、ごみ箱２１０が置いてある。
【００４８】
また、上述したように、部屋２００に存在する物品（物体）には、それぞれタグ１４が装着される。図６では、机２０４のみにタグ１４が装着されている様子を示してあるが、実際には、ノート２０６、鉛筆２０８およびごみ箱２１０にもタグ１４は装着される。さらに、部屋２００自体（または、屋内や屋外）を識別する場合には、つまり場所を識別する場合には、当該部屋２００の入り口や壁等にタグ１４を装着するようにしてもよい。
【００４９】
たとえば、システム１０は、人間２０２の動作（行動）を識別（特定）する。具体的には、図３に示したＣＰＵ７６が図７および図８示す動作識別処理を実行する。図７に示すように、ＣＰＵ７６は動作識別処理を開始すると、ステップＳ１で、タグリーダ１０２およびタグリーダ１０４を動かし、タグＩＤを検出する。具体的には、眼カメラ５４の撮影画像（映像）から人間２０２を検出し、人間２０２に接近し、ロボット１２の近傍に存在する物品（厳密には、タグＩＤ）を検出する。ただし、この第１実施例では、人間２０２の動作を識別するようにしてあるため、厳密には、その近傍（たとえば、１〜２ｍ程度で、人間の手の届く範囲）に存在する物品を検出するようにしてある。
【００５０】
また、人間２０２の近傍に存在する物品および人間２０２の撮影画像（映像）から人間２０２の動作を識別（特定）するようにしてあるため、ロボット１２を人間２０２に近づけるようにしてある。詳細な説明は省略するが、ロボット１２は、眼カメラ５４の撮影画像（映像）から人間２０２をパターンマッチングの手法により検出（推定）し、その方向に進行する。或いは、撮影画像（映像）に含まれる肌色領域を検出すると、その肌色領域が大きくなる方向に進行（または後退）或いは回転する。このようにして、ロボット１２は、人間２０２に近づくことができる。
【００５１】
ただし、人間２０２に近づいたか否かの判断には、超音波距離センサ４２の検出結果（距離）を用いてもよく、眼カメラ５４の撮影画像と超音波距離センサ４２の検出結果とを用いるようにしてもよい。
【００５２】
ロボット１２は、人間２０２に近づくと、その両手、すなわち球体６６Ｒおよび球体６６Ｌに設けられる、タグリーダ１０２およびタグリーダ１０４によって受信されるタグＩＤを検出する。この第１実施例では、両手（腕）すなわち肩関節５６Ｒ、５６Ｌおよび肘関節６０Ｒ、６０Ｌを動かすことにより、タグリーダ１０２およびタグリーダ１０４を自在に動かし、タグリーダ１０２またはタグリーダ１０４によってタグＩＤを検出する。
【００５３】
続くステップＳ３では、タグＩＤを検出したかどうかを判断する。ステップＳ３で“ＮＯ”であれば、つまりタグＩＤを検出していなければ、ステップＳ１に戻って、タグリーダ１０２またはタグリーダ１０４或いはその両方を動かし、タグＩＤを検出する。一方、ステップＳ３で“ＹＥＳ”であれば、つまりタグＩＤを検出すれば、ステップＳ５で、当該タグＩＤを検出したタグリーダ１０２または１０４（両方の場合には、いずれか一方でよい。）と眼カメラ５４との距離を算出し、メモリ８０に記憶（一時記憶）する。ここで、眼カメラ５４の位置および両手（上腕５８Ｒ、５８Ｌおよび前腕６２Ｒ、６２Ｌなど）の長さは固定であり、タグリーダ１０２およびタグリーダ１０４は球体６６Ｒおよび６６Ｌに装着されているため、肩関節５６Ｒ、５６Ｌおよび肘関節６０Ｒ、６０Ｌの角度を考慮して、上記距離は算出される。
【００５４】
また、眼カメラ５４とタグリーダ１０２，１０４との距離を計測するのは、上述したように、タグ１４はパッシブタイプのものであり、眼カメラ５４と物品（物体）とのおおよその距離を計測し、最終的に、人間２０２と物品との距離を推定するためである。この結果と、上述したように、肌色領域が大きくなるように前進等することにより、人間２０２が所持（または装着）する、または近傍に存在する物品のタグＩＤを検出することができるのである。したがって、図示は省略するが、タグＩＤを検出した場合であっても、ステップＳ１において移動したときに、肌色領域が検出されなかったり、肌色領域が検出されたが、比較的その領域が小さく、ロボット１２と人間２０２との距離が遠いと判断されたりした場合には、検出したタグＩＤは検出結果から排除（リジェクト）するようにしてある。これは、人間２０２の動作を正確に識別するためである。
【００５５】
続いて、ステップＳ７では、両手（肩関節５６Ｒ、５６Ｌ、肘関節６０Ｒ、６０Ｌ）を動かして、タグリーダ１０２およびタグリーダ１０４を、眼カメラ５４に写らない位置に移動させる。ただし、タグリーダ１０２、１０４のみならず、両手も写らない位置に移動させる方が好ましい。これは、後述するように、眼カメラ５４で人間２０２を撮影し、人間２０２の動作を識別するようにしてあるためである。つまり、できる限り、眼カメラ５４によって人間２０２を撮影させるためである。
【００５６】
続くステップＳ９では、検出したタグＩＤ、検出時刻および検出場所を記憶する。図３では省略したが、検出時刻は、ロボット１２内部に設けられる時計回路（タイマ）から取得される。また、検出場所は、場所毎に予め割り当てたタグを設置しておき、このタグＩＤを検出すれば、物品同様に、場所を特定することができる。続くステップＳ１１では、撮影画像から肌色が検出されたかどうかを判断する。ステップＳ１１で“ＮＯ”であれば、つまり撮影画像から肌色が検出されなければ、そのままステップＳ１５に進む。一方、ステップＳ１１で“ＹＥＳ”であれば、つまり撮影画像から肌色（領域）が検出されると、ステップＳ１３で、当該肌色領域が撮影画像の中心にくるように、眼カメラ５４を方向転換する。これは、人間２０２（の動作）を撮影して、正確に動作を識別するためである。ただし、眼カメラ５４のみならず、ロボット１２全体の方向も変化（旋回）させるようにしてもよい。このようにすれば、人間２０２およびその動作を撮影することができる。
【００５７】
なお、この第１実施例では、撮影画像から肌色領域が検出された場合には、何ら処理を施さないようにしてあるが、人間２０２（肌色領域）を検出すべく、ロボット１２を旋回させるようにしてもよい。
【００５８】
続くステップＳ１５では、現在の場所（現在位置）において、タグＩＤをすべて読み取ったかどうかを判断する。つまり、ロボット１２を移動させたり、旋回させたり、両手を動かしたりして、人間２０２の周囲に存在する物品（タグＩＤ）をすべて検出したかどうかを判断する。ステップＳ１５で“ＮＯ”であれば、つまり、現在の場所において、タグＩＤをすべて読み取っていなければ、そのままステップＳ１に戻る。しかし、ステップＳ１５で“ＹＥＳ”であれば、つまり現在の場所において、タグＩＤをすべて読み取れば、図８に示すステップＳ１７で、検出した１または２以上のタグＩＤに基づいて、動作候補パターンを決定する。
【００５９】
具体的には、ＣＰＵ７６は、物品データ１０６ａを参照して、検出したタグＩＤに対応する１または２以上の物品を特定する。続いて、ＣＰＵ７６は、動作候補データ１０６ｂを参照して、特定した物品に対応する動作候補パターンを決定する。ただし、２以上の物品が特定された場合には、各物品についての動作候補パターンであって、すべての物品において重複する動作候補パターンのみが決定される。たとえば、物品として、「包丁」と「まな板」とが検出された場合には、動作候補としては、「持つ」、「置く」、「切る」、「洗う」が決定される。つまり、２つの物品で重複していない「研ぐ」についての動作候補パターンが排除される。
【００６０】
続いて、ステップＳ１９では、各動作候補パターンと撮影画像との類似度を計算する。ここでは、ＣＰＵ７６は、各動作候補パターンと撮影画像との類似度距離を計算する。たとえば、人間２０２に取り付けられたマーカの軌跡と、各動作候補パターンにおいて対応するマーカの軌跡について、「動的計画法（Dynamic Programming）」によって距離を計算する。
【００６１】
なお、この「動的計画法（Dynamic Programming）」は、既に周知であり、また、本願発明の本質的部分ではないため、詳細な説明は省略するが、その内容については、たとえば、「高橋勝彦, 関進, 岡隆一. ジェスチャ動画像のスポッティング認識. 信学技報  PRU92-157, pp. 9-16, 3 1993.」に開示されている。
【００６２】
続くステップＳ２１では、動作を特定する。具体的には、ステップＳ１９で計算した類似度距離が最も小さい（最も類似度が高い）動作候補パターンについての動作を、人間２０２の動作として特定する。次のステップＳ２３では、特定した動作、時刻および場所を記憶する。たとえば、メモリ８０またはデータベース１０６に行動履歴のテーブルデータを記憶しておき、これに特定した動作、時刻および場所を記憶するようにすればよい。ただし、ステップＳ２３で記憶する時間および場所は、ステップＳ９で記憶した検出時間および検出場所である。そして、ステップＳ２５で、動作識別結果を出力して、動作識別処理を終了する。たとえば、ステップＳ２５では、ロボット１２のスピーカ７２から識別した動作を音声で出力することができる。ただし、ロボット１２と通信可能にコンピュータを接続しておき、識別結果を当該コンピュータに送信するようにすれば、当該コンピュータに接続されるモニタ（図示せず）等の画像表示装置に識別した動作をテキスト表示したり、当該コンピュータに接続されるスピーカ（図示せず）から識別した動作を音声で出力したりすることもできる。
【００６３】
この第１実施例によれば、人間の近傍に存在する物品を検出し、物品から動作候補を決定して、動作候補の中から人間の動作を識別するので、すべての動作候補の中から人間の動作を識別する場合よりも大幅に処理を低減することができる。
【００６４】
また、この第１実施例によれば、映像のみならず、物品に基づいて動作を識別するため、正確に識別することができる。つまり、動作候補を絞り込むので、識別制度を高くすることができる。
【００６５】
なお、この第１実施例では、特定した動作とともに、その動作を検出（撮影）した時間および場所とともに記録しておくため、その記録内容は、或る人間についての行動メモとして用いることもできる。
＜第２実施例＞
図９に示す第２実施例のシステム１０は、人間の動作候補をロボット１２と通信可能に設けたサーバで検出するようにした以外は、上述の実施例と同様であるため、重複した説明は省略する。
【００６６】
図９を参照して、第２実施例のシステム１０では、ロボット１２はネットワーク２０を介してサーバ２２と通信可能に接続される。サーバ２２としては、汎用のサーバを用いることができ、サーバに代えて、汎用のパーソナルコンピュータやワークステーションを用いることもできる。また、ネットワーク２０は、有線または無線のいずれで構築されてもよい。また、システム１０では、サーバ２２にデータベース２４が接続される。このデータベース２４に、第１実施例で示した物品データ１０６ａおよび動作候補データ１０６ｂが記憶され、サーバ２２は、ロボット１２からの問い合わせに応じて動作候補を検出し、検出した動作候補をロボット１２に通知（送信）するのである。
【００６７】
具体的なロボット１２（ＣＰＵ７６）の動作識別処理は、図７および図８のフロー図で示した動作識別処理とほぼ同じであるため、異なる処理についてのみ説明することにする。また、図７に示した処理は同じであるため、図示は省略してある。
【００６８】
図１０に示すように、ＣＰＵ７６は、ステップＳ１７´で、検出した１または２以上のタグＩＤをサーバ２２に送信する。つまり、動作候補を問い合わせる。ここで、図示は省略するが、サーバ２２は、ロボット１２から１または２以上のタグＩＤを受信すると、タグＩＤに基づいて、動作候補パターンを決定し、決定した動作候補パターンをロボット１２に送信する。具体的には、サーバ１２は、物品データ１０６ａを参照して、ロボット１２から受信したタグＩＤに対応する１または２以上の物品を特定する。続いて、サーバ２２は、動作候補データ１０６ｂを参照して、特定した物品に対応する動作候補パターンを決定する。ただし、２以上の物品が特定された場合には、各物品についての動作候補パターンであって、すべての物品において重複する動作候補パターンのみが決定される。たとえば、物品として、「包丁」と「まな板」とが検出された場合には、動作候補としては、「持つ」、「置く」、「切る」、「洗う」が決定される。つまり、２つの物品で重複していない「研ぐ」についての動作候補パターンが排除される。
【００６９】
図１０に戻って、ステップＳ１８では、動作候補パターンを受信したかどうかを判断する。ステップＳ１８で“ＮＯ”であれば、つまり動作候補パターンを受信していなければ、同じステップＳ１８に戻って、動作候補パターンの受信を待機する。一方、ステップＳ１８で“ＹＥＳ”であれば、つまり動作候補パターンを受信すれば、ステップＳ１９で、各動作候補パターンと撮影画像との類似度を計算する。これ以降の処理は、図８を用いて説明した場合と同じである。
【００７０】
この第２実施例によれば、人間の動作を少ない処理で確実に識別することができ、さらに、サーバ側で動作候補を検出するので、ロボットの処理負担を低減することができる。
＜第３実施例＞
第３実施例のシステム１０は、サーバ２２側で人間２０２の動作を識別するようにした以外は、第２実施例のシステム１０と同じであるため、重複した説明は省略する。図示は省略するが、この第３実施例のシステム１０では、サーバ２２に接続されるデータベース２４に、物品データ１０６ａ、動作候補データ１０６ｂおよび動作テンプレートデータ１０６ｃを記憶する。したがって、ロボット１２内部に設けるデータベース１０６は削除することができる。
【００７１】
具体的には、第３実施例のシステム１０では、ロボット１２は、人間２０２が所持するまたは人間２０２の近傍に存在する物品のタグＩＤを検出し、また、そのときの人間２０２の撮影画像を取得する。そして、検出したタグＩＤと撮影画像とをサーバ２２に送信する。サーバ２２では、上述の第２実施例で説明したように、タグＩＤに基づいて動作候補パターンを検出し、検出した動作候補パターンのそれぞれと撮影画像との類似度を計算し、当該撮影画像が示す人間２０２の動作を特定する。
【００７２】
したがって、図７および図１０で示される動作識別処理において、ステップＳ１〜ステップＳ１７´までの処理をロボット１２側で実行し、ステップＳ１８〜ステップＳ２５までの処理をサーバ２２側で実行するようにすればよい。ただし、ステップＳ１７´では、検出したタグＩＤおよび撮影画像をサーバ２２に送信する。
【００７３】
なお、詳細な説明は省略するが、第１実施例で説明したように、ステップＳ２３で記憶する時間および場所は、ステップＳ９で記憶した検出時間および検出場所であるため、この第３実施例では、ステップＳ１７´では、ステップＳ９で記憶した検出時間および検出場所もサーバ２２に送信される。
【００７４】
この第３実施例においても、人間の動作を少ない処理で確実に識別することができ、さらに、サーバ側で動作識別処理を実行するので、ロボットの処理負担を低減することができる。
【００７５】
なお、上述の実施例では、いずれも、パッシブタイプのタグを用いたが、他の実施例として、アクティブタイプのタグ（赤外線タグなど）を用いることができる。かかる場合には、たとえば、各物品に赤外線タグを設けておき、一方、２台のカメラ（赤外線カメラ（センサ））をロボット１２の頭部（眼カメラ５４の上部）に設ける。そして、２台のカメラの検出結果（撮影画像）から三角測量を行うことにより、ロボット１２と物品との距離またはロボット１２から見た物品の位置（３次元位置）を計測（算出）する。同様に、眼カメラ５４の検出結果（撮影画像）から三角測量を行うことにより、ロボット１２と人間２０２との距離またはロボット１２から見た人間２０２の３次元位置を算出する。これにより、人間２０２と物品との距離（位置）を測定できる。つまり、人間２０２の近傍に存在する物品を検出することができる。なお、物品を検出した後の処理は、上述の実施例と同様である。
【図面の簡単な説明】
【００７６】
【図１】図１はこの発明のコミュニケーションロボットを用いた動作識別システムの一例を示す図解図である。
【図２】図２は図１実施例に示すロボットの外観を説明するための図解図である。
【図３】図３は図１および図２に示すロボットの電気的な構成を示す図解図である。
【図４】図４はロボットに内蔵されるデータベースに記憶される物品データおよび動作候補データの例を示す図解図である。
【図５】図５はロボットに内蔵されるデータベースに記憶される動作テンプレートデータの例を示す図解図である。
【図６】図６は図１に示すシステムの適用例を示す図解図である。
【図７】図７は図３に示すＣＰＵの動作識別処理の一部を示すフロー図である。
【図８】図８は図３に示すＣＰＵの動作識別処理の他の一部であり、図７のフロー図に後続するフロー図である。
【図９】図９はこの発明のコミュニケーションロボットを用いた動作識別システムの他の例を示す図解図である。
【図１０】図１０は他の実施例の動作識別処理の一部を示すフロー図である。
【符号の説明】
【００７７】
１０  …コミュニケーションロボットを用いた動作識別システム
１２  …コミュニケーションロボット
１４  …タグ
１６  …マイク
２０  …ネットワーク
２２  …サーバ
２４，１０６  …データベース
３８  …衝突センサ
４２  …超音波距離センサ
５２  …全方位カメラ
５４  …眼カメラ
６４  …タッチセンサ
７６  …ＣＰＵ
８０  …メモリ
８２  …モータ制御ボード
８４  …センサ入力／出力ボード
８６  …音声入力／出力ボード
８８−９６  …モータ
９８  …通信ＬＡＮボード
１００  …無線通信装置
１０２，１０４  …タグリーダ
【図１】
2006268607.tif 000003
【図２】
2006268607.tif 000004
【図３】
2006268607.tif 000005
【図４】
2006268607.tif 000006
【図５】
2006268607.tif 000007
【図６】
2006268607.tif 000008
【図７】
2006268607.tif 000009
【図８】
2006268607.tif 000010
【図９】
2006268607.tif 000011
【図１０】
2006268607.tif 000012