JP4281286B2 - ロボット装置及びその制御方法 - Google Patents
ロボット装置及びその制御方法 Download PDFInfo
- Publication number
- JP4281286B2 JP4281286B2 JP2002075144A JP2002075144A JP4281286B2 JP 4281286 B2 JP4281286 B2 JP 4281286B2 JP 2002075144 A JP2002075144 A JP 2002075144A JP 2002075144 A JP2002075144 A JP 2002075144A JP 4281286 B2 JP4281286 B2 JP 4281286B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- identification number
- attribute information
- color
- integrated information
- 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 - Fee Related
Links
Images
Landscapes
- Manipulator (AREA)
Description
【発明の属する技術分野】
本発明は、自律的な動作を行いリアリスティックなコミュニケーションを実現するロボット装置及びその制御方法に係り、特に、画像や音声などの外界の情報を認識してそれに対して自身の行動を反映させる機能を備えた自律型のロボット装置及びその制御方法に関する。
【0002】
【従来の技術】
電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機械装置のことを「ロボット」という。ロボットの語源は、スラブ語の"ROBOTA(奴隷機械)"に由来すると言われている。わが国では、ロボットが普及し始めたのは1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化などを目的としたマニピュレータや搬送ロボットなどの産業用ロボット(industrial robot)であった。
【0003】
最近では、イヌやネコ、クマのように4足歩行の動物の身体メカニズムやその動作を模したペット型ロボット、あるいは、ヒトやサルなどの2足直立歩行を行う動物の身体メカニズムや動作を模した「人間形」若しくは「人間型」のロボット(humanoid robot)など、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。
【0004】
アーム式ロボットのように、ある特定の場所に植設して用いるような据置きタイプのロボットは、部品の組立・選別作業など固定的・局所的な作業空間でのみ活動する。これに対し、移動式のロボットは、作業空間は非限定的であり、所定の経路上または無経路上を自在に移動して、所定の若しくは任意の人的作業を代行したり、ヒトやイヌあるいはその他の生命体に置き換わる種々のサービスを提供することができる。
【0005】
脚式移動ロボットの用途の1つとして、産業活動・生産活動等における各種の難作業の代行が挙げられる。例えば、原子力発電プラントや火力発電プラント、石油化学プラントにおけるメンテナンス作業、製造工場における部品の搬送・組立作業、高層ビルにおける清掃、火災現場その他における救助といったような危険作業・難作業の代行などである。
【0006】
また、脚式移動ロボットの他の用途として、上述の作業支援というよりも、生活密着型、すなわち人間との「共生」あるいは「エンターティンメント」という用途が挙げられる。この種のロボットは、ヒトあるいはイヌ(ペット)、クマなどの比較的知性の高い脚式歩行動物の動作メカニズムや四肢を利用した豊かな感情表現を忠実に再現する。また、あらかじめ入力された動作パターンを単に忠実に実行するだけではなく、ユーザ(あるいは他のロボット)から受ける言葉や態度(「褒める」とか「叱る」、「叩く」など)に対して動的に対応した、生き生きとした応答表現を実現することも要求される。
【0007】
従来の玩具機械は、ユーザ操作と応答動作との関係が固定的であり、玩具の動作をユーザの好みに合わせて変更することはできない。この結果、ユーザは同じ動作しか繰り返さない玩具をやがては飽きてしまうことになる。
【0008】
これに対し、自律動作を行うインテリジェントなロボットは、一般に、外界の情報を認識してそれに対して自身の行動を反映させる機能を持っている。すなわち、ロボットは、外部環境からの音声や画像、触覚などの入力情報に基づいて感情モデルや本能モデルを変化させて動作を決定することにより、自律的な思考及び動作制御を実現する。すなわち、ロボットが感情モデルや本能モデルを用意することにより、より高度な知的レベルで人間とのリアリスティックなコミュニケーションを実現することも可能となる。
【0009】
ロボットが環境変化に応じた自律動作を行うために、従来は、ある1つの観測結果に対してその情報を受けて行動を取るような単純な行動記述の組み合わせで行動を記述していた。これら入力に対する行動のマッピングにより、ランダム性、内部状態(感情・本能)、学習、成長などの機能を導入することで一意ではない複雑な行動の発現を可能にすることができる。この行動の発現を行うところを、行動生成部という。
【0010】
例えば、2台のCCDカメラからなるステレオカメラを両目として配した首部を胴体部に対して可動可能とし、さらに2足歩行を可能とする左右の脚部を有した自律型ロボット装置にあって、首部の動作を生成するような行動生成部を首部動作生成部という。
【0011】
【発明が解決しようとする課題】
ところで、従来、首部による画像上の特徴点への注視(トラッキング)は、首部の根本の座標系に変換し、その変換座標における特徴点の位置に変換し、その方向に首部を向けるといった処理がなされていた。そのため、注視するセンサ情報を動作命令生成部のような上位から前記首部動作生成部に指定し、その方向に注視行動を実施するものであった。そのため、上位のモジュール(動作命令生成部)では、注視行動に使用する最適な情報を選択する必要があった。
【0012】
本発明は、前記実情に鑑みてなされたものであり、動作命令生成部(上位モジュール)では、何に対して注視するのかを指定するだけでトラッキングが可能となるロボット装置及びその制御方法の提供を目的とする。
【0013】
【課題を解決するための手段】
本発明に係る自律型のロボット装置は、前記課題を解決するために、外部環境に対する認識結果に基づいて自律的に対象物をトラッキングする自律型のロボット装置において、前記外部環境に存在する対象物に関する属性情報を認識する複数の認識手段と、前記複数の認識手段によって認識された各属性情報を受け取り、時間的及び空間的な所定の範囲における該認識された各属性情報を対象物毎に整合するように対応付け、識別番号を付して記憶する統合情報生成記憶手段と、前記統合情報生成記憶手段に記憶されている前記対象物の統合情報から、トラッキングの対象となる所定の対象物の統合情報を探索して、前記識別番号によって特定される対象物へのトラッキング行動に関する動作命令を生成する動作命令生成手段と、前記動作命令生成手段から前記動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶手段から受信し、該動作命令と該識別番号とを対応させることによって、該識別番号に基づいて選択されたトラッキング行動に使用する属性情報により、トラッキング行動の動作をさせる動作生成手段とを備え、前記統合情報生成記憶手段は、前記複数の認識手段のうちの少なくとも二つの認識手段からの各認識結果が時間的及び空間的な所定の範囲において近いときには、同一の対象物から認識された属性情報であるとし、同じ識別番号を付した統合情報として記憶し、前記複数の認識手段のうちの一の認識手段からの時間的な所定の範囲における、前記対象物の属性情報に対する新たな認識結果が前回の認識結果とマッチングしないときには、該新たな認識結果を新たな対象物の属性情報として識別符号を付して記憶する。
【0014】
このロボット装置では、統合情報生成記憶手段が複数の認識手段によって認識された各属性情報を受け取り、対象物毎に時間的及び空間的に整合性を保つように統合し、識別番号を付して記憶し、動作命令生成手段が前記統合情報生成記憶手段に記憶されている前記対象物の統合情報から、注視の対象となる所定動作生成手段が対象物の統合情報を探索して対象物の識別番号に基づいた動作命令を生成し、動作生成手段が前記動作命令生成手段から前記対象物の識別番号に基づいた動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶手段から受信して、注視行動に使用する属性情報を選択して注視行動のための制御信号を生成する。
【0015】
本発明に係るロボット装置の制御方法は、前記課題を解決するために、外部環境に対する認識結果に基づいて自律的に対象物をトラッキングする自律型のロボット装置の制御方法において、前記外部環境に存在する対象物に関する属性情報を認識する複数の認識手段によって認識された各属性情報を受け取り、時間的及び空間的な所定の範囲における該認識された各属性情報を対象物毎に整合するように対応付け、識別番号を付して記憶する統合情報生成記憶工程と、前記統合情報生成記憶工程にて記憶された前記対象物の統合情報から、トラッキングの対象となる所定の対象物の統合情報を探索して、前記識別番号によって特定される対象物へのトラッキング行動に関する動作命令を生成する動作命令生成工程と、前記動作命令生成工程から前記動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶工程から受信し、該動作命令と該識別番号とを対応させることによって、該識別番号に基づいて選択されたトラッキング行動に使用する属性情報により、トラッキング行動の動作をさせる動作生成工程とを備え、前記統合情報生成記憶工程では、前記複数の認識手段のうちの少なくとも二つの認識手段からの各認識結果が時間的及び空間的な所定の範囲において近いときには、同一の対象物から認識された属性情報であるとし、同じ識別番号を付した統合情報として記憶し、前記複数の認識手段のうちの一の認識手段からの時間的な所定の範囲における、前記対象物の属性情報に対する新たな認識結果が前回の認識結果とマッチングしないときには、該新たな認識結果を新たな対象物の属性情報として識別符号を付して記憶する。
【0016】
【発明の実施の形態】
以下、本発明の一構成例として示す2足歩行タイプのロボット装置について、図面を参照して詳細に説明する。この人間型のロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態(怒り、悲しみ、喜び、楽しみ等)に応じて行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。つまり、音声や画像などの外的刺激の認識結果に基づいて自律的に行動制御を行うことができる。
【0017】
図1に示すように、ロボット装置1は、体幹部ユニット2の所定の位置に頭部ユニット3が連結されると共に、左右2つの腕部ユニット4R/4Lと、左右2つの脚部ユニット5R/5Lが連結されて構成されている(但し、R及びLの各々は、右及び左の各々を示す接尾辞である。以下において同じ。)。
【0018】
このロボット装置1が具備する関節自由度構成を図2に模式的に示す。頭部ユニット3を支持する首関節は、首関節ヨー軸101と、首関節ピッチ軸102と、首関節ロール軸103という3自由度を有している。
【0019】
また、上肢を構成する各々の腕部ユニット4R/4Lは、、肩関節ピッチ軸107と、肩関節ロール軸108と、上腕ヨー軸109と、肘関節ピッチ軸110と、前腕ヨー軸111と、手首関節ピッチ軸112と、手首関節ロール輪113と、手部114とで構成される。手部114は、実際には、複数本の指を含む多関節・多自由度構造体である。ただし、手部114の動作は、ロボット装置1の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は7自由度を有するとする。
【0020】
また、体幹部ユニット2は、体幹ピッチ軸104と、体幹ロール軸105と、体幹ヨー軸106という3自由度を有する。
【0021】
また、下肢を構成する各々の脚部ユニット5R/5Lは、股関節ヨー軸115と、股関節ピッチ軸116と、股関節ロール軸117と、膝関節ピッチ軸118と、足首関節ピッチ軸119と、足首関節ロール軸120と、足部121とで構成される。本明細書中では、股関節ピッチ軸116と股関節ロール軸117の交点は、ロボット装置1の股関節位置を定義する。人体の足部121は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置1の足底は、ゼロ自由度とする。したがって、各脚部は、6自由度で構成される。
【0022】
以上を総括すれば、ロボット装置1全体としては、合計で3+7×2+3+6×2=32自由度を有することになる。ただし、エンターテインメント向けのロボット装置1が必ずしも32自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度すなわち関節数を適宜増減することができることはいうまでもない。
【0023】
上述したようなロボット装置1がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、2足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
【0024】
図3には、ロボット装置1の制御システム構成を模式的に示している。同図に示すように、ロボット装置1は、ヒトの四肢を表現した体幹部ユニット2,頭部ユニット3,腕部ユニット4R/4L,脚部ユニット5R/5Lと、各ユニット間の協調動作を実現するための適応制御を行う制御ユニット10とで構成される。
【0025】
ロボット装置1全体の動作は、制御ユニット10によって統括的に制御される。制御ユニット10は、CPU(Central Processing Unit)や、DRAM、フラッシュROM等の主要回路コンポーネント(図示しない)で構成される主制御部11と、電源回路やロボット装置1の各構成要素とのデータやコマンドの授受を行うインターフェイス(何れも図示しない)などを含んだ周辺回路12とで構成される。
【0026】
本発明を実現するうえで、この制御ユニット10の設置場所は、特に限定されない。図3では体幹部ユニット2に搭載されているが、頭部ユニット3に搭載してもよい。あるいは、ロボット装置1外に制御ユニット10を配備して、ロボット装置1の機体とは有線又は無線で交信するようにしてもよい。
【0027】
図2に示したロボット装置1内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。すなわち、頭部ユニット3には、首関節ヨー軸101、首関節ピッチ軸102、首関節ロール軸103の各々を表現する首関節ヨー軸アクチュエータA2、首関節ピッチ軸アクチュエータA3、首関節ロール軸アクチュエータA4が配設されている。
【0028】
また、頭部ユニット3には、外部の状況を撮像するためのCCD(Charge Coupled Device)カメラが設けられているほか、前方に位置する物体までの距離を測定するための距離センサ、外部音を集音するためのマイク、音声を出力するためのスピーカ、使用者からの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出するためのタッチセンサ等が配設されている。
【0029】
また、体幹部ユニット2には、体幹ピッチ軸104、体幹ロール軸105、体幹ヨー軸106の各々を表現する体幹ピッチ軸アクチュエータA5、体幹ロール軸アクチュエータA6、体幹ヨー軸アクチュエータA7が配設されている。また、体幹部ユニット2には、このロボット装置1の起動電源となるバッテリを備えている。このバッテリは、充放電可能な電池によって構成されている。
【0030】
また、腕部ユニット4R/4Lは、上腕ユニット41R/41Lと、肘関節ユニット42R/42Lと、前腕ユニット43R/43Lに細分化されるが、肩関節ピッチ軸107、肩関節ロール軸108、上腕ヨー軸109、肘関節ピッチ軸110、前腕ヨー軸111、手首関節ピッチ軸112、手首関節ロール軸113の各々表現する肩関節ピッチ軸アクチュエータA8、肩関節ロール軸アクチュエータA9、上腕ヨー軸アクチュエータA10、肘関節ピッチ軸アクチュエータA11、肘関節ロール軸アクチュエータA12、手首関節ピッチ軸アクチュエータA13、手首関節ロール軸アクチュエータA14が配備されている。
【0031】
また、脚部ユニット5R/5Lは、大腿部ユニット51R/51Lと、膝ユニット52R/52Lと、脛部ユニット53R/53Lに細分化されるが、股関節ヨー軸115、股関節ピッチ軸116、股関節ロール軸117、膝関節ピッチ軸118、足首関節ピッチ軸119、足首関節ロール軸120の各々を表現する股関節ヨー軸アクチュエータA16、股関節ピッチ軸アクチュエータA17、股関節ロール軸アクチュエータA18、膝関節ピッチ軸アクチュエータA19、足首関節ピッチ軸アクチュエータA20、足首関節ロール軸アクチュエータA21が配備されている。各関節に用いられるアクチュエータA2,A3・・・は、より好ましくは、ギア直結型で旦つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ACサーボ・アクチュエータで構成することができる。
【0032】
体幹部ユニット2、頭部ユニット3、各腕部ユニット4R/4L、各脚部ユニット5R/5Lなどの各機構ユニット毎に、アクチュエータ駆動制御部の副制御部20,21,22R/22L,23R/23Lが配備されている。さらに、各脚部ユニット5R/5Lの足底が着床したか否かを検出する接地確認センサ30R/30Lを装着するとともに、体幹部ユニット2内には、姿勢を計測する姿勢センサ31を装備している。
【0033】
接地確認センサ30R/30Lは、例えば足底に設置された近接センサ又はマイクロ・スイッチなどで構成される。また、姿勢センサ31は、例えば、加速度センサとジャイロ・センサの組み合わせによって構成される。
【0034】
接地確認センサ30R/30Lの出力によって、歩行・走行などの動作期間中において、左右の各脚部が現在立脚又は遊脚何れの状態であるかを判別することができる。また、姿勢センサ31の出力により、体幹部分の傾きや姿勢を検出することができる。
【0035】
主制御部11は、各センサ30R/30L,31の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部20,21,22R/22L,23R/23Lの各々に対して適応的な制御を行い、ロボット装置1の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現できる。
【0036】
ロボット装置1の機体上での全身運動は、足部運動、ZMP(Zero Moment Point)軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容にしたがった動作を指示するコマンドを各副制御部20,21,22R/22L,23R/23Lに転送する。そして、各々の副制御部20,21,・・・等では、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・等に対して駆動制御信号を出力する。ここでいう「ZMP」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ZMP軌道」とは、例えばロボット装置1の歩行動作期間中にZMPが動く軌跡を意味する。なお、ZMPの概念並びにZMPを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩行ロボットと人工の足』(日刊工業新聞社))に記載されている。
【0037】
以上のように、ロボット装置1は、各々の副制御部20,21,・・・等が、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・に対して駆動制御信号を出力し、各ユニットの駆動を制御している。これにより、ロボット装置1は、目標の姿勢に安定して遷移し、安定した姿勢で歩行できる。
【0038】
また、ロボット装置1における制御ユニット10では、上述したような姿勢制御のほかに、加速度センサ、タッチセンサ、接地確認センサ等の各種センサ、及びCCDカメラからの画像情報、マイクからの音声情報等を統括して処理している。制御ユニット10では、図示しないが加速度センサ、ジャイロ・センサ、タッチセンサ、距離センサ、マイク、スピーカなどの各種センサ、各アクチュエータ、CCDカメラ及びバッテリが各々対応するハブを介して主制御部11と接続されている。
【0039】
主制御部11は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部インターフェイスを介してDRAM内の所定位置に順次格納する。また、主制御部11は、バッテリから供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM内の所定位置に格納する。DRAMに格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、主制御部11がこのロボット装置1の動作制御を行う際に利用される。
【0040】
主制御部11は、ロボット装置1の電源が投入された初期時、制御プログラムを読み出し、これをDRAMに格納する。また、主制御部11は、上述のように主制御部11よりDRAMに順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
【0041】
さらに、主制御部11は、この判断結果及びDRAMに格納した制御プログラムに基づいて自己の状況に応じて行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータを駆動させることによりロボット装置1に、いわゆる「身振り」、「手振り」といった行動をとらせる。
【0042】
特に、このロボット装置1は、複数のセンサ情報から特定のセンサ情報を使ってその方向に注視する行動制御を行う。さらに、本発明では、センサーフュージョンを行う短期記憶部(ShortTermMemory)の情報を用いて、注視行動の対象物情報から適切なセンサ情報を選択し、上位のコマンドからは、センサーフュージョンに使われるID(対象物ID)を指定するだけで、注視動作モジュールが自動的に最適なセンサ情報を選択するようにした。
【0043】
図4には、ロボット装置1において採用される、前記注視行動制御を含む行動制御システム50の基本アーキテクチャを模式的に示している。
【0044】
図示の行動制御システム50にはオブジェクト指向プログラミングを採り入れることができる。この場合、各ソフトウェアは、データ(プロパティ)とそのデータに対する処理手続き(メソッド)とを一体化させた「オブジェクト」というモジュール単位で扱われる。また、各オブジェクトは、メッセージ通信と共有メモリを使ったオブジェクト間通信方法によりプロパティの受け渡しとメソッドの継承を行なうことができる。
【0045】
行動制御システム50は、外部環境(Environments)を認識するために、視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53を備えている。
【0046】
視覚認識機能部(Video)51は、例えば、電荷結合素子(Charge Coupled Device:CCD)カメラのような画像入力装置を介して入力された撮影画像を基に、顔認識や色認識などの画像認識処理や特徴抽出を行う。視覚認識機能部51は、"MultiColorTracker","FaceDetector","FaceIdentify"といった複数のオブジェクトで構成される。
【0047】
聴覚認識機能部(Audio)52は、マイクなどの音声入力装置を介して入力される音声データを音声認識して、特徴抽出したり、単語セット(テキスト)認識を行ったりする。聴覚認識機能部52は、後述する"AudioRecog","AuthurDecoder"といった複数のオブジェクトで構成される。
【0048】
接触認識機能部(Tactile)53は、例えば機体の頭部などに内蔵された接触センサによるセンサ信号を認識して、「なでられた」とか「叩かれた」という外部刺激を認識する。
【0049】
内部状態管理部(ISM:Internal Status Manager)54は、本能モデルや感情モデルを備え、上述の視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53によって認識された外部刺激(ES:ExternalStimula)に応じてロボット装置1の本能や情動といった内部状態を管理する。
【0050】
感情モデルと本能モデルは、それぞれ認識結果と行動履歴を入力に持ち、感情値と本能値を管理している。行動モデルは、これら感情値や本能値を参照することができる。
【0051】
短期記憶部(ShortTermMemory)55は、上述の視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53によって外部環境から認識されたターゲットやイベントを短期間保持する機能モジュールである。例えば、カメラからの入力画像を約15秒程度の短い期間だけ記憶する。
【0052】
長期記憶部(LongTermMemory)56は、物の名前など学習により得られた情報を超期間保持するために使用される。長期記憶部56は、例えば、ある行動モジュールにおいて外部刺激から内部状態の変化を連想記憶する。
【0053】
ロボット装置1の行動制御は、反射行動部59によって実現される「反射行動」と、状況依存行動階層58によって実現される「状況依存行動」と、熟考行動階層57によって実現される「熟考行動」に大別される。
【0054】
熟考行動階層(DeliberativeLayer)57は、短期記憶部55並びに長期記憶部56の記憶内容に基づいて、ロボット装置1の比較的長期にわたる行動計画などを行う。
【0055】
熟考行動は、与えられた状況あるいは人間からの命令により、推論やそれを実現するための計画を立てて行われる行動である。このような推論や計画は、インタラクションを保つための反応時間よりも処理時間や計算負荷を要するので、ロボット装置1は反射行動や状況依存行動をリアルタイムで反応を返しながら行い、熟考行動を推論や計画を立てて行う。
【0056】
状況依存行動階層(SBL:SituatedBehaviorsLayer)58は、短期記憶部55並びに長期記憶部56の記憶内容や、内部状態管理部54によって管理される内部状態を基に、ロボット装置1が現在置かれている状況に即応した行動を制御する。
【0057】
状況依存行動階層58は、各行動毎にステートマシンを用意しており、それ以前の行動や状況に依存して、センサ入力された外部情報の認識結果を分類して、行動を機体上で発現する。また、状況依存行動階層58は、内部状態をある範囲に保つための行動(「ホメオスタシス行動」とも呼ぶ)も実現し、内部状態が指定した範囲内を越えた場合には、その内部状態を当該範囲内に戻すための行動が出易くなるようにその行動を活性化させる(実際には、内部状態と外部環境の両方を考慮した形で行動が選択される)。状況依存行動は、反射行動(後述)に比し、反応時間が遅い。
【0058】
熟考行動階層57や状況依存行動階層58は、アプリケーションとして実装することができる。
【0059】
反射的行動部(ConfigurationDependentActionsAndReactions又はReflexive SBL)59は、上述の視覚認識機能部51と、聴覚認識機能部52と、接触認識機能部53によって認識された外部刺激に応じて反射的な機体動作を実現する機能モジュールである。
【0060】
反射行動は、基本的に、センサ入力された外部情報の認識結果を直接受けて、これを分類して、出力行動を直接決定する行動である。例えば、人間の顔を追いかけたり、うなずくといった振る舞いは反射行動として実装することが好ましい。
【0061】
本実施形態に係るロボット装置1では、短期記憶部55が、上述した視覚認識機能部51、聴覚認識機能部52、接触認識機能部53などの複数の認識器の結果を時間的及び空間的に整合性を保つように統合して、外部環境下の各物体に関する知覚を短期間の記憶として状況依存行動階層(SBL)58などに提供するようになっている。また、センサ入力された外部情報の認識結果を直接、反射行動部(Reflexive SBL)59に提供するようになっている。
【0062】
したがって、上位モジュールとして構成される行動制御モジュール側では、外界からの複数の認識結果を統合して意味を持ったシンボル情報として扱い、高度な行動制御を行うことができる。また、以前に観測された認識結果との対応問題などより複雑な認識結果を利用して、どの肌色領域が顔でどの人物に対応しているかや、この声がどの人物の声なのかなどを解くことができる。
【0063】
また、認識した観測結果に関する情報を記憶として短期記憶部55が保持しているので、自律行動する期間中に一時的に観測結果が来なかったりした場合であっても、機体の行動制御を行うアプリケーションなどの上位モジュールからは常にそこに物体が知覚されているように見えるようにすることができる。例えば、センサの視野外の情報もすぐに忘れることなく保持しているので、ロボットが物体を一旦見失ったとしても、また後で探し出すことができる。この結果、認識器間違いやセンサのノイズに強くなり、認識器の通知のタイミングに依存しない安定したシステムを実現することができる。また、認識器単体から見て情報が足りなくても、他の認識結果が補うことができる場合があるので、システム全体としての認識性能が向上する。
【0064】
また、関連する認識結果が結び付けられているので、アプリケーションなどの上位モジュールで関連する情報を使って行動判断することが可能である。例えば、ロボット装置は、呼び掛けられた声を基に、その人物の名前を引き出すことができる。この結果、挨拶の応答に「こんにちは、XXXさん。」のように答えるなどのリアクションが可能である。
【0065】
このような行動制御システム50を適用し、このロボット装置1は、上述したように、センサーフュージョンを行う短期記憶部55の情報を用いて、注視行動の対象物情報から対象物に関する属性情報をセンシングした適切なセンサ情報を選択して、対象物に対して注視行動を行う。上位のコマンドからは、センサーフュージョンに使われるID(対象物ID)を指定するだけで、注視動作モジュールが自動的に最適なセンサ情報を選択する。
【0066】
図5には、行動制御システムに含まれる注視行動制御システム70を構成する各モジュールを示す。
【0067】
色検出器71は、色検出を行うモジュールであり、カメラなどの画像入力装置から画像データを受け取り、あらかじめ持っている複数のカラー・モデルに基づいて色を抽出し、連続した色領域に分割する。分割された各色領域の位置や大きさ、特徴量などの色情報(ColorInfo)は短期記憶部(ShortTermMemory)75及び後述する首部動作生成部(HeadMotionGenerator:HMG)77に対象物の属性情報の一つとして送られる。
【0068】
音検出器72は、音声の検出を行うモジュールであり、マイクなどの音声入力装置からの音声データを受け取って、音声認識を行うだけでなく、その音の方向を検出する。音の方向の検出は、マイクがステレオである場合に、水平方向の音源方向推定を行うことにより可能である。ここで検出された音情報(SoundInfo)は短期記憶部75及び後述する首部動作生成部77に対象物に関する属性情報の一つとして送られる。
【0069】
顔検出器73は、画像フレーム中から顔領域を検出するモジュールであり、カメラなどの画像入力装置から画像データを受け取り、それを9段階のスケール画像に縮小変換する。このすべての画像の中から顔に相当する矩形領域を探索する。重なりあった候補領域を削減して最終的に顔と判断された領域に関する位置や大きさ、特徴量などの顔情報(FaceInfo)を検出する。ここで検出された顔情報は短期記憶部75へ送られる。
【0070】
関節角度検出部74は、ロボット装置1の脚部や、首部や腕部等の各関節の関節角度の現在値(センサ出力)を検出する。ここで検出された関節角度のセンサ出力は短期記憶部75及び首部動作生成部77に送られる。
【0071】
短期記憶部75は、ロボット装置1の外部環境に関する情報を比較的短い時間だけ保持するオブジェクトであり、音検出部72から音(声)検出結果、色検出部71から色検出結果、また顔検出部73から顔検出結果、さらには関節角度検出部74から関節角度のセンサ出力を受け取る。そして、これらの複数の検出情報を時間的及び空間的に整合性を保つように統合して、意味を持った統合情報として扱い、比較的短い時間、例えば15秒間保持する。これらの統合情報は、動作命令部76及び首部動作生成部77に渡される。
【0072】
動作命令部76は、前述した状況依存行動層等の上位モジュールである。首部動作生成部77に対して首部の動作を指示するコマンドを発現する。本発明では、短期記憶部75にて保存されている統合情報に関するID(対象物ID)を指定することによって、すなわち、何に対してトラッキングするのかを指定するだけでロボット装置1にトラッキング動作を行わせるものである。
【0073】
首動作生成部77は、動作命令部76から首を動かすコマンドを受けたことに応答して、首の関節角を計算するモジュールである。「追跡」(本実施の形態では前記対象物ID)のコマンドを受けたときには、短期記憶部75から受け取った情報を基に、その物体が存在する方向を向く首の関節角を計算して出力する。前記対象物IDを受け取り、最適な対象物情報を選択して、その選択した対象物情報が得られる方向を向くことになる。
【0074】
次に、ロボット装置1がAさんの顔にトラッキングするという実施例を説明する。図6においてロボット装置1は、CCDセンサー等よりなるPSDセンサ80にて得た情報に基づいてAさんの顔85にトラッキングをしようとしている。Aさんの顔85の近くには肌色のボール87がある。
【0075】
設定された状況について図7を用いて説明する。
時間Time(frameNumber)は、0からスタートして1づつインクリメントされている。その中で、30フレーム毎に取得した画像に顔が見え、10フレーム毎に顔の肌色の領域が検出され、50フレームのときには“こんちには”という声が聞こえる、という状況である。そして、最初の30フレームのときにAさんの顔が見えたので、トラッキングコマンドを実行しようとするところである。
【0076】
このような状況設定の中での、前記顔検出器73、色検出器71、音検出器72、短期記憶部75、動作命令部76、首部動作生成部77の詳細な動作について以下に説明する。
【0077】
先ず、顔検出器73は、テンプレートマッチングの一般的な検出アルゴリズムを適用して対象物に関する属性情報の一つである顔情報FaceInfoを生成する。ここでは、図8に示すように、時刻tのフレームの顔画像を見て、顔情報を検出している。顔検出結果は、
FaceRecogResult=(frameNumber,faceID,gravity point(x,y),sizeX,sizeY,c.m.)
で表される。ここで、frameNumberは、ロボット装置のシステム内の時間(絶対時間)を示すので画像にもこのframeNumberが付く。gravity point(x,y)は顔画像の重心の座標である。sizeX,sizeYは、顔画像のX軸上のサイズ、Y軸上のサイズである。c.m.は、confidence measureは、顔認識の確かさ(信頼度)を表すものである。
【0078】
この顔認識の確かさ(信頼度)c.m.は、例えばテンプレートの画素数nのうち、マッチした画素数を(nmatch )として次式により算出できる。
c.m.=nmatch/n
したがって、前記図7における、30フレーム目の画像の顔検出結果信号は、例えばFaceRecogResult(30,human-A,x1,y1,sizex1,sizey1,0.3)となる。
【0079】
次に、色検出器71は、設定された色空間(ここでは肌色の色空間)にマッチングする領域を抜き出すという色検出アルゴリズムを適用して対象物の属性情報の一つである色検出結果信号を生成する。
【0080】
画像上の画素P(x,y)は図9に示すように色情報(y,u,v)の値を各々持っている。ここから、肌色(SKIN)に設定された色空間にマッチする領域の中心とその大きさを検出する。
【0081】
画素の色空間が, 8ビットで表現されるとすると、図9に示すように、0≦y≦255, 0≦u≦255, 0≦v≦255で表現されるので、空間指定の方法は、図10に各y平面における色領域で示すように、(u1,v1),(u2,v2)で定義される長方形と定義できる。
ここで、Color[y][0]=u1;
Color[y][1]=v1;
Color[y][2]=u2;
Color[y][3]=v2;
である。したがって、色空間colorは、Color[256][4]として定義できる。
【0082】
次に、図11、図12及び図13を参照して複数の色領域検出アルゴリズムについて説明する。
画像上の画素の位置をP(x0,x1)とし、yuvデータをCu(x0,x1),Cv(x0,x1),Cy(x0,x1)とすると、色空間のフィルターを通した後の画像のデータ(設定された色空間にマッチする場合には1,そうでない場合には0となる)Q(x0,x1)は、
となる。
【0083】
色照合画像(0)において、各(x0,x1)でマッチしている(Q(x0,x1)=1)場合、その周辺の画素がマッチしているかを探索し、マッチしている場合には、同一領域とみなす。
【0084】
画素(X,Y)についての条件は、
(Q(X+1,Y)==1‖Q(X-1,Y)==1‖Q(X,Y+1)==1‖Q(X,Y-1)==1‖
Q(X+1,Y+1)==1‖Q(X+1,Y-1)==1‖Q(X-1,Y+1)==1‖Q(X-1,Y-1)==1)
と表せる。これを図11の色照合画像(0)に対してフィルタリングすると、図12の色照合画像(1)と図13の色照合画像(2)が得られる。
【0085】
色検出信号は、色検出結果に、色空間idを付加したものであり、以下の式によって表される。
ColorDetectResult(id,color,centerX,centerY,sizeX,sizeY)
ここで、idはシリアル番号、colorはセグメントに使用する色空間を示す。したがって、colorは顔であれば、肌色領域(この例では、SKIN)になる。また、centerX,centerYは、色検出領域における重心座標を示す。また、sizeX,sizeYは、色検出領域のサイズを示す。
【0086】
前記色照合画像(1)、(2)のそれぞれについて、centerとsizeXとsizeYを算出し、色検出信号ColorDetectResult=(id,color,centerX,centerY,sizeX,sizeY)を求める。
【0087】
すると、色照合画像(1)の色検出領域における色検出信号は、idを10とすると、
ColorDetectResult[0]=(10,“SKIN”,3,4,3,3)となる。
【0088】
また、色照合画像(2)の色検出領域における色検出信号は、idを11とすると、
ColorDetectResult[0]=(11,“SKIN”,6,8,3,3)となる。
【0089】
そして、前述のように検出された色検出領域における前記色検出信号を色検出モジュールで格納しておき、フレーム間でオーバーラップ(Overlap)する領域が大きい場合には、同一のものが移動したと考え、同一のidをナンバリング(numbering)する。例えば、図14に示すように新しく検出した色検出領域newとOld(id=10)の色検出領域とのオーバーラップOverlap領域の面積Soverlapがある閾値Sthresouldよりも大きいならば新しい色検出領域newの色検出信号のIDnewはidoldと同じとする。すなわち、Soverlap>Sthresouldならば、IDnew=idoldとする。
【0090】
前記図7に示した状況では、10フレーム毎に顔の肌色の領域が検出される。このように所定数のフレーム毎に検出される色検出領域における色検出結果信号ColorSegmentResultを、ここでは、(frameNumber,id,x,y,sizeX,sizeY,c.m.)のように示す。c.m.(Confidence measure)は色認識の信頼度である。算出結果は後述する。なお、同一画像中での複数の肌色領域の検出アルゴリズムは前述した通りである。
【0091】
したがって、図15に示すように、10フレーム毎の画像における二つの色検出領域の色検出結果信号は、idを1,2とした場合、
ColorSegmentResult(10,1,x2,y2,sizex2,sizey2,0.8)
ColorSegmentResult(10,2,x3,y3,sizex3,sizey3,0.8)
となる。
【0092】
なお、色認識の信頼度の算出は、複数の同一色検出領域、例えば肌色領域を検出した場合に、その数で割る方法がある。よって、c.m.=1/(画像に含まれる同一色領域)となる。
次に、音検出器72は、マイクなどの音声入力装置からの音声データを受け取って、音声認識(声検出)を行う。このため、音検出器72は、ArthurDecoderを備え、音声特徴量と音声辞書及び構文辞書を使って音声認識を行う。また、音検出器72は、音声認識だけでなく、その音の方向、すなわち音源方向を検出する。音源方向の検出は、マイクがステレオである場合に得られる図16のようなRigt micからの出力レベルRと、Left micからの出力レベルLとの時間差から水平方向の音源方向推定を行うことにより可能である。ここで検出された音検出信号は短期記憶部75及び後述する首部動作生成部77に送られる。
【0093】
この音源方向の検出アルゴリズムは一般的な方法である。以下に音検出アルゴリズムの具体例を説明する。
図17において音源Ssからの音速をv[m/s]、左右のマイクロホンにおける時間差をt[s]とすると、左右の音の経路差uは、tv[m]となる。そこで、φ=θと近似し、首部中心oからマイクまでの距離をa[m]とすると、
cosθ=a/(tv)となり、θ=cos−1(a/(tv))となる。
【0094】
よって、音声認識の結果(word)と音源方向(θ)とを合わせた声の検出結果は、SoundRecogResult(frameNumber,word,θ,c.m.)となる。ここでのc.m.は、声認識の信頼度を示すものである。詳細については後述する。
【0095】
したがって、前記図7の状況で、50フレーム目の音検出結果は、
SoundRecogResult(50,“OHAYO”,30度,0.9)
となる。
【0096】
声認識の信頼度c.m.は、以下のようにして得られる。すなわち、サンプリング(ここでは、50フレーム(1フレーム5msec)分の周波数領域(10kHz-7kHz)の平均パワーとそれまでの最大値max値に応じて算出する。80%以上なら、0.8に応じて算出する。
【0097】
すなわち、Pcurrent=Σpframe/50とし、もし平均パワーPcurrentがそれまでのパワーの最大値Pmaの80%以上なら前記信頼度c.m.は0.8となる。また、平均パワーPcurrent&&Pcurrenが最大値Pmaの50%以上であり、かつ最大値Pmaの80%より小さいなら前記信頼度c.m.は0.5となる。さらにまた、Pcurrent&&Pcurrenが最大値Pmaの30%以上であり、かつ最大値Pmaの50%より小さいなら前記信頼度c.m.は0.3となる。
【0098】
以下に前記信頼度c.m.の決定アルゴリズムを式にて示す。
If(Pcurrent>=Pmax*0.8)
c.m.=0.8
elseIf(Pmax*0.5<=Pcurrent&&Pcurrent<Pmax*0.8)
c.m.=0.5
Else if(Pmax*0.3<=Pcurrent&&Pcurren<Pmax*0.5)
c.m. = 0.3
となる。
【0099】
次に、短期記憶部75は、前述したようにロボット装置1の外部環境に関する情報、すなわち、音検出部72から音(声)検出結果、色検出部71から色検出結果、また顔検出部73から顔検出結果、さらには関節角度検出部74から関節角度のセンサ出力を受け取る。そして、これらの複数の検出結果を時間的及び空間的に整合性を保つように統合して、意味を持った統合情報として扱い、比較的短い時間、例えば15秒間保持する。
【0100】
短期記憶部75にて保持する短期記憶情報は、
ShortTermMemory(targetID,sensorType,id,data,更新したframeNumber,c.m.)
という情報の配列になる。ここで、sensorTypeは、顔認識結果、色検出結果、声検出結果を表す。
【0101】
図18には、短期記憶部75が動作する様子を模式的に示している。同図に示す例では、顔の認識結果(FACE)と音声認識、及び、その音源方向の認識結果(VOICE)が別々のタイミングで処理されて、短期記憶部75に通知されたときの動作を表している(但し、ロボット装置1の機体を原点とする極座標系で描かれている)。この場合、各認識結果faceとvoiceは時間的にも空間的に近い(オーバーラップしている)ことから、顔の属性と音声の属性を持った1つの物体であると判断して、検出器の情報を統合して、現在認識している物体をメモリに記憶として保持する。
【0102】
短期記憶部75内には、外部環境からターゲットを検出するターゲット検出器が設けられている。このターゲット検出器は、顔の認識結果や音声認識結果、色認識結果などの各検出器71,72及び73による検出(認識)結果を基に、新規ターゲットを追加したり、既存のターゲットを認識結果に反映するように更新したりする。検出されたターゲットは、図示しないターゲット・メモリ内に保持される。
【0103】
また、ターゲット・メモリには、もはや観測されなくなったターゲットを探して消去するガーベッジ・コレクタ(GarbageCollector)や、複数のターゲットの関連性を判別して同じターゲットに結び付けるターゲット・アソシエート(TargetAssociate)などの機能がある。ガーベッジ・コレクタは、時間の経過に従ってターゲットの確信度をデクリメントしていき、確信度が所定値を下回ったターゲットを削除(delete)することで実現される。また、ターゲット・アソシエートは、同じ属性(認識タイプ)の特徴量が近いターゲット間で空間的・時間的な近さをもつことで、同じターゲットを同定することができる。
【0104】
次に、前記図6に示したように、Aさんの顔85の近くに肌色のボール87があるとき、ロボット装置1がCCDセンサーよりなるPSDセンサ80にて得た情報に基づいてAさんの顔85にトラッキングをしようという実施例における、短期記憶部75の一連の処理の具体例について図19〜図23を用いて説明する。
【0105】
この場合、図7に示した状況設定に基づけば、29フレーム目までは図19に示すように色検出器71による色検出のみである。そして、色検出器71から送信されてきた色検出結果信号ColorSegmentResult(29,1,x2,y2,sizex2,sizey2,0.8)を前記ターゲット検出器が検出する。ここで、短期記憶部75は、肌色のボール87を肌色物体として検出した肌色領域(id=1)をtargetID=0の短期記憶情報ShortTermMemoryとし、
ShortTermMemory(0,“COLOR”,1,“SKIN_COLOR”,20,0.8)
として前記ターゲットメモリに記憶する。前述したように、ShortTermMemoryは(targetID,sensorType,id,data,更新したframeNumber,c.m.)という配列であるので、29フレーム目までに記憶される短期記憶情報は、targetIDが0の、色検出結果“COLOR”の、id=1の、肌色領域“SKIN_COLOR”の、更新したframeNumberが20の、認識信頼度0.8の情報である。
【0106】
また、この29フレーム目までに短期記憶部75は、Aさんの顔85についても、肌色物体として検出した肌色領域(id=2)をtargetID=1の短期記憶情報ShortTermMemoryとし、
ShortTermMemory(1,“COLOR”,2,“SKIN_COLOR”,20,0.8)
として前記ターゲットメモリに記憶する。
【0107】
次に、30フレーム目になると、短期記憶部75は、色検出器71の色検出結果から短期記憶情報を、
ShortTermMemory(0,“COLOR”,1,“SKIN_COLOR”,30,0.8)
ShortTermMemory(1,“COLOR”,2,“SKIN_COLOR”,30,0.8)
として前記ターゲットメモリに記憶する。
【0108】
この30フレーム目において顔検出器73は顔検出を行う。例えば、図20に示すように、顔検出結果FaceRecogResult(30,human-A,x1,y1,sizex1,sizey1,0.3)が、targetID=1の肌色領域にオーバーラップする方向に検出されると、短期記憶部75は、
ShortTermMemory(1,“FACE”,A-san,“”,30,0.3)
を、targetID=1に統合する。
【0109】
そして、図21に示すように50フレーム目までにおいて短期記憶部75は、ShortTermMemory(0,“COLOR”,1,“SKIN_COLOR”,30,0.8)
ShortTermMemory(1,“COLOR”,2,“SKIN_COLOR”,30,0.8)
ShortTermMemory(1,“FACE”,A-san,“”,30,0.3)
をターゲットメモリ部に記憶する。
【0110】
次に、50フレーム目になると図22に示すように音検出器72が音声をθ=30度の方向から肌色物体の肌色領域とオーバーラップする領域を大として検出し、音声検出結果、
SoundRecogResult(50,“OHAYO”,30度,0.9)
を短期記憶部75に送信する。
【0111】
短期記憶部75は、ターゲット検出器にて前記音声検出結果を検出し、図23に示す51フレーム目において、短期記憶情報、
ShortTermMemory(1,“SOUND”,1,“OHAYO”,50,0.9)
を、targetID=1に統合する。
【0112】
この時点で、短期記憶部75は、
ShortTermMemory(0,“COLOR”,1,“SKIN_COLOR”,50,0.8)
ShortTermMemory(1,“COLOR”,2,“SKIN_COLOR”,50,0.8)
ShortTermMemory(1,“FACE”,A-san,“”,30,0.3)
ShortTermMemory(1,“SOUND”,1,“OHAYO”,50,0.9)
をターゲットメモリ部に記憶する。
【0113】
このように、短期記憶部75は、画像情報については、そのセンシングされた時間と画像上の位置から、そのときの首の角度情報から首中心座標における位置を算出し、その方向情報を得る。また、音声情報についても、そのセンシングされた時間と音のした角度情報から首中心座標系における位置を算出する。
【0114】
そののち、これらの情報が既存の情報のまとまり(targetID)にマッチングされるか否かを検出し、マッチングできない場合には、新しいtargetIDを作成する。
【0115】
ところで、前記図5に示した注視行動制御部70において動作命令部76は、短期記憶部75のクライアントであり、ターゲット・メモリからは各ターゲットに関する情報の通知(Notify)を受け取る。そして、動作命令部76は、以下に示すようにしてtargetIDを探索し、コマンドを首部動作生成部77に送る。
【0116】
動作命令部76は全ての短期記憶情報ShortTermMemory()のtargetIDについて、sensorTypeが“FACE”でかつidが“A-san”を、
IF(sensorType==“FACE”&& id==“A-san”)
の条件で探索する。
上記条件にマッチした探索結果が得られたら、コマンドを送信する。一度コマンドを送信したら、targetIDが短期記憶情報からなくなるまで待つ。
【0117】
すなわち、図24に処理手順を示すように、動作命令部76はトラッキングコマンドを送信済みである(ステップS1にてYes)と、ステップS2に進み、トラッキングコマンドの基になったtargetIDが最新の短期記憶情報に存在するか否かをチェックし、もし存在するのであればステップS1からの処理を繰り返す。ここで、最新の短期記憶情報に前記targetIDが存在しないのであればステップS3に進んでトラッキング停止のアクションコマンドを首部動作生成部77に送信する。もし、ステップS1にてトラッキングコマンドを送信済みでないと判定するとステップS4に進み、短期記憶情報の中に上述したようにsensorTypeが“FACE”でかつidが“A-san”のtargetIDがあるか否かをチェックする。ここで、そのようなtargetIDが無いのであれば(NO)ステップS5に進んで新しいtargetIDを短期記憶部75に格納し、アクションコマンドを送信する。一方、ステップS4にて短期記憶情報の中に上述したようなsensorTypeが有る(YES)のであればステップS1に戻る。
【0118】
ここで、動作命令部76から首部動作生成部77に送信される動作命令信号(コマンド)は、
ActionCommand(COMMAND,targetID)となる。この具体例では、短期記憶部75からframeNumber=30のデータを受信したときにActionCommand(“Tracking”,1)を送信する。
【0119】
次に、動作命令部76から前記動作命令信号を受信し、注視行動(トラッキング)を行う首動作生成部77の詳細な構成及び動作について図25を参照しながら説明する。首部動作生成部77は、動作命令解釈器771と、目標対象物情報選択器772と、目標情報受信器773と、目標位置検出器774と、目標関節角度生成器775からなる。
【0120】
動作命令解釈器771は、動作命令生成部76から送られてくる前記動作命令信号を受信する。目標対象物情報選択器772は、動作命令信号に付随して受信する動作対象物情報をためておく。目標情報受信器773は、目標対象物情報選択器772からトラッキング動作用センサ情報信号を受信し、目標情報を取得する。目標位置検出器774は、目標情機受信器773から目標情報信号を受信し、さらに関節角度検出部74から関節角度信号を受信する。目標関節角度生成器775は、目標位置検出器774から目標位置信号を受信する。
【0121】
以下に、首部動作生成部77の動作の詳細について図26〜図29を用いて説明する。動作命令解釈器771は、コマンドが首関節の向きを指定するものなのか、それともある目標IDを追従するためのコマンドなのかを判断する。ここでいう目標IDは、短期記憶のtargetIDに一致する。ここで、首関節の向きを指定するものの場合には、図26のように直接目標関節角度生成器775に送信される。
【0122】
目標対象物選択器772は、図27に示すように、短期記憶部75で生成されるtargetIDとセンサ情報が関連付けられた情報、つまり図示するような、
ShortTermMemory(0,“COLOR”,1,“SKIN_COLOR”,30,0.8)
ShortTermMemory(1,“COLOR”,2,“SKIN_COLOR”,30,0.8)
ShortTermMemory(1,“FACE”,A-san,“”,30,0.3)
を受信し、データベースに保持しており、動作命令解釈器771から送信された信号(targetID=1)に基づいてtargetIDに関する最新の情報を保持する。また、保持しているtargetIDに関する情報が短期記憶部75から更新された場合にも動作し、トラッキング動作用センサ情報信号(useTrackingInfo=color)を目標情報受信器773に送信する。
【0123】
目標情報受信器773は、図28に示すように、目標対象物情報選択器772からのトラッキング動作用センサ情報信号(useTrackingInfo=color)によって、決定されたセンサ情報を用いて、音もしくは、色信号の情報からトラッキング動作に使用するセンサ情報を選択する。
【0124】
目標位置検出器774は、図29に示すように、センサ情報に付随するframeNumberから、そのときの関節角度を算出し、目標関節角度生成器775に渡す。目標関節角度生成器775は、目標情報受信器773からのセンサ情報と目標位置検出器774からの関節角度から目標の関節角度を生成して動作命令実行部80に送信する。
【0125】
動作命令実行部80では、首部動作生成部77の目標関節角度生成器775にて生成された目標関節角度信号に従い、ロボットのアクチュエータを制御し、ロボット装置1をトラッキング動作させる。
【0126】
このように、動作命令生成部76が短期記憶部75で付けられたtargetIDを前記動作命令信号ActionCommandに、(COMMAND,targetID)のように付けるだけで、目標対象物情報選択器772がセンサの状況に応じた最適なトラッキングに使用するセンサ情報を選択し、そして目標情報受信器773がトラッキング動作用センサ情報信号によってトラッキング動作に使用するセンサ情報を受信し、目標関節角度生成器775に送る。目標関節角度生成器775は、前記センサ情報に付随するframeNumberから算出された関節角度も供給されており、この関節角度と前記センサ情報とから目標の関節角度を生成して動作命令実行部80に送信する。
【0127】
注視行動制御システム70にあって、動作命令生成部76は、何に対してトラッキングするのかを指定するだけで、首動作生成部77はトラッキングを行うことができる。
【0128】
【発明の効果】
本発明に係るロボット装置は、統合情報生成記憶手段が複数の認識手段によって認識された各属性情報を受け取り、対象物毎に時間的及び空間的に整合性を保つように統合し、識別番号を付して記憶し、動作命令生成手段が前記統合情報生成記憶手段に記憶されている前記対象物の統合情報から、注視の対象となる所定動作生成手段が対象物の統合情報を探索して対象物の識別番号に基づいた動作命令を生成し、動作生成手段が前記動作命令生成手段から前記対象物の識別番号に基づいた動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶手段から受信して、注視行動に使用する属性情報を選択して注視行動のための制御信号を生成するので、動作命令生成部(上位モジュール)では、何に対して注視するのかを指定するだけでトラッキングが可能となる。
【0129】
本発明に係るロボット装置の制御方法は、統合情報生成記憶工程が複数の認識手段によって認識された各属性情報を受け取り、対象物毎に時間的及び空間的に整合性を保つように統合し、識別番号を付して記憶し、動作命令生成工程が前記統合情報生成記憶工程に記憶されている前記対象物の統合情報から、注視の対象となる所定動作生成工程が対象物の統合情報を探索して対象物の識別番号に基づいた動作命令を生成し、動作生成工程が前記動作命令生成工程から前記対象物の識別番号に基づいた動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶工程から受信して、注視行動に使用する属性情報を選択して注視行動のための制御信号を生成するので、ロボット装置の動作命令生成部(上位モジュール)では、何に対して注視するのかを指定するだけでトラッキングが可能となる。
【図面の簡単な説明】
【図1】ロボット装置の外観斜視図である。
【図2】ロボット装置の関節自由度を示す模式図である。
【図3】ロボット装置の制御システム構成を模式的に示す図である。
【図4】ロボット装置の行動制御システムの基本アーキテクチャを示す図である。
【図5】注視行動制御システムを構成する各モジュールを示す図である。
【図6】ロボット装置がAさんの顔にトラッキングするという実施例を示す図である。
【図7】ロボット装置がAさんの顔にトラッキングするという実施例の状況設定を説明するための図である。
【図8】顔検出器の検出アルゴリズムを説明するための図である。
【図9】色空間を示す図である。
【図10】平面における色領域を示す図である。
【図11】色照合画像(0)を示す図である。
【図12】色照合画像(1)を示す図である。
【図13】色照合画像(2)を示す図である。
【図14】新しく検出した色検出領域newとOld(id=10)の色検出領域とのオーバーラップOverlap領域を示す図である。
【図15】10フレーム毎の画像における二つの色検出領域を示す図である。
【図16】音源方向の検出について説明するための図である。
【図17】音源方向の検出について説明するための図である。
【図18】短期記憶部が動作する様子を模式的に示す図である。
【図19】前記図7に示した状況設定における、短期記憶部が動作する29フレーム目までを示す図である。
【図20】前記図7に示した状況設定における、短期記憶部が動作する30フレーム目を示す図である。
【図21】前記図7に示した状況設定における、短期記憶部が動作する50フレーム目までを示す図である。
【図22】前記図7に示した状況設定における、短期記憶部が動作する50フレーム目を示す図である。
【図23】前記図7に示した状況設定における、短期記憶部が動作する51フレーム目を示す図である。
【図24】動作命令部の処理手順を示す図である。
【図25】首動作生成部の詳細な構成を示す図である。
【図26】首動作生成部の動作の詳細を説明するための図である。
【図27】首動作生成部の動作の詳細を説明するための図である。
【図28】首動作生成部の動作の詳細を説明するための図である。
【図29】首動作生成部の動作の詳細を説明するための図である。
【符号の説明】
1 ロボット装置、70 注視行動制御システム、71 色検出器、72 音検出器、73 顔検出器、74 関節角度検出器、75 短期記憶部、76 動作命令部、77 首動作生成部
Claims (2)
- 外部環境に対する認識結果に基づいて自律的に対象物をトラッキングする自律型のロボット装置において、
前記外部環境に存在する対象物に関する属性情報を認識する複数の認識手段と、
前記複数の認識手段によって認識された各属性情報を受け取り、時間的及び空間的な所定の範囲における該認識された各属性情報を対象物毎に整合するように対応付け、識別番号を付して記憶する統合情報生成記憶手段と、
前記統合情報生成記憶手段に記憶されている前記対象物の統合情報から、トラッキングの対象となる所定の対象物の統合情報を探索して、前記識別番号によって特定される対象物へのトラッキング行動に関する動作命令を生成する動作命令生成手段と、
前記動作命令生成手段から前記動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶手段から受信し、該動作命令と該識別番号とを対応させることによって、該識別番号に基づいて選択されたトラッキング行動に使用する属性情報により、トラッキング行動の動作をさせる動作生成手段とを備え、
前記統合情報生成記憶手段は、前記複数の認識手段のうちの少なくとも二つの認識手段からの各認識結果が時間的及び空間的な所定の範囲において近いときには、同一の対象物から認識された属性情報であるとし、同じ識別番号を付した統合情報として記憶し、前記複数の認識手段のうちの一の認識手段からの時間的な所定の範囲における、前記対象物の属性情報に対する新たな認識結果が前回の認識結果とマッチングしないときには、該新たな認識結果を新たな対象物の属性情報として識別符号を付して記憶するロボット装置。 - 外部環境に対する認識結果に基づいて自律的に対象物をトラッキングする自律型のロボット装置の制御方法において、
前記外部環境に存在する対象物に関する属性情報を認識する複数の認識手段によって認識された各属性情報を受け取り、時間的及び空間的な所定の範囲における該認識された各属性情報を対象物毎に整合するように対応付け、識別番号を付して記憶する統合情報生成記憶工程と、
前記統合情報生成記憶工程にて記憶された前記対象物の統合情報から、トラッキングの対象となる所定の対象物の統合情報を探索して、前記識別番号によって特定される対象物へのトラッキング行動に関する動作命令を生成する動作命令生成工程と、
前記動作命令生成工程から前記動作命令を受け取ると、前記対象物の識別番号が付された統合情報を前記統合情報生成記憶工程から受信し、該動作命令と該識別番号とを対応させることによって、該識別番号に基づいて選択されたトラッキング行動に使用する属性情報により、トラッキング行動の動作をさせる動作生成工程とを備え、
前記統合情報生成記憶工程では、前記複数の認識手段のうちの少なくとも二つの認識手段からの各認識結果が時間的及び空間的な所定の範囲において近いときには、同一の対象物から認識された属性情報であるとし、同じ識別番号を付した統合情報として記憶し、前記複数の認識手段のうちの一の認識手段からの時間的な所定の範囲における、前記対象物の属性情報に対する新たな認識結果が前回の認識結果とマッチングしないときには、該新たな認識結果を新たな対象物の属性情報として識別符号を付して記憶するロボット装置の制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002075144A JP4281286B2 (ja) | 2002-03-18 | 2002-03-18 | ロボット装置及びその制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002075144A JP4281286B2 (ja) | 2002-03-18 | 2002-03-18 | ロボット装置及びその制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003266348A JP2003266348A (ja) | 2003-09-24 |
JP4281286B2 true JP4281286B2 (ja) | 2009-06-17 |
Family
ID=29204331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002075144A Expired - Fee Related JP4281286B2 (ja) | 2002-03-18 | 2002-03-18 | ロボット装置及びその制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4281286B2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005148915A (ja) * | 2003-11-12 | 2005-06-09 | Noritsu Koki Co Ltd | 適正顔判別方法及びこの方法を実施する装置 |
JP4373903B2 (ja) | 2004-12-14 | 2009-11-25 | 本田技研工業株式会社 | 自律移動ロボット |
JP4204541B2 (ja) | 2004-12-24 | 2009-01-07 | 株式会社東芝 | 対話型ロボット、対話型ロボットの音声認識方法および対話型ロボットの音声認識プログラム |
JP6690626B2 (ja) * | 2017-10-31 | 2020-04-28 | 株式会社安川電機 | ロボットシステムおよびロボットの退避方法 |
WO2019123769A1 (ja) * | 2017-12-19 | 2019-06-27 | ソニー株式会社 | 肢ユニット、および、ロボット |
EP3739415A4 (en) * | 2018-01-09 | 2021-03-03 | Sony Corporation | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND PROGRAM |
JP2020017206A (ja) | 2018-07-27 | 2020-01-30 | ソニー株式会社 | 情報処理装置、行動決定方法及びプログラム |
CN113329798B (zh) | 2019-01-31 | 2023-04-28 | 索尼集团公司 | 机器人控制装置、机器人控制方法及程序 |
CN116311860A (zh) * | 2023-03-17 | 2023-06-23 | 麦岩智能科技(北京)有限公司 | 一种数据处理方法、装置、电子设备及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0748018A (ja) * | 1993-08-03 | 1995-02-21 | Omori Mach Co Ltd | 物品移載装置用物品検出装置 |
JPH0797059A (ja) * | 1993-09-28 | 1995-04-11 | Toyota Motor Corp | 物体取出装置 |
JP3859371B2 (ja) * | 1998-09-25 | 2006-12-20 | 松下電工株式会社 | ピッキング装置 |
JP2001076151A (ja) * | 1999-09-08 | 2001-03-23 | Denso Corp | 画像情報に含まれる認識対象物の認識方法 |
-
2002
- 2002-03-18 JP JP2002075144A patent/JP4281286B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003266348A (ja) | 2003-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4396273B2 (ja) | ロボット装置及びその制御方法 | |
US7103447B2 (en) | Robot apparatus, and behavior controlling method for robot apparatus | |
JP3714268B2 (ja) | ロボット装置 | |
JP4086024B2 (ja) | ロボット装置及びその行動制御方法 | |
US6493606B2 (en) | Articulated robot and method of controlling the motion of the same | |
JP3855812B2 (ja) | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 | |
JP4239635B2 (ja) | ロボット装置、その動作制御方法、及びプログラム | |
JP2004298977A (ja) | 行動制御装置、行動制御方法及び行動制御プログラム、並びに移動型ロボット装置 | |
EP1541295A1 (en) | Environment identification device, environment identification method, and robot device | |
JP2004110802A (ja) | 環境同定装置、環境同定方法、プログラム及び記録媒体、並びにロボット装置 | |
JP2002301674A (ja) | 脚式移動ロボット及びその運動教示方法、並びに記憶媒体 | |
JP2003266345A (ja) | 経路計画装置、経路計画方法及び経路計画プログラム並びに移動型ロボット装置 | |
JP2002144260A (ja) | 脚式移動ロボット及びその制御方法 | |
JP4281286B2 (ja) | ロボット装置及びその制御方法 | |
JP2003266349A (ja) | 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置 | |
JP4449372B2 (ja) | ロボット装置及びその行動制御方法 | |
JP7238796B2 (ja) | 動物型の自律移動体、動物型の自律移動体の動作方法、およびプログラム | |
JP2003271958A (ja) | 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置 | |
JP2003266352A (ja) | ロボット装置及びロボット装置の制御方法 | |
JP2002205290A (ja) | 脚式移動ロボットの制御装置及び制御方法 | |
JP2005271137A (ja) | ロボット装置及びその制御方法 | |
CN112823083A (zh) | 可配置和交互式的机器人*** | |
JP4506249B2 (ja) | ロボット装置及びその動作比較方法 | |
JP2004299006A (ja) | ロボット装置及びロボット装置による顔認識状況の提示方法 | |
JP2003266364A (ja) | ロボット装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040805 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080701 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080901 |
|
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: 20090224 |
|
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: 20090309 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120327 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |