説明

音声判定装置および音声判定方法

【課題】ノイズレベルに拘らず、入力信号の音声区間を検出する。
【解決手段】音声判定装置100は、入力信号をフレーム単位で切り出し、フレーム化入力信号を生成するフレーム化部120と、フレーム化入力信号を変換して、周波数毎のスペクトルを集めたスペクトルパターンを生成するスペクトル生成部122と、スペクトルパターンの各スペクトルのエネルギーと、分割周波数帯域のうちスペクトルが含まれる分割周波数帯域における帯域別エネルギーとのエネルギー比が第1閾値を超えるか否かを判定するピーク検出部132と、判定結果に基づいて、フレーム化入力信号が音声であるか否かを判定する音声判定部134と、スペクトルパターンの各分割周波数帯域におけるスペクトルの周波数方向の平均エネルギーを導出する周波数平均部126と、分割周波数帯域毎に、平均エネルギーの時間方向の平均である帯域別エネルギーを導出する時間平均部130とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、入力信号の音声区間を検出する音声判定装置および音声判定方法に関する。
【背景技術】
【0002】
音声を収音して生成した信号である入力信号には、音声が含まれる音声区間と、会話の合間や息継ぎ等により音声が含まれない非音声区間がある。例えば、音声認識装置では、音声区間と非音声区間とを特定することで、音声の認識率の向上、および、音声認識処理の効率化を図っている。また、携帯電話や無線機等を利用した移動体通信では、音声区間と非音声区間で、入力信号の符号化処理を切り替えることにより、音質を維持しつつ、圧縮率や転送効率を高めることができる。このような移動体通信では、リアルタイム性が要求されるため、音声区間の判定処理による音声の遅延を抑えることが望まれる。
【0003】
上述した遅延を抑えた音声区間の判定処理として、例えば、入力信号のフレームの周波数分布の平坦度合いを示す数値が閾値以上であるか否かで、音声区間を検出したり(例えば、特許文献1)、入力信号のフレームにケプストラム法を用いて倍音成分を最も多く含む基本波を示す情報である調波情報を導出し、その調波情報と、そのフレームのエネルギーが閾値以上か否かを示すパワー情報とがそれぞれ音声の特徴を示すか否かで音声区間を検出したり(例えば、特許文献2)する技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−272052号公報
【特許文献2】特開2009−294537号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、上述した特許文献1、2等の従来の音声区間の検出技術は、ノイズが比較的小さい環境では有効であるが、ノイズが大きくなると、入力信号のフレームの周波数分布の平坦さ(ピークの頻度)、ピッチ(音高)等の音声の性質が、ノイズに埋もれてしまい、音声区間の誤検出が生じ易くなる。
【0006】
また、ケプストラム法は、フーリエ変換を2回も行う必要があり、周波数領域上の処理負荷が高いため電力消費が多くなる。そのため、特に、移動体通信のようにバッテリ駆動を前提とする場合、ケプストラム法を用いると、電力消費を賄うため、バッテリの容量を大きくする必要があり、高コスト化や大型化を招いてしまう。
【0007】
そこで本発明は、このような課題に鑑み、ノイズレベルに拘らず、入力信号の音声区間を検出することが可能な、音声判定装置および音声判定方法を提供することを目的としている。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明の音声判定装置は、入力信号を予め定められた時間幅を有するフレーム単位で切り出し、フレーム化入力信号を生成するフレーム化部と、フレーム化入力信号を、時間領域から周波数領域に変換して、周波数毎のスペクトルを集めたスペクトルパターンを生成するスペクトル生成部と、スペクトルパターンの各スペクトルのエネルギーと、予め定められた帯域幅で分割された周波数帯域である複数の分割周波数帯域のうちスペクトルが含まれる分割周波数帯域における帯域別エネルギーとのエネルギー比が、予め定められた第1閾値を超えるか否かを判定するピーク検出部と、ピーク検出部の判定結果に基づいて、フレーム化入力信号が音声であるか否か判定する音声判定部と、スペクトルパターンの各分割周波数帯域におけるスペクトルの周波数方向の平均エネルギーを導出する周波数平均部と、分割周波数帯域毎に、平均エネルギーの時間方向の平均である帯域別エネルギーを導出する時間平均部と、を備えることを特徴とする。
【0009】
音声判定部は、エネルギー比が第1閾値を超えるスペクトルが予め定められた数以上であると、フレーム化入力信号が音声であると判定してもよい。
【0010】
時間平均部は、エネルギー比が第1閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、エネルギー比が第1閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーに、1以下の調整値を乗算したエネルギーに基づいて分割周波数帯域毎に帯域別エネルギーを導出してもよい。
【0011】
周波数平均部は、エネルギー比が第1閾値を超えたスペクトル、または、エネルギー比が第1閾値を超えたスペクトルとスペクトルに隣接するスペクトルとを除外して平均エネルギーを導出してもよい。
【0012】
時間平均部は、エネルギー比が第1閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、エネルギー比が第1閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、時間方向の平均に反映しなくてもよい。
【0013】
平均エネルギーを時間方向の平均に反映するか否かを判定するための、第1閾値とは異なる第2閾値を設け、時間平均部は、エネルギー比が第2閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、エネルギー比が第2閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、時間方向の平均に反映しなくてもよい。
【0014】
スペクトル生成部は、少なくとも200Hzから700Hzのスペクトルパターンを生成してもよい。
【0015】
予め定められた帯域幅は、100Hzから150Hzまでの帯域幅であってもよい。
【0016】
上記課題を解決するために、本発明の音声判定方法は、入力信号を予め定められた時間幅を有するフレーム単位で切り出し、フレーム化入力信号を生成し、フレーム化入力信号を、時間領域から周波数領域に変換して、周波数毎のスペクトルを集めたスペクトルパターンを生成し、スペクトルパターンの各スペクトルのエネルギーと、予め定められた帯域幅で分割された周波数帯域である複数の分割周波数帯域のうちスペクトルが含まれる分割周波数帯域における帯域別エネルギーとのエネルギー比が、予め定められた第1閾値を超えた場合、フレーム化入力信号が音声であると判定し、スペクトルパターンの各分割周波数帯域におけるスペクトルの周波数方向の平均エネルギーを導出し、分割周波数帯域毎に、平均エネルギーの時間方向の平均である帯域別エネルギーを導出することを特徴とする。
【発明の効果】
【0017】
以上説明したように本発明では、ノイズレベルに拘らず、入力信号の音声区間を検出することが可能となる。
【図面の簡単な説明】
【0018】
【図1】音声を示す時間波形図である。
【図2】音声のフォルマント表示図である。
【図3】ノイズが比較的多い環境における音声を示す時間波形図である。
【図4】ノイズが比較的多い環境における音声のフォルマント表示図である。
【図5】音声判定装置の概略的な機能を示した機能ブロック図である。
【図6】音声判定方法の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0019】
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値等は、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書及び図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
【0020】
従来の音声区間の検出技術では、音声に対して、音声を収音する対象となる範囲におけるノイズである周囲ノイズ(雑音)が大きくなると、音声特性の検出が困難になり、音声区間の誤検出が生じてしまう場合がある。例えば、交通量の多い交差点、作業中の工事現場、および操業中の工場内等において、携帯電話や無線機等の移動体通信機器を用いて会話する場合、音声区間の判定が正しく行われないことがある。そのため、音声符号化処理において、音声区間を非音声区間と誤判定して、音声区間の入力信号の情報を圧縮し過ぎたり、非音声区間を音声区間と誤判定して効率的な符号化がなされなかったりして、音質の劣化を招き会話に支障をきたすことがあった。また、符号化回路を用いない場合であっても、ノイズキャンセル等の機能を有する移動体通信機器において、音声であるか否かの誤判定が生じると、正常にノイズをキャンセルできず、受話側が非常に聞き取り難い状況になっていた。
【0021】
図1は、音声を示す時間波形図であり、図2は、図1に示す音声のフォルマント表示図である。また、図3は、ノイズが比較的多い環境における音声を示す時間波形図であり、図4は、図3に示す音声のフォルマント表示図である。図1、3における縦軸はエネルギー(dB)を、横軸は時間(s)を示し、図2、4における縦軸は周波数(Hz)を、横軸は時間(s)を示す。図1の時間軸は図2の時間軸に対応し、図3の時間軸は図4の時間軸に対応している。
【0022】
図1に示す音声のみの時間波形を、図2のようにフォルマント表示図に表わすと、音声の特徴である縞模様を容易に観察することができる。しかし、図3に示すように、音声に周囲ノイズが加わった場合、その時間波形を図4のようにフォルマント表示すると、音声の特徴である縞模様の濃淡の規則性が崩れ、縞模様を識別し難くなる。このように周囲ノイズが大きい場合、ケプストラム法や単にスペクトルピークを検出する従来の音声区間の検出技術を用いても、音声の特徴が周囲ノイズに埋もれてしまい、音声区間を検出することができない場合があった。
【0023】
また、移動体通信では、音声区間の判定処理による遅延を抑えることが望まれる。したがって、音声の特徴を検出し易くするための、周波数解析結果を数フレームに渡って加算する時間方向への重加算処理や、解析範囲の広い処理、例えば音節や文節に対するパターン認識を利用した処理、および時間領域のサンプルが長時間分必要な自己相関を用いた処理等は、遅延を招き適当ではない。
【0024】
さらに、移動体通信のようにバッテリ駆動を前提とするシステムでは、低消費電力であることが望まれる。特に、デジタル無線では、遅延の少なさ、低処理負荷、エネルギーが高レベルなノイズの抑制が求められる。しかし、ケプストラム法は、比較的処理負荷が大きく電力消費が多くなってしまい、高コスト化や大型化を招く。
【0025】
そこで、本実施形態では、ノイズレベルに拘らず、入力信号の音声区間を検出できる音声判定装置について詳述し、続いて、その音声判定装置を用いた音声判定方法について説明する。
【0026】
(音声判定装置100)
図5は、音声判定装置100の概略的な構成を説明するための機能ブロック図である。音声判定装置100は、フレーム化部120と、スペクトル生成部122と、帯域分割部124と、周波数平均部126と、保持部128と、時間平均部130と、ピーク検出部132と、音声判定部134と、を含んで構成される。
【0027】
フレーム化部120は、収音装置200が、音声を収音しデジタル信号に変換した入力信号を、予め定められた時間幅を有するフレーム単位(所定サンプル数長)で順次切り出し、フレーム単位の入力信号(以下、単に「フレーム化入力信号」と称す)を生成する。また、収音装置200から入力される入力信号がアナログ信号である場合、フレーム化部120の前段にADコンバーターを配置しデジタル信号に変換するとしてもよい。そして、フレーム化部120は、生成したフレーム化入力信号を順次、スペクトル生成部122に送信する。
【0028】
スペクトル生成部122は、フレーム化部120から受信したフレーム化入力信号の周波数分析を行い、時間領域のフレーム化入力信号を周波数領域のフレーム化入力信号に変換して、スペクトルを集めたスペクトルパターンを生成する。スペクトルパターンは、所定の周波数帯域に渡って、周波数とその周波数におけるエネルギーとが対応付けられた周波数毎のスペクトルを集めたものである。ここで用いられる周波数変換法は、特定の手段に限定しないが、音声のスペクトルを認識するために必要な周波数分解能が必要であるため、比較的分解能が高いFFT(Fast Fourier Transform)やDCT(Discrete Cosine Transform)等の直交変換法を用いるとよい。
【0029】
本実施形態において、スペクトル生成部122は、少なくとも200Hzから700Hzのスペクトルパターンを生成する。
【0030】
後述する音声判定部134が音声区間を判定する際に検出する対象である、音声の特徴を示すスペクトル(以下、フォルマントと称す)には、通常、基音に相当する第1フォルマントから、その倍音部分である第nフォルマント(nは自然数)まで複数ある。このうち、第1フォルマントや第2フォルマントは200Hz未満の周波数帯域に存在することが多い。しかし、この帯域には、低域ノイズ成分が比較的高いエネルギーで含まれているため、フォルマントが埋没し易い。また700Hz以上のフォルマントは、フォルマント自体のエネルギーが低いため、やはりノイズ成分に埋没し易い。そのため、ノイズ成分に埋没し難い200Hzから700Hzのスペクトルパターンを音声区間の判定に用いることで、判定対象を絞り、効率的に音声区間の判定を行うことができる。
【0031】
スペクトル生成部122によって生成されたスペクトルパターンは、帯域分割部124とピーク検出部132に送られる。
【0032】
帯域分割部124は、適切な周波数帯域単位で音声に特徴的なスペクトルを検出するため、スペクトルパターンを、予め定められた帯域幅で分割された周波数帯域である複数の分割周波数帯域に分割する。
【0033】
本実施形態において、予め定められた帯域幅は、100Hzから150Hzまでの帯域幅とする。例えば、分割周波数帯域はスペクトル10本前後の帯域幅となる。
【0034】
音声の第1フォルマントは、およそ100Hzから150Hz程度の周波数で検出され、他のフォルマントはその倍音成分であるため、その倍数の周波数で検出される。そのため、分割周波数帯域を100Hzから150Hzの帯域幅とすることで、音声区間において、それぞれの分割周波数帯域に大凡一つずつフォルマントを含むようになり、各分割周波数帯域で適切に音声区間の判定ができる。これよりも分割周波数帯域の帯域幅を大きくすると、1つの分割周波数帯域に音声のエネルギーのピークが複数含まれる可能性があり、音声の特徴としてピークが複数の帯域で検出されるべきところ、1つにまとめて検出されてしまい、音声区間の判定の精度の低下を招く。逆に、分割周波数帯域の帯域幅を小さくしても、音声区間の判定の精度は向上せず、処理負荷のみが大きくなってしまう。
【0035】
周波数平均部126は、分割周波数帯域毎の平均エネルギーを求める。本実施形態では、周波数平均部126は、分割周波数帯域毎に、分割周波数帯域におけるすべてのスペクトルのエネルギーを平均するが、演算負荷軽減のためスペクトルのエネルギーの代わりにスペクトルの最大または平均振幅値(絶対値)を代用してもよい。
【0036】
保持部128は、RAM(Random Access Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)、フラッシュメモリ等の記憶媒体で構成され、帯域毎の平均エネルギーを過去の予め定められた数(本実施形態においてはNとする)のフレーム分保持する。
【0037】
時間平均部130は、分割周波数帯域毎に、周波数平均部126で導出された平均エネルギーの時間方向の複数のフレームに渡る平均である帯域別エネルギーを導出する。すなわち、帯域別エネルギーは、分割周波数帯域毎の平均エネルギーの時間方向の複数のフレームに渡る平均値である。本実施形態において、帯域別エネルギーは、帯域毎のノイズのエネルギーの水準であるノイズレベルとみなす。帯域別エネルギーを平均エネルギーの時間方向の平均とすることで急激な変動を抑え時間方向に平滑化できる。具体的に、時間平均部130は、以下の数式1に示す計算を行う。
【数1】

