説明

ロボット

【課題】回動可能な頭部に備えられた音声入力部に、360度全方向から入力される音声から、ノイズ音が出力される方向を除外して、発話者がいる方向を推定するロボットを提供する。
【解決手段】ロボットRは、回動可能な頭部R1にて所定の角度で離間して配設される3以上の音声入力部MCと、それら音声入力部が出力する音声データ(音響信号データ)から全方向音圧成分データを生成する音声データ処理部22と、頭部R1の回動角度を測定する回動角測定部(自律移動制御部50)と、音源として推定しない方向の範囲(除外角度範囲)が記憶された記憶部30と、音源方向を推定する音源方向推定部23とを備え、音源方向推定部23が、測定された回動角度を用いて、全方向音圧成分データから除外角度範囲内にあるデータを除去する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットに関し、特に、頭部に複数のマイクロフォンが設置され、全方向から音を取得して、音源方向を推定するロボットに関する。
【背景技術】
【0002】
従来のロボットは、回動可能な頭部と、音を360度全方向から取得できるように頭部に複数のマイクロフォンとを備え、発話者がいる方向を推定することが開示されている。
しかしながら、従来のロボットは、雑音(ノイズ音)を出力してしまうノイズ発生源となる装置を自身が備えている場合や、自身が設置された場所の近傍にノイズ発生源がある場合などにおいて、発話者の音声だけでなく、そのノイズ発生源から出力されたノイズ音を取得してしまう。そのため、ノイズ音の騒音レベルが高い場合に、ロボットは、ノイズ発生源のある方向を発話者がいる方向として推定してしまい、本来の発話者がいる方向(推定すべき音源方向)を推定できないという問題点があった。
特にロボットは、自身を駆動するための動力機器やコンピュータなどを冷やすための冷却ファンを有し、この冷却ファンが回転する音の騒音レベルが高いため、推定すべき音源方向を推定できないという問題点があった。
【0003】
そのため、特許文献1の移動ロボットは、音声認識結果に基づいて、自身が備えるノイズ発生源(冷却ファン)から出力されるノイズ音の騒音レベルが低くなるように、冷却ファンの回転数を減らすといった、ノイズ発生源となる装置自体を制御する技術や、発話者に再度の発声を依頼する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−95635号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の回動可能な頭部に音声入力部を備えるロボットは、発話者がいる方向(推定すべき音源方向)を推定するために、ノイズ音を出力してしまうノイズ発生源となる装置を制御しなければならないという問題点があった。
【0006】
本発明は、以上のような問題を解決するためになされたものであり、回動可能な頭部に備えられた音声入力部に、360度全方向から入力される音声から、ノイズ音が出力される方向を除外して、発話者がいる方向(推定すべき音源方向)を推定するロボットを提供することを課題とする。
【課題を解決するための手段】
【0007】
前記課題を解決するために、本発明の請求項1に記載のロボットは、胴部と、前記胴部の上面で回動可能に支持軸に支持される頭部と、前記頭部が回動する回動方向に前記支持軸を中心に所定の角度で離間して前記頭部に配設され、入力された音声を音声データに変換して出力する3以上の音声入力部と、前記音声入力部それぞれから入力された前記音声データに、信号分解アルゴリズムを用いて、前記頭部の向きを基準とした360度全方向からの音圧値を示す全方向音圧成分データを生成する音声データ処理部と、前記胴部の向きを基準とした前記頭部の回動角度を測定する回動角測定部と、前記胴部の向きを基準とした音源として推定しない方向の範囲が予め設定された除外角度範囲が記憶された記憶部と、音源方向を推定する音源方向推定部とを備えるロボットにおいて、前記音源方向推定部は、測定された回動角度を用いて、前記全方向音圧成分データから前記除外角度範囲内にあるデータを除去して有効方向音圧成分データを生成するフィルタ部を備えることを特徴とする。
【0008】
かかる構成によれば、ロボットは、音声入力部が設置された頭部の回動角度に係わらず、胴部の向きを基準とした除外角度範囲で示す方向からの音(例えば、ロボットの背面でファンが回転することで出力されるノイズ音)を除去することができる。
また、ロボットは、除外角度範囲外から入力される有効方向音圧成分データを取得することができる。
【0009】
また、請求項2に記載のロボットは、請求項1に記載のロボットにおいて、前記記憶部が、前記支持軸を中心とした前記音声入力部それぞれの方向を示す音声入力角度が記憶され、前記音源方向推定部が、前記フィルタ部が生成した前記有効方向音圧成分データから、直前の角度の音圧値と直後の角度の音圧値との双方より大きい音圧値の角度を少なくとも1以上抽出する角度抽出部を有し、前記音声入力部が出力した音声データから、前記音声入力角度に基づき、前記角度抽出部が抽出した推定音源角度それぞれの方向から入力された音声データを分離抽出する推定音源分離部と、前記推定音源分離部に抽出された推定音源方向音声データに音声認識を行い、その音声認識結果の正しさを示す音声認識尤度を算出する音声認識部と、前記音声認識結果と、その音声認識結果に係る前記推定音源方向音声データが入力される方向との関係の正しさを示す音声入力方向適合度で、前記音声認識結果に係る前記音声認識尤度を重み付ける音源定位部とを備えることを特徴とする。
【0010】
かかる構成によれば、ロボットは、音声認識部が行った音声認識結果と、推定音源分離部が分離抽出した推定音源方向音声データが入力される方向との関係の正しさを音声入力方向適合度で示すことができる。
また、ロボットは、音声認識部における音声認識結果の正しさを示す音声認識尤度を、前記音声入力方向適合度で重み付けすることで、音声認識結果の正しさと、その音声が入力された方向の正しさとの双方を評価する値を算出することができる。
【0011】
また、請求項3に記載のロボットは、請求項2に記載のロボットにおいて、前記音源認識部が、前記推定音源分離部に抽出された推定音源方向音声データから複数の音声認識結果を取得し、それぞれの音声認識結果の音声認識尤度を算出し、前記音源定位部が、それぞれの音声認識結果に係る前記推定音源方向音声データが入力される方向との関係の正しさを示す音声入力方向適合度で、前記音声認識結果に係る前記音声認識尤度を重み付けることで得られた複数の算出値から、最大の算出値を抽出し、その算出値に係る音声認識結果の前記推定音源角度を音源方向に推定することを特徴とする。
【0012】
かかる構成によれば、ロボットは、算出値が最大となる音声認識結果に係る推定音源角度を音源方向とすることができる。
【0013】
また、請求項4に記載のロボットは、請求項3に記載のロボットが、さらに、予め入力され得るフレーズを集めた複数のフレーズパターンと、前記支持軸を中心とし前記頭部の向きを基準とした方向を示す方向角度値パターンと、前記フレーズパターンが前記方向角度値パターンの方向から入力される正しさを示す前記音声入力方向適合度との3つが対応付けられて記憶されたフレーズ記憶部を備え、前記音声認識部は、前記音声認識を行って、複数の仮説フレーズを生成し、各仮説フレーズの正しさを示す音声認識尤度を算出し、前記音声認識部が算出する、前記推定音源方向音声データそれぞれの前記音声認識尤度は、前記音声認識部が前記推定音源方向音声データに音声認識を行って、複数のパターンの仮説フレーズを生成し、仮説フレーズそれぞれの正しさを示す値であって、前記音源定位部は、前記音声認識部に生成された複数の仮説フレーズとその音声認識尤度とを取得すると共に、前記仮説フレーズおよび前記推定音源角度を用いて、前記フレーズ記憶部に記憶された前記フレーズパターンおよび前記方向角度値パターンに対応付けられた前記音声入力方向適合度を抽出し、その音声入力方向適合度で前記音声認識尤度を重み付けして、フレーズ確信度を算出するフレーズ確信度算出部と、前記フレーズ確信度が最大となる仮説フレーズを、音源方向からの音声を音声認識したフレーズとするフレーズ決定部とを備えることを特徴とする。
【0014】
かかる構成によれば、ロボットは、角度抽出部が取得した推定音声角度と、音声認識部が音声認識して生成した仮説フレーズとの関係の正しさを音声入力方向適合度で示すことができる。
また、ロボットは、音声認識部が生成した仮説フレーズの正しさを示す音声認識尤度を、その仮説フレーズが入力される方向の正しさ音声入力方向適合度で重み付けすることで、仮説フレーズの音声認識結果の正しさを示す判断基準となるフレーズ確信度を算出することができる。
そして、ロボットは、フレーズ確信度が最大値となる仮説フレーズを正しいフレーズとすることができる。
さらに、ロボットは、音声認識尤度の値が大きくても、音声入力方向適合度の小さい仮説フレーズを、除去することができる。
【0015】
また、請求項5に記載のロボットは、請求項4に記載のロボットにおいて、前記フレーズ記憶部は、前記フレーズパターン毎の、前記方向角度値パターンと前記音声入力方向適合度とからなる2次元のヒストグラムを記憶することを特徴とする。
【0016】
かかる構成によれば、ロボットは、フレーズ確信度を、フレーズパターン毎の、方向角度値パターンと前記音声認識尤度とからなる2次元のヒストグラムから抽出することができる。
【0017】
また、請求項6に記載のロボットは、請求項2ないし請求項5のいずれか1項に記載されたロボットにおいて、前記角度抽出部が抽出した推定音源角度に至るまで、前記頭部に回動させる行動制御部を備えることを特徴とする。
【0018】
かかる構成によれば、ロボットは、呼びかけられた方向に頭部を回動することができる。
【発明の効果】
【0019】
請求項1の発明によれば、音源として推定しない方向の範囲(除外角度範囲)を予め記憶部に記憶しておくことで、回動する頭部に音声入力部が備えられ、ノイズ発生源と音声入力部との相対位置が変化しても、ロボットは、有効方向音圧成分データの音圧成分値から、除外角度範囲外に位置する発話者(音源)が発声した方向を推定することができる。
【0020】
また、請求項1の発明によれば、ノイズ発生源の位置に基づいて除外角度範囲を設定することで、そのノイズ発生源からの音を除去することができるため、ノイズ発生源となる装置を制御する必要がない。
【0021】
請求項2に記載の発明によれば、ロボットは、音声認識結果の正しさと、その音声が入力された方向の正しさとの双方を評価する値を求めることができ、その算出値が大きいほど、音声認識結果が正しいという確率が高いことを示すため、音声認識の誤認識率を低減することができる。また、例えば、認識率の正誤に基づく基準値を設けることで、その基準値以上となる算出値の方向が、音源方向であると推定することもできる。
【0022】
請求項3に記載の発明によれば、ロボットは、複数の算出値から最大値を抽出することで、音声認識結果が正しいという確率が最高の音声認識結果を取得することができるため、さらに音声認識の誤認識率を低減することができる。
【0023】
請求項4および請求項5に記載の発明によれば、ロボットは、音声認識結果の正しさを示す判断基準となるフレーズ確信度が最大値となる仮説フレーズを、音源方向からの音声を音声認識したフレーズとすることで、誤認識率を低減することができる。
【0024】
請求項6に記載の発明によれば、ロボットは、呼びかけた発話者のいる方向に顔面を向けることができる。
【図面の簡単な説明】
【0025】
【図1】本発明に係るロボットを含むロボットシステムの全体構成図である。
【図2】本発明に係るロボットの全体構成を示すブロック図である。
【図3】(a)本発明に係るロボットの頭部R1の正面図である。(b)本発明に係るロボットの頭部R1のA−A断面図である。
【図4】本発明に係るロボットの音源方向推定処理に係る構成を示すブロック図である。
【図5】本発明に係るロボットの音声入力角度DBの一例を示す図である。
【図6】本発明に係るロボットのフレーズDBの一例を示す図である。
【図7】本発明に係るロボットのB軸と、H軸と、除外角度範囲との一例を示す図である。
【図8】本発明に係るロボットの音声データ処理部にて生成されたMUSICスペクトラムの一例を示す図である。
【図9】本発明に係るロボットの音源方向推定処理のフローチャートである。
【図10】図9に続くロボットの音源方向推定処理のフローチャートである。
【図11】図10に続くロボットの音源方向推定処理のフローチャートである。
【発明を実施するための形態】
【0026】
以下、図面を参照して、本発明の実施の形態(以下、「本実施形態」と称する)に係るロボットについて説明する。なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【0027】
[ロボットシステムの構成]
まず、図1を参照して、本実施形態に係るロボットを含むロボットシステムの全体構成について説明する。ここでは、自律移動型の2足歩行ロボットを一例として説明する。
図1に示すように、ロボットシステムは、ロボットRと、このロボットRと無線通信によって接続された基地局1と、この基地局1とロボット専用ネットワーク2を介して接続された管理用コンピュータ3と、この管理用コンピュータ3にネットワーク4を介して接続された端末5から構成される。このロボットシステムでは、図示は省略しているが複数のロボットRを想定している。
【0028】
本実施形態に係るロボットRは、図1に示すように、頭部R1、腕部R2、脚部R3、胴部R4、および背面格納部R5を有しており、胴部R4にそれぞれ接続された頭部R1、腕部R2、および脚部R3は、それぞれアクチュエータ(駆動手段)により駆動され、後記する自律移動制御部50(図2参照)により2足歩行の制御がなされる。この2足歩行についての詳細は、例えば、特開2001−62760号公報に開示されている。
ここで、ロボットRは胴部R4の背面に背面格納部R5を備えている。この背面格納部R5には、頭部R1、腕部R2、脚部R3、および胴部R4の動作を制御する制御装置(主制御部40など)や、この制御装置が処理した熱を排熱するためのファンF(ノイズ発生源)、後記するバッテリ70などが格納されている。このファンFが回転することでノイズ音が出力される。
【0029】
ロボット専用ネットワーク2は、基地局1と、管理用コンピュータ3と、ネットワーク4とを接続するものであり、LAN(Local Area Network)などにより実現されるものである。
【0030】
管理用コンピュータ3は、複数のロボットRを管理するものであり、基地局1、ロボット専用ネットワーク2を介してロボットRの移動・発話などの各種制御を行うと共に、ロボットRに対して必要な情報を提供する。ここで、必要な情報とは、発話するための音声データや、検知された人物の氏名、ロボットRの周辺の地図などがこれに相当し、これらの情報は、管理用コンピュータ3に設けられた記憶部(不図示)に記憶されている。
【0031】
端末5は、ネットワーク4を介して管理用コンピュータ3に接続し、管理用コンピュータ3に設けられた記憶手段(不図示)に、人物に関する情報などを登録する、もしくは登録されたこれらの情報を修正するものである。また、端末5は、ロボットRに実行させるタスクの登録や、管理用コンピュータ3において設定されるタスクスケジュールの変更や、ロボットRの動作命令の入力などを行うものである。
【0032】
以下、ロボットRと、管理用コンピュータ3とについてそれぞれ詳細に説明する。
[ロボット]
図2は、ロボットの全体構成を示すブロック図である。図2に示すように、ロボットRは、頭部R1、腕部R2、脚部R3、胴部R4、および背面格納部R5に加えて、カメラC、スピーカS、音声入力部MC、画像処理部10、音声処理部20、記憶部30、主制御部40、自律移動制御部50、無線通信部60、および対象検知部80を有する。
【0033】
頭部R1は、自律移動制御部50(行動制御部)に制御された後記する頭回動部R11により、胴部R4上で支持軸Oを中心に左右に回動する。これにより、頭部R1(顔面)が向いている方向(H軸)は、回動角θだけ、胴部R4の正面が向いている方向(B軸)とずれることとなる。ここで、自律移動制御部50(回動角測定部)は、頭回動部R11に回動させた角度(回動角θ)を保持する。つまり、自律移動制御部50は、頭部R1の回動角度の測定値である回動角θを保持する。
さらに、ロボットRは、ロボットRの現在位置を検出するため、ジャイロセンサSR1や、GPS受信器SR2を有している。
このカメラC、スピーカS、および音声入力部MCは、いずれも頭部R1の内部に配設される。
【0034】
[カメラ]
カメラC(C1,C2)は、映像をデジタルデータとして取り込むことができるものであり、例えば、カラーCCD(Charge-Coupled Device)カメラが使用される。カメラC1とカメラC2とは、左右に平行に並んで配置され、撮影した画像は画像処理部10に出力される。
【0035】
[画像処理部]
画像処理部10は、カメラCが撮影した画像を処理して、撮影された画像からロボットRの周囲の状況を把握するため、周囲の障害物や人物の認識を行う部分である。この画像処理部10は、ステレオ処理部11a、移動体抽出部11b、および顔認識部11cを含んで構成される。以下に各構成部について簡単に記載する。
【0036】
ステレオ処理部11aは、左右のカメラCが撮影した2枚の画像の一方を基準としてパターンマッチングを行い、左右の画像中の対応する各画素の視差を計算して視差画像を生成し、生成した視差画像および元の画像を移動体抽出部11bに出力する。なお、この視差は、ロボットRから撮影された物体までの距離を表すものである。
【0037】
移動体抽出部11bは、ステレオ処理部11aから出力されたデータに基づき、撮影した画像中の移動体を抽出するものである。移動する物体(移動体)を抽出するのは、移動する物体が人物であると推定して、人物の認識をするためである。
移動体を抽出するために、移動体抽出部11bは、過去の数フレーム(コマ)の画像を記憶しており、最も新しいフレーム(画像)と、過去のフレーム(画像)を比較して、パターンマッチングを行い、各画素の移動量を計算し、移動量画像を生成する。そして、視差画像と、移動量画像とから、カメラCから所定の距離範囲内で、移動量の多い画素がある場合に、人物があると推定し、その所定距離範囲のみの視差画像として、移動体を抽出し、顔認識部11cへ移動体の画像を出力する。
【0038】
顔認識部11cは、抽出した移動体から肌色の部分を抽出して、その大きさ、形状などから顔の位置を認識する。なお、同様にして、肌色の領域と、大きさ、形状などから手の位置も認識される。
認識された顔の位置は、ロボットRが移動するときの情報として、また、その人とのコミュニケーションを取るため、主制御部40に出力される。
【0039】
[音声入力部]
音声入力部MCは、ロボットRの周囲の音を電気信号(音響信号)として取り出すマイクロホンと、当該音響信号をデジタル化して音響信号データ(音声データを含む)を生成するアナログ−デジタル変換器(A/D変換器)を含み、音声処理部20(後記する音声データ処理部22および推定音源分離部24)に出力する。
図3(a)は、頭部R1の正面図であり、図3(b)は、頭部R1のA−A断面図である。そして、図3(b)に、頭部R1の内部に配設された音声入力部MCを示す。
音声入力部MC1,MC2,・・・,MC8は、それぞれ支持軸Oを中心に顔面が向いている方向(H軸)から配設角度∠Hmc(∠Hmc1(=H軸),∠Hmc2,∠Hmc3,・・・)だけ離間して、頭部R1外部からの音を集音するように配設される。
【0040】
ここで、配設角度∠Hmcは、360度全方向からの音声を集音できるように音声入力部MCを配設できる角度であればよいが、図3(b)に示すように、音声入力部MCが8個ある場合、等角度(45度)であることが望ましい。
また、後記する除外角度範囲rの範囲外に、音声入力部MCが随時2台以上存在するように、音声入力部MCの数および配設角度∠Hmcは設定される。ここで、本実施形態では、複数の方向から入力された音響信号データに基づき、音源方向を求めるため、除外角度範囲rの範囲外に2台存在する必要がある。
【0041】
[スピーカ]
スピーカSは、音声処理部20(後記する音声合成部21)により生成された音声データに基づき、音声を出力する。
【0042】
[音声処理部]
音声処理部20は、音声合成部21と、音声データ処理部22と、音源方向推定部23と、推定音源分離部24と、音声認識部25と、音源定位部26とを有する。
音声合成部21は、主制御部40により決定された発話行動の指令に基づき、文字情報(テキストデータ)から発話音声データを生成し、スピーカSに音声を出力する部分である。発話音声データの生成には、予め記憶部30に記憶されている文字情報(テキストデータ)と、その文字情報が読み上げられた音声データとの対応関係を利用する。なお、この文字情報と音声データとは、管理用コンピュータ3から取得され、記憶部30に保存される。
【0043】
本実施形態の音源方向推定処理に係る処理は、音声処理部20が備える音声データ処理部22と、音源方向推定部23と、推定音源分離部24と、音声認識部25と、音源定位部26とにより行われる。これら構成部により行われる音源方向推定処理の詳細な説明は後記するため、ここでは、音声処理部20が行う音源方向推定処理について簡単に説明する。
音声処理部20は、音声入力部MC(MC1,MC2,MC3,・・・)から入力された音響信号データに信号分解アルゴリズム(例えば、MUSIC(MUltiple SIgnal Classification)法)を用いて、頭部の向きを基準とした360度全方向からの音圧値を示す全方向音圧成分データ(例えば、MUSICスペクトラム)を生成する。そして、音声処理部20は、その全方向音圧成分データから音源方向を推定する。次に、音声処理部20は、推定した音源方向から入力される音響信号データを、音声入力部MCから入力された音響信号データから分離抽出して、分離抽出した音響信号データに対して音声認識を行う。
【0044】
[記憶部]
記憶部30は、例えば、一般的なハードディスクなどから構成され、管理用コンピュータ3から送信された音声合成部21が発話音声データを生成する際に用いる文字情報および音声データ、後記する対象検知部80が用いる必要な情報(人物の氏名、ローカル地図データ、会話用データなど)、ロボットRが識別した人物の識別番号や位置情報の他に、本実施形態の音源方向推定処理に係るデータを記憶するものである。
この音源方向推定処理に係るデータは、音声入力角度DB31と、除外角度範囲DB32と、フレーズDB33(フレーズ記憶部)と、伝達関数DB34とに記憶されており、これらについての詳細な説明は後記する。
【0045】
[主制御部]
主制御部40は、画像処理部10、音声処理部20、記憶部30、自律移動制御部50、無線通信部60、および対象検知部80を統括制御するものである。
【0046】
[自律移動制御部]
自律移動制御部(自律移動制御手段)50は、主制御部40の指示に従い頭部R1、腕部R2、脚部R3を駆動する。
また、ジャイロセンサSR1、およびGPS受信器SR2が検出したデータは、主制御部40に出力され、ロボットRの行動を決定するために利用される。
【0047】
[無線通信部]
無線通信部60は、管理用コンピュータ3とデータの送受信を行う通信装置である。無線通信部60は、公衆回線通信装置61aおよび無線通信装置61bを有する。
公衆回線通信装置61aは、携帯電話回線やPHS(Personal Handyphone System)回線などの公衆回線を利用した無線通信手段である。一方、無線通信装置61bは、IEEE802.11b規格に準拠するワイヤレスLANなどの、近距離無線通信による無線通信手段である。
無線通信部60は、管理用コンピュータ3からの接続要求に従い、公衆回線通信装置61aまたは無線通信装置61bを選択して管理用コンピュータ3とデータ通信を行う。
【0048】
[バッテリ]
バッテリ70は、ロボットRの各部(頭部R1、腕部R2、脚部R3、および胴部R4)の動作や、ファンFの回転駆動、背面格納部R5に格納された制御装置の処理などに必要な電力の供給源である。このバッテリ70は、充填式の構成をもつものが使用される。
【0049】
[対象検知部]
対象検知部80は、ロボットRの周囲にタグTを備える人物が存在するか否かを検知するものである。例えば、LEDから構成され、ロボットRの頭部R1外周に沿って前後左右などに配設される複数の発光部を備える(図示は省略する)。
対象検知部80は、発光部から、各発光部を識別する発光部IDを示す信号を含む赤外光をそれぞれ発信すると共に、この赤外光を受信したタグTから受信報告信号を受信する。いずれかの赤外光を受信したタグTは、その赤外光に含まれる発光部IDに基づいて、受信報告信号を生成するので、ロボットRは、この受信報告信号に含まれる発光部IDを参照することにより、当該ロボットRから見てどの方向にタグTが存在するかを特定することができる。また、対象検知部80は、タグTから取得した受信報告信号の電波強度に基づいて、タグTまでの距離を特定する機能を有する。したがって、対象検知部80は、受信報告信号に基づいて、タグTの位置(距離および方向)を、人物の位置として特定することができる。
さらに、対象検知部80は、発光部から赤外光を発光するだけではなく、ロボットIDを示す信号を含む電波を図示しないアンテナから発信する。これにより、この電波を受信したタグTは、赤外光を発信したロボットRを正しく特定することができる。なお、対象検知部80およびタグTについての詳細は、例えば、特開2006−192563号公報に開示されている。
【0050】
次に、本実施形態に係るロボットRの音源方向推定処理に係る構成について、図4を参照して説明する。
[記憶部の構成]
図4に示すように、記憶部30は、音声入力角度DB31と、除外角度範囲DB32と、フレーズDB33とを含んで構成される。
【0051】
(音声入力角度DB)
音声入力角度DB31は、音声入力部MCの識別番号と、その音声入力部MCが顔面が向いている方向(H軸)からなす配設角度∠Hmc(∠Hmc1,∠Hmc2,∠Hmc3,・・・)とを対応付けて記憶するデータベースである。
図5は、図3(b)に示すように、音声入力部MCが頭部R1の内部に配設されたときの音声入力角度DBの一例を示す図である。音声入力角度DBには、音声入力部MC1に相当する識別番号“MC1”に、配設角度(∠Hmc1)=0度が記録されており、音声入力部MC2に相当する識別番号“MC2”に、配設角度(∠Hmc2)=45度が記録されている。
【0052】
(伝達関数DB)
伝達関数DB34は、後記する音声データ処理部22にて、MUSICスペクトラムPavg(θ)を生成するために、予めシミュレーションして取得した、頭部の向きを基準としたθ方向に音源がある場合の伝達関数ベクトルv(θ)が記録されている。この伝達関数ベクトルv(θ)は、シミュレーション時に行った方向の数だけ記録されている。伝達関数ベクトルv(θ)についての詳細は、後記する音声データ処理部22の説明にて記載する。
本実施形態では、360度全方向を5度で等分した72方向に音源がある場合のシミュレーションを予め行っておき、72個の伝達関数ベクトルv(θ)(v1,v2,・・・,v72)を算出しておく。
【0053】
(除外角度範囲DB)
除外角度範囲DB32は、ロボットRの管理者により端末5から入力され、管理用コンピュータ3を介して、ロボットRに設定される除外角度範囲rを記憶する記憶手段である。
除外角度範囲rは、支持軸Oを中心に胴部R4の正面が向いている方向(B軸,図7参照)からなす、音源として推定しない方向の範囲である。例えば、除外角度範囲rとして、∠B=+120〜+180〜+240度で記憶されている。
【0054】
この除外角度範囲rは、音声入力部MCとロボットRの動作環境とに基づき予め設定される範囲である。例えば、ロボットRの背面格納部R5に格納されたファンF(ノイズ発生源)から出力されるノイズ音を除去するために、予め、音声入力部MCから入力される、ファンFによるノイズ音の音響信号データに対して、音声データ処理部22に全方向音圧成分データ(例えば、MUSICスペクトラム)を生成させる。この全方向音圧成分データからノイズ音の音圧成分を抽出して、ノイズ音が与える影響の範囲を考慮する。
ここで、ノイズ音が与える影響とは、後記する音声認識部25が、ファンF(ノイズ発生源)以外からの音声を、ノイズ音により音声として認識しないことである。
【0055】
(フレーズDB)
フレーズDB33は、フレーズパターン331と、方向角度値パターン332と、フレーズ入力方向適合度333(音声入力方向適合度)とを対応付けて記憶するデータベースである。
図6は、フレーズDBの一例を示す図である。
フレーズパターン331は、人間が発声するフレーズであり、特に、人(発話者Y,図1参照)が他人(ロボットR,図1参照)を自分に振り向かせるために、呼びかけるときに発するフレーズが複数記憶されている。例えば、「こっち向いて」や「こっち見て」、「おーい」、「ごめんください」などである。
【0056】
方向角度値パターン332は、顔面が向いている方向(H軸)(図3(b)参照)からなす角度であり、360度全方向の方向角度値が記憶されている。
図6において、方向角度値は、20度毎の値としているが、1度毎の値であってもよい。
【0057】
フレーズ入力方向適合度333(音声入力方向適合度)は、人間が発声するフレーズが、ロボットRに対してどの角度から発話(入力)されやすいかを示す値であり、つまり、フレーズと方向角度値との関係の正しさ(フレーズと方向角度値との関係が正しい確率)を示す値である。
例えば、「こっち向いて」というフレーズは、ロボットRの顔面が向いている方向(H軸上、方向角度値=0度)から言われるフレーズではなく、ロボットRの顔面が向いていない方向(横や背面)から言われるフレーズであることに着目して、フレーズ入力方向適合度333は、ロボットRの管理者により予め設定された値である。
【0058】
図6においてフレーズが「こっち向いて」の場合は、方向角度値が「0度」におけるフレーズ入力方向適合度333の値は低く設定され(=0.00)、一方、方向角度値が「180度」におけるフレーズ入力方向適合度333の値は高く設定されている(=0.10)。
また、フレーズが「あなたのお名前は?」の場合は、ロボットRの顔面が向いている方向(H軸上、方向角度値=0度)から言われるフレーズである。そのため、方向角度値が「0度」におけるフレーズ入力方向適合度333の値は高く設定され(=0.30)、一方、方向角度値が「180度」におけるフレーズ入力方向適合度333の値は低く設定されている(=0.00)。
ここで、図6のフレーズDB33は、フレーズそれぞれで、全方向角度値のフレーズ入力方向適合度333の値の合計が1となるように、方向角度値ごとに、フレーズ入力方向適合度333の値が設定されている。
【0059】
[音声処理部の構成]
図4に示すように、音声処理部20は、音声データ処理部22と、音源方向推定部23と、推定音源分離部24と、音声認識部25と、音源定位部26とを含んで構成される。
【0060】
(音声データ処理部)
本実施形態において、音声データ処理部22は、信号分解アルゴリズムとしてMUSIC法を用いる。音声データ処理部22は、音声入力部MC(MC1,MC2,MC3,・・・)から入力された音響信号データからMUSIC法を用いて、雑音信号の空間を推定して、予め準備しておいた72方向の伝達関数ベクトルv(θ)それぞれを、その雑音信号の空間に射影することにより、MUSICスペクトラムPavg(θ)(全方向音圧成分データ)を生成する処理部である。
【0061】
伝達関数ベクトルv(θ)は、予めシミュレーションして取得したベクトル値である。
シミュレーションは、頭部の向きを基準としたθ方向の音源からインパルスを出力する。そのインパルスが入力された各音声入力部MC(MC1,MC2,MC3,・・・)が出力するインパルス応答を音声データ処理部22が取得する。そして、音声データ処理部22は、そのインパルス応答に離散フーリエ変換を施し、周波数領域に変換することで、伝達関数ベクトルv(θ)が得られる。
【0062】
シミュレーションは次のように行う。頭部の向きを基準とした0度の方向(θ=0)に位置する音源に対応する伝達関数ベクトルv1を算出する場合、0度の方向からインパルスを出力する。音声データ処理部22は、各音声入力部MC(MC1,MC2,MC3,・・・)から取得したインパルス応答に離散フーリエ変換を施し、周波数領域に変換することで、伝達関数ベクトルv1を算出することができる。
本実施形態では、360度全方向を5度で等分した72方向に音源がある場合のシミュレーションを予め行っておき、72個の伝達関数ベクトルv(θ)(v1,v2,・・・,v72)を算出しておく。
【0063】
(MUSICスペクトラム算出処理)
そして音声データ処理部22は、MUSICスペクトラム算出処理を行う。
まず、音声データ処理部22は、音声入力部MCから音響信号データを取得し、そして、記憶部30の伝達関数DB34から72個の伝達関数ベクトルv(θ)(v1,v2,v3,・・・,v72)を取得する。
そして、音声データ処理部22は、式(1)を用いてMUSICスペクトラムP(θ)を計算する。eは固有ベクトルであり、音響信号データから算出される値である。算出手段は後記する。
ここで、Mは音声入力部MCの数である。また、Nは音源として認識可能な最大数を示し、所定の値に設定することができる。本実施形態では、「N=3」と設定しておく。Tは転置行列であることを示す。
【0064】
【数1】

