(57)【要約】【課題】ＭＵＳＩＣ法を使用して安定的に音源定位を行なえる音源定位装置を提供する。【解決手段】音源定位装置５０は、マイクロホンアレイ５２の出力から得られる複数チャンネルの音源信号の各々と、マイクロホンアレイ５２に含まれる各マイクロホンの間の位置関係とに基づいて、３次元空間内で定義された複数の方位の各々について、ＭＵＳＩＣアルゴリズムにより、所定時間ごとにＭＵＳＩＣパワーを算出するＭＵＳＩＣ処理部６２と、複数の方位の各々について、ＭＵＳＩＣ処理部６２により時系列として得られたＭＵＳＩＣパワーの値の強度及びその変化量に基づいて、音源の発生から消滅までの音源の方位の変化を検出する音源推定部６４とを含む。【選択図】図３
2011220701.tif 000002
【特許請求の範囲】
【請求項１】
マイクロホンアレイの出力から得られる複数チャンネルの音源信号の各々と、前記マイクロホンアレイに含まれる各マイクロホンの間の位置関係とに基づいて、前記マイクロホンアレイの位置に関連して定められる点を中心とする３次元空間内で定義された複数の方位の各々について、ＭＵＳＩＣアルゴリズムにより、所定時間ごとにＭＵＳＩＣパワーを算出するためのＭＵＳＩＣ応答算出手段と、
前記複数の方位の各々について、前記ＭＵＳＩＣ応答算出手段により時系列として得られたＭＵＳＩＣパワーの値の強度及びその変化量に基づいて、音源の発生から消滅までの音源の方位の変化を検出するための音源推定手段とを含む、音源定位装置。
【請求項２】
前記音源推定手段は、
前記複数の方位の各々に対して、前記複数の方位の内で、処理対象となっている方位に隣接する方位の各々に関して直前に前記ＭＵＳＩＣ応答算出手段により算出されたＭＵＳＩＣパワーの値と、当該処理対象となっている方位に関して得られた最新のＭＵＳＩＣパワーの値との差を算出し、その差のうちで所定の条件を充足する値を当該方位についてのＭＵＳＩＣΔパワーとして出力するためのＭＵＳＩＣΔパワー算出手段と、
前記複数の方位の各々に対して、当該方位について前記ＭＵＳＩＣ応答算出手段により算出されたＭＵＳＩＣパワーの値と、当該方位について前記ＭＵＳＩＣΔパワー算出手段により出力されたＭＵＳＩＣΔパワーとに基づいて、音源の発生があったか否かを検出し、音源の発生の検出に応答して、音源発生を示す情報とその方位を示す情報とを出力するためのオンセット検出手段と、
前記オンセット検出手段により音源の発生が検出されたことに応答して、前記オンセット検出手段により発生が検出された音源の方位を、前記ＭＵＳＩＣ応答算出手段により当該音源の方位に隣接する方位の各々について算出されたＭＵＳＩＣパワーの値と、当該音源の方位に隣接する方位の各々について前記ＭＵＳＩＣΔパワー算出手段により出力されたＭＵＳＩＣΔパワーとに基づいて、当該音源の消滅までトラッキングするためのトラッキング手段とを含む、請求項１に記載の音源定位装置。
【請求項３】
さらに、前記ＭＵＳＩＣ応答算出手段により出力されたＭＵＳＩＣパワーの移動平均を前記複数の方位の各々に対して算出して平滑化するための平滑化手段を含み、
前記ＭＵＳＩＣΔパワー算出手段と、前記トラッキング手段はいずれも前記平滑化手段により平滑化されたＭＵＳＩＣパワーを入力として受ける、請求項２に記載の音源定位装置。
【請求項４】
前記オンセット検出手段は、
前記複数の方位の各々に対して、前記ＭＵＳＩＣΔパワー算出手段により算出されたＭＵＳＩＣΔパワーの値が第１のオンセット用しきい値より大きく、かつ前記ＭＵＳＩＣ応答算出手段により算出されたＭＵＳＩＣパワーの値が第２のオンセット用しきい値より大きいか否かを判定するための第１の判定手段と、
前記第１の判定手段による判定結果に基づいて、音源の発生を検出するための第２の判定手段とを含む、請求項２又は請求項３に記載の音源定位装置。
【請求項５】
前記第２の判定手段は、
前記第１の判定手段による判定結果が肯定であった方位のうち、当該方位について算出されているＭＵＳＩＣパワーの上位から限定された一定個数のみを、検出された音源として特定するための音源限定手段を含む、請求項４に記載の音源定位装置。
【請求項６】
前記トラッキング手段は、
前記オンセット検出手段により音源の発生が検出されたことに応答して、当該検出以後、前記所定時間ごとに前記ＭＵＳＩＣ応答算出手段により出力されるＭＵＳＩＣ応答のうちで、音源の方位に隣接する方位について算出されるＭＵＳＩＣパワーの値の最大値を辿ることにより、発生が検出された音源の移動をトラッキングするための手段と、
前記トラッキングするための手段によりトラッキングされた音源の方位について算出されたＭＵＳＩＣパワー及びＭＵＳＩＣΔパワーが所定の条件を充足したときに、当該音源の消滅を検出し、前記トラッキングするための手段によるトラッキングを中止させるための音源消滅検出手段とを含む、請求項２〜請求項５のいずれかに記載の音源定位装置。
【請求項７】
前記音源消滅検出手段は、
前記トラッキングするための手段によりトラッキングされた音源の方位について算出されたＭＵＳＩＣΔパワーが第１のオフセット用しきい値より小か否かを判定するための第１のオフセット判定手段と、
当該方位について算出されたＭＵＳＩＣパワーが当該音源の発生時のＭＵＳＩＣパワーよりある正の定数だけ大きな第２のオフセット用定数より大きいか否かを判定するための第２のオフセット判定手段と、
前記第１及び第２のオフセット判定手段の判定結果のいずれかが肯定であるという結果が、前記ＭＵＳＩＣ応答算出手段により所定時間ごとに算出されたＭＵＳＩＣ応答について所定回数だけ連続して得られたときに、前記トラッキングするための手段によりトラッキングされている音源が消滅したと判定し、トラッキングを中止させるための手段とを含む、請求項６に記載の音源定位装置。
【請求項８】
前記所定回数は複数回である、請求項７に記載の音源定位装置。
【請求項９】
コンピュータにより実行されると、当該コンピュータを、請求項１−請求項８のいずれかに記載の各手段として機能させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は実環境における音源定位技術に関し、特に、実環境におけるＭＵＳＩＣ（ＭＵｌｔｉＰｌｅ  ＳＩｇｎａｌ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ）法を用いた音源定位、及び、音声の方向性による、移動する音源による音声の発生区間の検出技術に関する。
【背景技術】
【０００２】
人とロボットとの音声コミュニケーションにおいて、ロボットに取付けたマイクロホンは通常離れた位置（１ｍ以上）にある。したがって例えば電話音声のようにマイクと口との距離が数センチの場合と比べて、信号と雑音の比（ＳＮＲ）は低くなる。このため、傍にいる他人の声や環境の雑音が妨害音となり、ロボットによる目的音声の認識が難しくなる。従って、ロボットへの応用として、音源定位や音源分離は重要である。
【０００３】
音源定位に関しては過去にさまざまな研究がされている。しかし、その大半ではシミュレーション・データ又はラボ・データのみが使用され、ロボットが動作する実環境のデータを評価するものは少ない。３次元の音源定位を評価する研究も少ない。発話相手の顔を見ながら話したり聞いたりすることも人間とロボットとの対話インタラクションを改善するための重要なビヘービアであり、そのためには３次元の音源定位も重要となる。
【０００４】
実環境を想定した従来技術として特許文献１に記載のものがある。特許文献１に記載の技術は、分解能が高いＭＵＳＩＣ法と呼ばれる公知の音源定位の手法を用いている。
【０００５】
特許文献１に記載の発明では、マイクロホンアレイを用い、マイクロホンアレイからの信号をフーリエ変換して得られた受信信号ベクトルと、過去の相関行列とに基づいて現在の相関行列を計算する。このようにして求められた相関行列を固有値分解し、最大固有値と、最大固有値以外の固有値に対応する固有ベクトルである雑音空間とを求める。さらに、マイクロホンアレイのうち、１つのマイクロホンを基準として、各マイクの出力の位相差と、雑音空間と、最大固有値とに基づいて、ＭＵＳＩＣ法により音源の方向を推定する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開2008-175733号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ＭＵＳＩＣ法は分解能が高いという特長があるが、ＭＵＳＩＣ法を使用する場合には音源の数を与えなければならないという問題がある。特許文献１に記載の技術では、音源は一つであることが想定されているため、こうした問題は生じない。しかし、実際にロボットが稼動する環境としてはそのような環境であることはまれで、常に複数の音源が存在しており、しかもその数は一定していない。ＭＵＳＩＣ法を用いる場合、音源の数の予測を誤ると音源定位も誤ってしまい、ロボットが人間と正しくインタラクションをすることが困難となってしまう。特に、音源の数を多く予測しすぎると、好ましいインタラクションが難しくなるだけでなく、計算コストも高くなるという問題がある。
【０００８】
さらに特許文献１に記載の技術では、音源定位は２次元的に行なわれている。しかし、実際のロボットの稼働環境は２次元ではなく、３次元的である。例えば、商店街などでは比較的高い位置にスピーカが置かれており、そのスピーカから常に音声が流されていることが多い。また、スピーカの位置は一定であるが、音量が変化することもある。そうした環境では音源を３次元的に定位することが好ましいが、特許文献１に記載の技術では２次元的にしか行なえないという問題がある。
【０００９】
特に人間を相手にするロボットの場合、人間の身長はさまざまで、大人の場合にはロボットより高い位置で話し、子供の場合には逆にロボットより低い位置で話すことが多い。そうした点からも、３次元的な音源定位をすることが望まれる。ロボットと人とが対話するときには、ロボットの顔を相手の顔の方向に向ける必要があるが、３次元的な音源定位が行なえないと、そのような対話を行なうことは困難である。
【００１０】
さらに、人間は頻繁に移動するため、音源を実時間で安定してトラッキングすることも必要である。
【００１１】
それゆえに本発明の目的は、ＭＵＳＩＣ法を使用して安定的に音源定位を行なうことができる音源定位装置を提供することである。ここでの音源定位とは、音源の方位を継続的に特定することをいう。
【００１２】
本発明の他の目的は、ＭＵＳＩＣ法を使用して安定的に音源をトラッキング可能な音源定位装置を提供することである。
【００１３】
本発明のさらに他の目的は、ＭＵＳＩＣ法を使用して安定的に音源のトラッキングを行ない、音源の発生及び消滅を精度高く実時間で予測できる音源定位装置を提供することである。
【課題を解決するための手段】
【００１４】
本発明の第１の局面によれば、音源定位装置は、マイクロホンアレイの出力から得られる複数チャンネルの音源信号の各々と、マイクロホンアレイに含まれる各マイクロホンの間の位置関係とに基づいて、マイクロホンアレイの位置に関連して定められる点を中心とする３次元空間内で定義された複数の方位の各々について、ＭＵＳＩＣアルゴリズムにより、所定時間ごとにＭＵＳＩＣパワーを算出するためのＭＵＳＩＣ応答算出手段と、複数の方位の各々について、ＭＵＳＩＣ応答算出手段により時系列として得られたＭＵＳＩＣパワーの値の強度及びその変化量に基づいて、音源の発生から消滅までの音源の方位の変化を検出するための音源推定手段とを含む。
【００１５】
好ましくは、音源推定手段は、複数の方位の各々に対して、複数の方位の内で、処理対象となっている方位に隣接する方位の各々に関して直前にＭＵＳＩＣ応答算出手段により算出されたＭＵＳＩＣパワーの値と、当該処理対象となっている方位に関して得られた最新のＭＵＳＩＣパワーの値との差を算出し、その差のうちで所定の条件を充足する値を当該方位についてのＭＵＳＩＣΔパワーとして出力するためのＭＵＳＩＣΔパワー算出手段と、複数の方位の各々に対して、当該方位についてＭＵＳＩＣ応答算出手段により算出されたＭＵＳＩＣパワーの値と、当該方位についてＭＵＳＩＣΔパワー算出手段により出力されたＭＵＳＩＣΔパワーとに基づいて、音源の発生があったか否かを検出し、音源の発生の検出に応答して、音源発生を示す情報とその方位を示す情報とを出力するためのオンセット検出手段と、オンセット検出手段により音源の発生が検出されたことに応答して、オンセット検出手段により発生が検出された音源の方位を、ＭＵＳＩＣ応答算出手段により当該音源の方位に隣接する方位の各々について算出されたＭＵＳＩＣパワーの値と、当該音源の方位に隣接する方位の各々についてＭＵＳＩＣΔパワー算出手段により出力されたＭＵＳＩＣΔパワーとに基づいて、当該音源の消滅までトラッキングするためのトラッキング手段とを含む。
【００１６】
より好ましくは、音源定位装置はさらに、ＭＵＳＩＣ応答算出手段により出力されたＭＵＳＩＣパワーの移動平均を複数の方位の各々に対して算出して平滑化するための平滑化手段を含む。ＭＵＳＩＣΔパワー算出手段と、トラッキング手段はいずれも平滑化手段により平滑化されたＭＵＳＩＣパワーを入力として受ける。
【００１７】
さらに好ましくは、オンセット検出手段は、複数の方位の各々に対して、ＭＵＳＩＣΔパワー算出手段により算出されたＭＵＳＩＣΔパワーの値が第１のオンセット用しきい値より大きく、かつＭＵＳＩＣ応答算出手段により算出されたＭＵＳＩＣパワーの値が第２のオンセット用しきい値より大きいか否かを判定するための第１の判定手段と、第１の判定手段による判定結果に基づいて、音源の発生を検出するための第２の判定手段とを含む。
【００１８】
第２の判定手段は、第１の判定手段による判定結果が肯定であった方位のうち、当該方位について算出されているＭＵＳＩＣパワーの上位から限定された一定個数のみを、検出された音源として特定するための音源限定手段を含んでもよい。
【００１９】
好ましくは、トラッキング手段は、オンセット検出手段により音源の発生が検出されたことに応答して、当該検出以後、所定時間ごとにＭＵＳＩＣ応答算出手段により出力されるＭＵＳＩＣ応答のうちで、音源の方位に隣接する方位について算出されるＭＵＳＩＣパワーの値の最大値を辿ることにより、発生が検出された音源の移動をトラッキングするための手段と、トラッキングするための手段によりトラッキングされた音源の方位について算出されたＭＵＳＩＣパワー及びＭＵＳＩＣΔパワーが所定の条件を充足したときに、当該音源の消滅を検出し、トラッキングするための手段によるトラッキングを中止させるための音源消滅検出手段とを含む。
【００２０】
より好ましくは、音源消滅検出手段は、トラッキングするための手段によりトラッキングされた音源の方位について算出されたＭＵＳＩＣΔパワーが第１のオフセット用しきい値より小か否かを判定するための第１のオフセット判定手段と、当該方位について算出されたＭＵＳＩＣパワーが当該音源の発生時のＭＵＳＩＣパワーよりある正の定数だけ大きな第２のオフセット用定数より大きいか否かを判定するための第２のオフセット判定手段と、第１及び第２のオフセット判定手段の判定結果のいずれかが肯定であるという結果が、ＭＵＳＩＣ応答算出手段により所定時間ごとに算出されたＭＵＳＩＣ応答について所定回数（好ましくは複数回）だけ連続して得られたときに、トラッキングするための手段によりトラッキングされている音源が消滅したと判定し、トラッキングを中止させるための手段とを含む。
【００２１】
本願発明の第２の局面に係るコンピュータプログラムは、コンピュータにより実行されると、当該コンピュータを、上記したいずれかの音源定位装置の各手段として機能させる。
【図面の簡単な説明】
【００２２】
【図１】本発明の１実施の形態に係る音源定位処理部５０を有するロボット３０にマイクロホン台３２を装着した状態を示す図である。
【図２】マイクロホン台３２の３面図である。
【図３】音源定位処理部５０のブロック図である。
【図４】音源推定部６４の機能を実現するためのコンピュータプログラムの制御構造を示すフローチャートである。
【図５】オンセット検出処理を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図６】トラッキング処理を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図７】オフセット検出処理を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図８】実施の形態に係る音源定位処理部５０について、その性能を測るために行なった実験の結果を示すグラフである。
【図９】実施の形態に係る音源定位処理部５０について、その性能を測るために行なった実験の結果を示すグラフである。
【図１０】実施の形態に係る音源定位処理部５０について、その性能を測るために行なった実験の結果を示すグラフである。
【図１１】本発明の実施の形態に係る音源定位処理部５０を実現するコンピュータのブロック図である。
【発明を実施するための形態】
【００２３】
以下の本発明の実施の形態の説明において、同一の部品には同一の参照番号を付してある。それらの機能も同一である。したがってそれらについての詳細な説明は繰返さない。
【００２４】
［概要］
本実施の形態では、ロボットの頭部付近にマイクロホンアレイを配置し、これらマイクロホンアレイから得られた信号からリアルタイムで複数個の音源を定位し、それらのトラッキングを行なう。そのために、以下に説明する実施の形態の音源定位装置は、音源数を固定したＭＵＳＩＣアルゴリズムによりＭＵＳＩＣ空間スペクトルを算出し、得られたＭＵＳＩＣ空間スペクトルを直接に用いて音源数とその位置とを動的に推定する仕組みを採用する。
【００２５】
［構成］
図１に、マイクロホンアレイをロボット３０の胸部にフィットさせた状態を示す。具体的には、ロボット３０の首の周囲にマイクロホンをフィットさせるためのマイクロホン台３２を作成し、複数のマイクロホンＭＣ１等をこのマイクロホン台３２に固定した後にマイクロホン台３２をロボット３０の首の周りに固定してある。
【００２６】
図２に、マイクロホン台３２の正面図、平面図、及び右側面図を示す。図２を参照して、マイクロホンＭＣ１等は全部で１４個だけ使用される。それらのうち９個はマイクロホン台３２の前部に取付けられ、残りの５個はロボット３０の首を囲む形でマイクロホン台３２の上面に取付けられている。なお、１４個のマイクロホンのうち、中央にあるマイクロホンＭＣ１の出力については、後の処理で他と区別して使用する。本実施の形態では、各マイクロホンは無指向性のものを用いている。
【００２７】
図３は、図１に示すロボットのうち、音源定位に関係する音源定位処理部５０のみを取り出してブロック図形式で示した図である。図３を参照して、音源定位処理部５０は、マイクロホンＭＣ１等を含むマイクロホンアレイ５２から１４個のアナログ音源信号を受け、アナログ／デジタル変換を行なって１４個のデジタル音源信号を出力するＡ／Ｄ変換器５４と、Ａ／Ｄ変換器５４から出力される１４個のデジタル音源信号を受け、ＭＵＳＩＣ法で必要とされる相関行列とその固有値及び固有ベクトルを１００ミリ秒にういて１ブロックとしてブロックごとに出力するための固有ベクトル算出部６０と、固有ベクトル算出部６０からブロックごとに出力される固有ベクトルを使用し、ＭＵＳＩＣ法によりＭＵＳＩＣ空間スペクトルを出力するＭＵＳＩＣ処理部６２と、ＭＵＳＩＣ処理部６２が出力するＭＵＳＩＣ空間スペクトルに基づいて、音源数とその位置とを動的に推定してその位置（方向）を表す値（本実施の形態では、３次元極座標の内の２つの偏角φ及びθとする。付録の「ＭＵＳＩＣ応答」を参照。）を時系列で出力する音源推定部６４と、音源推定部６４の出力の時系列を蓄積するためのバッファ６６とを含む。なお、本明細書では、「ＭＵＳＩＣ応答」とは、ＭＵＳＩＣアルゴリズムにより得られるＭＵＳＩＣ空間スペクトルを所定の式で平均化したものである。詳細については付録の「ＭＵＳＩＣ応答」を参照されたい。
【００２８】
本実施の形態では、Ａ／Ｄ変換器５４は、一般的な１６ｋＨｚ／１６ビットで各マイクロホンの出力をＡ／Ｄ変換する。
【００２９】
固有ベクトル算出部６０は、Ａ／Ｄ変換器５４の出力する１４個のデジタル音源信号を４ミリ秒のフレーム長でフレーム化するためのフレーム化処理部８０と、フレーム化処理部８０の出力する１４チャンネルのフレーム化された音源信号に対してそれぞれＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）を施し、所定個数の周波数領域（以下、各周波数領域を「ビン」と呼び、周波数領域の数を「ビン数」と呼ぶ。）に変換して出力するＦＦＴ処理部８２と、ＦＦＴ処理部８２から４ミリ秒ごとに出力される各チャネルの各ビンの値を１００ミリ秒ごとにブロック化するためのブロック化処理部８４と、ブロック化処理部８４から出力される各ビンの値の間の相関を要素とする相関行列を所定時間ごと（１００ミリ秒ごと）に算出し出力する相関行列算出部８６と、相関行列算出部８６から出力される相関行列を固有値分解し、固有ベクトル９２をＭＵＳＩＣ処理部６２に出力する固有値分解部８８とを含む。なお本実施の形態では、音源信号の周波数成分のうち、空間的分解能が低い１ｋＨｚ以下の帯域と、空間的エイリアシングが起こり得る６ｋＨｚ以上の帯域を除外する。
【００３０】
通常、ＦＦＴでは５１２〜１０２４点を使用する（１６ｋＨｚのサンプリングレートで３２〜６４ミリ秒に相当）が、ここでは１フレームを４ミリ秒（ＦＦＴでは６４〜１２８点に相当）とした。このようにフレーム長を短くすることにより、ＦＦＴの計算量が少なくてすむだけでなく、後の相関行列の算出、固有値分解、及びＭＵＳＩＣ応答の算出における計算量も少なくて済む。その結果、性能を落とすことなく、比較的非力なコンピュータを用いても十分にリアルタイムで音源定位を行なうことができる。
【００３１】
ＭＵＳＩＣ処理部６２は、マイクロホンアレイ５２に含まれる各マイクロホンの位置を所定の座標系を用いて表す位置ベクトルを記憶するための位置ベクトル記憶部１００と、位置ベクトル記憶部１００に記憶されているマイクロホンの位置ベクトル、及び固有値分解部８８から出力される固有ベクトルを用いて、音源数が固定されているものとしてＭＵＳＩＣ法によりＭＵＳＩＣ空間スペクトルを算出し出力するＭＵＳＩＣ空間スペクトル算出部１０４とを含む。ブロックごとに得られる相関行列の固有値が音源数に関連することは、例えばＦ．アサノら、「リアルタイム音源定位及び生成システムと自動音声認識におけるその応用」、Ｅｕｒｏｓｐｅｅｃｈ，２００１、アールボルグ、デンマーク、２００１、１０１３−１０１６頁（F.  Asano,  M.  Goto,  K.  Itou,  and  H.  Asoh,  “Real-time  sound  source  localization  and  separation  system  and  its  application  on  automatic  speech  recognition,”  in  Eurospeech  2001,  Aalborg,  Denmark,  2001,  pp.  1013-1016）にも記載されており、既に知られている事項である。
【００３２】
なお、本実施の形態では、各音源の２次元的な方位角だけでなく、仰角も推定する。そのために、ＭＵＳＩＣアルゴリズムの３次元版（付録を参照）を実装した。方位角と仰角とのセットを、これ以降、音源方位（ＤＯＡ）と呼ぶ。このアルゴリズムでは、音源までの距離は推定しない。音源方位のみを推定するようにすることで、処理時間を大幅に減少させることができる。
【００３３】
ＭＵＳＩＣ処理部６２はさらに、ＭＵＳＩＣ空間スペクトル算出部１０４により算出されたＭＵＳＩＣ空間スペクトルに基づいて、ＭＵＳＩＣ法にしたがいＭＵＳＩＣ応答と呼ばれる値を各方位（後述する。）について算出し出力するためのＭＵＳＩＣ応答算出部１０６を含む。
【００３４】
ここでいう「方位」とは、音源位置を探索するために３次元空間に定義されたメッシュの各枠のことをいう。このメッシュは、以下の実施の形態では、仰角５度の範囲で空間を輪状に区切り、仰角の大きさにより異なる数の探索点を設けた。ここでいう「探索点」とは、上記したメッシュの中央の点のことをいう。
【００３５】
探索点の数は、仰角が０度の輪においては隣接する探索点への方向角が５度となるように選ばれている。探索点の数は仰角が０度の輪で最大であり、仰角が大きくなるにつれて少なくなる。この際、一つの輪内の探索点の間の距離（角度と考えてもよい。）は互いに等しく、その距離（角度）は仰角が０度の輪における隣接する探索点同士の距離（角度）とできるだけ近くなるように選ばれている。
【００３６】
音源推定部６４は、ＭＵＳＩＣ応答算出部１０６により算出されたＭＵＳＩＣ応答のピークを、一時的に時系列に所定数だけＦＩＦＯ形式で蓄積するためのバッファ１０８と、バッファ１０８に蓄積された各ブロックの各探索点のＭＵＳＩＣ応答について、移動平均を算出し平滑化することでノイズを除去するための平滑化フィルタ部１１０と、平滑化フィルタ部１１０の出力する各ブロックの各探索点のＭＵＳＩＣ応答の値に基づき、各探索点におけるＭＵＳＩＣ応答の、前ブロックのＭＵＳＩＣ応答との差（ＭＵＳＩＣΔパワー）を算出するためのＭＵＳＩＣΔスペクトログラム算出部１１２とを含む。ＭＵＳＩＣΔスペクトログラム算出部１１２は、具体的には以下のようにしてＭＵＳＩＣΔパワーを算出する。すなわち、探索点の各々につき、現ブロックのＭＵＳＩＣパワーの値と、その探索点に隣接する全ての点における、前ブロックのＭＵＳＩＣパワーとの間の差を取る。その差の最小値をその探索点におけるＭＵＳＩＣΔパワーとする。なお、ここでは、時系列として、各方位について算出されるＭＵＳＩＣパワーをＭＵＳＩＣスペクトログラムと呼び、各方位について上のように算出された値の時系列をＭＵＳＩＣΔスペクトログラムと呼んでいる。
【００３７】
音源推定部６４はさらに、平滑化フィルタ部１１０から出力される、平滑化された各ブロックのＭＵＳＩＣ応答を使用して、音源が音の発生を開始した方位（音源が音声の発生活動を開始したことをオンセットと呼ぶ。）を検出する処理と、音源からの音の発生が停止した方位及び時刻（音源による音の発生の停止をオフセットと呼ぶ。）を検出する処理とを行ない、オンセット及びオフセットの発生方位を出力するためのオンセット・オフセット検出部１１４と、ＭＵＳＩＣΔスペクトログラム算出部１１２の出力するＭＵＳＩＣΔパワーと、オンセット・オフセット検出部１１４からのオンセット検出出力及びオフセット検出出力に応答して、音源のオンセットからオフセットまでをトラッキングするためのトラッキング部１１８と、ＭＵＳＩＣΔスペクトログラム算出部１１２、オンセット・オフセット検出部１１４及びトラッキング部１１８がそれぞれの処理に使用する、各探索点の位置、及び、各探索点に隣接する、探索対象となる探索点に関する情報を記憶するための探索点記憶部１１６とを含む。
【００３８】
なお、各音源からの音声信号のパワーを算出するに先立って、音声信号に対してチャンネル間スペクトルバイナリマスキング処理を行なう。これは、２つのチャンネル間において、パワーの大きな方の信号を残し、他方のチャンネルの信号はゼロにする、という処理である。こうすることにより、チャンネル間の干渉リークを削減することができる。また、マイクロホンアレイ５２のうち、中央に位置するマイクロホンＭＣ１からの音声信号を用い、全ての音声信号から周囲の音楽による雑音を除去する処理を行なう。
【００３９】
［コンピュータによる実現］
上記した音源定位処理部５０は、実際にはコンピュータハードウェアと、当該コンピュータハードウェアにより実行されるコンピュータプログラムとにより、ハードウェアとソフトウェアとの協働により実現される。以下、音源定位処理部５０の中でも、本実施の形態の特徴となる音源推定部６４の機能を実現するためのコンピュータプログラムの制御構造について説明する。
【００４０】
図４を参照して、音源推定部６４の機能を実現するためのプログラムは、ロボットの電源投入後、初期化を行なうステップ１３０と、ＭＵＳＩＣ応答算出部１０６からバッファ１０８を介して処理対象となるブロックのＭＵＳＩＣ応答を受信するステップ１３２と、処理対象のブロックのＭＵＳＩＣ応答に対する移動平均をとることにより、ＭＵＳＩＣ応答からノイズを除去するための平滑化処理を行なうステップ１３４と、全ての探索点について、ＭＵＳＩＣΔパワー（ＭＵＳＩＣΔスペクトログラム）を算出するステップ１３６と、ステップ１３６で各方位について算出されたＭＵＳＩＣΔパワー、及びＭＵＳＩＣパワーに基づいて、音源の発生（オンセット）を検出するステップ１３８と、ステップ１３８で検出された音源をトラッキングし、処理をステップ１３２に戻すステップ１４０とを含む。なお、全ての探索点の識別子とその方位、並びにその探索点に隣接する探索点の識別子は、図３に示す探索点記憶部１１６に記憶されている。
【００４１】
既に述べたとおり、ステップ１３６におけるＭＵＳＩＣΔスペクトルの算出にあたっては、各探索点について、現ブロックのＭＵＳＩＣパワーと、その探索点に隣接する探索点の各々の前ブロックのＭＵＳＩＣパワーとの差を算出し、その中の最小値を採用することで、各探索点について、ブロックごとにＭＵＳＩＣΔパワーが算出される。
【００４２】
図５を参照して、図４のステップ１３８で実行されるオンセット検出処理は、トラッキングの対象となっている探索点以外の各探索点について、以下に述べるステップ１６２，１６４，１６６及び１６８を実行するステップ１６０を含む。
【００４３】
ステップ１６０の処理は、その探索点について図４のステップ１３４で算出されたＭＵＳＩＣΔパワーの値が１．０ｄＢより大きいか否かを判定し、ＭＵＳＩＣΔパワーの値が１．０ｄＢ以下の場合にはその探索点に関する処理を終了するステップ１６２と、ステップ１６２でその探索点のＭＵＳＩＣΔパワーの値が１．０ｄＢより大きいと判定されたときに実行され、その探索点のＭＵＳＩＣパワーの値が１．８ｄＢより大きいか否かを判定し、ＭＵＳＩＣパワーの値が１．８ｄＢ以下の場合にはこの探索点に関する処理を終了するステップ１６４と、ステップ１６４でＭＵＳＩＣパワーの値が１．８ｄＢより大きいと判定されたときに実行され、この探索点をオンセット候補として一旦その探索点の識別子を記憶するステップ１６６と、ステップ１６６に続き、この探索点のＭＵＳＩＣパワーをこの音源のトラッキングのオンセットＭＵＳＩＣパワーとして記憶してこの探索点に対する処理を終了するステップ１６８とを含む。なお、ステップ１６６では、予め準備したオンセット候補数を示す変数に１が加算される。
【００４４】
オンセット検出処理はさらに、ステップ１６０において全ての探索点についてオンセット候補か否かが判定された後に実行され、オンセット候補数が０か否かを判定し、オンセット候補数が０のときには現ブロックに対するオンセット検出処理を終了するステップ１７０と、ステップ１７０でオンセット候補数が０ではないと判定されたことに応答して実行され、オンセット候補のうち、ＭＵＳＩＣパワーの値が最大のものからＭＵＳＩＣパワーの値の順番で２個までをこのブロックにおけるオンセットとして選択するステップ１７２と、ステップ１７２において選択された最大２個のオンセットの各々に対し、新たにトラッキング用のリストを準備し、各々の先頭要素にオンセットＭＵＳＩＣパワーなど、オンセットとなった探索点に関する情報を格納してオンセット検出処理を終了するステップ１７４とを含む。ここで新たに作成されたトラッキングリストの全てが、以後のトラッキングの対象となる。各トラッキングリストの先頭要素には、トラッキングの終了フラグを格納する領域が設けられ、その値が０に設定される。トラッキングの終了フラグとは、そのトラッキングリストに対応する音源のトラッキングが終了したか否かを示すフラグである。トラッキングの終了フラグは、その値が０であればそのリストに対するトラッキングが実行中であることを示し、その値が９であればそのリストに対するトラッキングが終了した（音源からの音の発生が終了した）ことを示す。
【００４５】
図６を参照して、図４のステップ１４０で実行されるトラッキング処理は、トラッキングリストの各々について、以下に説明するステップ２０２─２１４を実行するステップ２００を含む。
【００４６】
ステップ２００において、各トラッキングリストについて実行される処理は、対象となるトラッキングリストについてのトラッキングの終了フラグが０か否かを判定し、終了フラグが０でないときにはこのトラッキングリストに対する処理を終了するステップ２０２と、ステップ２０２でこのトラッキングの終了フラグが０と判定されたときに実行され、トラッキングリストの末尾の探索点（前ブロックで検出された音源の方位を示す。）の周囲の探索点の全てについて、算出済のＭＵＳＩＣパワーを記憶装置から読出すステップ２０４と、読出されたＭＵＳＩＣパワーのうち最大のものに対応する探索点を、このトラッキングリストの末尾に追加するステップ２０６とを含む。
【００４７】
ステップ２００の処理はさらに、ステップ２０６に続き、対象となっているトラッキングリストについてオフセット検出処理を実行するステップ２０８と、ステップ２０８に続き、オフセット検出処理によりオフセットフラグに設定された値が０か否かを判定して判定結果により制御の流れを分岐させるステップ２１０とを含む。オフセットフラグは、０のときこのトラッキングリストに対応する音源について、音の発生が停止したと判定されたときには９となり、それ以外のとき、すなわち引続き音源があると判定されたときには０に設定される。
【００４８】
ステップ２００で実行される処理はさらに、ステップ２１０においてオフセットフラグの値が０でないと判定されたときに実行され、ステップ２０８のオフセット検出処理の結果、５ブロック続いてオフセットフラグが０以外の値に設定されたか否かを判定し、５ブロックに達していないときには何もせず処理対象のトラッキングリストに対する処理を終了するステップ２１２と、ステップ２１２において、５ブロック連続してこのトラッキングリストについてオフセットフラグが０でなかったと判定されたことに応答して実行され、このトラッキングリストの終了フラグをセット（終了フラグの値を９に設定）してこのトラッキングリストに対する処理を終了するステップ２１４とを含む。
【００４９】
図７を参照して、図６のステップ２０８で実行されるオフセット検出処理は、対象となるトラッキングリストに最後に追加された探索点（図６のステップ２０６）について、そのＭＵＳＩＣΔパワーが−１．２ｄＢより小か否かを判定し、判定結果により制御の流れを分岐させるステップ２３０と、ステップ２３０でＭＵＳＩＣΔパワーが−１．２ｄＢより小であると判定されたときに実行され、このトラッキングリストのオフセットフラグを９に設定してオフセット検出処理を終了させるステップ２３６とを含む。
【００５０】
オフセット検出処理はさらに、ステップ２３０においてＭＵＳＩＣΔパワーの値が−１．２ｄＢ以上であると判定されたときに、オフセット検出のためのしきい値θＨ＝オンセットＭＵＳＩＣパワー＋α（α＞０）という式にしたがってオフセット検出のためのしきい値θＨを算出するステップ２３２と、トラキングリストに最後に追加された探索点（図６のステップ２０６）の現ブロックのＭＵＳＩＣパワーが上記したしきい値θＨより小さいか否かを判定し、もしも判定結果が肯定であれば制御をステップ２３６に進めるステップ２３４と、ステップ２３４での判定が否定であるときに、このトラッキングリストのオフセットフラグを０に設定してオフセット検出処理を終了するステップ２３８とを含む。
【００５１】
後述するように、オフセット検出において、トラッキング中の音源のＭＵＳＩＣパワーがオンセット時のパワーよりも小さくなったときではなく、オンセット時のパワー＋αよりも小さくなったときに強制的にオフセットとすることにより、音源のトラッキングの精度が高くなるという効果が得られる。
【００５２】
［動作］
上記実施の形態に係る音源定位処理部５０は以下のように動作する。マイクロホンアレイが図１及び図２に示すようにマイクロホン台３２を用いてロボット３０に装着されるものとする。
【００５３】
マイクロホンアレイ５２は音源からの音声を１４個のアナログ電気信号に変換し、Ａ／Ｄ変換器５４に与える。Ａ／Ｄ変換器５４は１６ｋＨｚでこれら信号を１６ビットのデジタル信号化し、１４個のデジタル信号をフレーム化処理部８０に与える。
【００５４】
フレーム化処理部８０は、４ミリ秒のフレーム長でこれら各チャンネルのデジタル音源信号をフレーム化し、ＦＦＴ処理部８２に与える。ＦＦＴ処理部８２は、各チャンネルの各フレームのデジタル音源信号に対してＦＦＴを施し、各周波数成分の出力に変換してブロック化処理部８４に与える。この間、音声信号に対して前述のチャンネル間スペクトルバイナリマスキング処理、及び中央に位置するマイクロホンＭＣ１からの音声信号を用い、全ての音声信号から周囲の音楽による雑音を除去する処理を行なう。
【００５５】
ブロック化処理部８４は、ＦＦＴ処理部８２から４ミリ秒ごとに出力される信号を１００ミリ秒ごとにブロック化し、相関行列算出部８６に与える。相関行列算出部８６はこれら各ブロックについて、チャンネル毎の相関行列を算出し、固有値分解部８８に与える。固有値分解部８８は、相関行列算出部８６により算出された相関行列に固有値分解を施し、ＭＵＳＩＣ空間スペクトル算出部１０４に与える。
【００５６】
ＭＵＳＩＣ空間スペクトル算出部１０４以下の処理は通常のＭＵＳＩＣ法の処理を３次元化したものである。まずＭＵＳＩＣ空間スペクトル算出部１０４は、位置ベクトル記憶部１００に記憶された位置ベクトルと、固有値分解部８８から出力される固有ベクトル９２とに基づき、音源数が固定したものとしてＭＵＳＩＣ空間スペクトルを１００ミリ秒ごとに算出しＭＵＳＩＣ応答算出部１０６に与える。ＭＵＳＩＣ応答算出部１０６はＭＵＳＩＣ空間スペクトルに基づき、１００ミリ秒ごとにＭＵＳＩＣ応答を算出しバッファ１０８に記憶させる。
【００５７】
バッファ１０８は、ＭＵＳＩＣ応答算出部１０６から出力されるＭＵＳＩＣ応答を時系列で、ＦＩＦＯ形式で所定数だけ蓄積する。
【００５８】
平滑化フィルタ部１１０は、バッファ１０８に記憶された各ブロックのＭＵＳＩＣ応答を読出し（図４のステップ１３２）、そのブロックのＭＵＳＩＣ応答について、所定ブロックにわたる移動平均をとり、平滑化されたＭＵＳＩＣパワーをＭＵＳＩＣΔスペクトログラム算出部１１２及びオンセット・オフセット検出部１１４に与える。
【００５９】
ＭＵＳＩＣΔスペクトログラム算出部１１２は、ブロックデータを受信すると（図４のステップ１３２）、各探索点について、現ブロックのＭＵＳＩＣパワーと、その探索点に隣接する探索点の各々の前ブロックのＭＵＳＩＣパワーとの差を算出し、その中の最小値を採用することで、各探索点について、ブロックごとにＭＵＳＩＣΔパワーを算出し（図４のステップ１３４）トラッキング部１１８に与える。オンセット・オフセット検出部１１４は、既に述べた構造のプログラム（図５及び図７）により実現され、平滑化フィルタ部１１０から出力される平滑化後のＭＵＳＩＣパワー及びＭＵＳＩＣΔパワーに基づいて、各ブロックにおいて音源のオンセット又はオフセットがあればそれらを検出し、トラッキング部１１８に与える。オンセット検出時にはその方位（探索点）も検出され、トラッキング部１１８に与えられる。
【００６０】
具体的には、オンセットの検出においては、図５のステップ１６２及び１６４により示されるように、各ブロックについて、ＭＵＳＩＣΔパワーが１．０ｄＢより大きく、かつＭＵＳＩＣパワーが１．８ｄＢより大きい探索点がオンセット候補となる。図５のステップ１７０−１７４により示されるように、各ブロックについてオンセット候補があるときには、上位から２個までがオンセットとして検出される。
【００６１】
オフセットの検出では、図７のステップ２３０─２３４により示されるように、トラッキングされた最後の探索点について、そのＭＵＳＩＣΔパワーが−１．２ｄＢより小さいときにはオフセットと判定されるが、それ以外にもＭＵＳＩＣパワーがその音源のオンセットＭＵＳＩＣパワー＋αよりも小さくなったときにも強制的にオフセットと判定する。
【００６２】
トラッキング部１１８は、オンセット・オフセット検出部１１４からオンセット検出信号が与えられると、音源のトラッキングを開始する。具体的には、トラッキング部１１８は、オンセット検出後、その音源位置の探索点に隣接する探索点のうち、ＭＵＳＩＣパワーが最大の探索点をトラッキングし（図６のステップ２０４─ステップ２０６）、オフセットが検出された時点でトラッキングを終了する。ただし、本実施の形態では、オフセットが発生した後、４ブロックまではトラッキングを継続し、５ブロック経過後もオンセット条件を満たす探索点がトラッキング方向に生じないときに初めてトラッキングを終了する（図６のステップ２１０，２１２及び２１４）。
【００６３】
トラッキング部１１８によってトラッキングされた音源方位はバッファ６６にブロックごとに蓄積される。
【００６４】
以上のような動作によって、音源定位処理部５０は継続的に複数個の音源の定位とトラッキングとを行なうことができる。
【００６５】
図８−図１０に、上記実施の形態に係る音源定位処理部５０について、その性能を測るために行なった実験の結果を示す。この実験では、音源（Ｄｉｒｅｃｔｉｏｎｓ  Ｏｆ  Ａｒｒｉｖａｌ）定位の性能を測るために、以下の値を用いる。第１はＤＯＡ精度、第２はＤＯＡ挿入率である。ＤＯＡ精度とは、上記した装置により、正しいＤＯＡが検出された率のことである。ＤＯＡ精度は高い方が好ましい。ＤＯＡ挿入率とは、正しいＤＯＡの数と比較して、ブロック当たりで余分に検出された音源数の平均値のことをいう。ＤＯＡ挿入率は低い方が好ましい。
【００６６】
正しいＤＯＡとしては、音源信号から得られた音源の活動を示す情報から、正しい音源数を使用して得られたＤＯＡを用いた。各音源が活動している間の、ＤＯＡの予測位置から得られる軌跡を区分線形近似で近似した。音源が移動しているか否かをチェックするため、ビデオ映像も利用した。
【００６７】
実験では、２つの異なった環境（ＯＦＣ、ＵＣＷ。これらについては後述する。）において、ヒューマノイド型ロボットに実装された音源定位処理部５０によるＤＯＡ予測を行ない、そのＤＯＡ精度とＤＯＡ挿入率とを求めた。図８−図１０はその結果を示している。これら環境は実験のための音声を収録した環境であり、具体的には以下のとおりである。
【００６８】
すなわち、マイクロホンアレイによるデータ収録を２つの異なった環境で行なった。１つ目はオフィス環境（Ｏｆｆｉｃｅ  Ｅｎｖｉｒｏｎｍｅｎｔ：ＯＦＣ）で、室内のエアコンとロボットの内部雑音が主な雑音源となる。２つ目の環境は、実験を行なった野外のショッピングモールの通路（Ｕｎｉｖｅｒｓａｌ  Ｃｉｔｙ  Ｗａｌｋ  Ｏｓａｋａ：ＵＣＷ）である。ＵＣＷでの主な雑音源は、天井に設置されているスピーカから流れてくるポップ・ロックミュージックである。通路内のさまざまな位置およびさまざまな向きにロボットを配置して実験用データ及び画像の収録を行なった。なお、図８−図１０において「ＯＦＣ３」など、「ＯＦＣ」又は「ＵＣＷ」の後に付加されている数字は、録音の順番を示す。
【００６９】
ＯＦＣでは、４つの参加者（４人の男性）を音源として用いた。最初に各参加者が１人ずつロボットに対して約１０秒間話しかけた。この間、他の参加者は静かにしていた。収録の最後の１５秒間では、４人の参加者が同時に発話した。録音時、各参加者はそれぞれ別々の音声キャプチャ装置に接続されたマイクロホンを着用していた。録音開始時の一時的な音を用いて、これら参加者の発話を録音したものとマイクロホンアレイ５２からの音声信号の録音とを人手により同期させた。
【００７０】
ＵＣＷでは、全ての録音には２人の参加者（いずれも男性）を音源として用いた。実験では、いずれの場合も、最初に各参加者が１０秒程度順番に別々に話し、最後に同時に発話を行なった。ＵＣＷ７及びＵＣＷ８では１人の参加者が移動、別の参加者が静止しながら、ほぼ全ての時間にわたり２人が共に発話していた。ＵＣＷ１−４及びＵＣＷ９では、ロボットは天井のスピーカから遠く離れた位置に配置された。ＵＣＷ５−８では、ロボットをスピーカの近く（数メートル）に配置した。ＵＣＷ１０−１３では、ロボットをスピーカの直下に配置した。
【００７１】
全ての試行において、ロボットを様々な方向に向け、音源を様々な位置に配置してデータの取得を行なった。
【００７２】
図８は、ＯＦＣ及びＵＷＣ環境において、音源定位に関するパラメータのいくつかを変えて行なった試行でのＤＯＡ予測の性能（精度及び挿入率）を示す。変更されたパラメータは、平滑化フィルタ部１１０の有無、オフセット検出時のしきい値θＴＨに加算される値αの有無、ブロック当たりのオンセット数の制限の有無、及びトラッキングの前後、である。
【００７３】
ＭＵＳＩＣスペクトログラムの算出で使用したパラメータの値は以下のとおりである。すなわち、ＮＦＦＴ（ＦＦＴ長）＝６４、周波数範囲＝１−６ｋＨｚ、ＭＵＳＩＣ空間スペクトル算出部１０４における固定音源数＝２、である。ＮＦＦＴの値を大きくすると性能は多少高くなるが、ＮＦＦＴ＝６４とすると動作クロック周波数２ＧＨｚ程度の市販のＣＰＵを使用してもリアルタイムで動作できるため、この値を使用した。
【００７４】
図８の左側に、各実験条件とＯＦＣ及びＵＣＷの各々とにおける、音源に関する平均のＤＯＡ精度を示し、図９の中央にＤＯＡ挿入率を示した。
【００７５】
これらのグラフから、「αなし」とした場合のＤＯＡ精度が最も高いことが分かる。しかしこの場合にはまた、ＤＯＡ挿入率が最も悪い。「平滑化なし」、「オンセット数制限なし」、及び「トラッキング前」について得られたＤＯＡ精度は互いによく似ている。しかし、「トラッキング前」ではＤＯＡ挿入率が低下していることが明確に見て取れる。これは、平滑化及び１ブロック当たりのオンセット数の制限が有効であることを示している。「トラッキング前」及び「トラッキング後」を比較すると、ＵＣＷ３−６及びＵＣＷ１０−１１においてＤＯＡ精度にやや改善が見られるのに対し、ＵＣＷ８−９ではＤＯＡ挿入率に非常に小さな改善しか見られないことが分かる。
【００７６】
環境音楽についてのＤＯＡ精度の結果を、図８の右側に示す。この結果によれば、ＵＣＷ１−４及びＵＣＷ７−９においてＤＯＡ精度が低いことが分かる。これはロボットがスピーカから比較的遠くに配置されていたためであろう。ＵＣＷ１０−１３ではＤＯＡ精度は１００％に近い。これらの実験条件では、ロボットがスピーカの直下に配置されていて、背景音楽が明確に指向性を持った音源として検知されたためである。これに対し、ロボットがスピーカにほど近い位置に置かれたＵＣＷ５−６では、ＤＯＡ精度は中間の値となっている。
【００７７】
各音源についての性能を検討すると、図９から、ＯＦＣ２の第２及び第４の音源、ＵＣＷ９の１番目の音源、及びＵＣＷ１２の２番目の音源のＤＯＡ精度が低くなっている。これらの環境では、音源からの音声がロボットの背後にあったため、ロボットの前方からの音声では、パワー及び指向性の双方ともが低かったためと思われる。
【００７８】
上記実施の形態に係る音源定位処理部５０によれば、ＭＵＳＩＣ応答の生データを用いて音源定位を行なっている。実験結果からも明らかなように、このような処理により、高い精度で音源数を予測し、トラッキングすることができる。また、オフセット検出のためのしきい値として、オンセット時のＭＵＳＩＣパワーの値にαを加算することで、オンセット時のＭＵＳＩＣパワーよりＭＵＳＩＣパワーが多少高くても、オフセットを検出したものと見なすことができ、その結果、ＤＯＡの後挿入の頻度を下げることができる。その結果、ＭＵＳＩＣ法による音源定位を安定して精度高く行なうことができる。背景雑音の発生源が音源定位処理部５０のすぐ近くにあるような場合には、精度は低下するが、実際のロボットの実装では、音声だけではなく画像を使用して音源が対話相手か否かを予測することもでき、精度の低下を防止することが期待できる。
【００７９】
さらに、本実施の形態では３次元ＭＵＳＩＣ法を用いているため、方位角だけではなく、ある範囲で仰角を含めて音源方位を推定することができる。そのため、実環境でさまざまな方向から音声を受ける環境でもロボットなどが正しく音源を定位して適切な動作を行なうことが可能になる。ロボットが人間とのインタラクションを行なう場合でも、相手の顔を見つめながら適切な動作を行なうことが期待でき、ロボットと人間とのインタラクションをよりスムーズなものとすることができる。
［コンピュータによる実現］
この実施の形態に係る音源定位処理部５０は、コンピュータハードウェアと、そのコンピュータハードウェアにより実行されるプログラムと、コンピュータハードウェアに格納されるデータとにより実現することができる。図１１はこのコンピュータシステム３３０の内部構成を示す。
【００８０】
図１１を参照して、このコンピュータシステム３３０は、リムーバブルメモリの着脱部であるメモリポート３７０およびＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）ドライブ３６４を有するコンピュータ３４０と、キーボード３４６と、マウス３４８と、モニタ３４２とを含む。
【００８１】
コンピュータ３４０は、メモリポート３７０およびＤＶＤドライブ３６４に加えて、ＣＰＵ（中央処理装置）３５６と、ＣＰＵ３５６、メモリポート３７０およびＤＶＤドライブ３６４が接続されたバス３６６と、バス３６６に接続され、ブートアッププログラム等を記憶する読出専用メモリ（ＲＯＭ）３５８と、バス３６６に接続され、プログラム命令、システムプログラム、および作業データ等を一時的に記憶するランダムアクセスメモリ（ＲＡＭ）３６０と、バス３６６に接続され、大量のデータを記憶する不揮発性記憶装置であるハードディスク３６２と、バス３６６に接続され、Ａ／Ｄ変換器５４からの出力を受ける入出力インタフェース（Ｉ／Ｆ）３６８と、無線によりローカルエリアネットワーク（ＬＡＮ）への接続を提供する無線ネットワークＩ／Ｆ３７２とを含む。
【００８２】
コンピュータシステム３３０に音源定位処理部５０として機能させるためのコンピュータプログラムは、ＤＶＤドライブ３６４またはメモリポート３７０に挿入されるＤＶＤ３９０またはリムーバブルメモリ３９２に記憶され、さらにハードディスク３６２に転送される。または、プログラムは図示しないネットワークを通じてコンピュータ３４０に送信されハードディスク３６２に記憶されてもよい。プログラムは実行の際にＲＡＭ３６０にロードされる。ＤＶＤ３９０から、リムーバブルメモリ３９２から、またはネットワークを介して、直接にＲＡＭ３６０にプログラムをロードしてもよい。
【００８３】
このプログラムは、コンピュータ３４０にこの実施の形態の音源定位処理部５０として動作を行なわせる複数の命令を含む。この動作を行なわせるのに必要な基本的機能のいくつかはコンピュータ３４０上でオペレーティングシステム（ＯＳ）が動作しているときにはＯＳにより提供されることもある。それら機能はサードパーティのプログラム、またはコンピュータ３４０にインストールされる各種ツールキットのモジュールにより提供されることもある。従って、このプログラムはこの実施の形態のシステムおよび方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能または「ツール」を呼出すことにより、上記した音源定位処理部５０としての動作を実行する命令のみを含んでいればよい。コンピュータシステム３３０の動作は周知であるので、ここでは繰返さない。
【００８４】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味および範囲内でのすべての変更を含む。
【００８５】
［付録：ＭＵＳＩＣ法］
Ｍ個のマイク入力のフーリエ変換Ｘｍ（ｋ、ｔ）は、式（１）のようにモデル化される。
【００８６】
【数１】
2011220701.tif 000003
ただし、ベクトルｓ（ｋ、ｔ）はＮ個の音源のスペクトルＳｎ（ｋ，ｔ）から成る：ｓ（ｋ、ｔ）＝［Ｓ１（ｋ，ｔ），…，ＳＮ（ｋ、ｔ）］Ｔ。ｋとｔはそれぞれ周波数と時間フレームのインデックスを示す。ベクトルｎ（ｋ、ｔ）は背景雑音を示す。行列Ａｋは変換関数行列であり、その（ｍ、ｎ）要素はｎ番目の音源から、ｍ番目のマイクロホンへの直接パスの変換関数である。Ａｋのｎ列目のベクトルをｎ番目の音源の位置ベクトル（Ｓｔｅｅｒｉｎｇ  Ｖｅｃｔｏｒ）と呼ぶ。
【００８７】
まず、式（２）で定義される空間相関行列Ｒｋを求め、式（３）に示すＲｋの固有値分解により、固有値の対角行列Λｋ及び固有ベクトルから成るＥｋが求められる。
【００８８】
【数２】
2011220701.tif 000004
固有ベクトルはＥｋ＝［Ｅｋｓ｜Ｅｋｎ］のように分割出来る。ＥｋｓとＥｋｎとはそれぞれ支配的なＮ個の固有値に対応する固有ベクトルと、それ以外の固有ベクトルとを示す。
【００８９】
ＭＵＳＩＣ空間スペクトルは式（４）と（５）とで求める。ｒは距離、θとφとはそれぞれ方位角と仰角とを示す。式（５）は、スキャンされる点（ｒ、θ、φ）における正規化した位置ベクトルである。
【００９０】
【数３】
2011220701.tif 000005
空間スペクトル（本明細書では「ＭＵＳＩＣ応答」と呼ぶ。）は、ＭＵＳＩＣ空間スペクトルを式（６）のように平均化したものである。
【００９１】
【数４】
2011220701.tif 000006
式（６）においてｋＬ及びｋＨは、それぞれ周波数帯域の下位と上位の境界のインデックスであり、Ｋ＝ｋＨ−ｋＬ＋１。音源の方位は、ＭＵＳＩＣ応答のピークから求められる。
【符号の説明】
【００９２】
３０  ロボット
３２  マイクロホン台
５０  音源定位処理部
５２  マイクロホンアレイ
６０  固有ベクトル算出部
６２  ＭＵＳＩＣ処理部
６４  音源推定部
８６  相関行列算出部
８８  固有値分解部
１０４  ＭＵＳＩＣ空間スペクトル算出部
１０６  ＭＵＳＩＣ応答算出部
１１０  平滑化フィルタ部
１１２  ＭＵＳＩＣΔスペクトログラム算出部
１１４  オンセット・オフセット検出部
１１８  トラッキング部
【図１】
2011220701.tif 000007
【図２】
2011220701.tif 000008
【図３】
2011220701.tif 000009
【図４】
2011220701.tif 000010
【図５】
2011220701.tif 000011
【図６】
2011220701.tif 000012
【図７】
2011220701.tif 000013
【図８】
2011220701.tif 000014
【図９】
2011220701.tif 000015
【図１０】
2011220701.tif 000016
【図１１】
2011220701.tif 000017