(57)【要約】【課題】ロボット自身の他の割り込み動作を行ってトラッキングを中断した後及び外部環境の変化等による対象物認識の不安定さに対してもロバストなトラッキングを行う。【解決手段】ロボット装置のトラッキングシステムは、異なる画像認識レベルを有して階層化された肌色認識部１１、顔認識部１２及び個人認識部１３、並びに音声の方向を認識する音声方向認識部１４等の認識部１５と、認識部からの認識結果が供給され、個人認識部１３の認識結果に基づき人物の顔のトラッキングを開始し、個人認識部１３の認識失敗により顔認識部１２等の他の認識部の認識結果に基づきトラッキングを継続するよう制御する制御部を有する認識統合部２１と、他の認識部からの認識結果が得られなくなった場合に、直前までの認識結果に基づき対象物の予測方向を求めてトラッキングを継続するよう制御する予測部３１とを有する。【選択図】  図４
2004283959.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも機体の一部を使用して対象物をトラッキングするロボット装置において、
異なる種類のものを認識する複数の認識手段及び／又は同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段と、
上記複数の認識手段からの認識結果を統合する認識統合手段と、
上記対象物をトラッキングする動作を生成する動作生成手段と、
上記認識統合結果に基づき上記動作生成手段を制御するトラッキング制御手段とを有し、
上記トラッキング制御手段は、上記複数の認識手段のうち所定の認識手段の認識結果に基づき上記対象物のトラッキングを開始し、該所定の認識手段の認識結果が得られなくなった場合に該所定の認識手段とは異なる他の認識手段の認識結果に基づき上記トラッキングを継続するよう制御する
ことを特徴とするロボット装置。
【請求項２】
上記他の認識手段からの認識結果が得られなくなった場合に、直前までの該他の認識手段の認識結果に基づき上記対象物の予測方向を求める予測手段を有し、
上記トラッキング制御手段は、上記予測方向に基づき上記トラッキングを継続するよう制御する
ことを特徴とする請求項１記載のロボット装置。
【請求項３】
上記他の認識手段は、上記所定の認識手段と同一の種類であって下層の認識手段、又は該所定の認識手段とは異なる種類のものを認識する認識手段である
ことを特徴とする請求項１記載のロボット装置。
【請求項４】
上記トラッキング制御手段は、上記所定の認識手段の認識結果が所定の時間得られない場合に該トラッキングを終了又は中断する
ことを特徴とする請求項１記載のロボット装置。
【請求項５】
上記トラッキング制御手段は、上記所定の認識手段の認識結果が得られなくなった直前の上記対象物の方向と、上記他の認識手段の認識結果により得られる上記対象物の方向との差が所定の値を超えた場合に上記トラッキングを終了又は中断する
ことを特徴とする請求項１記載のロボット装置。
【請求項６】
上記異なる種類の複数の認識手段は、少なくとも画像認識手段及び音声認識手段を有し、
上記トラッキング制御手段は、上記画像認識手段及び音声認識手段の認識結果が得られている場合、画像認識手段の認識結果に基づき上記トラッキングを継続するよう制御する
ことを特徴とする請求項１記載のロボット装置。
【請求項７】
上記予測手段は、上記他の認識手段による認識結果が得られなくなる直前までの上記対象物の動きを検出し、当該動き検出結果に基づき上記予測方向を求める
ことを特徴とする請求項２記載のロボット装置。
【請求項８】
上記予測手段は、上記他の認識結果に基づき検出される上記対象物の方向を記憶し、上記他の認識手段による認識結果が得られなくなる直前の上記対象物の方向を上記予測方向とする
ことを特徴とする請求項２記載のロボット装置。
【請求項９】
上記トラッキングは、該トラッキング動作より優先度が高い動作により中断されることを特徴とする請求項１記載のロボット装置。
【請求項１０】
上記トラッキング制御手段は、上記優先度が高い動作が終了した際、上記トラッキングが中断される直前までの上記所定の認識手段又は他の認識手段の認識結果に基づき、上記複数の認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御する
ことを特徴とする請求項９記載のロボット装置。
【請求項１１】
上記トラッキングが終了又は中断される直前の上記対象物の方向を記憶する対象物記憶手段を有し、
上記トラッキング制御手段は、上記優先度が高い動作が終了した際、上記記憶した方向にて上記複数の認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御する
ことを特徴とする請求項９記載のロボット装置。
【請求項１２】
上記トラッキングが終了又は中断される直前までの上記対象物の動きを検出する対象物動き検出手段を有し、
上記トラッキング制御手段は、上記優先度が高い動作が終了した際、当該動き検出結果に基づき上記複数の認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御する
ことを特徴とする請求項９記載のロボット装置。
【請求項１３】
同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段は、少なくとも上記対象物としての人物の顔を認識する画像認識手段、上記対象物としての人物の声を認識する音声認識手段、又は上記対象物として人物以外の物体を認識する物体認識手段のいずれか１つであって、
上記画像認識手段は、画像領域内の肌色領域を上記対象物として認識する肌色認識手段、上記対象物が顔であるか否かを判定する顔認識手段、上記対象物の顔を特定の個人として推定する個人認識手段のうち少なくとも２以上に階層化され、
上記音声認識手段は、音声方向を推定する音声方向認識手段、音声を発生した話者を推定する話者認識手段、音声の内容を認識する音声内容認識手段のうち少なくとも２以上に階層化され、
上記物体認識手段は、画像領域内の対象物の色を認識する色認識手段、上記対象物の形状を認識する形状認識手段、上記対象物の模様を認識する模様認識手段のうち少なくとも２以上に階層化されている
ことを特徴とする請求項１記載のロボット装置。
【請求項１４】
動物を模した外観形状とされ、少なくとも首又は体幹部により該対象物をトラッキングすることを特徴とする請求項１記載のロボット装置。
【請求項１５】
少なくとも機体の一部を使用して対象物をトラッキングするロボット装置の動作制御方法において、
異なる種類のものを認識する複数の認識手段及び／又は同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段により上記対象物を認識する認識工程と、
上記複数の認識手段からの認識結果を統合する認識統合工程と、
上記対象物をトラッキングする動作を生成する動作生成工程と、
上記認識統合結果に基づき上記トラッキングする動作を制御するトラッキング制御工程とを有し、
上記トラッキング制御工程では、上記複数の認識手段のうち所定の認識手段の認識結果に基づき上記対象物のトラッキングを開始し、該所定の認識手段の認識結果が得られなくなった場合に該所定の認識手段とは異なる他の認識手段の認識結果に基づき上記トラッキングを継続するよう制御される
ことを特徴とするロボット装置の動作制御方法。
【請求項１６】
上記他の認識手段からの認識結果が得られなくなった場合に、直前までの該他の認識手段の認識結果に基づき上記対象物の予測方向を求める予測工程を有し、
上記トラッキング制御工程では、上記予測方向に基づき上記トラッキングを継続するよう制御される
ことを特徴とする請求項１５記載のロボット装置の動作制御方法。
【請求項１７】
上記他の認識手段は、上記所定の認識手段と同一の種類であって下層の認識手段、又は該所定の認識手段とは異なる種類のものを認識する認識手段である
ことを特徴とする請求項１５記載のロボット装置の動作制御方法。
【請求項１８】
上記トラッキング制御工程では、上記所定の認識手段の認識結果が所定の時間得られない場合に該トラッキングが終了又は中断される
ことを特徴とする請求項１５記載のロボット装置の動作制御方法。
【請求項１９】
上記トラッキング制御工程では、上記所定の認識手段の認識結果が得られなくなった直前の上記対象物の方向と、上記他の認識手段の認識結果により得られる上記対象物の方向との差が所定の値を超えた場合に上記トラッキングが終了又は中断される
ことを特徴とする請求項１５記載のロボット装置の動作制御方法。
【請求項２０】
上記異なる種類の複数の認識工程は、少なくとも画像認識工程及び音声認識工程を有し、
上記トラッキング制御工程では、上記異なる種類の複数の認識手段として少なくとも画像認識結果及び音声認識結果が得られている場合、画像認識結果に基づき上記トラッキングを継続するよう制御される
ことを特徴とする請求項１５記載のロボット装置の動作制御方法。
【請求項２１】
上記予測工程では、上記他の認識手段による認識結果が得られなくなる直前までの上記対象物の動きを検出し、当該動き検出結果に基づき上記予測方向が求められる
ことを特徴とする請求項１６記載のロボット装置の動作制御方法。
【請求項２２】
上記予測工程では、上記他の認識結果に基づき検出される上記対象物の方向を記憶し、上記他の認識手段による認識結果が得られなくなる直前の上記対象物の方向が上記予測方向とされる
ことを特徴とする請求項１６記載のロボット装置の動作制御方法。
【請求項２３】
上記トラッキングは、該トラッキング動作より優先度が高い動作により中断されることを特徴とする請求項１５記載のロボット装置の動作制御方法。
【請求項２４】
上記トラッキング制御工程では、上記優先度が高い動作が終了した際、上記トラッキングが中断される直前までの上記所定の認識手段又は他の認識手段の認識結果に基づき、上記複数の認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御される
ことを特徴とする請求項２３記載のロボット装置の動作制御方法。
【請求項２５】
上記トラッキングが終了又は中断される直前の上記対象物の方向を記憶する対象物記憶工程を有し、
上記トラッキング制御工程では、上記優先度が高い動作が終了した際、上記記憶した方向にて上記複数の認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御される
ことを特徴とする請求項２３記載のロボット装置の動作制御方法。
【請求項２６】
上記トラッキングが終了又は中断される直前までの上記対象物の動きを検出する対象物動き検出工程を有し、
上記トラッキング制御工程では、上記優先度が高い動作が終了した際、当該動き検出結果に基づき上記複数の認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御される
ことを特徴とする請求項２３記載のロボット装置の動作制御方法。
【請求項２７】
少なくとも機体の一部を使用して対象物をトラッキングするような動作をコンピュータに実行させるためのプログラムにおいて、
異なる種類のものを認識する複数の認識手段及び／又は同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段により上記対象物を認識する認識工程と、
上記複数の認識手段からの認識結果を統合する認識統合工程と、
上記対象物をトラッキングする動作を生成する動作生成工程と、
上記認識統合結果に基づき上記トラッキング動作を制御するトラッキング制御工程とを有し、
上記トラッキング制御工程では、上記複数の認識手段のうち所定の認識手段の認識結果に基づき上記対象物のトラッキングを開始し、該所定の認識手段の認識結果が得られなくなった場合に該所定の認識手段とは異なる他の認識手段の認識結果に基づき上記トラッキングを継続するよう制御される
ことを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、人間等の２足歩行型の身体メカニズムや動作を模した自律的な動作を行うロボット装置、その動作制御方法及びプログラムに関し、特に、対象物を認識し、少なくとも目、首又は体により該対象物をトラッキングするロボット装置、その動作制御方法及びプログラムに関する。
【０００２】
【従来の技術】
近年、外観形状が人間又は動物に模して形成された例えばエンターテインメント型のロボット装置が提供されている。このようなロボット装置は、外部からの情報（例えば、周囲環境の情報等）や内部の状態（例えば、感情状態等）等に応じて首関節や脚等を自律的に動作させることで、人間又は動物のような動作を表出させている。このようなロボット装置は、撮像手段や音声入力手段等を有し、例えば撮像した画像内から人物の顔を抽出し、この顔をトラッキングしながら特定の個人を識別するものもあり、よりエンターテインメント性のあるものとなっている。
【０００３】
こうしたロボット装置に搭載される顔識別のアプリケーションでは、ある与えられた１枚のシーンの中の人物を識別する問題に加え、次のような問題を解決する必要がある。
（１）ロボット装置自身が移動するため、環境の変化やその多様性を許容しなくてはならない
（２）人間とロボット装置の位置関係も変化するため、インタラクション中には人間を視野に入れ続ける必要がある
（３）数多くのシーン画像から人物の識別に使える画像を選び出し、総合的に判断しなくてはならない
（４）ある時間内に応答しなくてはならない
【０００４】
このような条件下においても、ロボット装置自体の自律性を損なうことなく、限られたリソースにおいても顔識別可能なロボット装置が下記特許文献１に記載されている。この特許文献１に記載のロボット装置においては、撮像手段により撮像された画像内で変化する顔を追跡する（トラッキングする）顔追跡手段と、顔追跡手段による顔の追跡情報に基づいて、撮像手段により撮像された画像内の顔の顔データを検出する顔データ検出手段と、顔データ検出手段が検出した顔データに基づいて、特定顔を識別（個人認識）する顔識別手段とを備える。これにより、画像内で変化する顔を追跡しながら当該顔の顔データを検出して、検出した顔データに基づいて、特定顔を識別するものであり、撮像された画像内から顔領域を検出し、検出した顔を追跡し、その間に検出した顔が誰であるかを人物識別する。具体的には、入力画像中から顔領域を検出する処理はサポートベクターマシン（ＳＶＭ）等による顔又は非顔の識別を行う。また、検出した顔の追跡は、肌色領域を追跡することにより行う。更に、人物識別（個人識別）は、入力顔の目、鼻等の位置合わせ（モーフィング）を行い、複数の登録顔との差分から同一人物か否かの判定を行う。
【０００５】
【特許文献１】
特開２００２−１５７５９６号公報
【０００６】
【発明が解決しようとする課題】
ところで、上述の従来のロボット装置において、画像内の顔の移動の追跡（トラッキング）には肌色認識結果を用いて行われている。このような従来のトラッキング動作は、通常、対象物の認識に失敗した時点で終了されてしまう。しかし、ロボット装置にとって、物体やユーザ等の対象物を首関節を回転させる等の体幹部の一部を使用して追跡する動作（トラッキング）は重要な技術である。例えば動くボールを追いかける際にトラッキングできなければボールを追いかけることが困難となる。また、興味があるものを頭部等の体幹部の一部で追う動作等は生物らしさを感じさせる動作であり、エンターテイメント用等の人間又は動物を模したようなロボット装置には必要な動作である。更に、ユーザとのインタラクションをしている際に、ユーザの動きをトラッキング（追尾）することは、より自然なインタラクションのために重要である。
【０００７】
ところが、ロボット装置がトラッキングするために必要な画像による外界認識はしばしば不安定であり、ライティング（照明条件）や、人物の顔の角度に敏感であり、これらが少し変化すると認識に失敗する場合がある。また、ボール等の対象物が大きく動くと不均一な照明条件下をボールが移動することになり、認識が難しくなる。更に、自律動作が可能なロボット装置は、内部状態及び外部刺激に基づき常に発現する動作が選択され、例えばトラッキング動作より例えば優先順位が高い他の動作が生じた場合には、トラッキング動作を中断し、他の動作を発現を許す場合がある。例えば、ある人物Ａとの会話中に別の人物Ｂに呼ばれ、ロボット装置が振り向いて人物Ｂと短い会話をした後、元の人物Ａとの会話を継続しようとする場合等、一旦トラッキングを停止した後、再びトラッキングを開始したい場合が生じる。このような場合、元の人物Ａの存在位置等を記憶しておくことは原理的にはできるものの、人物Ａが少しでも動いたりすると認識に失敗してトラッキングを再開できない場合があり、このように、外部環境の変化又は自律型ロボット装置に関しては他の割り込み動作等により、トラッキングに失敗することが多く、対象物のトラッキングを継続することは極めて困難であるという問題点がある。
【０００８】
本発明は、このような従来の実情に鑑みて提案されたものであり、トラッキング動作の最中に他の割り込み動作を行ってトラッキングを中断した後及び外部環境の変化等による対象物認識の不安定さに対してもロバストなトラッキングを行うことができるロボット装置、その動作制御方法及びプログラムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
上述した目的を達成するために、本発明に係るロボット装置は、少なくとも機体の一部を使用して対象物をトラッキングするロボット装置において、異なる種類のものを認識する複数の認識手段及び／又は同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段と、上記複数の認識手段からの認識結果を統合する認識統合手段と、上記対象物をトラッキングする動作を生成する動作生成手段と上記認識統合結果に基づき上記動作生成手段を制御するトラッキング制御手段とを有し、上記トラッキング制御手段は、上記複数の認識手段のうち所定の認識手段の認識結果に基づき上記対象物のトラッキングを開始し、該所定の認識手段の認識結果が得られなくなった場合に該所定の認識手段とは異なる他の認識手段の認識結果に基づき上記トラッキングを継続するよう制御することを特徴とする。
【００１０】
本発明においては、複数の認識手段を有し、所定の認識手段の認識結果に基づきトラッキングを開始した場合、該所定の認識手段による認識が失敗しても他の認識手段による認識結果に基づきトラッキングを継続することができ、複数の認識手段を複合的に使用することで、１つの認識手段によってトラッキングを行う従来の方法に比して、極めてロバストなトラッキングを行うことができる。
【００１１】
また、上記他の認識手段からの認識結果が得られなくなった場合に、直前までの該他の認識手段の認識結果に基づき上記対象物の予測方向を求める予測手段を有し、上記トラッキング制御手段は、上記予測方向に基づき上記トラッキングを継続するよう制御することにより、他の認識手段による認識が失敗しても、他の認識手段の認識が失敗する直前までの認識結果から対象物の方向を予測しトラッキングを継続することができ、更にロバストなトラッキングを行うことができる。
【００１２】
更に、上記他の認識手段は、上記所定の認識手段と同一の種類であって下層の認識手段、又は該所定の認識手段とは異なる種類のものを認識する認識手段とすることにより、認識レベルが高い認識手段で失敗しても認識レベルを下げれば認識できる場合や、例えば画像が取得できない場合は音声認識を使用することにより、更にロバストなトラッキングを行うことができる。
【００１３】
更にまた、上記トラッキング制御手段は、上記所定の認識手段の認識結果が所定の時間得られない場合に該トラッキングを終了又は中断することができ、トラッキングスタート時の認識手段による認識が所定期間得られないときは、トラッキングを終了又は中断することで、対象物を間違えてトラッキングしてしまうことを防止する。
【００１４】
また、上記トラッキング制御手段は、上記所定の認識手段の認識結果が得られなくなった直前の上記対象物の方向と、上記他の認識手段の認識結果により得られる上記対象物の方向との差が所定の値を超えた場合に上記トラッキングを終了又は中断することで、他の認識手段の認識結果が得られている場合であっても所定条件を満たさない場合は、トラッキングを終了又は中断して対象物を間違えてトラッキングしてしまうことを防止する。
【００１５】
更に、上記所定の認識手段が同一種類の下層の認識手段を有する場合、上記認識統合手段は、上記下層の認識手段の認識結果に基づき上記対象物のトラッキングを継続するよう制御することができ、認識レベルを下げて、認識が難しい条件下においてもトラッキングを継続することができる。
【００１６】
更にまた、上記トラッキングが終了又は中断される直前の上記対象物の方向を記憶する対象物記憶手段を有し、上記トラッキング制御は、上記優先度が高い動作が終了した際、上記記憶した方向にて上記認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御したり、又は上記トラッキングが終了又は中断される直前までの上記対象物の動きを検出する対象物動き検出手段を有し、上記トラッキング制御手段は、上記優先度が高い動作が終了した際、当該動き検出結果に基づき上記認識手段の何れかにおいて上記対象物を認識した場合に再びトラッキングを開始するよう制御することができ、対象物がトラッキングを中断又は終了した時点から移動していたとしても、認識レベルが異なる又は認識の種別が異なる複数の認識手段のうちいずれかで対象物が認識又は対象物の位置を予測し、トラッキングを再開することができる。
【００１７】
本発明に係るロボット装置の行動制御方法は、少なくとも機体の一部を使用して対象物をトラッキングするロボット装置の動作制御方法において、異なる種類のものを認識する複数の認識手段及び／又は同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段により上記対象物を認識する認識工程と、上記複数の認識手段からの認識結果を統合する認識統合工程と、上記対象物をトラッキングする動作を生成する動作生成工程と、上記認識統合結果に基づき上記トラッキング動作を制御するトラッキング制御工程とを有し、上記トラッキング制御工程では、上記複数の認識手段のうち所定の認識手段の認識結果に基づき上記対象物のトラッキングを開始し、該所定の認識手段の認識結果が得られなくなった場合に該所定の認識手段とは異なる他の認識手段の認識結果に基づき上記トラッキングを継続するよう制御されることを特徴とする。
【００１８】
また、本発明に係るプログラムは、上述したロボット装置の行動制御をコンピュータに実行させるものである。
【００１９】
【発明の実施の形態】
以下、本発明の一構成例として示す２足歩行の人間型のロボット装置について、図面を参照して詳細に説明する。この人間型のロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態（怒り、悲しみ、喜び、楽しみ等）に応じて自律的に行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。
【００２０】
（Ａ）ロボット装置の構成
図１は、本実施の形態におけるロボット装置の概観を示す斜視図である。図１に示すように、ロボット装置１は、体幹部ユニット２の所定の位置に頭部ユニット３が連結されると共に、左右２つの腕部ユニット４Ｒ／Ｌと、左右２つの脚部ユニット５Ｒ／Ｌが連結されて構成されている（但し、Ｒ及びＬの各々は、右及び左の各々を示す接尾辞である。以下において同じ。）。
【００２１】
このロボット装置１が具備する関節自由度構成を図２に模式的に示す。頭部ユニット３を支持する首関節は、首関節ヨー軸１０１と、首関節ピッチ軸１０２と、首関節ロール軸１０３という３自由度を有している。
【００２２】
また、上肢を構成する各々の腕部ユニット４Ｒ／Ｌは、肩関節ピッチ軸１０７と、肩関節ロール軸１０８と、上腕ヨー軸１０９と、肘関節ピッチ軸１１０と、前腕ヨー軸１１１と、手首関節ピッチ軸１１２と、手首関節ロール輪１１３と、手部１１４とで構成される。手部１１４は、実際には、複数本の指を含む多関節・多自由度構造体である。ただし、手部１１４の動作は、ロボット装置１の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は７自由度を有するとする。
【００２３】
また、体幹部ユニット２は、体幹ピッチ軸１０４と、体幹ロール軸１０５と、体幹ヨー軸１０６という３自由度を有する。
【００２４】
また、下肢を構成する各々の脚部ユニット５Ｒ／Ｌは、股関節ヨー軸１１５と、股関節ピッチ軸１１６と、股関節ロール軸１１７と、膝関節ピッチ軸１１８と、足首関節ピッチ軸１１９と、足首関節ロール軸１２０と、足部１２１とで構成される。本明細書中では、股関節ピッチ軸１１６と股関節ロール軸１１７の交点は、ロボット装置１の股関節位置を定義する。人体の足部１２１は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置１の足底は、ゼロ自由度とする。したがって、各脚部は、６自由度で構成される。
【００２５】
以上を総括すれば、ロボット装置１全体としては、合計で３＋７×２＋３＋６×２＝３２自由度を有することになる。ただし、エンターテインメント向けのロボット装置１が必ずしも３２自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることはいうまでもない。
【００２６】
上述したようなロボット装置１がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、２足歩行という不安定構造体に対して姿勢制御を行うこと等の要請から、アクチュエータは小型且つ軽量であることが好ましい。
【００２７】
なお、以下では、説明の便宜上、足部１２１の説明において、足部１２１の裏面の路面（床面）に当接する部分を含んで構成される面をＸ−Ｙ平面とし、該Ｘ−Ｙ平面内において、ロボット装置の前後方向をＸ軸とし、ロボット装置の左右方向をＹ軸とし、これらに直交する方向をＺ軸として説明する。
【００２８】
このようなロボット装置は、ロボット装置全体の動作を制御する制御システムを例えば体幹部ユニット２等に備える。図３は、ロボット装置１の制御システム構成を示す模式図である。図３に示すように、制御システムは、ユーザ入力等に動的に反応して情緒判断や感情表現を司る思考制御モジュール２００と、アクチュエータ３５０の駆動等ロボット装置１の全身協調運動を制御する運動制御モジュール３００とで構成される。
【００２９】
思考制御モジュール２００は、情緒判断や感情表現に関する演算処理を実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１１や、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２１２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２１３及び外部記憶装置（ハード・ディスク・ドライブ等）２１４等で構成され、モジュール内で自己完結した処理を行うことができる、独立駆動型の情報処理装置である。
【００３０】
この思考制御モジュール２００は、画像入力装置２５１から入力される画像データや音声入力装置２５２から入力される音声データ等、外界からの刺激等に従って、ロボット装置１の現在の感情や意思を決定する。ここで、画像入力装置２５１は、例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）カメラを複数備えており、また、音声入力装置２５２は、例えばマイクロホンを複数備えている。
【００３１】
また、思考制御モジュール２００は、意思決定に基づいた動作又は行動シーケンス、すなわち四肢の運動を実行するように、運動制御モジュール３００に対して指令を発行する。
【００３２】
一方の運動制御モジュール３００は、ロボット装置１の全身協調運動を制御するＣＰＵ３１１や、ＲＡＭ３１２、ＲＯＭ３１３及び外部記憶装置（ハード・ディスク・ドライブ等）３１４等で構成され、モジュール内で自己完結した処理を行うことができる独立駆動型の情報処理装置である。また、外部記憶装置３１４には、例えば、オフラインで算出された歩行パターンや目標とするＺＭＰ軌道、その他の行動計画を蓄積することができる。
【００３３】
この運動制御モジュール３００には、図２に示したロボット装置１の全身に分散するそれぞれの関節自由度を実現するアクチュエータ３５０、体幹部ユニット２の姿勢や傾斜を計測する姿勢センサ３５１、左右の足底の離床又は着床を検出する接地確認センサ３５２，３５３、足部１２１の足底１２１に設けられる後述する本実施の形態における荷重センサ、バッテリ等の電源を管理する電源制御装置３５４等の各種の装置が、バス・インターフェース（Ｉ／Ｆ）３０１経由で接続されている。ここで、姿勢センサ３５１は、例えば加速度センサとジャイロ・センサの組み合わせによって構成され、接地確認センサ３５２，３５３は、近接センサ又はマイクロ・スイッチ等で構成される。
【００３４】
思考制御モジュール２００と運動制御モジュール３００は、共通のプラットフォーム上で構築され、両者間はバス・インターフェース２０１，３０１を介して相互接続されている。
【００３５】
運動制御モジュール３００では、思考制御モジュール２００から指示された行動を体現すべく、各アクチュエータ３５０による全身協調運動を制御する。すなわち、ＣＰＵ３１１は、思考制御モジュール２００から指示された行動に応じた動作パターンを外部記憶装置３１４から取り出し、又は、内部的に動作パターンを生成する。そして、ＣＰＵ３１１は、指定された動作パターンに従って、足部運動、ＺＭＰ軌道、体幹運動、上肢運動、腰部水平位置及び高さ等を設定するとともに、これらの設定内容に従った動作を指示する指令値を各アクチュエータ３５０に転送する。
【００３６】
また、ＣＰＵ３１１は、姿勢センサ３５１の出力信号によりロボット装置１の体幹部ユニット２の姿勢や傾きを検出するとともに、各接地確認センサ３５２，３５３の出力信号により各脚部ユニット５Ｒ／Ｌが遊脚又は立脚のいずれの状態であるかを検出することによって、ロボット装置１の全身協調運動を適応的に制御することができる。更に、ＣＰＵ３１１は、ＺＭＰ位置が常にＺＭＰ安定領域の中心に向かうように、ロボット装置１の姿勢や動作を制御する。
【００３７】
また、運動制御モジュール３００は、思考制御モジュール２００において決定された意思通りの行動がどの程度発現されたか、すなわち処理の状況を、思考制御モジュール２００に返すようになっている。このようにしてロボット装置１は、制御プログラムに基づいて自己及び周囲の状況を判断し、自律的に行動することができる。
【００３８】
（Ｂ）ロボット装置の制御システム
次に、このようなロボット装置の制御システムについて説明する。本ロボット装置は、複数の認識器を有し、これらを利用することで、従来に比してロバストなトラッキングを行うことができるものであり、ここでは先ずそのトラッキングシステム及びトラッキング方法について説明し、ロボット装置全体の制御システムについては後述する。
【００３９】
（１）トラッキングシステム
図４は、本実施の形態のロボット装置の制御システムのうち、トラッキングシステムを構成する要部を示すブロック図である。本実施の形態におけるトラッキングシステムは、例えば画像認識や音声認識等の異なる種類のものを認識する複数の認識器を有し、更には、画像認識や音声認識は、異なる認識レベルの認識を行うことができるよう階層化されたものであって、これら種別又は認識レベルが異なる複数の認識器の認識結果を必要に応じて組み合わせることで、ロボット装置がトラッキング最中に、トラッキングとは異なる割り込み動作を行って、トラッキング動作を中断（一旦停止）してしまった場合や、環境変化により認識器の認識が失敗した場合であってもロバストなトラッキングを行うことができるトラッキングシステムである。
【００４０】
図４に示すように、トラッキングシステム１０は、画像を撮像する画像入力装置２５１と、マイクロホン等を備える音声入力装置２５２と、画像入力装置２５１からの画像が供給され肌色認識、顔認識、及び個人認識する夫々肌色認識部１１、顔認識部１２及び個人認識部１３からなる画像認識部１５と、音声入力装置２５２から供給される音声の方向を認識する音声方向認識部１４と、これらの認識器１４、１５の認識結果を統合する認識統合部２１と、認識統合部２１の統合結果に基づき対象物の位置を予測する予測部３１と、認識統合部２１の統合結果か、又は予測部３１の予測に基づきに基づき、対象物をトラッキングするために例えばロボット装置の首の回転角度等を制御する首制御コマンド生成部２２と、首制御コマンド生成部２２からの制御情報を出力する出力部２３とを有する。
【００４１】
色認識、顔認識、個人認識は、それぞれ人間の顔を認識するための異なる認識レベルの認識装置として存在する。図４に示す例では、最も上位で、認識が困難であるのは対象となる人物が誰であるかを特定する個人認識部１３である。そして、次に、人間等の顔であるか否かを認識する顔認識部１２であり、最下位が最も認識が容易な肌色領域を認識する肌色認識部１１となっている。なお、トラッキングの対象物としては、例えば人物や、ボール等の人物以外の物体等が挙げられるが、ここでは人物を認識し、これをトラッキングする例をとって説明する。
【００４２】
例えば、肌色認識部１１は、肌色領域を検出して認識統合部２１に認識結果を送る。次に、顔認識部１２は、対象物が人間の顔であるか否かを認識し、顔であると認識された場合には、その顔領域の画像を個人認識部１３に送ると共に、認識統合部２１に認識結果を送る。個人認識部１３は、入力される顔画像が誰であるか、即ち個人を特定すると共に、この結果を認識統合部２１へ送る。
【００４３】
対象物が人物の顔である場合の画像認識としては、このような肌色認識部１１から個人認識部１３までのカスケードな方法が考えられる。また個人の認識方法としては、例えば、個人顔が登録された登録顔データベース等を有し、登録顔と入力顔画像とを比較する等することで、入力顔が誰であるかを認識することができる。
【００４４】
また、対象物がボール等の物体である場合は、物体の色を認識する色認識部の上位に、物体の形状を認識する形状認識部、形状認識された物体の模様を認識する模様認識部等を設けることで、対象物が例えば人間の顔でない場合にも適用できることはいうまでもない。
【００４５】
また、音声方向認識部１４は、自分に対してどの方向から音声が聞こえたかを認識し、その認識方向を認識統合部２１へ供給するものであり、音声方向認識部１４の認識方法の一具体例は後述する。なお、ここでは対象物としての人間の声の方向を認識する音声方向認識手段としたが、後述するように、音声入力装置２５２からの入力音声に対して異なる認識レベルの認識器を複数設けてもよく、又は人間に関わらず、対象物が人物でないような場合、対象物が発する音の方向等を認識するものとしてもよい。
【００４６】
認識統合部２１は、これら個人認識部１３、顔認識部１２、肌色認識部１１及び音声方向認識部１４から、その認識結果が常に供給されその認識結果を統合する。この際の統合とは、画像上の同じ領域に対して、誰だかはよくわからないが顔と肌色が認識された、といった情報統合を意味する。即ち、認識部１４、１５からは、各認識が成功したか否かの情報と、認識が成功した場合はその認識情報が認識結果として送られ、認識が成功して認識情報が送られた場合は、その認識結果のち所定の認識結果又は１以上の認識結果から対象物の方向を推定する。
【００４７】
この認識統合部２１は、本ロボット装置においては、後述する図２３に示すミドル・ウェア・レイヤ５０に属し、実際にはその上位のアプリケーション・レイヤ５１に、例えば個人認識部１３の認識が成功した等、各認識部からの認識結果が伝えられ、アプリケーション・レイヤ５１からトラッキング動作開始の指令を受けとり、ロボット装置は、トラッキングをスタートするよう制御する図示しないトラッキング制御部を有する。即ち、認識統合部２１の内部又は外部に設けられたトラッキング制御部にトラッキングを開始する制御信号が入力され、後述する首制御コマンド生成部等のトラッキング動作生成部をトラッキングを開始するよう制御する。
【００４８】
トラッキング開始の指令を受取ったトラッキング制御手段は、トラッキング対象物の認識するために、複数の認識部の認識結果のうち、いずれか１以上の所定の認識部を選択し、その認識結果に基づきトラッキングを行うよう制御することができる。例えば、上記所定の認識部として、例えば、トラッキング開始指令が入力された際に、人物の顔を認識する画像認識における最上位の個人認識部１３が成功している場合には、これを使用してトラッキングをスタートすることができ、この個人認識結果により、対象物となる個人顔の例えば重心等が入力画像の例えば中心にくるよう首制御コマンド生成部２２を制御する。
【００４９】
そして、個人認識部１３が個人認識に失敗した場合、その他の認識手段である顔認識部１２、肌色認識部１１、音声方向認識部１４のいずれかの認識結果を使用してトラッキングを継続するよう制御する。例えば、個人認識部１３の下位の顔認識部１２の認識結果を使用して対象物としての人物の顔の方向（位置）を予想する。即ち、個人としての認識はできないものの、顔認識部１２の認識は成功しており、顔であることは認識できている場合、その顔を同一個人として該個人をまだトラッキングできているものとし、上記顔領域が入力画像の中心にくるよう首制御コマンド生成部２２を制御する。また、顔認識部１２も認識に失敗している場合は、例えば肌色認識部１１の結果を用い、更に肌色認識部１１の結果も失敗したときは、音声方向認識部１４の認識結果を使用し、音声方向にロボット装置の正面が向くよう首制御コマンド２２を制御する。なお、認識統合部２１は、認識結果のいずれ優先的に使用するかは、予め設定してもよく、又はロボット装置が適宜選択してもよい。例えば、個人認識部１３による認識が失敗する直前の対象物の位置（方向）と最も近い認識部の認識結果を使用するようにしてもよい。
【００５０】
予測部３１は、認識統合部２１の認識統合結果が供給され、各認識部の不安定さにより一時的に認識対象が認識できなくなった場合（認識に失敗した場合）、対象物の位置を予測するものであり、例えばいずれの認識部からの認識結果も失敗したような場合に、失敗する直前までの認識結果に基づき現在の対象物の位置（方向）を予測する。
【００５１】
そして、予測部３１は、例えば認識統合部２１から認識統合結果が常に供給され、上述のトラッキング制御部等により、対象物を認識できなくなった場合に、対象物の位置の予測を開始するよう指示される等、認識部１４、１５の認識の回復を一定時間待つなどの制御が行われる。又は、対象物が認識できなくなった場合に、認識統合部２１からその直前までの認識結果が供給され、対象物の位置を予測するよう指示されてもよい。
【００５２】
そして、この予測部３１は、対象物が認識されなくなる直前の認識結果から対象物の方向を予測し、その予測方向を首制御コマンド生成部２２へ送るものである。即ち、上述したように、ロボット装置がトラッキングするために必要な画像による外界認識はしばしば不安定であり、ライティング（照明条件）や、人物の顔の角度に敏感であり、これらが少し変化すると画像認識部１５は各種認識に失敗する場合がある等がある。また、ボール等の対象物が大きく動くと不均一な照明条件下をボールが移動することになり、認識が難しくなる。更に、自律動作が可能なロボット装置は、内部状態及び外部刺激に基づき常に発現する動作が選択され、例えばトラッキング動作より例えば優先順位が高い他の動作が生じた場合には、トラッキング動作を中断し、他の動作を発現を許す場合がある。例えば、ある人物Ａとの会話中に別の人物Ｂに呼ばれ、ロボット装置が振り向いて人物Ｂと短い会話をした後、元の人物Ａとの会話を継続しようとする場合等、一旦トラッキングを停止した後、再びトラッキングを開始したい場合が生じる。このような場合、元の人物Ａの存在位置等を記憶しておくことは原理的にはできるものの、人物Ａが少しでも動いたりすると認識の不安定さからトラッキングを再開できない場合がある。
【００５３】
このような場合においても、例えば対象物が動体であった場合は、直前の動き量から、現在の位置（方向）を予測して予測方向を求める。また、認識に失敗する直前の所定期間、対象物が静止していたと判断できるような場合は、直前の対象物の方向を予測位置とする。
【００５４】
そして、首制御コマンド生成部２２は、認識統合部２１又は予測部３１からの制御情報に基づき首制御コマンドを生成し、これを出力部２３を介して出力する。具体的には、上述の図２に示す頭部ユニット３を支持する首関節ヨー軸１０１、首関節ピッチ軸１０２、首関節ロール軸１０３からなる首関節を回転させる回転角度を算出し、出力部２３を介して出力することで、該当のモータ等を制御し、対象物の動きに合わせてロボット装置の頭部ユニットを回転させる等し、ロボット装置にトラッキングを行わせる。
【００５５】
なお、ロボット装置１は、実際には、後述する図２３に示すアプリケーション・レイヤ５１は、行動が記述された複数の行動記述モジュールからなる行動記述部（図示せず）と、これらの行動を選択する行動選択部（図示せず）とを有し、行動選択部は、外部の情報である認識統合結果を行動選択基準の一つとして捉え、複数の行動記述モジュールのうちトラッキングを行う行動を選択するようなされており、行動記述部から出力される行動が物体のトラッキングを伴うものである場合、対象物を指定して、ロボット装置の首、目、足等のロボット装置の少なくとも一部を使ってトラッキングするよう認識統合部２１に指令を出力し、これを受けた認識統合部２１が、例えば首制御コマンド生成部２２へ所定の首制御コマンドを生成する指令を出力する。
【００５６】
また、ここでは、認識統合部２１が首制御コマンド生成部２２にロボット装置の首関節を回転させてトラッキングを行う例をとって説明するが、例えば対象物がロボット装置の首関節の回転角度の限界より大きく移動したりする場合、首関節のみでなく、例えば図２に示す体幹部ユニット２の体幹ピッチ軸１０４、体幹ロール軸１０５、又は体幹ヨー軸１０６を制御したり、脚部ユニットを制御してロボット自身が移動しながらトラッキングを行ってもよい。
【００５７】
なお、予測部３１は、全ての認識部が失敗したときに対象物の方向を予測するものとしたが、上述した認識統合部２１での処理の一部を予測部３１にて行わせるようにしてもよい。即ち、上位の個人認識１３が失敗した際に、下位の顔認識部１２の認識結果や音声方向認識部１４の認識結果を使用してトラッキングを継続する際の処理を予測部３１が行ってもよい。
【００５８】
以下、本実施の形態について更に詳細に説明する。本トラッキングシステムは、対象物の認識に失敗した場合に対象物の位置（方向）を予測する予測機能、対象物の認識に失敗したときに認識レベル又は認識器の種類を切替えトラッキングを続行する機能、及び対象物の認識に失敗している期間（時間）が所定の閾値以上となった場合はトラッキングを中断する機能等を有する。以下、図５乃至図９を参照してこれらの機能について詳細に説明するが、理解を容易にするため、いずれの場合においても、トラッキングのスタート時には、個人認識部１３の個人認識結果を使用しているものとし、同一の構成要素には同一の符号を付してその詳細な説明は省略する。
【００５９】
なお、上述したように、本実施の形態は、複数の認識部を有し、いずれか所定の認識部の認識結果を使用してトラッキングをスタートさせた場合に、該所定の認識部の認識に失敗した場合であっても、他の認識部の認識結果を使用したり、失敗する直前の認識結果から対象物の現在の位置（方向）を予測して、ロバストなトラッキングを行うことを可能とするものであり、個人認識部１３以外の認識部の認識結果をトラッキングのスタートの際に使用してもよい。
【００６０】
（１−１）トラッキング対象物の予測
先ず、複数種及び／又は複数に階層化された認識部のいずれの認識も失敗した際でもトラッキングを継続する機能について説明する。図５は、トラッキングシステムを示すブロック図であり、ここでは、認識器として例えば異なる認識レベルに階層化された認識器１５を有する場合とする。先ず、人物が目の前に現れたことから、行動選択部が対話行動を選択し、人間と対話を開始したとする。その際、例えばその人物（対象物）の個人認識に成功し、上述の行動選択部及び認識統合部２１にその個人認識結果が送られて、該個人に対するトラッキングが開始される。トラッキングがスタートすると、首制御コマンド生成部２２に認識結果が送られ、この認識結果を基に、首制御コマンド生成部２２が人物の顔が例えばロボット装置の視野の中心にくるように首を制御することでトラッキングを実施する。
【００６１】
また、上述したように、首の回転角を制御してトラッキングを実施するだけでなく、人物が大きく動いた場合には足を使って体を回転させて、その人物を追尾するようにしたり、上半身のみ回転させるようにしたりしてもよいことはもちろんである。
【００６２】
そして、例えばトラッキング中に、顔の角度が変わったりあるいは照明状況が変化したことにより、個人認識ができなくなるか、別の個人として認識されたとする。即ち、同一個人の認識に失敗した場合、認識不可を知らせる情報が予測部３１に供給される。予測部３１は、認識不可になるタイミングの直前の人物の位置（方向）の情報を有し、直前のタイミングにおける人物が静止していた場合は、直前の人物の位置を予測方向とする。
【００６３】
又は、トラッキング対象の人物が動いていた場合は、直前までの情報から動き量を検出し、現在の位置を予測する。この場合、画像認識においては、認識不可となるまでの動きベクトルを求め、これに基づき、認識可能であった時刻から現在の時刻までの間に動いた位置を予測すればよい。なお、後述する音声認識においても、音声の認識方向が時間と共に変化している場合は、その変化量から現在の方向を予測すればよい。
【００６４】
但し、予測部３１は、個人認識部１３以外の他の認識部の認識結果を使用して一時的にトラッキングを継続するものであって、個人認識部１３が再び成功すれば、個人認識部１３の認識結果を使用するものとする。また、個人認識部１３が失敗して、他の認識部の認識結果が代用されてから所定の時間以上経過しても個人認識１３が成功しないか、又は所定時間以上経過した後も別の個人として認識されている場合は、トラッキングを終了又は中断する。
【００６５】
（１−２）異なる認識レベルの認識器を有する場合
次に、認識レベルが異なる画像認識器、例えば肌色認識部１、顔認識部１２及び個人認識部１３からなる認識器を有する場合の認識器の使用方法について説明する。上述したように、認識器１５はその認識レベルに応じて階層化されている。即ち、図６に示すように、肌色認識部１１のような最下位から顔認識部１２、個人認識部１３等の最上位までその認識レベルに応じて複数に階層化されており、上位の認識部の認識が失敗した際には下位の認識結果を使用するよう認識統合部２１にて制御される。
【００６６】
個人顔が認識されてトラッキングがスタートした場合、認識統合部２１には、常に個人認識部１３からの認識結果だけではなく、肌色認識部１１、顔認識部１２の認識結果も供給されている。なお、肌色認識部１１及び顔認識部１２は、それぞれ上位の認識器に自身の結果を送らないものとするが、例えば個人認識部１３は、顔認識部１２の顔認識結果を使用して個人認識する等、上位の認識器は下位の認識器の結果を使用してもよい。
【００６７】
ここで、ある時刻Ｔ１において、個人認識に失敗したとする。認識統合部２１には、各認識器から認識の成否、成功した場合は認識情報が認識結果として送られており、認識統合部２１は、時刻Ｔ１において、個人認識失敗の情報を得るとする。
【００６８】
その際、予測部３１は、個人認識部１３の下位の顔認識部１２が認識に成功している場合であって、同じ位置に顔が認識されている場合、その人物はまだそこにいると予測し、顔（誰であるかは問わない）領域をトラッキングする。また、顔認識分１２も認識に失敗している場合であって、同じ位置に肌色領域が認識されていれば、その領域をトラッキングする。上述したように、このような他の認識器による認識結果を使用したトラッキングの継続は、認識統合部２１で行ってもよいが、図６に示すように予測部３１で行ってもよい。
【００６９】
但し、個人認識部１３が失敗して下層の認識部（他の認識部）の認識結果を使用する場合、個人認識部１３により認識されていた対象物の位置（方向）と、下層の認識部により認識される対象物の方法（位置）とが所定の大きさ以上離れている場合は、間違った対象物を認識している可能性が高いのでトラッキングを終了又は中断する。
【００７０】
また、本実施の形態は、トラッキングのスタートを、人物の顔を認識する認識器の最上位の個人認識部１３の認識結果を使用して行うものとしているが、トラッキングのスタート指令が出された場合に、認識統合部２１に例えば肌色認識部１１のみしか認識に成功していない場合、肌色認識部１１の認識結果を基にトラッキングを行う。そして、トラッキングの途中で顔認識部１２、個人認識部１３の認識が成功した場合、上述とは逆に認識レベルを上げてもよい。
【００７１】
（１−３）異なる認識種別の認識器を有する場合
次に、図６に示したように階層化された画像認識部とは異なる種別の音声認識部１４を備えるトラッキングシステムにおける認識器の使用方法の一例について説明する。例えば、図６に示すような階層化された複数の画像認識部の認識が全て失敗した場合、即ち、例えば照明条件の変化等により入力画像が得られなくなったりする場合がある。このような場合、異なる種別の認識器を備えることによりトラッキングを続行することができる。
【００７２】
図７に示すように、ある時刻Ｔ３にて、それまでトラッキングしていた対象人物の個人認識、顔認識、肌色認識のいずれもが認識不能になった場合に、音声入力装置２５２から音声が入力されたとする。この場合、画像認識が全て認識不可であっても、音声方向認識部１４の認識結果が得られている場合は、その音声方向にまだその人物が存在していると解釈（予測）することが可能である。このように、予測部３１は、画像認識が全て失敗した場合においても、音声方向認部１４の識結果を使用し、その方向を対象物の予測方向とし、一定時間トラッキングを続けることで、更にトラッキングのロバスト性を高めることができる。もちろん、予測部３１におけるトラッキングを一定時間以上継続しても、トラッキング対象としていた人物が個人認識部１３にて認識できない場合には、トラッキングを中断又は終了するものとする。これは、上述したように、人物が実際にいなくなった場合、あるいは間違った人物をトラッキングしつづけることを防ぐためである。また、トラッキング開始指令が供給された際に、例えば音声方向認識部のにが認識に成功していた場合等には、この音声方向認識部１４の認識結果をトラッキングスタートとしてもよい。
【００７３】
また、ここでは、音声方向を認識する音声方向認識部１４のみを記載したが、例えば音声認識部においても、画像認識部のように、階層化された構造としてもよい。即ち、音声方向認識部１４の上層に、音声を発している人物が誰であるかを特定する話者認識部を設け、話者認識部の更に上層に、人物がどのような内容を話しているかを認識する音声内容認識部等を設けてもよい。話者認識は、例えば登録話者データベースを用意し、入力音声と登録音声データベースのデータとを比較することで話者を特定することができる。また、音声内容認識部においては、例えば、複数の単語又は短文が登録されたデータベースを用意し、ロボット装置の呼びかけに対し、所定のパターンの返答があるか否かをそのデータベースのデータと比較し、ユーザとの対話ができているか否か等を判定する等の方法がある。
【００７４】
（１−４）割り込み動作が入った後のトラッキング
次に、ある行動を実行中に別の行動が割り込むことを行動選択実行部が許容している場合について説明する。後述するように、本ロボット装置は、内部状態及び外部刺激に応じて自律的に行動を選択して発現することができ、従って、トラッキング動作よりも実行優先度が高いような動作が存在する場合は、トラッキング動作を中断し、他の割り込み動作を行うようにすることもできる。
【００７５】
例えば、例えば、ロボット装置が人物Ａと会話中、即ち人物Ａをトラッキング中に、別の人物Ｂから例えば後ろから呼ばれたために、振り向き、人物Ｂとある会話をした後、元の対話相手Ａの方に戻るような場合がある。このような場合、図８に示すように、人物Ｂと対話する割り込み動作（別の行動）３２により人物Ａのトラッキングは中断される。その際、認識統合部２１又は予測部３１は、元の対話相手Ａとの対話を再開するため、即ち人物Ａを再度トラッキングするために、中断した時点の人物Ａの位置（方向）を記憶しておく記憶手段（図示せず）を備える。トラッキング再開時には、認識統合部２１及び／又は予測部３１には割り込み動作３２が終了したことが通知され、トラッキングを再開するように指示する。その際、上述と同様の方法で、人物のトラッキングに復帰する。
【００７６】
即ち、トラッキングが中断されるまでに、人物Ａが静止していれば、現在もその位置いるものと予測し、また人物Ａの動きが検出されていれば、中断された時刻と検出されている動きベクトルとから現在の位置を予測する。その予測方向にて、なんらかの認識部により対象物が認識できればトラッキングを再開することができる。この際、上述したように、予測方向と認識された対象物の位置（方向）とが大きく異なるときは、トラッキングを再開しないようにすることができる。また、トラッキングを再開した後、所定時間経過しても個人認識できない場合はトラッキングを終了する。
【００７７】
（１−５）トラッキングの終了条件
また、本トラッキングシステムは、複数の認識器の認識結果を使用しロバストなトラッキングを行うものであるが、認識レベルが低い認識器の認識結果を使用し続けたり、認識結果を基に認識結果が得られていない場合にも対象物方向を予測し続けたりすることで、間違った対象物をトラッキングすることを防止するため、一定条件でトラッキングを終了又は中断する機能を有している。
【００７８】
例えば、図９に示すように、個人認識部１３の認識によりトラッキングがスタートした場合、個人認識部１３が失敗すると、例えば顔認識部１２、肌色認識部１１、音声認識部１４等、個人認識１３とは異なる他の認識部の認識結果を使用するが、全ての認識結果が得られなくなった場合は、上述したように、予測部３１が、最後まで成功していた認識部が失敗する直前の人物の動きから、人物の存在位置を予測してその予測方向に対して首を動かすトラッキングを行う。そのトラッキング中に、人物、顔、肌色のどれかがその予測位置（方向）付近に再出現したり、その予測方向付近に音声方向が認識できた場合には、それをトラッキング対象としてトラッキングを再開するが、最初にトラッキングを開始した際の個人顔であることが一定以上認識できない状態が続いたら、仮に顔、肌色が見えていても、トラッキングを中止する。即ち、トラッキングスタート時より下位の認識器の認識結果のみによりトラッキングを行ったり、認識結果からの予測によって対象物をトラッキングしているようにする（擬似的なトラッキング）動作は、所定時間以上続けないものとする。
【００７９】
このため、例えば認識統合部２１と予測部３１との間にタイマ３３有し、これが所定時間経過した場合は、トラッキングを終了するものとする。これは、上述したように、長時間個人認識されない場合、全く別の人物に対して誤解して対話行動を続ける場合や、全く別のもの顔としてトラッキング継続してしまうようなことを防ぐためである。
【００８０】
このように構成された本実施の形態のトラッキングシステムにおいては、認識部をその認識レベルが異なる階層構造とし、これを利用し上位認識系が認識に失敗しても下位の認識結果を用いたり、画像認識や音声認識等の種別が異なる認識器の認識結果を用いたりし、様々な認識器の認識結果を複合的に組み合わせて使用することで、割り込み動作によりトラッキングが中断された場合でも、また照明等の変化により認識系の不安定さに対してもロバストなトラッキングを行うことができる。
【００８１】
次に、上述のトラッキングシステムに好適な音源方向認識方法及び動体検出方法の一具体例について説明する。
【００８２】
（２−１）具体例：音源方向認識方法
以下に、音声方向認識部１４の音声方向認識方法（推定方法）の一具体例について詳細に説明する。ここで、上述した図２に示した関節自由度は、より生物感を高めるために可動範囲が制限されているものとする。このため、図２の首関節ヨー軸１０１の可動範囲外から音声が入力された場合には、首や体幹を協調させて回転し、音源方向に振り向く動作を行うことが必要となる。
【００８３】
そこで、本具体例におけるロボット装置１は、図１０（ａ）乃至（ｆ）に示すようにして音源方向を振り向く。すなわち、図１０（ａ）のようにロボット装置１が図中右側を向いていたときに背後から音声が入力されると、図４（ｂ）乃至（ｆ）のように、首を回転させると共に脚部を使って体幹を回転させ、音源方向に振り向く。
【００８４】
このような音源方向への振り向き動作の一例について、図１１のフローチャートを用いて説明する。先ずステップＳ１において、図４に示す音声入力装置２５２の有するマイクロホンに所定の閾値以上の振幅の音が入力されることにより、音イベントが発生したことが検出される。
【００８５】
次にステップＳ２において、入力された音イベントの音源方向の推定が行われる。ここで、上述したように、音声入力装置２５２には、複数のマイクロホンが備えられており、ロボット装置１は、この複数のマイクロホンを用いて音源方向を推定することができる。具体的には、例えば「大賀、山崎、金田『音響システムとディジタル処理』（電子情報通信学会）ｐ１９７」に記載されているように、音源方向と複数のマイクロホンで受音した信号の時間差とに一対一の関係があることを利用して音源方向を推定することができる。
【００８６】
すなわち、図１２に示すように、θＳ方向から到来する平面波を、距離ｄだけ離れて設置された２つのマイクロホンＭ１，Ｍ２で受音する場合、各マイクロホンＭ１，Ｍ２の受音信号ｘ１（ｔ）とｘ２（ｔ）との間には、以下の式（１）、（２）に示すような関係が成立する。ここで、式（１）、（２）において、ｃは音速であり、τＳは２つのマイクロホンＭ１，Ｍ２で受音した信号の時間差である。
【００８７】
【数１】
2004283959.tif 000003
【００８８】
従って、受音信号ｘ１（ｔ）とｘ２（ｔ）との間の時間差τＳが分かれば、以下の式（３）により、音波の到来方向、すなわち音源方向を求めることができる。
【００８９】
【数２】
2004283959.tif 000004
【００９０】
ここで、時間差τＳは、以下の式（４）に示すような、受音信号ｘ１（ｔ）とｘ２（ｔ）との間の相互相関関数φ１２（τ）から求めることができる。ここで、式（４）において、Ｅ［・］は期待値である。
【００９１】
【数３】
2004283959.tif 000005
【００９２】
上述した式（１）と式（４）とから、相互相関関数φ１２（τ）は、以下の式（５）のように表される。ここで、式（５）において、φ１１（τ）は受音信号ｘ１（ｔ）の自己相関関数である。
【００９３】
【数４】
2004283959.tif 000006
【００９４】
この自己相関関数φ１１（τ）は、τ＝０で最大値をとることが知られているため、式（５）より相互相関関数φ１２（τ）は、τ＝τＳで最大値をとる。したがって、相互相関関数φ１２（τ）を計算して、最大値を与えるτを求めればτＳが得られ、それを上述した式（３）に代入することにより、音波の到来方向、すなわち音源方向を求めることができる。
【００９５】
なお、上述した音源方向の推定手法は一例であり、この例に限定されるものではない。
【００９６】
図５に戻ってステップＳ３では、現在ロボット装置１が向いている方向と音源の方向との差が計算され、体幹の向きに対する音源方向の相対角度が求められる。
【００９７】
続いてステップＳ４では、図２に示した首関節ヨー軸１０１の可動範囲と、脚部を使って体幹を回転させる際に、一度の回転動作で回転できる最大角度などの制約に基づき、ステップＳ３で計算された相対角度分だけ頭部を回転させるのに必要な首関節と体幹の回転角度を決定する。ここで、音源方向によっては、首関節のみの回転角度が決定される。なお、ロボット装置１は、図２に示したように体幹ヨー軸１０６を有しているが、簡単のため、本具体例ではこの体幹ヨー軸１０６を利用しないものとして説明する。しかし、首、腰、足の接地方向を利用し、全身を協調させて音源方向を振り向くことができることは勿論である。
【００９８】
具体的に図１３を用いて説明する。図１３（ａ）は、ロボット装置１の首の可動範囲を±Ｙ度とし、音源Ｓの方向の相対角度がロボット装置１の正面方向に対してＸ度方向である場合の例である。この場合、ロボット装置１が音源Ｓの方向に振り向くためには、図１３（ｂ）に示すように、最低でもＸ−Ｙ度だけ体幹全体を脚部を使って回転させると共に、首関節ヨー軸１０１をＹ度だけ音源Ｓの方向に回転させる必要がある。
【００９９】
次にステップＳ５では、ステップＳ４で得られた角度を回転させるのに必要な各関節の制御情報を立案、実行し、音源方向に振り向く。
【０１００】
続いてステップＳ６において、音源方向に正対する必要があるか否かが判別される。ステップＳ６において、例えば、音イベントが単なる物音などの雑音の場合には、正対する必要がないとしてステップＳ７に進んで、元々向いていた方向に体幹及び首の向きを戻し、一連の動作を終了する。一方、ステップＳ６において、例えば、画像入力装置２５１（図３）の情報からロボット装置１が予め学習して知っている人の顔を発見し、その人に呼び掛けられたと判断した場合などには、その向きに正対する制御を行なうためにステップＳ８に進む。
【０１０１】
ここで、人間の顔を検出する手段としては、例えば「Ｅ．Ｏｓｕｎａ，  Ｒ．Ｆｒｅｕｎｄ  ａｎｄ  Ｆ．Ｇｉｒｏｓｉ：“Ｔｒａｉｎｉｎｇ  ｓｕｐｐｏｒｔ  ｖｅｃｔｏｒ  ｍａｃｈｉｎｅｓ：ａｎ  ａｐｐｌｉｃａｔｉｏｎ  ｔｏ  ｆａｃｅ  ｄｅｔｅｃｔｉｏｎ”，  ＣＶＰＲ’９７，  １９９７」  に記載されているような手法で実現することが可能である。また、特定の人の顔を認識する手段としては、例えば「Ｂ．Ｍｏｇｈａｄｄａｍ  ａｎｄ  Ａ．Ｐｅｎｔｌａｎｄ：“Ｐｒｏｂａｂｉｌｉｓｔｉｃ  Ｖｉｓｕａｌ  Ｌｅａｒｎｉｎｇ  ｆｏｒ  Ｏｂｊｅｃｔ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ”，  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，  Ｖｏｌ．１９，  Ｎｏ．７，  Ｊｕｌｙ  １９９７」に記載されているような手法で実現することが可能である。
【０１０２】
ステップＳ８では、正対するために必要な体幹及び首の回転角度が計算される。例えば上述した図１３（ｂ）に示すように、現在のロボット装置１の姿勢において首関節ヨー軸１０１がＹ度回転している場合、すなわち体幹に対して頭部がＹ度回転している場合には、図１３（ｃ）に示すように、体幹をＹ度回転させると同時に首関節ヨー軸１０１を−Ｙ度回転させることによって、対象オブジェクトを注視したまま首の捻れを解消し、自然な動作で音源Ｓの方向に正対することが可能となる。
【０１０３】
最後にステップＳ９では、ステップＳ８で計算した動作を実行し、音源方向に正対する。
【０１０４】
ロボット装置１は、以上のようにして音源方向を推定し、全身を協調させて自然な動作により音源方向を振り向くことができる。
【０１０５】
また、ロボット装置１は、音イベントの内容によっては、対象オブジェクトを注視したまま首の捻れを解消し、自然な動作で音源方向に正対する。特に、人間から呼びかけられたような場合には、その呼びかけを行った者の方向に顔を向けて正対することにより、人間との親密性を高めることができる。
【０１０６】
なお、以上の動作は、上述した図３に示す思考制御モジュール２００から指示され、運動制御モジュール３００によって各アクチュエータ３５０が制御されることにより実現される。
【０１０７】
ここで、体幹の向きに対する音源方向の相対角度を求め、実際にその方向に振り向いた場合に、対象オブジェクトを認識できないような状況が考えられる。すなわち例えば、音源方向の推定誤差により、振り向いた方向の視野角内に対象オブジェクトがない場合や、音源方向が正しくても対象オブジェクトまでの距離が遠い場合には、対象オブジェクトを認識することができない。
【０１０８】
そこで、本具体例におけるロボット装置１は、以下のようにしてこのような問題を解消することができる。この振り向き動作の一例を図１４のフローチャートを用いて説明する。
【０１０９】
図１４に示すように、先ず、ステップＳ１０において、図３に示す音声入力装置２５２の有するマイクロホンに所定の閾値以上の振幅の音が入力されることにより、音イベントが発生したことが検出される。
【０１１０】
次にステップＳ１１において、入力された音イベントの音源方向の推定が行われる。
【０１１１】
続いてステップＳ１２では、現在ロボット装置１が向いている方向と音源の方向との差が計算され、体幹の向きに対する音源方向の相対角度が求められる。
【０１１２】
続いてステップＳ１３では、図２に示した首関節ヨー軸１０１の可動範囲と、脚部を使って体幹を回転させる際に、一度の回転動作で回転できる最大角度などの制約に基づき、ステップＳ１２で計算された相対角度分だけ頭部を回転させるのに必要な首関節と体幹の回転角度を決定する。この際、可動範囲の限界まで首を回転させるのではなく、振り向いた後にさらに首を左右に振れるように、多少の余裕を持たせるようにする。
【０１１３】
すなわち、図１５（ａ）に示すように、ロボット装置１の首の可動範囲を±Ｙ度とし、音源Ｓの方向の相対角度がロボット装置１の正面方向に対してＸ度方向である場合、Ｚ度分だけ余裕を持たせ、図１５（ｂ）のように体幹全体を脚部によりＸ−（Ｙ−Ｚ）度だけ回転させると共に、首関節ヨー軸１０１をＹ−Ｚ度回転させる。これにより、音源Ｓの方向に振り向いた後にさらに首を左右に振ることが可能とされる。
【０１１４】
図１４に戻ってステップＳ１４では、ステップＳ１３で得られた角度を回転させるのに必要な各関節の制御情報を立案、実行し、音源方向に振り向く。
【０１１５】
ステップＳ１５では、音源方向に対象オブジェクトを認識できたか否かが判別される。ステップＳ１５において、例えば上述したような顔検出や顔認識により、予め学習して知っている人の顔が見つかった場合などには、音源方向に対象オブジェクトを認識することができたとして、ステップＳ１６に進む。
【０１１６】
ステップＳ１６では、認識された対象オブジェクトをトラッキングの対象とし、以後オブジェクトが動くのに合わせて首や体幹の向きを変化させて、対象オブジェクトのトラッキングを行うようにし、一連の動作を終了する。
【０１１７】
一方、ステップＳ１５において、対象オブジェクトを認識できなかった場合には、ステップＳ１７に進み、音イベントが音声であったか否かが判別される。具体的には、例えばＨＭＭ（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ）法により音声と非音声とを統計的にモデル化し、その尤度を比較することによって。音イベントが音声であったか否かを判別することができる。ステップＳ１７において、音声でないと判別された場合には、例えばドアの閉まる音や物音など、認識対象とする必要のない事象に由来する音イベントであったと判断し、一連の動作を終了する。また、ステップＳ１７において音声であると判別された場合には、ステップＳ１８に進む。
【０１１８】
ステップＳ１８では、音源が近いか否かが判別される。具体的には、例えば文献「Ｆ．Ａｓａｎｏ，  Ｈ．Ａｓｏｈ  ａｎｄ  Ｔ．Ｍａｔｓｕｉ，  “Ｓｏｕｎｄ  Ｓｏｕｒｃｅ  Ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  Ｓｅｐａｒａｔｉｏｎ  ｉｎ  Ｎｅａｒ  Ｆｉｅｌｄ”，  ＩＥＩＣＥ  Ｔｒａｎｓ．  Ｆｕｎｄａｍｅｎｔａｌ，  Ｖｏｌ．Ｅ８３−Ａ，  Ｎｏ．１１，  ２０００」に記載されているような手法で音源までの推定距離を計算することにより、大まかに推定することが可能である。ステップＳ１８において、音源までの距離が画像入力装置２５１や対象オブジェクト認識手段の性能によって、対象オブジェクトを認識することが困難なほど遠い場合には、続くステップＳ１９で対象オブジェクトを認識可能な距離までロボット装置１自体を音源方向に歩行させ、対象オブジェクトの認識精度を確保する。また、ステップＳ１８において、音源までの距離が近い場合には、歩行を行なわずにステップＳ２１に進む。
【０１１９】
ステップＳ２０では、対象オブジェクトが認識できるか否かが再度判別される。ステップＳ２０において対象オブジェクトを認識できた場合には、ステップＳ１６に戻ってトラッキング処理に移行し、一連の動作を終了する。ステップＳ２０において対象オブジェクトを認識できなかった場合には、ステップＳ２１に進む。
【０１２０】
ステップＳ２１では、音源方向の推定に誤差があることを想定して、首関節ピッチ軸１０２及び首関節ヨー軸１０１を回転させることによって頭部を上下左右に振る。
【０１２１】
続いてステップＳ２２では、ステップＳ２１で頭部を上下左右に振った結果、対象オブジェクトを認識できたか否かが判別される。ステップＳ２２において対象オブジェクトを認識できた場合には、ステップＳ１６に戻ってトラッキング処理に移行し、一連の動作を終了する。ステップＳ２２において対象オブジェクトを認識できなかった場合には、音源方向推定が大きく誤った場合が想定されるため、ステップＳ２３においてその旨を出力し、一連の動作を終了する。具体的には、対象オブジェクトが人間である場合には、「どこにいるのか分かりません。もう一度喋ってもらえますか？」といった音声を出力し、音声を再入力してもらえるように依頼することによって、再びこの一連の処理を実行することが可能となる。
【０１２２】
以上のように、ロボット装置１が音源方向に近づいたり、顔を左右に振ることによって、音源方向の推定誤差により振り向いた方向の視野角内に対象オブジェクトがない場合や、音源方向が正しくても対象オブジェクトまでの距離が遠い場合であっても、対象オブジェクトを認識することが可能となる。特に、推定された音源方向に振り向いた後にも、さらに頭部を左右に振れるように首の回転角度が設定されるため、自然な動作により対象オブジェクトをトラッキングすることができる。
【０１２３】
なお、上述の例では音源の距離推定を行い音源方向に近づいた後に顔を振る動作を行うものとして説明したが、これに限定されるものではなく、例えば、音源までの距離の推定精度が音源方向の推定精度と比較して著しく低いような場合には、音源方向に近づく前に顔を振る動作を行うようにしても構わない。
【０１２４】
また、上述の例では、対象オブジェクトを認識可能な距離までロボット装置１自体を音源方向に歩行させて、対象オブジェクトを認識できたか否かを再度確認するものとして説明したが、これに限定されるものではなく、例えば５０ｃｍなど、所定の距離だけ音源方向に近づいた後に、対象オブジェクトを認識できたか否かを再度確認するようにしても構わない。
【０１２５】
さらに、上述の例では、対象オブジェクトを認識する手段として、顔検出、顔認識を用いるものとして説明したが、これに限定されるものではなく、特定の色や形状のものを認識するようにしても構わない。
【０１２６】
（２−２）具体例：動体検出方法
次に、認識統合部２１において、画像認識結果から動体を検出をする方法であって、特に、撮像した画像内の動体を簡易な手法により検出し、トラッキング可能とする動体検出方法の一具体例について説明する。上述したように、本具体例におけるロボット装置１は、図３に示すＣＣＤカメラ等の画像入力装置２５１により撮像した画像データ内の人物の顔の肌色領域、顔（個人顔も含む）領域を認識し、更に認識した肌色又は個人顔領域が動体である場合は、それらの認識結果を基に、例えば図４に示す認識統合部２１に設けられた動体検出部（図示せず）において、動体を検出し、この検出結果に基づき首制御コマンド生成部２２や、脚部ユニット等を制御し、検出した動体の方向を向く、或いはトラッキングするなどといった行動を行うことができる。
【０１２７】
ここで、認識統合部２１の動体検出部がフレーム間の差分画像を生成した場合、動体の動きが停止した時点で差分値が０となる。例えば、図１６に示すように、それぞれ時刻ｔ１〜ｔ４における人間を撮像した画像データＰ１〜Ｐ４について差分画像データＤ１〜Ｄ３を生成した場合、時刻ｔ３及びｔ４間で顔が静止していると、差分画像データＤ３から顔の差分データが消失してしまう。つまり、差分画像データから動体が消失したということは、動体がその場から消失したのではなく、消えた場所に動体が存在するということを意味している。
【０１２８】
そこで、本具体例おけるロボット装置１は、この差分が０となる時点を検出し、その直前の差分画像における重心位置の方向にＣＣＤカメラ等の画像入力装置２５１を向けることで重心位置の方向を向き、又は脚部ユニットを制御し重心位置の方向に近付く。すなわち、図１７のフローチャートに示すように、先ずステップＳ２１において、差分画像データの重心位置を計算することで動体を検出し、ステップＳ２２において、検出した動体が差分画像データから消失したか否かが判別される。ステップＳ２２において動体が消えていない場合（Ｎｏ）にはステップＳ２１に戻る。一方、ステップＳ２２において動体が消えた場合（Ｙｅｓ）にはステップＳ２３に進み、消失した方向、すなわち直前の差分画像における重心位置の方向を向く、或いはその重心位置の方向に近付く。
【０１２９】
なお、検出した動体がロボット装置１の視覚範囲から外れた場合にも差分画像から動体が消失するが、この場合にも上述のステップＳ２３において最後に検出された重心位置の方向を向くことで、ほぼ動体の方向を向くことができる。
【０１３０】
このように、本具体例におけるロボット装置１は、視覚範囲内で動体が静止したことにより差分画像データから消失するタイミングを検出し、その重心位置の方向を向くようにすることで、例えば人間等の動体の気配を感じてその方向を向くという自律的なインタラクションを実現できる。また、予測部３１は、動体が視覚範囲から外れたことにより差分画像データから消失するのを検出し、最後に検出された重心位置の方向を向くようにすることで、ほぼ動体の方向を向くことができる。
【０１３１】
また、ロボット装置１は、差分画像データから動体が消失した場合のみならず、所定の時間間隔毎、或いは動体の重心位置が視覚範囲から外れそうになる毎に検出された重心方向を向き、動体をトラッキングするようにしても構わない。すなわち、図１８のフローチャートに示すように、先ずステップＳ３０において、差分画像データの重心位置を計算することで動体を検出し、ステップＳ３１において、所定の時間間隔毎、或いは動体が視覚範囲から外れそうになる毎に検出された重心位置の方向を向く。
【０１３２】
ここで、ロボット装置１は、前述のように差分画像データから動体が消失した場合の他、ステップＳ３１におけるロボット装置１の動きが大きい場合には、動き補償によって自己の動きと動体の動きとを区別することができなくなり、動体を見失ってしまう。そこでステップＳ３２において、動体を見失ったか否かが判別される。ステップＳ３２において動体を見失っていない場合（Ｎｏ）にはステップＳ３０に戻る。一方、ステップＳ３２において動体を見失った場合（Ｙｅｓ）にはステップＳ３３に進み、最後に検出された重心位置の方向を向く。
【０１３３】
このように、本具体例におけるロボット装置１は、所定の時間間隔毎、或いは動体が視覚範囲から外れそうになる毎に検出された重心方向を向き、動体を見失った場合に最後に検出された重心位置の方向を向くようにすることで、頭部ユニットに設けられた画像入力装置２５１によって撮像した画像内の動体を簡易な手法により検出し、トラッキングすることが可能となる。
【０１３４】
以上の処理は、後述する図２２に示すミドル・ウェア・レイヤ５０の認識系７１には、上述の図４に示す複数の認識部１５及び認識統合部２１が含まれ、この認識統合部２１は、動き検出用信号処理モジュール６８を含む。この動き検出信号処理モジュール６８が図１９に示す差分画像生成モジュール１１０と重心計算モジュール１１１とによって構成することで実現される。
【０１３５】
すなわち、図１９に示すように、ロボティック・サーバ・オブジェクト４２のバーチャル・ロボット４３は、ＣＣＤカメラ２２によって撮像されたフレーム単位の画像データをＤＲＡＭ１１から読み出し、この画像データをミドル・ウェア・レイヤ５０の認識系７１に含まれる認識結果統合部２１の差分画像生成モジュール１１０に送出する。
【０１３６】
差分画像生成モジュール１１０は、画像データを入力する毎に時間軸上で隣接する前フレームの画像データとの差分をとって差分画像データを生成し、この差分画像データを重心計算モジュール１１１に与える。例えば、上述した画像データＰ２と画像データＰ３との差分画像データＤ２を生成する場合、位置（ｉ，ｊ）における差分画像データＤ２の輝度値Ｄ２（ｉ，ｊ）は、位置（ｉ，ｊ）における画像データＰ３の輝度値Ｐ３（ｉ，ｊ）から同位置における画像データＰ２の輝度値Ｐ２（ｉ，ｊ）を減算することで得られる。差分画像生成モジュール１１０は、全画素について同様の計算を行って差分画像データＤ２を生成し、この差分画像データＤ２を重心計算モジュール１１１に与える。
【０１３７】
そして、重心計算モジュール１１１は、差分画像データのうち、輝度値が閾値Ｔｈよりも大きい部分についての重心位置Ｇ（ｘ，ｙ）を計算する。ここで、ｘ、ｙは、それぞれ以下の（６）式、（７）式を用いて計算される。
【０１３８】
【数５】
2004283959.tif 000007
【０１３９】
これにより、図２０に示すように、例えば上述した画像データＰ２と画像データＰ３との差分画像データＤ２から、重心位置Ｇ２が求められる。
【０１４０】
重心計算モジュール１１１は、求めた重心位置のデータをアプリケーション・レイヤ５１の行動モデルライブラリ９０に送出する。
【０１４１】
行動モデルライブラリ９０は、必要に応じて情動のパラメータ値や欲求のパラメータ値を参照しながら続く行動を決定し、決定結果を行動切換モジュール９１に与える。例えば、差分画像データから動体が消失した場合には、直前に検出された重心位置を向く、或いは近付く行動を決定し、決定結果を行動切換モジュール９１に与える。また、所定の時間間隔毎に動体をトラッキングする場合には、その時間間隔毎に検出された重心位置を向く、或いは近付く行動を決定し、決定結果を行動切換モジュール９１に与える。そして、行動切換モジュール９１は、当該決定結果に基づく行動コマンドをミドル・ウェア・レイヤ５０の出力系８０におけるトラッキング用信号処理モジュール７３に送出する。
【０１４２】
トラッキング用信号処理モジュール７３は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動を行うために対応するアクチュエータ２８１〜２８ｎに与えるべきサーボ指令値を生成し、このデータをロボティック・サーバ・オブジェクト４２のバーチャル・ロボット４３及び信号処理回路１４（図２）を順次介して対応するアクチュエータ２８１〜２８ｎに順次送出する。
【０１４３】
この結果、例えば、差分画像データから動体が消失した場合には、行動モデルライブラリ９０によって、直前に検出された重心位置を向く、或いは近付く行動が決定され、行動切換モジュール９１によって、その行動を行わせるための行動コマンドが生成される。また、所定の時間間隔毎に動体をトラッキングする場合には、行動モデルライブラリ９０によって、その時間間隔毎に検出された重心位置を向く、或いは近付く行動が決定され、行動切換モジュール９１によって、その行動を行わせるための行動コマンドが生成される。
【０１４４】
そして、この行動コマンドが、上述した図４に示す首制御コマンド生成部２２等のトラッキング用信号処理モジュール７３に与えられると、当該トラッキング用信号処理モジュール７３は、その行動コマンドに基づくサーボ指令値を出力部を介して対応するアクチュエータ２８１〜２８ｎに送出し、これによりロボット装置１が動体に興味を示して頭部をその方向に向けたり、動体の方向に近付いたりする行動が発現される。
【０１４５】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。上述の実施の形態においては、人物の顔のトラッキングについて説明したが、他の対象物に対しても広く適用できる。例えば、上述した如く、ボール等の例では、ボールの色、形状（形及び大きさ）、模様等を認識する認識部を備え、いずれかが認識できていればトラッキングを継続する、いずれも認識できない時間が長く続けばトラッキングを中止する等の方法をとることができる。
【０１４６】
（３）制御プログラムのソフトウェア構成
以上のようなロボット装置１は、自己及び周囲の状況や、使用者からの指示及び働きかけに応じて自律的に行動し得るようになされている。次に、このようなロボット装置の制御プログラムのソフトウェア構成について詳細に説明する。図２１は、本実施の形態におけるロボット装置のソフトウェア構成を示すブロック図である。図２１において、デバイス・ドライバ・レイヤ４０は、この制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット４１から構成されている。この場合、各デバイス・ドライバは、ＣＣＤカメラ等の画像入力装置２５１（図３）やタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【０１４７】
また、ロボティック・サーバ・オブジェクト４２は、デバイス・ドライバ・レイヤ４０の最下位層に位置し、例えば上述の各種センサやアクチュエータ等のハードウェアにアクセスするためのインターフェイスを提供するソフトウェア群でなるバーチャル・ロボット４３と、電源の切換えなどを管理するソフトウェア群でなるパワーマネージャ４４と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ４５と、ロボット装置１の機構を管理するソフトウェア群でなるデザインド・ロボット４６とから構成されている。
【０１４８】
マネージャ・オブジェクト４７は、オブジェクト・マネージャ４８及びサービス・マネージャ４９から構成されている。オブジェクト・マネージャ４８は、ロボティック・サーバ・オブジェクト４２、ミドル・ウェア・レイヤ５０、及びアプリケーション・レイヤ５１に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ４９は、例えばメモリカードに格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【０１４９】
ミドル・ウェア・レイヤ５０は、ロボティック・サーバ・オブジェクト４２の上位層に位置し、画像処理や音声処理などのこのロボット装置１の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ５１は、ミドル・ウェア・レイヤ５０の上位層に位置し、当該ミドル・ウェア・レイヤ５０を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置１の行動を決定するためのソフトウェア群から構成されている。
【０１５０】
なお、ミドル・ウェア・レイヤ５０及びアプリケーション・レイヤ５１の具体なソフトウェア構成をそれぞれ図２２に示す。
【０１５１】
ミドル・ウェア・レイヤ５０は、図２２に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、接触検出用、操作入力検出用、動き検出用及び色認識用の各信号処理モジュール６０〜６９並びに入力セマンティクスコンバータモジュール７０などを有する認識系７１と、出力セマンティクスコンバータモジュール７９並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、ＬＥＤ点灯用及び音再生用の各信号処理モジュール７２〜７８などを有する出力系８０とから構成されている。
【０１５２】
認識系７１の各信号処理モジュール６０〜６９は、ロボティック・サーバ・オブジェクト４２のバーチャル・ロボット４３によりＤＲＡＭから読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール７０に与える。ここで、例えば、バーチャル・ロボット４３は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
【０１５３】
入力セマンティクスコンバータモジュール７０は、これら各信号処理モジュール６０〜６９から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ドミソの音階が聞こえた」、「障害物を検出した」、「転倒を検出した」、「叱られた」、「誉められた」、「動く物体を検出した」又は「ボールを検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ５１（図２１）に出力する。
【０１５４】
アプリケーション・レイヤ５ｌは、図２３に示すように、行動モデルライブラリ９０、行動切換モジュール９１、学習モジュール９２、感情モデル９３及び本能モデル９４の５つのモジュールから構成されている。
【０１５５】
行動モデルライブラリ９０には、図２４に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択されたいくつかの条件項目にそれぞれ対応させて、それぞれ独立した行動モデル９０１〜９０ｎが設けられている。
【０１５６】
そして、これら行動モデル９０１〜９０ｎは、それぞれ入力セマンティクスコンバータモジュール７０から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述する感情モデル９３に保持されている対応する情動のパラメータ値や、本能モデル９４に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール９１に出力する。
【０１５７】
なお、この具体例の場合、各行動モデル９０１〜９０ｎは、次の行動を決定する手法として、図２５に示すような１つのノード（状態）ＮＯＤＥ０〜ＮＯＤＥｎから他のどのノードＮＯＤＥ０〜ＮＯＤＥｎに遷移するかを各ノードＮＯＤＥ０〜ＮＯＤＥｎに間を接続するアークＡＲＣ１〜ＡＲＣｎに対してそれぞれ設定された遷移確率Ｐ１〜Ｐｎに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
【０１５８】
具体的に、各行動モデル９０１〜９０ｎは、それぞれ自己の行動モデル９０１〜９０ｎを形成するノードＮＯＤＥ０〜ＮＯＤＥｎにそれぞれ対応させて、これらノードＮＯＤＥ０〜ＮＯＤＥｎごとに図２６に示すような状態遷移表２７０を有している。
【０１５９】
この状態遷移表２７０では、そのノードＮＯＤＥ０〜ＮＯＤＥｎにおいて遷移条件とする入力イベント（認識結果）が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
【０１６０】
したがって、図２６の状態遷移表２７０で表されるノードＮＯＤＥ１００では、「ボールを検出（ＢＡＬＬ）」という認識結果が与えられた場合に、当該認識結果と共に与えられるそのボールの「大きさ（ＳＩＺＥ）」が「０から１０００」の範囲であることや、「障害物を検出（ＯＢＳＴＡＣＬＥ）」という認識結果が与えられた場合に、当該認識結果と共に与えられるその障害物までの「距離（ＤＩＳＴＡＮＣＥ）」が「０から１００」の範囲であることが他のノードに遷移するための条件となっている。
【０１６１】
また、このノードＮＯＤＥ１００では、認識結果の入力がない場合においても、行動モデル９０１〜９０ｎが周期的に参照する感情モデル９３及び本能モデル９４にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル９３に保持された「喜び（ＪＯＹ）」、「驚き（ＳＵＲＰＲＩＳＥ）」若しくは「悲しみ（ＳＵＤＮＥＳＳ）」のいずれかのパラメータ値が「５０から１００」の範囲であるときには他のノードに遷移することができるようになっている。
【０１６２】
また、状態遷移表１００では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードＮＯＤＥ０〜ＮＯＤＥｎから遷移できるノード名が列記されていると共に、「入力イベント名」、「データ値」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードＮＯＤＥ０〜ＮＯＤＥｎへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードＮＯＤＥ０〜ＮＯＤＥｎに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は１００［％］となっている。
【０１６３】
したがって、図２６の状態遷移表１００で表されるノードＮＯＤＥ１００では、例えば「ボールを検出（ＢＡＬＬ）」し、そのボールの「ＳＩＺＥ（大きさ）」が「０から１０００」の範囲であるという認識結果が与えられた場合には、「３０［％］」の確率で「ノードＮＯＤＥ１２０（ｎｏｄｅ１２０）」に遷移でき、そのとき「ＡＣＴＩＯＮ１」の行動が出力されることとなる。
【０１６４】
各行動モデル９０１〜９０ｎは、それぞれこのような状態遷移表２７０として記述されたノードＮＯＤＥ０〜ＮＯＤＥｎがいくつも繋がるようにして構成されており、入力セマンティクスコンバータモジュール７０から認識結果が与えられたときなどに、対応するノードＮＯＤＥ０〜ＮＯＤＥｎの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール９１に出力するようになされている。
【０１６５】
図２４に示す行動切換モジュール９１は、行動モデルライブラリ９０の各行動モデル９０１〜９０ｎからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデル９０１〜９０ｎから出力された行動を選択し、当該行動を実行すべき旨のコマンド（以下、これを行動コマンドという。）をミドル・ウェア・レイヤ５０の出力セマンティクスコンバータモジュール７９に送出する。なお、この実施の形態においては、図２４において下側に表記された行動モデル９０１〜９０ｎほど優先順位が高く設定されている。
【０１６６】
また、行動切換モジュール９１は、行動完了後に出力セマンティクスコンバータモジュール７９から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール９２、感情モデル９３及び本能モデル９４に通知する。
【０１６７】
一方、学習モジュール９２は、入力セマンティクスコンバータモジュール７０から与えられる認識結果のうち、「叱られた」や「誉められた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。そして、学習モジュール９２は、この認識結果及び行動切換モジュール９１からの通知に基づいて、「叱られた」ときにはその行動の発現確率を低下させ、「誉められた」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ９０における対応する行動モデル９０１〜９０ｎの対応する遷移確率を変更する。
【０１６８】
他方、感情モデル９３は、「喜び（ＪＯＹ）」、「悲しみ（ＳＡＤＮＥＳＳ）」、「怒り（ＡＮＧＥＲ）」、「驚き（ＳＵＲＰＲＩＳＥ）」、「嫌悪（ＤＩＳＧＵＳＴ）」及び「恐れ（ＦＥＡＲ）」の合計６つの情動について、各情動ごとにその情動の強さを表すパラメータを保持している。そして、感情モデル９３は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール７０から与えられる「叱られた」及び「誉められた」などの特定の認識結果と、経過時間及び行動切換モジュール９１からの通知などに基づいて周期的に更新する。
【０１６９】
具体的には、感情モデル９３は、入力セマンティクスコンバータモジュール７０から与えられる認識結果と、そのときのロボット装置１の行動と、前回更新してからの経過時間などに基づいて所定の演算式により算出されるそのときのその情動の変動量を△Ｅ［ｔ］、現在のその情動のパラメータ値をＥ［ｔ］、その情動の感度を表す係数をｋｅとして、下記の式（８）によって次の周期におけるその情動のパラメータ値Ｅ［ｔ＋１］を算出し、これを現在のその情動のパラメータ値Ｅ［ｔ］と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル７３は、これと同様にして全ての情動のパラメータ値を更新する。
【０１７０】
【数６】
2004283959.tif 000008
【０１７１】
なお、各認識結果や出力セマンティクスコンバータモジュール７９からの通知が各情動のパラメータ値の変動量△Ｅ［ｔ］にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△Ｅ［ｔ］に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△Ｅ［ｔ］に大きな影響を与えるようになっている。
【０１７２】
ここで、出力セマンティクスコンバータモジュール７９からの通知とは、いわゆる行動のフィードバック情報（行動完了情報）であり、行動の出現結果の情報であり、感情モデル９３は、このような情報によっても感情を変化させる。これは、例えば、「吠える」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール７９からの通知は、上述した学習モジュール９２にも入力されており、学習モジュール９２は、その通知に基づいて行動モデル９０１〜９０ｎの対応する遷移確率を変更する。
【０１７３】
なお、行動結果のフィードバックは、行動切換モジュール９１の出力（感情が付加された行動）によりなされるものであってもよい。
【０１７４】
一方、本能モデル９４は、「運動欲（ｅｘｅｒｃｉｓｅ）」、「愛情欲（ａｆｆｅｃｔｉｏｎ）」、「食欲（ａｐｐｅｔｉｔｅ）」及び「好奇心（ｃｕｒｉｏｓｉｔｙ）」の互いに独立した４つの欲求について、これら欲求ごとにその欲求の強さを表すパラメータを保持している。そして、本能モデル９４は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール７０から与えられる認識結果や、経過時間及び行動切換モジュール９１からの通知などに基づいて周期的に更新する。
【０１７５】
具体的には、本能モデル９４は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール７９からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔＩ［ｋ］、現在のその欲求のパラメータ値をＩ［ｋ］、その欲求の感度を表す係数ｋｉとして、所定周期で下記の式（９）を用いて次の周期におけるその欲求のパラメータ値Ｉ［ｋ＋１］を算出し、この演算結果を現在のその欲求のパラメータ値Ｉ［ｋ］と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル９４は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
【０１７６】
【数７】
2004283959.tif 000009
【０１７７】
なお、認識結果及び出力セマンティクスコンバータモジュール７９からの通知などが各欲求のパラメータ値の変動量△Ｉ［ｋ］にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール７９からの通知は、「疲れ」のパラメータ値の変動量△Ｉ［ｋ］に大きな影響を与えるようになっている。
【０１７８】
なお、本実施の形態においては、各情動及び各欲求（本能）のパラメータ値がそれぞれ０から１００までの範囲で変動するように規制されており、また係数ｋｅ、ｋｉの値も各情動及び各欲求毎に個別に設定されている。
【０１７９】
一方、図２２に示すように、ミドル・ウェア・レイヤ５０の出力セマンティクスコンバータモジュール７９は、上述のようにしてアプリケーション・レイヤ５１の行動切換モジュール９１から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング（ボールを追いかける）」といった抽象的な行動コマンドを出力系８０の対応する信号処理モジュール７２〜７８に与える。
【０１８０】
そしてこれら信号処理モジュール７２〜７８は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動を行うために対応するアクチュエータに与えるべきサーボ指令値や、スピーカから出力する音の音声データ及び／又は発光部のＬＥＤに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト４２のバーチャル・ロボット４３を順次介して対応するアクチュエータ、スピーカ又は発光部等に順次送出する。
【０１８１】
このようにしてロボット装置１においては、制御プログラムに基づいて、自己（内部）及び周囲（外部）の状況や、使用者からの指示及び働きかけに応じた自律的な行動を行うことができるようになされている。
【０１８２】
【発明の効果】
以上詳細に説明したように本発明に係るロボット装置は、少なくとも機体の一部を使用して対象物をトラッキングするロボット装置において、異なる種類のものを認識する複数の認識手段及び／又は同一種類であってその認識レベルに応じて２以上に階層化された複数の認識手段と、上記複数の認識手段からの認識結果を統合する認識統合手段と、上記対象物をトラッキングする動作を生成する動作生成手段と上記認識統合結果に基づき上記動作生成手段を制御するトラッキング制御手段とを有し、上記トラッキング制御手段は、上記複数の認識手段のうち所定の認識手段の認識結果に基づき上記対象物のトラッキングを開始し、該所定の認識手段の認識結果が得られなくなった場合に該所定の認識手段とは異なる他の認識手段の認識結果に基づき上記トラッキングを継続するよう制御するので、所定の認識手段の認識結果に基づきトラッキングを開始した場合、該所定の認識手段による認識が失敗しても他の認識手段による認識結果に基づきトラッキングを継続することができ、割り込み動作等によりトラッキングが中断された場合や、照明条件の変化等に対する認識手段の認識の不安定さに対しても、複数の認識手段を複合的に組み合わせて使用することで極めてロバストなトラッキングを行うことができる。
【図面の簡単な説明】
【図１】本発明の実施の形態におけるロボット装置の外観構成を示す斜視図である。
【図２】同ロボット装置の自由度構成モデルを模式的に示す図である。
【図３】同ロボット装置の制御システム構成を模式的に示す図である。
【図４】本発明の実施の形態のロボット装置の制御システムのうち、トラッキングシステムを構成する部分を模式的に示すブロック図である。
【図５】同トラッキングシステムにおける予測部の機能を説明するためのブロック図である。
【図６】同トラッキングシステムにおける異なる認識レベルの階層化された認識部の機能を説明するためのブロック図である。
【図７】同トラッキングシステムにおける異なる種類の認識部の機能を説明するためのブロック図である。
【図８】同トラッキングシステムにおける割り込み行動が生じた際の予測部の機能を説明するためのブロック図である。
【図９】同トラッキングシステムにおけるトラッキング終了機能を説明するためのブロック図である。
【図１０】同トラッキングシステムの音声方向認識部の具体例を示す図であって、ロボット装置の振り向き動作を説明する図である。
【図１１】同トラッキングシステムの音声方向認識部の具体例を示す図であって、ロボット装置の振り向き動作の一例を説明するフローチャートである。
【図１２】同トラッキングシステムの音声方向認識部の具体例を示す図であって、音源方向の推定手法を説明する図である。
【図１３】同トラッキングシステムの音声方向認識部の具体例を示す図であってｍロボット装置の振り向き動作を説明する図であり、（ａ）は、振り向く前の状態を示し、（ｂ）は、振り向き後の状態を示し、（ｃ）は、対象オブジェクトに正対した図を示す。
【図１４】同トラッキングシステムの音声方向認識部の具体例を示す図であって、ロボット装置の振り向き動作の他の例を説明するフローチャートである。
【図１５】同トラッキングシステムの音声方向認識部の具体例を示す図であって、ロボット装置の振り向き動作の他の例を説明する図であり、（ａ）は、振り向く前の状態を示し、（ｂ）は、振り向き後の状態を示す。
【図１６】同トラッキングシステムの動体検出方法の具体例を示す図であって、差分画像データから動体が消える例を説明する図である。
【図１７】同トラッキングシステムの動体検出方法の具体例を示す図であって、差分画像データから動体が消失した方向を向く場合の手順を説明するフローチャートである。
【図１８】同トラッキングシステムの動体検出方法の具体例を示す図であって、動体をトラッキングする場合の手順を説明するフローチャートである。
【図１９】同トラッキングシステムの動体検出方法の具体例を示す図であって、ロボット装置の動体検出に関連する部分のソフトウェア構成を示すブロック図である。
【図２０】同トラッキングシステムの動体検出方法の具体例を示す図であって、差分画像データの重心位置を求める例を説明する図である。
【図２１】本発明の実施の形態におけるロボット装置のソフトウェア構成を示すブロック図である。
【図２２】本発明の実施の形態におけるロボット装置のソフトウェア構成におけるミドル・ウェア・レイヤの構成を示すブロック図である。
【図２３】本発明の実施の形態におけるロボット装置のソフトウェア構成におけるアプリケーション・レイヤの構成を示すブロック図である。
【図２４】本発明の実施の形態におけるアプリケーション・レイヤの行動モデルライブラリの構成を示すブロック図である。
【図２５】本発明の実施の形態におけるロボット装置の行動決定のための情報となる有限確率オートマトンを説明する図である。
【図２６】有限確率オートマトンの各ノードに用意された状態遷移表を示す図である。
【符号の説明】
１  ロボット装置、１０  トラッキングシステム、１１  肌色認識部、１２  顔検認識部、１３  個人認識部、１５  認識部、２１  認識統合部、２２  首制御コマンド生成部、２３  出力部、３１  予測部、３２  行動、３３  タイマ
４２  ロボティック・サーバ・オブジェクト、４３  バーチャル・ロボット、５０  ミドル・ウェア・レイヤ、５１  アプリケーション・レイヤ、６８  動き検出用信号処理モジュール、７０  入力セマンティクスコンバータモジュール、７１  認識系、７３  トラッキング用信号処理モジュール、７９  出力セマンティクスコンバータモジュール、８０  出力系、８３  感情モデル、８４  本能モデル、９０  行動モデルライブラリ、９１  行動切換モジュール、１１０  差分画像生成モジュール、１１１  重心計算モジュール、２００  思考制御モジュール、２５１  画像入力装置、２５２  音声入力装置、２５３  音声出力装置、３００  運動制御モジュール、３５０  アクチュエータ
【図１】
2004283959.tif 000010
【図２】
2004283959.tif 000011
【図３】
2004283959.tif 000012
【図４】
2004283959.tif 000013
【図５】
2004283959.tif 000014
【図６】
2004283959.tif 000015
【図７】
2004283959.tif 000016
【図８】
2004283959.tif 000017
【図９】
2004283959.tif 000018
【図１０】
2004283959.tif 000019
【図１１】
2004283959.tif 000020
【図１２】
2004283959.tif 000021
【図１３】
2004283959.tif 000022
【図１４】
2004283959.tif 000023
【図１５】
2004283959.tif 000024
【図１６】
2004283959.tif 000025
【図１７】
2004283959.tif 000026
【図１８】
2004283959.tif 000027
【図１９】
2004283959.tif 000028
【図２０】
2004283959.tif 000029
【図２１】
2004283959.tif 000030
【図２２】
2004283959.tif 000031
【図２３】
2004283959.tif 000032
【図２４】
2004283959.tif 000033
【図２５】
2004283959.tif 000034
【図２６】
2004283959.tif 000035