(57)【要約】【課題】合成音声がスピーカから出力されている間、発話区間の検出を停止しても、発話区間の検出が再開された際に、ユーザの発話を適切に判定することを目的とする。【解決手段】所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出する。信号対雑音比に基づいて判定対象フレームが有音区間に相当すると判定され、かつ、判定対象フレームが非合成音声区間の場合に、判定対象フレームが発話区間に相当するフレームであるか否かを判定する。判定は、判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて行う。背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する。【選択図】図８
2019032400.tif 000002
【特許請求の範囲】
【請求項１】
音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、前記判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出し、
算出した前記信号対雑音比に基づいて前記判定対象フレームが有音区間に相当すると判定され、かつ、前記判定対象フレームが非合成音声区間の場合に、前記判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて、前記判定対象フレームが発話区間に相当するフレームであるか否かを判定する発話判定処理であって、
前記背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する、
発話判定処理をコンピュータに実行させるためのプログラム。
【請求項２】
前記判定対象フレームが合成音声区間に相当するフレームである場合、前記判定対象フレームが非発話区間に相当するフレームであると判定する、
請求項１に記載のプログラム。
【請求項３】
前記判定対象フレームの直前のフレームが非発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが第１の閾値以上である場合、前記判定対象フレームが発話開始を含む発話区間に相当するフレームであると判定し、
前記判定対象フレームの直前のフレームが発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが前記第１の閾値より小さい第２の閾値未満である場合、前記判定対象フレームが発話終了を含む発話区間に相当するフレームであると判定する、
請求項１または請求項２に記載のプログラム。
【請求項４】
コンピュータが、
音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、前記判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出し、
算出した前記信号対雑音比に基づいて前記判定対象フレームが有音区間に相当すると判定され、かつ、前記判定対象フレームが非合成音声区間の場合に、前記判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて、前記判定対象フレームが発話区間に相当するフレームであるか否かを判定する、
発話判定方法であって、
前記背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する、
発話判定方法。
【請求項５】
音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、前記判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出する信号対雑音比算出部と、
算出した前記信号対雑音比に基づいて前記判定対象フレームが有音区間に相当すると判定され、かつ、前記判定対象フレームが非合成音声区間の場合に、前記判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて、前記判定対象フレームが発話区間に相当するフレームであるか否かを判定する発話判定部と、
を含む発話判定装置であって、
前記背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する、
発話判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発話判定プログラム、発話判定方法、及び発話判定装置に関する。
【背景技術】
【０００２】
音響信号が有音区間に相当するか無音区間に相当するかを判定し、有音区間と判定された区間に相当する音響信号のピッチゲインが所定値を越える場合に、音響信号が発話区間に相当する、と判定する技術が存在する。この技術では、非発話区間以外の区間の無音区間に相当する音響信号に基づいて背景雑音を推定する。そして、推定した背景雑音に基づいて信号対雑音比を算出し、信号対雑音比が所定値を越えるか否か判定することで、音響信号が有音区間に相当するか無音区間に相当するかを判定する。
【０００３】
この技術を、発話の存在を検出して翻訳する音声翻訳システムに適用する場合、マイクロフォン（以下、マイクと呼ぶ。）から入力されたユーザの発話の翻訳結果を表す合成音声がスピーカから出力され、当該合成音声がマイクロフォンから入力される。そして、マイクロフォンから入力された合成音声の翻訳結果を表す合成音声がスピーカから出力され、当該合成音声がマイクロフォンから入力される。即ち、翻訳される必要がない合成音声の翻訳が繰り返される。この技術では、翻訳結果を表す合成音声も発話であると判定されるためである。
【０００４】
この問題を解決するために、音声翻訳システムが合成音声を出力している間、発話区間の検出を停止する技術が存在する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１３３９９７号公報
【非特許文献】
【０００６】
【非特許文献１】上村幸男、「呼気流・呼気圧と調音音声学」、人文６、2007年、pp.247〜291、
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、音声翻訳システムが合成音声を出力している間、発話区間の検出を停止する場合、合成音声の出力が終了した後、発話区間の検出を再開しても、ユーザの発話が適切に判定されない場合がある。それは、発話区間の検出を停止している間、背景雑音の推定を行わないため、発話区間の検出を再開した時点で、実際の背景雑音と推定される背景雑音との間の誤差が存在する可能性が高いからである。
【０００８】
本発明は、１つの側面として、合成音声がスピーカから出力されている間、発話区間の検出を停止しても、発話区間の検出が再開された際に、ユーザの発話を適切に判定することを目的とする。
【課題を解決するための手段】
【０００９】
１つの実施形態では、音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出する。算出した信号対雑音比に基づいて判定対象フレームが有音区間に相当すると判定され、かつ、判定対象フレームが非合成音声区間の場合に、判定対象フレームが発話区間に相当するフレームであるか否かを判定する。判定は、判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて行う。背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する。
【発明の効果】
【００１０】
１つの側面として、合成音声がスピーカから出力されている間、発話区間の検出を停止しても、発話区間の検出が再開された際に、ユーザの発話を適切に判定することを可能とする。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係る発話判定装置の一例を示すブロック図である。
【図２】実施形態に係る音声翻訳システムの一例を示すブロック図である。
【図３】実施形態に係る信号対雑音比算出部の一例を示すブロック図である。
【図４】実施形態に係る発話判定部の一例を示すブロック図である。
【図５】発話区間の検出を説明するグラフである。
【図６】発話区間の検出に使用するピッチゲインの閾値を説明するグラフである。
【図７】実施形態に係る音声翻訳システムのハードウェア構成の一例を示すブロック図である。
【図８】実施形態に係る発話判定処理の流れの一例を示すフローチャートである。
【図９】関連技術を説明するブロック図である。
【図１０】関連技術を説明するグラフである。
【図１１】関連技術を説明するグラフである。
【図１２Ａ】関連技術を説明する線図である。
【図１２Ｂ】関連技術を説明する線図である。
【図１３】本実施形態と関連技術との比較を説明する線図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して実施形態の一例を詳細に説明する。
【００１３】
図１に、発話判定装置１０の要部機能を例示する。
【００１４】
発話判定装置１０は、信号対雑音比算出部１１（以下、「ＳＮ比算出部」１１と呼ぶ。）、発話判定部１２及び記憶部１３を含む。ＳＮ比算出部１１は、音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、信号対雑音比（以下、「ＳＮ比」と呼ぶ。）を算出する。判定対象フレームのＳＮ比は、判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音、及び判定対象フレームのパワーを使用して算出される。１フレームの時間長は、例えば、10msec〜20msecであってよい。
【００１５】
発話判定部１２は、算出したＳＮ比の大きさに基づいて判定対象フレームが有音区間に相当すると判定され、かつ、判定対象フレームが非合成音声区間に相当する場合に、この判定対象フレームが発話区間に相当するフレームであるか否かを判定する。判定対象フレームが発話区間に相当するか否かは、判定対象フレームの分割信号の周期性の強さを示すピッチゲインの大きさに基づいて、行われる。発話区間とは、ユーザが発話している区間である。
【００１６】
発話判定装置１０は、背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する。即ち、本実施形態では、非合成音声区間の無音区間に相当する場合、このフレームの分割信号に基づいて背景雑音を推定する。さらに、本実施形態では、合成音声区間に相当するフレームを非発話区間に相当するフレームであると判定するが、フレームが合成音声区間の無音区間に相当する場合も、このフレームの分割信号に基づいて背景雑音を推定する。合成音声とは、例えば、後述する音声翻訳装置で合成される音声であり、非合成音声とは、例えば、ユーザの発話による音声などの合成音声以外の音声である。
【００１７】
図２に、音声翻訳システム１の要部機能を例示する。音声翻訳システム１は、発話判定装置１０及び音声翻訳装置２０を含む。音声翻訳装置２０は、発話判定装置１０が発話区間に相当すると判定したフレームの分割信号を受信し、分割信号を使用して発話内容を認識し、元の言語とは異なる言語に翻訳し、翻訳結果を音声で出力する。
【００１８】
なお、発話判定装置１０は、音声翻訳システム１に実装することに限定されない。発話判定装置１０は、音声認識を利用するユーザインターフェイスを採用する様々な装置、例えば、ナビゲーションシステム、携帯電話機またはコンピュータなどに実装することができる。
【００１９】
図３に、ＳＮ比算出部１１の要部機能を例示する。ＳＮ比算出部１１は、パワー算出部２１と、背景雑音推定部２２と、信号対雑音比演算部２３（以下、「ＳＮ比演算部」２３と呼ぶ。）と、を含む。図４に、発話判定部１２の要部機能を例示する。発話判定部１２は、有音区間判定部２４と、ピッチゲイン算出部２５と、発話区間判定部２６と、を含む。
【００２０】
パワー算出部２１は、判定対象フレームの分割信号（以下、「音響信号」と呼ぶ。）のパワーを算出する。ｋ（ｋは自然数）番目のフレームである判定対象フレームの音響信号のパワーＳｐｏｗ（ｋ）は、例えば、（１）式で算出される。
【数１】
2019032400.tif 000003
ｓｋ（ｎ）は、ｋ番目のフレームのｎ番目のサンプリング点の音響信号の振幅値である。Ｎは１つのフレームに含まれるサンプリング点の数である。
【００２１】
なお、パワー算出部２１は、周波数帯域毎にパワーを算出してもよい。この場合、パワー算出部２１は、時間周波数変換を使用して時間領域の音響信号を周波数領域のスペクトル信号に変換する。時間周波数変換は、例えば、高速フーリエ変換（Fast Fourier Transform, FFT）であってよい。パワー算出部２１は、周波数帯域毎に、周波数帯域に含まれるスペクトル信号の二乗和を、その周波数帯域のパワーとして算出する。
【００２２】
背景雑音推定部２２は、判定対象フレームが無音区間に相当する場合、判定対象フレームの音響信号における背景雑音を推定する。判定対象フレームが、無音区間であるか否かの判定については後述する。判定対象フレームが合成音声区間に相当する場合、後述するように、判定対象フレームは非発話区間に相当すると判定される。しかしながら、本実施形態では、判定対象フレームが合成音声であっても、判定対象フレームが無音区間に相当する場合、判定対象フレームにおける音響信号の背景雑音を推定する。
【００２３】
合成音声区間であっても、無音区間であれば、背景雑音を推定することで、時間と共に変化する実際の背景雑音との誤差を小さくする。一方、合成音声区間の有音区間で背景雑音を推定すると、却って実際の背景雑音との誤差が大きくなるため、合成音声区間の有音区間では背景雑音を推定しない。
【００２４】
背景雑音Ｎｏｉｓｅ（ｋ）は、例えば、ｋ−１番目のフレーム、即ち判定対象フレームの直前のフレームで推定された背景雑音Ｎｏｉｓｅ（ｋ−１）、及び、ｋ番目のフレーム、すなわち判定対象フレームのパワーＳｐｏｗ（ｋ）を使用して、（２）式で算出される。背景雑音は、判定対象フレームが有音であるか否か判定するＳＮ比を算出するために使用される。
【数２】
2019032400.tif 000004
βは、忘却係数であり、例えば、０．９であってよい。即ち、背景雑音は、判定対象フレームの直前のフレームで推定された背景雑音及び判定対象フレームのパワーを使用して算出されるが、その直前のフレームの背景雑音はさらにその直前のフレームの背景雑音を使用して算出される。したがって、判定対象フレームの背景雑音は、判定対象フレームより前に位置するフレームの音響信号を使用して推定される。
【００２５】
判定対象フレームが有音区間に相当する場合、背景雑音推定部２２は、判定対象フレームの背景雑音を推定しない。この場合、判定対象フレームの背景雑音として直前のフレームと同じ背景雑音を設定する。
【００２６】
ＳＮ比演算部２３は、判定対象フレームのＳＮ比を算出する。ＳＮ比演算部２３は、例えば、（３）式によって、判定対象フレームのＳＮ比ＳＮＲ（ｋ）を算出する。
【数３】
2019032400.tif 000005
即ち、判定対象フレームのＳＮ比は、判定対象フレームの直前のフレームで推定された背景雑音を使用して算出される。背景雑音の推定が十分に行われるまで、即ち、十分な数のフレームを使用して背景雑音が推定されるまで、所定値を背景雑音として使用してもよい。
【００２７】
有音区間判定部２４は、判定対象フレームのＳＮ比に基づいて、判定対象フレームが有音区間に相当するか否かを判定する。なお、有音区間は、その区間中の音響信号に背景雑音以外の音響信号が含まれると推定される区間である。発話区間は有音区間に含まれるので、有音区間で発話区間の検出を行うことで、発話区間の検出精度を向上させることができる。
【００２８】
判定対象フレームが有音区間に相当するか否か判定するために、判定対象フレームのＳＮ比を有音判定閾値Ｔｈｓｎｒと比較する。有音判定閾値Ｔｈｓｎｒは、例えば、２〜３であってよい。有音区間判定部２４は、ＳＮ比が有音判定閾値Ｔｈｓｎｒ以上である場合、判定対象フレームが有音区間に相当すると判定し、ＳＮ比が有音判定閾値Ｔｈｓｎｒ未満である場合、判定対象フレームが無音区間に相当すると判定する。
【００２９】
なお、有音区間判定部２４は、ＳＮ比が有音判定閾値Ｔｈｓｎｒ以上となるフレームが一定期間（例えば、１秒間）連続した後の判定対象フレームが有音区間に相当すると判定してもよい。また、有音区間判定部２４は、ＳＮ比が有音判定閾値Ｔｈｓｎｒ以上となるフレームが存在した後、ＳＮ比が有音判定閾値Ｔｈｓｎｒ未満となるフレームが一定期間連続した後の判定対象フレームが無音区間に相当すると判定してもよい。
【００３０】
有音区間判定部２４は、判定対象フレームのパワーに基づいて、判定対象フレームが有音区間に相当するか否かを判定してもよい。この場合には、有音区間判定部２４は、判定対象フレームのパワーが所定の閾値以上であれば、判定対象フレームは有音区間に相当し、判定対象フレームのパワーが所定の閾値未満であれば、判定対象フレームは無音区間に相当する、と判定してもよい。所定の閾値は、判定対象フレームで推定された背景雑音が大きくなるほど、高くなるように設定されてもよい。
【００３１】
有音区間判定部２４は、判定対象フレームが有音区間に相当するか否かの判定結果を表す情報を背景雑音推定部２２及びピッチゲイン算出部２５に送信する。なお、有音区間に相当するか否かの判定結果を表す情報は、例えば、有音区間に相当する場合「１」であり、無音区間に相当する場合「０」である有音フラグであってよい。
【００３２】
背景雑音推定部２２及びピッチゲイン算出部２５は、有音フラグに基づいて判定対象フレームが有音区間に相当するか否か判定する。有音フラグは、例えば、記憶部１３に記憶される。
【００３３】
なお、発話区間判定部２６が発話区間に相当するフレームを検出した後、非発話区間に相当するフレームを検出する前に、判定対象フレームが無音区間に相当すると、有音区間判定部２４が判定した場合、判定対象フレームを非発話区間であると判定してもよい。
【００３４】
ピッチゲイン算出部２５は、判定対象フレームが有音区間に相当する場合、音の周期性の強さを表すピッチゲインを算出する。なお、ピッチゲインは、ピッチ予測利得とも呼ばれる。
【００３５】
発話区間では、人間の音声の特性上、音響信号に所定程度の周期性が認められる。従って、音響信号の周期性の強さを表すピッチゲインに基づいて発話区間を検出する。ピッチゲインを使用することで、発話判定装置１０は、人間の音声以外で大きな値をとり得るパワーまたはＳＮ比を利用するよりも、発話区間をより正確に検出することができる。
【００３６】
ピッチゲイン算出部２５は、（４）式を使用して、音響信号の長期自己相関Ｃ（ｄ）を、遅延量ｄ∈｛ｄｌｏｗ，…，ｄｈｉｇｈ｝について算出する。
【数４】
2019032400.tif 000006
遅延量ｄの下限値ｄｌｏｗ及び上限値ｄｈｉｇｈは、人間の音声の基本周波数である５５〜４００Ｈｚに相当する遅延量が含まれるように設定される。例えば、サンプリングレートが１６ｋＨｚである場合、ｄｌｏｗ＝４０、ｄｈｉｇｈ＝２８８であってよい。
【００３７】
即ち、５５Ｈｚの基本周期は１８ｍｓ（＝１／５５Ｈｚ）であり、４００Ｈｚの基本周期は２．５ｍｓ（＝１／４００Ｈｚ）である。サンプリングレートが１６ｋＨｚの場合、１サンプルの遅れは６２．５μｓ（＝１／１６０００）であるから、ｄｌｏｗ＝４０（＝２．５ｍｓ／６２．５μｓ）、ｄｈｉｇｈ＝２８８（＝１８ｍｓ／６２．５μｓ）となる。
【００３８】
ピッチゲイン算出部２５は、遅延量ｄｌｏｗ〜ｄｈｉｇｈの範囲に含まれる遅延量ｄの各々について、長期自己相関Ｃ（ｄ）を算出し、長期自己相関Ｃ（ｄ）のうちの最大値Ｃ（ｄｍａｘ）を求める。なお、ｄｍａｘは、長期自己相関Ｃ（ｄ）の内の最大値Ｃ（ｄｍａｘ）に対応する遅延量であり、この遅延量はピッチ周期に相当する。そしてピッチゲイン算出部２５は、（５）式によってピッチゲインｇｐｉｔｃｈを算出する。
【数５】
2019032400.tif 000007
【００３９】
発話区間判定部２６は、判定対象フレームが有音区間に相当する場合、ピッチゲインｇｐｉｔｃｈを発話区間検出閾値と比較することで、判定対象フレームが発話区間に相当するか否か判定する。即ち、発話区間判定部２６は、ユーザが発話していない非発話区間が継続している場合に、ピッチゲインｇｐｉｔｃｈが第１の閾値Ｔｈ１以上であるとユーザが発話している発話区間が開始された、即ち、発話区間であると判定する。一方、発話区間判定部２６は、発話区間が継続している場合に、ピッチゲインが第１の閾値Ｔｈ１よりも小さい第２の閾値Ｔｈ２未満であると発話区間が終了した、即ち、非発話区間であると判定する。
【００４０】
人間が連続して発声すると、語尾にかけて呼気圧が低下し、声門閉鎖の周期性は弱くなる。したがって、発話区間では、語尾にかけてピッチゲインが減衰するので、発話区間の開始を検出する際に用いられるピッチゲインに対する第１の閾値よりも、発話区間の終了を検出する際に用いられる、ピッチゲインに対する第２の閾値を低く設定する。
【００４１】
本実施形態では、発話区間判定部２６は、判定対象フレームの直前のフレームが発話区間に相当するフレームでない場合、第１の閾値とピッチゲインとを比較する。直前のフレームが発話区間に含まれるか否かは、例えば、記憶部１３に記憶されている、直前のフレームが発話区間か否かを表す発話区間フラグを参照することで判定される。ピッチゲインが第１の閾値以上である場合、発話区間判定部２６は、判定対象フレームが発話区間であると判定する。発話区間判定部２６は、発話区間フラグを発話区間であることを表す値（例えば、「１」）に設定する。
【００４２】
判定対象フレームの直前のフレームが発話区間に相当する場合、発話区間判定部２６は、第１の閾値より小さい第２の閾値と判定対象フレームのピッチゲインとを比較する。発話区間判定部２６は、ピッチゲインが第２の閾値未満である場合、直前のフレームまでで発話区間は終了したと判定する。発話区間判定部２６は、発話区間フラグを、非発話区間であることを表す値（例えば、「０」）に設定する。
【００４３】
図５は、本実施形態による、発話判定処理の概要を説明する図である。図５の各グラフにおいて、横軸は時間を表す。１番上のグラフでは、縦軸はＳＮ比を表す。上から２番目のグラフでは、縦軸は有音区間か無音区間かの判定結果を表す。上から３番目のグラフでは、縦軸はピッチゲインを表す。１番下のグラフでは、縦軸は発話区間か否かの判定結果を表す。
【００４４】
１番上のグラフで、線３０１はＳＮ比の時間変化を表す。上から２番目のグラフで、線３０２は、有音区間か無音区間かの判定結果を表す。図５の例では、線３０１で示されるように、時刻ｔ１で、ＳＮ比が有音判定閾値Ｔｈｓｎｒ以上となり、時刻ｔ４で、ＳＮ比が有音判定閾値Ｔｈｓｎｒ未満となる。その結果、線３０２で示されるように、時刻ｔ１から時刻ｔ４までの区間は有音区間（「１」）であると判定され、時刻ｔ１より前、及び、時刻ｔ４より後は、無音区間（「０」）であると判定される。
【００４５】
上から３番目のグラフで、線３０３の縦軸は、ピッチゲインを表す。時刻ｔ２で、ピッチゲインは第１の閾値Ｔｈ１以上となり、時刻ｔ３で、ピッチゲインは第２の閾値Ｔｈ２未満となる。したがって、１番下のグラフの線３０４で示されるように、時刻ｔ２から時刻ｔ３までが発話区間（「１」）であると判定される。
【００４６】
線３０３で示されるように、ピッチゲインは、発話開始後ピークに達すると徐々に減衰する。したがって、第１の閾値Ｔｈ１未満となる時刻ｔ２’で発話区間が終了したと判定すると、本来の発話区間よりも短い区間が発話区間として検出される。本実施形態では、図６に例示するように、発話区間の開始を第１の閾値Ｔｈ１で判定し、発話区間の終了を第１の閾値Ｔｈ１より小さい第２の閾値Ｔｈ２で判定する。即ち、閾値を変化させ、第１の閾値Ｔｈ１より小さい第２の閾値Ｔｈ２未満となる時刻ｔ３で発話区間が終了したと判定することで、発話区間を適切に検出することができる。
【００４７】
なお、本実施形態は、第１の閾値及び第１の閾値より小さい第２の閾値を使用することに限定されない。例えば、単一の閾値を使用してもよい。
【００４８】
音声翻訳装置２０は、発話判定装置１０から発話区間の検出結果を受け取り、既存の方法で、発話区間の音響信号を使用して発話内容を認識し、元の言語とは異なる言語に翻訳し、翻訳結果を音声で出力する。
【００４９】
図７に、音声翻訳システム１のハードウェア構成を例示する。音声翻訳システム１は、ハードウェアであるプロセッサの一例であるＣＰＵ（Central Processing Unit）４１、一次記憶部４２、二次記憶部４３、及び外部インターフェイス４４を含む。音声翻訳システム１は、また、マイクロフォン３１（以下、「マイク」３１と呼ぶ。）及び音声出力部の一例であるスピーカ３２を含む。
【００５０】
ＣＰＵ４１、一次記憶部４２、二次記憶部４３、外部インターフェイス４４、マイク３１及びスピーカ３２は、バス４９を介して相互に接続されている。
【００５１】
一次記憶部４２は、例えば、ＲＡＭ（Random Access Memory）などの揮発性のメモリである。二次記憶部４３は、例えば、ＨＤＤ（Hard Disk Drive）、又はＳＤＤ（Solid State Drive）などの不揮発性のメモリと、ＲＡＭなどの揮発性のメモリと、を含む。二次記憶部４３は、図１の記憶部１３の一例である。
【００５２】
二次記憶部４３は、プログラム格納領域４３Ａ及びデータ格納領域４３Ｂを含む。プログラム格納領域４３Ａは、一例として、発話判定プログラム、及び音声翻訳プログラムなどのプログラムを記憶している。データ格納領域４３Ｂは、一例として、マイク３１から取得した音の音響信号、当該音響信号を使用して翻訳された元の言語とは異なる言語の音響信号、及び、発話区間であるか否かを示すフラグなどの中間データを記憶する。
【００５３】
ＣＰＵ４１は、プログラム格納領域４３Ａから発話判定プログラムを読み出して一次記憶部４２に展開する。ＣＰＵ４１は、発話判定プログラムを実行することで、図２の発話判定装置１０、即ち、図１のＳＮ比算出部１１及び発話判定部１２として動作する。
【００５４】
ＣＰＵ４１は、プログラム格納領域４３Ａから音声翻訳プログラムを読み出して一次記憶部４２に展開する。ＣＰＵ４１は、音声翻訳プログラムを実行することで、図２の音声翻訳装置２０として動作する。なお、発話判定プログラム及び音声翻訳プログラムなどのプログラムは、ＤＶＤ（Digital Versatile Disc）などの非一時的記録媒体に記憶され、記録媒体読込装置を介して読み込まれ、一次記憶部４２に展開されてもよい。
【００５５】
外部インターフェイス４４には、外部装置が接続され、外部インターフェイス４４は、外部装置とＣＰＵ４１との間の各種情報の送受信を司る。なお、マイク３１及びスピーカ３２は、外部インターフェイス４４を介して、外部装置として接続されていてもよい。
【００５６】
次に、発話判定装置１０の作用の概略について説明する。発話判定装置１０の作用の概略を図８に例示する。上述した処理については、記載を簡略にするため説明を省略する。例えば、ユーザが音声翻訳システム１の電源を投入すると、ＣＰＵ４１は、ステップ１０１で、マイク３１によって取得された音に対応する音響信号の１フレーム分を判定対象フレームとして読み込む。
【００５７】
ＣＰＵ４１は、ステップ１０２で、１フレーム分の音響信号を使用して、パワーを算出する。ＣＰＵ４１は、ステップ１０３で、上記（３）式に基づいて、算出したパワーを使用してＳＮ比を算出する。
【００５８】
ＣＰＵ４１は、ステップ１０４で、算出したＳＮ比と有音判定閾値Ｔｈｓｎｒとを比較して、判定対象フレームが有音区間に相当するか否かを判定する。ＳＮ比が有音判定閾値Ｔｈｓｎｒ未満で、ステップ１０４の判定が否定された場合、ＣＰＵ４１は、ステップ１０５で、判定対象フレームの音響信号を使用して背景雑音を推定した後ステップ１０６に進む。ステップ１０４の判定が肯定された場合、ＣＰＵ４１はステップ１０６に進む。
【００５９】
即ち、本実施形態では、後述するように、合成音声区間に相当する判定対象フレームは非発話区間であると判定するが、合成音声区間に相当する判定対象フレームであっても、無音区間に相当する場合、背景雑音を推定する。
【００６０】
ＣＰＵ４１は、ステップ１０６で、判定対象フレームが合成音声区間に相当するか否か判定する。本実施形態では、合成音声をスピーカ３２によって出力している場合、音声翻訳システム１は、合成音声フラグを「１」に設定し、合成音声をスピーカ３２によって出力していない場合、音声翻訳システム１は、合成音声フラグを「０」に設定している。
【００６１】
合成音声フラグは、例えば、二次記憶部４３のデータ格納領域４３Ｂに記憶されている。したがって、ＣＰＵ４１は、合成音声フラグが「１」である場合、判定対象フレームが合成音声区間に相当すると判定し、合成音声フラグが「０」である場合、判定対象フレームが合成音声区間に相当しないと判定する。
【００６２】
合成音声フラグが「０」で、ステップ１０６の判定が否定された場合、ＣＰＵ４１は、ステップ１０７で、判定対象フレームが有音区間に相当するか否かを判定する。ＣＰＵ４１は、例えば、ステップ１０４の判定結果を利用してもよいし、ステップ１０４と同様に判定対象フレームが有音区間に相当するか否かを判定してもよい。
【００６３】
ステップ１０７の判定が肯定された場合、即ち、有音区間である場合、ＣＰＵ４１は、ステップ１０８で、判定対象フレームのピッチゲインを算出する。ＣＰＵ４１は、ステップ１０９で、判定対象フレームの直前のフレームが発話区間に相当するフレームであったか否かを判定する。
【００６４】
本実施形態では、発話区間に相当する場合、当該フレームに対応する発話フラグに「１」を設定し、非発話区間に相当する場合、当該フレームに対応する発話フラグに「０」を設定するものとする。発話フラグは、例えば、二次記憶部４３のデータ格納領域４３Ｂに保存されている。したがって、ＣＰＵ４１は、判定対象フレームの直前のフレームの発話フラグが「１」である場合、直前のフレームが発話区間に相当するフレームであると判定する。また、直前のフレームの発話フラグが「０」である場合、直前のフレームが非発話区間に相当するフレームであると判定する。
【００６５】
ステップ１０９の判定が肯定された場合、即ち、発話フラグが「０」で、直前のフレームが非発話区間に相当する場合、ＣＰＵ４１は、ステップ１１０で、ピッチゲインが第１の閾値Ｔｈ１以上であるか否かを判定する。ステップ１１０の判定が肯定された場合、即ち、ピッチゲインが第１の閾値Ｔｈ１以上である場合、ＣＰＵ４１は、ステップ１１１で発話フラグに「１」を設定し、ステップ１１４に進む。ステップ１１０の判定が否定された場合、即ち、ピッチゲインが第１の閾値Ｔｈ１未満である場合、ＣＰＵ４１は、発話フラグを変更せず、即ち、発話フラグを「０」に設定し、ステップ１１４に進む。
【００６６】
ステップ１０９の判定が否定された場合、即ち、発話フラグが「１」で、直前のフレームが発話区間に相当すると判定された場合、ＣＰＵ４１は、ステップ１１２で、ピッチゲインが第１の閾値Ｔｈ１より小さい第２の閾値Ｔｈ２未満であるか否かを判定する。ステップ１１２の判定が否定された場合、発話区間が継続していると判断してＣＰＵ４１は、発話フラグを変更しない。即ち、ＣＰＵ４１は、発話フラグに「１」を設定し、ステップ１１４に進む。
【００６７】
ステップ１１２の判定が肯定された場合、即ち、発話区間が終了したと判断した場合、ＣＰＵ４１は、ステップ１１３で、発話フラグに「０」を設定し、ステップ１１４に進む。
【００６８】
一方、ステップ１０６の判定が肯定された場合、即ち合成音声区間の場合も、ＣＰＵ４１は、ステップ１１３で、発話フラグに「０」を設定し、ステップ１１４に進む。即ち、本実施形態では、判定対象フレームが合成音声区間に相当する場合であっても、ステップ１０４及びステップ１０５で、背景雑音の推定は行う。一方、判定対象フレームが合成音声区間に相当する場合、ステップ１０７〜ステップ１１２の処理は行わず、ステップ１１３で、発話フラグを「０」に設定し、判定対象フレームは非発話区間であるとする。
【００６９】
ＣＰＵ４１は、ステップ１１４で、音響信号が終了したか否か判定する。ステップ１１４の判定が肯定された場合、例えば、マイク３１の電源がオフされたことにより、音響信号が終了した場合、ＣＰＵ４１は、発話判定処理を終了する。ステップ１１４の判定が否定された場合、次のフレームを判定対象フレームとするためにｋをインクリメントし、ＣＰＵ４１は、ステップ１０１に戻る。
【００７０】
なお、ステップ１０６で、判定対象フレームが合成音声区間であるか否か判定する際に、合成音声フラグを使用する例について説明したが、本実施形態はこれに限定されない。例えば、スピーカ３２が音を出力しているか否かを検知し、スピーカ３２が音を出力している場合に、出力されている音に対応する判定対象フレームが合成音声区間であると判定してもよい。
【００７１】
なお、図８のフローチャートは例示であり、各ステップの順序は変更されてもよい。
【００７２】
［関連技術の概要］
図９に例示するように、関連技術の音声翻訳システムは、ユーザの音声である非合成音声ＮＳＶを含む音をマイク３１’で取得して、ブロック２０１で、取得された音の音響信号を使用して発話区間の検出を行う。音声翻訳システムは、ブロック２０２で、検出された発話区間の音響信号を使用して音声認識を行い、ブロック２０３で、音声認識された第１言語を第２言語に翻訳する。音声翻訳システムは、ブロック２０４で、翻訳された第２言語を表す合成音声を生成し、生成した合成音声ＳＶをスピーカ３２’で出力する。
【００７３】
音声翻訳システムが、出力された合成音声ＳＶをマイク３１’で取得すると、合成音声ＳＶの音響特徴とユーザの音声である非合成音声ＮＳＶの音響特徴とは類似しているため、ブロック２０１で、取得された音声の音響信号を使用して発話区間の検出を行う。音声翻訳システムは、ブロック２０２で、検出された発話区間の音響信号を使用して音声認識を行い、ブロック２０３で、音声認識された第２言語を第１言語に翻訳する。音声翻訳システムは、ブロック２０４で、翻訳された第１言語を表す合成音声を生成し、生成した合成音声ＳＶをスピーカ３２’で出力する。
【００７４】
即ち、マイク３１’で取得された音の音響信号が有音区間に相当すると判定された場合に発話を検出し、翻訳を行う音声翻訳システムでは、第１言語から第２言語への翻訳と第２言語から第１言語への翻訳が無限に繰り返される。
【００７５】
［関連技術の発話検出］
図１０の１番上の図に非合成音声ＮＳＶの音響信号の振幅を例示する。図１０の上から２番目の図に非合成音声ＮＳＶを使用して取得したＳＮ比を例示する。上記したように、ＳＮ比が閾値Ｔｈｓｎｒ以上である区間が有音区間であると判定する。図１０の１番下の図に、ＳＮ比が閾値Ｔｈｓｎｒ以上である区間を「１」とし、ＳＮ比が閾値Ｔｈｓｎｒ未満である区間を「０」とした判定結果を例示する。即ち、音声翻訳システムは、判定結果が「１」である区間ＵＴが有音区間であると判定し、区間ＵＴの音響信号で、ピッチゲインを使用して発話検出を行う。
【００７６】
図１１の１番上の図に非合成音声ＮＳＶ及び合成音声ＳＶの音響信号の振幅を例示する。即ち、ユーザが発話し、音声翻訳システムがユーザの発話に対応する翻訳結果を合成音声で出力した場合である。図１１の上から２番目の図に非合成音声ＮＳＶ及び合成音声ＳＶを使用して取得したＳＮ比を例示する。上記したように、ＳＮ比が閾値Ｔｈｓｎｒ以上である区間が有音区間であると判定する。
【００７７】
図１１の１番下の図に、ＳＮ比が閾値Ｔｈｓｎｒ以上である区間を「１」とし、ＳＮ比が閾値Ｔｈｓｎｒ未満である区間を「０」とした判定結果を例示する。即ち、音声翻訳システムは、判定結果が「１」である区間ＵＴが有音区間であると判定し、区間ＵＴの音響信号で、ピッチゲインを使用して発話検出を行う。即ち、非合成音声ＮＳＶだけでなく、合成音声ＳＶに対しても発話検出が行われる。非合成音声ＮＳＶのピッチゲインと合成音声ＮＳＶのピッチゲインとは類似しているため、非合成音声ＮＳＶだけでなく、合成音声ＳＶも発話として検出される。
【００７８】
［関連技術の背景雑音］
合成音声ＳＶが発話であると判定されないように、音声翻訳システムが合成音声ＳＶを出力している間、発話検出を停止する関連技術で推定される背景雑音について説明する。図１２Ａに、合成音声ＳＶ及び非合成音声ＮＳＶのパワーを例示する。合成音声ＳＶは、音声翻訳システムのマイクに近いスピーカによって出力されるため、ユーザの発話である非合成音声ＮＳＶよりもパワーが大きい。
【００７９】
図１２Ａに、線ＥＢＮで、関連技術で推定される背景雑音を例示する。図１２Ｂに線ＲＢＮで実際の背景雑音を例示する。図１２Ａの合成音声ＳＶの再生が開始される前の背景雑音ＥＢＮは、図１２Ｂの同じ時刻の実際の背景雑音ＲＢＮと略同じ値であるとする。合成音声ＳＶが再生されている間、即ち、発話検出を停止している間、関連技術では、背景雑音の推定を行わないため、実際の背景雑音ＲＢＮが変化しても推定される背景雑音ＥＢＮの値は変化しない。
【００８０】
したがって、実際の背景雑音ＲＢＮと推定される背景雑音ＥＢＮとの間に誤差が生じる。合成音声ＳＶの再生が終了されると、無音区間で背景雑音の推定が行われる。ここで、例えば、図１２Ａに例示する区間ＥＲＲでは、実際の背景雑音ＲＢＮと推定される背景雑音ＥＢＮとの間に生じた誤差で、非合成音声ＳＶの音響信号が有音区間に相当すると適切に判定されない。
【００８１】
背景雑音の推定は、（２）式に例示するように、判定対象のフレームより前に位置するフレームで推定された背景雑音に影響され、合成音声ＳＶが再生されている間に生じた実際の背景雑音との誤差が迅速には低減しないためである。
【００８２】
［本実施形態と関連技術との比較］
本実施形態では、合成音声ＳＶが再生されている間発話検出を停止することで合成音声ＳＶを発話として検出しないようにする。一方で、合成音声ＳＶが再生されていない間だけでなく、合成音声ＳＶが再生されている間も無音区間で背景雑音の推定を行う。図１３は、本実施形態で推定される背景雑音のパワーＥＢＮ１と、関連技術で推定される背景雑音のパワーＥＢＮ２と、を例示する。
【００８３】
線ＩＳは、無音区間ＮＳ、非合成音声区間ＮＳＶ、及び合成音声区間ＳＶにわたる入力音のパワーを表し、線ＲＢＮは実際の背景雑音を表す。合成音声ＳＶの再生が終了した直後の区間ＯＴに着目すると、合成音声ＳＶが再生されている間であっても、無音区間ＮＳであれば背景雑音を推定する本実施形態の背景雑音ＥＢＮ１は、関連技術の背景雑音ＥＢＮ２よりも実際の背景雑音ＲＢＮに近い。即ち、本実施形態では、合成音声ＳＶの再生が終了した直後の区間ＯＴでも、音響信号が有音区間に相当するか否かが適切に判定されるため、音響信号が発話区間に相当するか否かも適切に判定される。
【００８４】
詳細には、例えば、実際の背景雑音が５０ｄＢＡから６５ｄＢＡに変化した場合、合成音声再生直後の０．１秒間の実際の背景雑音と本実施形態で推定された背景雑音との誤差が約２ｄＢであるのに対し、関連技術では約１０ｄＢとなる。即ち、本実施形態では、関連技術よりも、雑音の推定誤差を約８ｄＢ低減することができる。これは、本実施形態では、雑音の推定誤差を、関連技術の約１／６．３（＝１／１０８／１０）とすることができる、ということである。
【００８５】
本実施形態では、音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出する。算出した信号対雑音比に基づいて判定対象フレームが有音区間に相当すると判定され、かつ、判定対象フレームが非合成音声区間の場合に、判定対象フレームが発話区間に相当するフレームであるか否かを判定する。判定対象フレームが発話区間に相当するフレームであるか否かは、判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて判定される。背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する。
【００８６】
これにより、本実施形態では、合成音声がスピーカから出力されている間、発話区間の検出を停止しても、発話区間の検出が再開された際に、ユーザの発話を適切に判定することを可能とする。
【００８７】
以上の各実施形態に関し、更に以下の付記を開示する。
（付記１）
音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、前記判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出し、
算出した前記信号対雑音比に基づいて前記判定対象フレームが有音区間に相当すると判定され、かつ、前記判定対象フレームが非合成音声区間の場合に、前記判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて、前記判定対象フレームが発話区間に相当するフレームであるか否かを判定する発話判定処理であって、
前記背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する、
発話判定処理をコンピュータに実行させるためのプログラム。
（付記２）
前記判定対象フレームが合成音声区間に相当するフレームである場合、前記判定対象フレームが非発話区間に相当するフレームであると判定する、
付記１のプログラム。
（付記３）
前記判定対象フレームの直前のフレームが非発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが第１の閾値以上である場合、前記判定対象フレームが発話開始を含む発話区間に相当するフレームであると判定し、
前記判定対象フレームの直前のフレームが発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが前記第１の閾値より小さい第２の閾値未満である場合、前記判定対象フレームが発話終了を含む発話区間に相当するフレームであると判定する、
付記１または付記２のプログラム。
（付記４）
コンピュータが、
音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、前記判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出し、
算出した前記信号対雑音比に基づいて前記判定対象フレームが有音区間に相当すると判定され、かつ、前記判定対象フレームが非合成音声区間の場合に、前記判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて、前記判定対象フレームが発話区間に相当するフレームであるか否かを判定する、
発話判定方法であって、
前記背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する、
発話判定方法。
（付記５）
前記判定対象フレームが合成音声区間に相当するフレームである場合、前記判定対象フレームが非発話区間に相当するフレームであると判定する、
付記４の発話判定方法。
（付記６）
前記判定対象フレームの直前のフレームが非発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが第１の閾値以上である場合、前記判定対象フレームが発話開始を含む発話区間に相当するフレームであると判定し、
前記判定対象フレームの直前のフレームが発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが前記第１の閾値より小さい第２の閾値未満である場合、前記判定対象フレームが発話終了を含む発話区間に相当するフレームであると判定する、
付記４または付記５の発話判定方法。
（付記７）
音響信号を複数個に分割した所定長の分割信号を各々含む複数のフレームの中の判定対象フレームについて、前記判定対象フレームより前に位置するフレームの分割信号を使用して推定された背景雑音を使用して信号対雑音比を算出する信号対雑音比算出部と、
算出した前記信号対雑音比に基づいて前記判定対象フレームが有音区間に相当すると判定され、かつ、前記判定対象フレームが非合成音声区間の場合に、前記判定対象フレームの分割信号の周期性の強さを示すピッチゲインに基づいて、前記判定対象フレームが発話区間に相当するフレームであるか否かを判定する発話判定部と、
を含む発話判定装置であって、
前記背景雑音を、合成音声区間の無音区間に相当するフレームの分割信号、及び、非合成音声区間の無音区間に相当するフレームの分割信号に基づいて推定する、
発話判定装置。
（付記８）
前記発話判定部は、
前記判定対象フレームが合成音声区間に相当するフレームである場合、前記判定対象フレームが非発話区間に相当するフレームであると判定する、
付記７の発話判定装置。
（付記９）
音を出力する音声出力部をさらに含み、
前記発話判定部は、
前記音声出力部が音を出力している場合に、出力されている前記音に対応する前記判定対象フレームが合成音声区間に相当するフレームであると判定する、
付記８の発話判定装置。
（付記１０）
前記発話判定部は、
前記判定対象フレームの直前のフレームが非発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが第１の閾値以上である場合、前記判定対象フレームが発話開始を含む発話区間に相当するフレームであると判定し、
前記判定対象フレームの直前のフレームが発話区間に相当するフレームであって、かつ、前記判定対象フレームのピッチゲインが前記第１の閾値より小さい第２の閾値未満である場合、前記判定対象フレームが発話終了を含む発話区間に相当するフレームであると判定する、
付記７〜付記９の何れかの発話判定装置。
【図１】
2019032400.tif 000008
【図２】
2019032400.tif 000009
【図３】
2019032400.tif 000010
【図４】
2019032400.tif 000011
【図５】
2019032400.tif 000012
【図６】
2019032400.tif 000013
【図７】
2019032400.tif 000014
【図８】
2019032400.tif 000015
【図９】
2019032400.tif 000016
【図１０】
2019032400.tif 000017
【図１１】
2019032400.tif 000018
【図１２Ａ】
2019032400.tif 000019
【図１２Ｂ】
2019032400.tif 000020
【図１３】
2019032400.tif 000021