…(数式1)
Eavr:平均エネルギーのNフレーム間における平均値
E(i):フレーム毎の平均エネルギー
【0038】
また、時間平均部130は、直前のフレームの分割周波数帯域毎の平均エネルギーに、重み付け係数と時定数を用いて平均化に準じる処理をして、帯域別エネルギーの代用値を求めてもよい。その場合、時間平均部130は、以下の数式2、3に示す計算を行う。
【数2】

…(数式2)
Eavr2:帯域別エネルギーの代用値
E_last:直前のフレームにおける帯域別エネルギー
E_cur:該当フレームにおける平均エネルギー
ただし、音声区間の判定対象となっているフレームを該当フレームと称する。
【数3】

α:E_lastの重み付け係数
β:E_curの重み付け係数
T:時定数
…(数式3)
【0039】
帯域別エネルギー(帯域毎のノイズレベル)は定常的な値であるため、該当フレームに即座に反映しなくてもよい。また、後述する音声判定部134が音声であると判定したフレーム化入力信号について、時間平均部130はその音声のエネルギーを帯域別エネルギーに反映しない場合や、反映の度合いを調整する場合がある。そのため、帯域別エネルギーを即座に反映せずに、音声判定部130の判定結果を待って、反映することとする。したがって、時間平均部130が導出した帯域別エネルギーは、該当フレームの次のフレームの判定処理に用いることとなる。
【0040】
ピーク検出部132は、スペクトルパターンの各スペクトルと、そのスペクトルが含まれる分割周波数帯域における帯域別エネルギーとのエネルギー比(SNR:Signal to Noise Ratio)を導出する。
【0041】
具体的に、ピーク検出部132は、該当フレームの直前のフレームの帯域別の平均エネルギーを反映した帯域別エネルギーを用いて、以下の数式4に示す計算を行い、スペクトル毎にSNRを導出する。
【数4】