【0065】
(固有ベクトルeの算出)
ここで、固有ベクトルeは次のようにして、音響信号データから算出する。
まず、音声データ処理部22は、音響信号データに離散フーリエ変換を施して、周波数領域に変換し、スペクトルxを算出する。
そして、相関行列Rxxは、次の期待値Eで示す式(2)で示すことができる。
【0066】
【数2】

【0067】
この相関行列Rxxが式(3)を満たすような固有値λと、固有ベクトルeとを算出する。これにより、雑音信号の空間への射影行列である固有ベクトルeを取得することができる。
【0068】
【数3】

【0069】
音声データ処理部22は、式(3)を満たすすべての固有値λと固有ベクトルeとの組を保持する。このとき保持した組の数をKとする。
そして、音声データ処理部22は、固有値λが一番大きい組からN+1〜K番目の固有値λと固有ベクトルeとの組を取得する。このK−N個の固有ベクトルeを用いて、式(1)に示すMUSICスペクトラムP(θ)を算出する。
【0070】
ここで、通常、式(3)を満たす組は、音声入力部MCの数(M)だけ存在する。そのため、音源として認識可能な最大数として設定されるNの値は、N<Mであることが好ましい。
【0071】
以上のようにして、音声データ処理部22は、MUSICスペクトラム算出処理を行い、時刻tにおける、周波数ωのMUSICスペクトラムP(θ)を取得することができる。
そして、音声データ処理部22は、周波数毎にMUSICスペクトラムP(θ)の算出処理を行い、所定の周波数帯域のMUSICスペクトラムP(θ)を取得する。
ここで、所定の周波数帯域とは、発話者が発する音声の音圧が大きい周波数帯域であり、かつ雑音の音圧が小さい周波数帯域が望ましく、例えば、0.5〜2.8kHzであればよい。
【0072】
そして、音声データ処理部22は、各周波数帯域のMUSICスペクトラムP(θ)を広帯域信号に拡張する。
音声データ処理部22は、音響信号データからS/N比がよい(ノイズが少ない)周波数帯域ωを抽出し、広帯域信号へと拡張したときに、周波数帯域ωのMUSICスペクトラムP(θ)が強く反映されるように、周波数帯域ωの音響信号データから式(3)で得た一番大きい固有値λmaxを用いて、式(4)に示すように、MUSICスペクトラムP(θ)に重み付けをして、総和を計算する。これにより、広帯域のMUSICスペクトラムPavg(θ)を取得する。
【0073】
【数4】


