JP2004299006A - ロボット装置及びロボット装置による顔認識状況の提示方法 - Google Patents
ロボット装置及びロボット装置による顔認識状況の提示方法 Download PDFInfo
- Publication number
- JP2004299006A JP2004299006A JP2003096135A JP2003096135A JP2004299006A JP 2004299006 A JP2004299006 A JP 2004299006A JP 2003096135 A JP2003096135 A JP 2003096135A JP 2003096135 A JP2003096135 A JP 2003096135A JP 2004299006 A JP2004299006 A JP 2004299006A
- Authority
- JP
- Japan
- Prior art keywords
- face
- robot
- robot apparatus
- face recognition
- node
- 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.)
- Withdrawn
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に示し、顔認識状況を提示する。
【解決手段】目部のカバー部410を鏡面とする。使用者の顔部450及び胴体部451を、カバー部410の鏡面の向かって左側に映しているときは、顔を認識していない(図6の(a))。使用者の顔部450及び胴体部451を、バー部410の鏡面の向かって右側に映しているときも、顔を認識していない(図6の(b))。しかし、胴体部451を鏡面の中央下部に映しているが、頭部を孔部412にかけて使用者の目から視認できない状態としたときは、顔を認識している(図6の(c))。つまり、図6の(c)状態は、顔部450がロボットのカメラのレンズの視野角内に入っていることを示す。
【選択図】 図6
【解決手段】目部のカバー部410を鏡面とする。使用者の顔部450及び胴体部451を、カバー部410の鏡面の向かって左側に映しているときは、顔を認識していない(図6の(a))。使用者の顔部450及び胴体部451を、バー部410の鏡面の向かって右側に映しているときも、顔を認識していない(図6の(b))。しかし、胴体部451を鏡面の中央下部に映しているが、頭部を孔部412にかけて使用者の目から視認できない状態としたときは、顔を認識している(図6の(c))。つまり、図6の(c)状態は、顔部450がロボットのカメラのレンズの視野角内に入っていることを示す。
【選択図】 図6
Description
【0001】
【発明の属する技術分野】
本発明は、小型カメラを視覚センサとして有し、外部環境に存在する人間の顔を認識するロボット装置及びロボット装置による顔認識状況の提示方法に関する。
【0002】
【従来の技術】
電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機械装置のことを「ロボット」という。ロボットの語源は、スラブ語の”ROBOTA(奴隷機械)”に由来すると言われている。わが国では、ロボットが普及し始めたのは1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化などを目的としたマニピュレータや搬送ロボットなどの産業用ロボット(industrial robot)であった。
【0003】
最近では、イヌやネコ、クマのように4足歩行の動物の身体メカニズムやその動作を模したペット型ロボット、あるいは、ヒトやサルなどの2足直立歩行を行う動物の身体メカニズムや動作を模した「人間形」若しくは「人間型」のロボット(humanoid robot)など、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。
【0004】
アーム式ロボットのように、ある特定の場所に植設して用いるような据置きタイプのロボットは、部品の組立・選別作業など固定的・局所的な作業空間でのみ活動する。これに対し、移動式のロボットは、作業空間は非限定的であり、所定の経路上または無経路上を自在に移動して、所定の若しくは任意の人的作業を代行したり、ヒトやイヌあるいはその他の生命体に置き換わる種々のサービスを提供することができる。
【0005】
脚式移動ロボットの用途の1つとして、産業活動・生産活動等における各種の難作業の代行が挙げられる。例えば、原子力発電プラントや火力発電プラント、石油化学プラントにおけるメンテナンス作業、製造工場における部品の搬送・組立作業、高層ビルにおける清掃、火災現場その他における救助といったような危険作業・難作業の代行などである。
【0006】
また、脚式移動ロボットの他の用途として、上述の作業支援というよりも、生活密着型、すなわち人間との「共生」あるいは「エンターティンメント」という用途が挙げられる。この種のロボットは、ヒトあるいはイヌ(ペット)、クマなどの比較的知性の高い脚式歩行動物の動作メカニズムや四肢を利用した豊かな感情表現を忠実に再現する。また、あらかじめ入力された動作パターンを単に忠実に実行するだけではなく、ユーザ(あるいは他のロボット)から受ける言葉や態度(「褒める」とか「叱る」、「叩く」など)に対して動的に対応した、生き生きとした応答表現を実現することも要求される。
【0007】
従来の玩具機械は、ユーザ操作と応答動作との関係が固定的であり、玩具の動作をユーザの好みに合わせて変更することはできない。この結果、ユーザは同じ動作しか繰り返さない玩具をやがては飽きてしまうことになる。
【0008】
これに対し、自律動作を行うインテリジェントなロボットは、一般に、外界の情報を認識してそれに対して自身の行動を反映させる機能を持っている。すなわち、ロボットは、外部環境からの音声や画像、触覚などの入力情報に基づいて感情モデルや本能モデルを変化させて動作を決定することにより、自律的な思考及び動作制御を実現する。すなわち、ロボットが感情モデルや本能モデルを用意することにより、より高度な知的レベルで人間とのリアリスティックなコミュニケーションを実現することも可能となる。
【0009】
ロボットが環境変化に応じた自律動作を行うために、従来は、ある1つの観測結果に対してその情報を受けて行動を取るような単純な行動記述の組み合わせで行動を記述していた。これら入力に対する行動のマッピングにより、ランダム性、内部状態(感情・本能)、学習、成長などの機能を導入することで一意ではない複雑な行動の発現を可能にすることができる。この行動の発現を行うところを、行動生成部という。
【0010】
例えば、2台のCCDカメラからなるステレオカメラを両目として配した首部を胴体部に対して可動可能とし、さらも2足歩行を可能とする左右の脚部を有した自律型ロボット装置にあって、首部の動作を生成するような行動生成部を首部動作生成部という。
【0011】
前記首部動作生成部を用いてロボットが使用者の顔など、人間の目に近い部分の認識をする必要がある場合、先ずロボット装置自体が前記2台のCCDカメラからなるステレオカメラを両目として用い、人間の顔を撮影して得た画像を基に顔認識をする。
【0012】
ところで、カメラにあって、撮影者自身による自己撮影を簡易に行うのに好適なカメラが特開平14−072291号公報に開示されている。これは、カメラの前面に収納位置から露呈位置へと移動自在な反射部材を備え、その反射部材に撮影者が顔を写しだして自己撮影を簡易に行う技術である。
【0013】
【特許文献1】
特開平14−072291号
【0014】
【発明が解決しようとする課題】
前記ロボット装置にあっては、前記特許文献1に開示された反射部材を首部に設けるのは、ヒューマノイド型であることを考慮すると、外観上問題がある。また、顔認識のための画像をCCDカメラにて撮影するには精度の高い調整が必要であり、レンズの視野角との関係から前記反射部材の設置位置の設定が難しい。
【0015】
しかし、前記ロボットが顔を撮影して得た画像を基に顔認識をする場合、顔を検出して顔の方向にCCDカメラを向け、カメラの視野に顔を入れる必要がある。この際にロボットのカメラを動かすモータの動きが遅かったり、回転角範囲に限界があったりして顔を検出することに時間がかかってしまった場合、人間はもどかしさを感じたり、飽きてしまったりすることが考えられる。
【0016】
このような状態を防ぐために、人間自身がロボットの視野に自分が入っているかどうかを容易に認識することができる手段はやはり必要である。
【0017】
本発明は、前記実情に鑑みてなされたものであり、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるロボット装置の提供を目的とする。
【0018】
また、本発明は、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるロボット装置による顔認識状況の提示方法の提供を目的とする。
【0019】
【課題を解決するための手段】
本発明に係るロボット装置は、前記課題を解決するために、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記顔認識の提示に用いる。
【0020】
また、本発明に係るロボット装置による顔認識状況の提示方法は、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置による顔認識状況の提示方法であって、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、前記反射する工程によって前記カバー部に映しだされる顔、又は孔部に入って映しだされない顔を提示し、顔認識状況を提示する。
【0021】
また、本発明は、小型カメラを用いて画像を撮影する情報処理装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記画像を反射し、撮像の状況の提示に用いることを特徴とする情報処理装置であってもよい。
【0022】
【発明の実施の形態】
以下、本発明の一構成例として示す2足歩行タイプのロボット装置について、図面を参照して詳細に説明する。この人間型のロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態(怒り、悲しみ、喜び、楽しみ等)に応じて行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。つまり、音声や画像などの外的刺激の認識結果に基づいて自律的に行動制御を行うことができる。
【0023】
図1に示すように、ロボット装置1は、体幹部ユニット2の所定の位置に頭部ユニット3が連結されると共に、左右2つの腕部ユニット4R/4Lと、左右2つの脚部ユニット5R/5Lが連結されて構成されている(但し、R及びLの各々は、右及び左の各々を示す接尾辞である。以下において同じ。)。
【0024】
このロボット装置1は、図1及び図2に示すように、頭部ユニット3にCCD(charge coupled device)/CMOS(complementary metal−oxide semiconductor)撮像素子を用いた小型カメラを視覚センサとして2個、人間の目に相当する位置に配置している。以下では、便宜上、目部400L、400Rと記す。これら目部400L、400Rは、人間の左右の目と同様接近しており、その視差は顔認識の画像撮影時にはあまり問題とならないものとする。
【0025】
ロボット装置1は、目部400L、400Rを構成する、小型カメラを用いて外部環境に存在する人間の顔を撮像し、撮影画像を基に、顔認識や色認識などの画像認識処理や特徴抽出を行う。
【0026】
目部400L、400Rは、図3及び図4に示すように、小型カメラ200L及び200Rのレンズ420L及び420Rの視野角を塞ぐことのない孔部412を囲むカバー部410を有している。カバー部410は、例えばプラスチックにより形成され、カメラのレンズ420L及び420Rの前面カバーを構成するものである。特に、カバー部410は、図5に示すように、カメラのレンズ420の視野角(破線426で図示)とほぼ同等の角度(一点鎖線425で示す)をなす角錘面或いは円錐面に近い曲面状にカットされた孔部412の周辺のカバー形状を球形に近い凸面の曲面とする。また、このカバー部410は、前記凸面部分を、アルミニウム、銀又はクロムを蒸着して、反射率の高い鏡面としている。
【0027】
このようにカバー部410を反射率の高い鏡面とすることにより、外部環境に存在する使用者は自らの姿を図6の(a)、(b)、(c)に示すように映しだして見ることができる。図6の(a)では、使用者の顔部450及び胴体部451は、カバー部410の鏡面上の向かって左側に映っている。図6の(b)では、使用者の顔部450及び胴体部451は、カバー部410の鏡面上の向かって右側に映っている。しかし、図6の(c)では、胴体部451は鏡面の中央下部に映っているが頭部は孔部412にかかって使用者の目から視認できない状態となっている。
【0028】
ロボット装置1が使用者の顔部450及び胴体部451を、カバー部410の鏡面の向かって左側に映しているときは、顔を認識していない(図6の(a))。使用者の顔部450及び胴体部451を、バー部410の鏡面の向かって右側に映しているときも、顔を認識していない(図6の(b))。しかし、胴体部451を鏡面の中央下部に映しているが、頭部を孔部412にかけて使用者の目から視認できない状態としたときは、顔を認識している(図6の(c))。つまり、図6の(c)状態は、顔部450がロボットのカメラのレンズの視野角内に入っていることを示す。もちろん、顔認識を可能とする程度に顔部450が孔部412に入っていれば十分な場合もある。
【0029】
このように、使用者は、カバー部410の鏡面に顔が映しだされる状態、又は孔部に入って映しだされない状態を確認することができ、それによってロボット装置における顔認識状況の提示を受ける。
【0030】
すなわち、ロボット装置は、顔認識状況の提示方法を実行することにより、小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、前記反射する工程によって顔が前記カバー部に映しだされる状態、又は孔部に入って映しだされない状態を提示し、顔認識状況を提示することができる。
【0031】
したがって、使用者は、カメラの方向、視野角を容易に確認できるので、ロボット装置の顔認識処理を速やかに行わせることができる。
【0032】
図7には、前述した目部400L、400Rを備える2足歩行のロボット装置の概略を示す。図7に示すように、ロボット装置1の頭部ユニット250には、2台のCCDカメラ200R,200Lが設けられ、このCCDカメラ200R,200Lの後段には、ステレオ画像処理装置210が設けられている。2台のCCDカメラ(以下、右目200R、左目200Lという。)により撮像された右目画像201R、左目画像201Lは、ステレオ画像処理装置210に入力される。ステレオ画像処理装置210は、各画像201R,201Lの視差情報(disparity data)(距離情報)を計算し、カラー画像(YUV:輝度Y、UV色差)202及び視差画像(YDR:輝度Y、視差D、信頼度R)203をフレーム毎に左右交互に算出する。ここで、視差とは、空間中のある点が左目及び右目に写像される点の違いを示し、そのカメラからの距離に応じて変化するものである。
【0033】
このカラー画像202及び視差画像203はロボット装置1の体幹部260に内蔵されたCPU(制御部)220に入力される。また、ロボット装置1の各関節にはアクチュエータ230が設けられており、CPU220からの指令となる制御信号231が供給されて、その指令値に応じてモータを駆動する。各関節(アクチュエータ)には、ポテンショメータが取り付けられ、その時のモータの回転角がCPU220に送られる。このアクチュエータに取り付けられたポテンショメータ、足底に取り付けられたタッチセンサ及び体幹部に取り付けられたジャイロ・センサ等の各センサ240は、現在の関節角度、設置情報、及び姿勢情報等の現在のロボット装置の状態を計測し、センサデータ241としてCPU220へ出力する。CPU220は、ステレオ画像処理装置210からのカラー画像202及び視差画像203と、アクチュエータの全ての関節角度等のセンサデータ241とが入力され、これらデータが後述するソフトウェアにより処理され、様々な動作を自律的に行うことが可能となる。
【0034】
図8は、本実施の形態におけるロボット装置を動作させるソフトウェアの構成を示す模式図である。本実施の形態におけるソフトウェアは、オブジェクト単位で構成され、ロボット装置の位置、移動量、周囲の障害物、ランドマーク、ランドマーク地図、行動可能領域等を認識し、ロボット装置が最終的に取るべき行動についての行動列を出力する各種認識処理等を行うものである。なお、ロボット装置の位置を示す座標として、例えば、ランドマーク等の特定の物体等を座標の原点としたワールド基準系のカメラ座標系(以下、絶対座標ともいう。)と、ロボット装置自身を中心(座標の原点)としたロボット中心座標系(以下、相対座標ともいう。)との2つの座標を使用する。
【0035】
オブジェクト同士は、非同期に通信し合うことで、システム全体が動作する。各オブジェクトはメッセージ通信と共有メモリを使用したオブジェクト間通信方法によりデータの受け渡し及びプログラムの起動(Invoke)を行っている。図8に示すように、本実施の形態におけるロボット装置のソフトウェア300は、ロボット装置の移動量を算出する移動量算出手段(キネマティックオドメトリ(Kinematics Odometry))KINE310、環境内の平面を抽出する平面抽出部(Plane Extractor)PLEX320、環境内の障害物を認識する障害物グリッド算出部(Occupancy Grid)OG330、人工的なランドマークを含む環境において、自身のセンサ情報及び移動量算出手段から供給される自身の動作情報によって、ロボット装置の自己位置(位置及び姿勢)や、後述のランドマークの位置情報を特定するランドマーク位置検出部(Landmark Sensor)CLS340、ロボット中心座標を絶対座標に変換する絶対座標算出部(Localization)LZ350及びロボット装置の取るべき行動を決定する行動決定部(Situated behavior Layer)SBL360から構成され、各オブジェクト単位にて処理がなされる。
【0036】
このロボット装置1が具備する関節自由度構成を図9に模式的に示す。頭部ユニット3を支持する首関節は、首関節ヨー軸101と、首関節ピッチ軸102と、首関節ロール軸103という3自由度を有している。
【0037】
また、上肢を構成する各々の腕部ユニット4R/Lは、肩関節ピッチ軸107と、肩関節ロール軸108と、上腕ヨー軸109と、肘関節ピッチ軸110と、前腕ヨー軸111と、手首関節ピッチ軸112と、手首関節ロール輪113と、手部114とで構成される。手部114は、実際には、複数本の指を含む多関節・多自由度構造体である。ただし、手部114の動作は、ロボット装置1の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は7自由度を有するとする。
【0038】
また、体幹部ユニット2は、体幹ピッチ軸104と、体幹ロール軸105と、体幹ヨー軸106という3自由度を有する。
【0039】
また、下肢を構成する各々の脚部ユニット5R/Lは、股関節ヨー軸115と、股関節ピッチ軸116と、股関節ロール軸117と、膝関節ピッチ軸118と、足首関節ピッチ軸119と、足首関節ロール軸120と、足部121とで構成される。本明細書中では、股関節ピッチ軸116と股関節ロール軸117の交点は、ロボット装置1の股関節位置を定義する。人体の足部121は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置1の足底は、ゼロ自由度とする。したがって、各脚部は、6自由度で構成される。
【0040】
以上を総括すれば、ロボット装置1全体としては、合計で3+7×2+3+6×2=32自由度を有することになる。ただし、エンターテインメント向けのロボット装置1が必ずしも32自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度、即ち関節数を適宜増減することができることはいうまでもない。
【0041】
上述したようなロボット装置1がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、2足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
【0042】
図10には、ロボット装置1の制御システム構成を模式的に示している。同図に示すように、ロボット装置1は、ヒトの四肢を表現した体幹部ユニット2,頭部ユニット3,腕部ユニット4R/L,脚部ユニット5R/Lと、各ユニット間の協調動作を実現するための適応制御を行う制御ユニット10とで構成される。
【0043】
ロボット装置1全体の動作は、制御ユニット10によって統括的に制御される。制御ユニット10は、CPU(Central Processing Unit)や、DRAM、フラッシュROM等の主要回路コンポーネント(図示しない)で構成される主制御部11と、電源回路やロボット装置1の各構成要素とのデータやコマンドの授受を行うインターフェイス(何れも図示しない)などを含んだ周辺回路12とで構成される。
【0044】
この制御ユニット10の設置場所は、特に限定されない。図10では体幹部ユニット2に搭載されているが、頭部ユニット3に搭載してもよい。あるいは、ロボット装置1外に制御ユニット10を配備して、ロボット装置1の機体とは有線又は無線で交信するようにしてもよい。
【0045】
図10に示したロボット装置1内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。即ち、頭部ユニット3には、首関節ヨー軸101、首関節ピッチ軸102、首関節ロール軸103の各々を表現する首関節ヨー軸アクチュエータA2、首関節ピッチ軸アクチュエータA3、首関節ロール軸アクチュエータA4が配設されている。
【0046】
また、頭部ユニット3には、外部の状況を撮像するためのCCD(Charge Coupled Device)カメラが設けられているほか、前方に位置する物体までの距離を測定するための距離センサ、外部音を集音するためのマイク、音声を出力するためのスピーカ、使用者からの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出するためのタッチセンサ等が配設されている。
【0047】
また、体幹部ユニット2には、体幹ピッチ軸104、体幹ロール軸105、体幹ヨー軸106の各々を表現する体幹ピッチ軸アクチュエータA5、体幹ロール軸アクチュエータA6、体幹ヨー軸アクチュエータA7が配設されている。また、体幹部ユニット2には、このロボット装置1の起動電源となるバッテリを備えている。このバッテリは、充放電可能な電池によって構成されている。
【0048】
また、腕部ユニット4R/Lは、上腕ユニット41R/Lと、肘関節ユニット42R/Lと、前腕ユニット43R/Lに細分化されるが、肩関節ピッチ軸107、肩関節ロール軸108、上腕ヨー軸109、肘関節ピッチ軸110、前腕ヨー軸111、手首関節ピッチ軸112、手首関節ロール軸113の各々表現する肩関節ピッチ軸アクチュエータA8、肩関節ロール軸アクチュエータA9、上腕ヨー軸アクチュエータA10、肘関節ピッチ軸アクチュエータA11、肘関節ロール軸アクチュエータA12、手首関節ピッチ軸アクチュエータA13、手首関節ロール軸アクチュエータA14が配備されている。
【0049】
また、脚部ユニット5R/Lは、大腿部ユニット51R/Lと、膝ユニット52R/Lと、脛部ユニット53R/Lに細分化されるが、股関節ヨー軸115、股関節ピッチ軸116、股関節ロール軸117、膝関節ピッチ軸118、足首関節ピッチ軸119、足首関節ロール軸120の各々を表現する股関節ヨー軸アクチュエータA16、股関節ピッチ軸アクチュエータA17、股関節ロール軸アクチュエータA18、膝関節ピッチ軸アクチュエータA19、足首関節ピッチ軸アクチュエータA20、足首関節ロール軸アクチュエータA21が配備されている。各関節に用いられるアクチュエータA2,A3・・・は、より好ましくは、ギア直結型で旦つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ACサーボ・アクチュエータで構成することができる。
【0050】
体幹部ユニット2、頭部ユニット3、各腕部ユニット4R/L、各脚部ユニット5R/Lなどの各機構ユニット毎に、アクチュエータ駆動制御部の副制御部20,21,22R/L,23R/Lが配備されている。さらに、各脚部ユニット5R/Lの足底が着床したか否かを検出する接地確認センサ30R/Lを装着するとともに、体幹部ユニット2内には、姿勢を計測する姿勢センサ31を装備している。
【0051】
接地確認センサ30R/Lは、例えば足底に設置された近接センサ又はマイクロ・スイッチなどで構成される。また、姿勢センサ31は、例えば、加速度センサとジャイロ・センサの組み合わせによって構成される。
【0052】
接地確認センサ30R/Lの出力によって、歩行・走行などの動作期間中において、左右の各脚部が現在立脚又は遊脚何れの状態であるかを判別することができる。また、姿勢センサ31の出力により、体幹部分の傾きや姿勢を検出することができる。
【0053】
主制御部11は、各センサ30R/L,31の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部20,21,22R/L,23R/Lの各々に対して適応的な制御を行い、ロボット装置1の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現できる。
【0054】
ロボット装置1の機体上での全身運動は、足部運動、ZMP(Zero Moment Point)軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容にしたがった動作を指示するコマンドを各副制御部20,21,22R/L,23R/Lに転送する。そして、各々の副制御部20,21,・・・等では、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・等に対して駆動制御信号を出力する。ここでいう「ZMP」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ZMP軌道」とは、例えばロボット装置1の歩行動作期間中にZMPが動く軌跡を意味する。なお、ZMPの概念並びにZMPを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩行ロボットと人工の足』(日刊工業新聞社))に記載されている。
【0055】
以上のように、ロボット装置1は、各々の副制御部20,21,・・・等が、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・に対して駆動制御信号を出力し、各ユニットの駆動を制御している。これにより、ロボット装置1は、目標の姿勢に安定して遷移し、安定した姿勢で歩行できる。
【0056】
また、ロボット装置1における制御ユニット10では、上述したような姿勢制御のほかに、加速度センサ、タッチセンサ、接地確認センサ等の各種センサ、及びCCDカメラからの画像情報、マイクからの音声情報等を統括して処理している。制御ユニット10では、図示しないが加速度センサ、ジャイロ・センサ、タッチセンサ、距離センサ、マイク、スピーカなどの各種センサ、各アクチュエータ、CCDカメラ及びバッテリが各々対応するハブを介して主制御部11と接続されている。
【0057】
主制御部11は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部インターフェイスを介してDRAM内の所定位置に順次格納する。また、主制御部11は、バッテリから供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM内の所定位置に格納する。DRAMに格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、主制御部11がこのロボット装置1の動作制御を行う際に利用される。
【0058】
主制御部11は、ロボット装置1の電源が投入された初期時、制御プログラムを読み出し、これをDRAMに格納する。また、主制御部11は、上述のように主制御部11よりDRAMに順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
【0059】
さらに、主制御部11は、この判断結果及びDRAMに格納した制御プログラムに基づいて自己の状況に応じて行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータを駆動させることによりロボット装置1に、いわゆる「身振り」、「手振り」といった行動をとらせる。
【0060】
このようにしてロボット装置1は、制御プログラムに基づいて自己及び周囲の状況を判断し、使用者からの指示及び働きかけに応じて自律的に行動できる。
【0061】
ところで、このロボット装置1は、内部状態に応じて自律的に行動することができる。そこで、ロボット装置1における制御プログラムのソフトウェア構成例について、図11乃至図16を用いて説明する。なお、この制御プログラムは、上述したように、予めフラッシュROM12に格納されており、ロボット装置1の電源投入初期時において読み出される。
【0062】
図11において、デバイス・ドライバ・レイヤ40は、制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット41から構成されている。この場合、各デバイス・ドライバは、CCDカメラやタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【0063】
また、ロボティック・サーバ・オブジェクト42は、デバイス・ドライバ・レイヤ40の最下位層に位置し、例えば上述の各種センサやアクチュエータ281〜28n等のハードウェアにアクセスするためのインターフェイスを提供するソフトウェア群でなるバーチャル・ロボット43と、電源の切換えなどを管理するソフトウェア群でなるパワーマネージャ44と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ45と、ロボット装置1の機構を管理するソフトウェア群でなるデザインド・ロボット46とから構成されている。
【0064】
マネージャ・オブジェクト47は、オブジェクト・マネージャ48及びサービス・マネージャ49から構成されている。オブジェクト・マネージャ48は、ロボティック・サーバ・オブジェクト42、ミドル・ウェア・レイヤ50、及びアプリケーション・レイヤ51に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ49は、メモリカードに格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【0065】
ミドル・ウェア・レイヤ50は、ロボティック・サーバ・オブジェクト42の上位層に位置し、画像処理や音声処理などのこのロボット装置1の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ51は、ミドル・ウェア・レイヤ50の上位層に位置し、当該ミドル・ウェア・レイヤ50を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置1の行動を決定するためのソフトウェア群から構成されている。
【0066】
なお、ミドル・ウェア・レイヤ50及びアプリケーション・レイヤ51の具体なソフトウェア構成をそれぞれ図12に示す。
【0067】
ミドル・ウェア・レイヤ50は、図12に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール60〜68並びに入力セマンティクスコンバータモジュール69などを有する認識系70と、出力セマンティクスコンバータモジュール78並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、LED点灯用及び音再生用の各信号処理モジュール71〜77などを有する出力系79とから構成されている。
【0068】
認識系70の各信号処理モジュール60〜68は、ロボティック・サーバ・オブジェクト42のバーチャル・ロボット43によりDRAMから読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール69に与える。ここで、例えば、バーチャル・ロボット43は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
【0069】
入力セマンティクスコンバータモジュール69は、これら各信号処理モジュール60〜68から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ41に出力する。
【0070】
アプリケーション・レイヤ51は、図13に示すように、行動モデルライブラリ80、行動切換モジュール81、学習モジュール82、感情モデル83及び本能モデル84の5つのモジュールから構成されている。
【0071】
行動モデルライブラリ80には、図14に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択されたいくつかの条件項目にそれぞれ対応させて、それぞれ独立した行動モデルが設けられている。
【0072】
そして、これら行動モデルは、それぞれ入力セマンティクスコンバータモジュール69から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル83に保持されている対応する情動のパラメータ値や、本能モデル84に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール81に出力する。
【0073】
なお、この実施の形態の場合、各行動モデルは、次の行動を決定する手法として、図15に示すような1つのノード(状態)NODE0〜NODEnから他のどのノードNODE0〜NODEnに遷移するかを各ノードNODE0〜NODEnに間を接続するアークARC1〜ARCn1に対してそれぞれ設定された遷移確率P1〜Pnに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
【0074】
具体的に、各行動モデルは、それぞれ自己の行動モデルを形成するノードNODE0〜NODEnにそれぞれ対応させて、これらノードNODE0〜NODEn毎に図16に示すような状態遷移表90を有している。
【0075】
この状態遷移表90では、そのノードNODE0〜NODEnにおいて遷移条件とする入力イベント(認識結果)が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
【0076】
したがって、図16の状態遷移表90で表されるノードNODE100では、「ボールを検出(BALL)」という認識結果が与えられた場合に、当該認識結果とともに与えられるそのボールの「大きさ(SIZE)」が「0から1000」の範囲であることや、「障害物を検出(OBSTACLE)」という認識結果が与えられた場合に、当該認識結果とともに与えられるその障害物までの「距離(DISTANCE)」が「0から100」の範囲であることが他のノードに遷移するための条件となっている。
【0077】
また、このノードNODE100では、認識結果の入力がない場合においても、行動モデルが周期的に参照する感情モデル83及び本能モデル84にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル83に保持された「喜び(Joy)」、「驚き(Surprise)」又は「悲しみ(Sadness)」の何れかのパラメータ値が「50から100」の範囲であるときには他のノードに遷移することができるようになっている。
【0078】
また、状態遷移表90では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードNODE0〜NODEnから遷移できるノード名が列記されているとともに、「入力イベント名」、「データ名」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードNODE0〜NODEnへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードNODE0〜NODEnに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は100[%]となっている。
【0079】
したがって、図16の状態遷移表90で表されるノードNODE100では、例えば「ボールを検出(BALL)」し、そのボールの「SIZE(大きさ)」が「0から1000」の範囲であるという認識結果が与えられた場合には、「30[%]」の確率で「ノードNODE120(node 120)」に遷移でき、そのとき「ACTION1」の行動が出力されることとなる。
【0080】
各行動モデルは、それぞれこのような状態遷移表90として記述されたノードNODE0〜 NODEnが幾つも繋がるようにして構成されており、入力セマンティクスコンバータモジュール69から認識結果が与えられたときなどに、対応するノードNODE0〜NODEnの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール81に出力するようになされている。
【0081】
図14に示す行動切換モジュール81は、行動モデルライブラリ80の各行動モデルからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデルから出力された行動を選択し、当該行動を実行すべき旨のコマンド(以下、行動コマンドという。)をミドル・ウェア・レイヤ50の出力セマンティクスコンバータモジュール78に送出する。なお、この実施の形態においては、図15において下側に表記された行動モデルほど優先順位が高く設定されている。
【0082】
また、行動切換モジュール81は、行動完了後に出力セマンティクスコンバータモジュール78から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール82、感情モデル83及び本能モデル84に通知する。
【0083】
一方、学習モジュール82は、入力セマンティクスコンバータモジュール69から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。
【0084】
そして、学習モジュール82は、この認識結果及び行動切換えモジュール71からの通知に基づいて、「叩かれた(叱られた)」ときにはその行動の発現確率を低下させ、「撫でられた(誉められた)」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ70における対応する行動モデルの対応する遷移確率を変更する。
【0085】
他方、感情モデル83は、「喜び(Joy)」、「悲しみ(Sadness)」、「怒り(Anger)」、「驚き(Surprise)」、「嫌悪(Disgust)」及び「恐れ(Fear)」の合計6つの情動について、各情動毎にその情動の強さを表すパラメータを保持している。そして、感情モデル83は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール69から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果や、経過時間及び行動切換モジュール81からの通知などに基づいて周期的に更新する。
【0086】
具体的には、感情モデル83は、入力セマンティクスコンバータモジュール69から与えられる認識結果と、そのときのロボット装置1の行動と、前回更新してからの経過時間となどに基づいて所定の演算式により算出されるそのときのその情動の変動量を△E[t]、現在のその情動のパラメータ値をE[t]、その情動の感度を表す係数をkeとして、下記数式(11)によって次の周期におけるその情動のパラメータ値E[t+1]を算出し、これを現在のその情動のパラメータ値E[t]と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル83は、これと同様にして全ての情動のパラメータ値により更新する。
E=[t+1]=E=[t]+ke×ΔE
なお、各認識結果や出力セマンティクスコンバータモジュール78からの通知が各情動のパラメータ値の変動量△E[t]にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△E[t]に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△E[t]に大きな影響を与えるようになっている。
【0087】
ここで、出力セマンティクスコンバータモジュール78からの通知とは、いわゆる行動のフィードバック情報(行動完了情報)であり、行動の出現結果の情報であり、感情モデル83は、このような情報によっても感情を変化させる。これは、例えば、「叫ぶ」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール78からの通知は、上述した学習モジュール82にも入力されており、学習モジュール82は、その通知に基づいて行動モデルの対応する遷移確率を変更する。
【0088】
なお、行動結果のフィードバックは、行動切換モジュール81の出力(感情が付加された行動)によりなされるものであってもよい。
【0089】
一方、本能モデル84は、「運動欲(exercise)」、「愛情欲(affection)」、「食欲(appetite)」及び「好奇心(curiosity)」の互いに独立した4つの欲求について、これら欲求毎にその欲求の強さを表すパラメータを保持している。そして、本能モデル84は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール69から与えられる認識結果や、経過時間及び行動切換モジュール81からの通知などに基づいて周期的に更新する。
【0090】
具体的には、本能モデル84は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール78からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔI[k]、現在のその欲求のパラメータ値をI[k]、その欲求の感度を表す係数kiとして、所定周期で下記数式(12)を用いて次の周期におけるその欲求のパラメータ値I[k+1]を算出し、この演算結果を現在のその欲求のパラメータ値I[k]と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル84は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
I[k+1]=I[k]+ki×ΔI[k]
なお、認識結果及び出力セマンティクスコンバータモジュール78からの通知などが各欲求のパラメータ値の変動量△I[k]にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール78からの通知は、「疲れ」のパラメータ値の変動量△I[k]に大きな影響を与えるようになっている。
【0091】
なお、この具体例においては、各情動及び各欲求(本能)のパラメータ値がそれぞれ0から100までの範囲で変動するように規制されており、また係数ke、kiの値も各情動及び各欲求毎に個別に設定されている。
【0092】
一方、ミドル・ウェア・レイヤ50の出力セマンティクスコンバータモジュール78は、図12に示すように、上述のようにしてアプリケーション・レイヤ51の行動切換モジュール81から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング(ボールを追いかける)」といった抽象的な行動コマンドを出力系79の対応する信号処理モジュール71〜77に与える。
【0093】
そしてこれら信号処理モジュール71〜77は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動をするために対応するアクチュエータに与えるべきサーボ指令値や、スピーカから出力する音の音声データ及び又はLEDに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト42のバーチャル・ロボット43及び信号処理回路を順次介して対応するアクチュエータ又はスピーカ又はLEDに順次送出する。
【0094】
このようにしてロボット装置1は、上述した制御プログラムに基づいて、自己(内部)及び周囲(外部)の状況や、使用者からの指示及び働きかけに応じた自律的な行動ができる。
【0095】
このような制御プログラムは、ロボット装置が読取可能な形式で記録された記録媒体を介して提供される。制御プログラムを記録する記録媒体としては、磁気読取方式の記録媒体(例えば、磁気テープ、フレキシブルディスク、磁気カード)、光学読取方式の記録媒体(例えば、CD−ROM、MO、CD−R、DVD)等が考えられる。記録媒体には、半導体メモリ(いわゆるメモリカード(矩形型、正方形型など形状は問わない。)、ICカード)等の記憶媒体も含まれる。また、制御プログラムは、いわゆるインターネット等を介して提供されてもよい。
【0096】
これらの制御プログラムは、専用の読込ドライバ装置、又はパーソナルコンピュータ等を介して再生され、有線又は無線接続によってロボット装置1に伝送されて読み込まれる。また、ロボット装置1は、半導体メモリ、又はICカード等の小型化された記憶媒体のドライブ装置を備える場合、これら記憶媒体から制御プログラムを直接読み込むこともできる。
【0097】
なお、顔認識処理について以下に説明しておく。ロボット装置は、顔検出器を備え、画像フレーム中から顔領域を検出する。小型カメラによって撮像した画像データを受け取り、それを9段階のスケール画像に縮小変換する。このすべての画像の中から顔に相当する矩形領域を探索する。重なりあった候補領域を削減して最終的に顔と判断された領域に関する位置や大きさ、特徴量などの顔情報(FaceInfo)を検出する。ここで検出された顔情報は短期記憶部へ送られる。
【0098】
短期記憶部は、ロボット装置1の外部環境に関する情報を比較的短い時間だけ保持するオブジェクトであり、音検出部から音(声)検出結果、色検出部から色検出結果、また顔検出部から顔検出結果、さらには関節角度検出部から関節角度のセンサ出力を受け取る。そして、これらの複数の検出情報を時間的及び空間的に整合性を保つように統合して、意味を持った統合情報として扱い、比較的短い時間、例えば15秒間保持する。これらの統合情報は、動作命令部及び首部動作生成部に渡される。
【0099】
動作命令部は、状況依存行動層等の上位モジュールである。首部動作生成部に対して首部の動作を指示するコマンドを発現する。短期記憶部にて保存されている統合情報に関するID(対象物ID)を指定することによって、すなわち、何に対してトラッキングするのかを指定するだけでロボット装置1にトラッキング動作を行わせることができる。
【0100】
首動作生成部は、動作命令部から首を動かすコマンドを受けたことに応答して、首の関節角を計算するモジュールである。「追跡」(本実施の形態では前記対象物ID)のコマンドを受けたときには、短期記憶部から受け取った情報を基に、その物体が存在する方向を向く首の関節角を計算して出力する。前記対象物IDを受け取り、最適な対象物情報を選択して、その選択した対象物情報が得られる方向を向くことになる。
【0101】
顔を認識する際には、顔を検出して顔の方向にCCDカメラを向け、カメラの視野に顔を入れる必要があり、ロボットのカメラを動かすモータの動きが遅かったり、回転角範囲に限界があったりして顔を検出することに時間がかかってしまうという問題が発生したが、本発明により、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるので、ロボット装置は顔認識処理を迅速に行うことができる。
【0102】
また、ロボット装置は、顔認識の対象とする使用者と対話をしながら、本発明の顔認識状況提示方法を実行し、視野に顔認識の対象となる顔が入っているか否かを提示してもよい。
【0103】
なお、本発明は、前記実施の形態にのみ適用が限定されるものではない。以下の変形例を挙げることができる。例えば、鏡面は別の場所にロボット装置の視野と同等の範囲を映し出すように設置してもよい。また、より確実に確認できるよう鏡の表示範囲とカメラの視野角の間にマージンを持たせるようにしてもよい。また、カバー部の凸面鏡部分を球形以外の形状、例えば円錐形状、多角錘形状にしてもよい。
【0104】
さらに、本発明は、小型カメラを用いて画像を撮影する、携帯電話、携帯型情報処理端末(PDA)、携帯型パーソナルコンピュータ等の情報処理装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記画像を反射し、撮像の状況の提示に用いることを特徴とする情報処理装置に適用してもよい。
【0105】
【発明の効果】
本発明によれば、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、カバー部に鏡面仕上げを施して顔認識の提示に用いるので、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができる。
【図面の簡単な説明】
【図1】ロボット装置の外観構成を示す図であって、ヒューマノイド型の2足歩行のロボット装置を示す斜視図である。
【図2】頭部に設けた目部の配置を示す図である。
【図3】目部の拡大図である。
【図4】頭部の断面図である。
【図5】目部の断面図であり、視野角も示す図である。
【図6】顔認識状況の提示方法を説明するための図である。
【図7】ロボット装置の概略を示すブロック図である。
【図8】ロボット装置を動作するソフトウェアの構成を示す模式図である。
【図9】本発明の実施の形態におけるロボット装置の自由度構成モデルを模式的に示す図である。
【図10】同ロボット装置の回路構成を示すブロック図である。
【図11】同ロボット装置のソフトウェア構成を示すブロック図である。
【図12】同ロボット装置のソフトウェア構成におけるミドル・ウェア・レイヤの構成を示すブロック図である。
【図13】同ロボット装置のソフトウェア構成におけるアプリケーション・レイヤの構成を示すブロック図である。
【図14】アプリケーション・レイヤの行動モデルライブラリの構成を示すブロック図である。
【図15】同ロボット装置の行動決定のための情報となる有限確率オートマトンを説明する図である。
【図16】有限確率オートマトンの各ノードに用意された状態遷移表を示す図である。
【符号の説明】
1 ロボット装置、3 頭部、400L,400R 目部、410 カバー部(鏡面)、412 孔部
【発明の属する技術分野】
本発明は、小型カメラを視覚センサとして有し、外部環境に存在する人間の顔を認識するロボット装置及びロボット装置による顔認識状況の提示方法に関する。
【0002】
【従来の技術】
電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機械装置のことを「ロボット」という。ロボットの語源は、スラブ語の”ROBOTA(奴隷機械)”に由来すると言われている。わが国では、ロボットが普及し始めたのは1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化などを目的としたマニピュレータや搬送ロボットなどの産業用ロボット(industrial robot)であった。
【0003】
最近では、イヌやネコ、クマのように4足歩行の動物の身体メカニズムやその動作を模したペット型ロボット、あるいは、ヒトやサルなどの2足直立歩行を行う動物の身体メカニズムや動作を模した「人間形」若しくは「人間型」のロボット(humanoid robot)など、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。
【0004】
アーム式ロボットのように、ある特定の場所に植設して用いるような据置きタイプのロボットは、部品の組立・選別作業など固定的・局所的な作業空間でのみ活動する。これに対し、移動式のロボットは、作業空間は非限定的であり、所定の経路上または無経路上を自在に移動して、所定の若しくは任意の人的作業を代行したり、ヒトやイヌあるいはその他の生命体に置き換わる種々のサービスを提供することができる。
【0005】
脚式移動ロボットの用途の1つとして、産業活動・生産活動等における各種の難作業の代行が挙げられる。例えば、原子力発電プラントや火力発電プラント、石油化学プラントにおけるメンテナンス作業、製造工場における部品の搬送・組立作業、高層ビルにおける清掃、火災現場その他における救助といったような危険作業・難作業の代行などである。
【0006】
また、脚式移動ロボットの他の用途として、上述の作業支援というよりも、生活密着型、すなわち人間との「共生」あるいは「エンターティンメント」という用途が挙げられる。この種のロボットは、ヒトあるいはイヌ(ペット)、クマなどの比較的知性の高い脚式歩行動物の動作メカニズムや四肢を利用した豊かな感情表現を忠実に再現する。また、あらかじめ入力された動作パターンを単に忠実に実行するだけではなく、ユーザ(あるいは他のロボット)から受ける言葉や態度(「褒める」とか「叱る」、「叩く」など)に対して動的に対応した、生き生きとした応答表現を実現することも要求される。
【0007】
従来の玩具機械は、ユーザ操作と応答動作との関係が固定的であり、玩具の動作をユーザの好みに合わせて変更することはできない。この結果、ユーザは同じ動作しか繰り返さない玩具をやがては飽きてしまうことになる。
【0008】
これに対し、自律動作を行うインテリジェントなロボットは、一般に、外界の情報を認識してそれに対して自身の行動を反映させる機能を持っている。すなわち、ロボットは、外部環境からの音声や画像、触覚などの入力情報に基づいて感情モデルや本能モデルを変化させて動作を決定することにより、自律的な思考及び動作制御を実現する。すなわち、ロボットが感情モデルや本能モデルを用意することにより、より高度な知的レベルで人間とのリアリスティックなコミュニケーションを実現することも可能となる。
【0009】
ロボットが環境変化に応じた自律動作を行うために、従来は、ある1つの観測結果に対してその情報を受けて行動を取るような単純な行動記述の組み合わせで行動を記述していた。これら入力に対する行動のマッピングにより、ランダム性、内部状態(感情・本能)、学習、成長などの機能を導入することで一意ではない複雑な行動の発現を可能にすることができる。この行動の発現を行うところを、行動生成部という。
【0010】
例えば、2台のCCDカメラからなるステレオカメラを両目として配した首部を胴体部に対して可動可能とし、さらも2足歩行を可能とする左右の脚部を有した自律型ロボット装置にあって、首部の動作を生成するような行動生成部を首部動作生成部という。
【0011】
前記首部動作生成部を用いてロボットが使用者の顔など、人間の目に近い部分の認識をする必要がある場合、先ずロボット装置自体が前記2台のCCDカメラからなるステレオカメラを両目として用い、人間の顔を撮影して得た画像を基に顔認識をする。
【0012】
ところで、カメラにあって、撮影者自身による自己撮影を簡易に行うのに好適なカメラが特開平14−072291号公報に開示されている。これは、カメラの前面に収納位置から露呈位置へと移動自在な反射部材を備え、その反射部材に撮影者が顔を写しだして自己撮影を簡易に行う技術である。
【0013】
【特許文献1】
特開平14−072291号
【0014】
【発明が解決しようとする課題】
前記ロボット装置にあっては、前記特許文献1に開示された反射部材を首部に設けるのは、ヒューマノイド型であることを考慮すると、外観上問題がある。また、顔認識のための画像をCCDカメラにて撮影するには精度の高い調整が必要であり、レンズの視野角との関係から前記反射部材の設置位置の設定が難しい。
【0015】
しかし、前記ロボットが顔を撮影して得た画像を基に顔認識をする場合、顔を検出して顔の方向にCCDカメラを向け、カメラの視野に顔を入れる必要がある。この際にロボットのカメラを動かすモータの動きが遅かったり、回転角範囲に限界があったりして顔を検出することに時間がかかってしまった場合、人間はもどかしさを感じたり、飽きてしまったりすることが考えられる。
【0016】
このような状態を防ぐために、人間自身がロボットの視野に自分が入っているかどうかを容易に認識することができる手段はやはり必要である。
【0017】
本発明は、前記実情に鑑みてなされたものであり、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるロボット装置の提供を目的とする。
【0018】
また、本発明は、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるロボット装置による顔認識状況の提示方法の提供を目的とする。
【0019】
【課題を解決するための手段】
本発明に係るロボット装置は、前記課題を解決するために、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記顔認識の提示に用いる。
【0020】
また、本発明に係るロボット装置による顔認識状況の提示方法は、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置による顔認識状況の提示方法であって、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、前記反射する工程によって前記カバー部に映しだされる顔、又は孔部に入って映しだされない顔を提示し、顔認識状況を提示する。
【0021】
また、本発明は、小型カメラを用いて画像を撮影する情報処理装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記画像を反射し、撮像の状況の提示に用いることを特徴とする情報処理装置であってもよい。
【0022】
【発明の実施の形態】
以下、本発明の一構成例として示す2足歩行タイプのロボット装置について、図面を参照して詳細に説明する。この人間型のロボット装置は、住環境その他の日常生活上の様々な場面における人的活動を支援する実用ロボットであり、内部状態(怒り、悲しみ、喜び、楽しみ等)に応じて行動できるほか、人間が行う基本的な動作を表出できるエンターテインメントロボットである。つまり、音声や画像などの外的刺激の認識結果に基づいて自律的に行動制御を行うことができる。
【0023】
図1に示すように、ロボット装置1は、体幹部ユニット2の所定の位置に頭部ユニット3が連結されると共に、左右2つの腕部ユニット4R/4Lと、左右2つの脚部ユニット5R/5Lが連結されて構成されている(但し、R及びLの各々は、右及び左の各々を示す接尾辞である。以下において同じ。)。
【0024】
このロボット装置1は、図1及び図2に示すように、頭部ユニット3にCCD(charge coupled device)/CMOS(complementary metal−oxide semiconductor)撮像素子を用いた小型カメラを視覚センサとして2個、人間の目に相当する位置に配置している。以下では、便宜上、目部400L、400Rと記す。これら目部400L、400Rは、人間の左右の目と同様接近しており、その視差は顔認識の画像撮影時にはあまり問題とならないものとする。
【0025】
ロボット装置1は、目部400L、400Rを構成する、小型カメラを用いて外部環境に存在する人間の顔を撮像し、撮影画像を基に、顔認識や色認識などの画像認識処理や特徴抽出を行う。
【0026】
目部400L、400Rは、図3及び図4に示すように、小型カメラ200L及び200Rのレンズ420L及び420Rの視野角を塞ぐことのない孔部412を囲むカバー部410を有している。カバー部410は、例えばプラスチックにより形成され、カメラのレンズ420L及び420Rの前面カバーを構成するものである。特に、カバー部410は、図5に示すように、カメラのレンズ420の視野角(破線426で図示)とほぼ同等の角度(一点鎖線425で示す)をなす角錘面或いは円錐面に近い曲面状にカットされた孔部412の周辺のカバー形状を球形に近い凸面の曲面とする。また、このカバー部410は、前記凸面部分を、アルミニウム、銀又はクロムを蒸着して、反射率の高い鏡面としている。
【0027】
このようにカバー部410を反射率の高い鏡面とすることにより、外部環境に存在する使用者は自らの姿を図6の(a)、(b)、(c)に示すように映しだして見ることができる。図6の(a)では、使用者の顔部450及び胴体部451は、カバー部410の鏡面上の向かって左側に映っている。図6の(b)では、使用者の顔部450及び胴体部451は、カバー部410の鏡面上の向かって右側に映っている。しかし、図6の(c)では、胴体部451は鏡面の中央下部に映っているが頭部は孔部412にかかって使用者の目から視認できない状態となっている。
【0028】
ロボット装置1が使用者の顔部450及び胴体部451を、カバー部410の鏡面の向かって左側に映しているときは、顔を認識していない(図6の(a))。使用者の顔部450及び胴体部451を、バー部410の鏡面の向かって右側に映しているときも、顔を認識していない(図6の(b))。しかし、胴体部451を鏡面の中央下部に映しているが、頭部を孔部412にかけて使用者の目から視認できない状態としたときは、顔を認識している(図6の(c))。つまり、図6の(c)状態は、顔部450がロボットのカメラのレンズの視野角内に入っていることを示す。もちろん、顔認識を可能とする程度に顔部450が孔部412に入っていれば十分な場合もある。
【0029】
このように、使用者は、カバー部410の鏡面に顔が映しだされる状態、又は孔部に入って映しだされない状態を確認することができ、それによってロボット装置における顔認識状況の提示を受ける。
【0030】
すなわち、ロボット装置は、顔認識状況の提示方法を実行することにより、小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、前記反射する工程によって顔が前記カバー部に映しだされる状態、又は孔部に入って映しだされない状態を提示し、顔認識状況を提示することができる。
【0031】
したがって、使用者は、カメラの方向、視野角を容易に確認できるので、ロボット装置の顔認識処理を速やかに行わせることができる。
【0032】
図7には、前述した目部400L、400Rを備える2足歩行のロボット装置の概略を示す。図7に示すように、ロボット装置1の頭部ユニット250には、2台のCCDカメラ200R,200Lが設けられ、このCCDカメラ200R,200Lの後段には、ステレオ画像処理装置210が設けられている。2台のCCDカメラ(以下、右目200R、左目200Lという。)により撮像された右目画像201R、左目画像201Lは、ステレオ画像処理装置210に入力される。ステレオ画像処理装置210は、各画像201R,201Lの視差情報(disparity data)(距離情報)を計算し、カラー画像(YUV:輝度Y、UV色差)202及び視差画像(YDR:輝度Y、視差D、信頼度R)203をフレーム毎に左右交互に算出する。ここで、視差とは、空間中のある点が左目及び右目に写像される点の違いを示し、そのカメラからの距離に応じて変化するものである。
【0033】
このカラー画像202及び視差画像203はロボット装置1の体幹部260に内蔵されたCPU(制御部)220に入力される。また、ロボット装置1の各関節にはアクチュエータ230が設けられており、CPU220からの指令となる制御信号231が供給されて、その指令値に応じてモータを駆動する。各関節(アクチュエータ)には、ポテンショメータが取り付けられ、その時のモータの回転角がCPU220に送られる。このアクチュエータに取り付けられたポテンショメータ、足底に取り付けられたタッチセンサ及び体幹部に取り付けられたジャイロ・センサ等の各センサ240は、現在の関節角度、設置情報、及び姿勢情報等の現在のロボット装置の状態を計測し、センサデータ241としてCPU220へ出力する。CPU220は、ステレオ画像処理装置210からのカラー画像202及び視差画像203と、アクチュエータの全ての関節角度等のセンサデータ241とが入力され、これらデータが後述するソフトウェアにより処理され、様々な動作を自律的に行うことが可能となる。
【0034】
図8は、本実施の形態におけるロボット装置を動作させるソフトウェアの構成を示す模式図である。本実施の形態におけるソフトウェアは、オブジェクト単位で構成され、ロボット装置の位置、移動量、周囲の障害物、ランドマーク、ランドマーク地図、行動可能領域等を認識し、ロボット装置が最終的に取るべき行動についての行動列を出力する各種認識処理等を行うものである。なお、ロボット装置の位置を示す座標として、例えば、ランドマーク等の特定の物体等を座標の原点としたワールド基準系のカメラ座標系(以下、絶対座標ともいう。)と、ロボット装置自身を中心(座標の原点)としたロボット中心座標系(以下、相対座標ともいう。)との2つの座標を使用する。
【0035】
オブジェクト同士は、非同期に通信し合うことで、システム全体が動作する。各オブジェクトはメッセージ通信と共有メモリを使用したオブジェクト間通信方法によりデータの受け渡し及びプログラムの起動(Invoke)を行っている。図8に示すように、本実施の形態におけるロボット装置のソフトウェア300は、ロボット装置の移動量を算出する移動量算出手段(キネマティックオドメトリ(Kinematics Odometry))KINE310、環境内の平面を抽出する平面抽出部(Plane Extractor)PLEX320、環境内の障害物を認識する障害物グリッド算出部(Occupancy Grid)OG330、人工的なランドマークを含む環境において、自身のセンサ情報及び移動量算出手段から供給される自身の動作情報によって、ロボット装置の自己位置(位置及び姿勢)や、後述のランドマークの位置情報を特定するランドマーク位置検出部(Landmark Sensor)CLS340、ロボット中心座標を絶対座標に変換する絶対座標算出部(Localization)LZ350及びロボット装置の取るべき行動を決定する行動決定部(Situated behavior Layer)SBL360から構成され、各オブジェクト単位にて処理がなされる。
【0036】
このロボット装置1が具備する関節自由度構成を図9に模式的に示す。頭部ユニット3を支持する首関節は、首関節ヨー軸101と、首関節ピッチ軸102と、首関節ロール軸103という3自由度を有している。
【0037】
また、上肢を構成する各々の腕部ユニット4R/Lは、肩関節ピッチ軸107と、肩関節ロール軸108と、上腕ヨー軸109と、肘関節ピッチ軸110と、前腕ヨー軸111と、手首関節ピッチ軸112と、手首関節ロール輪113と、手部114とで構成される。手部114は、実際には、複数本の指を含む多関節・多自由度構造体である。ただし、手部114の動作は、ロボット装置1の姿勢制御や歩行制御に対する寄与や影響が少ないので、本明細書ではゼロ自由度と仮定する。したがって、各腕部は7自由度を有するとする。
【0038】
また、体幹部ユニット2は、体幹ピッチ軸104と、体幹ロール軸105と、体幹ヨー軸106という3自由度を有する。
【0039】
また、下肢を構成する各々の脚部ユニット5R/Lは、股関節ヨー軸115と、股関節ピッチ軸116と、股関節ロール軸117と、膝関節ピッチ軸118と、足首関節ピッチ軸119と、足首関節ロール軸120と、足部121とで構成される。本明細書中では、股関節ピッチ軸116と股関節ロール軸117の交点は、ロボット装置1の股関節位置を定義する。人体の足部121は、実際には多関節・多自由度の足底を含んだ構造体であるが、ロボット装置1の足底は、ゼロ自由度とする。したがって、各脚部は、6自由度で構成される。
【0040】
以上を総括すれば、ロボット装置1全体としては、合計で3+7×2+3+6×2=32自由度を有することになる。ただし、エンターテインメント向けのロボット装置1が必ずしも32自由度に限定されるわけではない。設計・制作上の制約条件や要求仕様等に応じて、自由度、即ち関節数を適宜増減することができることはいうまでもない。
【0041】
上述したようなロボット装置1がもつ各自由度は、実際にはアクチュエータを用いて実装される。外観上で余分な膨らみを排してヒトの自然体形状に近似させること、2足歩行という不安定構造体に対して姿勢制御を行うことなどの要請から、アクチュエータは小型且つ軽量であることが好ましい。
【0042】
図10には、ロボット装置1の制御システム構成を模式的に示している。同図に示すように、ロボット装置1は、ヒトの四肢を表現した体幹部ユニット2,頭部ユニット3,腕部ユニット4R/L,脚部ユニット5R/Lと、各ユニット間の協調動作を実現するための適応制御を行う制御ユニット10とで構成される。
【0043】
ロボット装置1全体の動作は、制御ユニット10によって統括的に制御される。制御ユニット10は、CPU(Central Processing Unit)や、DRAM、フラッシュROM等の主要回路コンポーネント(図示しない)で構成される主制御部11と、電源回路やロボット装置1の各構成要素とのデータやコマンドの授受を行うインターフェイス(何れも図示しない)などを含んだ周辺回路12とで構成される。
【0044】
この制御ユニット10の設置場所は、特に限定されない。図10では体幹部ユニット2に搭載されているが、頭部ユニット3に搭載してもよい。あるいは、ロボット装置1外に制御ユニット10を配備して、ロボット装置1の機体とは有線又は無線で交信するようにしてもよい。
【0045】
図10に示したロボット装置1内の各関節自由度は、それぞれに対応するアクチュエータによって実現される。即ち、頭部ユニット3には、首関節ヨー軸101、首関節ピッチ軸102、首関節ロール軸103の各々を表現する首関節ヨー軸アクチュエータA2、首関節ピッチ軸アクチュエータA3、首関節ロール軸アクチュエータA4が配設されている。
【0046】
また、頭部ユニット3には、外部の状況を撮像するためのCCD(Charge Coupled Device)カメラが設けられているほか、前方に位置する物体までの距離を測定するための距離センサ、外部音を集音するためのマイク、音声を出力するためのスピーカ、使用者からの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出するためのタッチセンサ等が配設されている。
【0047】
また、体幹部ユニット2には、体幹ピッチ軸104、体幹ロール軸105、体幹ヨー軸106の各々を表現する体幹ピッチ軸アクチュエータA5、体幹ロール軸アクチュエータA6、体幹ヨー軸アクチュエータA7が配設されている。また、体幹部ユニット2には、このロボット装置1の起動電源となるバッテリを備えている。このバッテリは、充放電可能な電池によって構成されている。
【0048】
また、腕部ユニット4R/Lは、上腕ユニット41R/Lと、肘関節ユニット42R/Lと、前腕ユニット43R/Lに細分化されるが、肩関節ピッチ軸107、肩関節ロール軸108、上腕ヨー軸109、肘関節ピッチ軸110、前腕ヨー軸111、手首関節ピッチ軸112、手首関節ロール軸113の各々表現する肩関節ピッチ軸アクチュエータA8、肩関節ロール軸アクチュエータA9、上腕ヨー軸アクチュエータA10、肘関節ピッチ軸アクチュエータA11、肘関節ロール軸アクチュエータA12、手首関節ピッチ軸アクチュエータA13、手首関節ロール軸アクチュエータA14が配備されている。
【0049】
また、脚部ユニット5R/Lは、大腿部ユニット51R/Lと、膝ユニット52R/Lと、脛部ユニット53R/Lに細分化されるが、股関節ヨー軸115、股関節ピッチ軸116、股関節ロール軸117、膝関節ピッチ軸118、足首関節ピッチ軸119、足首関節ロール軸120の各々を表現する股関節ヨー軸アクチュエータA16、股関節ピッチ軸アクチュエータA17、股関節ロール軸アクチュエータA18、膝関節ピッチ軸アクチュエータA19、足首関節ピッチ軸アクチュエータA20、足首関節ロール軸アクチュエータA21が配備されている。各関節に用いられるアクチュエータA2,A3・・・は、より好ましくは、ギア直結型で旦つサーボ制御系をワンチップ化してモータ・ユニット内に搭載したタイプの小型ACサーボ・アクチュエータで構成することができる。
【0050】
体幹部ユニット2、頭部ユニット3、各腕部ユニット4R/L、各脚部ユニット5R/Lなどの各機構ユニット毎に、アクチュエータ駆動制御部の副制御部20,21,22R/L,23R/Lが配備されている。さらに、各脚部ユニット5R/Lの足底が着床したか否かを検出する接地確認センサ30R/Lを装着するとともに、体幹部ユニット2内には、姿勢を計測する姿勢センサ31を装備している。
【0051】
接地確認センサ30R/Lは、例えば足底に設置された近接センサ又はマイクロ・スイッチなどで構成される。また、姿勢センサ31は、例えば、加速度センサとジャイロ・センサの組み合わせによって構成される。
【0052】
接地確認センサ30R/Lの出力によって、歩行・走行などの動作期間中において、左右の各脚部が現在立脚又は遊脚何れの状態であるかを判別することができる。また、姿勢センサ31の出力により、体幹部分の傾きや姿勢を検出することができる。
【0053】
主制御部11は、各センサ30R/L,31の出力に応答して制御目標をダイナミックに補正することができる。より具体的には、副制御部20,21,22R/L,23R/Lの各々に対して適応的な制御を行い、ロボット装置1の上肢、体幹、及び下肢が協調して駆動する全身運動パターンを実現できる。
【0054】
ロボット装置1の機体上での全身運動は、足部運動、ZMP(Zero Moment Point)軌道、体幹運動、上肢運動、腰部高さなどを設定するとともに、これらの設定内容にしたがった動作を指示するコマンドを各副制御部20,21,22R/L,23R/Lに転送する。そして、各々の副制御部20,21,・・・等では、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・等に対して駆動制御信号を出力する。ここでいう「ZMP」とは、歩行中の床反力によるモーメントがゼロとなる床面上の点のことであり、また、「ZMP軌道」とは、例えばロボット装置1の歩行動作期間中にZMPが動く軌跡を意味する。なお、ZMPの概念並びにZMPを歩行ロボットの安定度判別規範に適用する点については、Miomir Vukobratovic著“LEGGED LOCOMOTION ROBOTS”(加藤一郎外著『歩行ロボットと人工の足』(日刊工業新聞社))に記載されている。
【0055】
以上のように、ロボット装置1は、各々の副制御部20,21,・・・等が、主制御部11からの受信コマンドを解釈して、各アクチュエータA2,A3・・・に対して駆動制御信号を出力し、各ユニットの駆動を制御している。これにより、ロボット装置1は、目標の姿勢に安定して遷移し、安定した姿勢で歩行できる。
【0056】
また、ロボット装置1における制御ユニット10では、上述したような姿勢制御のほかに、加速度センサ、タッチセンサ、接地確認センサ等の各種センサ、及びCCDカメラからの画像情報、マイクからの音声情報等を統括して処理している。制御ユニット10では、図示しないが加速度センサ、ジャイロ・センサ、タッチセンサ、距離センサ、マイク、スピーカなどの各種センサ、各アクチュエータ、CCDカメラ及びバッテリが各々対応するハブを介して主制御部11と接続されている。
【0057】
主制御部11は、上述の各センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部インターフェイスを介してDRAM内の所定位置に順次格納する。また、主制御部11は、バッテリから供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをDRAM内の所定位置に格納する。DRAMに格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、主制御部11がこのロボット装置1の動作制御を行う際に利用される。
【0058】
主制御部11は、ロボット装置1の電源が投入された初期時、制御プログラムを読み出し、これをDRAMに格納する。また、主制御部11は、上述のように主制御部11よりDRAMに順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自己及び周囲の状況や、使用者からの指示及び働きかけの有無などを判断する。
【0059】
さらに、主制御部11は、この判断結果及びDRAMに格納した制御プログラムに基づいて自己の状況に応じて行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータを駆動させることによりロボット装置1に、いわゆる「身振り」、「手振り」といった行動をとらせる。
【0060】
このようにしてロボット装置1は、制御プログラムに基づいて自己及び周囲の状況を判断し、使用者からの指示及び働きかけに応じて自律的に行動できる。
【0061】
ところで、このロボット装置1は、内部状態に応じて自律的に行動することができる。そこで、ロボット装置1における制御プログラムのソフトウェア構成例について、図11乃至図16を用いて説明する。なお、この制御プログラムは、上述したように、予めフラッシュROM12に格納されており、ロボット装置1の電源投入初期時において読み出される。
【0062】
図11において、デバイス・ドライバ・レイヤ40は、制御プログラムの最下位層に位置し、複数のデバイス・ドライバからなるデバイス・ドライバ・セット41から構成されている。この場合、各デバイス・ドライバは、CCDカメラやタイマ等の通常のコンピュータで用いられるハードウェアに直接アクセスすることを許されたオブジェクトであり、対応するハードウェアからの割り込みを受けて処理を行う。
【0063】
また、ロボティック・サーバ・オブジェクト42は、デバイス・ドライバ・レイヤ40の最下位層に位置し、例えば上述の各種センサやアクチュエータ281〜28n等のハードウェアにアクセスするためのインターフェイスを提供するソフトウェア群でなるバーチャル・ロボット43と、電源の切換えなどを管理するソフトウェア群でなるパワーマネージャ44と、他の種々のデバイス・ドライバを管理するソフトウェア群でなるデバイス・ドライバ・マネージャ45と、ロボット装置1の機構を管理するソフトウェア群でなるデザインド・ロボット46とから構成されている。
【0064】
マネージャ・オブジェクト47は、オブジェクト・マネージャ48及びサービス・マネージャ49から構成されている。オブジェクト・マネージャ48は、ロボティック・サーバ・オブジェクト42、ミドル・ウェア・レイヤ50、及びアプリケーション・レイヤ51に含まれる各ソフトウェア群の起動や終了を管理するソフトウェア群であり、サービス・マネージャ49は、メモリカードに格納されたコネクションファイルに記述されている各オブジェクト間の接続情報に基づいて各オブジェクトの接続を管理するソフトウェア群である。
【0065】
ミドル・ウェア・レイヤ50は、ロボティック・サーバ・オブジェクト42の上位層に位置し、画像処理や音声処理などのこのロボット装置1の基本的な機能を提供するソフトウェア群から構成されている。また、アプリケーション・レイヤ51は、ミドル・ウェア・レイヤ50の上位層に位置し、当該ミドル・ウェア・レイヤ50を構成する各ソフトウェア群によって処理された処理結果に基づいてロボット装置1の行動を決定するためのソフトウェア群から構成されている。
【0066】
なお、ミドル・ウェア・レイヤ50及びアプリケーション・レイヤ51の具体なソフトウェア構成をそれぞれ図12に示す。
【0067】
ミドル・ウェア・レイヤ50は、図12に示すように、騒音検出用、温度検出用、明るさ検出用、音階認識用、距離検出用、姿勢検出用、タッチセンサ用、動き検出用及び色認識用の各信号処理モジュール60〜68並びに入力セマンティクスコンバータモジュール69などを有する認識系70と、出力セマンティクスコンバータモジュール78並びに姿勢管理用、トラッキング用、モーション再生用、歩行用、転倒復帰用、LED点灯用及び音再生用の各信号処理モジュール71〜77などを有する出力系79とから構成されている。
【0068】
認識系70の各信号処理モジュール60〜68は、ロボティック・サーバ・オブジェクト42のバーチャル・ロボット43によりDRAMから読み出される各センサデータや画像データ及び音声データのうちの対応するデータを取り込み、当該データに基づいて所定の処理を施して、処理結果を入力セマンティクスコンバータモジュール69に与える。ここで、例えば、バーチャル・ロボット43は、所定の通信規約によって、信号の授受或いは変換をする部分として構成されている。
【0069】
入力セマンティクスコンバータモジュール69は、これら各信号処理モジュール60〜68から与えられる処理結果に基づいて、「うるさい」、「暑い」、「明るい」、「ボールを検出した」、「転倒を検出した」、「撫でられた」、「叩かれた」、「ドミソの音階が聞こえた」、「動く物体を検出した」又は「障害物を検出した」などの自己及び周囲の状況や、使用者からの指令及び働きかけを認識し、認識結果をアプリケーション・レイヤ41に出力する。
【0070】
アプリケーション・レイヤ51は、図13に示すように、行動モデルライブラリ80、行動切換モジュール81、学習モジュール82、感情モデル83及び本能モデル84の5つのモジュールから構成されている。
【0071】
行動モデルライブラリ80には、図14に示すように、「バッテリ残量が少なくなった場合」、「転倒復帰する」、「障害物を回避する場合」、「感情を表現する場合」、「ボールを検出した場合」などの予め選択されたいくつかの条件項目にそれぞれ対応させて、それぞれ独立した行動モデルが設けられている。
【0072】
そして、これら行動モデルは、それぞれ入力セマンティクスコンバータモジュール69から認識結果が与えられたときや、最後の認識結果が与えられてから一定時間が経過したときなどに、必要に応じて後述のように感情モデル83に保持されている対応する情動のパラメータ値や、本能モデル84に保持されている対応する欲求のパラメータ値を参照しながら続く行動をそれぞれ決定し、決定結果を行動切換モジュール81に出力する。
【0073】
なお、この実施の形態の場合、各行動モデルは、次の行動を決定する手法として、図15に示すような1つのノード(状態)NODE0〜NODEnから他のどのノードNODE0〜NODEnに遷移するかを各ノードNODE0〜NODEnに間を接続するアークARC1〜ARCn1に対してそれぞれ設定された遷移確率P1〜Pnに基づいて確率的に決定する有限確率オートマトンと呼ばれるアルゴリズムを用いる。
【0074】
具体的に、各行動モデルは、それぞれ自己の行動モデルを形成するノードNODE0〜NODEnにそれぞれ対応させて、これらノードNODE0〜NODEn毎に図16に示すような状態遷移表90を有している。
【0075】
この状態遷移表90では、そのノードNODE0〜NODEnにおいて遷移条件とする入力イベント(認識結果)が「入力イベント名」の列に優先順に列記され、その遷移条件についてのさらなる条件が「データ名」及び「データ範囲」の列における対応する行に記述されている。
【0076】
したがって、図16の状態遷移表90で表されるノードNODE100では、「ボールを検出(BALL)」という認識結果が与えられた場合に、当該認識結果とともに与えられるそのボールの「大きさ(SIZE)」が「0から1000」の範囲であることや、「障害物を検出(OBSTACLE)」という認識結果が与えられた場合に、当該認識結果とともに与えられるその障害物までの「距離(DISTANCE)」が「0から100」の範囲であることが他のノードに遷移するための条件となっている。
【0077】
また、このノードNODE100では、認識結果の入力がない場合においても、行動モデルが周期的に参照する感情モデル83及び本能モデル84にそれぞれ保持された各情動及び各欲求のパラメータ値のうち、感情モデル83に保持された「喜び(Joy)」、「驚き(Surprise)」又は「悲しみ(Sadness)」の何れかのパラメータ値が「50から100」の範囲であるときには他のノードに遷移することができるようになっている。
【0078】
また、状態遷移表90では、「他のノードヘの遷移確率」の欄における「遷移先ノード」の行にそのノードNODE0〜NODEnから遷移できるノード名が列記されているとともに、「入力イベント名」、「データ名」及び「データの範囲」の列に記述された全ての条件が揃ったときに遷移できる他の各ノードNODE0〜NODEnへの遷移確率が「他のノードヘの遷移確率」の欄内の対応する箇所にそれぞれ記述され、そのノードNODE0〜NODEnに遷移する際に出力すべき行動が「他のノードヘの遷移確率」の欄における「出力行動」の行に記述されている。なお、「他のノードヘの遷移確率」の欄における各行の確率の和は100[%]となっている。
【0079】
したがって、図16の状態遷移表90で表されるノードNODE100では、例えば「ボールを検出(BALL)」し、そのボールの「SIZE(大きさ)」が「0から1000」の範囲であるという認識結果が与えられた場合には、「30[%]」の確率で「ノードNODE120(node 120)」に遷移でき、そのとき「ACTION1」の行動が出力されることとなる。
【0080】
各行動モデルは、それぞれこのような状態遷移表90として記述されたノードNODE0〜 NODEnが幾つも繋がるようにして構成されており、入力セマンティクスコンバータモジュール69から認識結果が与えられたときなどに、対応するノードNODE0〜NODEnの状態遷移表を利用して確率的に次の行動を決定し、決定結果を行動切換モジュール81に出力するようになされている。
【0081】
図14に示す行動切換モジュール81は、行動モデルライブラリ80の各行動モデルからそれぞれ出力される行動のうち、予め定められた優先順位の高い行動モデルから出力された行動を選択し、当該行動を実行すべき旨のコマンド(以下、行動コマンドという。)をミドル・ウェア・レイヤ50の出力セマンティクスコンバータモジュール78に送出する。なお、この実施の形態においては、図15において下側に表記された行動モデルほど優先順位が高く設定されている。
【0082】
また、行動切換モジュール81は、行動完了後に出力セマンティクスコンバータモジュール78から与えられる行動完了情報に基づいて、その行動が完了したことを学習モジュール82、感情モデル83及び本能モデル84に通知する。
【0083】
一方、学習モジュール82は、入力セマンティクスコンバータモジュール69から与えられる認識結果のうち、「叩かれた」や「撫でられた」など、使用者からの働きかけとして受けた教示の認識結果を入力する。
【0084】
そして、学習モジュール82は、この認識結果及び行動切換えモジュール71からの通知に基づいて、「叩かれた(叱られた)」ときにはその行動の発現確率を低下させ、「撫でられた(誉められた)」ときにはその行動の発現確率を上昇させるように、行動モデルライブラリ70における対応する行動モデルの対応する遷移確率を変更する。
【0085】
他方、感情モデル83は、「喜び(Joy)」、「悲しみ(Sadness)」、「怒り(Anger)」、「驚き(Surprise)」、「嫌悪(Disgust)」及び「恐れ(Fear)」の合計6つの情動について、各情動毎にその情動の強さを表すパラメータを保持している。そして、感情モデル83は、これら各情動のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール69から与えられる「叩かれた」及び「撫でられた」などの特定の認識結果や、経過時間及び行動切換モジュール81からの通知などに基づいて周期的に更新する。
【0086】
具体的には、感情モデル83は、入力セマンティクスコンバータモジュール69から与えられる認識結果と、そのときのロボット装置1の行動と、前回更新してからの経過時間となどに基づいて所定の演算式により算出されるそのときのその情動の変動量を△E[t]、現在のその情動のパラメータ値をE[t]、その情動の感度を表す係数をkeとして、下記数式(11)によって次の周期におけるその情動のパラメータ値E[t+1]を算出し、これを現在のその情動のパラメータ値E[t]と置き換えるようにしてその情動のパラメータ値を更新する。また、感情モデル83は、これと同様にして全ての情動のパラメータ値により更新する。
E=[t+1]=E=[t]+ke×ΔE
なお、各認識結果や出力セマンティクスコンバータモジュール78からの通知が各情動のパラメータ値の変動量△E[t]にどの程度の影響を与えるかは予め決められており、例えば「叩かれた」といった認識結果は「怒り」の情動のパラメータ値の変動量△E[t]に大きな影響を与え、「撫でられた」といった認識結果は「喜び」の情動のパラメータ値の変動量△E[t]に大きな影響を与えるようになっている。
【0087】
ここで、出力セマンティクスコンバータモジュール78からの通知とは、いわゆる行動のフィードバック情報(行動完了情報)であり、行動の出現結果の情報であり、感情モデル83は、このような情報によっても感情を変化させる。これは、例えば、「叫ぶ」といった行動により怒りの感情レベルが下がるといったようなことである。なお、出力セマンティクスコンバータモジュール78からの通知は、上述した学習モジュール82にも入力されており、学習モジュール82は、その通知に基づいて行動モデルの対応する遷移確率を変更する。
【0088】
なお、行動結果のフィードバックは、行動切換モジュール81の出力(感情が付加された行動)によりなされるものであってもよい。
【0089】
一方、本能モデル84は、「運動欲(exercise)」、「愛情欲(affection)」、「食欲(appetite)」及び「好奇心(curiosity)」の互いに独立した4つの欲求について、これら欲求毎にその欲求の強さを表すパラメータを保持している。そして、本能モデル84は、これらの欲求のパラメータ値を、それぞれ入力セマンティクスコンバータモジュール69から与えられる認識結果や、経過時間及び行動切換モジュール81からの通知などに基づいて周期的に更新する。
【0090】
具体的には、本能モデル84は、「運動欲」、「愛情欲」及び「好奇心」については、認識結果、経過時間及び出力セマンティクスコンバータモジュール78からの通知などに基づいて所定の演算式により算出されるそのときのその欲求の変動量をΔI[k]、現在のその欲求のパラメータ値をI[k]、その欲求の感度を表す係数kiとして、所定周期で下記数式(12)を用いて次の周期におけるその欲求のパラメータ値I[k+1]を算出し、この演算結果を現在のその欲求のパラメータ値I[k]と置き換えるようにしてその欲求のパラメータ値を更新する。また、本能モデル84は、これと同様にして「食欲」を除く各欲求のパラメータ値を更新する。
I[k+1]=I[k]+ki×ΔI[k]
なお、認識結果及び出力セマンティクスコンバータモジュール78からの通知などが各欲求のパラメータ値の変動量△I[k]にどの程度の影響を与えるかは予め決められており、例えば出力セマンティクスコンバータモジュール78からの通知は、「疲れ」のパラメータ値の変動量△I[k]に大きな影響を与えるようになっている。
【0091】
なお、この具体例においては、各情動及び各欲求(本能)のパラメータ値がそれぞれ0から100までの範囲で変動するように規制されており、また係数ke、kiの値も各情動及び各欲求毎に個別に設定されている。
【0092】
一方、ミドル・ウェア・レイヤ50の出力セマンティクスコンバータモジュール78は、図12に示すように、上述のようにしてアプリケーション・レイヤ51の行動切換モジュール81から与えられる「前進」、「喜ぶ」、「鳴く」又は「トラッキング(ボールを追いかける)」といった抽象的な行動コマンドを出力系79の対応する信号処理モジュール71〜77に与える。
【0093】
そしてこれら信号処理モジュール71〜77は、行動コマンドが与えられると当該行動コマンドに基づいて、その行動をするために対応するアクチュエータに与えるべきサーボ指令値や、スピーカから出力する音の音声データ及び又はLEDに与える駆動データを生成し、これらのデータをロボティック・サーバ・オブジェクト42のバーチャル・ロボット43及び信号処理回路を順次介して対応するアクチュエータ又はスピーカ又はLEDに順次送出する。
【0094】
このようにしてロボット装置1は、上述した制御プログラムに基づいて、自己(内部)及び周囲(外部)の状況や、使用者からの指示及び働きかけに応じた自律的な行動ができる。
【0095】
このような制御プログラムは、ロボット装置が読取可能な形式で記録された記録媒体を介して提供される。制御プログラムを記録する記録媒体としては、磁気読取方式の記録媒体(例えば、磁気テープ、フレキシブルディスク、磁気カード)、光学読取方式の記録媒体(例えば、CD−ROM、MO、CD−R、DVD)等が考えられる。記録媒体には、半導体メモリ(いわゆるメモリカード(矩形型、正方形型など形状は問わない。)、ICカード)等の記憶媒体も含まれる。また、制御プログラムは、いわゆるインターネット等を介して提供されてもよい。
【0096】
これらの制御プログラムは、専用の読込ドライバ装置、又はパーソナルコンピュータ等を介して再生され、有線又は無線接続によってロボット装置1に伝送されて読み込まれる。また、ロボット装置1は、半導体メモリ、又はICカード等の小型化された記憶媒体のドライブ装置を備える場合、これら記憶媒体から制御プログラムを直接読み込むこともできる。
【0097】
なお、顔認識処理について以下に説明しておく。ロボット装置は、顔検出器を備え、画像フレーム中から顔領域を検出する。小型カメラによって撮像した画像データを受け取り、それを9段階のスケール画像に縮小変換する。このすべての画像の中から顔に相当する矩形領域を探索する。重なりあった候補領域を削減して最終的に顔と判断された領域に関する位置や大きさ、特徴量などの顔情報(FaceInfo)を検出する。ここで検出された顔情報は短期記憶部へ送られる。
【0098】
短期記憶部は、ロボット装置1の外部環境に関する情報を比較的短い時間だけ保持するオブジェクトであり、音検出部から音(声)検出結果、色検出部から色検出結果、また顔検出部から顔検出結果、さらには関節角度検出部から関節角度のセンサ出力を受け取る。そして、これらの複数の検出情報を時間的及び空間的に整合性を保つように統合して、意味を持った統合情報として扱い、比較的短い時間、例えば15秒間保持する。これらの統合情報は、動作命令部及び首部動作生成部に渡される。
【0099】
動作命令部は、状況依存行動層等の上位モジュールである。首部動作生成部に対して首部の動作を指示するコマンドを発現する。短期記憶部にて保存されている統合情報に関するID(対象物ID)を指定することによって、すなわち、何に対してトラッキングするのかを指定するだけでロボット装置1にトラッキング動作を行わせることができる。
【0100】
首動作生成部は、動作命令部から首を動かすコマンドを受けたことに応答して、首の関節角を計算するモジュールである。「追跡」(本実施の形態では前記対象物ID)のコマンドを受けたときには、短期記憶部から受け取った情報を基に、その物体が存在する方向を向く首の関節角を計算して出力する。前記対象物IDを受け取り、最適な対象物情報を選択して、その選択した対象物情報が得られる方向を向くことになる。
【0101】
顔を認識する際には、顔を検出して顔の方向にCCDカメラを向け、カメラの視野に顔を入れる必要があり、ロボットのカメラを動かすモータの動きが遅かったり、回転角範囲に限界があったりして顔を検出することに時間がかかってしまうという問題が発生したが、本発明により、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができるので、ロボット装置は顔認識処理を迅速に行うことができる。
【0102】
また、ロボット装置は、顔認識の対象とする使用者と対話をしながら、本発明の顔認識状況提示方法を実行し、視野に顔認識の対象となる顔が入っているか否かを提示してもよい。
【0103】
なお、本発明は、前記実施の形態にのみ適用が限定されるものではない。以下の変形例を挙げることができる。例えば、鏡面は別の場所にロボット装置の視野と同等の範囲を映し出すように設置してもよい。また、より確実に確認できるよう鏡の表示範囲とカメラの視野角の間にマージンを持たせるようにしてもよい。また、カバー部の凸面鏡部分を球形以外の形状、例えば円錐形状、多角錘形状にしてもよい。
【0104】
さらに、本発明は、小型カメラを用いて画像を撮影する、携帯電話、携帯型情報処理端末(PDA)、携帯型パーソナルコンピュータ等の情報処理装置において、前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、前記カバー部に鏡面仕上げを施して前記画像を反射し、撮像の状況の提示に用いることを特徴とする情報処理装置に適用してもよい。
【0105】
【発明の効果】
本発明によれば、小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、カバー部に鏡面仕上げを施して顔認識の提示に用いるので、ロボット装置の視野に顔認識の対象となる顔が入っているか否かを容易に提示することができる。
【図面の簡単な説明】
【図1】ロボット装置の外観構成を示す図であって、ヒューマノイド型の2足歩行のロボット装置を示す斜視図である。
【図2】頭部に設けた目部の配置を示す図である。
【図3】目部の拡大図である。
【図4】頭部の断面図である。
【図5】目部の断面図であり、視野角も示す図である。
【図6】顔認識状況の提示方法を説明するための図である。
【図7】ロボット装置の概略を示すブロック図である。
【図8】ロボット装置を動作するソフトウェアの構成を示す模式図である。
【図9】本発明の実施の形態におけるロボット装置の自由度構成モデルを模式的に示す図である。
【図10】同ロボット装置の回路構成を示すブロック図である。
【図11】同ロボット装置のソフトウェア構成を示すブロック図である。
【図12】同ロボット装置のソフトウェア構成におけるミドル・ウェア・レイヤの構成を示すブロック図である。
【図13】同ロボット装置のソフトウェア構成におけるアプリケーション・レイヤの構成を示すブロック図である。
【図14】アプリケーション・レイヤの行動モデルライブラリの構成を示すブロック図である。
【図15】同ロボット装置の行動決定のための情報となる有限確率オートマトンを説明する図である。
【図16】有限確率オートマトンの各ノードに用意された状態遷移表を示す図である。
【符号の説明】
1 ロボット装置、3 頭部、400L,400R 目部、410 カバー部(鏡面)、412 孔部
Claims (3)
- 小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置において、
前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲むカバー部を有し、
前記カバー部に鏡面仕上げを施して前記顔認識の提示に用いることを特徴とするロボット装置。 - 前記カバー部は、球面の一部をなすプラスチック上にアルミニウム、銀又はクロムを蒸着して形成されることを特徴とする請求項1記載のロボット装置。
- 小型カメラを用いて外部環境に存在する人間の顔を認識するロボット装置による顔認識状況の提示方法であって、
前記小型カメラのレンズの視野角を塞ぐことのない孔部を囲み、かつ鏡面仕上げが施されたカバー部に、前記顔認識の対象となる人間の顔を反射する工程を備え、
前記反射する工程によって顔が前記カバー部に映しだされる状態、又は孔部に入って映しだされない状態を提示し、よって顔認識状況を提示することを特徴とするロボット装置による顔認識状況の提示方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003096135A JP2004299006A (ja) | 2003-03-31 | 2003-03-31 | ロボット装置及びロボット装置による顔認識状況の提示方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003096135A JP2004299006A (ja) | 2003-03-31 | 2003-03-31 | ロボット装置及びロボット装置による顔認識状況の提示方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004299006A true JP2004299006A (ja) | 2004-10-28 |
Family
ID=33408291
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003096135A Withdrawn JP2004299006A (ja) | 2003-03-31 | 2003-03-31 | ロボット装置及びロボット装置による顔認識状況の提示方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004299006A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011527641A (ja) * | 2008-05-09 | 2011-11-04 | ベイア | ボール及びソケットジョイントを実装する人型ロボット |
| JP2017164854A (ja) * | 2016-03-17 | 2017-09-21 | カシオ計算機株式会社 | ロボット及びプログラム |
| CN113869142A (zh) * | 2021-09-08 | 2021-12-31 | 同济大学 | 一种膝关节康复动作识别方法及系统 |
-
2003
- 2003-03-31 JP JP2003096135A patent/JP2004299006A/ja not_active Withdrawn
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011527641A (ja) * | 2008-05-09 | 2011-11-04 | ベイア | ボール及びソケットジョイントを実装する人型ロボット |
| JP2017164854A (ja) * | 2016-03-17 | 2017-09-21 | カシオ計算機株式会社 | ロボット及びプログラム |
| CN113869142A (zh) * | 2021-09-08 | 2021-12-31 | 同济大学 | 一种膝关节康复动作识别方法及系统 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3714268B2 (ja) | ロボット装置 | |
| JP2004298977A (ja) | 行動制御装置、行動制御方法及び行動制御プログラム、並びに移動型ロボット装置 | |
| JP3855812B2 (ja) | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 | |
| US6493606B2 (en) | Articulated robot and method of controlling the motion of the same | |
| JP4239635B2 (ja) | ロボット装置、その動作制御方法、及びプログラム | |
| KR20030007841A (ko) | 각식 이동 로봇 및 그 운동교시 방법, 및 기억매체 | |
| JP2004110802A (ja) | 環境同定装置、環境同定方法、プログラム及び記録媒体、並びにロボット装置 | |
| JP4179230B2 (ja) | ロボット装置及びその動作制御方法 | |
| KR20040050055A (ko) | 로봇 장치 및 그 제어 방법 | |
| WO2001074549A1 (en) | Control device and control method for robot | |
| JP2003266345A (ja) | 経路計画装置、経路計画方法及び経路計画プログラム並びに移動型ロボット装置 | |
| JP2003266349A (ja) | 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置 | |
| JP2004298975A (ja) | ロボット装置、障害物探索方法 | |
| JP4449372B2 (ja) | ロボット装置及びその行動制御方法 | |
| JP4281286B2 (ja) | ロボット装置及びその制御方法 | |
| JP2004130427A (ja) | ロボット装置及びロボット装置の動作制御方法 | |
| JP2003271958A (ja) | 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置 | |
| JP2004066381A (ja) | ロボット装置 | |
| JP2004299006A (ja) | ロボット装置及びロボット装置による顔認識状況の提示方法 | |
| JP2002331481A (ja) | ロボット装置、動作作成装置及び動作作成方法、並びに、制御プログラム及び記録媒体 | |
| JP2003266364A (ja) | ロボット装置 | |
| JP2003266350A (ja) | ロボット装置及び内部状態表出装置 | |
| JP2003266352A (ja) | ロボット装置及びロボット装置の制御方法 | |
| JP2003266361A (ja) | 動力伝達装置及びロボット装置 | |
| JP3961892B2 (ja) | ロボット装置および緩衝装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060606 |