(57)【特許請求の範囲】
【請求項１】
ロボットから出力される合成音S(t)の出力特性を制御する音響信号出力制御装置であって、
音声合成を行い、前記ロボットから出力する前記合成音S(t)を生成する生成手段と、
前記ロボットが使用される環境を認識する認識手段と、
前記認識手段による環境の認識結果に基づいて、前記合成音S(t)の出力特性を制御する制御手段と
を備え、
前記認識手段は、前記ロボットが使用される環境における雑音のパワーE(t)を認識するとともに、前記ロボットからユーザまでの距離d(t)も認識し、
前記制御手段は、
前記認識手段により認識された前記雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理を施してフィルタリング結果e(t)を生成し、
次式に基づいて、前記合成音S(t)を合成音y(t)に変換する
y(ｔ)＝ε(e(t)，d(t))＊S(t)
ただし、関数ε(e(t)，d(t))は、前記フィルタリング結果e(t)、および前記ユーザまでの距離d(t)それぞれが大きくなるほど、大きくなるような関数であり、＊は、畳み込み積分を表す
音響信号出力制御装置。
【請求項２】
前記認識手段は、前記ユーザを撮像する撮像手段により撮像された画像、又は、赤外線が前記ユーザに反射して前記ロボットに戻ってくるまでの時間を検出する検出手段により検出された時間に基づいて、前記ロボットから前記ユーザまでの距離d(t)を認識する
請求項１に記載の音声信号出力制御装置。
【請求項３】
ロボットから出力される合成音S(t)の出力特性を制御する音響信号出力制御装置の音響信号出力制御方法であって、
音声合成を行い、前記ロボットから出力する前記合成音S(t)を生成する生成ステップと、
前記ロボットが使用される環境を認識する認識ステップと、
前記認識ステップでの環境の認識結果に基づいて、前記合成音S(t)の出力特性を制御する制御ステップと
を含み、
前記認識ステップは、前記ロボットが使用される環境における雑音のパワーE(t)を認識するとともに、前記ロボットからユーザまでの距離d(t)も認識し、
前記制御ステップは、
前記認識ステップで認識された前記雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理を施してフィルタリング結果e(t)を生成し、
次式に基づいて、前記合成音S(t)を合成音y(t)に変換する
y(ｔ)＝ε(e(t)，d(t))＊S(t)
ただし、関数ε(e(t)，d(t))は、前記フィルタリング結果e(t)、および前記ユーザまでの距離d(t)それぞれが大きくなるほど、大きくなるような関数であり、＊は、畳み込み積分を表す
音響信号出力制御方法。
【請求項４】
ロボットから出力される合成音S(t)の出力特性の制御を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
音声合成を行い、前記ロボットから出力する前記合成音S(t)を生成する生成ステップと、
前記ロボットが使用される環境を認識する認識ステップと、
前記認識ステップでの環境の認識結果に基づいて、前記合成音S(t)の出力特性を制御する制御ステップと
を含み、
前記認識ステップは、前記ロボットが使用される環境における雑音のパワーE(t)を認識するとともに、前記ロボットからユーザまでの距離d(t)も認識し、
前記制御ステップは、
前記認識ステップで認識された前記雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理を施してフィルタリング結果e(t)を生成し、
次式に基づいて、前記合成音S(t)を合成音y(t)に変換する
y(ｔ)＝ε(e(t)，d(t))＊S(t)
ただし、関数ε(e(t)，d(t))は、前記フィルタリング結果e(t)、および前記ユーザまでの距離d(t)それぞれが大きくなるほど、大きくなるような関数であり、＊は、畳み込み積分を表す
処理を実行させるプログラムが記録されている
記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、音響信号出力制御装置および音響信号出力制御方法、並びに記録媒体に関し、特に、例えば、音声合成された合成音等の音響信号を出力するロボット等に用いて好適な音響信号出力制御装置および音響信号出力制御方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
近年、玩具等として、タッチスイッチの押圧操作や時間経過等に対応して、音声を出力するロボット（本明細書においては、ぬいぐるみ状のものを含む）が数多く製品化されている。
【０００３】
【発明が解決しようとする課題】
しかしながら、ロボットから出力される音声のパワーや高さ（周波数）は、あらかじめ設定された値とされているため、固定であり、従って、ロボットが使用される環境によっては、そのロボットが出力する音声が聞き取りにくい課題があった。
【０００４】
即ち、例えば、ロボットが、雑音の大きな環境で使用される場合には、ロボットが出力する音声が、その雑音にかき消され、聞き取りにくいことがあった。
【０００５】
また、例えば、ロボットが歩行等することによって移動可能なものである場合には、ロボットが、ユーザから遠方に移動したときに、ロボットが出力する音声が小さすぎて、聞き取りにくくなる課題があった。
【０００６】
さらに、ロボットが、ユーザの近くに移動したときには、ロボットが出力する音声が大きすぎて、耳障りとなることがあった。
【０００７】
そこで、例えば、ロボットに、それが出力する音声の音量（大きさ）を調整するボリュームスイッチを設け、そのボリュームスイッチを操作することで、適切な音量とする方法がある。しかしながら、この場合、ユーザは、ロボットを使用する環境ごとに、音量が適切となるように、ボリュームスイッチを操作しなければならず、面倒である。
【０００８】
本発明は、このような状況に鑑みてなされたものであり、ロボットが出力する音声を、ユーザにとって適切なものとすることができるようにするものである。
【０００９】
【課題を解決するための手段】
本発明の音響信号出力制御装置は、音声合成を行い、ロボットから出力する合成音S(t)を生成する生成手段と、ロボットが使用される環境を認識する認識手段と、認識手段による環境の認識結果に基づいて、合成音S(t)の出力特性を制御する制御手段とを備え、認識手段は、ロボットが使用される環境における雑音のパワーE(t)を認識するとともに、ロボットからユーザまでの距離d(t)も認識し、制御手段は、認識手段により認識された雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理を施してフィルタリング結果e(t)を生成し、式y(ｔ)＝ε(e(t)，d(t))＊S(t)に基づいて、合成音S(t)を合成音y(t)に変換する。ただし、関数ε(e(t)，d(t))は、フィルタリング結果e(t)、およびユーザまでの距離d(t)それぞれが大きくなるほど、大きくなるような関数であり、＊は、畳み込み積分を表す。
【００１１】
認識手段には、ユーザを撮像する撮像手段により撮像された画像、又は、赤外線がユーザに反射してロボットに戻ってくるまでの時間を検出する検出手段により検出された時間に基づいて、ロボットからユーザまでの距離d(t)を認識させることができる。
【００１３】
本発明の音響信号出力制御方法は、音声合成を行い、ロボットから出力する合成音S(t)を生成する生成ステップと、ロボットが使用される環境を認識する認識ステップと、認識ステップでの環境の認識結果に基づいて、合成音S(t)の出力特性を制御する制御ステップとを含み、認識ステップは、ロボットが使用される環境における雑音のパワーE(t)を認識するとともに、ロボットからユーザまでの距離d(t)も認識し、制御ステップは、認識ステップで認識された雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理を施してフィルタリング結果e(t)を生成し、式y(ｔ)＝ε(e(t)，d(t))＊S(t)に基づいて、合成音S(t)を合成音y(t)に変換する。ただし、関数ε(e(t)，d(t))は、フィルタリング結果e(t)、およびユーザまでの距離d(t)それぞれが大きくなるほど、大きくなるような関数であり、＊は、畳み込み積分を表す。
【００１４】
本発明の記録媒体は、音声合成を行い、ロボットから出力する合成音S(t)を生成する生成ステップと、ロボットが使用される環境を認識する認識ステップと、認識ステップでの環境の認識結果に基づいて、合成音S(t)の出力特性を制御する制御ステップとを含み、認識ステップは、ロボットが使用される環境における雑音のパワーE(t)を認識するとともに、ロボットからユーザまでの距離d(t)も認識し、制御ステップは、認識ステップで認識された雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理を施してフィルタリング結果e(t)を生成し、式y(ｔ)＝ε(e(t)，d(t))＊S(t)に基づいて、合成音S(t)を合成音y(t)に変換するプログラムが記録されている。ただし、関数ε(e(t)，d(t))は、フィルタリング結果e(t)、およびユーザまでの距離d(t)それぞれが大きくなるほど、大きくなるような関数であり、＊は、畳み込み積分を表す。
【００１５】
本発明の音響信号出力制御装置および音響信号出力制御方法、並びに記録媒体においては、音声合成を行い、ロボットから出力する合成音S(t)が生成される一方、ロボットが使用される環境における雑音のパワーE(t)が認識されるとともに、ロボットからユーザまでの距離d(t)も認識され、その環境の認識結果である雑音のパワーE(t)に対して、人間の聴覚特性に基づいたフィルタリング処理が施されてフィルタリング結果e(t)が生成され、式y(ｔ)＝ε(e(t)，d(t))＊S(t)に基づいて、合成音S(t)が合成音y(t)に変換される。
【００１６】
【発明の実施の形態】
図１は、本発明を適用したロボットの一実施の形態の外観構成例を示しており、図２は、その電気的構成例を示している。
【００１７】
本実施の形態では、ロボットは、犬形状のものとされており、胴体部ユニット２の前後左右に、それぞれ脚部ユニット３Ａ，３Ｂ，３Ｃ，３Ｄが連結されるとともに、胴体部ユニット２の前端部と後端部に、それぞれ頭部ユニット４と尻尾部ユニット５が連結されることにより構成されている。
【００１８】
尻尾部ユニット５は、胴体部ユニット２の上面に設けられたベース部５Ｂから、２自由度をもって湾曲または揺動自在に引き出されている。
【００１９】
胴体部ユニット２には、ロボット全体の制御を行うコントローラ１０、ロボットの動力源となるバッテリ１１、並びにバッテリセンサ１２および熱センサ１３からなる内部センサ部１４などが収納されている。
【００２０】
頭部ユニット４には、「耳」に相当するマイク（マイクロフォン）１５、「目」に相当するＣＣＤ(Charge Coupled Device)カメラ１６、触覚に相当するタッチセンサ１７、「口」に相当するスピーカ１８などが、それぞれ所定位置に配設されている。
【００２１】
脚部ユニット３Ａ乃至３Ｄそれぞれの関節部分や、脚部ユニット３Ａ乃至３Ｄそれぞれと胴体部ユニット２の連結部分、頭部ユニット４と胴体部ユニット２の連結部分、並びに尻尾部ユニット５と胴体部ユニット２の連結部分などには、図２に示すように、それぞれアクチュエータ３ＡＡ1乃至３ＡＡK、３ＢＡ1乃至３ＢＡK、３ＣＡ1乃至３ＣＡK、３ＤＡ1乃至３ＤＡK、４Ａ1乃至４ＡL、５Ａ1および５Ａ2が配設されており、これにより、各連結部分は、所定の自由度をもって回転することができるようになっている。
【００２２】
頭部ユニット４におけるマイク１５は、ユーザからの発話を含む周囲の音声（音）を集音し、得られた音声信号を、コントローラ１０に送出する。ＣＣＤカメラ１６は、周囲の状況を撮像し、得られた画像信号を、コントローラ１０に送出する。
【００２３】
タッチセンサ１７は、例えば、頭部ユニット４の上部に設けられており、ユーザからの「なでる」や「たたく」といった物理的な働きかけにより受けた圧力を検出し、その検出結果を圧力検出信号としてコントローラ１０に送出する。
【００２４】
胴体部ユニット２におけるバッテリセンサ１２は、バッテリ１１の残量を検出し、その検出結果を、バッテリ残量検出信号としてコントローラ１０に送出する。熱センサ１３は、ロボット内部の熱を検出し、その検出結果を、熱検出信号としてコントローラ１０に送出する。
【００２５】
コントローラ１０は、ＣＰＵ(Central Processing Unit)１０Ａやメモリ１０Ｂ等を内蔵しており、ＣＰＵ１０Ａにおいて、メモリ１０Ｂに記憶された制御プログラムが実行されることにより、各種の処理を行う。
【００２６】
即ち、コントローラ１０は、マイク１５や、ＣＣＤカメラ１６、タッチセンサ１７、バッテリセンサ１２、熱センサ１３から与えられる音声信号、画像信号、圧力検出信号、バッテリ残量検出信号、熱検出信号に基づいて、周囲の状況や、ユーザからの指令、ユーザからの働きかけなどの有無を判断する。
【００２７】
さらに、コントローラ１０は、この判断結果等に基づいて、続く行動を決定し、その決定結果に基づいて、アクチュエータ３ＡＡ1乃至３ＡＡK、３ＢＡ1乃至３ＢＡK、３ＣＡ1乃至３ＣＡK、３ＤＡ1乃至３ＤＡK、４Ａ1乃至４ＡL、５Ａ1、５Ａ2のうちの必要なものを駆動させ、これにより、頭部ユニット４を上下左右に振らせたり、尻尾部ユニット５を動かせたり、各脚部ユニット３Ａ乃至３Ｄを駆動して、ロボットを歩行させるなどの行動を行わせる。
【００２８】
また、コントローラ１０は、必要に応じて、合成音を生成し、スピーカ１８に供給して出力させたり、ロボットの「目」の位置に設けられた図示しないＬＥＤ（Light Emitting Diode）を点灯、消灯または点滅させる。
【００２９】
以上のようにして、ロボットは、周囲の状況等に基づいて自律的に行動をとることができるようになっている。
【００３０】
次に、図３は、図２のコントローラ１０の機能的構成例を示している。なお、図３に示す機能的構成は、ＣＰＵ１０Ａが、メモリ１０Ｂに記憶された制御プログラムを実行することで実現されるようになっている。
【００３１】
コントローラ１０は、特定の外部状態を認識するセンサ入力処理部５０、センサ入力処理部５０の認識結果等を累積して、感情および本能の状態を表現する感情／本能モデル部５１、センサ入力処理部５０の認識結果等に基づいて、続く行動を決定する行動決定機構部５２、行動決定機構部５２の決定結果に基づいて、実際にロボットに行動を起こさせる姿勢遷移機構部５３、各アクチュエータ３ＡＡ1乃至５Ａ1および５Ａ2を駆動制御する制御機構部５４、合成音を生成する音声合成部５５、並びに音声合成部５５の出力を制御する音響処理部５６から構成されている。
【００３２】
センサ入力処理部５０は、マイク１５や、ＣＣＤカメラ１６、タッチセンサ１７等から与えられる音声信号、画像信号、圧力検出信号等に基づいて、特定の外部状態や、ユーザからの特定の働きかけ、ユーザからの指示等を認識し、その認識結果を表す状態認識情報を、感情／本能モデル部５１および行動決定機構部５２に通知する。
【００３３】
即ち、センサ入力処理部５０は、音声認識部５０Ａを有しており、音声認識部５０Ａは、行動決定機構部５２からの制御にしたがい、マイク１５から与えられる音声信号を用いて、音声認識を行う。そして、音声認識部５０Ａは、その音声認識結果としての、例えば、「歩け」、「伏せ」、「ボールを追いかけろ」等の指令その他を、状態認識情報として、感情／本能モデル部５１および行動決定機構部５２に通知する。
【００３４】
また、センサ入力処理部５０は、画像認識部５０Ｂを有しており、画像認識部５０Ｂは、ＣＣＤカメラ１６から与えられる画像信号を用いて、画像認識処理を行う。そして、画像認識部５０Ｂは、その処理の結果、例えば、「赤い丸いもの」や、「地面に対して垂直なかつ所定高さ以上の平面」等を検出したときには、「ボールがある」や、「壁がある」等の画像認識結果を、状態認識情報として、感情／本能モデル部５１および行動決定機構部５２に通知する。
【００３５】
さらに、センサ入力処理部５０は、圧力処理部５０Ｃを有しており、圧力処理部５０Ｃは、タッチセンサ１７から与えられる圧力検出信号を処理する。そして、圧力処理部５０Ｃは、その処理の結果、所定の閾値以上で、かつ短時間の圧力を検出したときには、「たたかれた（しかられた）」と認識し、所定の閾値未満で、かつ長時間の圧力を検出したときには、「なでられた（ほめられた）」と認識して、その認識結果を、状態認識情報として、感情／本能モデル部５１および行動決定機構部５２に通知する。
【００３６】
また、センサ入力処理部５０は、環境認識部５０Ｄを有しており、環境認識部５０Ｄは、マイク１５から与えられる音声信号や、ＣＣＤカメラ１６から与えられる画像信号を用いて、ロボットが使用される環境としての、例えば、その環境における雑音のパワーや、ロボットからユーザまでの距離等を認識し、その認識結果を、状態認識情報として、音響処理部５６に出力する。
【００３７】
感情／本能モデル部５１は、図４に示すような、ロボットの感情と本能の状態を表現する感情モデルと本能モデルをそれぞれ管理している。
【００３８】
感情モデルは、例えば、３つの感情ユニット６０Ａ，６０Ｂ，６０Ｃで構成され、これらの感情ユニット６０Ａ乃至６０Ｄは、「うれしさ」、「悲しさ」、「怒り」の感情の状態（度合い）を、例えば、０乃至１００の範囲の値によってそれぞれ表し、センサ入力処理部５０からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【００３９】
なお、感情モデルには、「うれしさ」、「悲しさ」、「怒り」の他、「楽しさ」に対応する感情ユニットを設けることも可能である。
【００４０】
本能モデルは、例えば、３つの本能ユニット６１Ａ，６１Ｂ，６１Ｃで構成され、これらの本能ユニット６１Ａ乃至６１Ｃは、「食欲」、「睡眠欲」、「運動欲」という本能による欲求の状態（度合い）を、例えば、０乃至１００の範囲の値によってそれぞれ表し、センサ入力処理部５０からの状態認識情報や時間経過等に基づいて、その値を変化させる。
【００４１】
感情／本能モデル部５１は、上述のようにして変化する感情ユニット６０Ａ乃至６０Ｃの値で表される感情の状態、および本能ニット６１Ａ乃至６１Ｃの値で表される本能の状態を、感情／本能状態情報として、センサ入力処理部５０、行動決定機構部５２、および音声合成部５５に送出する。
【００４２】
行動決定機構部５２は、センサ入力処理部５０からの状態認識情報や、感情／本能モデル部５１からの感情／本能状態情報、時間経過等に基づいて、次の行動を決定し、決定された行動の内容を、行動指令情報として、姿勢遷移機構部５３に送出する。
【００４３】
即ち、行動決定機構部５２は、図５に示すように、ロボットがとり得る行動をステート（状態）(state)に対応させた有限オートマトンを、ロボットの行動を規定する行動モデルとして管理しており、この行動モデルとしての有限オートマトンにおけるステートを、センサ入力処理部５０からの状態認識情報や、感情／本能モデル部５１における感情モデルおよび本能モデルの値、時間経過等に基づいて遷移させ、遷移後のステートに対応する行動を、次にとるべき行動として決定する。
【００４４】
具体的には、例えば、図５において、ステートＳＴ３が「立っている」という行動を、ステートＳＴ４が「寝ている」という行動を、ステートＳＴ５が「ボールを追いかけている」という行動を、それぞれ表しているとする。いま、例えば、「ボールを追いかけている」というステートＳＴ５において、「ボールが見えなくなった」という状態認識情報が供給されると、ステートＳＴ５からＳＴ３に遷移し、その結果、ステートＳＴ３に対応する「立っている」という行動を、次にとることが決定される。また、例えば、「寝ている」というステートＳＴ４において、「起きろ」という状態認識情報が供給されると、ステートＳＴ４からＳＴ３に遷移し、その結果、やはり、ステートＳＴ３に対応する「立っている」という行動を、次にとることが決定される。
【００４５】
ここで、行動決定機構部５２は、所定のトリガ(trigger)があったことを検出すると、ステートを遷移させる。即ち、行動決定機構部５２は、例えば、現在のステートに対応する行動を実行している時間が所定時間に達したときや、特定の状態認識情報を受信したとき、感情／本能モデル部５１から供給される感情／本能状態情報が示す感情の状態の値（感情ユニット６０Ａ乃至６０Ｃの値）、あるいは本能の状態の値（本能ユニット６１Ａ乃至６１Ｃの値）が所定の閾値以下または以上となったとき等に、ステートを遷移させる。
【００４６】
なお、行動決定機構部５２は、上述したように、センサ入力処理部５０からの状態認識情報だけでなく、感情／本能モデル部５１における感情モデルおよび本能モデルの値等にも基づいて、図５の有限オートマトンにおけるステートを遷移させることから、同一の状態認識情報が入力されても、感情モデルや本能モデルの値（感情／本能状態情報）によっては、ステートの遷移先は異なるものとなる。
【００４７】
その結果、行動決定機構部５２は、例えば、感情／本能状態情報が、「怒っていない」こと、および「お腹がすいていない」ことを表している場合において、状態認識情報が、「目の前に手のひらが差し出された」ことを表しているときには、目の前に手のひらが差し出されたことに応じて、「お手」という行動をとらせる行動指令情報を生成し、これを、姿勢遷移機構部５３に送出する。
【００４８】
また、行動決定機構部５２は、例えば、感情／本能状態情報が、「怒っていない」こと、および「お腹がすいている」ことを表している場合において、状態認識情報が、「目の前に手のひらが差し出された」ことを表しているときには、目の前に手のひらが差し出されたことに応じて、「手のひらをぺろぺろなめる」ような行動を行わせるための行動指令情報を生成し、これを、姿勢遷移機構部５３に送出する。
【００４９】
また、行動決定機構部５２は、例えば、感情／本能状態情報が、「怒っている」ことを表している場合において、状態認識情報が、「目の前に手のひらが差し出された」ことを表しているときには、感情／本能状態情報が、「お腹がすいている」ことを表していても、また、「お腹がすいていない」ことを表していても、「ぷいと横を向く」ような行動を行わせるための行動指令情報を生成し、これを、姿勢遷移機構部５３に送出する。
【００５０】
さらに、行動決定機構部５２では、上述したような、ロボットの頭部や手足等を動作させる行動指令情報の他、ロボットに発話を行わせる行動指令情報も生成される。ロボットに発話を行わせる行動指令情報は、音声合成部５５に供給されるようになっており、音声合成部５５に供給される行動指令情報には、音声合成部５５に生成させる合成音に対応するテキスト等が含まれる。そして、音声合成部５５は、行動決定部５２から行動指令情報を受信すると、その行動指令情報に含まれるテキストに基づき、感情／本能モデル部５１で管理されている感情の状態や本能の状態を加味しながら、例えば、規則音声合成等を行うことで、合成音を生成し、音響処理部５６に供給する。
【００５１】
姿勢遷移機構部５３は、行動決定機構部５２から供給される行動指令情報に基づいて、ロボットの姿勢を、現在の姿勢から次の姿勢に遷移させるための姿勢遷移情報を生成し、これを制御機構部５４に送出する。
【００５２】
ここで、現在の姿勢から次に遷移可能な姿勢は、例えば、胴体や手や足の形状、重さ、各部の結合状態のようなロボットの物理的形状と、関節が曲がる方向や角度のようなアクチュエータ３ＡＡ1乃至５Ａ1および５Ａ2の機構とによって決定される。
【００５３】
また、次の姿勢としては、現在の姿勢から直接遷移可能な姿勢と、直接には遷移できない姿勢とがある。例えば、４本足のロボットは、手足を大きく投げ出して寝転んでいる状態から、伏せた状態へ直接遷移することはできるが、立った状態へ直接遷移することはできず、一旦、手足を胴体近くに引き寄せて伏せた姿勢になり、それから立ち上がるという２段階の動作が必要である。また、安全に実行できない姿勢も存在する。例えば、４本足のロボットは、その４本足で立っている姿勢から、両前足を挙げてバンザイをしようとすると、簡単に転倒してしまう。
【００５４】
このため、姿勢遷移機構部５３は、直接遷移可能な姿勢をあらかじめ登録しておき、行動決定機構部５２から供給される行動指令情報が、直接遷移可能な姿勢を示す場合には、その行動指令情報を、そのまま姿勢遷移情報として、制御機構部５４に送出する。一方、行動指令情報が、直接遷移不可能な姿勢を示す場合には、姿勢遷移機構部５３は、遷移可能な他の姿勢に一旦遷移した後に、目的の姿勢まで遷移させるような姿勢遷移情報を生成し、制御機構部５４に送出する。これによりロボットが、遷移不可能な姿勢を無理に実行しようとする事態や、転倒するような事態を回避することができるようになっている。
【００５５】
即ち、姿勢遷移機構部５３は、例えば、図６に示すように、ロボットがとり得る姿勢をノードＮＯＤＥ１乃至ＮＯＤＥ５として表現するとともに、遷移可能な２つの姿勢に対応するノードどうしの間を、有向アークＡＲＣ１乃至ＡＲＣ１０で結合した有向グラフを記憶しており、この有向グラフに基づいて、上述したような姿勢遷移情報を生成する。
【００５６】
具体的には、姿勢遷移機構部５３は、行動決定機構部５２から行動指令情報が供給されると、現在の姿勢に対応したノードＮＯＤＥと、行動指令情報が示す次に取るべき姿勢に対応するノードＮＯＤＥとを結ぶように、有向アークＡＲＣの向きに従いながら、現在のノードＮＯＤＥから次のノードＮＯＤＥに至る経路を探索し、探索した経路上にあるノードＮＯＤＥに対応する姿勢を順番にとっていくように指示する姿勢遷移情報を生成する。
【００５７】
その結果、姿勢遷移機構部５３は、例えば、現在の姿勢が「ふせる」という姿勢を示すノードＮＯＤＥ２にある場合において、「すわれ」という行動指令情報が供給されると、有向グラフにおいて、「ふせる」という姿勢を示すノードＮＯＤＥ２から、「すわる」という姿勢を示すノードＮＯＤＥ５へは、直接遷移可能であることから、「すわる」に対応する姿勢遷移情報を生成して、制御機構部５４に与える。
【００５８】
また、姿勢遷移機構部５３は、現在の姿勢が「ふせる」という姿勢を示すノードＮＯＤＥ２にある場合において、「歩け」という行動指令情報が供給されると、有向グラフにおいて、「ふせる」というノードＮＯＤＥ２から、「あるく」というノードＮＯＤＥ４に至る経路を探索する。この場合、「ふせる」に対応するノードＮＯＤＥ２、「たつ」に対応するＮＯＤＥ３、「あるく」に対応するＮＯＤＥ４の経路が得られるから、姿勢遷移機構部５３は、「たつ」、「あるく」という順番の姿勢遷移情報を生成し、制御機構部５４に送出する。
【００５９】
制御機構部５４は、姿勢遷移機構部５３からの姿勢遷移情報にしたがって、アクチュエータ３ＡＡ1乃至５Ａ1および５Ａ2を駆動するための制御信号を生成し、これを、アクチュエータ３ＡＡ1乃至５Ａ1および５Ａ2に送出する。これにより、アクチュエータ３ＡＡ1乃至５Ａ1および５Ａ2は、制御信号にしたがって駆動し、ロボットは、自律的に行動を起こす。
【００６０】
一方、音響処理部５６は、センサ入力処理部５０を構成する環境認識部５０Ｄが出力する状態認識情報を受信し、その状態認識情報に基づいて、音声合成部５５から供給される合成音の出力を制御する。即ち、音響処理部５６は、状態認識情報としての、ロボットが使用される環境における雑音や、ロボットからユーザまでの距離等に対して、スピーカ１８から出力される合成音が、ユーザに明確に聞こえるように、かつ耳障りとならないように、その大きさ（パワー）や高さ（周波数）等を調整して、スピーカ１８に供給する。これにより、スピーカ１８からは、適切な大きさおよび高さ等を有する合成音が出力される。
【００６１】
次に、図７は、図３の環境認識部５０Ｄの構成例を示している。
【００６２】
Ａ／Ｄ(Analog Digital)変換部２１には、マイク１５から出力される音声信号が供給されるようになっており、Ａ／Ｄ変換部２４には、ＣＣＤカメラ１６から出力される画像信号が供給されるようになっている。
【００６３】
Ａ／Ｄ変換部２１では、マイク１５からのアナログの音声信号がＡ／Ｄ変換されることにより、ディジタルの音声データとされ、ＦＦＴ(Fast Fourier Transform)演算部２２に供給される。ＦＦＴ演算部２２は、Ａ／Ｄ変換部２１からの音声データを、所定のフレームごとにＦＦＴし、その結果得られる周波数スペクトラム（を規定する係数）を、積分部２３に出力する。積分部２３は、ＦＦＴ演算部２２からの周波数スペクトラムを、周波数で積分することにより、マイク１５に入力された音声のパワー（エネルギー）を、フレームごとに求め、状態認識情報として、音響処理部５６に出力する。
【００６４】
Ａ／Ｄ変換部２４は、ＣＣＤカメラ１６からのアナログの画像信号をＡ／Ｄ変換し、これにより、ディジタルの画像データとして、画像処理部２５に出力する。画像処理部２５は、Ａ／Ｄ変換部２４からの画像データに対して、例えば、ＤＣＴ(Discrete Cosine Transform)処理を施し、そのＤＣＴ処理結果に基づいて、ＣＣＤカメラ１６から出力された画像信号が、ユーザを撮影したものであるかどうかを判定する。そして、画像処理部２５は、ＣＣＤカメラ１６から出力された画像信号が、ユーザを撮影したものであると判定した場合には、ＤＣＴ処理結果等に基づいて、ＣＣＤカメラ１６から出力された画像信号から、例えば、ユーザの顔の輪郭等を抽出し、距離計算部２６に出力する。距離計算部２６は、画像処理部２５が出力するユーザの顔の輪郭の大きさに基づき、ロボットからユーザまでの距離を算出し、状態認識情報として、音響処理部５６に出力する。
【００６５】
以上のように構成される環境認識部５０Ｄでは、ロボットが使用される環境における雑音を認識する環境雑音算出処理と、ロボットからユーザまでの距離を認識する距離算出処理が行われるようになっている。そこで、図８のフローチャートを参照して、これらの環境雑音算出処理および距離算出処理について説明する。
【００６６】
まず最初に、図８（Ａ）のフローチャートを参照して、環境雑音算出処理について説明する。
【００６７】
環境雑音算出処理では、ステップＳ１において、マイク１５から供給される音声信号が、Ａ／Ｄ変換部２１でＡ／Ｄ変換され、その結果得られる時系列の音声データｘ（ｔ）が、所定のフレーム単位で、ＦＦＴ演算部２２に供給される（ｘ（ｔ）におけるｔは、サンプル点を表す）。ＦＦＴ演算部２２では、ステップＳ２において、Ａ／Ｄ変換部２２からの所定のフレーム単位の音声データｘ（ｔ）がＦＦＴされ、これにより、時系列の周波数スペクトラムＸ（ｆ）が求められる（ｆは周波数を表す）。この周波数スペクトラムＸ（ｆ）は、積分部２３に供給される。積分部２３は、ステップＳ３において、ＦＦＴ演算部２２から供給される、いま注目している注目フレームの周波数スペクトラムＸ（ｆ）を、周波数ｆで積分し（∫Ｘ（ｆ）ｄｆを演算し）、マイク１５に入力された音声の、注目フレームにおけるパワーＥ（ｔ）を求める（Ｅ（ｔ）におけるｔは、音声のフレームを表す）。そして、積分部２３では、この音声のパワーＥ（ｔ）が、状態認識情報として、音響処理部５６に出力され、ステップＳ１に戻り、マイク１５が出力する次のフレームの音声信号を対象に、以下、同様の処理が繰り返される。
【００６８】
以上のようにして、音響処理部５６には、マイク１５に入力される音声のパワーＥ（ｔ）が、所定のフレームごとに供給される。
【００６９】
次に、図８（Ｂ）のフローチャートを参照して、距離算出処理について説明する。
【００７０】
距離算出処理では、ステップＳ１１において、ＣＣＤカメラ１６から供給される１フレームの画像信号が、Ａ／Ｄ変換部２４でＡ／Ｄ変換され、その結果得られる１フレームのディジタルの画像データが、画像処理部２５に供給される。画像処理部２５では、ステップＳ１２において、Ａ／Ｄ変換部２４からの１フレームの画像データが、所定のブロック単位でＤＣＴ処理される。さらに、画像処理部２５では、ＤＣＴ処理の結果得られるＤＣＴ係数に基づいて、ユーザ顔の輪郭が抽出され、距離計算部２６に出力される。距離計算部２６は、ステップＳ１３において、画像処理部２５が出力するユーザの顔の輪郭の大きさに基づき、ロボットからユーザまでの距離Ｄ（ｔ）を算出し、状態認識情報として、音響処理部５６に出力する（Ｄ（ｔ）におけるｔは、画像のフレームを表す）。そして、ステップＳ１１に戻り、ＣＣＤカメラ１６が出力する次のフレームの画像信号を対象に、以下、同様の処理が繰り返される。
【００７１】
以上のようにして、音響処理部５６には、ロボットからユーザまでの距離Ｄ（ｔ）が、フレームごとに供給される。
【００７２】
次に、図９は、図３の音響処理部５６の構成例を示している。
【００７３】
補正部３１には、環境認識部５０Ｄが状態認識情報として出力する、マイク１５に入力された音声のパワーＥ（ｔ）が、ロボットが使用される環境における雑音のパワーＥ（ｔ）として供給され、そこでは、この雑音のパワーＥ（ｔ）が補正される。即ち、補正部３１は、雑音のパワーＥ（ｔ）のうち、例えば、突発的で非定常な部分を排除し、その排除後のパワーＥ（ｔ）を、補正後のパワーとして、聴覚フィルタ３２に出力する。
【００７４】
聴覚フィルタ３２は、例えば、いわゆるメルフィルタで構成され、補正部３１からの補正後のパワーに対して、人間の聴覚特性に基づいたフィルタリング処理を施し、そのフィルタリング結果ｅ（ｔ）を、調節部３４に出力する。
【００７５】
補正部３３には、環境認識部５０Ｄが状態認識情報として出力する、ロボットからユーザまでの距離Ｄ（ｔ）が供給されるようになっており、そこでは、その距離Ｄ（ｔ）が補正される。即ち、距離Ｄ（ｔ）は、正確には、ＣＣＤカメラ１６からユーザまでの距離であるため、補正部３３は、その距離Ｄ（ｔ）を、スピーカ１８からユーザまでの距離ｄ（ｔ）となるように補正する。この補正の結果得られた距離ｄ（ｔ）は、調節部３４に出力される。
【００７６】
調整部３４には、上述した雑音のパワーｅ（ｔ）および距離ｄ（ｔ）の他、音声合成部５５が出力する合成音Ｓ（ｔ）が供給されるようになっている。調整部３４は、パワーｅ（ｔ）および距離ｄ（ｔ）に基づいて、スピーカ１８から出力される合成音ｙ（ｔ）が、ユーザに明確に聞こえるように、かつ耳障りとならないように、音声合成部５５からの合成音Ｓ（ｔ）の大きさ（パワー）や高さ（周波数）等を調整して、スピーカ１８に供給する。即ち、調整部３４は、例えば、次式にしたがって、音声合成部５５からの合成音Ｓ（ｔ）を、スピーカ１８から出力すべき合成音ｙ（ｔ）に変換し、スピーカ１８に供給する。
【００７７】
ｙ（ｔ）＝ε（ｅ（ｔ），ｄ（ｔ））＊Ｓ（ｔ）
但し、関数ε（ｅ（ｔ），ｄ（ｔ））は、ｅ（ｔ），ｄ（ｔ）それぞれが大きくなるほど、大きくなるような関数で、例えば、ｅ（ｔ），ｄ（ｔ）それぞれの対数に比例するようなものを用いることができる。また、＊は、畳み込み積分を表す。
【００７８】
次に、図１０のフローチャートを参照して、図９の音響処理部５６で行われる処理（音響処理）について説明する。
【００７９】
環境認識部５０Ｄから音響処理部５６に対して、パワーＥ（ｔ）および距離Ｄ（ｔ）が供給されると、音響処理部５６では、まず最初に、ステップＳ１において、前処理が行われる。
【００８０】
即ち、パワーＥ（ｔ）は、補正部３１に供給され、補正部３１は、そのパワーＥ（ｔ）を補正し、聴覚フィルタ３２に出力する。聴覚フィルタ３２は、補正部３１の出力をフィルタリングし、そのフィルタリング結果としてのパワーｅ（ｔ）を、調節部３４に出力する。一方、距離Ｄ（ｔ）は、補正部３３に供給され、補正部３３は、その距離Ｄ（ｔ）を補正し、補正後の距離ｄ（ｔ）を、調節部３４に出力する。
【００８１】
調整部３４は、ステップＳ２２において、音声合成部５５から供給される合成音Ｓ（ｔ）を、パワーｅ（ｔ）および距離ｄ（ｔ）に基づいて、上述したように調節する。そして、ステップＳ２３に進み、調整部３４は、その調節の結果得られる合成音ｙ（ｔ）を、スピーカ１８に出力し、処理を終了する。
【００８２】
以上のように、ロボットが使用される環境における雑音や、ユーザまでの距離に基づいて、合成音の出力を制御するようにしたので、合成音を、ユーザに明確に聞こえるように、かつ耳障りとならないように出力することができる。
【００８３】
以上、本発明を、エンターテイメント用のロボット（疑似ペットとしてのロボット）に適用した場合について説明したが、本発明は、これに限らず、例えば、産業用のロボット等の各種のロボットに広く適用することが可能である。
【００８４】
なお、本実施の形態においては、ユーザまでの距離Ｄ（ｔ）を、画像から得られるユーザの顔の輪郭の大きさに基づいて算出するようにしたが、距離Ｄ（ｔ）は、その他、例えば、赤外線がユーザに反射して戻ってくるまでの時間を検出して求めたり、多方向からユーザを撮影した画像を用いて、いわゆる三角測量の原理に基づいて求めるようにすることが可能である。
【００８５】
また、本実施の形態では、音声合成部５５において生成される合成音を対象としたが、本発明は、その他、ブザーの音等を対象とすることも可能である。
【００８６】
さらに、上述したような音の出力の制御は、ロボットの他、オーディオ装置その他の音を出力する装置に適用可能である。
【００８７】
また、本実施の形態においては、上述した一連の処理を、ＣＰＵ１０Ａにプログラムを実行させることにより行うようにしたが、一連の処理は、それ専用のハードウェアによって行うことも可能である。
【００８８】
なお、プログラムは、あらかじめメモリ１０Ｂ（図２）に記憶させておく他、フロッピーディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。そして、このようなリムーバブル記録媒体を、いわゆるパッケージソフトウエアとして提供し、ロボット（メモリ１０Ｂ）にインストールするようにすることができる。
【００８９】
また、プログラムは、リムーバブル記録媒体からインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、有線で転送し、メモリ１０Ｂにインストールすることができる。
【００９０】
この場合、プログラムがバージョンアップされたとき等に、そのバージョンアップされたプログラムを、メモリ１０Ｂに、容易にインストールすることができる。
【００９１】
ここで、本明細書において、ＣＰＵ１０Ａに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【００９２】
また、プログラムは、１のＣＰＵにより処理されるものであっても良いし、複数のＣＰＵによって分散処理されるものであっても良い。
【００９３】
【発明の効果】
本発明の音響信号出力制御装置および音響信号出力制御方法、並びに記録媒体によれば、ロボットから出力する音響信号が生成される一方、ロボットが使用される環境が認識され、その環境の認識結果に基づいて、音響信号の出力が制御される。従って、例えば、ユーザに明確に聞こえるように、かつ耳障りとならないように、音響信号を出力することが可能となる。
【図面の簡単な説明】
【図１】本発明を適用したロボットの一実施の形態の外観構成例を示す斜視図である。
【図２】図１のロボットの内部構成例を示すブロック図である。
【図３】図２のコントローラ１０の機能的構成例を示すブロック図である。
【図４】感情／本能モデルを示す図である。
【図５】行動モデルを示す図である。
【図６】姿勢遷移機構部５４の処理を説明するための図である。
【図７】環境認識部５０Ｄの構成例を示すブロック図である。
【図８】環境認識部５０Ｄの処理を説明するためのフローチャートである。
【図９】音響処理部５６の構成例を示すブロック図である。
【図１０】音響処理部５６の処理を説明するためのフローチャートである。
【符号の説明】
１０  コントローラ，  １０Ａ  ＣＰＵ，  １０Ｂ  メモリ，  １５  マイク，  １６  ＣＣＤカメラ，  １７  タッチセンサ，  １８  スピーカ，  ２１  Ａ／Ｄ変換部，  ２２  ＦＦＴ演算部，  ２３  積分部，  ２４  Ａ／Ｄ変換部，  ２５  画像処理部，  ２６  距離計算部，  ３１  補正部，  ３２  聴覚フィルタ，  ３３  補正部，  ３４  調節部，  ５０  センサ入力処理部，  ５０Ａ  音声認識部，  ５０Ｂ  画像認識部，  ５０Ｃ  圧力処理部，  ５０Ｄ  環境認識部，  ５１  感情／本能モデル部，  ５２  行動決定機構部，  ５３  姿勢遷移機構部，  ５４  制御機構部，  ５５  音声合成部，  ５６  音響処理部
【図１】
0004161490.tif 000002
【図２】
0004161490.tif 000003
【図３】
0004161490.tif 000004
【図４】
0004161490.tif 000005
【図５】
0004161490.tif 000006
【図６】
0004161490.tif 000007
【図７】
0004161490.tif 000008
【図８】
0004161490.tif 000009
【図９】
0004161490.tif 000010
【図１０】
0004161490.tif 000011