JP4193098B2 - トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 - Google Patents
トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 Download PDFInfo
- Publication number
- JP4193098B2 JP4193098B2 JP2002211408A JP2002211408A JP4193098B2 JP 4193098 B2 JP4193098 B2 JP 4193098B2 JP 2002211408 A JP2002211408 A JP 2002211408A JP 2002211408 A JP2002211408 A JP 2002211408A JP 4193098 B2 JP4193098 B2 JP 4193098B2
- Authority
- JP
- Japan
- Prior art keywords
- tracking
- processing
- image data
- target
- specified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Manipulator (AREA)
- Image Processing (AREA)
- Closed-Circuit Television Systems (AREA)
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明はトラッキング装置、トラッキング装置のトラッキング方法及びロボット装置に関し、例えばエンターテインメントロボットに適用して好適なものである。
【0002】
【従来の技術】
近年、エンターテインメントロボットの開発及び商品化が盛んに行われている。そして、このようなエンターテインメントロボットとして、CCDカメラ、マイクロホン及びタッチセンサ等の各種センサが搭載され、これらセンサの出力に基づいて外部環境やユーザからの働きかけの有無を判断し、当該判断結果に基づいて自律的に行動し得るようになされたものが本願出願人により商品化されている。
【0003】
【発明が解決しようとする課題】
ところで、かかるエンターテインメントロボットのように、外部環境等に応じて行動するロボットにおいて、最も多くの情報を与える外部センサは、通常、CCDカメラ等の視覚センサであり、中でも色情報の利用は、その低い計算コストからこれまでも盛んに行われてきた。
【0004】
実際上、エンターテインメントロボットにおいては、インタラクションのためにユーザ(人)を発見できることが決定的に重要であり、そのようなタスクにおけるキューとして「色」が広く利用されている。これは、かかるタスクのキューとして「視差」や「テクスチャ(模様、構造)」等の情報を利用する場合に比べて計算コスト的に有利であり、また例えば「動き」情報に比べてノイズが少なく安定した処理を行えるという理由によるものである。
【0005】
しかし、その一方で、色情報には対象依存の面が強く、例えば動き情報を用いた場合の「一定以上の速さをもつ物体を抽出する」などのような、対象に依存しない指定が難しい。このため色情報を利用したユーザの発見及び追従(トラッキング)のタスクでは、動作環境、特に照明条件の影響を非常に受け易いという欠点を抱えていた。
【0006】
かかる欠点を補うため、環境の変化を補償できるだけの処理を組み込むことも考えられるが、この方法によると、処理速度が犠牲となる問題があり、また、そもそも太陽光から室内光までの幅広い照明環境のいずれにおいても特定対象を確実にトラッキングするためには「色の恒常性」という未だに解かれていない問題に対処する技術が必要となる。
【0007】
このため現状では、ある特定範囲の環境条件でのみ動作を保証するか、逆に精度を犠牲にして広い範囲の条件で概ね動作するようにコントロールするのが精一杯であった。
【0008】
またカラートラッキングは、処理コストが低いとはいえ、同時に多数のターゲットを追跡しようとした場合、トータルでの処理コストが線形に増加し、実時間内に処理が完了しないことも十分あり得る。
【0009】
このため従来は、同時にトラッキングできるターゲット数を制限するなどの方法によって実時間性を保ってきたが、この視覚処理モジュール外の処理負荷によってトラッキングの性能が左右される危険があり、根本的な解決方法とは言い得ない問題があった。
【0010】
本発明は以上の点を考慮してなされたもので、実時間性を保証しつつ複数のトラッキング対象を確実にトラッキングし得るトラッキング装置、トラッキング装置のトラッキング方法及びロボット装置を提案しようとするものである。
【0011】
【課題を解決するための手段】
かかる課題を解決するため本発明においては、撮像手段から供給される第1の画像データに基づき画像内に存在するトラッキング対象を当該画像内において追従するトラッキング処理を行なうトラッキング装置において、第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成手段と、第1の画像データに存在するトラッキング対象のうち、指定されたトラッキング対象については、指定された処理頻度で行う第1のループによるトラッキング処理を行い、指定されていないトラッキング対象については、第1のループとは当該処理頻度が異なる第2のループによるトラッキング処理を行うトラッキング処理手段とを具え、トラッキング処理手段は、指定されたトラッキング対象については、指定された解像度を有する第2の画像データを用い、指定された処理頻度でトラッキング処理を実行するようにした。
【0012】
この結果このトラッキング装置では、指定されたトラッキング対象については実時間を保証した精度の良いトラッキングを行うことができる。
【0013】
また本発明においては、トラッキング装置のトラッキング方法において、トラッキング装置は、撮像手段から供給される第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成ステップと、第1の画像データに存在するトラッキング対象のうち、指定されたトラッキング対象については、指定された処理頻度で行う第1のループによるトラッキング処理を行い、指定されていないトラッキング対象については、第1のループとは当該処理頻度が異なる第2のループによるトラッキング処理を行うトラッキング処理ステップとを具え、トラッキング処理ステップは、指定されたトラッキング対象については、指定された上記解像度を有する第2の画像データを用い、指定された処理頻度でトラッキング処理を実行するようにした。
【0014】
この結果このトラッキング方法によれば、指定されたトラッキング対象については実時間を保証した精度の良いトラッキングを行うことができる。
【0015】
さらに本発明においては、ロボット装置において、撮像手段から供給される第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成手段と、第1の画像データに存在するトラッキング対象のうち、指定されたトラッキング対象については、指定された処理頻度で行う第1のループによるトラッキング処理を行い、指定されていないトラッキング対象については、第1のループとは当該処理頻度が異なる第2のループによるトラッキング処理を行うトラッキング処理手段とを具え、トラッキング処理手段は、指定されたトラッキング対象については、指定された解像度を有する第2の画像データを用い、指定された上記処理頻度でトラッキング処理を実行するようにした。
【0016】
この結果このロボット装置では、指定されたトラッキング対象については実時間を保証した精度の良いトラッキングを行うことができる。
【0017】
【発明の実施の形態】
以下図面について、本発明の一実施の形態を詳述する。
【0018】
(1)本実施の形態によるロボットの構成
(1−1)ロボットの構成
図1において、1は全体として本実施の形態によるロボットを示し、胴体部ユニット2の前後左右にそれぞれ脚部ユニット3A〜3Dが連結されると共に、胴体部ユニット2の前端部及び後端部にそれぞれ頭部ユニット4及び尻尾部ユニット5が連結されることにより構成されている。
【0019】
胴体部ユニット2には、図2に示すように、CPU(Central Processing Unit)10、DRAM(Dynamic Random Access Memory)11、フラッシュROM(Read Only Memory)12、PC(Personal Computer)カードインターフェース13及び信号処理回路14が内部バス15を介して相互に接続されることにより形成されたコントロール部16と、このロボット1の動力源としてのバッテリ17とが収納されている。また胴体部ユニット2には、ロボット1の向きや動きの加速度を検出するための角加速度センサ18及び加速度センサ19なども収納されている。
【0020】
また頭部ユニット4には、このロボット1の「耳」に相当するマイクロホン16、「目」に相当するCCD(Charge Coupled Device )カメラ17、距離センサ18、フェイスタッチセンサ19及びヘッドタッチセンサ20などの各種センサと、「口」に相当するスピーカ21となどがそれぞれ所定位置に配置されると共に、頂上部にリトラクタブルヘッドライト22が飛出し及び収納自在に配置され、かつ中段部の周囲に沿って一定間隔で複数のLED23が配設されている。
【0021】
さらに各脚部ユニット3A〜3Dの膝関節や、各脚部ユニット3A〜3D及び胴体部ユニット2をそれぞれ連結する各肩関節、頭部ユニット4及び胴体部ユニット2を連結する首関節、並びにリトラクタブルヘッドライト22の開閉駆動部(図示せず)などには、それぞれ自由度数分や必要数のアクチュエータ241〜24n及びこれらアクチュエータ241〜24nとそれぞれ対をなすポテンショメータ251〜25nが配設されている。
【0022】
そしてこれら角速度センサ18、加速度センサ19、タッチセンサ21、距離センサ22、マイクロホン23、スピーカ24、LED、各アクチュエータ25(251、252、253……)及び各ポテンショメータ26(261、262、263……)は、それぞれハブ27(271〜27n)を介してコントロール部16の信号処理回路14にツリー状に接続されている。またCCDカメラ20及びバッテリ17は、それぞれ信号処理回路14と直接接続されている。
【0023】
このとき信号処理回路14は、角速度センサ18、加速度センサ19、タッチセンサ21、距離センサ22及び各ポテンショメータ26(261、262、263……)等の各種センサからそれぞれハブ27(271〜27n)を介して供給されるセンサデータや、CCDカメラ20から供給される画像データ及びマイクロホン23から与えられる音声データを順次取り込み、これらをそれぞれ内部バス15を介してDRAM11内の所定位置に順次格納する。また信号処理回路14は、バッテリ17から供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM11内の所定位置に格納する。
【0024】
そしてこのようにDRAM11に格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、この後CPU10がこのロボット1の動作制御を行う際に利用される。
【0025】
実際上CPU10は、ロボット1の電源が投入された初期時、胴体部ユニット2の図示しないPCカードスロットに装填されたメモリカード28又はフラッシュROM12に格納された制御プログラムをPCカードインターフェース13を介して直接読み出し、これをDRAM11に展開する。
【0026】
またCPU10は、この後上述のように信号処理回路14よりDRAM11に順次格納される各種センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、ユーザからの指示及び働きかけの有無などを判断する。
【0027】
さらにCPU10は、この判断結果及びDRAM11に展開した制御プログラムに基づいて続く行動を決定すると共に、当該決定結果に応じた第1の駆動信号を生成してこれを必要なアクチュエータ25(251、252、253……)に送出することにより、頭部ユニット4を上下左右に振らせたり、尻尾部ユニット5の尻尾5Aを動かせたり、各脚部ユニット3A〜3Dを駆動させて歩行させるなどの行動を行わせる。
【0028】
またこの際CPU10は、必要に応じて音声信号や第2の駆動信号を生成し、これらを信号処理回路14を介してスピーカ24や「目」のLEDに与えることにより、当該音声信号に基づく音声を外部に出力させたり、第2の駆動信号に基づいて当該LEDを所定パターンで点滅させる。
【0029】
このようにしてこのロボット1においては、自己及び周囲の状況や、ユーザからの指示及び働きかけ等に応じて自律的に行動し得るようになされている。
【0030】
なお信号処理回路14の具体構成を図3に示す。この図3からも明らかなように、信号処理回路14は、DMA(Direct Memory Access)コントローラ30、DSP(Digital Signal Processor)31、ペリフェラルインターフェース32、タイマ33、FBK/CDT(Filter Bank/Color Detection)34、IPE(Inner Product Engine)35、シリアルバスホストコントローラ36及びシリアルバス37がバス38及び当該バス38の使用権の調停を行うバスアービタ39を順次介してバス40に接続されると共に、当該バス40がそれぞれDRAMインターフェース41、ホストインターフェース42及びROMインターフェース43を介してDRAM11(図2)、CPU10(図2)及びフラッシュROM12(図2)と接続され、かつペリフェラルインターフェース32にパラレルポート44、バッテリマネージャ45及びシリアルポート46が接続されることにより構成されている。
【0031】
この場合図2について上述した角速度センサ18、加速度センサ19、タッチセンサ21、距離センサ22、マイクロホン23、スピーカ24、各アクチュエータ25(251、252、253……)及び各ポテンショメータ26(261、262、263……)等のデバイスは、それぞれハブ27(271〜27n)を介してシリアルホストコントローラ36と接続されると共に、CCDカメラ20(図2)はFBK/CDT34と接続され、かつバッテリ17(図2)はバッテリマネージャ45と接続されている。
【0032】
そしてシリアルホストコントローラ36は、接続された各デバイスのうち、角速度センサ18、加速度センサ19、タッチセンサ21、距離センサ22及び各ポテンショメータ26(261、262、263……)等の各センサからそれぞれ与えられるセンサデータを順次取り込み、データの転送を司るバスマスタとして機能するDMAコントローラ30の制御のもとに、これらセンサデータをバス38、バスアービタ39、バス40及びDRAMインターフェース41を順次介してDRAM11に与えて記憶させる。
【0033】
またシリアルホストコントローラ36は、マイクロホン23から与えられる音声データをDSP31に送出すると共に、DSP31は、この音声データに対して所定の信号処理を施し、その処理結果でなる音声データを、DMAコントローラ30の制御のもとに、バス38、バスアービタ39、バス40及びDRAMインターフェース41を順次介してDRAM11に転送し、これを当該DRAM11内の所定の記憶領域に格納する。
【0034】
さらにFBK/CDT34は、CCDカメラ20から供給される画像データに基づいて、解像度の異なる複数の画像データを生成すると共に、これら画像データに基づく各画像について予め設定された色の抽出処理を行い、当該処理結果及び各解像度の画像データを、DMAコントローラ30の制御のもとに、バス38、バスアービタ39、バス40及びDRAMインターフェース41を順次介してDRAM11(図2)に転送し、これを後述のように当該DRAM11内の指定された記憶領域に格納する。
【0035】
さらにバッテリマネージャ45は、バッテリ17から通知されるエネルギ残量を表すバッテリ残量データを、DMAコントローラ30の制御のもとに、ペリフェラルインターフェース32、バス38、バスアービタ39、バス40及びDRAMインターフェース41を順次介してDRAM11に転送し、これを当該DRAM11内の所定の記憶領域に格納する。
【0036】
一方、信号処理回路14は、上述のようにCPU10(図2)からバス15(図2)を介して与えられる各アクチュエータ25(251、252、253……)を駆動するための第1の駆動信号や、音声信号及びLEDを駆動するための第2の駆動信号をホストインターフェース42を介して入力する。
【0037】
そして信号処理回路14は、これらをバス40、バスアービタ39、バス38及びシリアルバスホストコントローラ37並びに対応するハブ27(271〜27n)(図2)を順次介して対応するアクチュエータ25(251、252、253……)(図2)や、スピーカ24(図2)又はLEDに送出する。
【0038】
このようにして信号処理回路14においては、各センサ、CCDカメラ20、マイクロホン23、スピーカ24、各アクチュエータ25(251、252、253……)などの各デバイスと、CPU10との間において、CPU10がロボット1の行動を制御するために必要な各種信号処理を行い得るようになされている。
【0039】
(1−2)制御プログラムのソフトウェア構成
次に、このロボット1における制御プログラムのソフトウェア構成について説明する。
【0040】
図4は、ロボット1における上述の制御プログラムのソフトウェア構成を示すものである。この図4において、デバイス・ドライバ・レイヤ50は、この制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット51から構成されている。この場合各デバイス・ドライバは、CCDカメラ20(図2)やタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【0041】
またロボティック・サーバ・オブジェクト52は、デバイス・ドライバ・レイヤ50の上位層に位置し、例えば上述の各種センサやアクチュエータ25(251〜25n等のハードウェアにアクセスするためのインターフェースを提供するソフトウェア群でなるバーチャル・ロボット53と、電源の切換えなどを管理するソフトウェア群でなるパワーマネージャ54と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ55と、ロボット1の機構を管理するソフトウェア群でなるデザインド・ロボット56とから構成されている。
【0042】
マネージャ・オブジェクト57は、オブジェクト・マネージャ58及びサービス・マネージャ59から構成されている。この場合オブジェクト・マネージャ58は、ロボティック・サーバ・オブジェクト52、ミドル・ウェア・レイヤ60、及びアプリケーション・レイヤ61に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ59は、メモリカード28(図2)に格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【0043】
ミドル・ウェア・レイヤ60は、ロボティック・サーバ・オブジェクト52の上位層に位置し、画像処理や音声処理などのこのロボット1の基本的な機能を提供するソフトウェア群から構成されている。またアプリケーション・レイヤ61は、ミドル・ウェア・レイヤ60の上位層に位置し、当該ミドル・ウェア・レイヤ40を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット1の行動を決定するためのソフトウェア群から構成されている。
【0044】
なおミドル・ウェア・レイヤ60及びアプリケーション・レイヤ61の具体なソフトウェア構成をそれぞれ図5及び図6に示す。
【0045】
ミドル・ウェア・レイヤ60においては、図5からも明らかなように、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール70〜75並びに入力セマンティクスコンバータモジュール76などを有する認識系77と、出力セマンティクスコンバータモジュール77並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰、LED点灯用及び音再生用の各信号処理モジュール78〜84などを有する出力系85とから構成されている。
【0046】
この場合認識系77の各信号処理モジュール70〜75は、ロボティック・サーバ・オブジェクト52のバーチャル・ロボット53によりDRAM11(図2)から読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール76に与える。
【0047】
入力セマンティクスコンバータモジュール76は、これら各信号処理モジュール70〜75から与えられる処理結果に基づいて、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、ユーザからの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ61(図4)に出力する。
【0048】
アプリケーション・レイヤ61においては、図6に示すように、行動モデルライブラリ90、行動切換えモジュール91、学習モジュール92、感情モデル93及び本能モデル94の5つのモジュールから構成されている。
【0049】
この場合行動モデルライブラリ90には、図7に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する場合」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択されたいくつかの条件項目にそれぞれ対応させて、それぞれ独立した行動モデル901〜90nが設けられている。
【0050】
そしてこれら行動モデル901〜90nは、それぞれ入力セマンティクスコンバータモジュール76から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル93に保持されている対応する情動のパラメータ値や、本能モデル94に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換えモジュール91に出力する。
【0051】
なおこの実施の形態の場合、各行動モデル901〜90nは、次の行動を決定する手法として、図8に示すような1つのノード(状態)NODE0〜NODEnから他のどのノードNODE0〜NODEnに遷移するかを各ノードNODE0〜NODEn間を接続するアークARC1〜ARCn + 1に対してそれぞれ設定された遷移確率P1〜Pn + 1に基づいて確率的に決定する確率オートマトンと呼ばれるアルゴリズムを用いる。
【0052】
具体的に、各行動モデル901〜90nは、それぞれ自己の行動モデル901〜90nを形成する各ノードNODE0〜NODEnにそれぞれ対応させて、これらノードNODE0〜NODEnごとの図9に示すような状態遷移表100を有している。
【0053】
この状態遷移表100では、そのノードNODE0〜NODEnにおいて遷移条件とする入力イベント(認識結果)が「入力イベント名」の行に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の行における対応する列に記述されている。
【0054】
従って図9の状態遷移表100で表されるノードNODE100では、「ボールを検出(BALL)」という認識結果が与えられた場合に、当該認識結果と共に与えられるそのボールの「大きさ(SIZE)」が「0から1000」の範囲であることや、「障害物を検出(OBSTACLE)」という認識結果が与えられた場合に、当該認識結果と共に与えられるその障害物までの「距離(DISTANCE)」が「0から100 」の範囲であることが他のノードに遷移するための条件となっている。
【0055】
またこのノードNODE100では、認識結果の入力がない場合においても、行動モデル901〜90nが周期的に参照する感情モデル93及び本能モデル94にそれそれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル93に保持された「喜び(JOY)」、「驚き(SURPRISE)」若しくは「悲しみ(SUDNESS)」のいずれかのパラメータ値が「50から100 」の範囲であるときには他のノードに遷移することができるようになっている。
【0056】
また状態遷移表100では、「他のノードへの遷移確率」の欄における「遷移先ノード」の列にそのノードNODE0〜NODEnから遷移できるノード名が列記されると共に、「入力イベント名」、「データ値」及び「データの範囲」の行に記述された全ての条件が揃ったときに遷移できる他の各ノードNODE0〜NODEnへの遷移確率が「他のノードへの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードNODE0〜NODEnに遷移する際に出力すべき行動が「他のノードへの遷移確率」の欄における「出力行動」の行に記述されている。なお「他のノードへの遷移確率」の欄における各行の確率の和は100 〔%〕となっている。
【0057】
従って図9の状態遷移表100で表されるノードNODE100では、例えば「ボールを検出(BALL)」し、そのボールの「SIZE(大きさ)」が「0から1000」の範囲であるという認識結果が与えられた場合には、「30〔%〕」の確率で「ノードNODE120(node 120)」に遷移でき、そのとき「ACTION1」の行動が出力されることとなる。
【0058】
そして各行動モデル901〜90nは、それぞれこのような状態遷移表100として記述されたノードNODE0〜NODEnがいくつも繋がるようにして構成されており、入力セマンティクスコンバータモジュール76から認識結果が与えられたときなどに、対応するノードNODE0〜NODEnの状態遷移表100を利用して確率的に次の行動を決定し、決定結果を行動切換えモジュール91に出力するようになされている。
【0059】
行動切換えモジュール91は、行動モデルライブラリ90の各行動モデル901〜90nからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデル901〜90nから出力された行動を選択し、当該行動を実行すべき旨のコマンド(以下、これを行動コマンドと呼ぶ)をミドル・ウェア・レイヤ60の出力セマンティクスコンバータ77に送出する。なおこの実施の形態においては、図7において下側に表記された行動モデル901〜90nほど優先順位が高く設定されている。
【0060】
また行動切換えモジュール91は、行動完了後に出力セマンティクスコンバータ77から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール92、感情モデル93及び本能モデル94に通知する。
【0061】
一方、学習モジュール92は、入力セマンティクスコンバータ76から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、ユーザからの働きかけとして受けた教示の認識結果を入力する。
【0062】
そして学習モジュール92は、この認識結果及び行動切換えモジュール91からの通知に基づいて、「叩かれた(叱られた)」ときにはその行動の発現確率を低下させ、「撫でられた(誉められた)」ときにはその行動の発現確率を増加させるように、行動モデルライブラリ70における対応する行動モデル901〜90nの対応する遷移確率を変更する。
【0063】
他方、感情モデル93は、「喜び(joy )」、「悲しみ(sadness )」、「怒り(anger )」、「驚き(surprise)」、「嫌悪(disgust )」及び「恐れ(fear)」の合計6つの情動について、情動ごとにその情動の強さを表すパラメータを保持している。そして感情モデル93は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール76から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果と、経過時間及び行動切換えモジュール91からの通知となどに基づいて順次更新するようになされている。
【0064】
具体的に感情モデル93は、入力セマンティクスコンバータ76からの認識結果及びそのときのロボット1の行動がその情動に対して作用する度合い(予め設定されている)と、本能モデル94が保持している各欲求のパラメータ値及びそのときのロボット1の行動がその情動に対して作用する度合い(予め設定されている)と、他の情動から受ける抑制及び刺激の度合いと、経過時間となどに基づいて所定の演算式により算出されるその情動の変動量をΔE〔t〕、現在のその情動のパラメータ値をE〔t〕、認識結果等に応じてその情動を変化させる割合(以下、これを感度と呼ぶ)を表す係数をkeとして、所定周期で次式
【0065】
【数1】
【0066】
を用いて次の周期におけるその情動のパラメータ値E〔t+1〕を算出する。
【0067】
そして感情モデル93は、この演算結果を現在のその情動のパラメータ値E〔t〕と置き換えるようにしてその情動のパラメータ値を更新する。なお各認識結果や行動切換えモジュール91からの通知に対してどの情動のパラメータ値を更新するかは予め決められており、例えば「叩かれた」といった認識結果が与えられた場合には「怒り」の情動のパラメータ値が上がり、「撫でられた」といった認識結果が与えられた場合には「喜び」の情動のパラメータ値が上がる。
【0068】
これに対して本能モデル74は、「運動欲(exercise)」、「愛情欲(affection)」、「食欲(appetite)」及び「好奇心(curiosity )」の互いに独立した4つの欲求について、これら欲求ごとにその欲求の強さを表すパラメータを保持している。そして本能モデル94は、これら欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール76から与えられる認識結果や、経過時間及び行動切換えモジュール91からの通知などに基づいて順次更新するようになされている。
【0069】
具体的に本能モデル94は、「運動欲」、「愛情欲」及び「好奇心」については、ロボット1の行動出力、経過時間及び認識結果などに基づいて所定の演算式により算出されるその欲求の変動量をΔI〔k〕、現在のその欲求のパラメータ値をI〔k〕、その欲求の感度を表す係数をkiとして、所定周期で次式
【0070】
【数2】
【0071】
を用いて次の周期におけるその欲求のパラメータ値I〔k+1〕を算出し、この演算結果を現在のその欲求のパラメータ値I〔k〕と置き換えるようにしてその欲求のパラメータ値を更新する。なお行動出力や認識結果等に対してどの欲求のパラメータ値を変化させるかは予め決められており、例えば行動切換えモジュール71からの通知(行動を行ったとの通知)があったときには「運動欲」のパラメータ値が下がる。
【0072】
また本能モデル94は、「食欲」については、入力セマンティクスコンバータモジュール76を介して与えられるバッテリ残量データに基づいて、バッテリ残量をBLとして、所定周期で次式
【0073】
【数3】
【0074】
により「食欲」のパラメータ値I〔k〕を算出し、この演算結果を現在の食欲のパラメータ値I〔k〕と置き換えるようにして当該「食欲」のパラメータ値を更新する。
【0075】
なお本実施の形態においては、各情動及び各欲求のパラメータ値がそれぞれ0から100 までの範囲で変動するように規制されており、また係数ke、kiの値も情動ごと及び欲求ごとにそれぞれ個別に設定されている。
【0076】
一方、ミドル・ウェア・レイヤ40の出力セマンティクスコンバータモジュール77は、図5に示すように、上述のようにしてアプリケーション・レイヤ61の行動切換えモジュール91から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング」といった抽象的な行動コマンドを出力系85の対応する信号処理モジュール78〜84に与える。
【0077】
そしてこれら信号処理モジュール78〜84は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動を行うために対応するアクチュエータ251〜25n(図2)に与えるべきサーボ指令値や、スピーカ24(図2)から出力する音の音声データ及び又は「目」のLEDに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト52のバーチャル・ロボット53及び信号処理回路14(図2)を順次介して対応するアクチュエータ251〜25n、スピーカ24又はLEDに順次送出する。
【0078】
このようにしてこのロボット1においては、制御プログラムに基づいて、自己及び周囲の状況や、ユーザからの指示及び働きかけに応じた自律的な行動を行うことができるようになされている。
【0079】
(2)ロボット1におけるトラッキングシステム110の構成
(2−1)トラッキングシステム110の全体構成
次に、このロボット1におけるトラッキングシステム110の構成について説明する。
【0080】
図10は、このロボット1におけるトラッキングシステム110を示すものである。この図10からも明らかなように、ロボット1においては、CCDカメラ20(図2)から与えられる画像データをFBK34Aにおいてフィルタリングすることにより解像度の異なる複数種類の画像の画像データD1A〜D1Cをそれぞれ生成し、これら画像データD1A〜D1CをMCT(Multi-color Tracker)モジュール111に供給すると共に、このうち所定解像度の画像データD1BをCDT34Bに供給するようになされている。
【0081】
CDT34Bは、カラートラッキングに必要な色抽出処理の一部を行うために設けられた色抽出専用のハードウェアであり、供給される画像データD1Bに基づく画像から予めMCTモジュール111により設定された8色を高速に抽出し、当該抽出結果を色抽出画像データD2としてMCTモジュール111に送出する。
【0082】
MCTモジュール111は、予めメモリカード28に格納された制御プログラムに基づき、CPU10(図2)によって実行されるソフトウェアモジュールであり、図10に示すように、パラメータリスト112及びターゲットリスト113を有している。
【0083】
ここで、パラメータリスト112は、他のモジュールによって設定及び更新される当該MCTモジュール111のトラッキング処理に関する各種パラメータが記述されたリストであり、例えば図11に示すように、当該MCTモジュール111が抽出すべき色のIDを表す「色ID(Color-ID)」や、注目すべきターゲットに対するトラッキングの優先度を表す「プライオリティ」、優先度の高いターゲット等をトラッキング処理する際にどの解像度の画像データを使用すべきか、またそのトラッキング処理をどのぐらいの頻度で行うかをそれぞれ表す「希望処理レイヤ」及び「希望処理頻度」等のパラメータが他のモジュールからの要求に応じて順次登録される。またパラメータリスト112には、MCTモジュール111が抽出できる各色の色モデルパラメータの初期値を表す「色空間パラメータ」等も予め登録されている。
【0084】
これに対してターゲットリスト113は、そのときFBK34Aから供給される画像データD1A〜D1Cに基づく画像内に存在している各ターゲットにそれぞれ対応させて設けられるリストであり、当該ターゲットの色や画像内における位置及び当該ターゲットに付与されたID等の属性情報が記述される。
【0085】
そしてMCTモジュール111は、これらパラメータリスト112に記述された各種パラメータ設定及び各ターゲットリスト113に記述された属性情報等に基づいて、当該ターゲットリスト113が作成された各ターゲットに対するトラッキング処理を実行する。
【0086】
具体的に、MCTモジュール111は、これらターゲットリスト113が作成されたターゲットのうち、他のモジュールによりパラメータリスト112において「プライオリティ」、「希望処理レイヤ」及び「希望処理頻度」等が設定された注目すべき色(以下、これを注目色と呼ぶ)や注目すべきターゲット(以下、これを注目ターゲットと呼ぶ)については、トラッキングの探索範囲を制限した速いループで高速にトラッキング処理し、それ以外のターゲットについては画像全体を探索範囲とする全画面探索による遅いループでのトラッキング処理を実行する。
【0087】
ただし、遅いループによるトラッキング処理では、最も解像度が低い画像の画像データを用い、さらにトラッキング処理の頻度をも抑えて行うようになされ、これによりトラッキングすべきターゲットが複数ある場合のCPUの処理負荷を軽減し得るようになされている。
【0088】
またMCTモジュール111は、各ターゲットリスト113にそれぞれ記述されたそのターゲットの色の色モデルパラメータを過去の色モデルパラメータの観測結果に基づいて順次更新するようになされ、これによりターゲットの姿勢や位置関係の変化・照明条件の穏やかな変化などによる色の変動にも実用上十分に対応し得るようになされている。
【0089】
ところが、照明条件等が急激に変化した場合、かかる枠組みだけでは対処しきれない。そこで、このトラッキングシステム110では、外部モジュールとの連帯により、特に肌色について、この問題に対処し得るようになされている。
【0090】
具体的に、このトラッキングシステム110においては、照明条件の変動に伴うカラー画像の変化に影響を受け難い輝度情報にのみ依存して顔を検出する顔検出モジュール(図示せず)による顔検出結果が比較的低い頻度で定期的にMCTモジュール111に与えられる。
【0091】
そしてMCTモジュール111は、この顔検出モジュールの顔検出結果を肌色領域の信頼すべき教師入力として、当該顔検出モジュールにより検出された領域の色分布を解析し、当該解析結果に基づいて現在の自己の肌色の色モデルパラメータを更新するようになされている。
【0092】
このようにしてこのトラッキングシステム110においては、環境条件の急激な変化にも十分に対応でき、かくしてより一層と精度良くトラッキングを行い得るようになされている。
【0093】
(2−2)MCTモジュール111の具体的処理
ここで、実際上、MCTモジュール111は、ロボット1の電源が投入された初期時、CDT34Bが予め定められた8色の色抽出処理を行うように当該CDT34Bを設定すると共に、上述の遅いループによるトラッキング処理の際の「希望処理レイヤ」、「希望処理頻度」及び「注目色」等として、それぞれ予め定められた初期設定値をパラメータリスト112に登録する。
【0094】
なお、この実施の形態においては、遅いループでのトラッキング処理の「希望処理レイヤ」としては、最も低い解像度が設定され、「希望処理頻度」としては、3〜10フレーム程度の頻度が設定される。またこの遅いループによるトラッキング処理は、画像内に現れる新たなターゲットを検出するための意味合いもあることから、遅いループでのトラッキング処理時の「注目色」として、顔検出のための肌色、ピンク色のボール検出のためのピンク色等が設定される。
【0095】
そしてMCTモジュール111は、この後他のモジュールからの要求に応じて、指定されたターゲット(注目ターゲット)の「プライオリティ」、「希望処理レイヤ」及び「希望処理頻度」など、指定された状態でのトラッキング処理を行うための各種パラメータを順次パラメータリスト112に登録する。
【0096】
またMCTモジュール111は、遅いループによるトラッキング処理時等に新たなターゲットを検出すると、そのターゲットに対するターゲットリスト113を作成して、当該ターゲットリスト113にそのときのそのターゲットの位置や大きさ及びそのターゲットの色の色モデルパラメータ(パラメータリスト112に記述された対応する色モデルパラメータの初期値)等を当該ターゲットの属性情報として記述すると共に、これらターゲットリスト113に記述された属性情報をその後のトラッキング処理結果に応じて順次更新する。
【0097】
そしてMCTモジュール111は、このようにして作成され、順次更新されるこれらパラメータリスト112及びターゲットリスト113に基づき、図に示すトラッキング処理手順RT1に従って、遅いループによるトラッキング処理及び速いループによるトラッキング処理を平行して実行する。
【0098】
実際上、MCTモジュール111は、遅いループによるトラッキング処理時には、このトラッキング処理手順RT1をステップSP0において開始後、続くステップSP1において、パラメータリスト112に登録された遅いループに対する「希望処理レイヤ」及び「希望処理頻度」に従って、解像度の最も低い画像データD1Bを用い、全画面を探索範囲として、指定された色の抽出処理を行う。なお、指定された色がCDT34Bにより抽出される色である場合には、MCTモジュール111は、このステップSP1を省略して直ちにステップSP2に進む。
【0099】
そして、MCTモジュール111は、続くステップSP2において、ステップSP1における色抽出処理により抽出したその色の領域を分布に応じて一塊の領域ごとに分ける領域セグメント処理を実行する。
【0100】
具体的には、ステップSP1において抽出された一塊の領域ごとに、その領域を最も適合した状態で取り囲む楕円を、その大きさ、位置及び傾き等を変化させながら求める。なお、このように楕円の大きさ、位置及び傾きを変化させるのは、例えば、ターゲットまでの距離が変化したり、ターゲットが移動したり、ターゲットが傾いたりすること等に対応するためである。
【0101】
そしてMCTモジュール111は、この後ステップSP3に進んで、このようにして得られた各楕円と、そのときターゲットリスト112が作成されているターゲット(以下、適宜、これを既知のターゲットと呼ぶ)との対応付けを行う。なお、初期段階や新たなターゲットについては、ターゲットリスト112がないので、この場合には既知のターゲットとの対応付けは行われない。
【0102】
続いてMCTモジュール111は、ステップSP4に進んで、各楕円の大きさ及び位置等を、それぞれステップSP3において対応付けられた各ターゲットの大きさ及び位置等として計算し、当該計算結果に基づいて対応するターゲットリスト112をそれぞれ更新する。なお、この際、既知のターゲットとの対応付けが行われなかった楕円については新たなターゲットとしてターゲットリスト112が作成されることとなる。
【0103】
またMCTモジュール111は、かかるターゲットリスト113の更新の際には、そのターゲットリスト113に記述された対応するターゲットの色の色モデルパラメータについても、最大尤度適合法(maximum likelihood adaptation)を利用して更新する。
【0104】
すなわちMCTモジュール111は、そのターゲットに対する過去nステップの観測結果(色モデルパラメータ)の履歴から、次のステップにおける色モデルのパラメータを過去の既知パラメータの線形和との制約条件のもとに推定し、推定された結果を用いてその色の色領域の抽出を行い、そのサンプルによって今回の観測結果(色モデルパラメータ)を確定し、これをもとの色モデルパラメータと置き換えるようにしてターゲットリスト113の色モデルパラメータを更新する。モデル推定には、過去の観測結果の履歴(サンプルセット)から予測される最大尤度をもつパラメータを採用する。
【0105】
具体的には、次のステップにおける色モデルパラメータを、次式
【0106】
【数4】
【0107】
及び次式
【0108】
【数5】
【0109】
として表現し、重み係数αn,βnの更新規則を最尤推定により導出する。なお、(4)式は平均であり、(5)式は分散である。またmn,snはそれぞれ過去nステップ前の平均値と分散値であり、rは最大履歴数である。
【0110】
そして、このようにターゲットリスト113に記述されている色モデルパラメータを順次更新することによって、注目ターゲットの姿勢や位置変化及び照明条件の緩やかな変化などによる色の変動に実用上十分に対応することができる。
【0111】
次いでMCTモジュール111は、ステップSP1に戻り、この後はパラメータリスト112に登録された頻度でステップSP1〜ステップSP4を上述と同様にして繰り返す。このようにしてMCTモジュール111は、遅いループによるトラッキング処理を実行する。
【0112】
一方、MCTモジュール111は、速いループによるトラッキング処理時、このトラッキング処理手順RT1をステップSP0において開始後、続くステップSP1において、他のモジュールによりパラメータリスト112において指定された注目色や注目ターゲットのうち、まず最も「プライオリティ」の高い注目ターゲットを選択し、その色のパラメータ(色モデルパラメータ)を対応するターゲットリスト113から読み出し、当該読み出した色モデルパラメータに基づいて、パラメータリスト112において指定されている対応する解像度の画像データD1A〜D1Cを用いてその色の抽出処理を実行する。
【0113】
この際MCTモジュール111は、かかる色抽出処理を、対応するターゲットリスト113に登録されている当該注目ターゲットの直前の位置の周囲近傍、例えば直前の位置から上下左右に5〜10画素分だけ広げた領域にのみ範囲(探索範囲)を限定して実行する。
【0114】
なお、速いループによるトラッキング処理の場合にも、抽出すべき色がCDT34Bにより抽出される色である場合には、MCTモジュール111は、ステップSP1を省略して直ちにステップSP2に進む。
【0115】
そしてMCTモジュール111は、続くステップSP2において、ステップSP1における色抽出処理の処理結果に対して上述した領域セグメント処理を実行し、この後ステップSP3に進んで、当該領域セグメント処理により検出された楕円と、かかる注目ターゲットとの対応付けを行う。
【0116】
さらにMCTモジュール111は、ステップSP4に進んで、上述のようにステップSP2において得られた楕円の大きさや位置等を計算し、当該計算結果に基づいて、対応するターゲットリスト113に記述されているその注目ターゲットの位置や大きさ等を更新する。またMCTモジュール111は、当該ターゲットリスト113に記述されているその注目ターゲットの色の色モデルパラメータについても、上述と同様にして最大尤度適合法(maximum likelihood adaptation)方式による更新を行う。
【0117】
そしてMCTモジュール111は、このようにして対応するターゲットリスト113の更新を行うと、この後そのターゲットのトラッキングを依頼してきた他のモジュールに対してそのターゲットの現在の位置や色等の属性情報をターゲット情報として出力する。かくしてかかる他のモジュールは、このターゲット情報に基づいて、そのターゲットの動きに合わせてロボット1の頭部ユニット4を動かす等の各種処理を実行できる。
【0118】
さらにMCTモジュール111は、この後この注目ターゲットについて、パラメータリスト112に登録された対応する「希望処理頻度」に応じた頻度で同様の処理を繰り返す。このようにしてMCTモジュール111は、この注目ターゲットについて、指定された「希望処理レイヤ」及び「希望処理頻度」でトラッキング処理を実行する。
【0119】
またMCTモジュール111は、これと平行してパラメータリスト112において指定された他の注目色及び注目ターゲットについても、そのときのCPU10(図2)の処理能力に応じた数だけ「プライオリティ」の高いものから順番に、探索範囲(対応する色の抽出範囲)を制限しながら、上述と同様にしてその注目ターゲットについて指定された「希望処理レイヤ」に応じた解像度の画像データを用い、当該注目ターゲットについて指定された「希望処理頻度」に応じた頻度でトラッキング処理を実行する。
【0120】
このようにしてMCTモジュール111は、他のモジュールにより指定されたターゲットについては探索範囲を制限した速いループでのトラッキング処理を行い、他のターゲットについては全画面探索による遅いループでのトラッキング処理を行い得るようになされている。
【0121】
一方、MCTモジュール111には、上述のように顔検出モジュール(図示せず)による顔検出結果が比較的低い頻度で定期的に与えられる。
【0122】
このときMCTモジュール111は、この顔検出モジュールの顔検出結果に基づいて、当該顔検出モジュールにより顔領域として検出された画像平面上の領域部分の色をヒストグラム解析することにより、その領域部分の色の色モデルパラメータを取得する。
【0123】
そしてMCTモジュール111は、このようにして取得した色モデルパラメータを、そのときパラメータリスト112に登録されている肌色の色モデルパラメータと置き換えるようにして肌色の色モデルパラメータを更新する。
【0124】
このようにしてMCTモジュール111は、顔検出モジュールによる顔検出結果に基づき肌色の色モデルパラメータを順次更新するようになされ、これにより環境条件の急激な変化にも実用上十分に対応して、より一層と精度良くトラッキングを行い得るようになされている。
【0125】
(3)本実施の形態の動作及び効果
以上の構成において、トラッキングシステム110では、MCTモジュール111が、他のモジュールにより指定されたターゲットについては、探索範囲が制限された速いループによりトラッキング処理し、これ以外のターゲットについては全画面探索による遅いループによりトラッキング処理する。
【0126】
従って、このトラッキングシステム110においては、他のモジュールにより指定されたターゲットについては実時間を保証した精度の良いトラッキングを行いつつ、他のターゲットについても確実にトラッキングを行うことができる。
【0127】
またこのトラッキングシステム110では、顔検出モジュールによる顔検出結果を定期的にMCTモジュール111に与えられ、MCTモジュール111が、この顔検出モジュールの顔検出結果に基づいてパラメータリスト112に記述された肌色の色モデルパラメータを修正するようにしているため、環境条件の急激な変化にも十分に対応でき、その分より一層と精度良くトラッキングを行うことができる。
【0128】
さらにこのトラッキングシステム110では、MCTモジュール111におけるトラッキング処理に必要な一部の色の抽出処理を専用のハードウェアであるCDT34Bに任せているため、全ての色抽出処理をMCTモジュール111において行う場合に比べてカラートラッキング処理をより高速に行うことができ、その分注目ターゲットに対するトラッキング処理の実時間性をより確実に保証できるという利点をも有している。
【0129】
以上の構成によれば、MCTモジュール111が、他のモジュールにより指定されたターゲットについては、探索範囲が制限された速いループによりトラッキング処理し、これ以外のターゲットについては全画面探索による遅いループによりトラッキング処理するようにしたことにより、他のモジュールにより指定されたターゲットについては実時間を保証した精度の良いトラッキングを行いつつ、他のターゲットについても確実にトラッキングを行うことができ、かくして実時間性を保証しつつ複数の対象を確実にトラッキングし得る。
【0130】
(4)他の実施の形態
なお上述の実施の形態においては、本発明を図1のように構成された4脚歩行型のロボット1に適用するようにした場合について述べたが、本発明はこれに限らず、例えばヒューマノイド型のロボット装置等、この他種種の形態のロボット装置に広く適用することができ、またロボット装置以外のこの他種々の装置にも広く適用することができる。
【0131】
また上述の実施の形態においては、CCDカメラ20からの画像データに基づいてそれぞれ解像度の異なる複数の画像データD1A〜D1Cを生成するフィルタ手段としてのFBK34A(図10)が3種類の解像度の画像データD1A〜D1Cを生成するようにした場合について述べたが、本発明はこれに限らず、FBK34Aが3種類以上の解像度の画像データD1A〜D1Cを生成するようにしても良く、このようにすることによって他のモジュールがそのターゲットの重要度に応じてトラッキング処理精度をより細かく設定できるようにすることができる。
【0132】
さらに上述の実施の形態においては、MCTモジュール111が顔検出モジュールと連携して、パラメータリスト112に記述された肌色の色モデルパラメータを修正することで、環境条件の急激な変化にも十分に対応し得るようにした場合について述べたが、本発明はこれに限らず、MCTモジュール111が例えば動き検出モジュールの検出結果を利用してすばやく動くものの動きに追従できるようにしたり、視差やテクスチャを分析して物体をセグメントするモジュールの出力を利用して任意の対象物体をトラッキングできるようにしても良く、要は、MCTモジュール111とは異なるトラッキング対象に関する所定情報を検出する他のモジュールから与えられる当該情報に基づいて、トラッキング処理動作を規定するパラメータリスト112やターゲットリスト113を更新するようにすることによって、色以外の他の環境条件の急激な変化にも実用上十分に対応し得るトラッキングシステムを構築することができる。
【0133】
さらに上述の実施の形態においては、トラッキング対象のうち、一部のトラッキング対象については、探索範囲を制限した速いループによるトラッキング処理を行い、他のトラッキング対象については、画像全体を探索範囲とした遅いループによるトラッキング処理を行うトラッキング処理手段としてのMCTモジュール111を、このロボット1全体の動作制御を司るCPU10(図2)によって実行されるソフトウェアモジュールとして構成するようにした場合について述べたが、本発明はこれに限らず、当該CPU10以外の演算手段を設け、当該演算手段により実行されるソフトウェアモジュールとして構成するようにしても良い。
【0134】
さらに上述の実施の形態においては、速いループによるトラッキング処理時における探索範囲の制限として、探索範囲をそのターゲットの直前の位置から上下左右に5〜10画素分だけ広げた範囲とするようにした場合について述べたが、本発明はこれに限らず、探索範囲の制限としてはこの他種々の範囲を設定することができる。
【0135】
【発明の効果】
上述のように本発明によれば、撮像手段から供給される第1の画像データに基づき画像内に存在するトラッキング対象を当該画像内において追従するトラッキング処理を行なうトラッキング装置において、第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成手段と、第1の画像データに存在するトラッキング対象のうち、指定されたトラッキング対象については、指定された処理頻度で行う第1のループによるトラッキング処理を行い、指定されていないトラッキング対象については、第1のループとは当該処理頻度が異なる第2のループによるトラッキング処理を行うトラッキング処理手段とを具え、トラッキング処理手段は、指定されたトラッキング対象については、指定された解像度を有する第2の画像データを用い、指定された処理頻度でトラッキング処理を実行するようにしたことにより、指定されたトラッキング対象については実時間を保証した精度の良いトラッキングを行うことができ、かくして実時間性を保証しつつ複数の対象を確実にトラッキングし得るトラッキング装置を実現できる。
【0136】
また本発明によれば、トラッキング装置のトラッキング方法において、トラッキング装置は、撮像手段から供給される第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成ステップと、第1の画像データに存在するトラッキング対象のうち、指定されたトラッキング対象については、指定された処理頻度で行う第1のループによるトラッキング処理を行い、指定されていないトラッキング対象については、第1のループとは当該処理頻度が異なる第2のループによるトラッキング処理を行うトラッキング処理ステップとを具え、トラッキング処理ステップは、指定されたトラッキング対象については、指定された上記解像度を有する第2の画像データを用い、指定された処理頻度でトラッキング処理を実行するようにしたことにより、指定されたトラッキング対象については実時間を保証した精度の良いトラッキングを行うことができ、かくして実時間性を保証しつつ複数の対象を確実にトラッキングし得るトラッキング装置のトラッキング方法を実現できる。
【0137】
さらに本発明においては、ロボット装置において、撮像手段から供給される第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成手段と、第1の画像データに存在するトラッキング対象のうち、指定されたトラッキング対象については、指定された処理頻度で行う第1のループによるトラッキング処理を行い、指定されていないトラッキング対象については、第1のループとは当該処理頻度が異なる第2のループによるトラッキング処理を行うトラッキング処理手段とを具え、トラッキング処理手段は、指定されたトラッキング対象については、指定された解像度を有する第2の画像データを用い、指定された上記処理頻度でトラッキング処理を実行するようにしたことにより、指定されたトラッキング対象については実時間を保証した精度の良いトラッキングを行うことができ、かくして実時間性を保証しつつ複数の対象を確実にトラッキングし得るロボット装置を実現できる。
【図面の簡単な説明】
【図1】本実施の形態によるロボットの構成を示す斜視図である。
【図2】ロボットの回路構成を示すブロック図である。
【図3】信号処理回路の構成を示すブロック図である。
【図4】制御プログラムのソフトウェア構成を示すブロック図である。
【図5】ミドル・ウェア・レイヤのソフトウェア構成を示すブロック図である。
【図6】アプリケーション・レイヤのソフトウェア構成を示すブロック図である。
【図7】行動モデルライブラリの構成を示す概念図である。
【図8】確率オートマトンの説明に供する概念図である。
【図9】状態遷移表の説明に供する概念図である。
【図10】本実施の形態によるトラッキングシステムの構成を示すブロック図である。
【図11】パラメータリストにおける設定パラメータの説明に供する略線図である。
【図12】トラッキング処理手順を示すフローチャートである。
【符号の説明】
1……ロボット、10……CPU、20……CCDカメラ、34A……FBK、34B……CDT、111……MCTモジュール、112……パラメータリスト、113……ターゲットリスト、D1A〜D1C……画像データ、RT1……トラッキング処理手順。
Claims (3)
- 撮像手段から供給される第1の画像データに基づき画像内に存在するトラッキング対象を当該画像内において追従するトラッキング処理を行うトラッキング装置において、
上記第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成手段と、
上記第1の画像データに存在するトラッキング対象のうち、指定された上記トラッキング対象については、指定された処理頻度で行う第1のループによる上記トラッキング処理を行い、指定されていない上記トラッキング対象については、上記第1のループとは当該処理頻度が異なる第2のループによる上記トラッキング処理を行うトラッキング処理手段とを具え、
上記トラッキング処理手段は、
指定された上記トラッキング対象については、指定された上記解像度を有する上記第2の画像データを用い、指定された上記処理頻度で上記トラッキング処理を実行する
トラッキング装置。 - 撮像手段から供給される第1の画像情報に基づき画像内に存在するトラッキング対象を当該画像内において追従するトラッキング処理を行うトラッキング装置のトラッキング方法において、
トラッキング装置は、
撮像手段から供給される第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成ステップと、
上記第1の画像データに存在するトラッキング対象のうち、指定された上記トラッキング対象については、指定された処理頻度で行う第1のループによる上記トラッキング処理を行い、指定されていない上記トラッキング対象については、上記第1のループとは当該処理頻度が異なる第2のループによる上記トラッキング処理を行うトラッキング処理ステップとを具え、
上記トラッキング処理ステップは、
指定された上記トラッキング対象については、指定された上記解像度を有する上記第2の画像データを用い、指定された上記処理頻度で上記トラッキング処理を実行する
トラッキング装置のトラッキング方法。 - 外部を撮像する撮像手段から供給される第1の画像データに基づき画像内に存在するトラッキング対象を当該画像内において追従するトラッキング処理を行なうロボット装置において、
上記撮像手段から供給される第1の画像データに対し所定のフィルタリング処理を行なうことにより、当該第1の画像データとはそれぞれ異なる複数の解像度を有する第2の画像データを生成する画像データ生成手段と、
上記第1の画像データに存在するトラッキング対象のうち、指定された上記トラッキング対象については、指定された処理頻度で行う第1のループによる上記トラッキング処理を行い、指定されていない上記トラッキング対象については、上記第1のループとは当該処理頻度が異なる第2のループによる上記トラッキング処理を行うトラッキング処理手段とを具え、
上記トラッキング処理手段は、
指定された上記トラッキング対象については、指定された上記解像度を有する上記第2の画像データを用い、指定された上記処理頻度で上記トラッキング処理を実行する
ロボット装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002211408A JP4193098B2 (ja) | 2002-07-19 | 2002-07-19 | トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002211408A JP4193098B2 (ja) | 2002-07-19 | 2002-07-19 | トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004054610A JP2004054610A (ja) | 2004-02-19 |
JP2004054610A5 JP2004054610A5 (ja) | 2005-10-13 |
JP4193098B2 true JP4193098B2 (ja) | 2008-12-10 |
Family
ID=31934653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002211408A Expired - Lifetime JP4193098B2 (ja) | 2002-07-19 | 2002-07-19 | トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4193098B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4516592B2 (ja) * | 2007-12-06 | 2010-08-04 | 本田技研工業株式会社 | 移動型ロボット |
JP2011090569A (ja) * | 2009-10-23 | 2011-05-06 | Sony Corp | 画像処理装置および画像処理方法 |
JP5482412B2 (ja) * | 2010-04-30 | 2014-05-07 | 富士通株式会社 | ロボット、位置推定方法及びプログラム |
JP5646263B2 (ja) * | 2010-09-27 | 2014-12-24 | 任天堂株式会社 | 画像処理プログラム、画像処理装置、画像処理システム、および、画像処理方法 |
CN110060284B (zh) * | 2019-04-25 | 2021-10-22 | 王荩立 | 一种基于触觉感知的双目视觉环境探测系统及方法 |
-
2002
- 2002-07-19 JP JP2002211408A patent/JP4193098B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004054610A (ja) | 2004-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4609584B2 (ja) | ロボット装置、顔認識方法及び顔認識装置 | |
US9902062B2 (en) | Apparatus and methods for training path navigation by robots | |
JP4590717B2 (ja) | 顔識別装置及び顔識別方法 | |
JP3855812B2 (ja) | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 | |
JP4032793B2 (ja) | 充電システム及び充電制御方法、ロボット装置、及び充電制御プログラム及び記録媒体 | |
US7532743B2 (en) | Object detector, object detecting method and robot | |
JP3714268B2 (ja) | ロボット装置 | |
JPWO2002099545A1 (ja) | マン・マシン・インターフェースユニットの制御方法、並びにロボット装置及びその行動制御方法 | |
CN114080583A (zh) | 视觉教导和重复移动操纵系统 | |
JP7417356B2 (ja) | ロボット制御システム | |
JP2004302644A (ja) | 顔識別装置、顔識別方法、記録媒体、及びロボット装置 | |
JP2004298975A (ja) | ロボット装置、障害物探索方法 | |
JP4193098B2 (ja) | トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 | |
JP2003271958A (ja) | 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置 | |
JP2002239952A (ja) | ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体 | |
JP7309371B2 (ja) | ロボット制御システム | |
WO2022211310A1 (en) | Systems and methods for adaptive robotic motion control | |
JP2002205289A (ja) | ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置 | |
JP4379052B2 (ja) | 動体検出装置、動体検出方法、及びロボット装置 | |
JP2001157980A (ja) | ロボット装置及びその制御方法 | |
JP2001154707A (ja) | ロボット装置及びその制御方法 | |
JP2002326176A (ja) | ロボット装置、並びに、画像記憶方法及び画像記憶装置、並びに、制御プログラム及び記録媒体 | |
JP2003266352A (ja) | ロボット装置及びロボット装置の制御方法 | |
JP2002120178A (ja) | ロボット装置及びロボット装置の動作制御方法 | |
JP7190919B2 (ja) | 画像解析システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050530 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050530 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080528 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080801 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080828 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080910 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111003 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121003 Year of fee payment: 4 |