(57)【要約】【課題】音声信号の音源方向が変化した場合でも音声を認識することができるようにしたロボットを提供すること。【解決手段】ロボット本体を制御するロボット制御部２０は、音声検出部Ｆ１による音声信号の検出状態に基づいて、音声信号の音源の方向を判定する音源方向判定部Ｆ３と、指定された方向を強調した音声データを生成する音声データ強調部Ｆ４と、強調された音声データを音声認識し、認識結果を出力する音声認識部Ｆ５と、を備える。音声認識部が音声データの音声認識処理中に、新たな音源の方向が検知された場合、音声認識部による処理中の第１の音声認識処理により処理された音声データの一部を含むようにして、新たな音源方向の音声信号を強調した音声データを音声データ強調部により生成させ、新たな音源方向の音声信号を強調した音声データを音声認識部により再度音声認識させる。【選択図】図１
2020122861.tif 000002
【特許請求の範囲】
【請求項１】
音声信号を検出する音声検出部を有するロボット本体と、
前記ロボット本体を制御するロボット制御部とを有し、
前記ロボット制御部は、
前記音声検出部による音声信号の検出状態に基づいて、前記音声信号の音源の方向を判定する音源方向判定部と、
指定された方向の音声信号を強調した音声データを生成する音声データ強調部と、
前記強調された音声データを音声認識し、認識結果を出力する音声認識部と、
を備え、
前記音声認識部が音声データの音声認識処理中に、新たな音源の方向が検知された場合には、前記音声認識部による処理中の音声認識処理である第１の音声認識処理により処理された音声データの一部を含むようにして、前記新たな音源方向の音声信号を強調した音声データを前記音声データ強調部により生成させ、前記新たな音源方向の音声信号を強調した音声データを前記音声認識部により再度音声認識させる、
ロボット。
【請求項２】
前記ロボット制御部は、前記音声認識部が音声データの音声認識処理中に、新たな音源の方向が検知された場合には、前記第１の音声認識処理を停止させ、前記新たな音源方向を判定したときから所定の期間だけ時間を遡った起点からの音声データをメモリから読み出して前記音声データ強調部へ入力させることにより、前記新たな音源方向の音声信号を強調した所定の音声データを再生成させ、前記再生成された所定の音声データについて前記音声認識部により第２の音声認識処理を実行させる、
請求項１に記載のロボット。
【請求項３】
前記音声認識部は、前記再生成された所定の音声データを前記第２の音声認識処理により音声認識した後、前記新たな音源方向が判定されたとき以降に前記音声データ強調部により強調された音声データを第３の音声認識処理により音声認識する、
請求項２に記載のロボット。
【請求項４】
前記所定の期間の起点は、前記新たな音源方向が判定されたときから所定の時間だけ遡った時点に設定される、
請求項２に記載のロボット。
【請求項５】
前記所定の期間の起点は、前記音声検出部により検出された音声信号の立ち上がり状態に基づいて設定される、
請求項２に記載のロボット。
【請求項６】
前記ロボット制御部は、前記第２の音声認識処理の認識結果と、前記第３の音声認識処理の認識結果とを統合して出力する、
請求項３に記載のロボット。
【請求項７】
前記ロボット制御部は、前記ロボット本体の所定部位を動かした場合に、前記音源方向判定部による判定結果をリセットさせる、
請求項１に記載のロボット。
【請求項８】
音声信号を検出する音声検出部を有するロボット本体を制御するロボット制御部により音声を処理する方法であって、
前記音声検出部による音声信号の検出状態に基づいて、前記音声信号の音源の方向を判定するステップと、
音声データの音声認識処理中に、新たな音源の方向が検知された場合には、処理中の音声認識処理である第１の音声認識処理により処理された音声データの一部を含むようにして、前記新たな音源方向の音声信号を強調した音声データを生成するステップと、
前記新たな音源方向の音声信号が強調された音声データを再度音声認識するステップとを、実行する
ロボットの音声処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットおよびロボットの音声処理方法に関する。
【背景技術】
【０００２】
人と対話しながら動作を行うコミュニケーションロボットでは、任意の方向からの音声を精度よく音声認識できることが望ましい。任意の方向からの音声を認識する方法として、マイクロフォンアレイで取得した音声信号から音声到来方向を推定し、音声到来方向を強調した音声信号に基づいて音声認識する方法が知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−３６６１９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来技術では、音声の到来方向が判明した後に、音声到来方向からの信号を強調する処理を実施するため、音声到来方向が判明する前に取得した音声信号と判明直後に取得した音声信号とについては、適正な方向を強調することができない。したがって、従来技術では、音声到来方向を判別する前後の部分での音声認識率は低くなる傾向がある。そして、単語または文の先頭を音声認識できない場合、その単語または文の全体が認識できなくなる場合もある。
【０００５】
このように、音声到来方向の判別直後から、音声到来方向を強調した音声信号を音声認識しても、音声到来方向を検知する直前の音声信号の部分は、適正な方向が強調されていないため、精度よく音声認識することができない。結果として、音声到来方向を検知する直前の音声信号に続く部分も正確に音声認識するのは難しくなる。このため、ロボットの横方向に居る話者からの発話を、精度よく音声認識できず、ロボットのコミュニケーション能力が低下する。
【０００６】
本発明は上述の課題に鑑みてなされたもので、その目的は、音声信号の音源方向が変化した場合でも音声を認識することができるようにしたロボットおよびロボットの音声処理方法を提供することにある。本発明のさらなる目的は、十分なコンピュータリソースを実装できない場合でも任意の方向からの音声を精度よく音声認識できるようにしたロボットおよびロボットの音声処理方向を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一つの観点に係るロボットは、音声信号を検出する音声検出部を有するロボット本体と、ロボット本体を制御するロボット制御部とを有し、ロボット制御部は、音声検出部による音声信号の検出状態に基づいて、音声信号の音源の方向を判定する音源方向判定部と、指定された方向の音声信号を強調した音声データを生成する音声データ強調部と、強調された音声データを音声認識し、認識結果を出力する音声認識部と、を備え、音声認識部が音声データの音声認識処理中に、新たな音源の方向が検知された場合には、音声認識部による処理中の音声認識処理である第１の音声認識処理により処理された音声データの一部を含むようにして、新たな音源方向の音声信号を強調した音声データを音声データ強調部により生成させ、新たな音源方向の音声信号を強調した音声データを音声認識部により再度音声認識させる。
【０００８】
ロボット制御部は、音声認識部が音声データの音声認識処理中に、新たな音源の方向が検知された場合には、第１の音声認識処理を停止させ、新たな音源方向を判定したときから所定の期間だけ時間を遡った起点からの音声データをメモリから読み出して音声データ強調部へ入力させることにより、新たな音源方向の音声信号を強調した所定の音声データを再生成させ、再生成された所定の音声データについて音声認識部により第２の音声認識処理を実行させてもよい。
【０００９】
音声認識部は、再生成された所定の音声データを第２の音声認識処理により音声認識した後、新たな音源方向が判定されたとき以降に音声データ強調部により強調された音声データを第３の音声認識処理により音声認識してもよい。
【００１０】
所定の期間の起点は、新たな音源方向が判定されたときから所定の時間だけ遡った時点に設定してもよい。
【００１１】
所定の期間の起点は、音声検出部により検出された音声信号の立ち上がり状態に基づいて設定されてもよい。
【００１２】
ロボット制御部は、第２の音声認識処理の認識結果と、第３の音声認識処理の認識結果とを統合して出力してもよい。
【００１３】
ロボット制御部は、ロボット本体の所定部位を動かした場合に、音源方向判定部による判定結果をリセットさせることもできる。
【００１４】
本発明の他の一つの観点に従うロボットの音声処理方法は、音声信号を検出する音声検出部を有するロボット本体を制御するロボット制御部により音声を処理する方法であって、音声検出部による音声信号の検出状態に基づいて、音声信号の音源の方向を判定するステップと、音声データの音声認識処理中に、新たな音源の方向が検知された場合には、処理中の音声認識処理である第１の音声認識処理により処理された音声データの一部を含むようにして、新たな音源方向の音声信号を強調した音声データを生成するステップと、新たな音源方向の音声信号が強調された音声データを再度音声認識するステップとを、実行する。
【図面の簡単な説明】
【００１５】
【図１】本実施形態に係るロボットの全体概要を示す説明図。
【図２】ロボット制御部の構成例を示す説明図。
【図３】音声処理のタイミングチャート。
【図４】音声信号処理部の回路図。
【図５】音声処理のフローチャート。
【図６】音声処理と回路との関係を示す説明図。
【図７】第２実施例に係り、音声データの立ち上がり状態に基づいて音声データを再生成する起点を決定する様子を示す説明図。
【発明を実施するための形態】
【００１６】
本実施形態では、以下に述べる通り、十分なコンピュータリソースを実装できない小型かつ安価なロボット１でも実装可能な、任意の方向からの音声を高精度に音声認識する方法を説明する。特に、本実施形態では、音声到来方向（音源方向）が変化した際の最初の発話も、高精度に音声認識できる方法を開示する。
【００１７】
本実施形態では、音声認識（第１の音声認識処理）の処理中に、音声の到来する方向である音源方向が変化すると、処理中の音声認識を停止し、音源方向変化時の音声について強調する音源方向を修正した音声データを再生成し、音声認識（第２の音声認識処理）をやり直す。本実施形態では、このやり直された音声認識の結果と、音源方向の変化が検知されてからの音声認識（第３の音声認識処理）の結果とを統合して出力する。
【００１８】
これにより、本実施形態によれば、ロボット１が正面のユーザとの会話中に、ロボット１の側方に位置する他のユーザから話しかけられて音源方向が変化すると、新たな音源方向からの音声を強調させた音声データを再生成することにより、会話の変化した出だし部分を再度音声認識する。これにより、新たな音源方向から話しかけてくる他のユーザとのコミュニケーションを円滑に行うことができる。
【００１９】
図１の全体概要図に示すように、ロボット１は、例えば、ロボット本体１０と、ロボット本体１０を制御するロボット制御部２０とを備える。ロボット本体１０は、ユーザが親しみやすいように、例えば人型に形成されるが、これに限らず、猫、犬、うさぎ、熊、象、キリン、ラッコなどの動物形状に形成してもよいし、ひまわり、バラ、チューリップ、サボテンなどの草花形状に形成してもよい。さらには、ロボット本体１０は、怪獣、宇宙人、円柱または半球のような幾何学的形状に形成されてもよい。
【００２０】
ロボット本体１０は、例えば胴体１１と、頭部１２と、両腕部１３と、両脚部１４を備える。頭部１２、両腕部１３および両脚部１４は、アクチュエータ２３０（図２で後述）により動作する。例えば、頭部１２は、上下左右に回動可能である。両腕部１３は上げ下げしたり、前後に動かしたりできる。両脚部１４は、膝の折り曲げなどができ、歩行することができる。
【００２１】
ロボット制御部２０は、ロボット本体１０の内部に設けられている。ロボット制御部２０の全機能をロボット本体１０内に設けてもよいし、一部の機能をロボット本体１０の外部の装置、例えば、通信ネットワーク上のコンピュータなどに設けてもよい。
【００２２】
ロボット制御部２０は、図２で後述するようにマイクロコンピュータシステムを利用して構成されており、音声検出部Ｆ１、音声データ記憶部Ｆ２、音源方向判定部Ｆ３、指向性音声データ生成部Ｆ４、音声認識部Ｆ５、対話制御部Ｆ６、機体制御部Ｆ７といった各機能を実現する。これら機能Ｆ１〜Ｆ７については後述する。これら機能Ｆ１〜Ｆ７以外の機能（例えば画像処理機能など）もロボット１は備えることができるが、図１では省略している。
【００２３】
ロボット制御部２０は、頭部１２に搭載したマイクロホン２３１（以下、マイク２３１）やスピーカ２３３（図２参照）などを用いて、ユーザと対話する。ロボット制御部２０は、頭部１２正面に搭載されたカメラ２３２を用いて、各ユーザＵ１，Ｕ２，Ｕ３の顔を識別することもできる。
【００２４】
マイクロホン２３１は、頭部１２の前後左右にそれぞれ１つずつ設けられている。前後左右とは、頭部１２の正面および背面と、頭部１２の左右両側面である。これら４つのマイクロホン２３１で受信される音声信号の強度と時間差とに基づいて、正面（前）、左前、右前、左、右、左後、右後、後の８方向のいずれから到来した音声であるかを判定することができる。例えば、前方のマイクロホンへの音声到着時間の方が後方のマイクロホンへの音声到着時間よりも速く、左右のマイクロホンではほとんど音声到着時間に差がない場合、ロボット頭部１２の正面前方から音声が発せられたと判定することができる。また、例えば、前方マイクロホンの音声到着時間の方が後方マイクロホンの音声到着時間よりも速く、かつ、左方マイクロホンの音声到着時間の方が右方マイクロホンの音声到着時間よりも速い場合は、ロボット頭部１２の左斜め前から音声が発せられたと判定することができる。このように頭部１２の前後左右に設けられた合計4個のマイクロホンにより、ロボット１の周囲を８分割して音源の到来する方向を判定することもできる。なお、音源方向の判定結果に応じて、マイクロホン２３１の指向性を設定してもよい。
【００２５】
ロボット制御部２０の各機能を説明する。音声検出部Ｆ１は、各マイクロホン２３１を用いて音声信号を検出し、検出された音声信号から音声データを生成する。音声データは、特徴ベクトルの形式で作成することができる。音声検出部Ｆ１は、生成された音声データのうち、強度が所定の閾値以上の音声データを音声区間のデータとして抽出し、音声区間のデータ以外のデータは出力しない。音声データ記憶部Ｆ２は、音声データを一時的に保存する。
【００２６】
音源方向判定部Ｆ３は、音声検出部Ｆ１による音声信号の検出状態（音声データの検出状態）に基づいて、音声信号の到来した方向、すなわち音源の方向を判定する。判別可能な音源方向は、例えば上述の８方向である。マイクロホン２３１の搭載数を増減したり、指向性を動的に変化させたりすることにより、音源方向の検出精度を変えてもよい。
【００２７】
「音声データ強調部」としての指向性音声データ生成部Ｆ４は、音源方向判定部Ｆ３で判定された方向の音声を強調させた音声データを生成する。判定された音源方向の音声が強調されるので、指向性音声データと呼ぶことができる。
【００２８】
音声認識部Ｆ５は、音源方向の音声が強調された音声データについて音声認識処理を行い、その認識結果を出力する。
【００２９】
対話制御部Ｆ６は、ユーザの音声に対応する合成音声を応答する機能である。対話制御部Ｆ６は、ユーザが所定のコマンド（キーワード）を発した場合には、そのコマンドに応じた動作を実行する。例えば、ユーザが「クイズ」と言った場合、対話制御部Ｆ６は、クイズを出題する。また例えば、ユーザが「○○への行き方を教えて」と言った場合、対話制御部Ｆ６は、ユーザの希望する場所へ案内するための情報を発話する。
【００３０】
機体制御部Ｆ７は、例えば、図示せぬ画像処理部の認識結果または対話制御部Ｆ６による発話等に応じて、アクチュエータ２３０を駆動させることにより、ロボット本体１０の動作を制御する。機体制御部Ｆ７が頭部１２を回転させた場合、音源方向判定部Ｆ３により判定された音源方向をリセットしてもよい。
【００３１】
なお、図１に示す機能構成は、その全てが必要であるとは限らない。一部の機能は省略することもできる。また、ある機能と別のある機能とを結合させたり、一つの機能を複数に分割したりしてもよい。さらに、図１では、各機能間の関係は主要なものを示しており、接続されていない機能間であっても必要な情報は交換可能である。
【実施例１】
【００３２】
図２〜図７を用いて第１実施例を説明する。本実施例では、音声認識と並行して、複数のマイクロホンで取得した音声信号に基づいて音声到来方向を推定する。音声到来方向が判明すると、判明後の音声信号について、音声到来方向を強調した音声データを生成し、音声認識する。判明直前の音声信号については、音声到来方向を強調した音声データを再生成し、再生成した音声データに基づいて音声認識をやり直す。
【００３３】
図２は、ロボット制御部２０の構成説明図である。ロボット制御部２０は、例えば、マイクロプロセッサ（以下ＣＰＵ）２１１、ＲＯＭ（Read Only Memory）２１２、ＲＡＭ（Random Access Memory）２１３、音声信号処理部２１４、画像処理部２１８、音声合成部２１９、通信部２２０、音声認識タイミング判定部２２１、音声認識部２２２、発話生成部２２６、アクチュエータ制御部２２８がバス２１０に接続されている。電源装置などは図示を省略する。
【００３４】
ロボット制御部２０は、通信プロトコルを有する通信部２２０から通信ネットワークを介して外部装置（いずれも図示せず）と双方向通信することができる。外部装置は、例えば、パーソナルコンピュータ、タブレットコンピュータ、携帯電話、携帯情報端末などのように構成してもよいし、サーバコンピュータとして構成してもよい。
【００３５】
ＣＰＵ２１１は、図示せぬ記憶装置に格納されたコンピュータプログラムを読み込んで実行することにより、ユーザと対話等する。ＲＯＭ２１２には、コンピュータプログラムなどが記憶される。ＲＡＭ２１３は、ＣＰＵ２１１により作業領域として使用されたり、管理や制御に使用するデータの全部または一部を一時的に記憶したりする。
【００３６】
音声信号処理部２１４は、頭部１２の周囲に配置された各マイク２３１から取得した音声信号から音声データを生成し、ロボット１の周囲の音声を認識する。音声信号処理部２１４は、例えば、音源方向判定部２１５、指向性音声データ生成部２１６、特徴ベクトル抽出部２１７といった機能を有する。
【００３７】
本実施例では、頭部１２の前後左右にそれぞれ一つずつマイクロホン２３１を設ける場合を述べるが、音声到来方向を判定できる位置であれば、マイク２３１の設置場所は問わない。図２等では、各マイクロホンを識別するために符号２３１−１，２３１−２，２３１−３，２３１−４を付している。
【００３８】
画像処理部２１８は、一つまたは複数のカメラ２３２から取得した画像データを解析して、ユーザの顔など周囲の画像を認識する。なお、通信部２２０を介して外部のカメラ（不図示）から画像を取得して処理してもよい。
【００３９】
音声合成部２１９は、音声信号処理部２１４の音声認識結果や画像処理部２１８での画像認識結果などに応じた応答を、音声出力部としてのスピーカ２３３から出力する。なお、通信部２２０を介して外部のスピーカ（不図示）から発話させてもよい。
【００４０】
音声認識タイミング判定部２２１は、音声認識を開始させるタイミングまたは停止させるタイミングが到来したか判定する。
【００４１】
音声認識部２２２は、音声信号処理部２１４で処理された音声データを音声認識処理し、その音声認識結果を出力する。音声認識部２２２は、例えば、音響モデル２２３、言語モデル２２４、辞書２２５を用いることにより、音声データをテキストデータとして認識する。
【００４２】
発話生成部２２６は、音声認識部２２２による音声認識結果（認識結果と略する場合がある）に基づいて発話データベース２２７を検索することにより、ユーザに返すための発話を生成する。発話生成部２２６により生成された発話データは、音声合成部２１９に送られて音声信号に変換され、スピーカ２３３から出力される。
【００４３】
アクチュエータ制御部２２８は、ロボット本体１０の各関節に配置されたアクチュエータとしての電動モータ２３０を、アクチュエータ駆動部２２９を介して制御する。アクチュエータは、電動モータに限らず、例えばソレノイド、超音波モータ、圧電アクチュエータなどを用いてもよい。
【００４４】
図１の機能構成と図２のハードウェア構成との対応関係の一例を説明する。音声検出部Ｆ１は、マイクロホン２３１と特徴ベクトル抽出部２１７に対応する。音声データ記憶部Ｆ２は、ＲＡＭ２１３と音声信号処理部２１４に対応する。音源方向判定部Ｆ３は、音源方向判定部２１５に対応する。指向性音声データ生成部Ｆ４は、指向性音声データ生成部２１６に対応する。音声認識部Ｆ５は、音声認識部２２２に対応する。対話制御部Ｆ６は、発話生成部２２６に対応する。機体制御部Ｆ７は、アクチュエータ制御部２２８に対応する。
【００４５】
図３は、音声処理のタイミングチャートである。図３（１）はユーザの発話を示し、図３（２）は音源方向の検出タイミングを示し、図３（３）は音源方向の判定結果を示し、図３（４）は音声データを示す。図３（５）は、音声認識処理の概略を示す。
【００４６】
本実施例では、音声認識と音源方向の検出とを並行して実行する。音源方向の検出は、所定周期（例えば５０ｍｓｅｃごと）で実行する。
【００４７】
システム起動時またはリセット時では、音源方向は不明なため、音源方向には初期値が設定される。音源方向の初期値を頭部１２の正面（前）とすると、マイクロホン２３１の指向性は、無指向（全指向）あるいは正面（前）に設定される。これに限らず、ロボット１の状況に応じて指向性の初期値を設定してもよい。例えば、正面と右前とに指向性を持たせるなどのように、複数の方向に指向性を持たせてもよい。または、指向性を順次切り替えてもよい。
【００４８】
最初の音声認識処理（第１の音声認識処理）では、マイクロホン２３１で検出された音声信号について音声を認識する。マイクロホン２３１で検出された音声信号の到来する方向についても、所定周期で検出されている。なお、図示する第１の音声認識処理では、冒頭に無音期間がある。この無音期間（開始時点から時刻Ｔ１まで）では、マイクロホン２３１から閾値以上の音声信号が入力されないため、音声の発生している区間として認識されない。
【００４９】
閾値以上の音声信号が検出されると、その音声の到来方向の検出が開始される。そして、音源方向の検出結果が所定回数連続して同一であった場合、音源方向が検出されたと判定する。例えば、３回連続して同一の音源方向が検出されると、音源方向を検出することができたものと判定される。ここで例えば遅延和法（遅延和ビームフォーマ、あるいはDelay-and-Sum Beamformerとも呼ばれる）を用いることにより、判定された音源方向が強調された音声信号を得ることができる。すなわち、各マイクロホンへ音声信号が到達する時間の差を推定し、各マイクロホンからの音声信号を、前記推定した時間差だけずらして加算する。この結果、音源方向からの音声信号の位相が揃った状態で加算されるため、音源方向が強調された音声信号を得ることができる。
【００５０】
図示の例では、処理開始時点から３５０ｍｓｅｃ経過時の音源方向判定で、右（Ｒ）から到来した音声であると判定されている。指向性音声データ生成部２１６は、右（Ｒ）方向の強調された音声信号が得られるように設定される。
【００５１】
さらに続けて二回、右からの音声であると検出された時刻Ｔ２（処理開始時点から４５０ｍｓｅｃ経過時）において、音源は右にあると判定される。時刻Ｔ２で音源方向が判定されると、それまで実施されていた第１の音声認識処理は停止される。第１の音声認識処理では、右以外の方向を音源方向として音声認識していたためである。
【００５２】
そして、判定時刻Ｔ２から所定時間だけ遡った時刻Ｔ０を起点として、起点Ｔ０から判定時刻Ｔ２までの所定期間の音声データについて、右方向の音声を強調した音声データが再生成される。再生成される音声データを、図３中では斜線部として示す。マイクロホン２３１で検出された音声データは、数秒程度バッファされているため、バッファされている期間であれば時間を遡って再生成することができる。再生成された音声データを図３（５）に斜線部で示す。
【００５３】
所定の期間（遡及期間）は、図示の例では、６タイミング分、すなわち２５０ｍｓｅｃ（＝５０ｍｓｅｃ×５区画）に設定されている。判定時刻Ｔ２は、同一の音源方向であることが三回検出された時点なので、理想的には３タイミングだけ遡って音声データを再生成すればよい。しかし、本実施例では、マージンとしてさらに３タイミング分を加えた６タイミング分の音声データを再生成している。
【００５４】
第２の音声認識処理では、音源方向を強調して再生成された音声データについて音声を認識する。第２の音声認識処理は、図３（５）中の斜線部に続いて実施される。ここで、第２の音声認識処理では、再生成された音声データを処理するので、第２の音声認識処理に要する時間は短い。
【００５５】
第２の音声認識処理が終了したら、時刻Ｔ２以降の音声データについて、判定された音源方向（Ｒ）を強調したまま音声認識を継続する（第３の音声認識処理）。
【００５６】
図４は、音声信号処理部２１４の回路図である。音声信号処理部２１４は、例えば、アナログ／デジタル変換器（以下、Ａ／Ｄ部）２１４１と、第１バッファ２１４２と、音声区間判定部２１４３と、第２バッファ２１４４と、音源方向判定部２１４５と、音声方向強調フィルタ２１４６と、第３バッファ２１４７とを備えている。
【００５７】
マイクロホン２３１ごとにＡ／Ｄ部２１４１が設けられている。Ａ／Ｄ部２１４１は、マイクロホン２３１から入力される音声信号からフレームを抽出し、音声データとしての特徴ベクトルを生成する。生成された音声データ（特徴ベクトル）は、第１バッファ２１４２へ格納される。
【００５８】
音声区間判定部２１４３は、第１バッファ２１４２に格納された音声データの列から、音声の発生している区間である音声区間を判定する。音声区間判定部２１４３は、音声区間のデータを第２バッファ２１４４へ格納する。音声区間でないデータは、音声区間判定部２１４３から出力されない。
【００５９】
第２バッファ２１４４は、音声区間であると判定された音声データを保持する。そして、第２バッファ２１４４は、入力された音声データを出力部Ｂａから音源方向判定部２１４５へ逐次出力する。さらに、第２バッファ２１４４は、入力された音声データを他の出力部Ｂｂから音声方向強調フィルタ２１４６へ逐次出力する。
【００６０】
第２バッファ２１４４は、音源方向データが音源方向判定部２１４５から入力されると各出力部Ｂａ，Ｂｂからの出力を保留する。そして、第２バッファ２１４４は、出力済みの所定の範囲の音声データ（図３の例では、時刻Ｔ２から６タイミング前の範囲の音声データ）を、出力部Ｂｂから音声方向強調フィルタ２１４６へ再出力する。第２バッファ２１４４は、再出力が終了すると、各出力部Ｂａ，Ｂｂからの出力を再開する。
【００６１】
音源方向判定部２１４５は、第２バッファ２１４４から取り込んだ音声データに基づいて、音源方向および音源方向の変化を判定する。音源方向判定部２１４５の判定結果は、第２バッファ２１４４と音源方向強調フィルタ２１４６とに入力される。音源方向強調フィルタ２１４６は、音源方向判定部２１４５から入力される音源方向の判定結果に基づいて、判定された音源方向を強調する。第２バッファ２１４４は、音源方向判定部２１４５から入力される音源方向の変化に基づき、音源方向が変化した場合には出力を保留する。
【００６２】
音声方向強調フィルタ２１４６は、第２バッファ２１４４から取り込んだ音声データについて、音源方向判定部２１４５で判定された音源方向を強調した音声データを生成し、音源方向が強調された音声データを第３バッファ２１４７へ格納させる。
【００６３】
音声認識部２２２は、第３バッファ２１４７から音声データを取得し、音声認識処理を実行し、その認識結果をテキストデータとして出力する。
【００６４】
図５のフローチャートと図６の回路概略図とを参照して、音声処理を説明する。ここでは、動作の主体をロボット制御部２０として説明する場合がある。図６の回路概略図には、図５の処理ステップと対応するステップ番号が記載されている。
【００６５】
音声処理の起動時には、音源方向の初期値が設定される（Ｓ１１）。ロボット制御部２０は、第１バッファ２１４２から音声データを取得し（Ｓ１２）、音声区間を判定する（Ｓ１３）。所定の閾値以上の信号レベルを持つ音声データは、音声区間データであると判定されて、第２バッファ２１４４へ格納される。
【００６６】
所定の閾値よりも信号レベルの小さい音声データは、音声区間データではないものとして扱われ、第２バッファ２１４４へ格納されない（そのデータは破棄される）。図６の例では、第１バッファ２１４２に格納されたデータＤ１〜Ｄ７のうち、先頭のデータＤ１は音声区間データではないと判定されて破棄されている。残ったデータＤ２〜Ｄ７は、音声区間データと判定されて、第２バッファ２１４４へ格納されている。
【００６７】
音源方向判定部２１４５は、第２バッファ２１４４に格納された音声データに基づいて、音源方向を検出する（Ｓ１４）。この音源方向の検出処理（Ｓ１４）と並行して、音声認識部２２２により第１の音声認識処理が行われる（Ｓ１５）。
【００６８】
ロボット制御部２０の音源方向判定部２１４５は、第１の音声認識処理中に、新たな音源方向を検出したか判定する（Ｓ１６）。
【００６９】
図３で述べたように、新たな同一の音源方向が連続して所定回数検出された場合、新たな音源方向が検出されたと判定することができる（Ｓ１６：ＹＥＳ、Ｓ１７）。すなわち、音源方向の初期値を正面（前）とすると、頭部１２の右または左に位置する他のユーザから話しかけられた状態である。上述の通りステップＳ１６では、音源方向が変化した場合も検出される。
【００７０】
新たな音源方向が検出されると、第２バッファ２１４４からの音声データの出力が一時停止されるため、音声認識部２２２による第１の音声認識処理も停止する（Ｓ１８）。第１音声認識処理の認識結果は、破棄される（Ｓ１８）。新たに検出されたユーザとの会話に対応するためである。
【００７１】
音源方向強調フィルタ２１４６は、音源方向判定部２１４５から入力された音源方向判定データ（判定結果）に応じて、強調フィルタを設定する（Ｓ１９）。
【００７２】
第２バッファ２１４４は、音源方向判定部２１４５から入力された音源方向判定データに応じて、音声データの出力を再開する（Ｓ２０）。音声データの出力を再開させる位置（所定期間の起点）は、音源方向判定時から所定期間だけ遡った時点である。第２バッファ２１４４は、起点から音源方向判定時までの所定範囲の音声データを、音源方向強調フィルタ２１４６へ出力させる（Ｓ２０）。起点と終点（判定時）は、音声認識タイミング判定部２２１により判定される。
【００７３】
図６の例では、音声データＤ４，Ｄ５，Ｄ６が、新たな音源方向を強調して再生成されている。再生成された音声データを、太い丸印の中に「Ｄ４＊」「Ｄ５＊」「Ｄ６＊」と示す。
【００７４】
音源方向強調フィルタ２１４６は、ステップＳ１７で判定された音源方向を強調した音声データを再生成し、第３バッファ２１４７へ格納する（Ｓ２１）。音声認識部２２２は、新たな音源方向が強調された音声データについて音声認識（第２の音声認識処理）を行う（Ｓ２２）。音声認識部２２２は、重複した音声データがある場合、後から取得された音声データを採用する。図６の例では、古い音源方向が強調された音声データＤ４〜Ｄ６と新たな音源方向が強調された音声データＤ４＊〜Ｄ６＊とが重複するため、後から取得された音声データＤ４＊〜Ｄ６＊が採用される。
【００７５】
ステップＳ１９〜Ｓ２２により、新たなユーザから発せられた言葉の冒頭部分をあらためて音声認識することができる。
【００７６】
そして、音声認識部２２２は、新たな音声の最初の部分（新たな音源方向を強調して再生成された音声データ）について第２の音声認識処理を行った直後に、その新たな音声に続く他の部分の音声データについて第３の音声認識処理を実行する（Ｓ２３）。音声認識部２２２は、第２の音声認識処理の結果と第３の音声認識処理の結果とを統合して出力する（Ｓ２３）。
【００７７】
ロボット１の電源をオフするなどして音声処理を終了する場合（Ｓ２４：ＹＥＳ）、本処理を終了する。これに対し、音声処理を継続する場合（Ｓ２４：ＮＯ）、ステップＳ１２へ戻る。
【００７８】
このように構成される本実施例によれば、音声認識中に新たな音源方向を検出すると（音源方向の変化の検知を含む）、新たな音源方向を強調した音声データを再生成して、音声認識をやり直すため、現在の音声認識の対象とする音源方向とは異なる方向（例えば、頭部１２の左右方向、後方向）から突然話しかけられた場合でも、その新たな音源方向からの音声を正確に認識することができる。したがって、ロボット１は、周囲を取り囲む複数のユーザに対応して円滑なコミュニケーションを行うことができる。
【００７９】
本実施例では、新たな音源方向の判定時（音源方向の変化を判定した時点）から所定期間遡った時点を起点として、音声データを再生成するため、新たな音源方向が検出されたときの音声データを取りこぼさずに音声認識することができる。これにより、本実施例によれば、発話の冒頭部分から高精度に音声認識することができ、円滑なコミュニケーションを実現できる。
【００８０】
本実施例では、新たな音源方向を検出すると（音源方向の変化を検出すると）、それまでの第１の音声認識処理による認識結果を破棄し、新たな音源方向を強調して再生成された音声データについての第２の音声認識処理の認識結果と、音声データの再生成後にマイクロホン２３１で検出された音声データをリアルタイムに処理する第３の音声認識処理の認識結果とを統合して、音声認識結果を出力することができる。したがって、新たな方向から不意に話しかけられた場合でも、発話の最初の音声を取りこぼさずに正確かつ高精度に音声を認識することができ、円滑なコミュニケーションを実現することができる。
【００８１】
さらに本実施例では、図４などに示す通り、比較的簡素な回路構成でありながら、高精度な音声認識を行うことができる。したがって、ロボット本体１０が小型であるために十分なコンピュータリソースを搭載することができないコミュニケーションロボット１であっても、コストをあまり増大させることなく、円滑なコミュニケーションを実現することができる。
【実施例２】
【００８２】
図７を用いて第２実施例を説明する。本実施例は第１実施例の変形例に該当するため、第１実施例との差異を中心に説明する。
【００８３】
図７は、音源方向の切り替わり時に再生される音声データの起点を選択する様子を示す説明図である。第１実施例では、新たな音源方向を判定した時点Ｔ２から所定期間ΔＴだけ遡った時点Ｔ０を、音声データの再生成の起点とした。
【００８４】
これに対し、本実施例では、判定時Ｔ２から所定期間ΔＴを遡るまでの間に、音声信号の立ち上がり状態に基づいて、起点Ｔ０ａを決定する。すなわち、判定時Ｔ２から所定期間ΔＴまで遡る間に、音声信号が所定の角度以上で立ち上がった箇所を見つけた場合、その波形の立ち上がり時点Ｔ０ａを音声データの再生成の起点とする。したがって、この場合、所定期間ΔＴａは第１実施例の所定期間ΔＴよりも短くなる。
【００８５】
これにより、本実施例では、音源方向が切り替わった時点の音声データを無駄なく速やかに再生成することができ、より一層高精度な音声認識を実現できる。
【００８６】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。本発明のロボット１は、頭部１２などの可動部を備えているが、音声処理だけを自動で行うロボットとして構成する場合、可動部は必要ない。
【符号の説明】
【００８７】
１：ロボット、１０：ロボット本体、１２：頭部、２０：ロボット制御部、２１４：音声信号処理部、２１５：音源方向判定部、２１６：指向性音声データ生成部、２１７：特徴ベクトル抽出部、２２１：音声認識タイミング判定部、２２２：音声認識部、発話生成部２２６、２３１：マイクロホン
【図１】
2020122861.tif 000003
【図２】
2020122861.tif 000004
【図３】
2020122861.tif 000005
【図４】
2020122861.tif 000006
【図５】
2020122861.tif 000007
【図６】
2020122861.tif 000008
【図７】
2020122861.tif 000009