…(数式4)
SNR:信号対ノイズ比(スペクトルのエネルギー対帯域別エネルギー比)
E_spec:スペクトルのエネルギー
Noise_Level:帯域別エネルギー(帯域毎のノイズレベル)
【0042】
例えばSNRが2となったスペクトルは、周囲の平均的なスペクトルに対して約6dB程度のゲインを有しているとわかる。
【0043】
そして、ピーク検出部132は、スペクトル毎のSNRと、予め定められた第1閾値とを比較し、第1閾値を超えるか否かを判定する。そして、SNRが第1閾値を超えるスペクトルがあると、このスペクトルをフォルマントとみなし、フォルマントが検出された旨を示す情報を、音声判定部134に出力する。
【0044】
音声判定部134は、フォルマントが検出されたという情報をピーク検出部132から受け付けると、ピーク検出部132の判定結果に基づいて、該当フレームのフレーム化入力信号が音声であるか否か判定する。より詳しくは、音声判定部134は、SNRが第1閾値を超えるスペクトルが予め定められた数(以下、第1所定数と称す)以上であると、フレーム化入力信号が音声であると判定する。
【0045】
スペクトルパターンの全周波数帯域について、一括りに導出され、かつ、時間方向に平均化された平均エネルギーをノイズレベルとすると、仮に、ノイズレベルが小さい帯域にスペクトルピークがあり、本来、音声と判定すべきスペクトルがあっても、そのスペクトルと平均化された高いノイズレベルと比較して音声ではないと判定してしまい、そのフレーム化入力信号を非音声区間であると誤判定してしまう場合がある。本実施形態の音声判定装置100は、分割周波数帯域毎に、その分割周波数帯域の帯域別エネルギーを設定している。そのため、音声判定部134は、他の分割周波数帯域のノイズ成分の影響を受けずに、それぞれの分割周波数帯域毎にフォルマントの有無を精度よく判定することができる。
【0046】
また、分割周波数帯域におけるスペクトルの周波数方向の平均エネルギーを用いて、次のフレームの処理で用いる帯域別エネルギーを更新するフィードバック構造をとることで、時間方向に平均化されたエネルギー、即ち、定常的なノイズのエネルギーを帯域別エネルギーとすることが可能となる。
【0047】
上述したように、フォルマントには、第1フォルマントから、その倍音部分である第nフォルマントまで複数ある。したがって、任意の分割周波数帯域の帯域別エネルギー(ノイズレベル)が上昇し、フォルマントの一部がノイズに埋没しても、他の複数のフォルマントを検出できる場合がある。特に、周囲ノイズは低域に集中するため、基音に相当する第1フォルマントや2倍音に相当する第2フォルマントが低域のノイズに埋没していても、3倍音以上のフォルマントを検出できる可能性がある。そこで、音声判定部134は、SNRが第1閾値を超えるスペクトルが第1所定数以上であると、フレーム化入力信号が音声であると判定することで、よりノイズに強い音声区間の判定を行うことができる。
【0048】
また、ピーク検出部132は、上述した第1閾値を、帯域別エネルギーや分割周波数帯域に応じて制御してもよい。具体的には、ピーク検出部132は、例えば、分割周波数帯域、帯域別エネルギーの範囲、および第1閾値を関連付けたテーブルを保持し、分析対象のスペクトルの分割周波数帯域と帯域別エネルギーに応じて、テーブルから取得した第1閾値を用いてもよい。こうすることで、分割周波数帯域や帯域別エネルギーの値に応じて適切に音声とみなせるスペクトルを判定することが可能となり、より確実な音声区間の判定を行うことができる。
【0049】
また、ピーク検出部132は、SNRが第1閾値を超えるスペクトルが予め定められた数(第1所定数)以上に達した時点で、そのフレームの残りのスペクトルのSNRの導出およびSNRと第1閾値との比較処理を行わないこととしてもよい。こうすることで、ピーク検出部132の処理負荷を低減することが可能となる。
【0050】
さらに、音声区間の判定の信頼性を上げるために、音声判定部134における処理の結果を時間平均部130に出力し、帯域別エネルギーへの音声による影響を回避してもよい。
【0051】
すなわち、SNRが第1閾値を超えたスペクトルは、フォルマントの可能性が高い。また、音声は声帯の振動を伴うため中心周波数をピークとしながらそのエネルギー成分が隣接するスペクトルにも存在する。そのため、その前後のスペクトルにも、音声のエネルギー成分が含まれている可能性が高い。時間平均部130は、これらのスペクトルを一度に除外し、帯域別エネルギーを導出することで、音声の影響を排除できる。さらに、音声区間中において、突発的に生じた急激な変動を伴うノイズが含まれる場合、このノイズのスペクトルを帯域別エネルギーの導出に加味すると、ノイズレベルの推定に支障をきたす。したがって、時間平均部130は、このようなノイズも、SNRが第1閾値を超えたスペクトルやその前後のスペクトルとして検出し、除外することができる。
【0052】
具体的に、音声判定部134は、SNRが第1閾値を超えたスペクトルを示す情報を時間平均部130に出力し、時間平均部130は、SNRが第1閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、SNRが第1閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーに、1以下の調整値を乗算したエネルギーに基づいて分割周波数帯域毎に帯域別エネルギーを導出してもよい。
【0053】
音声はノイズに比べてエネルギーが比較的大きいため、音声のエネルギーを加味して帯域別エネルギーを導出すると、本来の帯域別エネルギーを適切に導出することができなくなってしまう。そこで、時間平均部130は、音声判定部134が第1閾値を超えたと判定した、即ち、音声と判定した分割周波数帯域またはフレーム化入力信号のすべての分割周波数帯域の平均エネルギーに、1以下の調整値を乗算した上で、帯域別エネルギーを導出することで、音声の影響を低減し、帯域別エネルギーを適切に導出することが可能となる。
【0054】
この場合、音声判定部134は、1以下の調整値として所定の値を用いることもできるが、例えば、平均エネルギーの大きさの範囲と、1以下の調整値とを関連付けたテーブルを保持し、平均エネルギーの大きさに応じて、テーブルから取得した調整値を用いてもよい。かかる構成により、音声判定部134は、音声のエネルギーの大きさに応じて平均エネルギーを適切に低減できる。
【0055】
また、音声区間中の周囲ノイズの大きさの変動に対応し、音声区間中のノイズ成分を帯域別エネルギーに反映するために、次のような手段を用いてもよい。
【0056】
詳細に、周波数平均部126は、SNRが第1閾値を超えたスペクトル、または、SNRが第1閾値を超えたスペクトルとそのスペクトルに隣接するスペクトルとを除外して平均エネルギーを導出する。
【0057】
具体的に、音声判定部134は、SNRが第1閾値を超えたスペクトルを示す情報を周波数平均部126に出力し、周波数平均部126は、SNRが第1閾値を超えたスペクトル、または、SNRが第1閾値を超えたスペクトルとそのスペクトルに隣接するスペクトルを除外した、残りのスペクトルについて、分割周波数帯域毎に平均エネルギーを導出して保持部128に保持させる。そして、時間平均部130は、保持部128に保持された平均エネルギーに基づいて帯域別エネルギーを導出する。
【0058】
この実施例において、音声判定部134は、SNRが第1閾値を超えたスペクトルを示す情報を周波数平均部126に出力する。周波数平均部126は、音声判定部134からSNRが第1閾値を超えたスペクトルを示す情報を受け取る。周波数平均部126は、SNRが第1閾値を超えたスペクトル、または、SNRが第1閾値を超えたスペクトルとそのスペクトルに隣接するスペクトルを除外した、残りのスペクトルについて、分割周波数帯域毎に平均エネルギーを導出し、保持部128に保持させるとともに、SNRが第1閾値を超えたスペクトルを示す情報を保持部に保持する。時間平均部130は、保持部128に保持された平均エネルギーとSNRが第1閾値を超えたスペクトルを示す情報とを取得し、SNRが第1閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、エネルギー比が第1閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、時間方向の平均に反映しないようにして帯域別エネルギーを導出し、次のフレームまで保持する。
【0059】
具体的に、時間平均部130は、上述した数式1を用いる場合、例えば、除外の対象となった分割周波数帯域、または除外の対象となった分割周波数帯域を含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを含めず、以降の帯域別エネルギーを導出する。また、時間平均部130は、上述した数式2を用いる場合、例えば、除外の対象となった分割周波数帯域、または除外の対象となった分割周波数帯域を含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーについて、その平均エネルギーを数式2のE_curとして代入する際、一時的にα=T、β=0とするとしてもよい。
【0060】
上述したように、SNRが第1閾値を超えたスペクトルやその前後のスペクトルは、フォルマントの可能性が高い。SNRが第1閾値を超えたスペクトルを含む分割周波数帯域の他のスペクトルにも音声のエネルギーの影響がある場合がある。また、音声の影響は、基音や倍音として複数の分割周波数帯域に広がっているため、SNRが第1閾値を超えたスペクトルが1つでもあると、そのフレーム化入力信号の他の分割周波数帯域にも音声のエネルギー成分が含まれる場合がある。そこで、時間平均部130は、この分割周波数帯域を除外して、帯域別エネルギーを導出したり、フレーム化入力信号全体を除外して、このフレームでは帯域別エネルギーを更新しないこととしたりすることで、帯域別エネルギーへの音声の影響を排除できる。
【0061】
さらに、平均エネルギーを時間方向の平均に反映するか否かを判定するための、第1閾値とは異なる第2閾値を設け、音声判定部134は、SNRが第2閾値を超えたスペクトルを示す情報を周波数平均部126に出力し、時間平均部130は、エネルギー比が第2閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、エネルギー比が第2閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、時間方向の平均に反映しなくてもよい。
【0062】
このように、第1閾値とは異なる第2閾値を設け、音声判定部134は、音声の判定処理とは別に、平均エネルギーを時間方向の平均に反映するか否かを判定する。こうすることで、音声判定部134は、音声の判定処理と、平均エネルギーの時間方向の平均への反映処理とを独立して判定することが可能となる。
【0063】
例えば、第1閾値より第2閾値を大きく設定し、分割周波数帯域毎に、音声の判定処理と平均エネルギーの時間方向の平均への反映処理とを独立して行う場合、音声判定部134は、エネルギー比が第1閾値より大きいスペクトルを含まない分割周波数帯域を音声でないと判定し、また、その平均エネルギーを、時間方向の平均に反映する。また、音声判定部134は、エネルギー比が第1閾値より大きく第2閾値以下のスペクトルを含む分割周波数帯域を音声と判定するが、その平均エネルギーは、時間方向の平均に反映する。さらに、音声判定部134は、エネルギー比が第2閾値より大きいスペクトルを含む分割周波数帯域を音声と判定し、その平均エネルギーを、時間方向の平均に反映しない。
【0064】
また、例えば、第1閾値より第2閾値を小さく設定し、分割周波数帯域毎に、音声の判定処理と平均エネルギーの時間方向の平均への反映処理とを独立して行う場合、音声判定部134は、エネルギー比が第2閾値より大きいスペクトルを含まない分割周波数帯域を音声でないと判定し、また、その平均エネルギーを、時間方向の平均に反映する。また、音声判定部134は、エネルギー比が第2閾値より大きく第1閾値以下のスペクトルを含む分割周波数帯域を音声でないと判定するが、その平均エネルギーは、時間方向の平均に反映しない。さらに、音声判定部134は、エネルギー比が第1閾値より大きいスペクトルを含む分割周波数帯域を音声と判定し、その平均エネルギーを、時間方向の平均に反映しない。このように、第1閾値とは異なる第2閾値を設けることで、時間平均部130は、より適切に帯域別エネルギーを導出することができる。
【0065】
図1に示す音声のみの時間波形図のように、音声が存在する時間帯はエネルギーが高いことがわかる。この音声のエネルギーが帯域別エネルギーに影響を与えると、実際のノイズレベルよりも高い帯域別エネルギーに基づいて音声の判定処理を行うことになり、正しい結果を得られないことがある。本実施形態の音声判定装置100は、音声区間判定後に帯域別エネルギーへの影響度合いを制御することにより、正確な帯域別エネルギーを維持し、精度よくフォルマントを検出できる。
【0066】
(音声判定方法)
次に、上述した音声判定装置100を用いて入力信号を分析し、その分析結果を用いて入力信号が音声か否かを判定する音声判定方法を説明する。
【0067】
図6は、音声判定方法の全体的な流れを示したフローチャートである。入力信号の入力がある場合(S300におけるYES)、フレーム化部120は、音声判定装置100が取得したデジタル入力信号を、所定のフレーム単位で順次切り出し、フレーム化入力信号を生成する(S302)。そして、スペクトル生成部122は、フレーム化部120から受信したフレーム化入力信号の周波数分析を行い、時間領域のフレーム化入力信号を周波数領域のフレーム化入力信号に変換してスペクトルパターンを生成する(S304)。
【0068】
帯域分割部124は、スペクトルパターンの各スペクトルを複数の分割周波数帯域に分割する(S306)。ピーク検出部132は、時間平均部130から、任意の分割周波数帯域の帯域別エネルギーを取得する(S308)。ここでは、例えば、分割周波数帯域の処理の順番は、周波数の小さい順とし、ピーク検出部132は、分割周波数帯域の処理の順番に従って、時間平均部130から分割周波数帯域の帯域別エネルギーを取得する。
【0069】
このとき取得される帯域別エネルギーは、音声判定処理を開始後、直前のフレームについての処理において更新された帯域別エネルギーとする。この帯域別エネルギーは、音声であるか否かが判定されていないフレーム化入力信号のスペクトルのエネルギーを含むことなく、所定の時間幅で時間方向に平均化された帯域毎のノイズレベルとなっている。
【0070】
直前のフレームを反映して導出した帯域別エネルギーをノイズレベルとすることで、スペクトルのエネルギーのノイズレベル比を正確に導出でき、判定対象のスペクトルが周囲のスペクトルに対しピーク特性を持つか否かを分析可能となる。
【0071】
ピーク検出部132は、取得した帯域別エネルギーに対応する分割周波数帯域について、その分割周波数帯域の対象のスペクトルと、取得した帯域別エネルギーとのエネルギー比であるSNRを導出する(S310)。ここで、対象のスペクトルは、まだSNRを導出していないスペクトルのうち、最も周波数の小さいスペクトルとする。
【0072】
そして、ピーク検出部132は、導出したSNRと第1閾値とを比較する(S312)。第1閾値を超えるスペクトルがある、すなわちピーク特性を持つ場合(S312におけるYES)、その旨を示す情報として、例えば、第1閾値を超えたスペクトルの周波数を示す情報をピーク検出部132のワークエリアに保持する(S314)。また、ピーク検出部132は、ピーク特性の大きさを数値化(モデル化)して内部のワークエリアに保持してもよい。例えば、ピーク検出部132は分割周波数帯域の対象のスペクトルのうちSNRが高いと検出された数をカウントすることでピーク特性の大きさを数値化する。ワークエリアは一時的に検出された本数をカウント(保存)するバッファである。ピーク特性の大きさは、SNRの大きさから導出される。ピーク特性の大きさを音声区間の判定処理の基準にすると、すべてのフォルマントのうちノイズに埋没したフォルマントの占める割合が大きくとも、残された強いフォルマントを検出することで音声と判定することが可能となる。
【0073】
本実施形態において、スペクトル生成部122が少なくとも200Hzから700Hzのスペクトルパターンを生成することとしている。しかし、例えば、スペクトル生成部122は200Hzから700Hzよりも広い周波数帯域のスペクトルパターンを生成し、ピーク検出部132の方が、スペクトルピーク分析(SNRの導出および第1閾値との比較処理)をスペクトルパターンの全帯域に渡り実行せずに、200Hzから700Hzに処理の対象となる帯域を絞って分析してもよい。
【0074】
続いて、ピーク検出部132は、すべての分割周波数帯域についてスペクトルピーク分析が終了したか否かを判定する(S316)。すべての分割周波数帯域についてスペクトル分析が終了していない場合(S316におけるNO)、ピーク検出部132は、次の対象のスペクトルが、直前までと同じ分割周波数帯域に含まれるか否かを判定する(S318)。同じ分割周波数帯域に含まれない場合(S318におけるNO)、帯域別エネルギー取得ステップS308に戻る。同じ分割周波数帯域に含まれる場合(S318におけるYES)、SNR導出ステップS310に戻る。
【0075】
すべての分割周波数帯域についてスペクトル分析が終了した場合(S316におけるYES)、音声判定部134は、ピーク検出部132からスペクトルピーク分析の結果を取得し、SNRが第1閾値を超えるスペクトルが第1所定数以上であるか否かを判定する(S320)。
【0076】
SNRが第1閾値を超えるスペクトルが第1所定数未満である場合(S320におけるNO)、音声判定部134は、該当フレームのフレーム化入力信号が音声でないと判定する(S322)。
【0077】
また、結果保持ステップS314において、ピーク検出部132がピーク特性の大きさを数値化して内部のワークエリアに保持している場合、音声判定部134は、その数値を予め定められた閾値と比較して、その閾値を超えていると該当フレームが音声であると判定してもよい。例えば、ピーク検出部132は分割周波数帯域の対象のスペクトルのうちSNRが高いと検出された数をカウントすることでピーク特性の大きさを数値化する。ワークエリアは一時的に検出された本数をカウント(保存)するバッファである。
【0078】
音声判定部134が、該当フレームのフレーム化入力信号は音声でないと判定した場合、周波数平均部126は、スペクトル生成部122で生成されたスペクトルパターンを用いて分割周波数帯域毎の平均エネルギーを求め(S324)、保持部128に保持させる(S326)。定常的なノイズといえども分析時間が短いとエネルギーの変動が現れる。そこで、帯域別エネルギーを実際のノイズレベルに近い値に保つために、分割された帯域毎に時間領域の過去の情報を用いてさらに平均化する。具体的に、時間平均部130は、保持部128に保持された平均エネルギーを取得し、分割周波数帯域毎に平均エネルギーの時間方向の複数のフレームに渡る平均である帯域別エネルギーを導出して次のフレームまで保持する(S328)。なお、この帯域別エネルギーは次のフレームでピーク検出部132が、取得する帯域別エネルギーとなる(上述したS308)。
【0079】
SNRが第1閾値を超えるスペクトルが第1所定数以上である場合(S320におけるYES)、音声判定部134は、該当フレームのフレーム化入力信号が音声であると判定する(S330)。そして、周波数平均部126は、SNRが第1閾値を超えたスペクトル、または、SNRが第1閾値を超えたスペクトルとそのスペクトルに隣接するスペクトルを除外した、残りのスペクトルについて、分割周波数帯域毎に平均エネルギーを導出し(S332)、保持部128に保持させる(S334)。
【0080】
時間平均部130は、保持部128に保持された平均エネルギーを取得し、音声区間に対応した手段を用い帯域別エネルギーを導出して次のフレームまで保持する(S336)。なお、この帯域別エネルギーは次のフレームでピーク検出部132が、取得する帯域別エネルギーとなる(上述したS308)。
【0081】
ここで、音声区間に対応した手段について詳述する。例えば、時間平均部130は、帯域別エネルギーに、該当フレームのエネルギーをまったく加味せず、直前のフレームの値を保持する。また、周囲ノイズの時間的な変動に追従させ、音声に重なって収録された周囲ノイズを反映させるために、時間平均部130は、音声と判定された分割周波数帯域またはフレーム化入力信号全体の平均エネルギーに1以下の調整値を乗算し重み付けを少なくした上で、帯域別エネルギーを導出してもよい。
【0082】
さらに、時間平均部130は、エネルギー比が第2閾値を超えたスペクトルを含む分割周波数帯域の平均エネルギー、または、エネルギー比が第2閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、時間方向の平均に反映しなくてもよい。
【0083】
以上説明した音声判定方法によっても、ノイズレベルに拘らず、入力信号の音声区間を検出することが可能となる。
【0084】
上述した音声判定装置100や音声判定方法を用いて、入力信号の音声区間を検出した後、例えば、符号化処理やノイズキャンセル処理を行う場合、音声判定装置100が音声区間を正確に判定できるため、符号化処理においては、音質の劣化を抑制しつつ圧縮率を高めることができ、ノイズキャンセル処理においては、ノイズを効率的に相殺することが可能となる。
【0085】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる実施形態に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【0086】
なお、本明細書の音声判定方法における各工程は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいはサブルーチンによる処理を含んでもよい。
【産業上の利用可能性】
【0087】
本発明は、入力信号の音声区間を検出する音声判定装置および音声判定方法に利用することができる。
【符号の説明】
【0088】
100 …音声判定装置
120 …フレーム化部
122 …スペクトル生成部
124 …帯域分割部
126 …周波数平均部
128 …保持部
130 …時間平均部
132 …ピーク検出部
134 …音声判定部