Ω:周波数帯域の集合、|Ω|:集合Ωの要素数
【0074】
以上により、音声データ処理部22は、MUSICスペクトラムPavg(θ)(全方向音圧成分データ)を生成することができる。
【0075】
(音源方向推定部)
音源方向推定部23は、フィルタ部231と、角度抽出部232とを含んで構成される。
フィルタ部231は、音声データ処理部22からMUSICスペクトラムPavg(θ)(全方向音圧成分データ)を取得して、除外角度範囲DB32から除外角度範囲rを取得して、自律移動制御部50から頭回動部R11の回動角θを取得する。
そして、フィルタ部231は、H軸が基準となるMUSICスペクトラムPavg(θ)から、B軸を基準とした回動角θを考慮して、B軸を基準とした除外角度範囲rに該当する範囲内のデータを除去して、推定範囲スペクトラム(有効方向音圧成分データ)を抽出する。
【0076】
角度抽出部232は、推定範囲スペクトラムからすべてのピーク音圧値(Peak1,Peak2,・・・)と、それらピーク音圧値の角度(推定音源角度)とを抽出する。この推定音源角度が成す方向が推定音源方向である。ここで、本実施形態における推定音源角度は、H軸を基準とした角度∠φH(∠φH1,∠φH2,・・・)とする。
ここで、ピーク音圧値について説明する。推定範囲スペクトラムにおいて、角度θの音圧値が、直前の角度の音圧値および直後の角度の音圧値よりも大きな値である場合に、その角度θの音圧値がピーク音圧値である。また、その角度θが推定音源角度∠φHである。
そして、角度抽出部232は、抽出したすべてのピーク音圧値の推定音源角度∠φH(∠φH1,∠φH2,・・・)を推定音源分離部24に出力する。
この推定音源角度∠φHは、頭部R1の正面(顔面)を推定音源方向に向けるまでに必要な回動角度でもある。
【0077】
ここで、音声入力部MCから入力された音響信号データから音声データ処理部22が生成したMUSICスペクトラムPavg(θ)(全方向音圧成分データ)を取得して、音源方向推定部23(フィルタ部231および角度抽出部232)が、音源方向を推定するまでの処理について、図7と図8とを用いて説明する。図7は、B軸と、H軸と、除外角度範囲rとの一例を示す図であり、図8は、音声データ処理部22にて生成されたMUSICスペクトラムの一例を示す図である。
【0078】
この図7は、頭部R1の顔面が向いている方向(H軸)が、胴部R4の正面が向いている方向(B軸)から右に(θ=)30度の方向である場合の図である。このとき、H軸(∠H=0度)は、B軸を基準(0度)として換算すると、∠B=+30度で示される。
そして、背面格納部R5に格納されたファンF(ノイズ発生源)から出力されるノイズ音を除去するために、除外角度範囲r(r=120度)は、∠B=+120〜+180〜+240度の範囲で記憶されている。これは、H軸で換算すると、∠H=+80〜+140〜+200度の範囲である。
【0079】
図8は、図7で示す状態であるときに、音声データ処理部22が、頭部R1の音声入力部MC(MC1〜MC8)に入力された音響信号データにMUSIC法を用いて生成した360度全方向からの音圧値(スペクトラム強度)を示すMUSICスペクトラムPavg(θ)(全方向音圧成分データ)である。そして、縦軸は、スペクトル強度を示す音圧[dB]、横軸は、H軸を基準とした方向を示す角度[度]である。
【0080】
フィルタ部231は、このMUSICスペクトラムPavg(θ)において除外角度範囲rに該当する範囲のデータを除去して、スペクトラム(推定範囲スペクトラム)を取得する。図8における推定範囲スペクトラムは、除外角度範囲r(∠H=+80〜+140〜+200)以外の∠H=−160〜±0〜+80度で示されるスペクトラムデータである(図8で太線で示す)。
【0081】
角度抽出部232は、この推定範囲スペクトラムから、ピーク音圧値Peak1の推定音源角度∠φH1(∠φH)(∠H=−70度)と、ピーク音圧値Peak2の推定音源角度∠φH2(∠φH)(∠H=+10度)とを抽出する。そして、推定音源角度∠φH1および∠φH2を、推定音源分離部24に出力する。
【0082】
以上のように、フィルタ部231と角度抽出部232との処理により、MUSICスペクトラムにおける最大音圧値(MAX)(図8参照)は、除外角度範囲r(∠H=+80〜+140〜+200)内であるために、削除される。
【0083】
(推定音源分離部)
推定音源分離部24は、角度抽出部232から推定音源方向を示すすべての推定音源角度∠φH(∠φH1,∠φH2,・・・)を取得し、音声入力部MC(MC1,MC2,MC3,・・・)から音響信号データを取得する。そして、推定音源分離部24は、取得した複数の音響信号データから得られる360度全方向からの音響信号データのうち、各推定音源角度∠φHの方向から入力された音響信号データを分離抽出する。最後に、推定音源分離部24は、すべての推定音源角度∠φH(∠φH1,∠φH2,・・・)とともに、それぞれの角度方向に基づき分離抽出した推定音源方向音声データを音声認識部25に出力する。
【0084】
ここで、推定音源分離部24が行う複数の音声入力部MCから入力された音響信号データから、特定の音響信号データを分離抽出する処理については、特開2008−306712号公報などに開示された公知の技術を利用した処理である。
当該処理について、簡単に記載する。
【0085】
複数の音声入力部MCそれぞれには、複数の音源それぞれから個別の音源信号が重畳された音声信号が入力される。推定音源分離部24は、それら音声入力部MCから音響信号データを取得する。そして、推定音源分離部24は、ブラインド音源分離法(BSS:Blind Source Separation)を用いて、音響信号データそれぞれから、音源それぞれからの音源信号(音響信号データ)を分離する。そして、推定音源分離部24は、推定音源角度∠φHの方向から入力された音響信号データ(推定音源方向音声データ)を抽出する。
BSSとして、DSS(Decorrelation based Source Separation)や、ICA(Independent Component Analysis)、HDSS(Higher-order DSS)に基づく音源分離法や、これらの手法それぞれに幾何的情報を加えたGSS(Geometric constrained Source Separation)や、GICA(Geometric constrained ICA)、GHDSS(Geometric constrained HDSS)といった音源分離法を用いてもよい。
【0086】
(音声認識部)
音声認識部25は、推定音源分離部24から、すべての推定音源角度∠φH(∠φH1,∠φH2,・・・)と、それぞれの角度方向の推定音源方向音声データとを取得する。
音声認識部25は、推定音源方向音声データそれぞれに対して音声認識を行い、文字情報(テキストデータ)を生成する機能を有し、1つの推定音源方向音声データから、複数の仮説フレーズを生成する。この仮説フレーズはテキストデータで生成される。
【0087】
さらに、音声認識部25は、仮説フレーズの正しさ(仮説フレーズが正しい確率)を示す音声認識尤度を算出する機能を有する。この音声認識尤度は、仮説フレーズの内容や前後の文章内容(前後の仮説フレーズ)などから、仮説フレーズが正しい文章内容であるかを示すものである。
<音声認識部25の音声認識尤度算出処理>
音声認識部25にて行われる音声認識尤度算出処理について説明する。
一般的な音声認識における音声認識尤度(P(W|X))は、音声信号をX、フレーズ(単語の列)をWとして、以下の式(5)で示すことができる。
【0088】
【数5】


