JP2004230480A - ロボット装置およびロボット制御方法、記録媒体、並びにプログラム - Google Patents
ロボット装置およびロボット制御方法、記録媒体、並びにプログラム Download PDFInfo
- Publication number
- JP2004230480A JP2004230480A JP2003019065A JP2003019065A JP2004230480A JP 2004230480 A JP2004230480 A JP 2004230480A JP 2003019065 A JP2003019065 A JP 2003019065A JP 2003019065 A JP2003019065 A JP 2003019065A JP 2004230480 A JP2004230480 A JP 2004230480A
- Authority
- JP
- Japan
- Prior art keywords
- distance
- robot
- user
- unit
- recognition
- 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.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
- Toys (AREA)
- Measurement Of Optical Distance (AREA)
- Image Processing (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
- Image Analysis (AREA)
Abstract
【解決手段】行動決定機構部103が決定する行動が、認識処理を必要とする場合、行動決定機構部103は、ロボットとユーザとの距離を、認識処理に適切な距離に調整する旨の指令を距離推定部111に送出する。距離判定部113は、距離推定部111が推定したロボットとユーザとの距離が、閾値設定部112から供給された所定の範囲内に入っているかどうかを判定する。所定の範囲に入っていないと判定された場合、距離調整部114は、ロボットとユーザとの距離を調整する旨の指令を行動決定機構部103に送出する。行動決定機構部103は、距離調整部114から出力された指令に基づいて、行動指令情報を姿勢遷移機構部104または音声合成部105に出力する。本発明は、例えば、ロボットに適用できる。
【選択図】 図6
Description
【発明の属する技術分野】
本発明は、ロボット装置およびロボット制御方法、記録媒体、並びにプログラムに関し、特に、例えば、ユーザとロボットの距離を調整することにより、ロボットの認識機能の認識精度を向上させることができるようにしたロボット装置およびロボット制御方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
近年においては、玩具等として、音声認識装置や画像認識装置などの認識機能を備えたロボット(本明細書においては、ぬいぐるみ状のものを含む)が製品化されている。例えば、音声認識装置を備えたロボットでは、ユーザが発した音声を音声認識し、その音声認識結果に基づいて、ある仕草をしたり、合成音を出力する等の行動を自律的に行うようになされている。
【0003】
音声認識装置を備えたロボットが、ユーザが発した音声を音声認識する場合、音声を発したユーザが、ロボットから遠く離れすぎているときには、ロボットに装着されているマイクロホンにより取得されるユーザの発した音声波形の信号値は減衰し、相対的に雑音レベルが高くなる。つまり、マイクロホンにより取得されたユーザの音声信号のS/N比(Signal to Noise ratio)は低くなる。また、一般に、ユーザ(発話者)とロボット(に装着されているマイクロホン)の距離が大きくなるほど、音声信号の波形は、残響特性の影響を強く受ける。従って、ユーザとロボットの距離が離れすぎているときには、ロボットの音声認識装置の認識精度は悪くなる。
【0004】
反対に、ユーザとロボットの距離が近すぎるときには、ロボットに装着されているマイクロホンにより取得されるユーザの発した音声波形の信号値は、マイクロホンの検出可能な範囲を超えてしまう。従って、マイクロホンにより取得された音声波形は、飽和したものとなり、本来の音声波形より歪んだ波形となる。ユーザとロボットの距離が近すぎる場合には、ロボットの音声認識装置は、このような歪んだ波形を音声認識することとなるので、音声認識の精度は悪くなる。
【0005】
そこで、音声認識結果とともに、周囲雑音の影響を検知する周囲雑音検知、入力音声のパワーが特定の閾値条件を満たす状況を検知するパワー不足検知、パワー過多検知などの状況検知を行い、音声認識結果と状況検知の結果を利用して、ロボットにおける音声認識精度劣化の問題に対処する方法が提案されている(例えば、非特許文献1参照)。
【0006】
【非特許文献1】
岩沢,大中,藤田,「状況検知を利用したロボット用音声認識インタフェースの一手法とその評価」,人工知能学会研究会資料,社団法人人工知能学会,平成14年11月,p.33−38
【0007】
【発明が解決しようとする課題】
しかしながら、非特許文献1に示される方法では、ユーザ(発話者)とロボット(に装着されているマイクロホン)の距離が考慮されていない。そのため、例えば、ユーザが大きな声でロボットに話しかけているにもかかわらず、ユーザとロボットの距離が遠く離れているために、マイクロホンに入力された音声信号が、S/Nの低いものとなり、ユーザの音声を認識することができない場合に、ロボットがユーザに対してより大きな声による発声を求めるというような問題が発生しうる。
【0008】
一方、画像認識装置を備えたロボットにおいて、画像認識装置がユーザを撮像して得られる画像を用いてユーザを識別する場合、ユーザとロボットとの間の距離が遠く離れすぎているときには、画像を撮像した撮像装置の解像度などの影響により、ユーザの識別精度が劣化する。例えば、ロボットの画像認識装置が、撮像装置が撮像したユーザの顔画像からユーザを識別する場合、ロボットの撮像装置からユーザまでの距離が遠くなるほど、撮像画像における顔領域の画素数が少なくなり、その結果、画像認識装置が認識に利用することができる有効な画素が少なくなるため、画像認識装置の認識精度は悪くなることがある。
【0009】
また、ユーザとロボットとの距離が近すぎるときには、撮像装置が出力する画像の画枠内に、ユーザの顔領域の全体が入りきらず、画像認識装置によるユーザの識別精度が悪くなることがある。
【0010】
本発明は、このような状況に鑑みてなされたものであり、例えば、ロボットに装着された、音声や画像などの認識装置が、ユーザなど認識対象の音声や画像などを認識する場合において、ロボットとユーザとの距離が認識装置に適切な距離となるように、ロボットとユーザとの距離を調整することにより、ロボットの認識装置の認識精度を向上させることができるようにするものである。
【0011】
【課題を解決するための手段】
本発明のロボット装置は、認識対象までの距離を推定するための情報を入力する情報入力手段と、情報入力手段から供給された情報に基づいて、認識対象までの距離を推定する距離推定手段と、距離推定手段により推定された距離に基づいて、認識対象までの距離を調整する距離調整手段とを備えることを特徴とする。
【0012】
情報入力手段は、周囲の状況を撮像し、画像信号を出力する複数の撮像手段を少なくとも有し、距離推定手段には、複数の撮像手段が出力する画像信号を用いてステレオ処理することにより、認識対象までの距離を推定させるようにすることができる。
【0013】
認識対象は、ユーザであり、情報入力手段は、周囲の状況を撮像し、画像信号を出力する撮像手段を少なくとも有し、距離推定手段には、撮像手段が出力する画像信号を用いて、ユーザの顔領域を検出し、その顔領域に基づいて、ユーザまでの距離を推定させるようにすることができる。
【0014】
認識対象は、ユーザであり、情報入力手段は、音声を入力する音声入力手段を少なくとも有し、距離推定手段には、音声入力手段に入力されるユーザが発する音声の大きさに基づいて、ユーザまでの距離を推定させるようにすることができる。
【0015】
情報入力手段は、超音波パルスを発して認識対象から反射する反射波を受信する超音波出力手段を少なくとも有し、距離推定手段には、超音波出力手段が出力する値に基づいて、認識対象までの距離を推定させるようにすることができる。
【0016】
距離調整手段には、ロボット装置を移動させることにより、認識対象までの距離を調整させるようにすることができる。
【0017】
認識対象は、ユーザであり、距離調整手段には、ユーザが移動するように、ロボット装置に行動させることにより、ユーザまでの距離を調整させるようにすることができる。
【0018】
音声を出力する音声出力手段をさらに設け、距離調整手段には、ユーザが移動するように、音声出力手段に音声を出力させることにより、ユーザまでの距離を調整させるようにすることができる。
【0019】
距離調整手段には、ユーザが移動するようにユーザに促す動作を、ロボット装置にさせることにより、ユーザまでの距離を調整させるようにすることができる。
【0020】
距離推定手段により推定された距離が、所定の範囲内であるかどうかを判定する判定手段をさらに設け、距離調整手段には、判定手段の判定結果に基づいて、認識対象までの距離を調整させるようにすることができる。
【0021】
所定の範囲を設定する範囲設定手段をさらに設けることができる。
【0022】
範囲設定手段は、所定の範囲を、情報入力手段から得られる情報に基づいて、動的に設定させるようにすることができる。
【0023】
本発明のロボット制御方法は、認識対象までの距離を推定する距離推定ステップと、距離推定ステップの処理の結果に基づいて、認識対象までの距離を調整する距離調整ステップとを含むことを特徴とする。
【0024】
本発明の記録媒体のプログラムは、認識対象までの距離を推定する距離推定ステップと、距離推定ステップの処理の結果に基づいて、認識対象までの距離を調整する距離調整ステップとを含むことを特徴とする。
【0025】
本発明のプログラムは、認識対象までの距離を推定する距離推定ステップと、距離推定ステップの処理の結果に基づいて、認識対象までの距離を調整する距離調整ステップとをコンピュータに実行させることを特徴とする。
【0026】
本発明においては、認識対象までの距離が推定され、推定された距離の結果に基づいて、認識対象までの距離が調整される。
【0027】
【発明の実施の形態】
図1は、本発明を適用した2足歩行型のロボット1の正面方向の斜視図であり、図2は、ロボット1の背面方向からの斜視図である。また、図3は、ロボット1の軸構成について説明するための斜視図である。
【0028】
ロボット1は、胴体部ユニット11の上部に頭部ユニット12が配設されるとともに、胴体部ユニット11の上部左右に、同様の構成を有する腕部ユニット13Aおよび13Bが所定位置にそれぞれ取り付けられ、かつ、胴体部ユニット11の下部左右に、同様の構成を有する脚部ユニット14Aおよび14Bが所定位置にそれぞれ取り付けられることにより構成されている。頭部ユニット12には、タッチセンサ51が設けられている。
【0029】
胴体部ユニット11においては、体幹上部を形成するフレーム21および体幹下部を形成する腰ベース22が、腰関節機構23を介して連結することにより構成されており、体幹下部の腰ベース22に固定された腰関節機構23のアクチュエータA1、および、アクチュエータA2をそれぞれ駆動することによって、体幹上部を、図3に示す直交するロール軸24およびピッチ軸25の回りに、それぞれ独立に回転させることができるようになされている。
【0030】
また頭部ユニット12は、フレーム21の上端に固定された肩ベース26の上面中央部に首関節機構27を介して取り付けられており、首関節機構27のアクチュエータA3およびA4をそれぞれ駆動することによって、図3に示す直交するピッチ軸28およびヨー軸29の回りに、それぞれ独立に回転させることができるようになされている。
【0031】
更に、腕部ユニット13Aおよび13Bは、肩関節機構30を介して肩ベース26の左右にそれぞれ取り付けられており、対応する肩関節機構30のアクチュエータA5およびA6をそれぞれ駆動することによって、図3に示す、直交するピッチ軸31およびロール軸32の回りに、それぞれを独立に回転させることができるようになされている。
【0032】
腕部ユニット13Aおよび13Bは、上腕部を形成するアクチュエータA7の出力軸に、肘関節機構33を介して、前腕部を形成するアクチュエータA8が連結され、前腕部の先端に手部34が取り付けられることにより構成されている。
【0033】
そして腕部ユニット13Aおよび13Bでは、アクチュエータA7を駆動することによって、前腕部を図3に示すヨー軸35に対して回転させることができ、アクチュエータA8を駆動することによって、前腕部を図3に示すピッチ軸36に対して回転させることができるようになされている。
【0034】
脚部ユニット14Aおよび14Bは、股関節機構37を介して、体幹下部の腰ベース22にそれぞれ取り付けられており、対応する股関節機構37のアクチュエータA9乃至A11をそれぞれ駆動することによって、図3に示す、互いに直交するヨー軸38、ロール軸39、およびピッチ軸40に対して、それぞれ独立に回転させることができるようになされている。
【0035】
脚部ユニット14Aおよび14Bは、大腿部を形成するフレーム41の下端が、膝関節機構42を介して、下腿部を形成するフレーム43に連結されるとともに、フレーム43の下端が、足首関節機構44を介して、足部45に連結されることにより構成されている。
【0036】
これにより脚部ユニット14Aおよび14Bにおいては、膝関節機構42を形成するアクチュエータA12を駆動することによって、図3に示すピッチ軸46に対して、下腿部を回転させることができ、また足首関節機構44のアクチュエータA13およびA14をそれぞれ駆動することによって、図3に示す直交するピッチ軸47およびロール軸48に対して、足部45をそれぞれ独立に回転させることができるようになされている。
【0037】
また、胴体部ユニット11の体幹下部を形成する腰ベース22の背面側には、後述するメイン制御部61や周辺回路62(いずれも図4)などを内蔵したボックスである、制御ユニット52が配設されている。
【0038】
図4は、ロボット1のアクチュエータとその制御系等の構成例を示している。
【0039】
制御ユニット52には、ロボット1全体の動作制御をつかさどるメイン制御部61、電源回路および通信回路などの周辺回路62、および、バッテリ74(図5)などが収納されている
【0040】
そして、制御ユニット52は、各構成ユニット(胴体部ユニット11、頭部ユニット12、腕部ユニット13Aおよび13B、並びに、脚部ユニット14Aおよび14B)内にそれぞれ配設されたサブ制御部63A乃至63Dと接続されており、サブ制御部63A乃至63Dに対して必要な電源電圧を供給したり、サブ制御部63A乃至63Dと通信を行う。
【0041】
また、サブ制御部63A乃至63Dは、対応する構成ユニット内のアクチュエータA1乃至A14と、それぞれ接続されており、メイン制御部61から供給された各種制御コマンドに基づいて、構成ユニット内のアクチュエータA1乃至A14を、指定された状態に駆動させるように制御する。
【0042】
図5は、ロボット1の電気的な内部構成例を示すブロック図である。
【0043】
頭部ユニット12には、ロボット1の「目」として機能するCCD(Charge Coupled Device )カメラ81Lおよび81R、「耳」として機能するマイクロホン82−1乃至82−N、タッチセンサ51、並びに超音波センサ83などからなる外部センサ部71、および、「口」として機能するスピーカ72などがそれぞれ所定位置に配設され、制御ユニット52内には、バッテリセンサ91および加速度センサ92などからなる内部センサ部73が配設されている。
【0044】
そして、外部センサ部71のCCDカメラ81Lおよび81Rは、周囲の状況を撮像し、得られた画像信号S1Aを、メイン制御部61に送出する。マイクロホン82−1乃至82−Nは、ユーザから音声入力として与えられる「歩け」、「とまれ」または「右手を挙げろ」等の各種命令音声や周囲の背景雑音を集音し、得られた音声信号S1Bを、メイン制御部61にそれぞれ送出する。なお、以下において、N個のマイクロホン82−1乃至82−Nを特に区別する必要がない場合には、マイクロホン82と称する。
【0045】
また、タッチセンサ51は、例えば、図1および図2に示されるように頭部ユニット12の上部に設けられており、ユーザからの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出し、その検出結果を、圧力検出信号S1Cとしてメイン制御部61に送出する。
【0046】
超音波センサ83は、図示せぬ音源とマイクを有し、超音波センサ83の内部の音源から、超音波パルスを発する。さらに、超音波センサ83は、その超音波パルスがユーザその他の物体で反射され、返ってくる反射波を、マイクで受信し、超音波パルスを発してから、反射波を受信するまでの時間(以下、適宜、ラグ時間という)S1Dを求め、メイン制御部61に送出する。
【0047】
内部センサ部73のバッテリセンサ91は、バッテリ74のエネルギ残量を所定の周期で検出し、検出結果をバッテリ残量検出信号S2Aとして、メイン制御部61に送出する。加速度センサ92は、ロボット1の移動について、3軸方向(x軸、y軸およびz軸)の加速度を、所定の周期で検出し、その検出結果を、加速度検出信号S2Bとして、メイン制御部61に送出する。
【0048】
外部メモリ75は、プログラムやデータ、および制御パラメータなどを記憶しており、そのプログラムやデータを必要に応じてメイン制御部61に内蔵されるメモリ61Aに供給する。また、外部メモリ75は、データ等をメモリ61Aから受け取り、記憶する。なお、外部メモリ75は、ロボット1から着脱可能となされている。
【0049】
メイン制御部61は、メモリ61Aを内蔵している。メモリ61Aは、プログラムやデータを記憶しており、メイン制御部61は、メモリ61Aに記憶されたプログラムを実行することで、各種の処理を行う。即ち、メイン制御部61は、外部センサ部71のCCDカメラ81Lおよび81R、マイクロホン82、タッチセンサ51、および超音波センサ83からそれぞれ供給される、画像信号S1A、音声信号S1B、圧力検出信号S1C、およびラグ時間S1D(以下、これらをまとめて外部センサ信号S1と称する)と、内部センサ部73のバッテリセンサ91および加速度センサ等からそれぞれ供給される、バッテリ残量検出信号S2Aおよび加速度検出信号S2B(以下、これらをまとめて内部センサ信号S2と称する)に基づいて、ロボット1の周囲および内部の状況や、ユーザからの指令、または、ユーザからの働きかけの有無などを判断する。
【0050】
そして、メイン制御部61は、ロボット1の周囲および内部の状況や、ユーザからの指令、または、ユーザからの働きかけの有無の判断結果と、内部メモリ61Aに予め格納されている制御プログラム、あるいは、そのとき装填されている外部メモリ75に格納されている各種制御パラメータなどに基づいて、ロボット1の行動を決定し、その決定結果に基づく制御コマンドを生成して、対応するサブ制御部63A乃至63Dに送出する。サブ制御部63A乃至63Dは、メイン制御部61から供給された制御コマンドに基づいて、アクチュエータA1乃至A14のうち、対応するものの駆動を制御する。これにより、ロボット1は、例えば、頭部ユニット12を上下左右に揺動かさせたり、腕部ユニット13A、あるいは、腕部ユニット13Bを上に挙げたり、脚部ユニット14Aと14Bを交互に駆動させて、歩行するなどの行動を行う。
【0051】
また、メイン制御部61は、必要に応じて、所定の音声信号S3をスピーカ72に与えることにより、音声信号S3に基づく音声を外部に出力させる。更に、メイン制御部61は、外見上の「目」として機能する、頭部ユニット12の所定位置に設けられた、図示しないLEDに対して駆動信号を出力することにより、LEDを点滅させる。
【0052】
このようにして、ロボット1は、周囲および内部の状況(状態)や、ユーザからの指令および働きかけの有無などに基づいて、自律的に行動する。
【0053】
図6は、図5のメイン制御部61の機能的構成例を示している。なお、図6に示す機能的構成は、メイン制御部61が、メモリ61Aに記憶された制御プログラムを実行することで実現されるようになっている。
【0054】
メイン制御部61は、特定の外部状態を認識する状態認識情報処理部101、状態認識情報処理部101の認識結果等に基づいて更新される、ロボット1の感情、本能、あるいは、成長の状態などのモデルを記憶するモデル記憶部102、状態認識情報処理部101の認識結果等に基づいて、ロボット1の行動を決定する行動決定機構部103、行動決定機構部103の決定結果に基づいて、実際にロボット1に行動を起こさせる姿勢遷移機構部104、合成音を生成する音声合成部105、行動決定機構部103からの指令に基づいて、ロボット1とユーザとの距離の調整を制御する距離制御部110から構成されている。
【0055】
状態認識情報処理部101には、マイクロホン82や、CCDカメラ81Lおよび81R、タッチセンサ51等から音声信号、画像信号、圧力検出信号等が、ロボット1の電源が投入されている間、常時入力される。そして、状態認識情報処理部101は、マイクロホン82や、CCDカメラ81Lおよび81R、タッチセンサ51等から与えられる音声信号、画像信号、圧力検出信号等に基づいて、特定の外部状態や、ユーザからの特定の働きかけ、ユーザからの指示等を認識し、その認識結果を表す状態認識情報を、モデル記憶部102および行動決定機構部103に常時出力する。なお、ここでは、例えば、ユーザとロボット1との距離が、状態認識情報処理部101が音声認識や画像認識などを行ううえで、最適(適切)な距離ではなく、状態認識情報処理部101が精度の良い認識を行うことが困難である場合であっても、状態認識情報処理部101は、上述の認識結果を表す状態認識情報をモデル記憶部102および行動決定機構部103に出力するものとする。
【0056】
状態認識情報処理部101は、音声認識部101A、画像認識部101B、および圧力処理部101Cを有している。
【0057】
音声認識部101Aは、マイクロホン82−1乃至82−Nそれぞれから与えられる音声信号S1Bについて音声認識を行う。そして、音声認識部101Aは、例えば、「歩け」、「止まれ」、「右手を挙げろ」等の指令、その他の音声認識結果を、状態認識情報として、モデル記憶部102および行動決定機構部103に通知する。
【0058】
また、画像認識部101Bは、CCDカメラ81Lおよび81Rから与えられる画像信号S1Aを用いて、画像認識処理を行う。そして、画像認識部101Bは、その処理の結果、例えば、「赤い丸いもの」や、「地面に対して垂直なかつ所定高さ以上の平面」等を検出したときには、「ボールがある」や、「壁がある」等の画像認識結果を、状態認識情報として、モデル記憶部102および行動決定機構部103に通知する。
【0059】
ここで、ユーザは、一般に、ロボット1の正面方向から話しかけることが多いと予想されるため、周囲の状況を撮像するCCDカメラ81Lおよび81Rは、その撮像方向が、ロボット1の正面方向になるように、頭部ユニット12(図1)に設置されているものとする。
【0060】
なお、ユーザが、ロボット1の正面方向からはずれた、例えば、側面や背面方向などから話しかけてきた場合には、CCDカメラ81Lおよび81Rにおいて、ユーザを撮像することができないことになる。そこで、例えば、マイクロホン82−1乃至82−Nに到達する音声信号のパワー差や位相差から音源の方向を推定し、そのマイクロホン82−1乃至82−Nのうち、最大の音声レベルが得られるものの方向に、頭部ユニット12を動かすことによって、CCDカメラ81Lおよび81Rにおいて、ユーザを撮像することができるようにすることが可能である。なお、音声認識においては、例えば、最大の音声レベルが得られるマイクロホン(ロボット1がユーザの方向を向いた場合には、基本的には、正面方向に設けられているマイクロホン)が出力する音声データが、音声認識の対象とされる。
【0061】
また、例えば、マイクロホン82として、CCDカメラ81Lおよび81Rの撮像方向と同一方向の指向性を有するマイクロホンを採用し、マイクロホン82に入力される音声レベルが最大となる方向に、頭部ユニット12を動かし、これにより、CCDカメラ81Lおよび81Rにおいて、ユーザを撮像することができるようにすることも可能である。
【0062】
圧力処理部101Cは、タッチセンサ51から与えられる圧力検出信号S1Cを処理する。そして、圧力処理部101Cは、その処理の結果、例えば、所定の閾値以上で、かつ短時間の圧力を検出したときには、「叩かれた(しかられた)」と認識し、所定の閾値未満で、かつ長時間の圧力を検出したときには、「撫でられた(ほめられた)」と認識して、その認識結果を、状態認識情報として、モデル記憶部102および行動決定機構部103に通知する。
【0063】
モデル記憶部102は、ロボット1の感情、本能、成長の状態を表現する感情モデル、本能モデル、成長モデルをそれぞれ記憶、管理している。
【0064】
ここで、感情モデルは、例えば、「うれしさ」、「悲しさ」、「怒り」、「楽しさ」等の感情の状態(度合い)を、所定の範囲(例えば、−1.0乃至1.0等)の値によってそれぞれ表し、状態認識情報処理部101からの状態認識情報や時間経過等に基づいて、その値を変化させる。本能モデルは、例えば、「食欲」、「睡眠欲」、「運動欲」等の本能による欲求の状態(度合い)を、所定の範囲の値によってそれぞれ表し、状態認識情報処理部101からの状態認識情報や時間経過等に基づいて、その値を変化させる。成長モデルは、例えば、「幼年期」、「青年期」、「熟年期」、「老年期」等の成長の状態(度合い)を、所定の範囲の値によってそれぞれ表し、状態認識情報処理部101からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【0065】
モデル記憶部102は、上述のようにして感情モデル、本能モデル、成長モデルの値で表される感情、本能、成長の状態を、状態情報として、行動決定機構部103に送出する。
【0066】
なお、モデル記憶部102には、状態認識情報処理部101から状態認識情報が供給される他、行動決定機構部103から、ロボット1の現在または過去の行動、具体的には、例えば、「長時間歩いた」などの行動の内容を示す行動情報が供給されるようになっており、モデル記憶部102は、同一の状態認識情報が与えられても、行動情報が示すロボット1の行動に応じて、異なる状態情報を生成するようになっている。
【0067】
即ち、例えば、ロボット1が、ユーザに挨拶をし、ユーザに頭を撫でられた場合には、ユーザに挨拶をしたという行動情報と、頭を撫でられたという状態認識情報とが、モデル記憶部102に与えられ、この場合、モデル記憶部102では、「うれしさ」を表す感情モデルの値が増加される。
【0068】
一方、ロボット1が、何らかの仕事を実行中に頭を撫でられた場合には、仕事を実行中であるという行動情報と、頭を撫でられたという状態認識情報とが、モデル記憶部102に与えられ、この場合、モデル記憶部102では、「うれしさ」を表す感情モデルの値は変化されない。
【0069】
このように、モデル記憶部102は、状態認識情報だけでなく、現在または過去のロボット1の行動を示す行動情報も参照しながら、感情モデルの値を設定する。これにより、例えば、何らかのタスクを実行中に、ユーザが、いたずらするつもりで頭を撫でたときに、「うれしさ」を表す感情モデルの値を増加させるような、不自然な感情の変化が生じることを回避することができる。
【0070】
なお、モデル記憶部102は、本能モデルおよび成長モデルについても、感情モデルにおける場合と同様に、状態認識情報および行動情報の両方に基づいて、その値を増減させるようになっている。また、モデル記憶部102は、感情モデル、本能モデル、成長モデルそれぞれの値を、他のモデルの値にも基づいて増減させるようになっている。
【0071】
行動決定機構部103は、状態認識情報処理部101からの状態認識情報や、モデル記憶部102からの状態情報、時間経過等に基づいて、次の行動を決定し、決定された行動の内容が、例えば、「ダンスをする」というような音声認識処理や画像認識処理を必要としない場合、その行動の内容を、行動指令情報として、姿勢遷移機構部104に送出する。
【0072】
すなわち、行動決定機構部103は、ロボット1がとり得る行動をステート(状態:state)に対応させた有限オートマトンを、ロボット1の行動を規定する行動モデルとして管理しており、この行動モデルとしての有限オートマトンにおけるステートを、状態認識情報処理部101からの状態認識情報や、モデル記憶部102における感情モデル、本能モデル、または成長モデルの値、時間経過等に基づいて遷移させ、遷移後のステートに対応する行動を、次にとるべき行動として決定する。
【0073】
ここで、行動決定機構部103は、所定のトリガ(trigger)があったことを検出すると、ステートを遷移させる。即ち、行動決定機構部103は、例えば、現在のステートに対応する行動を実行している時間が所定時間に達したときや、特定の状態認識情報を受信したとき、モデル記憶部102から供給される状態情報が示す感情や、本能、成長の状態の値が所定の閾値以下または以上になったとき等に、ステートを遷移させる。
【0074】
なお、行動決定機構部103は、上述したように、状態認識情報処理部101からの状態認識情報だけでなく、モデル記憶部102における感情モデルや、本能モデル、成長モデルの値等にも基づいて、行動モデルにおけるステートを遷移させることから、同一の状態認識情報が入力されても、感情モデルや、本能モデル、成長モデルの値(状態情報)によっては、ステートの遷移先は異なるものとなる。
【0075】
一方、行動決定機構部103が、状態認識情報処理部101からの状態認識情報や、モデル記憶部102からの状態情報、時間経過等に基づいて、次の行動を決定し、決定された行動の内容が、例えば、ユーザが発する音声を認識して対応する発話を行う「ユーザと会話する」や、ユーザ(の顔画像)を認識して、そのユーザに対して手を振る動作を行う「ユーザに手を振る」というような音声認識処理や画像認識処理を必要とする場合、行動決定機構部103は、上述した状態認識情報処理部101の音声認識部101Aや画像認識部101Bが、精度良く認識することができるように、ロボット1とユーザとの距離を調整する旨の指令を距離制御部110に送出する。また、上述したように、状態認識情報処理部101が、認識精度としては良くない認識結果であっても、例えば、画像信号の肌色領域などから判断されるユーザの顔画像などを検出し、検出した旨を示す状態認識情報を行動決定機構部103に送出する場合、行動決定機構部103は、ユーザの顔画像をさらに精度良く認識することができるように、ロボット1とユーザとの距離を調整する旨の指令を距離制御部110に送出する。
【0076】
そして、距離制御部110から行動決定機構部103にロボット1とユーザとの距離が調整されたことの指令が供給されたときに、行動決定機構部103は、その指令が供給されたときと同じタイミングで、状態認識情報処理部101から供給されている状態認識情報を、認識精度の良い状態認識情報として取得し、上述したような、例えば、「ユーザと会話する」や「ユーザに手を振る」などの、行動決定機構部103自身が先に決定した動作を行う(その行動の内容を、行動指令情報として、姿勢遷移機構部104に送出する)。
【0077】
なお、行動決定機構部103では、上述したように、ロボット1の頭部や手足等を動作させる行動指令情報の他、ロボット1に発話を行わせる行動指令情報も生成される。ロボット1に発話を行わせる行動指令情報は、音声合成部105に供給されるようになっており、音声合成部105に供給される行動指令情報には、音声合成部105に生成させる合成音に対応するテキスト等が含まれる。そして、音声合成部105は、行動決定機構部103から行動指令情報を受信すると、その行動指令情報に含まれるテキストに基づき、合成音を生成し、スピーカ72に供給して出力させる。例えば、行動決定機構部103が、ロボット1の発話によってロボット1とユーザとの距離を調整したい旨の指令を、後述する距離制御部110より受け取ると、行動決定機構部103は、例えば、「少し離れてください」あるいは、「もう少し近づいてください」などのテキストを含んだ行動指令情報を音声合成部105に送出する。この場合、スピーカ72からは、「少し離れてください」あるいは、「もう少し近づいてください」などの音声出力(ロボット1による発話)が行われる。
【0078】
距離制御部110は、距離推定部111、閾値設定部112、距離判定部113、および距離調整部114から構成されている。上述したように、距離制御部110には、行動決定機構部103からロボット1とユーザとの距離を調整する旨の指令が供給される。また、外部センサ部71(図5)のCCDカメラ81Lおよび81R、マイクロホン82、タッチセンサ51、および超音波センサ83から画像信号S1A、音声信号S1B、圧力検出信号S1C、およびラグ時間S1D、すなわち、外部センサ信号S1も、距離制御部110に常時供給される。
【0079】
距離推定部111は、外部センサ部71からの各種の信号を基に、ロボット1とユーザとの距離を推定し、その推定したロボット1とユーザとの距離を推定距離情報として、距離判定部113と距離調整部114に送出する。
【0080】
すなわち、距離推定部111は、CCDカメラ81Lおよび81Rから供給される画像信号S1Aのなかに、ユーザの顔画像が含まれる場合、その画像信号S1Aのなかの顔画像の領域(以下、顔画像領域と称する)に基づいて、ロボット1とユーザとの距離を推定する。人間の顔画像の検出は、例えば、画像信号S1Aから肌色の領域を検出することにより行われる。なお、ユーザの顔画像領域を用いる距離の推定は、1つのCCDカメラで行うことも可能であるので、CCDカメラ81Lまたは81Rのうちのいずれか一方の画像信号から行うようにしてもよい。
【0081】
また、距離推定部111は、CCDカメラ81Lおよび81Rを用いて、ステレオ処理を行うことにより、ロボット1とユーザとの距離を推定する。ステレオ処理の原理についての詳細な説明は、後述する。
【0082】
さらに、距離推定部111は、超音波センサ83から供給されるラグ時間S1Dに基づいて、ロボット1とユーザとの距離を推定する。
【0083】
また、距離推定部111は、マイクロホン82から供給される音声に基づいて、ロボット1とユーザとの距離を推定する。即ち、音声信号S1Bが、マイクロホン82から距離推定部111に供給された場合、すなわち、ユーザが音声を発した場合、距離推定部111は、入力されたユーザの音声の大きさ(レベル)からロボット1とユーザとの距離を推定する。また、距離推定部111は、マイクロホン82−1乃至82−Nそれぞれから供給される音声に基づいて、音声を発したユーザの方向(音源方向)を推定する。
【0084】
距離推定部111は、上述したようにCCDカメラ81Lおよび81R、マイクロホン82、超音波センサ83などから供給されるそれぞれの信号から、ロボット1とユーザとの距離をそれぞれ推定し、さらに、その推定結果から、総合的にロボット1とユーザとの距離を推定する。総合的に推定された距離は、推定距離情報として、距離推定部111から距離判定部113および距離調整部114に出力される。
【0085】
閾値設定部112は、後述する距離判定部113で利用される閾値としての所定の範囲(例えば、ロボット1の位置を基準とした第1の位置から第2の位置までの範囲)Rおよび距離調整部114で利用される閾値D1を予め記憶しており、その所定の範囲Rと閾値D1を、距離判定部113と距離調整部114にそれぞれ供給する。
【0086】
ここで、所定の範囲Rは、例えば、ロボット1がユーザの顔画像の認識、または、ユーザが発する音声の認識などを行うために適切な、ロボット1とユーザとの距離であり、例えば、CCDカメラ81Lおよび81R、マイクロホン82、音声認識部101A、画像処理部101Bの性能等に基づいて決定することができる。また、閾値D1は、ユーザがロボット1に対して近い位置にいるか、または遠い位置にいるかを判定するのに用いられる。後述する距離調整部114においては、ロボット1とユーザとの距離が、閾値D1と比較されることにより調整されるため、閾値D1を、例えば、所定の範囲R内の値にすれば、ロボット1とユーザとの距離が、所定の範囲R内になるように調整されることになる。従って、閾値D1は、例えば、所定の範囲Rを2分する値とされる。
【0087】
距離判定部113には、距離推定部111から推定距離情報としてのロボット1とユーザとの距離(推定値)と、閾値設定部112から所定の範囲Rが供給される。そして、距離判定部113は、ロボット1とユーザとの距離が、所定の範囲R内であるかどうかを判定する。
【0088】
距離判定部113は、距離推定部111から距離判定部113に供給されるロボット1とユーザとの距離が、所定の範囲R内であると判定した場合、行動決定機構部103に対して、ロボット1とユーザとの距離が所定の範囲R内である旨の指令を送出する。
【0089】
一方、距離判定部113は、距離推定部111から距離判定部113に供給されるロボット1とユーザとの距離が、所定の範囲R内でないと判定した場合、距離調整部114に対して、ロボット1とユーザとの距離を調整する旨の指令を送出する。
【0090】
距離調整部114には、上述したように、距離推定部111からロボット1とユーザとの推定距離情報が供給される。また、距離調整部114には、ロボット1とユーザとの距離が、所定の位置より遠い(大きい)か、または近い(小さい)かどうかを判断するための閾値D1が閾値設定部112から供給される。そして、距離調整部114は、距離判定部113から距離を調整する旨の指令を受け取ると、距離調整部114は、推定距離情報と閾値D1に基づき、距離推定部111から供給されたロボット1とユーザとの距離が、閾値D1よりも遠いか、または近いかを判断する。次に、距離調整部114は、その判断結果に応じて、ロボット1とユーザとの距離を調整するための各種の指令信号を、行動決定機構部103に送出する。
【0091】
ここで、ロボット1とユーザとの距離を調整する方法としては、例えば、ユーザがロボット1に対して、近づく、または離れるように促す発話を行う方法がある。この場合、距離調整部114は、例えば、「ユーザに近づく、または離れるように発話する」などの行動依頼の指令を行動決定機構部103に送出する。この指令を受け取った行動決定機構部103は、上述したように音声合成部105に、例えば、「少し離れてください」あるいは、「もう少し近づいてください」などのテキストを含んだ行動指令情報を音声合成部105に送出する。この場合、音声合成部105では、「少し離れてください」や「もう少し近づいてください」などのユーザの移動を促す合成音が生成され、スピーカ72から出力される。そして、その音声を聞いたユーザが、その音声に従い、ロボット1に対して離れるように、または近づくように移動することにより、ロボット1とユーザとの距離が調整される。
【0092】
また、ロボット1とユーザとの距離を調整する他の方法としては、例えば、ユーザがロボット1に対して、近づく、または離れるように促す動作(ロボット1の仕草)を行う方法がある。この場合、距離調整部114は、例えば、ユーザに近づいて欲しいときには、「手招きをする」、ユーザに離れて欲しいときには、「追い払う」などの行動依頼の指令を行動決定機構部103に送出する。この指令を受け取った行動決定機構部103は、上述したように、その行動の内容を行動指令情報として、姿勢遷移機構部104に送出する。姿勢遷移機構部104は、行動決定機構部103から供給される行動指令情報に基づいて、ロボット1の姿勢を、現在の姿勢から次の姿勢に遷移させるための姿勢遷移情報を生成し、これをサブ制御部63A乃至63Dに送出する。サブ制御部63A乃至63Dは、上述したように、ロボット1の手や足となる腕部ユニット13Aおよび13Bや脚部ユニット14Aおよび14Bなどを動かす。その結果、ロボット1はユーザに対して、「手招きをする」や「追い払う」などの動作を行い、その動作を見たユーザが、その動作に従い、ロボット1に対して離れるように、または近づくように移動することにより、ロボット1とユーザとの距離が調整される。
【0093】
さらに、ロボット1とユーザとの距離を調整する他の方法としては、例えば、ロボット1自身がユーザとの距離を調整するように行動する(移動する)方法がある。その場合、距離調整部114は、例えば、「ユーザ方向(前)に歩く(移動する)」や「ユーザから離れる方向(後ろ)に歩く(移動する)」などの行動依頼の指令を行動決定部103に送出する。この指令を受け取った行動決定機構部103は、その行動の内容を行動指令情報として、姿勢遷移機構部104に送出する。そして、上述したように、姿勢遷移機構部104が姿勢遷移情報を生成し、その姿勢遷移情報をサブ制御部63A乃至63Dに送出することにより、ロボット1は、ユーザに対して、前や後ろに移動する。その結果、ロボット1とユーザとの距離が調整される。
【0094】
姿勢遷移機構部104は、上述したように、行動決定機構部103から供給される行動指令情報に基づいて、ロボット1の姿勢を、現在の姿勢から次の姿勢に遷移させるための姿勢遷移情報を生成し、これをサブ制御部63A乃至63Dに送出する。
【0095】
次に、図7を参照して、超音波センサ83の出力から距離を推定する原理について説明する。
【0096】
超音波センサ83は、図示せぬ音源とマイクロホンを有し、図7に示すように、音源から、超音波パルスを発する。さらに、超音波センサ83は、その超音波パルスが障害物で反射され、返ってくる反射波を、マイクロホンで受信し、超音波パルスを発してから、反射波を受信するまでの時間(ラグ時間)を求める。このようにして求めた時間(ラグ時間)から、障害物までの距離を求めることができる。
【0097】
次に、図8乃至図12を参照して、CCDカメラ81Lおよび81Rからの画像信号を用いてステレオ処理(ステレオマッチング法による処理)を行うことにより、ロボット1とユーザとの距離を推定する原理について説明する。
【0098】
ステレオ処理は、2つ以上の方向(異なる視線方向)からカメラで同一対象物を撮影して得られる複数の画像間の画素同士を対応付けることで、対応する画素間の視差情報や、カメラから対象物までの距離を求めるものである。
【0099】
即ち、いま、CCDカメラ81Lと81Rを、それぞれ基準カメラ81Lと検出カメラ81Rというとともに、それぞれが出力する画像を、基準カメラ画像と検出カメラ画像というものとして、例えば、図8に示すように、基準カメラ81Lおよび検出カメラ81Rで、撮像対象物としてのユーザを撮影すると、基準カメラ81Lからはユーザの投影像を含む基準カメラ画像が得られ、検出カメラ81Rからもユーザの投影像を含む検出カメラ画像が得られる。そして、いま、例えば、ユーザの口部上のある点Pが、基準カメラ画像および検出カメラ画像の両方に表示されているとすると、その点Pが表示されている基準カメラ画像上の位置と、検出カメラ画像上の位置、つまり対応点(対応画素)とから、視差情報を求めることができ、さらに、三角測量の原理を用いて、点Pの3次元空間における位置(3次元位置)を求めることができる。
【0100】
従って、ステレオ処理では、まず、対応点を検出することが必要となるが、その検出方法としては、例えば、エピポーラライン(Epipolar Line)を用いたエリアベースマッチング法などがある。
【0101】
即ち、図9に示すように、基準カメラ81Lにおいては、ユーザ上の点Pは、その点Pと基準カメラ81Lの光学中心(レンズ中心)O1とを結ぶ直線L上の、基準カメラ1の撮像面S1との交点naに投影される。
【0102】
また、検出カメラ81Rにおいては、ユーザ上の点Pは、その点Pと検出カメラ81Rの光学中心(レンズ中心)O2とを結ぶ直線上の、検出カメラ81Rの撮像面S2との交点nbに投影される。
【0103】
この場合、直線Lは、光学中心O1およびO2、並びに点na(または点P)の3点を通る平面と、検出カメラ画像が形成される撮像面S2との交線L2として、撮像面S2上に投影される。点Pは、直線L上の点であり、従って、撮像面S2において、点Pを投影した点nbは、直線Lを投影した直線L2上に存在し、この直線L2はエピポーララインと呼ばれる。即ち、点naの対応点nbが存在する可能性のあるのは、エピポーララインL2上であり、従って、対応点nbの探索は、エピポーララインL2上を対象に行えば良い。
【0104】
ここで、エピポーララインは、例えば、撮像面S1に形成される基準カメラ画像を構成する画素ごとに考えることができるが、基準カメラ81Lと検出カメラ81Rの位置関係が既知であれば、その画素ごとに存在するエピポーララインは、例えば計算によって求めることができる。
【0105】
エピポーララインL2上の点からの対応点nbの検出は、例えば、次のようなエリアベースマッチングによって行うことができる。
【0106】
即ち、エリアベースマッチングでは、図10Aに示すように、基準カメラ画像上の点naを中心(例えば、対角線の交点)とする、例えば長方形状の小ブロック(以下、適宜、基準ブロックという)が、基準カメラ画像から抜き出されるとともに、図10Bに示すように、検出カメラ画像に投影されたエピポーララインL2上の、ある点を中心とする、基準ブロックと同一の大きさの小ブロック(以下、適宜、検出ブロックという)が、検出カメラ画像から抜き出される。
【0107】
ここで、図10Bの実施の形態においては、エピポーララインL2上に、検出ブロックの中心とする点として、点nb1乃至nb6の6点が設けられている。この6点nb1乃至nb6は、図9に示した3次元空間における直線Lを、所定の一定距離ごとに区分する点、即ち、基準カメラ81Lからの距離が、例えば、1m,2m,3m,4m,5m,6mの点それぞれを、検出カメラ81Rの撮像面S2に投影した点で、従って、基準カメラ81Lからの距離が1m,2m,3m,4m,5m,6mの点にそれぞれ対応している。
【0108】
エリアベースマッチングでは、検出カメラ画像から、エピポーララインL2上に設けられている点nb1乃至nb6それぞれを中心とする検出ブロックが抜き出され、各検出ブロックと、基準ブロックとの相関が、所定の評価関数を用いて演算される。そして、点naを中心とする基準ブロックとの相関が最も高い検出ブロックの中心の点nbが、点naの対応点として求められる。
【0109】
即ち、例えば、いま、評価関数として、相関が高いほど小さな値をとる関数を用いた場合に、エピポーララインL2上の点nb1乃至nb6それぞれについて、例えば、図11に示すような評価値(評価関数の値)が得られたとする。この場合、評価値が最も小さい(相関が最も高い)点nb3が、点naの対応点として検出される。なお、図11において、点nb1乃至nb6それぞれについて求められた評価値(図11において黒丸印で示す)のうちの最小値付近のものを用いて補間を行い、評価値がより小さくなる点(図11においてバツ印で示す)を求めて、その点を、最終的な対応点として検出することも可能である。
【0110】
図10の実施の形態では、上述したように、3次元空間における直線Lを所定の等距離ごとに区分する点を、検出カメラ81Rの撮像面S2に投影した点が設定されているが、この設定は、例えば、基準カメラ81Lおよび検出カメラ81Rのキャリブレーション時に行うことができる。そして、このような設定を、基準カメラ81Lの撮像面S1を構成する画素ごとに存在するエピポーララインごとに行い、図12Aに示すように、エピポーラライン上に設定された点(以下、適宜、設定点という)と、基準カメラ81Lからの距離とを対応付ける設定点/距離テーブルをあらかじめ作成しておけば、対応点となる設定点を検出し、設定点/距離テーブルを参照することで、即座に、基準カメラ81Lからの距離(ユーザまでの距離)を求めることができる。即ち、いわば、対応点から、直接、距離を求めることができる。
【0111】
一方、基準カメラ画像上の点naについて、検出カメラ画像上の対応点nbを検出すれば、その2点naおよびnbの間の視差(視差情報)を求めることができる。さらに、基準カメラ81Lと検出カメラ81Rの位置関係が既知であれば、2点naおよびnbの間の視差から、三角測量の原理によって、ユーザまでの距離を求めることができる。視差から距離の算出は、所定の演算を行うことによって行うことができるが、あらかじめその演算を行っておき、図12Bに示すように、視差ζと距離との対応付ける視差/距離テーブルをあらかじめ作成しておけば、対応点を検出し、視差を求め、視差/距離テーブルを参照することで、やはり、即座に、基準カメラ81Lからの距離を求めることができる。
【0112】
ここで、視差と、ユーザまでの距離とは一対一に対応するものであり、従って、視差を求めることとと、ユーザまでの距離を求めることとは、いわば等価である。
【0113】
また、対応点の検出に、基準ブロックおよび検出ブロックといった複数画素でなるブロックを用いるのは、ノイズの影響を軽減し、基準カメラ画像上の画素(点)naの周囲の画素のパターンの特徴と、検出カメラ画像上の対応点(画素)nbの周囲の画素のパターンの特徴との相関性を明確化して判断することにより、対応点の検出の確実を期すためであり、特に、変化の少ない基準カメラ画像および検出カメラ画像に対しては、画像の相関性により、ブロックの大きさが大きければ大きいほど対応点の検出の確実性が増す。
【0114】
なお、エリアベースマッチングにおいて、基準ブロックと検出ブロックとの相関性を評価する評価関数としては、基準ブロックを構成する画素と、それぞれの画素に対応する、検出ブロックを構成する画素の画素値の差分の絶対値の総和や、その差分の自乗和、正規化された相互相関(normalized cross correlation)などを用いることができる。
【0115】
以上、ステレオ処理について簡単に説明したが、ステレオ処理(ステレオマッチング法)については、その他、例えば、安居院、長尾、「C言語による画像処理入門」、昭晃堂 pp.127ページなどにも記載されている。
【0116】
次に、図13のフローチャートを参照して、図6のメイン制御部61が行うロボット1の動作処理について説明する。この処理は、ロボット1の電源投入と同時に開始される。
【0117】
初めに、ステップS1において、行動決定機構部103は、状態認識情報処理部101からの状態認識情報や、モデル記憶部102からの状態情報、時間経過等に基づいて、ロボット1の行動を決定して、ステップS2に進む。
【0118】
ステップS2において、行動決定機構部103は、ステップS1で決定された行動が、認識処理を必要とする行動であるか否かを判定する。ここで、認識処理を必要としない行動としては、上述したように、例えば、「ダンスをする」などがある。また、認識処理を必要とする行動としては、上述したように、例えば、「ユーザと会話する」などがある。
【0119】
ステップS2において、ステップS1で決定された行動が認識処理を必要とする行動であると判定された場合、ステップS3に進み、行動決定機構部103は、距離推定部111に距離を調整する旨の指令を送出して、ステップS4に進む。
【0120】
ステップS4において、距離推定部111は、行動決定機構部103から距離を調整する旨の指令を受け取ると、ロボット1と認識処理の対象(認識対象)であるユーザとの距離を推定する距離推定処理を行う。距離推定処理の詳細については、図14を参照して後述するが、この処理により、ロボット1とユーザとの距離が推定され、その推定された距離を表す推定距離情報が、距離推定部111から距離判定部113および距離調整部114に供給される。
【0121】
ステップS4の処理の後、ステップS5に進み、距離判定部113は、ステップS4の処理により距離推定部111から供給された、ロボット1とユーザとの距離が、閾値設定部112より予め供給され、距離判定部113に設定されている所定の範囲R内に入っているか否かを判定する。
【0122】
ステップS5において、ロボット1とユーザとの距離が、所定の範囲Rの内側に入っていないと判定された場合、ステップS6に進み、距離判定部113は、ロボット1とユーザとの距離を調整する旨の指令を距離調整部114に出力して、ステップS7に進む。
【0123】
ステップS7において、距離調整部114は、距離判定部113からロボット1とユーザとの距離を調整する旨の指令を受け取ると、ロボット1とユーザとの距離を調整する後述する処理(距離調整処理)を実行する。そして、ステップS7からステップS4に戻り、以下、ステップS4乃至S7の処理が繰り返される。ステップS4乃至S7の処理が繰り返されることにより、ロボット1とユーザとの距離は所定の範囲R内、即ち、認識処理に適切な距離にされる。
【0124】
一方、ステップS5において、ロボット1とユーザとの距離が、所定の範囲R内に入っていると判定された場合、即ち、ロボット1とユーザとの距離が、認識処理に適切な距離になっている場合、ステップS8に進み、距離判定部113は、ロボット1とユーザとの距離が所定の範囲内である旨の指令を行動決定機構部103に出力して、ステップS9に進む。
【0125】
また、上述のステップS2において、ステップS1で決定された行動が認識処理を必要とする行動でないと判定された場合も、ステップS9に進み、行動決定機構部103は、ステップS1で決定された行動に対応する行動指令情報を、姿勢遷移機構部104または音声合成部105に送出する。
【0126】
ここで、認識処理を必要とする場合としては、例えば、「ダンスをする」などがあり、認識処理を必要としない場合としては、例えば、「ユーザと会話する」などがある。また、例えば、「さようなら」という音声を発して、「手を振る」などのように、ロボット1の行動の内容によっては、姿勢遷移機構部104および音声合成部105の両方に行動指令情報を送出することもできる。
【0127】
ステップS9の処理の後、ステップS10に進み、行動決定機構部103は、ロボット動作処理を終了するかどうかを判定し、終了しないと判定した場合、ステップS1に戻り、それ以降の処理が繰り返される。
【0128】
また、ステップS10において、ロボット動作処理を終了すると判定された場合、即ち、例えば、ユーザによって、ロボット1の電源がオフ状態とされた場合、ロボット動作処理が終了される。
【0129】
次に、図14のフローチャートを参照して、図13のステップS4における、距離推定部111の距離推定処理について説明する。
【0130】
ステップS21において、距離推定部111は、CCDカメラ81Lおよび81Rが撮像した画像信号からユーザの顔画像を検出したか否か(画像信号に顔画像が含まれるか否か)を判定する。
【0131】
ステップS21において、CCDカメラ81Lおよび81Rが撮像した画像信号から顔画像を検出したと判定された場合、ステップS22に進み、距離推定部111は、その画像信号における顔画像領域の大きさからロボット1とユーザとの距離を推定し、ステップS23に進む。ここで、画像信号における顔画像領域の大きさからロボット1とユーザとの距離を推定する方法としては、例えば、顔画像領域の大きさ(画素数)と、ロボット1とユーザとの距離を対応づけたテーブルを予め用意し、そのテーブルに基づいて、顔画像領域の大きさからロボット1とユーザとの距離を推定する方法がある。
【0132】
一方、ステップS21において、CCDカメラ81Lおよび81Rが撮像した画像信号から顔画像を検出していないと判定された場合、即ち、例えば、CCDカメラ81Lおよび81Rが出力する画像信号に、十分な大きさの顔画像領域が存在しない場合、ステップS22をスキップして、ステップS23に進み、距離推定部111は、CCDカメラ81Lおよび81Rからの画像信号を用いて、上述したステレオ処理によりロボット1とユーザとの距離を推定してステップS24に進む。
【0133】
ステップS24において、距離推定部111は、超音波センサ83が距離制御部110に出力したラグ時間より、ロボット1とユーザとの距離を推定して、ステップS25に進む。
【0134】
ステップS25において、距離推定部111は、マイクロホン82に音声入力があったか否か、即ち、ユーザがロボット1に音声を発していたか否かを判定する。マイクロホン82に音声入力があったと判定された場合、ステップS26に進み、距離推定部111は、マイクロホン82から距離制御部110に供給された音声信号を用いて、マイクロホン82に入力されたユーザの音声の大きさからロボット1とユーザとの距離を推定する。また、距離推定部111は、マイクロホン82−1乃至82−Nそれぞれの音声信号から、音声を発したユーザの方向(音源方向)を推定し、ステップS27に進む。
【0135】
また、ステップS25において、マイクロホン82に音声入力がなかったと判定された場合、ステップS26の処理をスキップして、ステップS27に進み、距離推定部111は、ステップS22,S23,S24、およびS26それぞれで推定されたロボット1とユーザとの距離から、総合的なロボット1とユーザとの距離を推定する。
【0136】
ここで、上述した顔画像領域の大きさ、ステレオ処理、ラグ時間、および入力されたユーザの音声のそれぞれから推定される距離の推定精度を比較する。入力されたユーザの音声からの距離の推定は、音声ボリューム(音声信号のレベル)の大小と距離とを関連付けるものであるが、人間が通常発話するときの声のボリュームは、人さまざまで、元々声が小さい人であったり、大きい人であったりすることもあるので、音声ボリュームの大小と距離との相関度は、ユーザによってバラツキがあることがあり得る。
【0137】
顔画像領域の大きさから距離を推定する方法は、CCDカメラ81Lおよび81Rの有効画素の領域に対して、極端に顔画像領域が小さい(ロボット1とユーザとの距離が遠すぎる)、または、顔画像領域が入りきらないほど大きい(ロボット1とユーザとの距離が近すぎる)場合、そのような顔画像領域から推定されるロボット1とユーザとの距離は、誤差が大きくなることがあり得る。
【0138】
ステレオ処理によって距離を推定する方法も、顔画像領域の大きさから距離を推定する場合と同様に、画像信号におけるユーザの画像部分の大きさなどの影響を受ける。
【0139】
一方、超音波センサ83が出力するラグ時間から距離を推定する方法は、上述の他の3つの方法のようにユーザの画像や音声の影響を受けないため、最も信頼度が高いと考えられる。
【0140】
そこで、総合的な距離の推定方法としては、例えば、4つの推定結果である距離の値にそれぞれの信頼度にあわせた重みを付け、その重みを推定結果にそれぞれ乗算し、それらの平均値(重み付け平均値)を総合的な距離とする方法を採用することができる。
【0141】
また、例えば、ステレオ処理や顔画像領域による距離の推定などの画像認識を行ったユーザの方向(頭部ユニット12の正面方向)とマイクロホン82−1乃至82−Nそれぞれの音声信号から距離推定部111が推定したユーザの方向(音源方向)が異なる方向である場合には、マイクロホン82−1乃至82−Nが集音した音声は、認識対象ではない別のユーザが発した音声であるとして、入力音声による距離の推定結果を除外して総合的な距離を推定するようにしてもよい。また、例えば、信頼度が最も低いと一般に考えられる音声入力からの距離の推定結果と、その他の3つの方法による距離の推定結果を比較して、音声入力からの距離の推定結果が、その他の3つの方法による距離の推定結果と、極端に差のある値となった場合には、音声入力からの距離の推定結果を破棄し、その他の3つの方法による距離の推定結果だけを用いて、ロボット1とユーザとの総合的な距離を推定するようにしてもよい。また、その他の総合的な距離の推定方法としては、4つの方法または、その4つの方法のうちの複数の方法により得られた距離の推定結果のメジアン(中央値)を求める方法を採用してもよい。
【0142】
ここで、超音波センサ83の出力から推定する距離の結果は、ロボット1とユーザとの間に障害物がない場合は、最も信頼度が高いと考えられるが、一方で、ロボット1とユーザとの間に障害物がある場合、その障害物を検出してしまうということがありうる。そのため、例えば、超音波センサ83の出力から推定した距離が、ステレオ処理や顔画像領域の大きさから推定された距離よりも極端に小さい(ロボット1とユーザとの距離が近い)場合は、障害物がロボット1とユーザの間のロボット1に極めて近い位置にあり、超音波センサ83が、その障害物を検出しているとして、距離推定部111において、超音波センサ83の出力を除外して総合的な距離を推定するようにすることもできる。
【0143】
以上のように、距離推定部111は、外部センサ部71の各種のセンサの出力信号から、ロボット1とユーザとの距離を推定する。なお、ロボット1とユーザとの距離の推定にあたっては、必ずしも上述の4つの距離の推定方法を採用しなければならないわけではなく、そのうちのいずれかのみを採用してもよいし、その他の距離の推定方法を採用するようにしてもよい。その他の距離の推定方法としては、例えば、PSD(Position Sensitive Detector)を用いた距離の推定方法がある。PSDによる距離の推定は、次のようなものである。すなわち、PSDとともに設けられたLED(Light Emitting Diode)が発光し、物体に反射して戻ってくる反射光をPSDが受光する。PSDは、その反射光の位置情報を基に、三角測量の原理で物体とPSDとの距離を推定する。
【0144】
次に、図15のフローチャートを参照して、図13のステップS7における距離調整部114の距離調整処理の第1の実施の形態(第1の距離調整処理)について説明する。
【0145】
初めに、ステップS41において、距離調整部114は、図13のステップS4(図13)で距離推定部111が推定し、距離調整部114に供給された、ロボット1とユーザとの距離が、閾値設定部112から距離調整部114に供給された閾値D1より遠い(大きい)か否かを判定する。
【0146】
ステップS41において、ロボット1とユーザとの距離は、閾値D1より遠いと判定された場合、ステップS42に進み、距離調整部114は、「ユーザに近づくように発話する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0147】
一方、ステップS41において、ロボット1とユーザとの距離は、閾値D1より遠くないと判定された場合、ステップS43に進み、距離調整部114は、ロボット1とユーザとの距離が閾値D1より近い(小さい)か否かを判定する。
【0148】
ステップS43において、ロボット1とユーザとの距離は、閾値D1より近いと判定された場合、ステップS44に進み、距離調整部114は、「ユーザに離れるように発話する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0149】
一方、ステップS43において、ロボット1とユーザとの距離は、閾値D1より近くないと判定された場合、距離調整部114は、距離調整処理を終了する。
【0150】
ここで、図13のステップS1で決定された行動で行う必要のある認識処理が音声認識処理である場合には、ステップS42またはステップS44における、「ユーザに近づくように発話する」および「ユーザに離れるように発話する」旨の行動依頼の指令の代わりに、「ユーザに、より大きい声を出してもらうように発話する」および「ユーザに、より小さい声を出してもらうように発話する」旨の行動依頼の指令を、距離調整部114から行動決定機構部103に送出するようにしてもよい。
【0151】
次に、図16のフローチャートを参照して、図13のステップS7における距離調整部114の距離調整処理の第2実施の形態(第2の距離調整処理)について説明する。なお、図16において、図15のフローチャートと同様の部分については、その説明を適宜省略する。即ち、図16においては、ロボット1とユーザとの距離が、閾値D1より遠いと判定された場合に距離調整部114が行う処理(ステップS52の処理)と、ロボット1とユーザとの距離が、閾値D1より近いと判定された場合に距離調整部114が行う処理(ステップS54の処理)が図15における場合と異なる。
【0152】
図16の第2の距離調整処理では、ステップS51とS53において、図15のステップS41とS43における場合とそれぞれ同様の処理が行われる。そして、ステップS51において、ロボット1とユーザとの距離は、閾値D1より遠いと判定された場合、ステップS52に進み、距離調整部114は、例えば、手招きなどの「ユーザに近づくように促す動作を行う」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0153】
ステップS53において、ロボット1とユーザとの距離は、閾値D1より近いと判定された場合、ステップS54に進み、距離調整部114は、例えば、手で追い払うなどの「ユーザに離れるように促す動作を行う」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0154】
ここで、ステップS52またはS54では、図13のステップS1で決定された行動で行う必要のある認識処理が音声認識処理である場合には、距離推定部111で行われたロボット1とユーザとの距離の推定が、マイクロホン82から距離推定部111に入力された、ユーザが発した音声の大きさに基づいて行われた場合、例えば、ロボット1の手を耳にかざすというような、ユーザにより大きい、または小さい声の発話を促す仕草の行動依頼の指令を、距離調整部114から行動決定機構部103に送出するようにしてもよい。
【0155】
次に、図17のフローチャートを参照して、図13のステップS7における距離調整部114の距離調整処理の第3実施の形態(第3の距離調整処理)について説明する。なお、図17において、図15のフローチャートと同様の部分については、その説明を適宜省略する。即ち、図17においては、ロボット1とユーザとの距離が、閾値D1より遠いと判定された場合に距離調整部114が行う処理(ステップS62の処理)と、ロボット1とユーザとの距離が、閾値D1より近いと判定された場合に距離調整部114が行う処理(ステップS64の処理)が図15における場合と異なる。
【0156】
図17の第3の距離調整処理では、ステップS61とS63において、図15のステップS41とS43における場合とそれぞれ同様の処理が行われる。そして、ステップS61において、ロボット1とユーザとの距離は、閾値D1より遠いと判定された場合、ステップS62に進み、距離調整部114は、ロボット1自身が「ユーザ方向に移動する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0157】
ステップS63において、ロボット1とユーザとの距離は、閾値D1より近いと判定された場合、ステップS64に進み、距離調整部114は、ロボット1自身が「ユーザから離れるように移動する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0158】
以上、距離調整部114による距離の調整方法として、ユーザに近づくまたは離れるようにロボット1が発話する方法(図15に示した第1の距離調整処理)、ユーザが離れるまたは近づくように促す動作をロボット1が行う方法(図16に示した第2の距離調整処理)、およびロボット1がユーザ方向に移動するまたはユーザから離れるように移動する方法(図17に示した第3の距離調整処理)を採用した場合について説明したが、これらの3つの距離の調整方法は、そのうちのいずれか1つだけを採用しなければならないということはなく、例えば、距離調整部114において、上述の3つの方法のうちのいずれかを、ランダムに選択するようにすることができる。また、例えば、距離調整部114では、ユーザに近づくまたは離れるようにロボット1が発話するとともに、ユーザが離れるまたは近づくように促す動作をロボット1が行うことをともに行うようにすることも可能である。
【0159】
次に、図18のフローチャートを参照して、図13のステップS7における距離調整部114の距離調整処理の第4実施の形態(第4の距離調整処理)について説明する。なお、図18において、図15のフローチャートと同様の部分については、その説明を適宜省略する。即ち、図18においては、ロボット1とユーザとの距離が、閾値D1より遠いと判定された場合に距離調整部114が行う処理(ステップS72乃至S74の処理)と、ロボット1とユーザとの距離が、閾値D1より近いと判定された場合に距離調整部114が行う処理(ステップSS76乃至S78の処理)が図15における場合と異なる。
【0160】
図18のフローチャートに示す距離調整処理においては、ユーザに近づくまたは離れるようにロボット1が発話する方法(図15に示した第1の距離調整処理)と、ロボット1がユーザ方向に移動するまたはユーザから離れるように移動する方法(図17に示した第3の距離調整処理)のうちのいずれか一方を、ロボット1が移動する方向に障害物が存在するかどうかによって選択するようになっている。
【0161】
図18の第4の距離調整処理では、ステップS71とS75において、図15のステップS41とS43における場合とそれぞれ同様の処理が行われる。そして、ステップS71において、ロボット1とユーザとの距離は、閾値D1より遠いと判定された場合、ステップS72に進み、距離調整部114は、ロボット1からユーザ方向の平面には、障害物があるかどうかを判定する。
【0162】
ステップS72において、ロボット1からユーザ方向の平面には、障害物があると判定された場合、ステップS73に進み、図15のステップS42と同様に、距離調整部114は、「ユーザに近づくように発話する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0163】
一方、ステップS72において、ロボット1からユーザ方向の平面には、障害物がないと判定された場合、ステップS74に進み、図17のステップS62と同様に、距離調整部114は、ロボット1自身が「ユーザ方向に移動する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0164】
また、ステップS75において、ロボット1とユーザとの距離は、閾値D1より近いと判定された場合、ステップS76に進み、距離調整部114は、ロボット1の背面方向の平面には、障害物があるかどうかを判定する。
【0165】
ステップS76において、ロボット1の背面方向の平面には、障害物があると判定された場合、ステップS77に進み、図15のステップS44と同様に、距離調整部114は、「ユーザに離れるように発話する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0166】
一方、ステップS76において、ユーザに対するロボット1の背面方向の平面には、障害物がないと判定された場合、ステップS78に進み、図17のステップS64と同様に、距離調整部114は、ロボット1自身が「ユーザから離れるように移動する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0167】
ここで、ステップS72およびS76での障害物があるかどうかの判定は、例えば、次のようにして行うことができる。即ち、上述したように、超音波センサ83の出力に基づいて距離推定部111が推定したロボット1とユーザとの距離が、その他のセンサの出力、例えば、CCDカメラ81Lおよび81Rからの画像信号からのステレオ処理に基づく距離の推定結果などと大きく差があり、さらに超音波センサ83の出力に基づいて距離推定部111が推定したロボット1とユーザとの距離が、極めてロボット1に近い距離(位置)にある場合などに、超音波センサ83が検出した物体は、ユーザではなく障害物であるとして、ロボット1とユーザとの間に障害物があると判定することができる。
【0168】
従って、距離推定部111において、ロボット1とユーザとの距離の推定が行われ、超音波センサ83が検出した物体が障害物であると判定された場合、距離推定部111はその情報を推定距離情報とともに、距離調整部114に送出するようにすれば、超音波センサ83は、ロボット1からユーザ方向に対する障害物の検知センサも兼ねることができる。
【0169】
一方、ロボット1の背面方向の障害物は、例えば、ロボット1に背面を向かせ(背面に顔を向かせ)、ロボット1の正面に配設されている超音波センサ83を用いて検出する方法があるが、ロボット1が認識処理を必要とする行動は、ユーザと対話する場合が多く、ユーザに対して背を向ける(顔を背ける)ことは、動作として不自然であり、また振り向き直して認識を行うことは、処理の時間も長くかかる。そこで、例えば、ロボット1の背面側に、超音波センサ83と同様の超音波センサ83を取り付け、障害物を検知させる方法がある。しかしながら、ロボット1に各種のセンサを多く取り付けることは、コストの問題を発生させる。従って、ロボット1とユーザとの距離が閾値D1より近い場合には、ユーザにロボット1から離れるように移動してもらうようにして、ロボット1は、ユーザから離れる方向(背面方向)には移動しないことにすることができる。
【0170】
図19は、そのような場合の、距離調整部114の距離調整処理の第5実施の形態(第5の距離調整処理)のフローチャートを示している。以下に、図19の距離調整部114の距離調整処理について説明するが、図18と同様の部分については、その説明は適宜省略する。
【0171】
即ち、ステップS91乃至S95では、図18のステップS71乃至S75における場合とそれぞれ同様の処理が行われる。そして、ステップS95において、ロボット1とユーザとの距離は、閾値D1より近いと判定された場合、ステップS96に進み、図18のステップS77と同様に、距離調整部114は、「ユーザに離れるように発話する」旨の行動依頼の指令を行動決定機構部103に送出して、距離調整処理を終了する。
【0172】
図18および図19に示した距離調整部111の距離調整処理においては、ロボット1からユーザ方向またはユーザと反対方向(ロボット1の背面方向)の平面に障害物があるかどうかにより、ロボット1が移動するかまたはユーザに移動するように促す行動(発話)するかの場合分けを行うようにしたが、距離調整処理においては、その他、例えば、初めに、ロボット1が移動するようにして、その移動時に障害物を検出した場合は、ユーザに対して移動するように促す行動(発話)をとるようにしてもよい。この場合、ロボット1が移動中に障害物を検出する方法としては、例えば、脚部ユニット14Aまたは14Bが障害物にぶつかると、モータのトルクが大きくなるので、そのアクチュエータA9乃至A14のトルクの変化を検出する方法などがある。
【0173】
以上のように、CCDカメラ81Lおよび81R、マイクロホン82、および超音波センサ83などから出力される信号に基づいて、ロボット1とユーザとの距離を推定し、その推定された距離が認識処理に適切な所定の範囲の距離から外れていた場合、ロボット1とユーザとの距離を調整するようにしたので、ロボット1の認識機能の認識精度を向上させることができる。
【0174】
上述の実施の形態においては、所定の範囲Rおよび閾値D1のそれぞれは、予め決められた値として、閾値設定部112に設定されている。しかし、所定の範囲Rおよび閾値D1のそれぞれは、例えば、周囲の状況やユーザの状態などによって適応的に変化させることもできる。
【0175】
図20は、そのような、閾値設定部112が距離判定部113および距離調整部114に供給する所定の範囲Rおよび閾値D1のそれぞれを、動的に変化させる、図6に対応するメイン制御部61の機能的構成例を示している。なお、図中、図6における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は適宜省略する。即ち、図20のメイン制御部61は、図6における場合と、基本的に同様に構成されている。
【0176】
行動決定機構部103が、状態認識情報処理部101からの状態認識情報や、モデル記憶部102からの状態情報、時間経過等に基づいて、次の行動を決定し、決定された行動の内容が、例えば、「ユーザと会話する」や「ユーザに手を振る」というような音声認識処理や画像認識処理を必要とする場合、行動決定機構部103は、状態認識情報処理部101の音声認識部101Aや画像認識部101Bが、精度良く認識することができるように、ロボット1とユーザとの距離を調整する旨の指令を距離制御部110に送出する。また、行動決定機構部103は、ロボット1とユーザとの距離を調整する旨の指令とともに、例えば、「足踏みしている」などのロボット1の現在の動作状態も距離制御部110に供給する。
【0177】
距離推定部111は、図6における場合と同様に、CCDカメラ81Lおよび81R、マイクロホン82、および超音波センサ83などからの各種の信号を基に、ロボット1とユーザとの距離を推定する。そして、距離推定部111は、推定した距離の推定距離情報を、距離判定部113と距離調整部114の他に、閾値設定部112にも送出する。
【0178】
音声認識における周囲の雑音の大きさは、認識処理に影響を及ぼすことがある。例えば、ロボット1とユーザとの距離が遠すぎるため、ユーザの発する音声の大きさと、周囲の雑音の区別がつきにくい場合、ロボット1とユーザとの距離を近づけることにより、ユーザの発する音声を大きくさせることができる。従って、周囲の雑音の大きさにより、ロボット1とユーザとの適切な距離は異なってくる。そこで、閾値設定部112は、周囲の雑音を求め、認識処理に適切なロボット1とユーザとの距離の範囲(所定の範囲R1)を設定する。
【0179】
そのため閾値設定部112は、マイクロホン82からの音声信号に基づいて、ロボット1の周囲の背景雑音を計測する。これは、例えば、マイクロホン82が集音した音声信号のなかで、ユーザの発した音声信号が含まれていない区間(音声区間以外の期間)の音声信号を所定の時間だけ集め、集めた音声信号のパワー値の平均を求めることにより計算することができる。
【0180】
また、閾値設定部112は、行動決定機構部103から距離制御部110に供給されるロボット1の現在の動作状態を用いて、マイクロホン82に入力された音声における、ロボット1自身が発生する雑音の影響(雑音成分)を推定する。ロボット1の動作状態としては、例えば、歩行中、立位静止、または座位などのロボット1の動作モードといえるようなものから、ロボット1の各関節部にあたるアクチュエータA1乃至A14の動作状態に至るまでの様々な情報が、行動決定機構部103から距離制御部110に供給される。例えば、ロボット1が歩行や足踏みをしている場合には、閾値設定部112は、ロボット1の足部45と床面との打撃音や、ロボットのアクチュエータA1乃至A14のモータ音などのレベルを、ロボット1自身が発生する雑音の影響として推定する。
【0181】
そして、閾値設定部112は、上述したような、ロボット1の周囲の背景雑音、ロボット1の現在の動作状態などから、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R1)を設定する。例えば、マイクロホン82から入力される周囲の雑音が大きすぎて、ユーザの発する音声の区別がつきにくい場合、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R1)を近い値とすることにより、ユーザにロボット1の方向に近づいてもらい、ユーザの音声信号のS/Nを高くさせることができる。
【0182】
また、閾値設定部112は、CCDカメラ81Lおよび81Rからの画像信号に顔画像を検出した場合、その検出した顔画像領域の大きさから、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R2)を設定する。これは、検出した顔画像領域の大きさが、CCDカメラ81Lおよび81Rが出力する画像の画枠に対して大きすぎても、また小さすぎても、顔画像領域の大きさから推定するロボット1とユーザとの距離の誤差が、大きくなるためである。そこで、CCDカメラ81Lおよび81Rの有効画素の縦と横のそれぞれの画素数に対して、顔画像領域を含む長方形の縦と横のそれぞれの画素数が、例えば、1/2程度の画素数となるとき(このときの顔画像領域の大きさを、以下、適宜、適量値という)のロボット1とユーザとの距離を、認識に最適な距離とし、その最適な距離から所定のマージンをもつ範囲を、顔画像領域の大きさの検出による適切な認識の範囲(所定の範囲R2)とすることができる。
【0183】
さらに、閾値設定部112は、マイクロホン82からの音声信号を検出した場合、その音声信号の大きさから、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R2)を設定する。これは、例えば、ユーザが発する音声が、ロボット1に近すぎて大きすぎる場合、マイクロホン82が集音した音声波形は、マイクロホン82のダイナミックレンジを超えて、本来の音声波形より歪んだ波形となる。逆に、ユーザが発する音声が、ロボット1から遠すぎて小さすぎる場合、周囲の雑音と認識されるべきユーザの音声の区別がつきにくくなる。そこで、マイクロホン82に入力されるユーザの音声の平均レベルが、そのマイクロホン82が測定可能な音声レベルの範囲の、例えば、中心値(ダイナミックレンジの中点)程度となるとき(このときのユーザの音声のレベルも、以下、適宜、適量値という)のロボット1とユーザとの距離を、認識に最適な距離とし、その最適な距離から所定のマージンをもつ範囲を、音声の大きさの検出による認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R2)とすることができる。
【0184】
さらに、閾値設定部112は、上述した、ロボット1の周囲の背景雑音、ロボット1の現在の動作状態などから計算された、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R1)と、CCDカメラ81Lおよび81Rが出力する画像信号から検出した顔画像領域の大きさ、およびマイクロホン82が出力する音声信号の大きさから計算された、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R2)に基づいて、距離判定部113において閾値として用いられる所定の範囲Rを動的に設定する。
【0185】
さらに、閾値設定部112は、動的に設定した所定の範囲Rから、例えば、その中心値を算出し、閾値D1として設定する。そして、閾値設定部112は、所定の範囲Rの値を距離判定部113に、閾値D1を距離調整部114にそれぞれ送出する。
【0186】
次に、図21のフローチャートを参照して、閾値設定部112による所定の範囲Rの動的決定処理について説明する。この処理は、例えば、ロボット1の電源が投入されている間、一定の周期で、実行される。
【0187】
初めに、ステップS111において、閾値設定部112は、マイクロホン82からの音声信号に基づいて、ロボット1の周囲の背景雑音を計測して、ステップS112に進む。
【0188】
ステップS112において、閾値設定部112は、行動決定機構部103から距離制御部110に供給される、ロボット1の現在の動作状態を取得して、ステップS113に進む。
【0189】
ステップS113において、閾値設定部112は、ステップS111で計算したロボット1の周囲の背景雑音、ステップS112で取得したロボット1の現在の動作状態などから、認識に適切なロボット1とユーザとの距離の範囲を計算して、所定の範囲R1として設定し、ステップS114に進む。
【0190】
ステップS114において、閾値設定部112は、マイクロホン82から距離制御部110にユーザの音声入力があったか、またはCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかに、顔画像を検出したかどうかを判定する。
【0191】
ステップS114において、マイクロホン82から距離制御部110にユーザの音声入力がなく、かつCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかに、顔画像が検出されなかったと判定された場合、後述するステップS115乃至ステップS118の処理を、スキップし、ステップS119に進む。
【0192】
一方、ステップS114において、マイクロホン82から距離制御部110にユーザの音声入力があったか、またはCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかに、顔画像が検出されたと判定された場合、ステップS115に進み、マイクロホン82から距離制御部110に入力されたユーザの音声の大きさ、またはCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかの顔画像領域の大きさが、適量値であるかどうかが、閾値設定部112によって判定される。ここで、ユーザの音声入力または顔画像の検出のどちらか一方だけが検出された場合は、ステップS115では、検出された信号についてのみ処理が行われる。
【0193】
ステップS115において、マイクロホン82から距離制御部110に入力された音声の大きさ、並びにCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかの顔画像領域の大きさが、適量値であると判定された場合、後述するステップS116乃至ステップS118の処理を、スキップし、ステップS119に進む。
【0194】
一方、ステップS115において、マイクロホン82から距離制御部110に入力された音声の大きさ、またはCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかの顔画像領域の大きさが適量値ではない、と判定された場合、ステップS116に進み、閾値設定部112は、距離推定部111から供給された推定距離情報、すなわち、ロボット1とユーザとの距離を取得して、ステップS117に進む。
【0195】
ステップS117において、閾値設定部112は、ステップS116で取得したロボット1とユーザとの距離が、ステップS113で計算した、認識に適切な所定の範囲R1内であるかどうかを判定する。
【0196】
ステップS117において、ロボット1とユーザとの距離が、認識に適切な所定の範囲R1内ではないと判定された場合、ステップS118の処理はスキップされ、ステップS119に進む。
【0197】
一方、ステップS117において、ロボット1とユーザとの距離が、認識に適切な所定の範囲R1内であると判定された場合、ステップS118に進み、閾値設定部112は、ユーザの音声の大きさ、または顔画像領域の大きさを適量値にするロボット1とユーザとの距離の範囲である所定の範囲R2を計算し、ステップS113で設定した所定の範囲R1ではなく、ユーザの音声の大きさ、または顔画像領域の大きさを適量値にするロボット1とユーザとの距離の所定の範囲R2を、認識に適切なロボット1とユーザとの距離の範囲(所定の範囲R)として設定して、ステップS119に進む。例えば、閾値設定部112がステップS116で距離推定部111から取得したロボット1とユーザとの距離は、所定の範囲R1内であるが、ステップS118で計算された所定の範囲R2が、例えば、入力画像から得られる顔画像領域の大きさが小さく、所定の範囲R1よりもロボット1に近い距離の範囲として計算された場合、認識に適切なロボット1とユーザとの距離の所定の範囲Rとして、所定の範囲R2が採用されて設定される。
【0198】
ここで、ステップS117において、閾値設定部112がステップS116で距離推定部111から取得したロボット1とユーザとの距離が、所定の範囲R1内ではないと判定された場合には、音声や顔画像領域の大きさに拘らず、距離調整部114は、ロボット1とユーザとの距離を調整する指令を行動決定機構部103に送出することになるので、閾値設定部112は、あえて所定の範囲R2を計算しない(ステップS118をスキップする)。
【0199】
一方、ロボット1とユーザとの距離が、所定の範囲R1であるにも拘らず、マイクロホン82から距離制御部110に入力された音声の大きさは適量ではない、またはCCDカメラ81Lおよび81Rから距離制御部110に入力された画像信号のなかの顔画像領域の大きさが適量ではない場合には、より認識精度が良い範囲(所定の範囲R2)が存在していることになるので、その所定の範囲R2をステップS118で計算する。
【0200】
なお、顔画像領域の大きさが適量ではない場合の他の対処方法としては、CCDカメラ81Lおよび81Rにズーム機構を備え、そのズーム機構により顔画像領域の大きさを調整する方法もあるが、ズームの比率にも限界があるため、ユーザの顔画像領域を最適にする範囲にも限界がある。また、ズーム機構を備えるには、ロボット1の構造的(場所的)制約やコストの制約などを受ける。従って、上述したように、ユーザまたはロボット1が距離を調整することによって、顔画像領域の大きさを調整するのが望ましい。
【0201】
ステップS119では、閾値設定部112は、所定の範囲Rから閾値D1を計算し、所定の範囲Rを距離判定部113に、閾値D1を距離調整部114にそれぞれ出力して、処理を終了する。
【0202】
以上のように、所定の範囲Rおよび閾値D1の値を、周囲の状況やユーザの状態などによって適応的に変化させることにより、ロボット1とユーザとの距離を常に認識機能に最適な距離に調整することができるので、認識機能の認識精度を向上させることができる。
【0203】
以上の実施の形態においては、外部センサ部71のマイクロホン82、CCDカメラ81Lおよび81R、並びにタッチセンサ51などの各種のセンサからの出力信号は、常に状態認識情報処理部101に入力され、状態認識情報処理部101は、認識処理を行って、状態認識情報を、常時、行動決定機構部103に出力するようにしたが、行動決定機構部103が次の行動を決定し、その行動に認識処理が必要な時のみ、行動決定機構部103から状態認識情報処理部101にコマンドを送出することにより、状態認識情報処理部101に認識処理を行わせ、状態認識情報を受け取るようにしてもよい。
【0204】
また、閾値設定部112から距離調整部114に出力される閾値D1は、所定の範囲Rの中心値としたが、例えば、所定の範囲Rの上限値(ロボット1から遠い側の値)および下限値(ロボット1に近い側の値)などのように2つの閾値として設定することもできる。この場合、例えば、図15に示した第1の距離調整処理のフローチャートにおいて、ステップS41の閾値D1に代えて上限値を用いるとともに、ステップS43の閾値D1に代えて下限値を用いることができる。
【0205】
上述した一連の処理を実行するプログラムは、フレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができ、メモリ61Aにインストールされる。
【0206】
さらに、プログラムは、上述したようなリムーバブル記録媒体からメモリ61Aにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、メモリ61Aにインストールすることができる。
【0207】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0208】
ロボット1とユーザとの距離は、上述したようなマイクロホン82などの出力から推定して求める方法の他、例えば、監視カメラなどを用いることによってロボット1の外部で検出し、例えば、無線などによりロボット1に供給するようにしてもよい。
【0209】
【発明の効果】
以上のごとく本発明によれば、ロボットの認識機能の認識精度を向上させることができる。
【図面の簡単な説明】
【図1】本発明を適用したロボットの外観構成を示す斜視図である。
【図2】図1のロボットの外観構成を示す、背後側の斜視図である。
【図3】図1のロボットについて説明するための略線図である。
【図4】図1のロボットの制御に関する部分を主に説明するためのブロック図である。
【図5】図1のロボットの内部構成を示すブロック図である。
【図6】図5のメイン制御部の構成を示すブロック図である。
【図7】超音波センサの処理を説明する図である。
【図8】基準カメラおよび検出カメラで、ユーザを撮影している状態を示す図である。
【図9】エピポーララインを説明するための図である。
【図10】基準カメラ画像および検出カメラ画像を示す図である。
【図11】評価値の推移を示す図である。
【図12】設定点/距離テーブルおよび視差/距離テーブルを示す図である。
【図13】図1のロボットのロボット動作処理を説明するフローチャートである。
【図14】図13のステップS4の距離推定処理を説明するフローチャートである。
【図15】図13のステップS7の距離調整処理を説明するフローチャートである。
【図16】図13のステップS7の距離調整処理を説明するフローチャートである。
【図17】図13のステップS7の距離調整処理を説明するフローチャートである。
【図18】図13のステップS7の距離調整処理を説明するフローチャートである。
【図19】図13のステップS7の距離調整処理を説明するフローチャートである。
【図20】図5のメイン制御部の構成を示すブロック図である。
【図21】動的に所定の範囲Rを決定する場合の閾値設定部の範囲の動的決定処理について説明するフローチャートである。
【符号の説明】
1 ロボット, 61 メイン制御部, 63 サブ制御部, 71 外部センサ部, 72 スピーカ, 81L CCDカメラ, 81R CCDカメラ, 82 マイクロホン, 83 超音波センサ, 101 状態認識情報処理部, 102 モデル記憶部, 103 行動決定機構部, 104 姿勢遷移機構部, 105 音声合成部, 110 距離制御部, 111 距離推定部, 112 閾値設定部, 113 距離判定部, 114 距離調整部
Claims (15)
- 所定の認識対象を認識する認識機能を有するロボット装置において、
前記認識対象までの距離を推定するための情報を入力する情報入力手段と、
前記情報入力手段から供給された情報に基づいて、前記認識対象までの距離を推定する距離推定手段と、
前記距離推定手段により推定された前記距離に基づいて、前記認識対象までの距離を調整する距離調整手段と
を備えることを特徴とするロボット装置。 - 前記情報入力手段は、周囲の状況を撮像し、画像信号を出力する複数の撮像手段を少なくとも有し、
前記距離推定手段は、前記複数の撮像手段が出力する画像信号を用いてステレオ処理することにより、前記認識対象までの距離を推定する
ことを特徴とする請求項1に記載のロボット装置。 - 前記認識対象は、ユーザであり、
前記情報入力手段は、周囲の状況を撮像し、画像信号を出力する撮像手段を少なくとも有し、
前記距離推定手段は、前記撮像手段が出力する画像信号を用いて、前記ユーザの顔領域を検出し、その顔領域に基づいて、前記ユーザまでの距離を推定する
ことを特徴とする請求項1に記載のロボット装置。 - 前記認識対象は、ユーザであり、
前記情報入力手段は、音声を入力する音声入力手段を少なくとも有し、
前記距離推定手段は、前記音声入力手段に入力される前記ユーザが発する音声の大きさに基づいて、前記ユーザまでの距離を推定する
ことを特徴とする請求項1に記載のロボット装置。 - 前記情報入力手段は、超音波パルスを発して前記認識対象から反射する反射波を受信する超音波出力手段を少なくとも有し、
前記距離推定手段は、前記超音波出力手段が出力する値に基づいて、前記認識対象までの距離を推定する
ことを特徴とする請求項1に記載のロボット装置。 - 前記距離調整手段は、前記ロボット装置を移動させることにより、前記認識対象までの距離を調整する
ことを特徴とする請求項1に記載のロボット装置。 - 前記認識対象は、ユーザであり、
前記距離調整手段は、前記ユーザが移動するように、前記ロボット装置に行動させることにより、前記ユーザまでの距離を調整する
ことを特徴とする請求項1に記載のロボット装置。 - 音声を出力する音声出力手段をさらに備え、
前記距離調整手段は、前記ユーザが移動するように、前記音声出力手段に音声を出力させることにより、前記ユーザまでの距離を調整する
ことを特徴とする請求項7に記載のロボット装置。 - 前記距離調整手段は、前記ユーザが移動するように前記ユーザに促す動作を、前記ロボット装置にさせることにより、前記ユーザまでの距離を調整する
ことを特徴とする請求項7に記載のロボット装置。 - 前記距離推定手段により推定された前記距離が、所定の範囲内であるかどうかを判定する判定手段をさらに備え、
前記距離調整手段は、前記判定手段の判定結果に基づいて、前記認識対象までの距離を調整する
ことを特徴とする請求項1に記載のロボット装置。 - 前記所定の範囲を設定する範囲設定手段をさらに備える
ことを特徴とする請求項10に記載のロボット装置。 - 前記範囲設定手段は、前記所定の範囲を、前記情報入力手段から得られる情報に基づいて、動的に設定する
ことを特徴とする請求項11に記載のロボット装置。 - 所定の認識対象を認識する認識機能を有するロボット装置を制御するロボット制御方法において、
前記認識対象までの距離を推定する距離推定ステップと、
前記距離推定ステップの処理の結果に基づいて、前記認識対象までの距離を調整する距離調整ステップと
を含むことを特徴とするロボット制御方法。 - 所定の認識対象を認識する認識機能を有するロボット装置の制御をコンピュータに行わせるプログラムであって、
前記認識対象までの距離を推定する距離推定ステップと、
前記距離推定ステップの処理の結果に基づいて、前記認識対象までの距離を調整する距離調整ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。 - 所定の認識対象を認識する認識機能を有するロボット装置の制御をコンピュータに行わせるプログラムにおいて、
前記認識対象までの距離を推定する距離推定ステップと、
前記距離推定ステップの処理の結果に基づいて、前記認識対象までの距離を調整する距離調整ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003019065A JP4131392B2 (ja) | 2003-01-28 | 2003-01-28 | ロボット装置およびロボット制御方法、記録媒体、並びにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003019065A JP4131392B2 (ja) | 2003-01-28 | 2003-01-28 | ロボット装置およびロボット制御方法、記録媒体、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004230480A true JP2004230480A (ja) | 2004-08-19 |
JP4131392B2 JP4131392B2 (ja) | 2008-08-13 |
Family
ID=32949038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003019065A Expired - Fee Related JP4131392B2 (ja) | 2003-01-28 | 2003-01-28 | ロボット装置およびロボット制御方法、記録媒体、並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4131392B2 (ja) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006185109A (ja) * | 2004-12-27 | 2006-07-13 | Hitachi Ltd | 画像計測装置及び画像計測方法 |
JP2006192562A (ja) * | 2004-12-14 | 2006-07-27 | Honda Motor Co Ltd | 自律移動ロボット |
JP2006247780A (ja) * | 2005-03-10 | 2006-09-21 | Advanced Telecommunication Research Institute International | コミュニケーションロボット |
JP2007319938A (ja) * | 2006-05-30 | 2007-12-13 | Toyota Motor Corp | ロボット装置及び物体の三次元形状の取得方法 |
JP2008217521A (ja) * | 2007-03-06 | 2008-09-18 | Nippon Telegr & Teleph Corp <Ntt> | パラメータ推定装置,パラメータ推定方法,その方法を実装したプログラム及びそのプログラムを記録した記録媒体 |
JP2009192942A (ja) * | 2008-02-15 | 2009-08-27 | Toshiba Corp | 音声対話装置及び支援方法 |
JP2009229244A (ja) * | 2008-03-24 | 2009-10-08 | Advanced Telecommunication Research Institute International | 触覚センサを有するロボット |
US7680667B2 (en) | 2004-12-24 | 2010-03-16 | Kabuhsiki Kaisha Toshiba | Interactive robot, speech recognition method and computer program product |
JP2011051056A (ja) * | 2009-09-01 | 2011-03-17 | Kawada Kogyo Kk | 吊下げ型協調作業ロボット |
JP2012078982A (ja) * | 2010-09-30 | 2012-04-19 | Nintendo Co Ltd | 情報処理プログラム、情報処理方法、情報処理システム、及び情報処理装置 |
JP2012088776A (ja) * | 2010-10-15 | 2012-05-10 | Nintendo Co Ltd | 画像処理プログラム、装置、システムおよび方法 |
JP2015206798A (ja) * | 2015-06-25 | 2015-11-19 | 日立オートモティブシステムズ株式会社 | 距離算出装置 |
JP2017185605A (ja) * | 2016-04-07 | 2017-10-12 | シャープ株式会社 | 制御端末、ロボット、制御端末の制御方法、および、そのプログラム |
WO2018028360A1 (zh) * | 2016-08-08 | 2018-02-15 | 深圳光启合众科技有限公司 | 用于智能机器人的控制方法和装置及机器人 |
WO2018047802A1 (ja) * | 2016-09-08 | 2018-03-15 | Groove X株式会社 | 自然な距離感を保つ自律行動型ロボット |
JP2018202567A (ja) * | 2017-06-07 | 2018-12-27 | シャープ株式会社 | 動作制御装置およびその制御方法、ロボットならびに制御プログラム |
JP2020046478A (ja) * | 2018-09-14 | 2020-03-26 | 株式会社フュートレック | ロボットシステム |
JP2020151070A (ja) * | 2019-03-19 | 2020-09-24 | パナソニック株式会社 | ロボット及びロボットの制御方法 |
JP2021021852A (ja) * | 2019-07-29 | 2021-02-18 | シャープ株式会社 | 音声認識装置、電子機器、制御方法および制御プログラム |
JP2021064067A (ja) * | 2019-10-10 | 2021-04-22 | 沖電気工業株式会社 | 機器、情報処理方法、プログラム、情報処理システムおよび情報処理システムの方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105896664B (zh) * | 2016-05-16 | 2019-09-10 | 四川仪岛科技有限公司 | 一种自动充电的充电定位方法 |
CN107274895B (zh) * | 2017-08-18 | 2020-04-17 | 京东方科技集团股份有限公司 | 一种语音识别设备及方法 |
KR20210099438A (ko) * | 2020-02-04 | 2021-08-12 | 한화디펜스 주식회사 | 타격장치를 원격으로 제어하는 운용장치 및 방법 |
-
2003
- 2003-01-28 JP JP2003019065A patent/JP4131392B2/ja not_active Expired - Fee Related
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006192562A (ja) * | 2004-12-14 | 2006-07-27 | Honda Motor Co Ltd | 自律移動ロボット |
JP4564447B2 (ja) * | 2004-12-14 | 2010-10-20 | 本田技研工業株式会社 | 自律移動ロボット |
US7933684B2 (en) | 2004-12-14 | 2011-04-26 | Honda Motor Co., Ltd. | Autonomous mobile robot |
US7680667B2 (en) | 2004-12-24 | 2010-03-16 | Kabuhsiki Kaisha Toshiba | Interactive robot, speech recognition method and computer program product |
JP2006185109A (ja) * | 2004-12-27 | 2006-07-13 | Hitachi Ltd | 画像計測装置及び画像計測方法 |
JP2006247780A (ja) * | 2005-03-10 | 2006-09-21 | Advanced Telecommunication Research Institute International | コミュニケーションロボット |
JP2007319938A (ja) * | 2006-05-30 | 2007-12-13 | Toyota Motor Corp | ロボット装置及び物体の三次元形状の取得方法 |
JP4740889B2 (ja) * | 2007-03-06 | 2011-08-03 | 日本電信電話株式会社 | パラメータ推定装置,パラメータ推定方法,その方法を実装したプログラム及びそのプログラムを記録した記録媒体 |
JP2008217521A (ja) * | 2007-03-06 | 2008-09-18 | Nippon Telegr & Teleph Corp <Ntt> | パラメータ推定装置,パラメータ推定方法,その方法を実装したプログラム及びそのプログラムを記録した記録媒体 |
JP2009192942A (ja) * | 2008-02-15 | 2009-08-27 | Toshiba Corp | 音声対話装置及び支援方法 |
US8155968B2 (en) * | 2008-02-15 | 2012-04-10 | Kabushiki Kaisha Toshiba | Voice recognition apparatus and method for performing voice recognition comprising calculating a recommended distance range between a user and an audio input module based on the S/N ratio |
JP2009229244A (ja) * | 2008-03-24 | 2009-10-08 | Advanced Telecommunication Research Institute International | 触覚センサを有するロボット |
JP2011051056A (ja) * | 2009-09-01 | 2011-03-17 | Kawada Kogyo Kk | 吊下げ型協調作業ロボット |
US8982229B2 (en) | 2010-09-30 | 2015-03-17 | Nintendo Co., Ltd. | Storage medium recording information processing program for face recognition process |
JP2012078982A (ja) * | 2010-09-30 | 2012-04-19 | Nintendo Co Ltd | 情報処理プログラム、情報処理方法、情報処理システム、及び情報処理装置 |
JP2012088776A (ja) * | 2010-10-15 | 2012-05-10 | Nintendo Co Ltd | 画像処理プログラム、装置、システムおよび方法 |
US8956227B2 (en) | 2010-10-15 | 2015-02-17 | Nintendo Co., Ltd. | Storage medium recording image processing program, image processing device, image processing system and image processing method |
JP2015206798A (ja) * | 2015-06-25 | 2015-11-19 | 日立オートモティブシステムズ株式会社 | 距離算出装置 |
JP2017185605A (ja) * | 2016-04-07 | 2017-10-12 | シャープ株式会社 | 制御端末、ロボット、制御端末の制御方法、および、そのプログラム |
WO2018028360A1 (zh) * | 2016-08-08 | 2018-02-15 | 深圳光启合众科技有限公司 | 用于智能机器人的控制方法和装置及机器人 |
CN107696028A (zh) * | 2016-08-08 | 2018-02-16 | 深圳光启合众科技有限公司 | 用于智能机器人的控制方法和装置及机器人 |
JPWO2018047802A1 (ja) * | 2016-09-08 | 2018-10-18 | Groove X株式会社 | 自然な距離感を保つ自律行動型ロボット |
WO2018047802A1 (ja) * | 2016-09-08 | 2018-03-15 | Groove X株式会社 | 自然な距離感を保つ自律行動型ロボット |
GB2570584A (en) * | 2016-09-08 | 2019-07-31 | Groove X Inc | Autonomous robot that maintains sense of natural distance |
US11148294B2 (en) | 2016-09-08 | 2021-10-19 | Groove X, Inc. | Autonomously acting robot that maintains a natural distance |
GB2570584B (en) * | 2016-09-08 | 2021-12-08 | Groove X Inc | Autonomously acting robot that maintains a natural distance |
JP2018202567A (ja) * | 2017-06-07 | 2018-12-27 | シャープ株式会社 | 動作制御装置およびその制御方法、ロボットならびに制御プログラム |
JP2020046478A (ja) * | 2018-09-14 | 2020-03-26 | 株式会社フュートレック | ロボットシステム |
JP2020151070A (ja) * | 2019-03-19 | 2020-09-24 | パナソニック株式会社 | ロボット及びロボットの制御方法 |
JP7273566B2 (ja) | 2019-03-19 | 2023-05-15 | パナソニックホールディングス株式会社 | ロボット、ロボットの制御方法及びプログラム |
JP2021021852A (ja) * | 2019-07-29 | 2021-02-18 | シャープ株式会社 | 音声認識装置、電子機器、制御方法および制御プログラム |
JP2021064067A (ja) * | 2019-10-10 | 2021-04-22 | 沖電気工業株式会社 | 機器、情報処理方法、プログラム、情報処理システムおよび情報処理システムの方法 |
JP7392377B2 (ja) | 2019-10-10 | 2023-12-06 | 沖電気工業株式会社 | 機器、情報処理方法、プログラム、情報処理システムおよび情報処理システムの方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4131392B2 (ja) | 2008-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4131392B2 (ja) | ロボット装置およびロボット制御方法、記録媒体、並びにプログラム | |
US7321853B2 (en) | Speech recognition apparatus and speech recognition method | |
JP4849244B2 (ja) | 移動ロボットおよび移動速度推定方法 | |
JP3855812B2 (ja) | 距離計測方法、その装置、そのプログラム、その記録媒体及び距離計測装置搭載型ロボット装置 | |
US7840308B2 (en) | Robot device control based on environment and position of a movable robot | |
JP3996015B2 (ja) | 姿勢認識装置及び自律ロボット | |
JP2003079685A (ja) | 視覚障害者歩行用補助具 | |
JP2008126329A (ja) | 音声認識ロボットおよび音声認識ロボットの制御方法 | |
JP2009222969A (ja) | 音声認識ロボットおよび音声認識ロボットの制御方法 | |
JP2006247780A (ja) | コミュニケーションロボット | |
JP2004299033A (ja) | ロボット装置、情報処理方法、およびプログラム | |
US11514269B2 (en) | Identification device, robot, identification method, and storage medium | |
JP2008087140A (ja) | 音声認識ロボットおよび音声認識ロボットの制御方法 | |
JP7120254B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP6565853B2 (ja) | コミュニケーション装置 | |
JP2006272471A (ja) | コミュニケーションロボット | |
JPWO2019087495A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
WO2018020889A1 (ja) | ロボット | |
JP2006088276A (ja) | 動作生成システム | |
JP4793904B2 (ja) | コミュニケーションロボットシステムおよびコミュニケーションロボット | |
JP4600736B2 (ja) | ロボット制御装置および方法、記録媒体、並びにプログラム | |
JP2005335001A (ja) | ロボット制御装置および方法、記録媒体、並びにプログラム | |
JP4210897B2 (ja) | 音源方向判断装置及び音源方向判断方法 | |
JP2009285752A (ja) | 移動型ロボット | |
CN111708428B (zh) | 通信***和用于控制通信***的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060126 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071003 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071024 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071214 |
|
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: 20080502 |
|
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: 20080515 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120606 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |