(57)【要約】【課題】ＳＮＲ閾値を用いた発話区間検出に関し、話者とマイクロホンの距離が一定ではない環境では、認識性能と誤認識のトレードオフが存在するため、前記ＳＮＲ閾値の設定が一般に容易ではない。【解決手段】音源から発せられる音響信号を電気信号に変換する変換手段と、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手段とを有する音響信号変換装置であって、音響信号を発する音源と当該音響信号を電気信号に変換する変換手段との距離を検出する距離検出手段を有し、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手段の音響信号検出の閾値を前記距離検出手段により検出した距離に応じて変化させる。【選択図】図１
2010204266.tif 000002
【特許請求の範囲】
【請求項１】
音源から発せられる音響信号を受付けて電気信号に変換する受付手段と、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手段とを有する音響信号変換装置であって、
前記音源と前記受付手段との距離を検出する距離検出手段
を有し、
前記音響信号検出手段の音響信号検出の閾値を前記距離検出手段により検出した距離に応じて変化させる
ことを特徴とする音響信号変換装置。
【請求項２】
前記音響信号検出手段が検出した前記音源から発せられた音響信号に含まれる単語を認識する単語認識手段と、
を有することを特徴とする音響信号変換装置。
【請求項３】
前記音響信号検出の閾値が、前記距離検出手段により検出した距離を引数とする単調増加関数に基づき決定されることを特徴とする請求項１または２記載の音響信号変換装置。
【請求項４】
前記音響信号検出の閾値が、前記距離検出手段により検出した距離が所定の下限値よりも小さい場合には第１の規定値と決定され、前記距離が所定の上限値よりも大きい場合には前記第１の規定値よりも大きい第２の規定値と決定され、前記距離が前記所定の下限値と前記所定の上限値との間である場合には前記第１の規定値と前記第２の規定値の間の値と決定される
ことを特徴とする請求項１〜３のいずれかに記載の音響信号変換装置。
【請求項５】
前記音響検出手段が誤検出した音響信号を収集し、当該収集した音響信号の頻度分布に基づいて前記第１の規定値と前記第２の規定値を決定する
ことを特徴とする請求項４記載の音響信号変換装置。
【請求項６】
前記単語認識手段が誤検出した音響信号を収集し、当該収集した音響信号の頻度分布に基づいて前記第１の規定値と前記第２の規定値を決定する
ことを特徴とする請求項４記載の音響信号変換装置。
【請求項７】
前記頻度分布の平均値と標準偏差とを算出し、
当該平均値との差が標準偏差の定数倍となる値をそれぞれ前記第１の規定値と前記第２の規定値と決定する
ことを特徴とする請求項５または６記載の音響信号変換装置。
【請求項８】
、
前記音響信号検出の閾値がＳＮＲに対する閾値であるＳＮＲ閾値である
ことを特徴とする請求項１〜７のいずれかに記載の音響信号変換装置。
【請求項９】
音源から発せられる音響信号を受付けて電気信号に変換する受付手段を有するコンピュータによって実現される、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手順を有する音響信号変換方法であって、
前記音源と前記受付手段との距離を検出する距離検出手順
を備え、
前記音響信号検出手順の音響信号検出の閾値を前記距離検出手順により検出した距離に応じて変化させる
ことを特徴とする音響信号変換方法。
【請求項１０】
音源から発せられる音響信号を受付けて電気信号に変換する受付手段を備えるコンピュータに、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手順を実行させる音響信号変換プログラムであって、
コンピュータに、
前記音源と前記受付手段との距離を検出する距離検出手順
を実行させ、
前記音響信号検出手順の音響信号検出の閾値を前記距離検出手順により検出した距離に応じて変化させる
ことを特徴とする音響信号変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は音響信号変換装置、方法、及びプログラムに関する。音響信号変換装置には、例えば音声認識装置が含まれる。
【背景技術】
【０００２】
音響信号が所定の音源から発せられたことを検出する技術において、処理において何らかの閾値を用いるものがある。例えば、音響信号に基づき話者の発話区間を検出する発話区間検出の技術において、ＳＮＲ（Signal to Noise Ratio：ＳＮ比）の閾値を用いる従来技術がある（特許文献１）。従来技術では、予め１つのＳＮＲ閾値をユーザからの入力に基づき設定しておく。そして、受付手段が受付けた音響信号に基づき算出したＳＮＲが、前記ＳＮＲ閾値以上であるか否かに従って、音響信号から発話区間を検出する。
【特許文献１】特表2007-501444
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、音源と受付手段の距離が一定でないような環境においては、前記閾値の設定が困難となる場合がある。受付手段に入力される音響信号において、ある種の特徴量が、音源と受付手段の距離に応じて変化する場合があるからである。
【０００４】
前記ＳＮＲ閾値を用いた発話区間検出を例にとり説明する。音源である話者が、受付手段であるマイクロホンの側で話してくれるとは限らず、話者とマイクロホンの距離がまちまちであるような環境を考える。このような環境では、マイクロホンが受付ける発話音の大きさは話者との距離にそれほど依存しない。何故なら、話者は、距離が小さければ意図的に小さな声で話し、距離が大きければ意図的に大きな声で話すからである。しかし、話者の足音等といった雑音の影響は話者との距離に依存しやすい。そのため、もし閾値を高めに設定すると、話者が近くにいる場合（一般に雑音の影響が強いためＳＮＲは小さくなる）に、実際には発話しているのに発話区間として検出されないという検出漏れが起こりやすくなる。反対に、もし閾値を低めに設定すると、話者が遠くにいる場合（一般に雑音の影響は弱いためＳＮＲは大きくなる）に、実際には発話していないのに発話区間として検出されるという誤検知が起こりやすくなる。すなわち、前記のような環境においては、ＳＮＲ閾値を高く設定しても低く設定しても、不都合が生じることとなる。
【０００５】
このように、従来技術を用いる場合、認識可能性と誤認識のトレードオフが存在するため、閾値の設定は一般に容易ではないという課題がある。環境に応じた閾値の設定を可能とすることで、こうした課題を解決することが望まれている。
【課題を解決するための手段】
【０００６】
開示の音響信号変換装置は、音源から発せられる音響信号を電気信号に変換する変換手段と、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手段とを有する音響信号変換装置であって、音響信号を発する音源と当該音響信号を電気信号に変換する変換手段との距離を検出する距離検出手段を有し、前記音源からの音響信号が発せられたことを前記電気信号に基づいて検出する音響信号検出手段の音響信号検出の閾値を前記距離検出手段により検出した距離に応じて変化させる。
【発明の効果】
【０００７】
開示の音響信号変換装置によれば、音響信号検出の閾値を、音源と変換手段と距離に応じて柔軟に設定することができる。このため、開示の音響信号変換装置によれば、音源と変換手段の距離に関わらず一定の音響信号検出の精度を確保することが可能となるという効果を奏する。
【発明を実施するための最良の形態】
【０００８】
本発明の実施の形態を図面を参照して説明する。以下では、音響信号変換装置の一実施例として、音響信号に対する音声認識を行う音声認識装置について説明する。まず、音声認識装置に係る従来技術について簡単に述べ、その後、本発明の一実施形態である音声認識装置について説明する。
【０００９】
音声認識とは、音響信号中の発話の内容を単語（文字データ）として取り出す処理のことである。音声認識の一般的な処理の流れは、マイクロホン等で外部環境から音響信号を受付けて電気信号である音声信号に変換し、当該音声信号から人の発話を含む区間である発話区間を検出し、発話区間に音響モデルと語彙辞書に基づく音声照合を行って文字データを取り出すというものである。近年では無音環境において正確な音声認識が可能になっている。しかし、様々な雑音を含む環境においては誤った文字が取り出されることも多いため、係る誤認識を減らすことが望まれている。
【００１０】
音声認識における誤認識を減らすための有効な方策の１つとして、音声認識の内部処理の１つである発話区間検出の誤認識の削減がある。ここで、発話区間検出とは、音声認識の内部処理の１つであり、音声信号から人の発話内容を含む区間である発話区間を検出するものである。検出されなかった残りの区間は、非発話区間若しくは雑音区間と呼ぶ。
【００１１】
図１２に、発話区間の概念図を示す。ここで、横軸が時間、縦軸が音声信号である。発話区間検出にはいくつかの方法が知られている。例えば、単純な方式として、音声信号の電力が所定の閾値以上である場合に、当該区間を発話区間と検出する方式がある。なお、音声信号の各瞬間の電力は、図１２に示すような音声信号に対応する波形に対し、振幅を２乗することにより計算できる。発話区間検出においては、各区間に決まった長さがあるわけではなく、各区間は任意の長さの連続した発話若しくは雑音音声に対応する。したがって、発話区間と非発話区間は、必ず交互に現れることとなる。
【００１２】
発話区間検出の誤認識を減らす従来技術として、音声のＳＮＲ（Signal to Noise Ratio：ＳＮ比）を所定の閾値（ＳＮＲ閾値）と比較する方法が知られている。ここで音声信号のＳＮＲとは、発話区間と非発話区間との平均電力比であり、音声の音質（音声の信頼性）を測る尺度である。具体的には、発話区間の平均電力をＳとし、非発話区間の平均電力をＮとして、１０log(S／N)により算出される。
【００１３】
前記従来技術の機能ブロック図を図１３に示す。従来技術では、予め１つのＳＮＲ閾値１２１をユーザからの入力に基づき設定しておく。そして、入力された音声信号から暫定的な「仮の発話区間」を検出し、その後、前記所定のＳＮＲ閾値１２１を用いて仮の発話区間が（真の）発話区間であるかを判定する。ここで、仮の発話区間の検出には、先述した電力の閾値を用いた発話区間検出のような従来の発話区間検出方式を用いる。従来技術の処理の流れは以下のようになる。受付けた音響信号を変換した音声信号に対し、発話区間検出部１１３が当該音声信号から仮の発話区間を検出する。また、ＳＮＲ算出部１１４は、仮の発話区間と検出された区間のＳＮＲを算出する。そして、ＳＮＲ判定部１１６が、当該算出したＳＮＲを所定のＳＮＲ閾値と比較し、ＳＮＲ閾値を超えていれば、前記発話区間検出部が検出した「仮の発話区間」を真の発話区間と判定し、音声照合処理部１１７が、当該発話区間に対し音声照合を行うことで文字データに変換する。他方、前記ＳＮＲが前記ＳＮＲ閾値以下であれば、ＳＮＲ判定部１１６は「仮の発話区間」は発話区間ではないと判定し、続く音声照合は行わない。音声信号のＳＮＲが大きいということは、当該音声信号において雑音の影響が小さいということである。したがって、ＳＮＲが大きい場合のみ音声照合を行えば、音声照合の誤認識が減り、引いては音声認識の誤認識が減る。このように、従来技術によって、雑音が存在する場合における誤認識を低減させることができる。
【００１４】
しかし、先述の通り、従来技術では、閾値において認識可能性と誤認識のトレードオフが存在するため、閾値の設定は一般に容易ではないという課題がある。そこで、以下では、係る課題を解決する音声認識装置について説明する。
【００１５】
図１に、本発明の第１の実施形態に係る音声認識装置の機能ブロック図を示す。本体部１００には、入力装置であるマイクロホン１０１と距離センサ１０２とが接続される。マイクロホン１０１は、外部環境から音声の入力を受け付け、電気的なアナログ信号に変換する。距離センサ１０２は、マイクロホン１０１と話者との間の距離を測定する。距離センサ１０２としては、レーザレンジファインダ、超音波センサ、赤外線センサ等を用いることができる。例えばレーザーレンジファインダであれば、レーザーを照射し、反射したものを受光することで、センサと物体（話者）と間の距離を測定することができる。
【００１６】
本体部１００は、ＳＮＲ閾値設定部１１１、Ａ／Ｄ変換部１１２、発話区間検出部１１３、ＳＮＲ算出部１１４、ＳＮＲ閾値決定部１１５、ＳＮＲ判定部１１６、音声照合処理部１１７、出力部１１８を備える。また、本体部は不図示の起動スイッチを備え、当該起動スイッチがユーザによって操作されることにより、音声認識装置は起動し、あるいは停止する。
【００１７】
ＳＮＲ閾値設定部１１１は、ＳＮＲ閾値の上限値及び下限値についてユーザからの入力を受け付け、記憶部のＳＮＲ閾値上下限値１２１（ＳＮＲ閾値上限値を１２１ａ、ＳＮＲ閾値下限値を１２１ｂとする）に格納する。Ａ／Ｄ変換部１１２は、マイクロホン１０１が変換したアナログ信号をサンプリングし、デジタル信号に変換する。発話区間検出部１１３は、Ａ／Ｄ変換部１１２が変換したデジタル信号に対し、先述した「仮の発話区間」の検出を行い、検出した仮発話区間のデジタル信号のみを出力する。ＳＮＲ算出部１１４は、前記検出した仮発話区間におけるＳＮＲを算出する。ＳＮＲ閾値決定部１１５は、ＳＮＲ閾値設定部１１１が設定したＳＮＲ閾値上下限値１２１と、後述する距離上下限値１２２と、距離センサ１０２が測定したマイクロホン１０１と話者との間の距離に基づき、ＳＮＲ閾値を決定する。ＳＮＲ判定部１１６は、発話区間検出部１１３が算出したＳＮＲと、ＳＮＲ閾値算出部１１５が算出したＳＮＲ閾値とを比較し、前記仮発話区間が真の発話区間か否かを判定する。音声照合処理部１１７は、発話区間と判定された区間に係る音声信号を文字列に変換する。この変換は、後述する音響モデル１２３と語彙辞書１２４に基づいた音声照合によって行う。最後に、出力部１１８は、音声照合の結果を出力装置に出力する。
【００１８】
本体部１００はさらにデータとして、予め、距離上下限値１２２、音響モデル１２３、語彙辞書１２４を不図示の記憶部に格納している。距離上下限値１２２は、距離センサ１０２が適切に測定できる距離の上下限値である（距離上限値を１２２ａ、距離下限値を１２２ｂとする）。音響モデル１２３は、認識対象の音素がどのような周波数特性を持っているかを表したもので、混合正規分布を出力確率とした隠れマルコフモデルにより表現することができる。語彙辞書１２４は、単語ごとの文字データと品詞等を対応付けたデータベースである。音声照合部１１７が、音響モデル１２３と語彙辞書１２４を用いて音声信号を文字列に変換するのは周知の技術であり、ここでは詳細な説明はしない。
【００１９】
図２に、第１の実施形態に係る音声認識装置の全体の処理フローを示す。この処理フローは、音声入力装置が起動スイッチにより起動されたことを契機として、開始する。音声認識装置は、まず事前設定を行い（ステップＳ１０１）、その後、本運用に係る処理を行う（ステップＳ１０２）。ここで、本運用が音声認識の処理に該当し、事前設定は本運用のための前処理に該当する。具体的には、音声認識装置は、事前設定において、本運用で使用するパラメータであるＳＮＲ閾値の上限値及び下限値（上下限値）を記憶部に設定する。そして、音声認識装置は、本運用において、事前設定された上下限値を用いて、入力された音声を認識して文字データを取り出す。事前設定と本運用の切替は、たとえば、不図示の切替スイッチにより、ユーザから前記切替の入力を受け付けることで、行うことができる。
【００２０】
図３に、音声認識装置の事前設定の処理フローを示す。まず、ＳＮＲ閾値設定部１１１は、ＳＮＲ閾値の上限値及び下限値の入力をユーザから受け付ける（ステップＳ２０１）。係る入力は、キーボードを介して値が入力されることにより、あるいは、マウスを介していくつかの値から選択されることにより行うことができる。そして、ＳＮＲ閾値設定部１１１は、受け付けたＳＮＲ閾値の上限値及び下限値を、記憶部のＳＮＲ閾値上下限値１２１に格納する（ステップＳ２０２）。ここで、ＳＮＲ閾値上限値１２１ａはＳＮＲ閾値下限値１２１ｂよりも大きな値であり、ＳＮＲ閾値上限値１２１ａは話者がマイクロホンから一定距離以上離れている場合のＳＮＲ閾値、ＳＮＲ閾値下限値１２１ｂは話者がマイクロホンから一定距離以内の場合のＳＮＲ閾値に対応する。
【００２１】
図４に基づき、音声認識装置の本運用の処理フローについて説明する。処理の概要は以下のようになる。音声入力装置はまず、音声入力を元にＳＮＲを算出する（ステップＳ３０１〜Ｓ３０４）とともに、それと並行して、マイクロホン１０１と話者との間の距離の測定結果に基づきＳＮＲ閾値を決定する（ステップＳ３０５〜Ｓ３０６）。その後、算出したＳＮＲと決定したＳＮＲ閾値に基づき、音声信号における必要な区間に対して音声照合を行うことで文字データを取り出す（ステップＳ３０７〜Ｓ３０９）。
【００２２】
詳細に説明すれば、まずマイクロホン１０１は、外部環境から音声の入力を受け付け、電気的なアナログ信号に変換する（ステップＳ３０１）。そしてＡ／Ｄ変換部１１２は、前記アナログ信号をサンプリングし、デジタル信号に変換する（ステップＳ３０２）。
【００２３】
次に発話区間検出部１１３は、前記デジタル信号から仮の発話区間を検出する（ステップＳ３０３）。ここで、仮の発話区間の検出は、公知の音声による発話区間検出（VAD:Voice Activity Detection）方法を用いればよく、例えば、音声信号の電力が所定の閾値以上である区間を発話区間と検出することができる。また、音声と雑音の音響的な違いに基づく発話区間検出方法として、音声信号中のホルマントを利用する方法、音声信号のスペクトルやケプストラムの距離を利用する方法、音声信号の尖度を利用する方法がそれぞれ知られている。
【００２４】
そして、ＳＮＲ算出部１１４は、検出した仮の発話区間の平均電力と非発話区間（雑音区間）の平均電力の割合から、当該仮発話区間のＳＮＲを算出する（ステップＳ３０４）。ＳＮＲは、検出した発話区間の平均電力Ｓと当該発話区間の直前の非発話区間の平均電力Ｎをまず求め、求めたＳとＮを１０log(S／N)に代入することによって算出することができる。なお、前記Ｎとしては、検出した発話区間の直前の非発話区間のみの平均電力の代わりに、それまでの全てあるいは一定期間中の非発話区間の平均電力を採用することもできる。
【００２５】
また、距離センサ１０２は、マイクロホン１０１と話者との間の距離を測定する（ステップＳ３０５）。次にＳＮＲ閾値判定部１１５は、前記測定された距離に応じて、所定の規則に基づいてＳＮＲ閾値を決定する（ステップＳ３０６）。ＳＮＲ閾値決定の処理の詳細については後述する。
【００２６】
次にＳＮＲ判定部１１６は、ステップＳ３０４で算出された前記ＳＮＲと、ステップＳ３０６で算出された前記ＳＮＲ閾値とを比較し、前記仮の発話区間が本当に発話区間であるか否かを判定する（ステップＳ３０７）。ここでＳＮＲ判定部１１６は、ＳＮＲがＳＮＲ閾値よりも大きい（或いは、ＳＮＲがＳＮＲ閾値以上である）場合には仮の発話区間が（真の）発話区間であると判定し（分岐のＹＥＳ）、そうでない場合には仮の発話区間は（真の）発話区間でないと判定する（分岐のＮＯ）。
【００２７】
ステップＳ３０７の判定がＹＥＳの場合、音声照合処理部１１７は、上記発話区間検出で得た発話区間について音声照合処理を行う（ステップＳ３０８）。すなわち音声照合処理部１１７は、音響モデル１２３に基づいて、前記発話区間に係るデジタル信号から発音データ（例えば「ホンジツワセイテンナリ」）を取り出す。そして音声照合処理部１１７は、当該発音データに語彙辞書１２４に格納された単語を当てはめることで、入力された音声の認識結果である文章データ（例えば「本日は晴天なり」）を生成する。最後に、出力部１１８が、前記音声認識結果である文章データを、モニタ等の出力装置に出力する（ステップＳ３０９）。一方、ステップＳ３０７の判定がＮＯの場合、出力部１１８は、話者に対してエラー通知を行う（ステップＳ３１０）。エラー処理は、話者に対して音声が認識できなかった旨を伝えるための処理であり、例えばモニタに音声が認識できなかった旨を表示することができる。
【００２８】
ＳＮＲ閾値（以下ではｓで表す）を決定するステップＳ３０６について詳細に説明する。図５に、ステップＳ３０６の詳細な処理フローを示す。
【００２９】
ステップＳ３０６において、まずＳＮＲ閾値決定部１１５は、ステップＳ３０５で測定したマイクロホンと話者との間の距離（以下ではｄで表す）を受け付ける（ステップＳ４０１）。次にＳＮＲ閾値決定部１１５は、記憶部に格納されたＳＮＲ閾値上限値１２１ａとＳＮＲ閾値下限値１２１ｂとを読み出し、それぞれの値をＳＮＲ＿ＴＨ＿ｍａｘ、ＳＮＲ＿ＴＨ＿ｍｉｎとする（ステップＳ４０２）。同じく記憶部に格納された距離上限値１２２ａと距離下限値１２２ｂを読み出し、それぞれの値をＤ＿ｍａｘ、Ｄ＿ｍｉｎとする（ステップＳ４０３）。そして、ＳＮＲ閾値決定部１１５は、ｄと距離上限値Ｄ＿ｍａｘとの値を比較する（ステップＳ４０４）。もしｄ＞Ｄ＿ｍａｘであれば（分岐のＹＥＳ）、ＳＮＲ閾値決定部１１５は、ＳＮＲ閾値ｓをＳＮＲ＿ＴＨ＿ｍａｘに決定し（ステップＳ４０５）、ステップＳ３０６の処理を終了する。また、ステップＳ４０４の比較でｄ≦Ｄ＿ｍａｘであれば（分岐のＮＯ）、ＳＮＲ閾値決定部１１５は、ｄと距離下限値Ｄ＿ｍｉｎとの値を比較する（ステップＳ４０６）。もしｄ＜Ｄ＿ｍｉｎであれば（分岐のＹＥＳ）、ＳＮＲ閾値決定部１１５は、ＳＮＲ閾値ｓをＳＮＲ＿ＴＨ＿ｍｉｎに決定し（ステップＳ４０７）、ステップＳ３０６の処理を終了する。また、ステップＳ４０６の比較でｄ≧Ｄ＿ｍａｘであれば（分岐のＮＯ）、ＳＮＲ閾値決定部１１５は、ＳＮＲ閾値ｓを以下の式により算出される値に決定し（ステップＳ４０８）、ステップＳ３０６の処理を終了する。
【００３０】
ｓ  ＝  ＳＮＲ＿ＴＨ＿ｍｉｎ＋｛（ＳＮＲ＿ＴＨ＿ｍａｘ−ＳＮＲ＿ＴＨ＿ｍｉｎ）／
（Ｄ＿ｍａｘ−Ｄ＿ｍｉｎ）｝×（ｄ−Ｄ＿ｍｉｎ）
図６に、話者とマイクロホンとの距離（ｄ）と、上記の手順により算出したＳＮＲ閾値（ｓ）との関係を表すグラフを示す。このグラフでは、横軸に距離ｄを、縦軸にＳＮＲ閾値ｓをそれぞれ取っている。そして、（ｄ，ｓ）＝（距離下限値，ＳＮＲ閾値下限値）＝（Ｄ＿ｍｉｎ，ＳＮＲ＿ＴＨ＿ｍｉｎ）に対応する座標上の点と、（ｄ，ｓ）＝（距離上限値，ＳＮＲ閾値上限値）＝（Ｄ＿ｍａｘ，ＳＮＲ＿ＴＨ＿ｍａｘ）に対応する座標上の点とを取り、当該２点を直線（傾きが正の一次関数）で結んでいる。ステップＳ４０８の計算式が、前記直線に対応しており、すなわち距離ｄを変数としてＳＮＲ閾値ｓを算出している。また、距離ｄ＝Ｄ＿ｍｉｎ以下である場合にはＳＮＲ閾値ｓ＝ＳＮＲ＿ＴＨ＿ｍｉｎで一定とし、また、距離ｄ＝Ｄ＿ｍａｘ以上である場合にはＳＮＲ閾値ｓ＝ＳＮＲ＿ＴＨ＿ｍａｘで一定としている。このようにすることで、予め距離の上限値及び下限値に対応するＳＮＲ閾値（すなわち、ＳＮＲ閾値上限値とＳＮＲ閾値下限値の２つ）を設定しておけば、その他の距離に対応するＳＮＲ閾値を機械的に算出することが可能となる。なお、前記２点を結ぶ一次関数に関し、これ以外の関数を用いることもできる。すなわち、任意の広義な単調増加関数を用いることができる。これにより、ＳＮＲ閾値の決定を柔軟に行うことが可能となる。
【００３１】
以上のように、本発明の第１の実施形態に係る音声認識装置によれば、環境条件に応じて適切なＳＮＲ閾値を動的に設定することができる。すなわち、発話区間検出において、距離センサの測定値とＳＮＲ閾値を連動させ、ＳＮＲ閾値を可変することで、話者とマイクロホンの間の距離に応じた適切なＳＮＲ閾値を設定することができる。これにより、話者とマイクロホンの間の距離に関わらず、発話区間検出、引いては音声認識において一定の精度を確保することが可能となる。
【００３２】
以下では本発明の第２の実施形態について説明する。
【００３３】
第２の実施形態の全体フローは、第１の実施形態の全体フロー（図２）と同じである。また、第２の実施形態の本運用（ステップＳ１０２）の処理フローも、第１の実施形態の処理フロー（図４）と同じである。第２の実施形態は、第１の実施形態と比較すると、事前設定（ステップＳ１０１）の処理フローのみが異なる。第１の実施形態ではＳＮＲ閾値上下限値１２１について、外部から値の入力を受け付けることで設定していたが、第２の実施例ではこれらを事前のキャリブレーション（calibration：本運用に先立ち、予め装置の調整を行うこと）により設定する。具体的には、マイクロホンから取得した環境音に基づいて発話区間の検出を行い、その結果に基づいてＳＮＲ閾値上下限値１２１を設定する。以下では第２の実施形態の事前設定についてのみ説明する。
【００３４】
図７に、本発明の第２の実施形態に係る音声認識装置の機能ブロック図を示す。図１の構成に加えて、ＳＮＲを格納するために、不図示の記憶部にバッファ１２５が設けられる。バッファ１２５は、所定の個数（例えば１００個）の発話区間のＳＮＲを格納する。なお、図７及び以降の説明において、第１の実施形態に係る機能ブロック図である図１に記載されていると同じ構成要素については、同じ名前及び符号を用いる。
【００３５】
図８を元に、第２の実施形態に係る音声認識装置の事前設定（ステップＳ１０１）の処理フローについて説明する。図８の処理は、音声入力装置が起動スイッチにより起動されたことを契機として、開始する。また、事前設定と本運用の切替スイッチが、事前設定に設定された状態で行われる。
【００３６】
まず、マイクロホン１０１は、音声入力を受け付け、アナログ信号に変換する（ステップＳ５０１）。このときの前提として、意図的に話者による発話は行わないようにする。これにより、マイクロホン１０１は環境音（雑音に相当）を取得することができる。次に、本運用の処理と同様に、Ａ／Ｄ変換部１１２が環境音に掛かるアナログ信号をデジタル信号に変換し（ステップＳ５０２）、発話区間検出部１１３が発話区間の検出を行う（ステップＳ５０３）。次に発話区間検出部１１３は、発話区間を検出したかを判定する（ステップＳ５０４）。上述した前提により、発話区間検出部１１３が取得した音声信号には発話は含まれていないため、本来であれば発話区間は検出されないはずである。しかし、大きな雑音が入力された場合等において、発話区間検出部１１３は誤って発話区間を検出することがある。もし発話区間を検出すると（分岐のＹＥＳ）、ＳＮＲ算出部１１４は、本運用の場合と同様にして、当該発話区間のＳＮＲを算出する（ステップＳ５０５）。そして、ＳＮＲ算出部１１４は算出したＳＮＲをバッファ１２５に格納する（ステップＳ５０６）。ＳＮＲ算出部１１４は、このようにして発話区間を誤認識した場合のＳＮＲを収集する。なお、ステップＳ５０４で発話区間を検出しなかった場合（分岐のＮＯ）、すなわち非発話区間については、ＳＮＲ算出部１１４はＳＮＲの算出を行わず、ステップＳ５０１に戻って処理を繰り返す。
【００３７】
次に、ＳＮＲ閾値設定部１１１は、バッファ１２５が一杯であるかを判定する（ステップＳ５０７）。一杯でない（分岐のＮＯ）場合には、音声認識装置は、ステップＳ５０１に戻って上記の処理を繰り返す。すなわち、音声認識装置はＳＮＲの収集を続行する。一方、一杯（分岐のＹＥＳ）である場合には、ＳＮＲ閾値設定部１１１は、バッファ１２５に格納された全てのＳＮＲについて、平均値ａ及び標準偏差σを算出する（ステップＳ５０８）。
【００３８】
最後に、ＳＮＲ閾値設定部１１１は、算出した平均値ａ及び標準偏差σに基づき、ＳＮＲ閾値上限値及びＳＮＲ閾値下限値を決定する（ステップＳ５０９）。具体的には、ＳＮＲ閾値上限値は、ａ＋２σに設定する。また、ＳＮＲ閾値下限値は、ａ＋σに設定する。最後にＳＮＲ閾値設定部１１１は、決定したＳＮＲ閾値上限値及びＳＮＲ閾値下限値を、記憶部のＳＮＲ閾値上下限値１２１に格納し、表示装置に事前設定が完了した旨のメッセージを出力する（ステップＳ５１０）。
【００３９】
上記のように、ＳＮＲ閾値上限値及びＳＮＲ閾値下限値の決定において標準偏差を利用すれば、これら上下限値の統計的な意味は明確となる。すなわち、上記の場合では、収集したＳＮＲの値の分布が正規分布となっているという前提の下で、キャリブレーションにおいて環境音が発音区間として誤認識されたケースのおよそ84.1％が、本運用においては誤認識されない（発音区間として検出されない）ことが統計的に裏付けられる。なお、ＳＮＲの平均値ａとＳＮＲ閾値下限値との差分、或いは、ａとＳＮＲ閾値上限値との差分については、上記の例に限らず、自由に設定することができる。
【００４０】
本発明の第２の実施形態によれば、ＳＮＲ閾値の上限値及び下限値を音声認識装置の使用環境に適した値に設定することが可能となる。これにより、第１の実施形態において前記ＳＮＲ閾値の上限値及び下限値を予め手動で設定した場合に比べ、誤認識の可能性が少ないことが統計的に裏付けられたＳＮＲ閾値が算出される。これにより、発話区間認識、引いては音声認識の精度が向上するという効果を奏する。
【００４１】
以下では本発明の第３の実施形態について説明する。
【００４２】
第２の実施形態では事前設定において、環境音に対する発話区間検出の結果に基づいてＳＮＲ閾値上下限値１２１を設定しているが、第３の実施形態ではこれらの値を、発話を含む音声に対する音声認識の結果に基づいて設定する。第３の実施形態の全体の処理フロー及び本運用（ステップＳ１０２）の処理フローについては、第２の実施形態と同様に、図２及び４の処理フローに従えばよい。以下では第３の実施形態の事前設定（ステップＳ１０１）についてのみ説明する。
【００４３】
図９に、本発明の第３の実施形態に係る音声認識装置の機能ブロック図を示す。第２の実施形態における機能ブロック図（図７）とほとんど同じであるが、スピーカ１０３及び音声再生部１１９を備える点、及びバッファ１２５へＳＮＲを格納するのが音声照合処理部１０７である点が異なる。スピーカ１０３は出力機器の一種であり、音声を出力する。音声再生部１１８は所定の音声を再生し、スピーカ１０３に出力する。なお、図９及び以降の説明において、第２の実施形態に係る機能ブロック図である図７に記載されていると同じ構成要素については、同じ名前及び符号を用いる。
【００４４】
図１０を元に、第３の実施形態に係る音声認識装置の事前設定（ステップＳ１０２）の処理フローについて説明する。図１０の処理は、音声入力装置が起動スイッチにより起動されたことを契機として、開始する。また、事前設定と本運用の切替スイッチが、事前設定に設定された状態で行われる。図１０は、図８と比較して、音声出力処理（ステップＳ６０１）及び音声照合処理（ステップＳ６０６）が加わるとともに、ＳＮＲ収集の要否に係る判定が異なる（ステップＳ６０７）以外は、第２の実施形態の事前設定の処理フロー（図８）と同じである。以下では、主に図８と異なる処理を中心に説明する。
【００４５】
まず、音声再生部１１８は、規定の登録済み単語を所定の回数再生し、デジタル信号を生成する。そして、スピーカ１１３が、当該再生された単語に対応するデジタル信号を音声として出力するとともに（ステップＳ６０１）、マイクロホン１０１が、当該出力された音声の入力を受付けてアナログ信号に変換する（ステップＳ６０２）。ここで、音声認識装置は音声出力において、例えば「おはよう」、「こんにちは」、「こんばんは」をそれぞれ１０回ずつ、繰り返し音声として出力する。そして、Ａ／Ｄ変換部１１２が前記アナログ信号をデジタル信号に変換し（ステップＳ６０３）、発話区間検出部１１３が当該信号に対して発話区間検出を行う（ステップＳ６０４）とともに、ＳＮＲ算出部１１４がＳＮＲを算出する（ステップＳ６０５）。さらに、音声照合処理部１１７は、検出した発話区間に対し、音声照合を行う（ステップＳ６０６）。ここでは、本運用の場合と異なり、音声照合処理部１１７は、検出した発話区間を仮のものとして取り扱わない。すなわち、音声照合処理部１１７は、検出した全ての発話区間に対して、音声照合を行う。
【００４６】
そして、音声照合処理部１１７は、音声照合した結果が正しいかを判定する（ステップＳ６０７）。たとえば、スピーカ１０３が「おはよう」と出力した場合、音声照合の結果「おはよう」と認識されれば結果は正しく、「おはよう」以外の単語として認識されれば結果は誤りとなる。もし音声照合が誤りであれば（分岐のＮＯ）、音声照合処理部１１７は、前記算出したＳＮＲをバッファ１２５に格納する（ステップＳ６０８）。音声認識装置は、このようにして音声認識を誤認識した場合のＳＮＲを収集する。なお、ステップＳ６０７で音声認識が正しかった場合（分岐のＮＯ）についてはＳＮＲの格納は行わず、ステップＳ６０１に戻って処理を繰り返す。
【００４７】
あとは第２の実施形態と同様に、ＳＮＲ閾値設定部１１１は、バッファが一杯になるまでＳＮＲを収集し、平均値と標準偏差に基づいてＳＮＲ閾値上限値及びＳＮＲ閾値下限値を決定する（ステップＳ６０９〜６１１）。最後に、決定したＳＮＲ閾値上限値及びＳＮＲ閾値下限値を、記憶部のＳＮＲ閾値上下限値１２１に格納し、表示装置に事前設定が完了した旨のメッセージを出力する（ステップＳ６１２）。
【００４８】
本発明の第３の実施形態によれば、第２の実施形態と同様に、誤認識の可能性が少ないことが統計的に裏付けられたＳＮＲ閾値が算出されるため、発話区間認識、引いては音声認識の精度が向上するという効果を奏する。さらに、第３の実施形態のキャリブレーションにおいては音声認識装置による発話と環境音の両方がマイクロホンから入力されるのに対し、第２の実施形態のキャリブレーションにおいては環境音のみがマイクロホンから入力される。そのため、第３の実施形態の方が第２の実施形態よりも、得られるＳＮＲ閾値の信頼性が高くなる。すなわち、第３の実施形態は、実際に発話された音声を元にしているため、第２の実施形態よりもさらに、前記認識精度が向上する効果を奏する。
【００４９】
以上、本発明に係る音声認識装置の実施形態について説明したが、本発明は上記実施形態に限るものではなく、その技術的思想の範囲内で種々の設計変更が可能である。
【００５０】
たとえば、音声認識装置をロボットのような移動体に組み込むことができる。係る実施形態においては、ＳＮＲ閾値を距離に応じて可変とすることを特徴とする本発明が特に効果的となる。何故なら、移動するロボットに対して話者が近づきながら話し掛けるような場面は頻繁に発生すると考えられ、そのような場合に、話者との距離の短縮に従ってＳＮＲ閾値を小さくすることにより、発話区間の誤検出が低減できるからである。
【００５１】
また、音声信号の録音（記録）、転送、もしくは変換等を含む、音声信号に対する種々の処理のトリガ（契機）を発生させる目的に用いることができる。すなわち、本発明にかかる発話区間を検出したことをトリガとして、音声信号の録音を開始する等といった実施形態が考えられる。
【００５２】
以上、第１〜３の実施形態による音声認識装置の構成を説明したが、これら音声認識装置の本体部１０１は、図１１に示すようなコンピュータ上で動作するプログラムによっても実現することができる。
【００５３】
本願発明に係るプログラムを実行するコンピュータのハードウェア構成の例を図１１に示す。コンピュータ１０のハードウェア構成として、例えば、Central Processing Unit（CPU）１１、主記憶１２、補助記憶装置１３、出力インタフェース１４、入力インタフェース１５、通信インタフェース１６がバス１７で接続されている。
【００５４】
CPU１１は後述する主記憶１２に格納されたプログラムを実行する。主記憶１２としては、通常はRandom Access Memory（RAM）が用いられ、後述する補助記憶装置１３から実行するプログラムや使用するデータを読み込んで一時的に格納する。補助記憶装置１３としては、通常はHard Disk Drive（HDD）が用いられ、プログラムやデータを格納してファイルとして保存する。なお、補助記憶装置１３としては、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の外部記憶媒体を用いることもできる。
【００５５】
出力インタフェース１４には出力装置の一つとして表示装置であるモニタ１８が接続される。プログラムの実行結果などがモニタに出力され表示される。入力インタフェース１５には入力装置としてキーボード１９やマウス２０が接続され、これら入力装置からデータが入力される。通信インタフェース１７はネットワーク２１に接続される。コンピュータはネットワークを介して他のコンピュータとデータをやり取りする。
【００５６】
上記ハードウェア構成を、図１、図７及び図９の機能ブロックと対応付けると以下のようになる。コンピュータを本体部１０１として機能させるためのプログラム（ＳＮＲ閾値設定部１１１、Ａ／Ｄ変換部１１２、発話区間検出部１１３、ＳＮＲ算出部１１４、ＳＮＲ閾値決定部１１５、ＳＮＲ判定部１１６、音声照合処理部１１７、出力部１１８、音声再生部１１９）、及びデータ（ＳＮＲ閾値上下限値１２１、距離上下限値１２２、音響モデル１２３、語彙辞書１２４）を予め補助記憶装置１３に格納させておく。プログラムが起動されると、当該プログラムおよびデータはまず主記憶１２に読み込まれ、その後主記憶１２とCPU１１とが連携することでプログラムが実行される。バッファ１２５は主記憶１２に設けられるが、必要に応じて補助記憶装置１３に退避させてもよい。
【図面の簡単な説明】
【００５７】
【図１】本発明の第１の実施形態に係る機能ブロック図である。
【図２】本発明の第１の実施形態に係る全体の処理手順を示したフローチャートである。
【図３】本発明の第１の実施形態に係る事前設定の処理手順を示したフローチャートである。
【図４】本発明の第１の実施形態に係る本運用の処理手順を示したフローチャートである。
【図５】本発明の第１の実施形態に係るＳＮＲ閾値算出の処理手順を示したフローチャートである。
【図６】話者とマイクロホンとの距離と、ＳＮＲ閾値との関係図である。
【図７】本発明の第２の実施形態に係る機能ブロック図である。
【図８】本発明の第２の実施形態に係る事前設定の処理手順を示したフローチャートである。
【図９】本発明の第３の実施形態に係る機能ブロック図である。
【図１０】本発明の第３の実施形態に係る事前設定の処理手順を示したフローチャートである。
【図１１】コンピュータのハードウェア構成を示した図である。
【図１２】音声信号における発話区間を示した図である。
【図１３】ＳＮＲ閾値を用いた音声認識の従来技術に係る機能ブロック図である。
【符号の説明】
【００５８】
１０  コンピュータ
１１  CPU
１２  主記憶
１３  補助記憶装置
１４  出力インタフェース
１５  入力インタフェース
１６  通信インタフェース
１７  バス
１８  モニタ
１９  キーボード
２０  マウス
２１  ネットワーク
１００  本体部
１０１  マイクロホン
１０２  距離センサ
１０３  スピーカ
１１１  ＳＮＲ閾値設定部
１１２  Ａ／Ｄ変換部
１１３  発話区間検出部
１１４  ＳＮＲ算出部
１１５  ＳＮＲ閾値決定部
１１６  ＳＮＲ判定部
１１７  音声照合処理部
１１８  出力部
１１９  音声再生部
１２１  ＳＮＲ閾値上下限値
１２２  距離上下限値
１２３  音響モデル
１２４  語彙辞書
１２５  バッファ
【図１】
2010204266.tif 000003
【図２】
2010204266.tif 000004
【図３】
2010204266.tif 000005
【図４】
2010204266.tif 000006
【図５】
2010204266.tif 000007
【図６】
2010204266.tif 000008
【図７】
2010204266.tif 000009
【図８】
2010204266.tif 000010
【図９】
2010204266.tif 000011
【図１０】
2010204266.tif 000012
【図１１】
2010204266.tif 000013
【図１２】
2010204266.tif 000014
【図１３】
2010204266.tif 000015