P(W|X):音声認識尤度、P(X|W):音響尤度、P(W):言語確率
【0089】
ここで、言語確率P(W)を算出するとき、文法を用いてもよいし、統計言語モデルを用いてもよい。
文法を用いて言語確率P(W)を算出する場合には、フレーズWが文法に定義されていればP(W)=1とし、定義されていなければP(W)=0とする。そして、確率の定義に従い、最後にはP(W)の合計が1になるように正規化する。
一方、統計言語モデルを用いて言語確率P(W)を算出する場合には、単語と単語との繋がりやすさを大量の文から学習したN−gramが用いられる。一般的にN−gramとは、N個の単語の繋がりやすさを学習させたものである。
【0090】
ここでは、統計言語モデルを用い、多くの場合に利用されているN=3の場合について説明する。一般的に、3−gramの統計言語モデルを用いて学習する際には、同時に2−gramも学習している。
例えば、「はしをわたって(橋を渡って)」の場合、「橋|を|渡っ|て」といった4つの単語に分解して考えます。そして、2つの単語「橋|を」の次に、「渡っ」という単語がどれだけ現れやすいかという確率P(渡っ|橋,を)を学習してデータベース(3−gramのデータベース、2−gramのデータベース)として持っている。
このように、「橋|を|渡っ|て」というフレーズWが現れる確率P(橋|を|渡っ|て)は、以下の式(6)で示すことができる。
【0091】
【数6】

