(57)【特許請求の範囲】
【請求項１】
音声を入力する過程と，
入力された音声が音声区間かどうかを判別する過程と，
入力された音声を音声蓄積手段に蓄積する過程と，
音声区間が検出されたとき，前記音声蓄積手段の出力ポインタが示す位置から蓄積された音声の再生を開始し，出力ポインタを進めながら蓄積された音声のうち話頭部分を速く再生し，入力音声に追いついたところで等速度再生する過程と，
音声区間終端が検出されたとき，あらかじめ決められた時間分の音声が蓄積されるまで前記出力ポインタを停止させ，蓄積された時点で出力ポインタを進ませる過程とを有する
ことを特徴とする音声蓄積再生方法。
【請求項２】
音声を入力し，入力音声が音声区間かどうかを判別する音声検出手段と，
入力された音声を蓄積する音声蓄積手段と，
前記音声蓄積手段への入力音声の蓄積を制御し，前記音声検出手段において音声区間終端が検出されたとき，あらかじめ決められた時間分の音声が蓄積されるまで出力ポインタを停止させ，蓄積された時点で出力ポインタを進ませる音声蓄積制御手段と，
前記音声検出手段において音声が検出されたときに，前記出力ポインタが示す位置から蓄積された音声の再生を開始し，出力ポインタを進めながら前記音声蓄積手段に蓄積された音声のうち話頭部分を速く再生し，入力音声に追いついたところで，等速度再生する制御を行う話速変換制御手段と，
前記話速変換制御手段の制御のもとに前記音声蓄積手段に蓄積された音声の話速を変換する話速変換手段とを備える
ことを特徴とする音声蓄積再生装置。
【請求項３】
前記音声区間の検出を音声パワーに基づいて行い，
蓄積された音声のうち話頭部分の再生を，入力音声の速度より速い一定の速度で行う
ことを特徴とする請求項１記載の音声蓄積再生方法。
【請求項４】
入力された音声の音素認識を行い，
蓄積された音声のうち話頭部分の再生を，前記音素認識結果に基づいて決められた速度で行う
ことを特徴とする請求項１記載の音声蓄積再生方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，音声通信システム等において，自然な通話の実現を可能とした音声蓄積再生方法および音声蓄積再生装置に関する。
【０００２】
【従来の技術】
音声通信を半２重通信路やネットワーク上で行うときなど効率的に音声を伝送するために，いわゆるボイス（音声）スイッチを用い，音声を送るときには音声回線を開いて音声を送り，無音時には音声回線を閉じて他のユーザが音声を送信できるようにしたり，他のデータを送受できるようにしたシステムがある。このシステムでは，送信側において，音声パワー計測によって音声パワーがある閾値を越えたときに，語頭と判断して音声回線を開くようにしたり，音素認識技術を用いることにより語頭検出精度を高め，語頭（話頭）切断を防止していた。
【０００３】
しかしながら，背景雑音が大きなときには，語頭における音声パワーは背景雑音に対し小さく，また，音声認識率も低くなることから，語頭検出誤りによる欠落が生じやすくなり，音声通話は非常に不自然かつ不明瞭になり易いという問題点があった。
【０００４】
図５に「北見」と発声したときの波形と音声パワー，および音声スイッチがＯＮしている期間の例を示す。図５の例から明らかなように，語頭の「ｋ」の部分は音声パワーが閾値に達していないため，音声スイッチのＯＮが遅れ，これにより話頭の「き」の「ｋ」の部分が欠落することがわかる。このように，話頭切断は，話頭が子音部のような音声パワーの小さいときに生じ易く，母音など音声パワーの大きなときには生じにくい。日本語を考えると，通常，音声は子音＋母音の組合せが多い。そこで，上記問題点を解決するために，常に音声を一旦蓄積しておき，音声パワーの大きな母音部等で語頭が検出されたときに，ある一定期間さかのぼった時点から音声を再生し語頭欠落を防止する方法がある。
【０００５】
【発明が解決しようとする課題】
しかしながら，音声の蓄積により，音声遅延が生じ通話は非常に不自然なものになってしまう。通常人間が会話するときには，相手の発言が終ってから発声することが多いと考えられる。例えば，１００ｍｓｅｃの音声蓄積を行うことを考えると，発声者が，発声し終ってから相手に発声の終了がわかるまでに，回線遅延がなかったとして１００ｍｓｅｃかかり，その後，相手が発声し最初の発声が相手の発声開始を知るまでに１００ｍｓｅｃかかることになる。そのため，会話間の無音部分は，合計２００ｍｓｅｃとなり，スムーズな会話が阻害される。
【０００６】
本発明は，以上のような音声スイッチを実現するときに問題となる話頭切断を防止し，かつ音声遅延を生じさせないで自然な通話を可能とすることを目的とする。
【０００７】
【課題を解決するための手段】
本発明は，上記課題を解決するため，話頭部分では，音声蓄積部から過去の音声を話速変換することにより速く再生し，音声蓄積部に過去の音声データがなくなったところで，入力されている音声データを等速度で再生し，語尾において音声遅延が生じないようにする。上記方法により，先に示した音声を蓄積しておいて話頭切断を防止するだけのシステムを用いたときの会話間の無音部分は，多くても１００ｍｓｅｃとなり，スムーズに会話することが可能となる。
【０００８】
これにより，話頭切断による会話の不明瞭さを防止し，音声遅延による会話の不自然さを防止することができる。
【０００９】
ところで，話速を変換する装置として，特開平８−８３０９５号公報「話速変換方法および装置」や，特開平８−２０２３９１号公報「話速変換装置」に記載されているものがある。これらは，受聴者の聞き取り能力に合った話速度で入力音声信号を出力する装置であり，主に話速度を下げる制御を行う。また，話速度は，音素や音声処理フレームに対しては変動するが，一つの文といった大枠で，話速度が設定されるので，本発明のように，話頭部分で速く再生し，途中から等速再生し語尾において遅延をなくすことはできない。
【００１０】
【発明の実施の形態】
図１は，本発明の構成例を示すブロック図である。図１において，１は音声を入力し，入力音声が音声区間かどうかを判別する音声検出部，２は入力された音声を蓄積する音声蓄積部であるリングバッファ，３は入力音声をリングバッファ２に格納し入力ポインタおよび出力ポインタを更新する制御を行うリングバッファ制御部，４は音声検出部１において音声が検出されたときに，どのくらい時間をさかのぼった時点の蓄積された音声から再生するかを決め，リングバッファ２に蓄積された音声のうち話頭部分を速く再生し，入力音声に追いついたところで等速度再生する制御を行う話速制御部，５は話速制御部４の制御のもとにリングバッファ２に蓄積された音声の話速を変換する話速変換器を表す。
【００１１】
図１の装置に入力された音声は，音声検出部１において音声パワー等が計測され，リングバッファ２に蓄えられる。また，音声検出部１は，常に背景雑音パワーを計測し，音声区間検出のための閾値を動的に変化させる。
【００１２】
発声者が発声しないときには，入力音声は常に過去のデータを保持しながら次々とリングバッファ２に蓄えられる。音声検出部１で音声が検出されると通知がリングバッファ制御部３および話速制御部４へ送られる。リングバッファ制御部３では，今現在書き込まれている音声データの格納されているポインタ，および過去の音声データが書き込まれているポインタを把握しているので，過去の音声データが存在していること，またどのくらい過去のデータが蓄えられているかを話速制御部４に通知する。
【００１３】
話速制御部４では，リングバッファ制御部３から受け取ったデータにより，話速変換器５に話速度を通知し，ある特定の時間内に過去のデータを全て再生し，今現在書き込まれている入力音声データのポインタに過去の入力音声データのポインタが追いつくようにする。
【００１４】
例えば，蓄積されている過去のデータが，１００ｍｓｅｃ分あり，１００ｍｓｅｃで追いつくようにしようと考えると，再生速度は２倍ということになり，この情報を話速変換器５に通知する。逆に，目標とする時間を設定せず，話速変換器５に通知する話速度は，常に２倍とすることも考えられる。
【００１５】
ところで，通常人間が話速を調整するとき，無音部や母音部の長さが大きく変化するが，子音部の速度は変化しない。逆に子音部の速度を変化させずにポーズ部や母音部の速度を変化させても，聞き取りに大きな劣化は生じない。つまり，音素により認知できる最小の継続時間が違うので，音声検出部１に音素認識を用いたときには，再生データの音素によって細かく動的に話速度を変化させることで，さらに違和感のない通話が可能となる。
【００１６】
そこで，音素認識を用いたときには，蓄積されている音声データのどこからどこまでがどの音素なのかという情報も蓄積されているので，それぞれの区間における音素に対する最小継続時間が保証される再生速度を話速変換器５に通知する。ただし，あまりにも大きな速度になると違和感が増大するので，もし，あらかじめ定められた最大速度を越えるようなときには，最大速度を話速変換器５に通知する。例えば，「おーがき」と発声したときに，「おがき」と再生されることを防ぐ役割を持たせる。
【００１７】
加えて，先に説明した認知できる最小の継続時間は，ポーズ部，無音摩擦音，破裂音，母音等，ある似通った音素間での違いは小さいので，厳密に，処理量が大きな音素認識をせず，ポーズ部，無声摩擦音，破裂音，母音等といった処理量の小さな音素の大分類を用いて，再生速度を決定することも考えられる。
【００１８】
話速変換器５は，リングバッファ２から音声フレームデータを取り出し，話速制御部４から指定された速度に応じてフレームデータを圧縮することで，フレームデータ数を減少させる。音声出力では，定期的な周期でフレームデータの１サンプル毎に再生されるので，フレームデータの削減により，話速度が大きくなる。入力音声データに追いついたところで，話速度を入力音声と同じとする。
【００１９】
図２に「北見」と発声したときの話速の変化再生される音声の例を示す。図２（ａ）は，音素認識せずにパワーのみで音声を検出し，一定速度で現在の音声データに追いつくように再生をしたとき，図２（ｂ）は，音素認識を行い，音素の種類によって再生速度を変化させる可変速度で再生をしたときの様子を示している。便宜上，音声データの単位をフレームと呼ぶ。また，簡単のため速度変化を音声フレーム数を間引くことにより表現している。「＊」は無音部を表す。
【００２０】
図２（ａ）のとき，１５フレームの「ａ」で入力音声に再生音声が到達するが，そこに到達するまで，再生速度を２倍にして再生し，その後は，入力音声に対し等速度で再生する。図２（ｂ）のとき，１〜２フレーム目の「＊」は，破裂音に先行する無音部なので，フレームを１つ飛ばした速度で再生する。３〜４フレームの「ｋ」は，子音部なので，そのまま再生する。５〜８フレームの「ｉ」は，人間が母音を認知するのに必要なフレーム数を確保するために，例えば３フレームにして再生する。９〜１０フレームの「＊」は，１フレームにする。１１〜１２フレームの「ｔ」は，子音部なのでそのまま再生する。１３〜１７フレームの「ａ」は，「ｉ」と同様の理由により５フレームを３フレームにして再生する。これ以降過去の音声データはなくなるので，そのまま再生する。
【００２１】
図２からわかるように，語尾において入力音声フレームと再生音声フレームとは一致しているので，語尾において音声遅延はなくなる。また，語尾においては，音声区間終端が検出されたときには，リングバッファ制御部３は，出力音声データのポインタ（以下，出力ポインタという）を停止させる。入力音声データのポインタ（以下，入力ポインタという）が，出力ポインタに追いついた時点で，出力ポインタを進ませる。これにより，音声終端が検出され再生が終った後に，すぐに音声区間が検出されたときに，２重に音声が再生されることを防ぐ。
【００２２】
音素認識せずにパワーのみで音声検出をする場合の制御例を図３に，音素認識をして，音素の種類により再生速度を変化させる場合の制御例を図４に示す。
【００２３】
音素認識をせずに，音声（音響）パワーのみで音声検出をする場合，まず，音声検出部１では，音声区間を音声パワーと閾値との大小比較により検出する（Ｓ１）。リングバッファ２には，リングバッファ制御部３によって常時入力音声が蓄積される。話速制御部４は，音声検出部１から通知を受け，話速変換器５が参照する話速レジスタ（図示省略）に目標話速度を設定する（Ｓ２）。
【００２４】
話速変換器５は，話速制御部４の制御のもとにリングバッファ２から音声フレームデータを取り込み（Ｓ３），話速レジスタ値に準じた話速変換を行う（Ｓ４）。その変換した音声フレームデータを出力バッファ（図示省略）へ書き出し（Ｓ５），リングバッファ２の出力ポインタをインクリメントする（Ｓ６）。
【００２５】
リングバッファ２の入力ポインタが出力ポインタに追いついたかどうかをチェックし（Ｓ７），追いついていない場合，ステップＳ３へ戻って，同様に目標話速度の速い速度による音声再生出力を繰り返す。入力ポインタが出力ポインタに追いついた場合には，話速レジスタに等速度を設定して（Ｓ８），ステップＳ３へ戻り，入力音声の速度と同じ速度で音声を再生する。以上の処理を音声区間が終了するまで繰り返す。
【００２６】
音素認識を行い，音素の種類により再生速度を変化させる場合の制御は，図４に示すように行われる。この方法では，あらかじめ音素に対する最小継続時間が格納されたテーブル１０を用意しておく。
【００２７】
まず，音声検出部１では，入力音声について音素認識を行い，その認識結果によって音声区間を検出する（Ｓ１０）。このとき音声パワーも考慮し，音声パワーによる音声区間の検出を併用してもよい。リングバッファ２には，リングバッファ制御部３によって，常時入力音声が蓄積され，入力ポインタがその都度更新される。また，音声検出部１による音素認識の結果も併せてリングバッファ２に蓄積される。
【００２８】
音声区間が検出されると，リングバッファ２から音声フレームデータを取り込み（Ｓ１１），それに対応する音素認識結果を話速制御部４に取り込む。話速制御部４は，先に処理していた音声フレームデータの音素と今から処理しようとしている音声フレームデータの音素は同じかどうかを判定する（Ｓ１２）。同じ場合には，ステップＳ１４へ進む。違う音素であれば，ステップＳ１３へ進み，音素の継続時間を調べ，音素に対する最小継続時間テーブル１０から最小継続時間を読み出し，所定の最高話速度を越えないように求められた話速度を話速レジスタに設定する（Ｓ１３）。その後，ステップＳ１４へ進む。
【００２９】
話速変換器５は，リングバッファ２から取り込まれた音声フレームデータについて，話速レジスタ値に準じた話速変換を行う（Ｓ１４）。その変換した音声フレームデータを出力バッファ（図示省略）へ書き出し（Ｓ１５），リングバッファ２の出力ポインタをインクリメントする（Ｓ１６）。
【００３０】
リングバッファ２の入力ポインタが出力ポインタに追いついたかどうかをチェックし（Ｓ１７），追いついていない場合，ステップＳ１１へ戻って，同様に可変速度による音声再生出力を繰り返す。入力ポインタが出力ポインタに追いついた場合には，話速レジスタに等速度を設定して（Ｓ１８），リングバッファ２から次の音声フレームデータを取り込み，ステップＳ１４へ戻って，入力音声の速度と同じ速度で音声を再生する。以上の処理を音声区間が終了するまで繰り返す。
【００３１】
【発明の効果】
以上のとおり，本発明により，音声スイッチを実現するときの問題となる話頭切断を防止し，なおかつ音声遅延を生じさせず，自然な通話を実現することができるようになる。
【図面の簡単な説明】
【図１】本発明の構成例を示すブロック図である。
【図２】話速変換の様子を示す図である。
【図３】音素認識せずにパワーのみで音声検出をする場合の制御フローを示す図である。
【図４】音素の種類により再生速度を変化させる場合の制御フローを示す図である。
【図５】音声波形と音声パワー，および音声スイッチの動作の関係を説明する図である。
【符号の説明】
１  音声検出部
２  リングバッファ
３  リングバッファ制御部
４  話速制御部
５  話速変換器
【図１】
0003553828.tif 000002
【図２】
0003553828.tif 000003
【図３】
0003553828.tif 000004
【図４】
0003553828.tif 000005
【図５】
0003553828.tif 000006