【特許請求の範囲】
【請求項1】
入力信号を予め定められた時間幅を有するフレーム単位で切り出し、フレーム化入力信号を生成するフレーム化部と、
前記フレーム化入力信号を、時間領域から周波数領域に変換して、周波数毎のスペクトルを集めたスペクトルパターンを生成するスペクトル生成部と、
前記スペクトルパターンの各スペクトルのエネルギーと、予め定められた帯域幅で分割された周波数帯域である複数の分割周波数帯域のうち前記スペクトルが含まれる分割周波数帯域における帯域別エネルギーとのエネルギー比が、予め定められた第1閾値を超えるか否かを判定するピーク検出部と、
前記ピーク検出部の判定結果に基づいて、前記フレーム化入力信号が音声であるか否か判定する音声判定部と、
前記スペクトルパターンの各分割周波数帯域におけるスペクトルの周波数方向の平均エネルギーを導出する周波数平均部と、
前記分割周波数帯域毎に、前記平均エネルギーの時間方向の平均である前記帯域別エネルギーを導出する時間平均部と、
を備えることを特徴とする音声判定装置。
【請求項2】
前記音声判定部は、前記エネルギー比が前記第1閾値を超えるスペクトルが予め定められた数以上であると、前記フレーム化入力信号が音声であると判定することを特徴とする請求項1に記載の音声判定装置。
【請求項3】
前記時間平均部は、前記エネルギー比が前記第1閾値を超えたスペクトルを含む前記分割周波数帯域の平均エネルギー、または、前記エネルギー比が前記第1閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーに、1以下の調整値を乗算したエネルギーに基づいて前記分割周波数帯域毎に帯域別エネルギーを導出することを特徴とする請求項1または2のいずれかに記載の音声判定装置。
【請求項4】
前記周波数平均部は、前記エネルギー比が前記第1閾値を超えたスペクトル、または、前記エネルギー比が前記第1閾値を超えたスペクトルと前記スペクトルに隣接するスペクトルとを除外して平均エネルギーを導出することを特徴とする請求項1または2のいずれかに記載の音声判定装置。
【請求項5】
前記時間平均部は、前記エネルギー比が前記第1閾値を超えたスペクトルを含む前記分割周波数帯域の平均エネルギー、または、前記エネルギー比が前記第1閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、前記時間方向の平均に反映しないことを特徴とする請求項1または2のいずれかに記載の音声判定装置。
【請求項6】
前記平均エネルギーを前記時間方向の平均に反映するか否かを判定するための、前記第1閾値とは異なる第2閾値を設け、
前記時間平均部は、前記エネルギー比が前記第2閾値を超えたスペクトルを含む前記分割周波数帯域の平均エネルギー、または、前記エネルギー比が前記第2閾値を超えたスペクトルを含むフレーム化入力信号のすべての分割周波数帯域の平均エネルギーを、前記時間方向の平均に反映しないことを特徴とする請求項1から5のいずれか1項に記載の音声判定装置。
【請求項7】
前記スペクトル生成部は、少なくとも200Hzから700Hzのスペクトルパターンを生成することを特徴とする請求項1から6のいずれか1項に記載の音声判定装置。
【請求項8】
前記予め定められた帯域幅は、100Hzから150Hzまでの帯域幅であることを特徴とする請求項1から7のいずれか1項に記載の音声判定装置。
【請求項9】
入力信号を予め定められた時間幅を有するフレーム単位で切り出し、フレーム化入力信号を生成し、
前記フレーム化入力信号を、時間領域から周波数領域に変換して、周波数毎のスペクトルを集めたスペクトルパターンを生成し、
前記スペクトルパターンの各スペクトルのエネルギーと、予め定められた帯域幅で分割された周波数帯域である複数の分割周波数帯域のうち前記スペクトルが含まれる分割周波数帯域における帯域別エネルギーとのエネルギー比が、予め定められた第1閾値を超えた場合、前記フレーム化入力信号が音声であると判定し、
前記スペクトルパターンの各分割周波数帯域におけるスペクトルの周波数方向の平均エネルギーを導出し、
前記分割周波数帯域毎に、前記平均エネルギーの時間方向の平均である前記帯域別エネルギーを導出することを特徴とする音声判定方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−128411(P2012−128411A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2011−254578(P2011−254578)
【出願日】平成23年11月22日(2011.11.22)
【出願人】(308036402)株式会社JVCケンウッド (1,152)
【Fターム(参考)】