【0092】
右辺は3−gramおよび2−gramのデータベースから得られるもので、左辺が言語確率P(W)である。
以上により、音声認識部25は、「橋を渡って」とする仮説フレーズの音声認識尤度(P(W|X))は大きい値で算出され(仮説フレーズが正しい確率が高い)、一方、「箸を渡って」とする仮説フレーズの音声認識尤度(P(W|X))は小さい値で算出される(仮説フレーズが正しい確率が低い)。
以上のように、音声認識部25にて音声認識尤度算出処理が行われ、音声認識尤度(P(W|X))が算出される。
【0093】
そして、音声認識部25は、推定音源角度∠φHで示される角度方向の推定音源方向データから生成したすべての仮説フレーズと、各仮説フレーズの音声認識尤度(P(W|X))とを、推定音源角度∠φHと対応付けて、音源定位部26(フレーズ確信度算出部261)に出力する。
なお、音声データとテキストデータとの対応関係は、記憶部30に予め記憶されている。
【0094】
(音源定位部)
音源定位部26は、フレーズ確信度算出部261と、フレーズ決定部262とを含んで構成される。
(フレーズ確信度算出部)
フレーズ確信度算出部261は、音声認識部25からすべての推定音源角度∠φH(∠φH1,∠φH2,・・・)と、推定音源角度∠φHそれぞれと対応付けられた仮説フレーズのすべてと、各仮説フレーズの音声認識尤度(P(W|X))とを取得する。
そして、フレーズ確信度算出部261は、すべての推定音源角度∠φHから1つの推定音源角度∠φHを抽出し、さらに、その推定音源角度∠φHと対応付けられたすべての仮説フレーズから1つの仮説フレーズを抽出する(以下、抽出仮説フレーズとする)。
次に、フレーズ確信度算出部261は、フレーズDB33(図6)のフレーズパターン331から、抽出仮説フレーズと一致するフレーズを抽出する。次に、その抽出したフレーズと対応付けられた方向角度値パターン332から、推定音源角度∠φHと一致する方向角度値を抽出する。最後に、その抽出した方向角度値と対応付けられたフレーズ入力方向適合度333(フレーズと方向角度値との関係が正しい確率)を抽出する。
【0095】
次に、フレーズ確信度算出部261は、フレーズの音源方向とフレーズの音声認識結果との関係を示すフレーズ確信度を算出する。このフレーズ確信度の値が大きいほど、抽出仮説フレーズ(音声認識部25が音声認識した仮説フレーズ)の音声認識結果が正しいという確率が高いことを示す。
<フレーズ確信度算出部261のフレーズ確信度算出処理>
フレーズ確信度算出部261にて行われるフレーズ確信度算出処理について説明する。
前記した、仮説フレーズの正しさ(仮説フレーズが正しい確率)を示す音声認識尤度を算出するための式(5)を、フレーズ入力方向適合度333を用いて拡張することで、フレーズ確信度P(W|X,d)は、以下の式(7)で示すことができる。ここで、音声信号をX、フレーズ(単語の列)をW、方向をdとする。
【0096】
【数7】


