JP2008158315A - 音信号処理装置およびプログラム - Google Patents
音信号処理装置およびプログラム Download PDFInfo
- Publication number
- JP2008158315A JP2008158315A JP2006347788A JP2006347788A JP2008158315A JP 2008158315 A JP2008158315 A JP 2008158315A JP 2006347788 A JP2006347788 A JP 2006347788A JP 2006347788 A JP2006347788 A JP 2006347788A JP 2008158315 A JP2008158315 A JP 2008158315A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- sound
- section
- sound signal
- specifying
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 109
- 238000004458 analytical method Methods 0.000 claims abstract description 66
- 238000004364 calculation method Methods 0.000 claims abstract description 42
- 238000003860 storage Methods 0.000 claims description 57
- 238000000034 method Methods 0.000 claims description 45
- 230000008569 process Effects 0.000 claims description 31
- 238000004904 shortening Methods 0.000 claims description 7
- 230000001960 triggered effect Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 206010011224 Cough Diseases 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Abstract
【課題】発音区間の特定の精度を向上する。
【解決手段】特徴量算定部54は、音解析装置80が音信号Sの解析に使用する特徴量Cを音信号Sの各フレームFについて順次に算定する。フレーム情報生成部56は、音信号Sの各フレームFについてフレーム情報F_HISTを生成して記憶部64に格納する。第1区間特定部30は、音信号Sについて発音区間P1を特定する。出力制御部62は、発音区間P1の各フレームFの特徴量Cを順次に音解析装置80に出力する。第2区間特定部40は、発音区間P1を短縮した発音区間P2を、記憶部64に格納されたフレーム情報F_HISTに基づいて特定して音解析装置80に通知する。
【選択図】図1
【解決手段】特徴量算定部54は、音解析装置80が音信号Sの解析に使用する特徴量Cを音信号Sの各フレームFについて順次に算定する。フレーム情報生成部56は、音信号Sの各フレームFについてフレーム情報F_HISTを生成して記憶部64に格納する。第1区間特定部30は、音信号Sについて発音区間P1を特定する。出力制御部62は、発音区間P1の各フレームFの特徴量Cを順次に音解析装置80に出力する。第2区間特定部40は、発音区間P1を短縮した発音区間P2を、記憶部64に格納されたフレーム情報F_HISTに基づいて特定して音解析装置80に通知する。
【選択図】図1
Description
本発明は、音声や楽音といった各種の音を示す信号(以下「音信号」という)を処理する技術に関し、特に、音信号のうち実際に所期の音が発音されている区間(以下「発音区間」という)を特定する技術に関する。
音声認識や音声認証(話者認証)などの音声解析においては音信号を発音区間と非発音区間(環境に応じた雑音のみが存在する区間)とに区分する技術が利用される。例えば、音信号のS/N比が所定の閾値を上回る区間が発音区間として特定される。また、特許文献1には、音信号を区分した各区間のS/N比と過去に非発音区間と判定された区間のS/N比とを比較することで各区間が発音区間および非発音区間の何れに該当するかを判別する技術が開示されている。
特開2001−265367号公報
しかし、特許文献1の技術においては、音信号の各区間のS/N比と過去の非発音区間におけるS/N比との比較のみによって発音区間と非発音区間との区別が確定されるから、例えば発声者の咳の音やリップノイズや口中音など瞬間的な雑音が発生した区間(本来ならば非発音区間と判定されるべき区間)が発音区間として誤検出される可能性がある。以上の事情を背景として、本発明は、発音区間の特定の精度を向上するという課題の解決を目的としている。
以上の課題を解決するために、本発明のひとつの形態に係る音信号処理装置は、音解析装置が音信号の解析に使用する特徴量を音信号の各フレームについて順次に算定する特徴量算定手段と、音信号の各フレームについてフレーム情報を生成するフレーム情報生成手段と、フレーム情報生成手段が生成したフレーム情報を記憶する記憶手段と、音信号の第1発音区間(例えば図2の発音区間P1)を特定する第1区間特定手段と、第1区間特定手段が特定した第1発音区間に対応する各フレームの特徴量を、特徴量算定手段が算定した特徴量から順次に音解析装置に出力する出力制御手段と、第1発音区間を短縮した第2発音区間(例えば図2の発音区間P2)を、記憶手段が記憶するフレーム情報に基づいて特定して音解析装置に通知する第2区間特定手段とを具備する。
以上の構成によれば、各フレームのフレーム情報に基づいて第1発音区間を短縮することで第2発音区間が特定される。したがって、ひとつの段階の処理で発音区間が確定される構成(例えば第1発音区間のみが特定される構成)と比較して、発音区間の特定の精度を向上することが可能である。
また、特徴量算定手段が算定した特徴量は順次に音解析装置に出力されるから、第1発音区間に属する総てのフレームの特徴量を音信号処理装置に保持しておく必要はない。したがって、音信号処理装置の回路の規模や処理の負荷が軽減されるという効果がある。以上の効果は、各フレームのフレーム情報のデータ量が各フレームの特徴量のデータ量と比較して少ない場合に特に顕著となる。また、第2区間特定手段が特定した第2発音区間が音解析装置に通知されるから、音解析装置においては、出力制御装置から取得した特徴量のうち第2発音区間に属するフレームの特徴量を選択的に音信号の解析に利用することが可能となる。したがって、音解析装置による音信号の解析の精度が向上するという利点もある。
本発明の好適な態様において、記憶手段は、第1区間特定手段が特定した第1発音区間に対応した各フレームのフレーム情報を記憶する。本態様によれば、音信号の総てのフレームについて記憶手段がフレーム情報を記憶する構成と比較して、記憶手段に必要となる容量を削減することができる。もっとも、音信号の総てのフレームのフレーム情報が記憶手段に格納される構成を本発明の範囲から除外する趣旨ではない。
本発明の好適な態様において、出力制御手段は、第1区間特定手段が特定する第1発音区間に対応する各フレームの特徴量を音解析装置に出力する。さらに詳述すると、第1区間特定手段は、第1発音区間の始点を特定する始点特定手段と、第1発音区間の終点を特定する終点特定手段とを含み、出力制御手段は、音解析装置に対する特徴量の出力を、第1始点特定手段による始点の特定を契機として開始し、第1終点特定手段による終点の特定を契機として終了する。以上の態様によれば、特徴量算定手段が算定した特徴量のうち第1発音区間に対応した各フレームの特徴量のみが選択的に音解析装置に出力されるから、音解析装置において特徴量を保持するための容量を削減することができる。
本発明の好適な態様に係る音信号処理装置は、開始指示を取得する取得手段(例えば図3の切換部583)と、音信号のうち取得手段による開始指示の取得前のフレームの雑音レベルを算定する雑音レベル算定手段と、音信号のうち取得手段による開始指示の取得後の各フレームの信号レベルと雑音レベル算定手段が算定した雑音レベルとに基づいてS/N比を算定するS/N比算定手段とを具備し、第1区間特定手段は、S/N比算定手段が各フレームについて算定したS/N比に基づいて第1発音区間を特定する。以上の態様によれば、開始指示の取得前の各フレームを雑音として開始指示の取得後の各フレームのS/N比が算定されるから、第1発音区間を高精度に特定することが可能である。
フレーム情報の具体的な内容やフレーム情報に基づいて第2発音区間を特定する具体的な方法は本発明において任意であるが、例えば以下の各態様が採用される。
第1の態様において、フレーム情報は、各フレームにおける音信号の信号レベルに応じた信号指標値(例えば実施形態における信号レベルHIST_LEVELやS/N比R)を含む。第2区間特定手段は、第1発音区間の始点から連続する1以上のフレームおよび第1発音区間の終点から手前側に連続する1以上のフレームの少なくとも一方であって、フレーム情報に含まれる信号指標値が第1発音区間内の信号指標値の最大値に応じた閾値(例えば図6の閾値TH1)を下回るフレームを、第1発音区間内の複数のフレームから除外することで第2発音区間を特定する。
また、第1の態様において、第2区間特定手段は、第1発音区間の始点から連続する所定個のフレームにわたる信号指標値の加算値が、第1発音区間内の信号指標値の最大値に応じた閾値(例えば図6の閾値TH2)を下回る場合に、当該所定個のフレームのうち始点側の1以上のフレームを除外することで第2発音区間を特定する。同様に、第2区間特定手段は、第1発音区間の終点から手前側に連続する所定個のフレームにわたる信号指標値の加算値が、第1発音区間内の信号指標値の最大値に応じた閾値を下回る場合に、当該所定個のフレームのうち終点側の1以上のフレームを除外することで第2発音区間を特定する。
以上のように第1発音区間内の信号指標値の最大値に応じて第2発音区間を特定する構成によれば、実際の発声の区間の前後に発生する雑音(例えば発声者の咳払いやリップノイズなど)を有効に排除することが可能である。なお、第1の態様の具体例は第1実施形態として後述される。
第2の態様において、フレーム情報は、各フレームの音信号のピッチを検出した結果を示すピッチデータを含む。第2区間特定手段は、第1発音区間の始点から連続する1以上のフレームおよび第1発音区間の終点から手前側に連続する1以上のフレームの少なくとも一方であって、フレーム情報に含まれるピッチデータが非検出を示すフレームを、第1発音区間から除外することで第2発音区間を特定する。以上の態様によれば、風切音のようにピッチが明確に特定されない雑音を有効に排除することが可能である。なお、第2の態様の具体例は第2実施形態として後述される。
第3の態様において、フレーム情報は、各フレームにおける音信号のゼロクロス数を含む。第2区間特定手段は、フレーム情報に含まれるゼロクロス数が閾値を上回るフレームが第1発音区間の終点から手前側に複数のフレームにわたって連続する場合に、複数のフレームのうち始点側の所定個のフレーム以外のフレームを除外することで第2発音区間を特定する。以上の態様によれば、第1発音区間の終点から手前側の複数のフレームであってゼロクロス数が閾値を上回るフレーム(無声子音)が所定個を残して除外されるから、発声の末尾(無声子音)を所定の時間長に調整することが可能である。
本発明は、以上の各態様に係る音信号処理装置の動作方法(音信号処理方法)としても特定される。本発明のひとつの態様に係る音信号処理方法は、音解析装置が音信号の解析に使用する特徴量を音信号の各フレームについて順次に算定して順次に音解析装置に出力する一方、音信号の第1発音区間を特定し、音信号の各フレームについてフレーム情報を生成して記憶手段に記憶し、第1発音区間を短縮した第2発音区間を、記憶手段が記憶するフレーム情報に基づいて特定して音解析装置に通知する。以上の方法によれば、本発明に係る音信号処理装置と同様の作用および効果が奏される。
以上の各態様に係る音信号処理装置は、各処理に専用されるDSP(Digital Signal Processor)などのハードウェア(電子回路)によって実現されるほか、CPU(Central Processing Unit)などの汎用の演算処理装置とプログラムとの協働によっても実現される。本発明に係るプログラムは、音解析装置が音信号の解析に使用する特徴量を音信号の各フレームについて順次に算定する特徴量算定処理と、音信号の各フレームについてフレーム情報を生成して記憶手段に記憶させるフレーム情報生成処理と、音信号の第1発音区間を特定する第1区間特定処理と、特徴量算定処理で算定した特徴量を順次に音解析装置に出力する出力制御処理と、第1発音区間を短縮した第2発音区間を、記憶手段が記憶するフレーム情報に基づいて特定して音解析装置に通知する第2区間特定処理とをコンピュータに実行させる内容である。以上のプログラムによっても、本発明に係る音信号処理装置と同様の作用および効果が奏される。なお、本発明のプログラムは、CD−ROMなど可搬型の記録媒体に格納された形態で利用者に提供されてコンピュータにインストールされるほか、ネットワークを介した配信の形態でサーバ装置から提供されてコンピュータにインストールされる。
<A:第1実施形態>
<A−1:構成>
図1は、本発明のひとつの形態に係る音信号処理システムの構成を示すブロック図である。同図に示すように、音信号処理システムは、収音装置(マイクロホン)10と音信号処理装置20と入力装置70と音解析装置80とを具備する。本形態においては収音装置10と入力装置70と音解析装置80とが音信号処理装置20と別体に設置された構成を例示するが、以上の要素の一部または全部が単一の装置を構成してもよい。
<A−1:構成>
図1は、本発明のひとつの形態に係る音信号処理システムの構成を示すブロック図である。同図に示すように、音信号処理システムは、収音装置(マイクロホン)10と音信号処理装置20と入力装置70と音解析装置80とを具備する。本形態においては収音装置10と入力装置70と音解析装置80とが音信号処理装置20と別体に設置された構成を例示するが、以上の要素の一部または全部が単一の装置を構成してもよい。
収音装置10は、周囲の音響(音声および雑音)の波形を示す音信号Sを生成する。図2には、音信号Sの波形が例示されている。音信号処理装置20は、収音装置10が生成した音信号Sのうち発声者が実際に発声した発音区間を特定する。入力装置70は、利用者による操作に応じた信号を出力する機器(例えばキーボードやマウス)である。利用者は、入力装置70を適宜に操作することで、音信号処理装置20が発音区間の特定を開始する契機となる指示(以下「開始指示」という)TRを入力する。音解析装置80は、音信号Sの解析に使用される。本形態の音解析装置80は、音信号Sから抽出された特徴量と予め登録された特徴量とを対比することで発声者の正当性を認証する音声認証装置である。
音信号処理装置20は、第1区間特定部30と第2区間特定部40とフレーム分析部50と出力制御部62と記憶部64とを含む。第1区間特定部30と第2区間特定部40とフレーム分析部50と出力制御部62とは、例えばCPUなどの演算処理装置がプログラムを実行することで実現されてもよいし、DSPなどのハードウェア回路によって実現されてもよい。
第1区間特定部30は、図2に図示された発音区間P1を音信号Sに基づいて特定する手段である。一方、第2区間特定部40は図2の発音区間P2を特定する手段である。第1区間特定部30が発音区間P1を特定する方法と第2区間特定部40が発音区間P2を特定する方法とは相違する。本形態の第2区間特定部40は、第1区間特定部30による発音区間P1の特定よりも高精度な方法で発音区間P2を特定する。したがって、図2に示すように発音区間P2は発音区間P1よりも短い。
図1のフレーム分析部50は、分割部52と特徴量算定部54とフレーム情報生成部56とを含む。分割部52は、図2に示すように、収音装置10から供給される音信号Sを所定の時間長(例えば数十ミリ秒)のフレームに区分して順次に出力する。各フレームは時間軸上で相互に重なり合うように設定される。
特徴量算定部54は、音信号Sの各フレームFについて特徴量Cを算定する。特徴量Cは、音解析装置80が音信号Sの解析に使用するパラメータである。本形態の特徴量算定部54は、FFT(Fast Fourier Transform)処理を含む周波数分析によってメルケプストラム係数(MFCC:Mel Frequency Cepstrum Coefficient)を特徴量Cとして算定する。特徴量Cは、各フレームFの音信号Sの供給に同期して実時間的に算定される(すなわち音信号Sの各フレームが供給されるたびに順次に算定される)。
フレーム情報生成部56は、分割部52が出力する音信号Sの各フレームFについてフレーム情報F_HISTを生成する。また、本形態のフレーム情報生成部56は、各フレームFについてS/N比Rを算定する演算部58を含む。S/N比Rは、第1区間特定部30が発音区間P1を特定するために使用する情報である。一方、フレーム情報F_HISTは、第2区間特定部40が発音区間P1を発音区間P2に短縮するために使用する情報である。フレーム情報F_HISTおよびS/N比Rは、各フレームFの音信号Sの供給に同期して実時間的に算定される。
図3は、演算部58の具体的な構成を示すブロック図である。同図に示すように、演算部58は、レベル算定部581と切換部583と雑音レベル算定部585と記憶部587とS/N比算定部589とを含む。レベル算定部581は、分割部52から供給される音信号Sの各フレームFについて順次にレベル(強度)を算定する手段である。本形態のレベル算定部581は、ひとつのフレームFの音信号Sをn個(nは2以上の自然数)の周波数帯域に区分したときの各成分のレベルである帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]を算定する。したがって、レベル算定部581は、例えば各々の通過帯域が相違する複数のバンドパスフィルタ(フィルタバンク)によって実現される。ただし、FFT処理などの周波数分析によってレベル算定部581が帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]を算定する構成も採用される。
図1のフレーム情報生成部56は、音信号Sの各フレームFについて信号レベルHIST_LEVELを算定する。ひとつのフレームFのフレーム情報F_HISTは、当該フレームFについて算定された信号レベルHIST_LEVELを含む。信号レベルHIST_LEVELは、以下の式(1)で表現されるように、帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]の合計値である。ひとつのフレームFのフレーム情報F_HISTは、ひとつのフレームFの特徴量C(例えばMFCC)と比較してデータ量が少ない。
図3の切換部583は、レベル算定部581が算定した帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]の供給先を、入力装置70から入力される開始指示TRに応じて選択的に切り換える手段である。さらに詳述すると、切換部583は、帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]を、開始指示TRの取得前には雑音レベル算定部585に出力し、開始指示TRの取得後にはS/N比算定部589に出力する。
雑音レベル算定部585は、図2に示すように、切換部583が開始指示TRを取得する直前の期間P0の雑音レベルNOISE_LEVEL[1]〜NOISE_LEVEL[n]を算定する手段である。期間P0は開始指示TRの時点を終点とする期間であって複数(図2の例示では6個)のフレームFで構成される。第i番目の周波数帯域に対応した雑音レベルNOISE_LEVEL[i]は、期間P0内の所定個のフレームFにわたる帯域別レベルFRAME_LEVEL[i]の平均値である。雑音レベル算定部585が算定した雑音レベルNOISE_LEVEL[1]〜NOISE_LEVEL[n]は記憶部587に順次に格納される。
図3のS/N比算定部589は、音信号Sの各フレームFについてS/N比Rを算定して第1区間特定部30に出力する。S/N比Rは、開始指示TR後の各フレームFの強度と期間P0内の雑音の強度との相対比に相当する数値である。本形態のS/N比算定部589は、開始指示TR後に切換部583から供給される各フレームFの帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]と記憶部587に格納された雑音レベルNOISE_LEVEL[1]〜NOISE_LEVEL[n]とから以下の式(2)に基づいてS/N比Rを算定する。
以上の式(2)で算定されるS/N比Rは、収音装置10の周囲に存在する雑音のレベルに対する現時点の音声のレベルの大小を示す指標である。すなわち、利用者が発声していない場合にS/N比Rは「1」に近い数値となり、利用者による発声の音量が増加するほどにS/N比Rは「1」から増大する。そこで、第1区間特定部30は、各フレームFのS/N比Rに基づいて図2の発音区間P1を特定する。すなわち、概略的にはS/N比Rが所定値を上回るフレームFの集合が発音区間P1として特定される。本形態においては、開始指示TRの直前(すなわち発声者による発声の直前)における所定個のフレームFの雑音レベルに基づいてS/N比Rが算定されるから、発音区間P1の特定にあたって周囲の雑音の影響を低減することが可能である。
図1に示すように第1区間特定部30は始点特定部32と終点特定部34とを含む。始点特定部32は、発音区間P1の始点P1_START(図2)を特定するとともに当該始点P1_STARTを識別するための始点データD1_STARTを生成する。終点特定部34は、発音区間P1の終点P1_STOP(図2)を特定するとともに当該終点P1_STOPを識別するための終点データD1_STOPを生成する。始点データD1_STARTは、発音区間P1の先頭のフレームFに付与された番号であり、終点データD1_STOPは、発音区間P1の最後のフレームFに付与された番号である。図2に示すように、発音区間P1はM1個(M1は自然数)のフレームFを含む。なお、第1区間特定部30の動作の具体例は後述する。
記憶部64は、フレーム情報生成部56が生成したフレーム情報F_HISTを記憶する手段である。半導体記憶装置や磁気記憶装置や光ディスク記憶装置など様々な記憶装置が記憶部64として好適に採用される。なお、記憶部64と記憶部587とは、ひとつの記憶装置に画定された別個の記憶領域であってもよいし、各々が別個の記憶装置であってもよい。
本形態の記憶部64は、フレーム情報生成部56が順次に算定する多数のフレーム情報F_HISTのうち発音区間P1に属するM1個のフレームFのフレーム情報F_HISTのみを選択的に記憶する。すなわち、記憶部64は、始点特定部32が始点P1_STARTを特定した時点で、当該始点P1_STARTに対応するフレームFからフレーム情報F_HISTの記憶を開始し、終点特定部34が終点P1_STOPを特定した時点で、当該終点P1_STOPに対応するフレームFをもってフレーム情報F_HISTの記憶を終了する。
第2区間特定部40は、記憶部64に格納されたM1個のフレーム情報F_HIST(信号レベルHIST_LEVEL)に基づいて図2の発音区間P2を特定する。図1に示すように第2区間特定部40は始点特定部42と終点特定部44とを含む。図2に示すように、始点特定部42は、発音区間P1の始点P1_STARTからフレーム情報F_HISTに応じた時間長(フレーム数)だけ経過した時点を発音区間P2の始点P2_STARTとして特定し、当該始点P2_STARTを識別するための始点データD2_STARTを生成する。終点特定部44は、発音区間P1の終点P1_STOPからフレーム情報F_HISTに応じた時間長(フレーム数)だけ手前の時点を発音区間P2の終点P2_STOPとして特定し、当該終点P2_STOPを識別するための終点データD2_STOPを生成する。始点データD2_STARTは発音区間P2の先頭のフレームFの番号であり、終点データD2_STOPは発音区間P2の最後のフレームFの番号である。始点データD2_STARTと終点データD2_STOPとは音解析装置80に出力される。図2に示すように、発音区間P2はM2個(M2は自然数)のフレームFを含む(M2<M1)。なお、第2区間特定部40の動作の具体例は後述する。
図1の出力制御部62は、特徴量算定部54が各フレームFについて順次に算定する特徴量Cを選択的に音解析装置80に出力する手段である。本形態の出力制御部62は、発音区間P1に属する各フレームFの特徴量Cを音解析装置80に出力する一方、発音区間P1以外の各フレームFの特徴量Cを破棄する(音解析装置80に出力しない)。すなわち、出力制御部62は、始点特定部32が始点P1_STARTを特定した時点で、当該始点P1_STARTに対応したフレームFから特徴量Cの出力を開始し、以後の各フレームFについては特徴量算定部54による算定に同期して実時間的に特徴量Cを出力する(すなわち各フレームFの特徴量Cが特徴量算定部54から供給されるたびに音解析装置80に出力する)。そして、出力制御部62は、終点特定部34が終点P1_STOPを特定した時点で、当該終点P1_STOPに対応するフレームFをもって特徴量Cの出力を終了する。
図1に示すように、音解析装置80は記憶部82と制御部84とを具備する。記憶部82は、特定の発声者の音声から抽出された特徴量(以下「登録特徴量」という)の集合を予め記憶する。さらに、記憶部82は、出力制御部62から出力された特徴量Cを記憶する。すなわち、発音区間P1に属するM1個のフレームFの各々の特徴量Cが記憶部82に格納される。
第2区間特定部40が生成した始点データD2_STARTおよび終点データD2_STOPは制御部84に供給される。制御部84は、記憶部82に格納されたM1個の特徴量Cのうち始点データD2_STARTと終点データD2_STOPとで画定される発音区間P2内のM2個の特徴量Cを使用して音信号Sを解析する。例えば、制御部84は、DPマッチングなど各種のパターンマッチング技術を利用して発音区間P2内の各特徴量Cと各登録特徴量との距離を算定し、この算定した距離に基づいて今回の発声者の正当性(発声者が予め登録された正規の利用者であるか否か)を判定する。
以上に説明したように、本形態においては、発音区間P1の特定に並行して各フレームFの特徴量Cが実時間的に音解析装置80に出力されるから、発音区間P1内の総てのフレームFの特徴量Cを発音区間P1の確定(終点P1_STOPの確定)まで音信号処理装置20が保持しておく必要はない。したがって、音信号処理装置20の規模を縮小することが可能である。また、音解析装置80においては発音区間P1をさらに絞り込んだ発音区間P2内の各特徴量Cが音信号Sの解析に使用されるから、発音区間P1内の総ての特徴量Cを対象として音信号Sの解析が実行される構成と比較して、制御部84による処理の負荷が軽減されるとともに解析の精度(例えば発声者の正当性を認証する精度)が向上するという利点もある。
<A−2:動作>
次に、発音区間P1および発音区間P2を特定する処理を中心として音信号処理装置20の具体的な動作を説明する。
次に、発音区間P1および発音区間P2を特定する処理を中心として音信号処理装置20の具体的な動作を説明する。
音信号処理装置20が起動すると、図3のレベル算定部581は、音信号Sの各フレームFについて帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]を継続的に算定する。利用者が自身の発声に先立って入力装置70から開始指示TRを入力すると、雑音レベル算定部585は、開始指示TRの直前の所定個のフレームFの帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]から雑音レベルNOISE_LEVEL[1]〜NOISE_LEVEL[n]を算定して記憶部587に格納する。一方、S/N比算定部589は、開始指示TR後の各フレームFの帯域別レベルFRAME_LEVEL[1]〜FRAME_LEVEL[n]と記憶部587の雑音レベルNOISE_LEVEL[1]〜NOISE_LEVEL[n]とに応じたS/N比Rを算定する。
(a)第1区間特定部30の動作
第1区間特定部30は、開始指示TRを契機として、発音区間P1を特定するための処理を開始する。すなわち、始点特定部32が始点P1_STARTを特定する処理(図4)と、終点特定部34が終点P1_STOPを特定する処理(図5)とが実行される。各処理について詳述すると以下の通りである。
第1区間特定部30は、開始指示TRを契機として、発音区間P1を特定するための処理を開始する。すなわち、始点特定部32が始点P1_STARTを特定する処理(図4)と、終点特定部34が終点P1_STOPを特定する処理(図5)とが実行される。各処理について詳述すると以下の通りである。
図4に示すように、始点特定部32は、始点データD1_STARTをクリアするとともに変数CNT_START1と変数CNT_START2とをゼロに初期化する(ステップSA1)。次いで、始点特定部32は、S/N比算定部589からひとつのフレームFのS/N比Rを取得し(ステップSA2)、変数CNT_START2に「1」を加算する(ステップSA3)。
次に、始点特定部32は、ステップSA2で取得したS/N比Rが所定の閾値SNR_TH1を上回るか否かを判定する(ステップSA4)。S/N比Rが閾値SNR_TH1を上回るフレームFは発音区間P1内のフレームFである可能性が高いが、周囲の雑音や電気的なノイズに起因してS/N比Rが突発的に閾値SNR_TH1を上回る場合もある。そこで、本形態においては以下に説明するように、S/N比Rが最初に閾値SNR_TH1を上回ったフレームFを始点とした所定個のフレームF(以下「候補フレーム群」という)のうちS/N比Rが閾値SNR_TH1を超えるフレームFがN1個を上回る場合に、最初のフレームFを発音区間P1の始点P1_STARTとして特定する。
ステップSA4の結果が肯定である場合、始点特定部32は、変数CNT_START1がゼロであるか否かを判定する(ステップSA5)。変数CNT_START1がゼロであるということは今回のフレームFが候補フレーム群の最初のフレームFであることを意味している。したがって、ステップSA5の結果が肯定である場合、始点特定部32は、始点データD1_STARTを今回のフレームFの番号に仮設定する(ステップSA6)とともに変数CNT_START2をゼロに初期化する(ステップSA7)。すなわち、今回のフレームFが発音区間P1の始点P1_STARTとして仮定される。一方、ステップSA5の結果が否定である場合、始点特定部32は、ステップSA6およびステップSA7を経ることなく処理をステップSA8に移行する。
始点特定部32は、変数CNT_START1に「1」を加算した(ステップSA8)うえで、加算後の変数CNT_START1が所定値N1を上回るか否かを判定する(ステップSA9)。ステップSA9の結果が肯定である場合、始点特定部32は、直前のステップSA6で仮設定したフレームFの番号を正式な始点データD1_STARTとして確定する(ステップSA10)。すなわち、発音区間P1の始点P1_STARTが特定される。ステップSA10において、始点特定部32は、始点データD1_STARTを第2区間特定部40に出力するとともに、始点P1_STARTの確定を出力制御部62および記憶部64に通知する。第1区間特定部30からの通知を契機として、出力制御部62による特徴量Cの出力と記憶部64によるフレーム情報F_HISTの記憶とが開始される。
ステップSA9の結果が否定である場合(すなわち候補フレーム群のうちS/N比Rが閾値SNR_TH1を上回るフレームFが未だN1個以下である場合)、始点特定部32は、次のフレームFについてS/N比Rを取得した(ステップSA2)うえでステップSA3以後の処理を実行する。以上のようにひとつのフレームFのS/N比Rが閾値SNR_TH1を上回るだけでは始点P1_STARTが確定されないから、例えば周囲の雑音や電気的なノイズに起因したS/N比Rの上昇を発音区間P1の始点P1_STARTと誤認する可能性は低減される。
一方、ステップSA4の結果が否定である場合(すなわちS/N比Rが閾値SNR_TH1以下である場合)、始点特定部32は、変数CNT_START2が所定値N2を上回るか否かを判定する(ステップSA11)。変数CNT_START2が所定値N2を上回るということは、候補フレーム群のN2個のフレームFのうちS/N比Rが閾値SNR_TH1を上回るフレームFがN1個以下であったことを意味している。そこで、ステップSA11の結果が肯定である場合、始点特定部32は、変数CNT_START1をゼロに初期化した(ステップSA12)うえで処理をステップSA2に移行する。ステップSA12の直後にS/N比Rが閾値SNR_TH1を上回ると(ステップSA4:YES)、ステップSA5の結果が肯定となってステップSA6およびステップSA7が実行される。すなわち、新たにS/N比Rが閾値SNR_TH1を超えたフレームFが始点となるように候補データ群が更新される。一方、ステップSA11の結果が否定である場合、始点特定部32は、ステップSA12を経ることなく処理をステップSA2に移行する。
図4の処理で始点P1_STARTが特定されると、今度は発音区間P1の終点P1_STOPを特定する処理(図5)が終点特定部34によって実行される。終点特定部34は、S/N比Rが閾値SNR_TH2を下回るフレームFがN3個を超えた場合に、S/N比Rが最初に閾値SNR_TH2を下回ったフレームFを終点P1_STOPとして特定する。
図5に示すように、終点特定部34は、終点データD1_STOPをクリアするとともに変数CNT_STOPをゼロに初期化した(ステップSB1)うえで、S/N比算定部589からS/N比Rを取得する(ステップSB2)。次いで、終点特定部34は、ステップSB2で取得したS/N比Rが所定の閾値SNR_TH2を下回るか否かを判定する(ステップSB3)。
ステップSB3の結果が肯定である場合、終点特定部34は、変数CNT_STOPがゼロであるか否かを判定する(ステップSB4)。ステップSB4の結果が肯定である場合、終点特定部34は、終点データD1_STOPを今回のフレームFの番号に仮設定する(ステップSB5)。一方、ステップSB4の結果が否定である場合、終点特定部34は、ステップSB5を経ることなく処理をステップSB6に移行する。
次いで、終点特定部34は、変数CNT_STOPに「1」を加算した(ステップSB6)うえで、加算後の変数CNT_STOPが所定値N3を上回るか否かを判定する(ステップSB7)。ステップSB7の結果が肯定である場合、終点特定部34は、直前のステップSB5で仮設定したフレームFの番号を正式な終点データD1_STOPとして確定する(ステップSB8)。すなわち、発音区間P1の終点P1_STOPが特定される。ステップSB8において、終点特定部34は、終点データD1_STOPを第2区間特定部40に出力するとともに、終点P1_STOPの確定を出力制御部62および記憶部64に通知する。第1区間特定部30からの通知を契機として、出力制御部62による特徴量Cの出力と記憶部64によるフレーム情報F_HISTの記憶とが終了する。したがって、図5の処理が完了した段階では、発音区間P1に属するM1個のフレームFの各々について、記憶部64にフレーム情報F_HIST(信号レベルHIST_LEVEL)が格納されるとともに音解析装置80の記憶部64に特徴量Cが格納されることになる。
ステップSB7の結果が否定である場合(すなわちS/N比Rが閾値SNR_TH2を下回るフレームFがN3個以下である場合)、終点特定部34は、次のフレームFについてS/N比Rを取得した(ステップSB2)うえでステップSB3以後の処理を実行する。以上のようにひとつのフレームFのS/N比Rが閾値SNR_TH2を下回るだけでは終点P1_STOPは確定されないから、突発的にS/N比Rが低下した時点を終点P1_STOPと誤認する可能性が低減される。
一方、ステップSB3の結果が否定である場合、終点特定部34は、始点P1_STARTの特定に使用した閾値SNR_TH1を今回のS/N比Rが上回るか否かを判定する(ステップSB9)。ステップSB9の結果が否定である場合、終点特定部34は、ステップSB2に処理を移行して新たなS/N比Rを取得する。
ところで、利用者の発声時のS/N比Rは基本的には閾値SNR_TH1を上回る。したがって、図5の処理を開始してからS/N比Rが閾値SNR_TH1を上回った場合(ステップSB9:YES)には、利用者が発声中である可能性が高い。そこで、ステップSB9の結果が肯定である場合、終点特定部34は、変数CNT_STOPをゼロに初期化した(ステップSB10)うえでステップSB2以後の処理を実行する。ステップSB10の実行後にS/N比Rが閾値SNR_TH2を下回ると(ステップSB3:YES)、ステップSB4の結果が肯定となってステップSB5が実行される。すなわち、S/N比Rが閾値SNR_TH2を下回ることで終点データD1_STOPが仮設定された場合であっても、S/N比Rが閾値SNR_TH2を下回るフレームFの個数が所定値N3以下の段階でひとつのフレームFのS/N比Rが閾値SNR_TH1を上回った場合(すなわち利用者が発声中である可能性が高い場合)には、終点データD1_STOPの仮設定が解除される。
(b)第2区間特定部40の動作
発声者が実際に発声した区間を確実に検出する(すなわち検出の漏れを確実に防止する)ためには、例えば図4における閾値SNR_TH1を比較的に小さい数値に設定するとともに図5の閾値SNR_TH2を比較的に大きい数値に設定せざるを得ない。したがって、例えば実際の発声に先立って発声者の咳の音やリップノイズや口中音などの雑音が発生すると、当該雑音の発生した時点が発音区間P1の始点P1_STARTと認定される場合がある。そこで、第2区間特定部40は、第1区間特定部30による発音区間P1の特定後に、雑音に該当する可能性が高いフレームFを、発音区間P1の先頭および最後尾のフレームFから順次に除外する(すなわち発音区間P1を短縮する)ことで発音区間P2を特定する。
発声者が実際に発声した区間を確実に検出する(すなわち検出の漏れを確実に防止する)ためには、例えば図4における閾値SNR_TH1を比較的に小さい数値に設定するとともに図5の閾値SNR_TH2を比較的に大きい数値に設定せざるを得ない。したがって、例えば実際の発声に先立って発声者の咳の音やリップノイズや口中音などの雑音が発生すると、当該雑音の発生した時点が発音区間P1の始点P1_STARTと認定される場合がある。そこで、第2区間特定部40は、第1区間特定部30による発音区間P1の特定後に、雑音に該当する可能性が高いフレームFを、発音区間P1の先頭および最後尾のフレームFから順次に除外する(すなわち発音区間P1を短縮する)ことで発音区間P2を特定する。
図6は、第2区間特定部40の始点特定部42が実行する処理の内容を示すフローチャートである。第2区間特定部40の始点特定部42は、記憶部64に格納されたM1個のフレーム情報F_HISTのなかから信号レベルHIST_LEVELの最大値MAX_LEVELを特定する(ステップSC1)。次いで、始点特定部42は、変数CNT_FRAMEをゼロに初期化するとともに最大値MAX_LEVELに応じた閾値TH1を設定する(ステップSC2)。本形態における閾値TH1は、ステップSC1で特定した最大値MAX_LEVELと係数αとの乗算値である。係数αは、予め設定された「1」未満の数値である。
次いで、始点特定部42は、発音区間P1のM1個のフレームFのなかからひとつのフレームFを選択する(ステップSC3)。本形態の始点特定部42は、発音区間P1内の各フレームFを先頭から最後尾に向けてステップSC3ごとに順番に選択する。すなわち、図6の処理を開始してから最初のステップSC3においては発音区間P1の先頭のフレームFが選択され、次回以降のステップSC3においては前回のステップSC3で選択されたフレームFの直後のフレームFが選択される。
次に、始点特定部42は、ステップSC3で選択したフレームFに対応するフレーム情報F_HISTの信号レベルHIST_LEVELが閾値TH1を下回るか否かを判定する(ステップSC4)。最大値間MAX_LEVELと比較すると雑音のレベルは小さいから、信号レベルHIST_LEVELが閾値TH1を下回るフレームFは、本来の発声の直前に発生した雑音である可能性が高い。そこで、ステップSC4の結果が肯定である場合、始点特定部42は、ステップSC3で選択したフレームFを発音区間P1から除外する(ステップSC5)。さらに詳述すると、始点特定部42は、ステップSC3で選択したフレームFの直後のフレームFを暫定的な始点p_STARTとして選定する。次いで、始点特定部42は、変数CNT_FRAMEをゼロに初期化した(ステップSC6)うえでステップSC3に処理を移行する。ステップSC3においては、現時点で選択しているフレームFの直後のフレームFを新たに選択する。
ステップSC4の結果が否定である場合(すなわち信号レベルHIST_LEVELが閾値TH1以上である場合)、始点特定部42は、変数CNT_FRAMEに「1」を加算した(ステップSC7)うえで、加算後の変数CNT_FRAMEが所定値N4を上回るか否かを判定する(ステップSC8)。ステップSC8の結果が否定である場合、始点特定部42はステップSC3に処理を移行して新たなフレームFを選択する。一方、ステップSC8の結果が肯定である場合、始点特定部42はステップSC9に処理を移行する。すなわち、N4個を上回る個数のフレームFにわたって連続してステップSC4の判定(HIST_LEVEL<TH1)が否定された場合に処理がステップSC9に移行する。
ステップSC9において、始点特定部42は、ステップSC1で特定した最大値MAX_LEVELに応じて閾値TH2を設定する。本形態の閾値TH2は、最大値MAX_LEVELと予め定められた係数βとの乗算値である。
次に、始点特定部42は、発音区間P1のうち現段階の暫定的な始点p_START以降の複数のフレームF(すなわちステップSC5を経た場合には先頭側の幾つかのフレームFの除外後の発音区間P1)のなかから相連続する所定個のフレームFを選択する(ステップSC10)。図7は、ステップSC10で選択されるフレームFの集合G(G1,G2,G3,……)を示す概念図である。同図に示すように、図6の処理を開始してから最初のステップSC10においては、先頭から所定個のフレームFの集合G1がが選択される。
次いで、始点特定部42は、ステップSC10で選択した所定個のフレームFの信号レベルHIST_LEVELについて加算値SUM_LEVELを算定する(ステップSC11)。さらに、始点特定部42は、ステップSC11で算定した加算値SUM_LEVELがステップSC9で算定した閾値TH2を下回るか否かを判定する(ステップSC12)。
図4を参照して説明したように、本形態においては候補フレーム群のうちS/N比Rが閾値SNR_TH1を超えるフレームFがN1個を上回る場合に最初のフレームFが発音区間P1の始点P1_STARTとして特定される。したがって、候補フレーム群のなかの複数のフレームFにわたって雑音が発生した場合には当該候補フレーム群の先頭が始点P1_STARTと認定され得る。一方、最大値MAX_LEVELと比較すると雑音のレベルは充分に小さいから、所定個のフレームFにわたる信号レベルHIST_LEVELの加算値SUM_LEVELが閾値TH2を下回るフレームFは、本来の発音の直前に発生した雑音である可能性が高い。
そこで、ステップSC12の結果が肯定である場合、始点特定部42は、図7に示すように、ステップSC10で選択した集合Gのうち先頭側の半数のフレームFを除外する(ステップSC13)。すなわち、集合Gを分割した後半の部分のなかの先頭のフレームFが暫定的な始点p_STARTとして選定される。次いで、始点特定部42は、ステップSC10に処理を移行し、図7に示すように、現段階における先頭から所定個のフレームFの集合G2を選択してステップSC11以後の処理を実行する。
一方、ステップSC12の結果が否定である場合、始点特定部42は、現段階で設定されている始点p_STARTを始点P2_STARTとして確定し、当該始点P2_START(フレーム番号)を指定する始点データD2_STARTを音解析装置80に出力する(ステップSC14)。例えば、図7に示すように集合G3が選択された段階でステップSC12の結果が否定となった場合、集合G3の先頭(集合G2のうち後半の部分における先頭)が始点P2_STARTとして特定される。
第2区間特定部40の終点特定部44は、図6と同様の処理によって発音区間P1の各フレームFを最後尾から順次に除外することで終点P2_STOPを特定する。すなわち、終点特定部44は、発音区間P1の各フレームFを最後尾から先頭に向けてステップSC3ごとに順番に選択し、信号レベルHIST_LEVELが閾値TH1を下回る場合には当該フレームFを除外する(ステップSC5)。また、終点特定部44は、最後尾から手前側に連続する所定個のフレームFの集合Gを選択する(ステップSC10)とともに信号レベルHIST_LEVELの加算値SUM_LEVELを算定する(ステップSC11)。そして、終点特定部44は、加算値SUM_LEVELが閾値TH2を下回る場合には集合Gの後半のフレームFを除外し(ステップSC13)、加算値SUM_LEVELが閾値TH2以上である場合には、当該時点における最後尾のフレームFを発音区間P2の終点P2_STOPとして指定する終点データD2_STOPを音解析装置80に出力する(ステップSC14)。
以上に説明したように、第2区間特定部40が発音区間P2を特定する段階では発音区間P1における信号レベルHIST_LEVELの最大値MAX_LEVELが確定している。したがって、以上に例示したように最大値MAX_LEVELを利用することで、第2区間特定部40は、最大値MAX_LEVELが未確定の段階で発音区間P1を特定せざるを得ない第1区間特定部30と比較して高精度に発音区間P2を特定することが可能である。すなわち、発声者の咳払いやリップノイズなどの雑音に起因して発音区間P1に含められたフレームFが第2区間特定部40によって除外される。したがって、音解析装置80においては、雑音の影響を排除した発音区間P2の各フレームFを利用して高精度に音信号Sが解析される。
なお、以上の形態においては信号レベルHIST_LEVELがフレーム情報F_HISTとして使用される構成を例示したが、フレーム情報F_HISTの内容は適宜に変更される。例えば、以上の動作における信号レベルHIST_LEVELを、S/N比算定部589が各フレームFについて算定したS/N比Rに置換してもよい。すなわち、第2区間特定部40が発音区間P2の特定に使用するフレーム情報F_HISTは、音信号Sの信号のレベルに応じた数値(信号指標値)であれば足り、その具体的な内容の如何は不問である。
<B:第2実施形態>
次に、本発明の第2実施形態を説明する。なお、本形態において作用や機能が第1実施形態と共通する要素については、以上と同じ符号を付して各々の詳細な説明を適宜に省略する。
次に、本発明の第2実施形態を説明する。なお、本形態において作用や機能が第1実施形態と共通する要素については、以上と同じ符号を付して各々の詳細な説明を適宜に省略する。
屋外で発生した風や発声者の鼻息が収音装置10に吹付けられたとき(すなわち風切音が収音されたとき)の音信号Sは長時間にわたって高いレベルを維持する。したがって、第1区間特定部30は、実際には発声者が発声していない区間であるにも拘わらず、風切音が発生した区間を発音区間P1と認定する場合がある。そこで、本形態の第2区間特定部40は、発音区間P1のうち風切音の可能性が高いフレームを除外することで発音区間P2を特定する。
本形態のフレーム情報生成部56は、音信号Sの各フレームFについてピッチを検出し、この検出の結果を示すピッチデータHIST_PITCHを生成する。記憶部64に格納されるフレーム情報F_HISTには、第1実施形態と同様の信号レベルHIST_LEVELとともにピッチデータHIST_PITCHが含められる。ピッチデータHIST_PITCHは、音信号SのフレームFについて明確なピッチが検出された場合には当該ピッチを示し、音信号Sについて明確なピッチが検出されなかった場合にはピッチの非検出を示す(例えばゼロに設定される)。人間の音声は、レベルが高ければ基本的にピッチの検出が可能であるから、当該ピッチを含むピッチデータHIST_PITCHが生成される。これに対し、規則的な倍音の構造を持たない風切音は明確なピッチが検出されないから、風切音が収音された場合にはピッチの非検出を示すピッチデータHIST_PITCHが生成される。
次に、図8は、第2区間特定部40のうち始点特定部42の動作を示すフローチャートである。始点特定部42は、変数CNT_FRAMEをゼロに初期化した(ステップSD1)うえで発音区間P1のなかからひとつのフレームFを選択する(ステップSD2)。各フレームFは、発音区間P1の先頭から最後尾に向けてステップSD2ごとに順番に選択される。次いで、始点特定部42は、ステップSD2で選択したフレームFのフレーム情報F_HISTに含まれる信号レベルHIST_LEVELが所定の閾値L_THを上回るか否かを判定する(ステップSD3)。
ステップSD3の結果が肯定である場合、始点特定部42は、ステップSD2で選択したフレームFのフレーム情報F_HISTに含まれるピッチデータHIST_PITCHがピッチの非検出を示すか否かを判定する(ステップSD4)。ステップSD4の結果が肯定である場合、始点特定部42は、変数CNT_FRAMEに「1」を加算した(ステップSD5)うえで、加算後の変数CNT_FRAMEが所定値N5を上回るか否かを判定する(ステップSD6)。風切音のみが収音された場合の音信号Sは複数のフレームFにわたって連続して高いレベルを維持するとともにピッチが非検出となる。そこで、ステップSD6の結果が肯定である場合(すなわちN5個を上回るフレームFにわたってステップSD3およびステップSD4の判定が連続して肯定された場合)、始点特定部42は、現段階で選択しているフレームFまでの所定個((N5+1)個)のフレームFを除外して(ステップSD7)、ステップSD1に処理を移行する。すなわち、始点特定部42は、直前のステップSD2で選択したフレームFの直後のフレームFを暫定的な始点p_STARTとして選定する。一方、ステップSD6の結果が否定である場合(ステップSD3およびステップSD4の条件を充足するフレームFの連続数がN5個以下である場合)、始点特定部42は、ステップSD2に処理を移行して新たなフレームFを選択したうえでステップSD3以後の処理を実行する。
一方、ステップSD3およびステップSD4の何れかの結果が否定である場合(すなわちフレームFの音声が風切音のみである可能性が低い場合)、現段階における先頭のフレームFが始点P2_STARTとして選定される。すなわち、始点特定部42は、暫定的な始点p_STARTを始点P2_STARTとして確定し、当該始点P2_STARTを指定する始点データD2_STARTを音解析装置80に出力する(ステップSD8)。
第2区間特定部40の終点特定部44は、図8と同様の処理によって発音区間P1の各フレームFを最後尾から順次に除外することで終点P2_STOPを特定する。すなわち、終点特定部44は、発音区間P1の各フレームFを最後尾から先頭に向けてステップSD2ごとに順番に選択する一方、ステップSD7においては、ステップSD3およびステップSD4の判定が連続して肯定された所定個のフレームFを除外する。そして、ステップSD8においては当該時点における最後尾のフレームFを終点P2_STOPとして指定する終点データD2_STOPが生成される。以上の形態によれば、風切音の影響で発音区間P1と認定されたフレームFが除外される。したがって、音解析装置80による音信号Sの解析の精度を向上することができる。
<C:第3実施形態>
次に、本発明の第3実施形態について説明する。なお、本形態において作用や機能が第1実施形態と共通する要素については、以上と同じ符号を付して各々の詳細な説明を適宜に省略する。
次に、本発明の第3実施形態について説明する。なお、本形態において作用や機能が第1実施形態と共通する要素については、以上と同じ符号を付して各々の詳細な説明を適宜に省略する。
音解析装置80は、正規の利用者が特定の言葉(パスワード)を発声したときに抽出された登録特徴量と音信号Sから抽出された特徴量Cとを対比することで発声者を認証する。認証の精度を維持するためには、認証時と登録時とでパスワードの末尾の音韻の時間長が同等であることが望ましいが、実際には、パスワードの末尾に相当する無声子音の時間長は認証のたびに変動する。そこで、本形態においては、認証時におけるパスワードの末尾の無声子音が所定の時間長に統一されるように、発音区間P1の終点P1_STOPから手前側に連続する複数のフレームFが除外される。
本形態のフレーム情報生成部56は、各フレームFの音信号Sのゼロクロス数HIST_ZXCNTをフレーム情報F_HISTとして生成する。ゼロクロス数HIST_ZXCNTは、ひとつのフレームF内の音信号Sのレベルが基準値(ゼロ)を跨いで変動した回数である。収音装置10の収音した音声が無声子音である場合には、各フレームFのゼロクロス数HIST_ZXCNTが大きい数値となる。
図9は、第2区間特定部40における終点特定部44の動作を示すフローチャートであり、図10は、終点特定部44の処理を説明するための概念図である。終点特定部44は、変数CNT_FRAMEをゼロに初期化した(ステップSE1)うえで発音区間P1のひとつのフレームFを選択する(ステップSE2)。各フレームFは、発音区間P1の最後尾から先頭に向けてステップSE2ごとに順番に選択される。次いで、終点特定部44は、ステップSE2で選択したフレームFのフレーム情報F_HISTに含まれるゼロクロス数HIST_ZXCNTが所定の閾値Z_THを上回るか否かを判定する(ステップSE3)。閾値Z_THは、フレームFの音信号Sが無声子音である場合にステップSE3の判定が肯定されるように実験的または統計的に設定される。
ステップSE3の結果が肯定である場合、終点特定部44は、ステップSE2にて選択したフレームFを発音区間P1から除外する(ステップSE4)。すなわち、終点特定部44は、ステップSE2にて選択したフレームFの直前のフレームFを暫定的な終点p_STOPとして選定する。さらに、終点特定部44は、ステップSE1に処理を移行して変数CNT_FRAMEをゼロに初期化したうえでステップSE2以後の処理を実行する。
一方、ステップSE3の結果が否定である場合、終点特定部44は、変数CNT_FRAMEに「1」を加算し(ステップSE5)、加算後の変数CNT_FRAMEが所定値N6を上回るか否かを判定する(ステップSE6)。ステップSE6の結果が否定である場合、終点特定部44は、ステップSE2に処理を移行する。
ゼロクロス数HIST_ZXCNTが閾値Z_THを上回る場合に変数CNT_FRAMEはゼロに初期化される(ステップSE1)から、ステップSE6の判定は、N6個を超えるフレームFにわたって連続してゼロクロス数HIST_ZXCNTが閾値Z_TH以下となる場合に肯定される。ステップSE6の結果が肯定である場合、終点特定部44は、現段階の最後尾のフレームF(暫定的な終点p_STOP)から所定の時間長Tだけ経過した時点を発音区間P2の終点P2_STOPとして確定したうえで終点データD2_STOPを出力する(ステップSE7)。例えば、ステップSE4の反復によって図10のように発音区間P1の終点から複数(12個)のフレームFが除去されると、除去後の最後尾のフレームFから時間長Tだけ経過した時点が終点P2_STOPとして確定する。
以上に説明したように、本形態においては、発声者の実際の発声に拘わらず、認証時におけるパスワードの末尾の音声(無声子音)が所定の時間長Tに調整されるから、発音区間P1の総てのフレームFの特徴量Cが使用される場合と比較して、音解析装置80による認証の精度を向上することが可能である。
<D:変形例>
以上の形態には様々な変形を加えることができる。具体的な変形の態様を例示すれば以下の通りである。なお、以下の各態様を適宜に組み合わせてもよい。
以上の形態には様々な変形を加えることができる。具体的な変形の態様を例示すれば以下の通りである。なお、以下の各態様を適宜に組み合わせてもよい。
(1)第1区間特定部30による発音区間P1の特定には公知の各種の技術を採用することが可能である。例えば、音信号Sのうち音量(エネルギ)が所定の閾値を上回る複数のフレームFの集合を発音区間P1として特定する構成も採用される。また、発音の開始と終了とが利用者によって入力装置70から指示される構成においては、開始の指示から終了の指示までの区間を発音区間P1として特定してもよい。
同様に、第2区間特定部40が発音区間P2を特定する方法も適宜に変更される。例えば、第2区間特定部40が始点特定部42および終点特定部44の何れかひとつのみを含む構成も採用される。第2区間特定部40が始点特定部42のみを含む構成においては、発音区間P1の始点P1_STARTを後退させた始点P2_STARTから終点P1_STOPまでの区間が発音区間P2として特定される。同様に、第2区間特定部40が終点特定部44のみを含む構成においては、発音区間P1の始点P1_STARTから終点P2_STOPまでの区間が発音区間P2として特定される。
第2区間特定部40(始点特定部42または終点特定部44)が、図6におけるステップSC8までの処理とステップSC9以後の処理との何れか一方のみを実行する構成も採用される。さらに、各形態における第2区間特定部40の動作を適宜に組み合わせてもよい。例えば、信号レベルHIST_LEVEL(第1実施形態)とゼロクロス数HIST_ZXCNT(第3実施形態)との双方に基づいて第2区間特定部40が始点P2_STARTまたは終点P2_STOPを特定する構成が採用される。
また、第2実施形態においては信号レベルHIST_LEVELが閾値L_THを上回るという条件(ステップSD3)とピッチデータHIST_PITCHが非検出を示すという条件(ステップSD4)との双方を充足した場合にフレームFが除外される構成を例示したが、ステップSD4の条件のみが判定される構成としてもよい。以上の例示から理解されるように、第2区間特定部40は、各フレームFについて生成されたフレーム情報F_HISTに基づいて発音区間P1よりも短い発音区間P2を特定する手段であればよい。
(2)以上の各形態においては、始点P1_STARTや終点P1_STOPの確定を契機として記憶部64がフレーム情報F_HISTの記憶を開始または終了する構成を例示したが、フレーム情報生成部56が、始点P1_STARTの確定を契機としてフレーム情報F_HISTの生成を開始するとともに終点P1_STOPの確定を契機としてフレーム情報F_HISTの生成を終了する構成においても同様の効果が奏される。
もっとも、記憶部64が記憶する対象は発音区間P1内のフレーム情報F_HISTに限定されない。すなわち、音信号Sの総てのフレームFについて生成されるフレーム情報F_HISTが記憶部64に格納される構成としてもよい。ただし、以上の各形態のように発音区間P1内のフレーム情報F_HISTのみが記憶部64に格納される構成によれば、記憶部64に必要となる容量が低減されるという利点がある。
(3)始点(P1_START,P2_START)や終点(P1_STOP,P2_STOP)を指定するための情報はフレームFの番号に限定されない。例えば、始点データ(D1_START,D2_START)や終点データ(D1_STOP,D2_STOP)は、所定の時点(例えば開始指示TRの発生時)を基準とした時刻で始点や終点を指定するデータであってもよい。
(4)開始指示TRの発生の契機は入力装置70に対する操作に限定されない。例えば、音信号処理システムから利用者に対して発音の開始を促す通知(画像や音声による報知)が実行される場合には、当該通知を契機として開始指示TRを生成する構成も採用される。
(5)音解析装置80による音解析の内容は任意である。例えば、複数の利用者について抽出された登録特徴量と発声者の特徴量Cとを対比することで発声者を特定する話者認識や、発声者が発話した音韻(文字データ)を音信号Sから特定する音声認識を音解析装置80が実行してもよい。以上の各形態のように発音区間P2を特定(音信号Sから雑音のみの区間を除外)する技術は、何れの音解析に際しても精度の向上のために好適に採用される。また、特徴量Cの内容は音解析装置80による処理の内容に応じて適宜に選定されるのであって、以上の各形態におけるメルケプストラム係数は特徴量Cの例示に過ぎない。例えば、各フレームFに区分された音信号Sが特徴量Cとして音解析装置80に出力される構成としてもよい。
10……収音装置、20……音信号処理装置、30……第1区間特定部、40……第2区間特定部、32,42……始点特定部、34,44……終点特定部、50……フレーム分析部、52……分割部、54……特徴量算定部、56……フレーム情報生成部、58……演算部、581……レベル算定部、583……切換部、585……雑音レベル算定部、587,64……記憶部、589……S/N比算定部、62……出力制御部、70……入力装置、80……音解析装置、82……記憶部、84……制御部、S……音信号、F……フレーム、TR……開始指示、F_HIST……フレーム情報、R……S/N比、C……特徴量、P1,P2……発音区間。
Claims (6)
- 音解析装置が音信号の解析に使用する特徴量を前記音信号の各フレームについて順次に算定する特徴量算定手段と、
前記音信号の各フレームについてフレーム情報を生成するフレーム情報生成手段と、
前記フレーム情報生成手段が生成したフレーム情報を記憶する記憶手段と、
前記音信号の第1発音区間を特定する第1区間特定手段と、
前記特徴量算定手段が算定した特徴量を順次に前記音解析装置に出力する出力制御手段と、
前記第1発音区間を短縮した第2発音区間を、前記記憶手段が記憶するフレーム情報に基づいて特定して前記音解析装置に通知する第2区間特定手段と
を具備する音信号処理装置。 - 前記記憶手段は、前記第1区間特定手段が特定した第1発音区間に対応した各フレームのフレーム情報を記憶する
請求項1に記載の音信号処理装置。 - 前記各フレームのフレーム情報は、前記各フレームの特徴量よりもデータ量が少ない
請求項1または請求項2に記載の音信号処理装置。 - 前記第1区間特定手段は、前記第1発音区間の始点を特定する始点特定手段と、前記第1発音区間の終点を特定する終点特定手段とを含み、
前記出力制御手段は、前記音解析装置に対する特徴量の出力を、前記第1始点特定手段による始点の特定を契機として開始し、前記第1終点特定手段による終点の特定を契機として終了する
請求項1から請求項3の何れかに記載の音信号処理装置。 - 開始指示を取得する取得手段と、
前記音信号のうち前記取得手段による開始指示の取得前のフレームの雑音レベルを算定する雑音レベル算定手段と、
前記音信号のうち前記取得手段による開始指示の取得後の各フレームの信号レベルと前記雑音レベル算定手段が算定した雑音レベルとに基づいてS/N比を算定するS/N比算定手段と
を具備し、
前記第1区間特定手段は、前記S/N比算定手段が各フレームについて算定したS/N比に基づいて前記第1発音区間を特定する
請求項1から請求項4の何れかに記載の音信号処理装置。 - コンピュータに、
音解析装置が音信号の解析に使用する特徴量を前記音信号の各フレームについて順次に算定する特徴量算定処理と、
前記音信号の各フレームについてフレーム情報を生成して記憶手段に記憶させるフレーム情報生成処理と、
前記音信号の第1発音区間を特定する第1区間特定処理と、
前記特徴量算定処理で算定した特徴量を順次に前記音解析装置に出力する出力制御処理と、
前記第1発音区間を短縮した第2発音区間を、前記記憶手段が記憶するフレーム情報に基づいて特定して前記音解析装置に通知する第2区間特定処理と
を実行させるためのプログラム。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006347788A JP2008158315A (ja) | 2006-12-25 | 2006-12-25 | 音信号処理装置およびプログラム |
| EP07024994.1A EP1939859A3 (en) | 2006-12-25 | 2007-12-21 | Sound signal processing apparatus and program |
| US11/962,439 US8069039B2 (en) | 2006-12-25 | 2007-12-21 | Sound signal processing apparatus and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006347788A JP2008158315A (ja) | 2006-12-25 | 2006-12-25 | 音信号処理装置およびプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2008158315A true JP2008158315A (ja) | 2008-07-10 |
Family
ID=39659273
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006347788A Pending JP2008158315A (ja) | 2006-12-25 | 2006-12-25 | 音信号処理装置およびプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2008158315A (ja) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1195785A (ja) * | 1997-09-19 | 1999-04-09 | Brother Ind Ltd | 音声区間検出方式 |
| JP2000310993A (ja) * | 1999-04-28 | 2000-11-07 | Pioneer Electronic Corp | 音声検出装置 |
| JP2001265367A (ja) * | 2000-03-16 | 2001-09-28 | Mitsubishi Electric Corp | 音声区間判定装置 |
-
2006
- 2006-12-25 JP JP2006347788A patent/JP2008158315A/ja active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1195785A (ja) * | 1997-09-19 | 1999-04-09 | Brother Ind Ltd | 音声区間検出方式 |
| JP2000310993A (ja) * | 1999-04-28 | 2000-11-07 | Pioneer Electronic Corp | 音声検出装置 |
| JP2001265367A (ja) * | 2000-03-16 | 2001-09-28 | Mitsubishi Electric Corp | 音声区間判定装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1939859A2 (en) | Sound signal processing apparatus and program | |
| US9536523B2 (en) | Method and system for identification of speech segments | |
| JP6024180B2 (ja) | 音声認識装置、音声認識方法、及びプログラム | |
| JP5050698B2 (ja) | 音声処理装置およびプログラム | |
| JP2015055653A (ja) | 音声認識装置及び方法、並びに、電子機器 | |
| JP6056394B2 (ja) | 音声処理装置 | |
| JP2011154341A (ja) | 音声認識装置、音声認識方法および音声認識プログラム | |
| JP5083951B2 (ja) | 音声処理装置およびプログラム | |
| JP4349415B2 (ja) | 音信号処理装置およびプログラム | |
| JP4506896B2 (ja) | 音信号処理装置およびプログラム | |
| JP5109050B2 (ja) | 音声処理装置およびプログラム | |
| JP2002189487A (ja) | 音声認識装置および音声認識方法 | |
| JP5388447B2 (ja) | 発音期間を特定する音信号処理装置および音信号処理方法 | |
| JP2008158315A (ja) | 音信号処理装置およびプログラム | |
| JP2006154212A (ja) | 音声評価方法および評価装置 | |
| JP5157475B2 (ja) | 音処理装置およびプログラム | |
| JP2009020459A (ja) | 音声処理装置およびプログラム | |
| JP6430318B2 (ja) | 不正音声入力判定装置、方法及びプログラム | |
| JP5157474B2 (ja) | 音処理装置およびプログラム | |
| JP4305509B2 (ja) | 音声処理装置およびプログラム | |
| JP4807261B2 (ja) | 音声処理装置およびプログラム | |
| JP5272141B2 (ja) | 音声処理装置およびプログラム | |
| JP4962930B2 (ja) | 発音評定装置、およびプログラム | |
| JP2011158515A (ja) | 音声認識装置および音声認識方法 | |
| JP2010256765A (ja) | ユーザプロファイル抽出方法、ユーザプロファイル抽出装置及びユーザプロファイル抽出プログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081128 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081202 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090407 |