(57)【要約】【課題】ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に示し、顔認識状況を提示する。【解決手段】目部のカバー部４１０を鏡面とする。使用者の顔部４５０及び胴体部４５１を、カバー部４１０の鏡面の向かって左側に映しているときは、顔を認識していない（図６の（ａ））。使用者の顔部４５０及び胴体部４５１を、バー部４１０の鏡面の向かって右側に映しているときも、顔を認識していない（図６の（ｂ））。しかし、胴体部４５１を鏡面の中央下部に映しているが、頭部を孔部４１２にかけて使用者の目から視認できない状態としたときは、顔を認識している（図６の（ｃ））。つまり、図６の（ｃ）状態は、顔部４５０がロボットのカメラのレンズの視野角内に入っていることを示す。【選択図】  図６
2004299006.tif 000002
【特許請求の範囲】
【請求項１】
小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、
前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、
前記カバー部に鏡面仕上げを施して前記顔認識の提示に用いることを特徴とするロボット装置。
【請求項２】
前記カバー部は、球面の一部をなすプラスチック上にアルミニウム、銀又はクロムを蒸着して形成されることを特徴とする請求項１記載のロボット装置。
【請求項３】
小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置による顔認識状況の提示方法であって、
前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、
前記反射する工程によって顔が前記カバー部に映しだされる状態、又は孔部に入って映しだされない状態を提示し、よって顔認識状況を提示することを特徴とするロボット装置による顔認識状況の提示方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、小型カメラを視覚センサとして有し、外部環境に存在する人間の顔を認識するロボット装置及びロボット装置による顔認識状況の提示方法に関する。
【０００２】
【従来の技術】
電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機械装置のことを「ロボット」という。ロボットの語源は、スラブ語の”ＲＯＢＯＴＡ（奴隷機械）”に由来すると言われている。わが国では、ロボットが普及し始めたのは１９６０年代末からであるが、その多くは、工場における生産作業の自動化・無人化などを目的としたマニピュレータや搬送ロボットなどの産業用ロボット（ｉｎｄｕｓｔｒｉａｌ  ｒｏｂｏｔ）であった。
【０００３】
最近では、イヌやネコ、クマのように４足歩行の動物の身体メカニズムやその動作を模したペット型ロボット、あるいは、ヒトやサルなどの２足直立歩行を行う動物の身体メカニズムや動作を模した「人間形」若しくは「人間型」のロボット（ｈｕｍａｎｏｉｄ  ｒｏｂｏｔ）など、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。
【０００４】
アーム式ロボットのように、ある特定の場所に植設して用いるような据置きタイプのロボットは、部品の組立・選別作業など固定的・局所的な作業空間でのみ活動する。これに対し、移動式のロボットは、作業空間は非限定的であり、所定の経路上または無経路上を自在に移動して、所定の若しくは任意の人的作業を代行したり、ヒトやイヌあるいはその他の生命体に置き換わる種々のサービスを提供することができる。
【０００５】
脚式移動ロボットの用途の１つとして、産業活動・生産活動等における各種の難作業の代行が挙げられる。例えば、原子力発電プラントや火力発電プラント、石油化学プラントにおけるメンテナンス作業、製造工場における部品の搬送・組立作業、高層ビルにおける清掃、火災現場その他における救助といったような危険作業・難作業の代行などである。
【０００６】
また、脚式移動ロボットの他の用途として、上述の作業支援というよりも、生活密着型、すなわち人間との「共生」あるいは「エンターティンメント」という用途が挙げられる。この種のロボットは、ヒトあるいはイヌ（ペット）、クマなどの比較的知性の高い脚式歩行動物の動作メカニズムや四肢を利用した豊かな感情表現を忠実に再現する。また、あらかじめ入力された動作パターンを単に忠実に実行するだけではなく、ユーザ（あるいは他のロボット）から受ける言葉や態度（「褒める」とか「叱る」、「叩く」など）に対して動的に対応した、生き生きとした応答表現を実現することも要求される。
【０００７】
従来の玩具機械は、ユーザ操作と応答動作との関係が固定的であり、玩具の動作をユーザの好みに合わせて変更することはできない。この結果、ユーザは同じ動作しか繰り返さない玩具をやがては飽きてしまうことになる。
【０００８】
これに対し、自律動作を行うインテリジェントなロボットは、一般に、外界の情報を認識してそれに対して自身の行動を反映させる機能を持っている。すなわち、ロボットは、外部環境からの音声や画像、触覚などの入力情報に基づいて感情モデルや本能モデルを変化させて動作を決定することにより、自律的な思考及び動作制御を実現する。すなわち、ロボットが感情モデルや本能モデルを用意することにより、より高度な知的レベルで人間とのリアリスティックなコミュニケーションを実現することも可能となる。
【０００９】
ロボットが環境変化に応じた自律動作を行うために、従来は、ある１つの観測結果に対してその情報を受けて行動を取るような単純な行動記述の組み合わせで行動を記述していた。これら入力に対する行動のマッピングにより、ランダム性、内部状態（感情・本能）、学習、成長などの機能を導入することで一意ではない複雑な行動の発現を可能にすることができる。この行動の発現を行うところを、行動生成部という。
【００１０】
例えば、２台のＣＣＤカメラからなるステレオカメラを両目として配した首部を胴体部に対して可動可能とし、さらも２足歩行を可能とする左右の脚部を有した自律型ロボット装置にあって、首部の動作を生成するような行動生成部を首部動作生成部という。
【００１１】
前記首部動作生成部を用いてロボットが使用者の顔など、人間の目に近い部分の認識をする必要がある場合、先ずロボット装置自体が前記２台のＣＣＤカメラからなるステレオカメラを両目として用い、人間の顔を撮影して得た画像を基に顔認識をする。
【００１２】
ところで、カメラにあって、撮影者自身による自己撮影を簡易に行うのに好適なカメラが特開平１４−０７２２９１号公報に開示されている。これは、カメラの前面に収納位置から露呈位置へと移動自在な反射部材を備え、その反射部材に撮影者が顔を写しだして自己撮影を簡易に行う技術である。
【００１３】
【特許文献１】
特開平１４−０７２２９１号
【００１４】
【発明が解決しようとする課題】
前記ロボット装置にあっては、前記特許文献１に開示された反射部材を首部に設けるのは、ヒューマノイド型であることを考慮すると、外観上問題がある。また、顔認識のための画像をＣＣＤカメラにて撮影するには精度の高い調整が必要であり、レンズの視野角との関係から前記反射部材の設置位置の設定が難しい。
【００１５】
しかし、前記ロボットが顔を撮影して得た画像を基に顔認識をする場合、顔を検出して顔の方向にＣＣＤカメラを向け、カメラの視野に顔を入れる必要がある。この際にロボットのカメラを動かすモータの動きが遅かったり、回転角範囲に限界があったりして顔を検出することに時間がかかってしまった場合、人間はもどかしさを感じたり、飽きてしまったりすることが考えられる。
【００１６】
このような状態を防ぐために、人間自身がロボットの視野に自分が入っているかどうかを容易に認識することができる手段はやはり必要である。
【００１７】
本発明は、前記実情に鑑みてなされたものであり、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるロボット装置の提供を目的とする。
【００１８】
また、本発明は、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるロボット装置による顔認識状況の提示方法の提供を目的とする。
【００１９】
【課題を解決するための手段】
本発明に係るロボット装置は、前記課題を解決するために、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記顔認識の提示に用いる。
【００２０】
また、本発明に係るロボット装置による顔認識状況の提示方法は、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置による顔認識状況の提示方法であって、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、前記反射する工程によって前記カバー部に映しだされる顔、又は孔部に入って映しだされない顔を提示し、顔認識状況を提示する。
【００２１】
また、本発明は、小型カメラを用いて画像を撮影する情報処理装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記画像を反射し、撮像の状況の提示に用いることを特徴とする情報処理装置であってもよい。
【００２２】
【発明の実施の形態】
以下、本発明の一構成例として示す２足歩行タイプのロボット装置について、図面を参照して詳細に説明する。この人間型のロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態（怒り、悲しみ、喜び、楽しみ等）に応じて行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。つまり、音声や画像などの外的刺激の認識結果に基づいて自律的に行動制御を行うことができる。
【００２３】
図１に示すように、ロボット装置１は、体幹部ユニット２の所定の位置に頭部ユニット３が連結されると共に、左右２つの腕部ユニット４Ｒ／４Ｌと、左右２つの脚部ユニット５Ｒ／５Ｌが連結されて構成されている（但し、Ｒ及びＬの各々は、右及び左の各々を示す接尾辞である。以下において同じ。）。
【００２４】
このロボット装置１は、図１及び図２に示すように、頭部ユニット３にＣＣＤ（ｃｈａｒｇｅ  ｃｏｕｐｌｅｄ  ｄｅｖｉｃｅ）／ＣＭＯＳ（ｃｏｍｐｌｅｍｅｎｔａｒｙ  ｍｅｔａｌ−ｏｘｉｄｅ  ｓｅｍｉｃｏｎｄｕｃｔｏｒ）撮像素子を用いた小型カメラを視覚センサとして２個、人間の目に相当する位置に配置している。以下では、便宜上、目部４００Ｌ、４００Ｒと記す。これら目部４００Ｌ、４００Ｒは、人間の左右の目と同様接近しており、その視差は顔認識の画像撮影時にはあまり問題とならないものとする。
【００２５】
ロボット装置１は、目部４００Ｌ、４００Ｒを構成する、小型カメラを用いて外部環境に存在する人間の顔を撮像し、撮影画像を基に、顔認識や色認識などの画像認識処理や特徴抽出を行う。
【００２６】
目部４００Ｌ、４００Ｒは、図３及び図４に示すように、小型カメラ２００Ｌ及び２００Ｒのレンズ４２０Ｌ及び４２０Ｒの視野角を塞ぐことのない孔部４１２を囲むカバー部４１０を有している。カバー部４１０は、例えばプラスチックにより形成され、カメラのレンズ４２０Ｌ及び４２０Ｒの前面カバーを構成するものである。特に、カバー部４１０は、図５に示すように、カメラのレンズ４２０の視野角（破線４２６で図示）とほぼ同等の角度（一点鎖線４２５で示す）をなす角錘面或いは円錐面に近い曲面状にカットされた孔部４１２の周辺のカバー形状を球形に近い凸面の曲面とする。また、このカバー部４１０は、前記凸面部分を、アルミニウム、銀又はクロムを蒸着して、反射率の高い鏡面としている。
【００２７】
このようにカバー部４１０を反射率の高い鏡面とすることにより、外部環境に存在する使用者は自らの姿を図６の（ａ）、（ｂ）、（ｃ）に示すように映しだして見ることができる。図６の（ａ）では、使用者の顔部４５０及び胴体部４５１は、カバー部４１０の鏡面上の向かって左側に映っている。図６の（ｂ）では、使用者の顔部４５０及び胴体部４５１は、カバー部４１０の鏡面上の向かって右側に映っている。しかし、図６の（ｃ）では、胴体部４５１は鏡面の中央下部に映っているが頭部は孔部４１２にかかって使用者の目から視認できない状態となっている。
【００２８】
ロボット装置１が使用者の顔部４５０及び胴体部４５１を、カバー部４１０の鏡面の向かって左側に映しているときは、顔を認識していない（図６の（ａ））。使用者の顔部４５０及び胴体部４５１を、バー部４１０の鏡面の向かって右側に映しているときも、顔を認識していない（図６の（ｂ））。しかし、胴体部４５１を鏡面の中央下部に映しているが、頭部を孔部４１２にかけて使用者の目から視認できない状態としたときは、顔を認識している（図６の（ｃ））。つまり、図６の（ｃ）状態は、顔部４５０がロボットのカメラのレンズの視野角内に入っていることを示す。もちろん、顔認識を可能とする程度に顔部４５０が孔部４１２に入っていれば十分な場合もある。
【００２９】
このように、使用者は、カバー部４１０の鏡面に顔が映しだされる状態、又は孔部に入って映しだされない状態を確認することができ、それによってロボット装置における顔認識状況の提示を受ける。
【００３０】
すなわち、ロボット装置は、顔認識状況の提示方法を実行することにより、小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、前記反射する工程によって顔が前記カバー部に映しだされる状態、又は孔部に入って映しだされない状態を提示し、顔認識状況を提示することができる。
【００３１】
したがって、使用者は、カメラの方向、視野角を容易に確認できるので、ロボット装置の顔認識処理を速やかに行わせることができる。
【００３２】
図７には、前述した目部４００Ｌ、４００Ｒを備える２足歩行のロボット装置の概略を示す。図７に示すように、ロボット装置１の頭部ユニット２５０には、２台のＣＣＤカメラ２００Ｒ，２００Ｌが設けられ、このＣＣＤカメラ２００Ｒ，２００Ｌの後段には、ステレオ画像処理装置２１０が設けられている。２台のＣＣＤカメラ（以下、右目２００Ｒ、左目２００Ｌという。）により撮像された右目画像２０１Ｒ、左目画像２０１Ｌは、ステレオ画像処理装置２１０に入力される。ステレオ画像処理装置２１０は、各画像２０１Ｒ，２０１Ｌの視差情報（ｄｉｓｐａｒｉｔｙ  ｄａｔａ）（距離情報）を計算し、カラー画像（ＹＵＶ：輝度Ｙ、ＵＶ色差）２０２及び視差画像（ＹＤＲ：輝度Ｙ、視差Ｄ、信頼度Ｒ）２０３をフレーム毎に左右交互に算出する。ここで、視差とは、空間中のある点が左目及び右目に写像される点の違いを示し、そのカメラからの距離に応じて変化するものである。
【００３３】
このカラー画像２０２及び視差画像２０３はロボット装置１の体幹部２６０に内蔵されたＣＰＵ（制御部）２２０に入力される。また、ロボット装置１の各関節にはアクチュエータ２３０が設けられており、ＣＰＵ２２０からの指令となる制御信号２３１が供給されて、その指令値に応じてモータを駆動する。各関節（アクチュエータ）には、ポテンショメータが取り付けられ、その時のモータの回転角がＣＰＵ２２０に送られる。このアクチュエータに取り付けられたポテンショメータ、足底に取り付けられたタッチセンサ及び体幹部に取り付けられたジャイロ・センサ等の各センサ２４０は、現在の関節角度、設置情報、及び姿勢情報等の現在のロボット装置の状態を計測し、センサデータ２４１としてＣＰＵ２２０へ出力する。ＣＰＵ２２０は、ステレオ画像処理装置２１０からのカラー画像２０２及び視差画像２０３と、アクチュエータの全ての関節角度等のセンサデータ２４１とが入力され、これらデータが後述するソフトウェアにより処理され、様々な動作を自律的に行うことが可能となる。
【００３４】
図８は、本実施の形態におけるロボット装置を動作させるソフトウェアの構成を示す模式図である。本実施の形態におけるソフトウェアは、オブジェクト単位で構成され、ロボット装置の位置、移動量、周囲の障害物、ランドマーク、ランドマーク地図、行動可能領域等を認識し、ロボット装置が最終的に取るべき行動についての行動列を出力する各種認識処理等を行うものである。なお、ロボット装置の位置を示す座標として、例えば、ランドマーク等の特定の物体等を座標の原点としたワールド基準系のカメラ座標系（以下、絶対座標ともいう。）と、ロボット装置自身を中心（座標の原点）としたロボット中心座標系（以下、相対座標ともいう。）との２つの座標を使用する。
【００３５】
オブジェクト同士は、非同期に通信し合うことで、システム全体が動作する。各オブジェクトはメッセージ通信と共有メモリを使用したオブジェクト間通信方法によりデータの受け渡し及びプログラムの起動（Ｉｎｖｏｋｅ）を行っている。図８に示すように、本実施の形態におけるロボット装置のソフトウェア３００は、ロボット装置の移動量を算出する移動量算出手段（キネマティックオドメトリ（Ｋｉｎｅｍａｔｉｃｓ  Ｏｄｏｍｅｔｒｙ））ＫＩＮＥ３１０、環境内の平面を抽出する平面抽出部（Ｐｌａｎｅ  Ｅｘｔｒａｃｔｏｒ）ＰＬＥＸ３２０、環境内の障害物を認識する障害物グリッド算出部（Ｏｃｃｕｐａｎｃｙ  Ｇｒｉｄ）ＯＧ３３０、人工的なランドマークを含む環境において、自身のセンサ情報及び移動量算出手段から供給される自身の動作情報によって、ロボット装置の自己位置（位置及び姿勢）や、後述のランドマークの位置情報を特定するランドマーク位置検出部（Ｌａｎｄｍａｒｋ  Ｓｅｎｓｏｒ）ＣＬＳ３４０、ロボット中心座標を絶対座標に変換する絶対座標算出部（Ｌｏｃａｌｉｚａｔｉｏｎ）ＬＺ３５０及びロボット装置の取るべき行動を決定する行動決定部（Ｓｉｔｕａｔｅｄ  ｂｅｈａｖｉｏｒ  Ｌａｙｅｒ）ＳＢＬ３６０から構成され、各オブジェクト単位にて処理がなされる。
【００３６】
このロボット装置１が具備する関節自由度構成を図９に模式的に示す。頭部ユニット３を支持する首関節は、首関節ヨー軸１０１と、首関節ピッチ軸１０２と、首関節ロール軸１０３という３自由度を有している。
【００３７】
また、上肢を構成する各々の腕部ユニット４Ｒ／Ｌは、肩関節ピッチ軸１０７と、肩関節ロール軸１０８と、上腕ヨー軸１０９と、肘関節ピッチ軸１１０と、前腕ヨー軸１１１と、手首関節ピッチ軸１１２と、手首関節ロール輪１１３と、手部１１４とで構成される。手部１１４は、実際には、複数本の指を含む多関節・多自由度構造体である。ただし、手部１１４の動作は、ロボット装置１の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は７自由度を有するとする。
【００３８】
また、体幹部ユニット２は、体幹ピッチ軸１０４と、体幹ロール軸１０５と、体幹ヨー軸１０６という３自由度を有する。
【００３９】
また、下肢を構成する各々の脚部ユニット５Ｒ／Ｌは、股関節ヨー軸１１５と、股関節ピッチ軸１１６と、股関節ロール軸１１７と、膝関節ピッチ軸１１８と、足首関節ピッチ軸１１９と、足首関節ロール軸１２０と、足部１２１とで構成される。本明細書中では、股関節ピッチ軸１１６と股関節ロール軸１１７の交点は、ロボット装置１の股関節位置を定義する。人体の足部１２１は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置１の足底は、ゼロ自由度とする。したがって、各脚部は、６自由度で構成される。
【００４０】
以上を総括すれば、ロボット装置１全体としては、合計で３＋７×２＋３＋６×２＝３２自由度を有することになる。ただし、エンターテインメント向けのロボット装置１が必ずしも３２自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度、即ち関節数を適宜増減することができることはいうまでもない。
【００４１】
上述したようなロボット装置１がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、２足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
【００４２】
図１０には、ロボット装置１の制御システム構成を模式的に示している。同図に示すように、ロボット装置１は、ヒトの四肢を表現した体幹部ユニット２，頭部ユニット３，腕部ユニット４Ｒ／Ｌ，脚部ユニット５Ｒ／Ｌと、各ユニット間の協調動作を実現するための適応制御を行う制御ユニット１０とで構成される。
【００４３】
ロボット装置１全体の動作は、制御ユニット１０によって統括的に制御される。制御ユニット１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や、ＤＲＡＭ、フラッシュＲＯＭ等の主要回路コンポーネント（図示しない）で構成される主制御部１１と、電源回路やロボット装置１の各構成要素とのデータやコマンドの授受を行うインターフェイス（何れも図示しない）などを含んだ周辺回路１２とで構成される。
【００４４】
この制御ユニット１０の設置場所は、特に限定されない。図１０では体幹部ユニット２に搭載されているが、頭部ユニット３に搭載してもよい。あるいは、ロボット装置１外に制御ユニット１０を配備して、ロボット装置１の機体とは有線又は無線で交信するようにしてもよい。
【００４５】
図１０に示したロボット装置１内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。即ち、頭部ユニット３には、首関節ヨー軸１０１、首関節ピッチ軸１０２、首関節ロール軸１０３の各々を表現する首関節ヨー軸アクチュエータＡ２、首関節ピッチ軸アクチュエータＡ３、首関節ロール軸アクチュエータＡ４が配設されている。
【００４６】
また、頭部ユニット３には、外部の状況を撮像するためのＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）カメラが設けられているほか、前方に位置する物体までの距離を測定するための距離センサ、外部音を集音するためのマイク、音声を出力するためのスピーカ、使用者からの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出するためのタッチセンサ等が配設されている。
【００４７】
また、体幹部ユニット２には、体幹ピッチ軸１０４、体幹ロール軸１０５、体幹ヨー軸１０６の各々を表現する体幹ピッチ軸アクチュエータＡ５、体幹ロール軸アクチュエータＡ６、体幹ヨー軸アクチュエータＡ７が配設されている。また、体幹部ユニット２には、このロボット装置１の起動電源となるバッテリを備えている。このバッテリは、充放電可能な電池によって構成されている。
【００４８】
また、腕部ユニット４Ｒ／Ｌは、上腕ユニット４１Ｒ／Ｌと、肘関節ユニット４２Ｒ／Ｌと、前腕ユニット４３Ｒ／Ｌに細分化されるが、肩関節ピッチ軸１０７、肩関節ロール軸１０８、上腕ヨー軸１０９、肘関節ピッチ軸１１０、前腕ヨー軸１１１、手首関節ピッチ軸１１２、手首関節ロール軸１１３の各々表現する肩関節ピッチ軸アクチュエータＡ８、肩関節ロール軸アクチュエータＡ９、上腕ヨー軸アクチュエータＡ１０、肘関節ピッチ軸アクチュエータＡ１１、肘関節ロール軸アクチュエータＡ１２、手首関節ピッチ軸アクチュエータＡ１３、手首関節ロール軸アクチュエータＡ１４が配備されている。
【００４９】
また、脚部ユニット５Ｒ／Ｌは、大腿部ユニット５１Ｒ／Ｌと、膝ユニット５２Ｒ／Ｌと、脛部ユニット５３Ｒ／Ｌに細分化されるが、股関節ヨー軸１１５、股関節ピッチ軸１１６、股関節ロール軸１１７、膝関節ピッチ軸１１８、足首関節ピッチ軸１１９、足首関節ロール軸１２０の各々を表現する股関節ヨー軸アクチュエータＡ１６、股関節ピッチ軸アクチュエータＡ１７、股関節ロール軸アクチュエータＡ１８、膝関節ピッチ軸アクチュエータＡ１９、足首関節ピッチ軸アクチュエータＡ２０、足首関節ロール軸アクチュエータＡ２１が配備されている。各関節に用いられるアクチュエータＡ２，Ａ３・・・は、より好ましくは、ギア直結型で旦つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ＡＣサーボ・アクチュエータで構成することができる。
【００５０】
体幹部ユニット２、頭部ユニット３、各腕部ユニット４Ｒ／Ｌ、各脚部ユニット５Ｒ／Ｌなどの各機構ユニット毎に、アクチュエータ駆動制御部の副制御部２０，２１，２２Ｒ／Ｌ，２３Ｒ／Ｌが配備されている。さらに、各脚部ユニット５Ｒ／Ｌの足底が着床したか否かを検出する接地確認センサ３０Ｒ／Ｌを装着するとともに、体幹部ユニット２内には、姿勢を計測する姿勢センサ３１を装備している。
【００５１】
接地確認センサ３０Ｒ／Ｌは、例えば足底に設置された近接センサ又はマイクロ・スイッチなどで構成される。また、姿勢センサ３１は、例えば、加速度センサとジャイロ・センサの組み合わせによって構成される。
【００５２】
接地確認センサ３０Ｒ／Ｌの出力によって、歩行・走行などの動作期間中において、左右の各脚部が現在立脚又は遊脚何れの状態であるかを判別することができる。また、姿勢センサ３１の出力により、体幹部分の傾きや姿勢を検出することができる。
【００５３】
主制御部１１は、各センサ３０Ｒ／Ｌ，３１の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部２０，２１，２２Ｒ／Ｌ，２３Ｒ／Ｌの各々に対して適応的な制御を行い、ロボット装置１の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現できる。
【００５４】
ロボット装置１の機体上での全身運動は、足部運動、ＺＭＰ（Ｚｅｒｏ  Ｍｏｍｅｎｔ  Ｐｏｉｎｔ）軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容にしたがった動作を指示するコマンドを各副制御部２０，２１，２２Ｒ／Ｌ，２３Ｒ／Ｌに転送する。そして、各々の副制御部２０，２１，・・・等では、主制御部１１からの受信コマンドを解釈して、各アクチュエータＡ２，Ａ３・・・等に対して駆動制御信号を出力する。ここでいう「ＺＭＰ」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ＺＭＰ軌道」とは、例えばロボット装置１の歩行動作期間中にＺＭＰが動く軌跡を意味する。なお、ＺＭＰの概念並びにＺＭＰを歩行ロボットの安定度判別規範に適用する点については、Ｍｉｏｍｉｒ  Ｖｕｋｏｂｒａｔｏｖｉｃ著“ＬＥＧＧＥＤ  ＬＯＣＯＭＯＴＩＯＮ  ＲＯＢＯＴＳ”（加藤一郎外著『歩行ロボットと人工の足』（日刊工業新聞社））に記載されている。
【００５５】
以上のように、ロボット装置１は、各々の副制御部２０，２１，・・・等が、主制御部１１からの受信コマンドを解釈して、各アクチュエータＡ２，Ａ３・・・に対して駆動制御信号を出力し、各ユニットの駆動を制御している。これにより、ロボット装置１は、目標の姿勢に安定して遷移し、安定した姿勢で歩行できる。
【００５６】
また、ロボット装置１における制御ユニット１０では、上述したような姿勢制御のほかに、加速度センサ、タッチセンサ、接地確認センサ等の各種センサ、及びＣＣＤカメラからの画像情報、マイクからの音声情報等を統括して処理している。制御ユニット１０では、図示しないが加速度センサ、ジャイロ・センサ、タッチセンサ、距離センサ、マイク、スピーカなどの各種センサ、各アクチュエータ、ＣＣＤカメラ及びバッテリが各々対応するハブを介して主制御部１１と接続されている。
【００５７】
主制御部１１は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部インターフェイスを介してＤＲＡＭ内の所定位置に順次格納する。また、主制御部１１は、バッテリから供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをＤＲＡＭ内の所定位置に格納する。ＤＲＡＭに格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、主制御部１１がこのロボット装置１の動作制御を行う際に利用される。
【００５８】
主制御部１１は、ロボット装置１の電源が投入された初期時、制御プログラムを読み出し、これをＤＲＡＭに格納する。また、主制御部１１は、上述のように主制御部１１よりＤＲＡＭに順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
【００５９】
さらに、主制御部１１は、この判断結果及びＤＲＡＭに格納した制御プログラムに基づいて自己の状況に応じて行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータを駆動させることによりロボット装置１に、いわゆる「身振り」、「手振り」といった行動をとらせる。
【００６０】
このようにしてロボット装置１は、制御プログラムに基づいて自己及び周囲の状況を判断し、使用者からの指示及び働きかけに応じて自律的に行動できる。
【００６１】
ところで、このロボット装置１は、内部状態に応じて自律的に行動することができる。そこで、ロボット装置１における制御プログラムのソフトウェア構成例について、図１１乃至図１６を用いて説明する。なお、この制御プログラムは、上述したように、予めフラッシュＲＯＭ１２に格納されており、ロボット装置１の電源投入初期時において読み出される。
【００６２】
図１１において、デバイス・ドライバ・レイヤ４０は、制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット４１から構成されている。この場合、各デバイス・ドライバは、ＣＣＤカメラやタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【００６３】
また、ロボティック・サーバ・オブジェクト４２は、デバイス・ドライバ・レイヤ４０の最下位層に位置し、例えば上述の各種センサやアクチュエータ２８１〜２８ｎ等のハードウェアにアクセスするためのインターフェイスを提供するソフトウェア群でなるバーチャル・ロボット４３と、電源の切換えなどを管理するソフトウェア群でなるパワーマネージャ４４と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ４５と、ロボット装置１の機構を管理するソフトウェア群でなるデザインド・ロボット４６とから構成されている。
【００６４】
マネージャ・オブジェクト４７は、オブジェクト・マネージャ４８及びサービス・マネージャ４９から構成されている。オブジェクト・マネージャ４８は、ロボティック・サーバ・オブジェクト４２、ミドル・ウェア・レイヤ５０、及びアプリケーション・レイヤ５１に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ４９は、メモリカードに格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【００６５】
ミドル・ウェア・レイヤ５０は、ロボティック・サーバ・オブジェクト４２の上位層に位置し、画像処理や音声処理などのこのロボット装置１の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ５１は、ミドル・ウェア・レイヤ５０の上位層に位置し、当該ミドル・ウェア・レイヤ５０を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置１の行動を決定するためのソフトウェア群から構成されている。
【００６６】
なお、ミドル・ウェア・レイヤ５０及びアプリケーション・レイヤ５１の具体なソフトウェア構成をそれぞれ図１２に示す。
【００６７】
ミドル・ウェア・レイヤ５０は、図１２に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール６０〜６８並びに入力セマンティクスコンバータモジュール６９などを有する認識系７０と、出力セマンティクスコンバータモジュール７８並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、ＬＥＤ点灯用及び音再生用の各信号処理モジュール７１〜７７などを有する出力系７９とから構成されている。
【００６８】
認識系７０の各信号処理モジュール６０〜６８は、ロボティック・サーバ・オブジェクト４２のバーチャル・ロボット４３によりＤＲＡＭから読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール６９に与える。ここで、例えば、バーチャル・ロボット４３は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
【００６９】
入力セマンティクスコンバータモジュール６９は、これら各信号処理モジュール６０〜６８から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ４１に出力する。
【００７０】
アプリケーション・レイヤ５１は、図１３に示すように、行動モデルライブラリ８０、行動切換モジュール８１、学習モジュール８２、感情モデル８３及び本能モデル８４の５つのモジュールから構成されている。
【００７１】
行動モデルライブラリ８０には、図１４に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択されたいくつかの条件項目にそれぞれ対応させて、それぞれ独立した行動モデルが設けられている。
【００７２】
そして、これら行動モデルは、それぞれ入力セマンティクスコンバータモジュール６９から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル８３に保持されている対応する情動のパラメータ値や、本能モデル８４に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール８１に出力する。
【００７３】
なお、この実施の形態の場合、各行動モデルは、次の行動を決定する手法として、図１５に示すような１つのノード（状態）ＮＯＤＥ０〜ＮＯＤＥｎから他のどのノードＮＯＤＥ０〜ＮＯＤＥｎに遷移するかを各ノードＮＯＤＥ０〜ＮＯＤＥｎに間を接続するアークＡＲＣ１〜ＡＲＣｎ１に対してそれぞれ設定された遷移確率Ｐ１〜Ｐｎに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
【００７４】
具体的に、各行動モデルは、それぞれ自己の行動モデルを形成するノードＮＯＤＥ０〜ＮＯＤＥｎにそれぞれ対応させて、これらノードＮＯＤＥ０〜ＮＯＤＥｎ毎に図１６に示すような状態遷移表９０を有している。
【００７５】
この状態遷移表９０では、そのノードＮＯＤＥ０〜ＮＯＤＥｎにおいて遷移条件とする入力イベント（認識結果）が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
【００７６】
したがって、図１６の状態遷移表９０で表されるノードＮＯＤＥ１００では、「ボールを検出（ＢＡＬＬ）」という認識結果が与えられた場合に、当該認識結果とともに与えられるそのボールの「大きさ（ＳＩＺＥ）」が「０から１０００」の範囲であることや、「障害物を検出（ＯＢＳＴＡＣＬＥ）」という認識結果が与えられた場合に、当該認識結果とともに与えられるその障害物までの「距離（ＤＩＳＴＡＮＣＥ）」が「０から１００」の範囲であることが他のノードに遷移するための条件となっている。
【００７７】
また、このノードＮＯＤＥ１００では、認識結果の入力がない場合においても、行動モデルが周期的に参照する感情モデル８３及び本能モデル８４にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル８３に保持された「喜び（Ｊｏｙ）」、「驚き（Ｓｕｒｐｒｉｓｅ）」又は「悲しみ（Ｓａｄｎｅｓｓ）」の何れかのパラメータ値が「５０から１００」の範囲であるときには他のノードに遷移することができるようになっている。
【００７８】
また、状態遷移表９０では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードＮＯＤＥ０〜ＮＯＤＥｎから遷移できるノード名が列記されているとともに、「入力イベント名」、「データ名」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードＮＯＤＥ０〜ＮＯＤＥｎへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードＮＯＤＥ０〜ＮＯＤＥｎに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は１００［％］となっている。
【００７９】
したがって、図１６の状態遷移表９０で表されるノードＮＯＤＥ１００では、例えば「ボールを検出（ＢＡＬＬ）」し、そのボールの「ＳＩＺＥ（大きさ）」が「０から１０００」の範囲であるという認識結果が与えられた場合には、「３０［％］」の確率で「ノードＮＯＤＥ１２０（ｎｏｄｅ  １２０）」に遷移でき、そのとき「ＡＣＴＩＯＮ１」の行動が出力されることとなる。
【００８０】
各行動モデルは、それぞれこのような状態遷移表９０として記述されたノードＮＯＤＥ０〜  ＮＯＤＥｎが幾つも繋がるようにして構成されており、入力セマンティクスコンバータモジュール６９から認識結果が与えられたときなどに、対応するノードＮＯＤＥ０〜ＮＯＤＥｎの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール８１に出力するようになされている。
【００８１】
図１４に示す行動切換モジュール８１は、行動モデルライブラリ８０の各行動モデルからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデルから出力された行動を選択し、当該行動を実行すべき旨のコマンド（以下、行動コマンドという。）をミドル・ウェア・レイヤ５０の出力セマンティクスコンバータモジュール７８に送出する。なお、この実施の形態においては、図１５において下側に表記された行動モデルほど優先順位が高く設定されている。
【００８２】
また、行動切換モジュール８１は、行動完了後に出力セマンティクスコンバータモジュール７８から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール８２、感情モデル８３及び本能モデル８４に通知する。
【００８３】
一方、学習モジュール８２は、入力セマンティクスコンバータモジュール６９から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。
【００８４】
そして、学習モジュール８２は、この認識結果及び行動切換えモジュール７１からの通知に基づいて、「叩かれた（叱られた）」ときにはその行動の発現確率を低下させ、「撫でられた（誉められた）」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ７０における対応する行動モデルの対応する遷移確率を変更する。
【００８５】
他方、感情モデル８３は、「喜び（Ｊｏｙ）」、「悲しみ（Ｓａｄｎｅｓｓ）」、「怒り（Ａｎｇｅｒ）」、「驚き（Ｓｕｒｐｒｉｓｅ）」、「嫌悪（Ｄｉｓｇｕｓｔ）」及び「恐れ（Ｆｅａｒ）」の合計６つの情動について、各情動毎にその情動の強さを表すパラメータを保持している。そして、感情モデル８３は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール６９から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果や、経過時間及び行動切換モジュール８１からの通知などに基づいて周期的に更新する。
【００８６】
具体的には、感情モデル８３は、入力セマンティクスコンバータモジュール６９から与えられる認識結果と、そのときのロボット装置１の行動と、前回更新してからの経過時間となどに基づいて所定の演算式により算出されるそのときのその情動の変動量を△Ｅ［ｔ］、現在のその情動のパラメータ値をＥ［ｔ］、その情動の感度を表す係数をｋｅとして、下記数式（１１）によって次の周期におけるその情動のパラメータ値Ｅ［ｔ＋１］を算出し、これを現在のその情動のパラメータ値Ｅ［ｔ］と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル８３は、これと同様にして全ての情動のパラメータ値により更新する。
Ｅ＝［ｔ＋１］＝Ｅ＝［ｔ］＋ｋｅ×ΔＥ
なお、各認識結果や出力セマンティクスコンバータモジュール７８からの通知が各情動のパラメータ値の変動量△Ｅ［ｔ］にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△Ｅ［ｔ］に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△Ｅ［ｔ］に大きな影響を与えるようになっている。
【００８７】
ここで、出力セマンティクスコンバータモジュール７８からの通知とは、いわゆる行動のフィードバック情報（行動完了情報）であり、行動の出現結果の情報であり、感情モデル８３は、このような情報によっても感情を変化させる。これは、例えば、「叫ぶ」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール７８からの通知は、上述した学習モジュール８２にも入力されており、学習モジュール８２は、その通知に基づいて行動モデルの対応する遷移確率を変更する。
【００８８】
なお、行動結果のフィードバックは、行動切換モジュール８１の出力（感情が付加された行動）によりなされるものであってもよい。
【００８９】
一方、本能モデル８４は、「運動欲（ｅｘｅｒｃｉｓｅ）」、「愛情欲（ａｆｆｅｃｔｉｏｎ）」、「食欲（ａｐｐｅｔｉｔｅ）」及び「好奇心（ｃｕｒｉｏｓｉｔｙ）」の互いに独立した４つの欲求について、これら欲求毎にその欲求の強さを表すパラメータを保持している。そして、本能モデル８４は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール６９から与えられる認識結果や、経過時間及び行動切換モジュール８１からの通知などに基づいて周期的に更新する。
【００９０】
具体的には、本能モデル８４は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール７８からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔＩ［ｋ］、現在のその欲求のパラメータ値をＩ［ｋ］、その欲求の感度を表す係数ｋｉとして、所定周期で下記数式（１２）を用いて次の周期におけるその欲求のパラメータ値Ｉ［ｋ＋１］を算出し、この演算結果を現在のその欲求のパラメータ値Ｉ［ｋ］と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル８４は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
Ｉ［ｋ＋１］＝Ｉ［ｋ］＋ｋｉ×ΔＩ［ｋ］
なお、認識結果及び出力セマンティクスコンバータモジュール７８からの通知などが各欲求のパラメータ値の変動量△Ｉ［ｋ］にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール７８からの通知は、「疲れ」のパラメータ値の変動量△Ｉ［ｋ］に大きな影響を与えるようになっている。
【００９１】
なお、この具体例においては、各情動及び各欲求（本能）のパラメータ値がそれぞれ０から１００までの範囲で変動するように規制されており、また係数ｋｅ、ｋｉの値も各情動及び各欲求毎に個別に設定されている。
【００９２】
一方、ミドル・ウェア・レイヤ５０の出力セマンティクスコンバータモジュール７８は、図１２に示すように、上述のようにしてアプリケーション・レイヤ５１の行動切換モジュール８１から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング（ボールを追いかける）」といった抽象的な行動コマンドを出力系７９の対応する信号処理モジュール７１〜７７に与える。
【００９３】
そしてこれら信号処理モジュール７１〜７７は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動をするために対応するアクチュエータに与えるべきサーボ指令値や、スピーカから出力する音の音声データ及び又はＬＥＤに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト４２のバーチャル・ロボット４３及び信号処理回路を順次介して対応するアクチュエータ又はスピーカ又はＬＥＤに順次送出する。
【００９４】
このようにしてロボット装置１は、上述した制御プログラムに基づいて、自己（内部）及び周囲（外部）の状況や、使用者からの指示及び働きかけに応じた自律的な行動ができる。
【００９５】
このような制御プログラムは、ロボット装置が読取可能な形式で記録された記録媒体を介して提供される。制御プログラムを記録する記録媒体としては、磁気読取方式の記録媒体（例えば、磁気テープ、フレキシブルディスク、磁気カード）、光学読取方式の記録媒体（例えば、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＤＶＤ）等が考えられる。記録媒体には、半導体メモリ（いわゆるメモリカード（矩形型、正方形型など形状は問わない。）、ＩＣカード）等の記憶媒体も含まれる。また、制御プログラムは、いわゆるインターネット等を介して提供されてもよい。
【００９６】
これらの制御プログラムは、専用の読込ドライバ装置、又はパーソナルコンピュータ等を介して再生され、有線又は無線接続によってロボット装置１に伝送されて読み込まれる。また、ロボット装置１は、半導体メモリ、又はＩＣカード等の小型化された記憶媒体のドライブ装置を備える場合、これら記憶媒体から制御プログラムを直接読み込むこともできる。
【００９７】
なお、顔認識処理について以下に説明しておく。ロボット装置は、顔検出器を備え、画像フレーム中から顔領域を検出する。小型カメラによって撮像した画像データを受け取り、それを９段階のスケール画像に縮小変換する。このすべての画像の中から顔に相当する矩形領域を探索する。重なりあった候補領域を削減して最終的に顔と判断された領域に関する位置や大きさ、特徴量などの顔情報（ＦａｃｅＩｎｆｏ）を検出する。ここで検出された顔情報は短期記憶部へ送られる。
【００９８】
短期記憶部は、ロボット装置１の外部環境に関する情報を比較的短い時間だけ保持するオブジェクトであり、音検出部から音（声）検出結果、色検出部から色検出結果、また顔検出部から顔検出結果、さらには関節角度検出部から関節角度のセンサ出力を受け取る。そして、これらの複数の検出情報を時間的及び空間的に整合性を保つように統合して、意味を持った統合情報として扱い、比較的短い時間、例えば１５秒間保持する。これらの統合情報は、動作命令部及び首部動作生成部に渡される。
【００９９】
動作命令部は、状況依存行動層等の上位モジュールである。首部動作生成部に対して首部の動作を指示するコマンドを発現する。短期記憶部にて保存されている統合情報に関するＩＤ（対象物ＩＤ）を指定することによって、すなわち、何に対してトラッキングするのかを指定するだけでロボット装置１にトラッキング動作を行わせることができる。
【０１００】
首動作生成部は、動作命令部から首を動かすコマンドを受けたことに応答して、首の関節角を計算するモジュールである。「追跡」（本実施の形態では前記対象物ＩＤ）のコマンドを受けたときには、短期記憶部から受け取った情報を基に、その物体が存在する方向を向く首の関節角を計算して出力する。前記対象物ＩＤを受け取り、最適な対象物情報を選択して、その選択した対象物情報が得られる方向を向くことになる。
【０１０１】
顔を認識する際には、顔を検出して顔の方向にＣＣＤカメラを向け、カメラの視野に顔を入れる必要があり、ロボットのカメラを動かすモータの動きが遅かったり、回転角範囲に限界があったりして顔を検出することに時間がかかってしまうという問題が発生したが、本発明により、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるので、ロボット装置は顔認識処理を迅速に行うことができる。
【０１０２】
また、ロボット装置は、顔認識の対象とする使用者と対話をしながら、本発明の顔認識状況提示方法を実行し、視野に顔認識の対象となる顔が入っているか否かを提示してもよい。
【０１０３】
なお、本発明は、前記実施の形態にのみ適用が限定されるものではない。以下の変形例を挙げることができる。例えば、鏡面は別の場所にロボット装置の視野と同等の範囲を映し出すように設置してもよい。また、より確実に確認できるよう鏡の表示範囲とカメラの視野角の間にマージンを持たせるようにしてもよい。また、カバー部の凸面鏡部分を球形以外の形状、例えば円錐形状、多角錘形状にしてもよい。
【０１０４】
さらに、本発明は、小型カメラを用いて画像を撮影する、携帯電話、携帯型情報処理端末（ＰＤＡ）、携帯型パーソナルコンピュータ等の情報処理装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記画像を反射し、撮像の状況の提示に用いることを特徴とする情報処理装置に適用してもよい。
【０１０５】
【発明の効果】
本発明によれば、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、カバー部に鏡面仕上げを施して顔認識の提示に用いるので、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができる。
【図面の簡単な説明】
【図１】ロボット装置の外観構成を示す図であって、ヒューマノイド型の２足歩行のロボット装置を示す斜視図である。
【図２】頭部に設けた目部の配置を示す図である。
【図３】目部の拡大図である。
【図４】頭部の断面図である。
【図５】目部の断面図であり、視野角も示す図である。
【図６】顔認識状況の提示方法を説明するための図である。
【図７】ロボット装置の概略を示すブロック図である。
【図８】ロボット装置を動作するソフトウェアの構成を示す模式図である。
【図９】本発明の実施の形態におけるロボット装置の自由度構成モデルを模式的に示す図である。
【図１０】同ロボット装置の回路構成を示すブロック図である。
【図１１】同ロボット装置のソフトウェア構成を示すブロック図である。
【図１２】同ロボット装置のソフトウェア構成におけるミドル・ウェア・レイヤの構成を示すブロック図である。
【図１３】同ロボット装置のソフトウェア構成におけるアプリケーション・レイヤの構成を示すブロック図である。
【図１４】アプリケーション・レイヤの行動モデルライブラリの構成を示すブロック図である。
【図１５】同ロボット装置の行動決定のための情報となる有限確率オートマトンを説明する図である。
【図１６】有限確率オートマトンの各ノードに用意された状態遷移表を示す図である。
【符号の説明】
１  ロボット装置、３  頭部、４００Ｌ，４００Ｒ  目部、４１０  カバー部（鏡面）、４１２  孔部
【図１】
2004299006.tif 000003
【図２】
2004299006.tif 000004
【図３】
2004299006.tif 000005
【図４】
2004299006.tif 000006
【図５】
2004299006.tif 000007
【図６】
2004299006.tif 000008
【図７】
2004299006.tif 000009
【図８】
2004299006.tif 000010
【図９】
2004299006.tif 000011
【図１０】
2004299006.tif 000012
【図１１】
2004299006.tif 000013
【図１２】
2004299006.tif 000014
【図１３】
2004299006.tif 000015
【図１４】
2004299006.tif 000016
【図１５】
2004299006.tif 000017
【図１６】
2004299006.tif 000018