P(W|X):音声認識尤度、P(X|W):音響尤度、P(W):言語確率
P(W|X,d):フレーズ確信度、P(d|W):フレーズ入力方向適合度
【0097】
以上のように、フレーズ確信度算出処理を行うことで、フレーズ確信度算出部261は、フレーズ確信度(P(W|X,d))を、フレーズDB33から取得したフレーズ入力方向適合度333(P(d|W))に、音声認識尤度(P(W|X))を乗算することで算出できる。
【0098】
ここで、音響尤度P(X|W)は、入力した音声信号Xと音響モデルと呼ばれるデータベースから計算される尤度であり、入力音声信号XがフレーズWであると仮定すると、入力音声信号XがどれだけそのフレーズWらしいかを表す。この音響モデルには、隠れマルコフモデル(Hidden Markov Model)が用いられることが一般的で、フレーズWに対する入力音声信号Xの音響尤度を計算するアルゴリズムとして、ビタビ(Viterbi)アルゴリズムなどがある。
【0099】
そして、フレーズ確信度算出部261は、推定音源角度∠φHと、仮説フレーズと、算出したフレーズ確信度(P(W|X,d))との3つの値を対応付けてフレーズ決定部262に出力する。
この処理を、フレーズ確信度算出部261は、音声認識部25から取得したすべての推定音源角度∠φHに対して行い、各推定音源角度∠φHのすべての仮説フレーズのフレーズ確信度(P(W|X,d))を算出し、フレーズ決定部262に出力する。
【0100】
(フレーズ決定部)
フレーズ決定部262は、フレーズ確信度算出部261から取得したすべての推定音源角度∠φHに対して以下の処理を行う。
まず、フレーズ決定部262は、1つの推定音源角度∠φHに対応付けられたすべての仮説フレーズのフレーズ確信度を取得する。そして、フレーズ決定部262は、取得したフレーズ確信度P(W|X,d)から最大値のフレーズ確信度を抽出し、そのフレーズ確信度が最大値の仮説フレーズを、音声認識したフレーズと決定する。そして、このフレーズ確信度が最大値の仮説フレーズWmaxが、ロボットRの正面から推定音源角度∠φHを成す方向に位置する音源(発話者Y,図1参照)から発話された発話フレーズであるとする。
そして、主制御部40に、当該発話フレーズと、推定音源角度∠φHとを出力する。
ここで、フレーズ確信度が最大値の仮説フレーズWmaxは、以下の式(8)で示すことができる。
【0101】
【数8】


X:音声認識したフレーズ、W:仮説フレーズ
【0102】
以上の処理を、フレーズ決定部262は、フレーズ確信度算出部261から取得したすべての推定音源角度∠φHに対して行い、各推定音源角度∠φHの発話フレーズを主制御部40に出力する。
【0103】
本実施の形態に係るロボットRによれば、以下に示す動作ができるようになる。
各推定音源角度∠φHの発話フレーズを取得した主制御部40は、記憶部30に記憶された文字情報を参照して、発話フレーズの内容を取得する。ここで、発話フレーズが相手を呼びかける内容の文章であったときに、主制御部40は、自律移動制御部50へ、頭部R1の正面(顔面)が推定音源角度∠φHに至るまで、頭回動部R11を回動させる指示を出力させることができる。これにより、発話者が「おーい」と呼びかけることで、ロボットRはその発話者がいる方向へ顔面を向けることができる。
また、各推定音源角度∠φHの発話フレーズを取得した主制御部40が、角度抽出部232が推定範囲スペクトラムから取得した、それら推定音源角度∠φHの角度のピーク音圧値を取得する。そして、主制御部40は、自律移動制御部50へ、頭部R1の正面(顔面)が、ピーク音圧値が最大となる推定音源角度∠φHに至るまで、頭回動部R11を回動させる指示を出力させてもよい。これにより、ロボットRは、音圧が最大の発話者がいる方向へ顔面を向けることができる。そのため、近くで話している発話者よりも大きな声で呼びかけた発話者がいる方向へ顔面を向けることができる。
【0104】
[ロボットの音源方向推定処理]
次に、図9〜図11のフローチャートを参照して、ロボットの音源方向推定処理について説明する(適宜、図1ないし図8を参照)。
まず、ロボットRの音声入力部MC(MC1,MC2,MC3,・・・)に、ユーザが発話した音声が入力され(ステップS101)、音声データ処理部22に音響信号データが入力される(ステップS102)。
次に、音声データ処理部22は、記憶部30の音声入力角度DB31から、各音声入力部MCの配設角度∠Hmc(∠Hmc1,∠Hmc2,∠Hmc3,・・・)を取得し、伝達関数DB34から、伝達関数ベクトルv(θ)を取得する(ステップS103)。
そして、音声データ処理部22は、MUSIC法を用いて、各音声入力部MCから入力された音響信号データと、配設角度∠Hmcと、伝達関数ベクトルv(θ)とから、MUSICスペクトラムを生成する(ステップS104)。
【0105】
フィルタ部231は、音声データ処理部22からMUSICスペクトラム(全方向音圧成分データ)を取得して、除外角度範囲DB32から除外角度範囲rを取得して、自律移動制御部50から頭回動部R11の回動角θを取得する(ステップS105)。
そして、フィルタ部231は、MUSICスペクトラムから、回動角θを考慮して、除外角度範囲rに該当する範囲内のデータを除去して、推定範囲スペクトラム(有効方向音圧成分データ)を抽出する(ステップS106)。
【0106】
角度抽出部232は、推定範囲スペクトラムからすべてのピーク音圧値(Peak1,Peak2,・・・)と、それらピーク音圧値の角度(推定音源角度∠φH)とを抽出する(ステップS107)。そして、角度抽出部232は、抽出したすべての推定音源角度∠φH(∠φH1,∠φH2,・・・)を、推定音源分離部24に出力する。
【0107】
推定音源分離部24は、角度抽出部232からすべての推定音源角度∠φH(∠φH1,∠φH2,・・・)を取得し、音声入力部MC(MC1,MC2,MC3,・・・)から入力された音響信号データを取得する(ステップS108)。そして、取得した音響信号データから、各推定音源角度∠φHの方向から入力された音響信号データを分離抽出する(ステップS109)。最後に、推定音源分離部24は、推定音源角度∠φH(∠φH1,∠φH2,・・・)とともに、それぞれの角度方向に基づき分離抽出した推定音源方向音声データを音声認識部25に出力する。
【0108】
音声認識部25は、推定音源分離部24からすべての推定音源角度∠φH(∠φH1,∠φH2,・・・)と、それぞれの角度方向の推定音源方向音声データを取得する(ステップS110)。
(音声認識処理)
音声認識部25は、推定音源分離部24から入力された推定音源方向音声データに音声認識を行って、複数の仮説フレーズを生成し(ステップS111)、所定の算出手段を用いて、仮説フレーズの正しさを示す音声認識尤度を算出する(ステップS112)。そして、音声認識部25は、すべての推定音源角度∠φH方向の推定音源方向音声データに対して、当該音声認識処理を行う。
【0109】
以上の処理により、音声認識部25は、推定音源方向音声データ毎に、その推定音源方向音声データから生成された複数の仮説フレーズと、各仮説フレーズの音声認識尤度を取得する。そして、音声認識部25は、推定音源角度∠φHと対応付けて、その推定音源角度∠φH方向の推定音源方向音声データから生成したすべての仮説フレーズと、各仮説フレーズの音声認識尤度とを、フレーズ確信度算出部261に出力する。
【0110】
フレーズ確信度算出部261は、音声認識部25からすべての推定音源角度∠φH(∠φH1,∠φH2,・・・)と、各推定音源角度∠φHに対応付けられたすべての仮説フレーズと、各仮説フレーズの音声認識尤度とを取得する(ステップS113,図10)。
そして、フレーズ確信度算出部261は、取得した推定音源角度∠φH(∠φH1,∠φH2,・・・)から、1つの推定音源角度∠φHを抽出し(ステップS114)、その推定音源角度∠φHに対応付けられた複数の仮説フレーズから1つを抽出する(ステップS115)。
次に、フレーズ確信度算出部261は、抽出した推定音源角度∠φHと仮説フレーズとに基づき、フレーズDB33のフレーズパターン331から、仮説フレーズと一致するフレーズを抽出する。次に、フレーズ確信度算出部261は、抽出したフレーズと対応付けられた方向角度値パターン332から、推定音源角度∠φHと一致する方向角度値を抽出する。そして、フレーズ確信度算出部261は、抽出した方向角度値と対応付けられたフレーズ入力方向適合度333を取得する(ステップS116)。
【0111】
次に、フレーズ確信度算出部261は、フレーズDB33から取得したフレーズ入力方向適合度333に、音声認識部25から取得した仮説フレーズの音声認識尤度を乗算して、仮説フレーズのフレーズ確信度を算出する(ステップS117)。そして、フレーズ確信度算出部261は、推定音源角度∠φHと、仮説フレーズと、算出したフレーズ確信度との3つの値を対応付けてフレーズ決定部262に出力する。
そして、フレーズ確信度算出部261は、ステップS115にて未抽出仮説フレーズがあるか否かを判定する(ステップS118)。未抽出仮説フレーズがあれば(ステップS118,Yes)、ステップS115に戻る。
【0112】
一方、未抽出仮説フレーズがなければ(ステップS118,No)、フレーズ確信度算出部261は、ステップS114にて未抽出推定音源角度があるか否かを判定する(ステップS119)。未抽出推定音源角度があれば(ステップS119,Yes)、ステップS114に戻る。
一方、未抽出推定音源角度がなければ(ステップS119,No)、フレーズ決定部262に処理を移す。
【0113】
フレーズ決定部262は、すべての推定音源角度∠φH(∠φH1,∠φH2,・・・)と、各推定音源角度∠φHに対応付けられたすべての仮説フレーズのフレーズ確信度を取得する(ステップS120,図11)。
まず、フレーズ決定部262は、取得した推定音源角度∠φH(∠φH1,∠φH2,・・・)から、1つの推定音源角度∠φHを抽出する(ステップS121)。
そして、フレーズ決定部262は、抽出した推定音源角度∠φHに対応付けられたすべてのフレーズ確信度から、最大値のフレーズ確信度を抽出し(ステップS122)、その抽出したフレーズ確信度の仮説フレーズを、ロボットRが音声認識した推定音源角度∠φHの方向からのフレーズに決定する(ステップS123)。これにより、1つの推定音源角度∠φHの方向に対して、1つのフレーズが決定する。
【0114】
そして、フレーズ決定部262は、ステップS114にて未抽出推定音源角度があるか否かを判定する(ステップS124)。未抽出推定音源角度があれば(ステップS124,Yes)、ステップS121に戻る。
一方、未抽出推定音源角度がなければ(ステップS124,No)、フレーズ決定部262は、これまでの処理により、決定した各推定音源角度∠φHのフレーズを、主制御部40に出力する(ステップS125)。そして、ロボットRは音源方向推定処理を終了する。
【0115】
以上、本発明の実施形態について説明したが、本発明は前記した実施形態に限定されず、適宜変更して実施することが可能である。
例えば、除外角度範囲DB32には、除外角度範囲rを記憶するとしたが、360−rで算出される角度範囲を記憶してもよい。これにより、MUSICスペクトラムから、有効方向音圧成分データを抽出することができる。
また、角度抽出部232は推定音源角度として、H軸を基準とした角度∠φHの代わりに、B軸を基準とした角度∠φBを用いてもよい。
【0116】
また、除外角度範囲DB32において、除外角度範囲rを、音声入力部が3つであれば120°未満、4つであれば180°未満の値に設定することで、少なくとも2つの音声入力部MCが除外角度範囲rの範囲外に位置するため、発話者Y(図1参照)がいる方向(推定すべき音源方向)を推定することができる。
【0117】
フレーズDB33は、フレーズパターン331毎の、方向角度値パターン332とフレーズ入力方向適合度333とからなる2次元のヒストグラムを記憶してもよい。これにより、フレーズ確信度算出部261は、音声認識部25から取得した推定音源角度∠φHに該当する方向角度値と、2次元のヒストグラムで対応付けられたフレーズ入力方向適合度333を取得することになる。
【0118】
ロボットRは、発話者Yとコミュニケーションをするロボットであってもよいが、物音がする方向にカメラCと高性能マイクロフォン(音声入力部MC)を向ける警備用のロボットであっても良い。
【符号の説明】
【0119】
20 音声処理部
22 音声データ処理部
23 音源方向推定部
24 推定音源分離部
25 音声認識部
26 音源定位部
30 記憶部
31 音声入力角度DB
32 除外角度範囲DB
33 フレーズDB
40 主制御部
50 自律移動制御部(行動制御部)(回動角測定部)
231 フィルタ部
232 角度抽出部
261 フレーズ確信度算出部
262 フレーズ決定部
MC(MC1,MC2,MC3,・・・) 音声入力部
O 支持軸
R ロボット
R1 頭部
R11 頭回動部

【特許請求の範囲】
【請求項1】
胴部と、
前記胴部の上面で回動可能に支持軸に支持される頭部と、
前記頭部が回動する回動方向に前記支持軸を中心に所定の角度で離間して前記頭部に配設され、入力された音声を音声データに変換して出力する3以上の音声入力部と、
前記音声入力部それぞれから入力された前記音声データに、信号分解アルゴリズムを用いて、前記頭部の向きを基準とした360度全方向からの音圧値を示す全方向音圧成分データを生成する音声データ処理部と、
前記胴部の向きを基準とした前記頭部の回動角度を測定する回動角測定部と、
前記胴部の向きを基準とした音源として推定しない方向の範囲が予め設定された除外角度範囲が記憶された記憶部と、
音源方向を推定する音源方向推定部と
を備えるロボットであって、
前記音源方向推定部は、
測定された回動角度を用いて、前記全方向音圧成分データから前記除外角度範囲内にあるデータを除去して有効方向音圧成分データを生成するフィルタ部を備えるロボット。
【請求項2】
前記記憶部は、前記支持軸を中心とした前記音声入力部それぞれの方向を示す音声入力角度が記憶され、
前記音源方向推定部が、前記フィルタ部が生成した前記有効方向音圧成分データから、直前の角度の音圧値と直後の角度の音圧値との双方より大きい音圧値の角度を少なくとも1以上抽出する角度抽出部を有し、
前記音声入力部が出力した音声データから、前記音声入力角度に基づき、前記角度抽出部が抽出した推定音源角度それぞれの方向から入力された音声データを分離抽出する推定音源分離部と、
前記推定音源分離部に抽出された推定音源方向音声データに音声認識を行い、その音声認識結果の正しさを示す音声認識尤度を算出する音声認識部と、
前記音声認識結果と、その音声認識結果に係る前記推定音源方向音声データが入力される方向との関係の正しさを示す音声入力方向適合度で、前記音声認識結果に係る前記音声認識尤度を重み付ける音源定位部と
を備えることを特徴とする請求項1に記載されたロボット。
【請求項3】
前記音源認識部は、
前記推定音源分離部に抽出された推定音源方向音声データから複数の音声認識結果を取得し、それぞれの音声認識結果の音声認識尤度を算出し、
前記音源定位部は、
それぞれの音声認識結果に係る前記推定音源方向音声データが入力される方向との関係の正しさを示す音声入力方向適合度で、前記音声認識結果に係る前記音声認識尤度を重み付けることで得られた複数の算出値から、最大の算出値を抽出し、その算出値に係る音声認識結果の前記推定音源角度を音源方向に推定することを特徴とする請求項2に記載されたロボット。
【請求項4】
さらに、予め入力され得るフレーズを集めた複数のフレーズパターンと、前記支持軸を中心とし前記頭部の向きを基準とした方向を示す方向角度値パターンと、前記フレーズパターンが前記方向角度値パターンの方向から入力される正しさを示す前記音声入力方向適合度との3つが対応付けられて記憶されたフレーズ記憶部を備え、
前記音声認識部は、
前記音声認識を行って、複数の仮説フレーズを生成し、各仮説フレーズの正しさを示す音声認識尤度を算出し、
前記音声認識部が算出する、前記推定音源方向音声データそれぞれの前記音声認識尤度は、前記音声認識部が前記推定音源方向音声データに音声認識を行って、複数のパターンの仮説フレーズを生成し、仮説フレーズそれぞれの正しさを示す値であって、
前記音源定位部は、
前記音声認識部に生成された複数の仮説フレーズとその音声認識尤度とを取得すると共に、前記仮説フレーズおよび前記推定音源角度を用いて、前記フレーズ記憶部に記憶された前記フレーズパターンおよび前記方向角度値パターンに対応付けられた前記音声入力方向適合度を抽出し、その音声入力方向適合度で前記音声認識尤度を重み付けして、フレーズ確信度を算出するフレーズ確信度算出部と、
前記フレーズ確信度が最大となる仮説フレーズを、音源方向からの音声を音声認識したフレーズとするフレーズ決定部と
を備えることを特徴とする請求項3に記載されたロボット。
【請求項5】
前記フレーズ記憶部は、前記フレーズパターン毎の、前記方向角度値パターンと前記音声入力方向適合度とからなる2次元のヒストグラムを記憶することを特徴とする請求項4に記載されたロボット。
【請求項6】
前記角度抽出部が抽出した推定音源角度に至るまで、前記頭部に回動させる行動制御部を備えることを特徴とする請求項2ないし請求項5のいずれか1項に記載されたロボット。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2011−237621(P2011−237621A)
【公開日】平成23年11月24日(2011.11.24)
【国際特許分類】
【出願番号】特願2010−109213(P2010−109213)
【出願日】平成22年5月11日(2010.5.11)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】