(57)【特許請求の範囲】
【請求項１】
音信号処理装置は、
継続的に音信号を取得する音信号取得手段と、
現時点を終点とする所定期間において前記音信号取得手段により取得された音信号を記憶する記憶手段と、
トリガ信号を取得するトリガ信号取得手段と、
前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を用いてサウンドレベルの指標値を算出し、前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号を用いてノイズレベルの指標値を算出し、前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定することにより、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号のうち発音期間の音を示す部分を特定する特定手段と、
ユーザの操作に応じて所定の信号を生成する操作手段と、を備え、
前記トリガ信号取得手段は、前記ユーザによる所定の操作に応じて前記操作手段により生成されるトリガ信号を取得する。
【請求項２】
音信号処理装置は、
継続的に音信号を取得する音信号取得手段と、
現時点を終点とする所定期間において前記音信号取得手段により取得された音信号を記憶する記憶手段と、
トリガ信号を取得するトリガ信号取得手段と、
前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を用いてサウンドレベルの指標値を算出し、前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号を用いてノイズレベルの指標値を算出し、前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定することにより、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号のうち発音期間の音を示す部分を特定する特定手段と、
ユーザに対し発音を促す通知を行うとともに、前記通知に伴いトリガ信号を生成する通知手段と、を備え、
前記トリガ信号取得手段は、前記通知手段により生成されたトリガ信号を取得する。
【請求項３】
請求項１又は２に記載の音信号処理装置であって、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号の所定周波数の成分のパワーを示す指標値および前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号の所定周波数の成分のパワーを示す指標値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出する。
【請求項４】
請求項１又は２に記載の音信号処理装置であって、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号の振幅値および前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号の振幅値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出する。
【請求項５】
請求項１又は２に記載の音信号処理装置であって、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの開始時点を前記発音期間の開始時点として特定する。
【請求項６】
請求項５に記載の音信号処理装置であって、前記特定手段は、所定のフレームに関し算出した前記Ｓ／Ｎ比が前記所定の条件を満たさない場合、前記記憶手段に記憶されている音信号を当該所定のフレームを用いて更新し、当該所定のフレームの後続のフレームについて前記Ｓ／Ｎ比を算出するときに、当該更新後の前記記憶手段に記憶されている音信号を用いる。
【請求項７】
請求項１又は２に記載の音信号処理装置であって、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの終了時点を前記発音期間の終了時点として特定する。
【請求項８】
請求項１又は２に記載の音信号処理装置であって、前記特定手段は、前記記憶手段に記憶されている音信号を所定時間長ごとに分割して得られる複数のフレームの各々について所定の属性値を算出し、前記算出した属性値が所定の条件を満たすフレームを前記Ｓ／Ｎ比の算出に用いない。
【請求項９】
音信号処理方法は、
継続的に音信号を取得し、
現時点を終点とする過去の所定期間において取得した音信号を記憶し、
トリガ信号を取得し、
前記トリガ信号を取得した時点後に取得した音信号を用いてサウンドレベルの指標値を算出し、
前記トリガ信号を取得した時点において記憶している音信号を用いてノイズレベルの指標値を算出し、
前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、
前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定し、
前記判定処理に基づいて、前記トリガ信号を取得した時点後に取得した音信号のうち発音期間の音を示す部分を特定し、
ユーザの操作に応じて所定の信号を生成し、
前記トリガ信号取得処理において、前記ユーザによる所定の操作に応じて前記信号生成処理により生成されるトリガ信号を取得する。
【請求項１０】
音信号処理方法は、
継続的に音信号を取得し、
現時点を終点とする過去の所定期間において取得した音信号を記憶し、
トリガ信号を取得し、
前記トリガ信号を取得した時点後に取得した音信号を用いてサウンドレベルの指標値を算出し、
前記トリガ信号を取得した時点において記憶している音信号を用いてノイズレベルの指標値を算出し、
前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、
前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定し、
前記判定処理に基づいて、前記トリガ信号を取得した時点後に取得した音信号のうち発音期間の音を示す部分を特定し、
ユーザに対し発音を促す通知を行うとともに、前記通知に伴いトリガ信号を生成し、
前記トリガ信号取得処理において、前記通知処理により生成されたトリガ信号を取得する。
【請求項１１】
請求項９又は１０に記載の音信号処理方法であって、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号の所定周波数の成分のパワーを示す指標値および前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶されている音信号の所定周波数の成分のパワーを示す指標値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出する。
【請求項１２】
請求項９又は１０に記載の音信号処理方法であって、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号の振幅値および前記トリガ信号取得処理によりトリガ信号が取得された時点において前記記憶されている音信号の振幅値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出する。
【請求項１３】
請求項９又は１０に記載の音信号処理方法であって、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの開始時点を前記発音期間の開始時点として特定する。
【請求項１４】
請求項１３に記載の音信号処理方法であって、前記特定処理は、所定のフレームに関し算出した前記Ｓ／Ｎ比が前記所定の条件を満たさない場合、前記記憶されている音信号を当該所定のフレームを用いて更新し、当該所定のフレームの後続のフレームについて前記Ｓ／Ｎ比を算出するときに、当該更新後の前記記憶されている音信号を用いる。
【請求項１５】
請求項９又は１０に記載の音信号処理方法であって、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの終了時点を前記発音期間の終了時点として特定する。
【請求項１６】
請求項９又は１０に記載の音信号処理方法であって、前記特定処理は、前記記憶されている音信号を所定時間長ごとに分割して得られる複数のフレームの各々について所定の属性値を算出し、前記算出した属性値が所定の条件を満たすフレームを前記Ｓ／Ｎ比の算出に用いない。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、音信号から発音期間の音を示す部分を特定する技術に関する。
【背景技術】
【０００２】  音声認識やピッチ検出等の処理においては、発音期間、すなわち音声や楽器音が発音されている期間と、非発音期間、すなわち音声や楽器音が発音されていない期間とを区別することが必要である。なぜなら、非発音期間においても通常の音空間には必ず環境雑音が存在するため、仮に発音期間と非発音期間の区別を行うことなく全ての期間において音声認識やピッチ検出等の処理を行うと、非発音期間において環境雑音に基づき誤った処理の結果が得られる可能性があるためである。また、本来処理が不要である非発音期間の音に関し音声認識やピッチ検出等の処理を行うことは無意味であり、処理装置のリソースを無駄に消費する等の観点から好ましくない。【０００３】  音信号における発音期間と非発音期間を区別する方法としては、取得された音信号のＳ／Ｎ（Ｓｉｇｎａｌ−Ｎｏｉｓｅ）比が予め定められたＳ／Ｎ比の閾値を上回る期間を発音期間として特定する方法が広く用いられている。しかしながら、非発音期間における環境雑音のレベルは音信号の取得される環境において様々に変化する。従って、固定的なノイズレベルを用いたＳ／Ｎ比により発音期間の特定を行うと、環境雑音のレベルが高い環境において取得された音信号においては非発音期間が誤って発音期間と特定されたり、環境雑音のレベルが低い環境において取得された音信号においては発音期間が誤って非発音期間と特定されたりする。【０００４】  上記の問題を解決するために、例えば特許文献１には、音声付映像情報から音声情報を抽出するにあたり、音声付映像情報が示すコンテンツのジャンルに応じて異なるノイズレベルを用いる技術が開示されている。
【特許文献１】特開２００３−１０１９３９号公報
【０００５】  また、例えば特許文献２には、音信号を所定時間長のフレームに分割し、過去に非発音期間と特定されたフレームの属性値に基づき後続のフレームにおけるＳ／Ｎ比の算出に用いるノイズレベルを更新する技術が開示されている。
【特許文献２】特開２００１−２６５３６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】  ところで、ユーザの本人認証を発声により行う端末装置がある。そのような端末装置においては、ユーザが収音手段を備えた端末装置に対し所定の発声を行う。端末装置は、当該ユーザの発声を示す音信号から特徴量を抽出し、予め記憶されている正しいユーザの発声に関する特徴量と新たに抽出した特徴量とを比較することにより、当該ユーザが正しいユーザであるか否かを判定する。【０００７】  上記のような場合、端末装置は収音手段により取得する音信号のうち、ユーザが発声を行った発音期間を特定する必要がある。ただし、本人認証が行われる際の音空間における環境雑音のレベル等は様々に変化するため、固定的なノイズレベルを用いたＳ／Ｎ比により発音期間の特定を行うと必ずしも正しい結果が得られるとは限らない。また、環境雑音のレベルがどのように変化するかを予め予測することは容易ではないため、特許文献１に開示されるように予めノイズレベルを変更するための基準を与えることも困難である。【０００８】  また、特許文献２に開示されるような技術を用いる場合、まず過去のフレームに関し何らかの方法で非発音期間であるか否かの判定を行う必要があり、その判定において用いるノイズレベルを如何に与えるかが問題となる。すなわち、ノイズレベルの初期値が不適当であると発音期間の特定結果の精度が低くなる。【０００９】  なお、ユーザによる楽器の演奏音のピッチ検出を行うピッチ検出装置等においても、上述した音声による本人認証を行う端末装置と同様の課題がある。【００１０】  上記の状況に鑑み、本発明は、環境雑音の変化が予測不可能な状況においても、高い精度で音信号における発音期間の特定を可能とする音信号処理装置及び音信号処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を達成するために、本発明は、継続的に音信号を取得する音信号取得手段と、現時点を終点とする所定期間において前記音信号取得手段により取得された音信号を記憶する記憶手段と、トリガ信号を取得するトリガ信号取得手段と、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を用いてサウンドレベルの指標値を算出し、前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号を用いてノイズレベルの指標値を算出し、前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定することにより、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号のうち発音期間の音を示す部分を特定する特定手段と、ユーザの操作に応じて所定の信号を生成する操作手段と、を備え、前記トリガ信号取得手段は、前記ユーザによる所定の操作に応じて前記操作手段により生成されるトリガ信号を取得する音信号処理装置を提供する。
また、本発明は、継続的に音信号を取得する音信号取得手段と、現時点を終点とする所定期間において前記音信号取得手段により取得された音信号を記憶する記憶手段と、トリガ信号を取得するトリガ信号取得手段と、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を用いてサウンドレベルの指標値を算出し、前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号を用いてノイズレベルの指標値を算出し、前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定することにより、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号のうち発音期間の音を示す部分を特定する特定手段と、ユーザに対し発音を促す通知を行うとともに、前記通知に伴いトリガ信号を生成する通知手段と、を備え、前記トリガ信号取得手段は、前記通知手段により生成されたトリガ信号を取得する音信号処理装置を提供する。
【００１２】  かかる音信号処理装置によれば、トリガ信号の取得前に取得され記憶されている音信号を環境雑音のみを示す音信号と見なしてＳ／Ｎ比を算出し、当該Ｓ／Ｎ比に基づき発音期間の特定が行われる結果、高い精度の特定結果が得られる。【００１４】  また、前記音信号処理装置において、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号の所定周波数の成分のパワーを示す指標値および前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号の所定周波数の成分のパワーを示す指標値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出するように構成されてもよい。【００１５】  また、前記音信号処理装置において、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号の振幅値および前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶手段に記憶されている音信号の振幅値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出するように構成されてもよい。【００１６】  また、前記音信号処理装置において、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの開始時点を前記発音期間の開始時点として特定するように構成されてもよい。そのような態様において、前記特定手段は、所定のフレームに関し算出した前記Ｓ／Ｎ比が前記所定の条件を満たさない場合、前記記憶手段に記憶されている音信号を当該所定のフレームを用いて更新し、当該所定のフレームの後続のフレームについて前記Ｓ／Ｎ比を算出するときに、当該更新後の前記記憶手段に記憶されている音信号を用いるように構成されてもよい。【００１７】  また、前記音信号処理装置において、前記特定手段は、前記トリガ信号が取得された時点後に前記音信号取得手段により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの終了時点を前記発音期間の終了時点として特定するように構成されてもよい。【００１８】  また、前記音信号処理装置において、前記特定手段は、前記記憶手段に記憶されている音信号を所定時間長ごとに分割して得られる複数のフレームの各々について所定の属性値を算出し、算出した属性値が所定の条件を満たすフレームを前記Ｓ／Ｎ比の算出に用いないように構成されてもよい。【００１９】
また、本発明は、上記の音信号処理装置により行われる処理をコンピュータに実行させるプログラムを提供する。
また、本発明は、継続的に音信号を取得し、現時点を終点とする過去の所定期間において取得した音信号を記憶し、トリガ信号を取得し、前記トリガ信号を取得した時点後に取得した音信号を用いてサウンドレベルの指標値を算出し、前記トリガ信号を取得した時点において記憶している音信号を用いてノイズレベルの指標値を算出し、前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定し、前記判定処理に基づいて、前記トリガ信号を取得した時点後に取得した音信号のうち発音期間の音を示す部分を特定し、ユーザの操作に応じて所定の信号を生成し、前記トリガ信号取得処理において、前記ユーザによる所定の操作に応じて前記信号生成処理により生成されるトリガ信号を取得する音信号処理方法を提供する。
また、本発明は、継続的に音信号を取得し、現時点を終点とする過去の所定期間において取得した音信号を記憶し、トリガ信号を取得し、前記トリガ信号を取得した時点後に取得した音信号を用いてサウンドレベルの指標値を算出し、前記トリガ信号を取得した時点において記憶している音信号を用いてノイズレベルの指標値を算出し、前記サウンドレベルの指標値を前記ノイズレベルの指標値で除すことによりＳ／Ｎ比を算出し、前記Ｓ／Ｎ比が所定の条件を満たすか否かを判定し、前記判定処理に基づいて、前記トリガ信号を取得した時点後に取得した音信号のうち発音期間の音を示す部分を特定し、ユーザに対し発音を促す通知を行うとともに、前記通知に伴いトリガ信号を生成し、前記トリガ信号取得処理において、前記通知処理により生成されたトリガ信号を取得する音信号処理方法を提供する。
また、本発明の音信号処理方法において、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号の所定周波数の成分のパワーを示す指標値および前記トリガ信号取得手段によりトリガ信号が取得された時点において前記記憶されている音信号の所定周波数の成分のパワーを示す指標値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出する。
また、本発明の音信号処理方法において、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号の振幅値および前記トリガ信号取得処理によりトリガ信号が取得された時点において前記記憶されている音信号の振幅値を用いて、前記サウンドレベルの指標値および前記ノイズレベルの指標値をそれぞれ算出する。
また、本発明の音信号処理方法において、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの開始時点を前記発音期間の開始時点として特定する。
また、本発明の音信号処理方法において、前記特定処理は、所定のフレームに関し算出した前記Ｓ／Ｎ比が前記所定の条件を満たさない場合、前記記憶されている音信号を当該所定のフレームを用いて更新し、当該所定のフレームの後続のフレームについて前記Ｓ／Ｎ比を算出するときに、当該更新後の前記記憶されている音信号を用いる。
また、本発明の音信号処理方法において、前記特定処理は、前記トリガ信号が取得された時点後に前記音信号取得処理により取得された音信号を所定時間長ごとに分割して得られる複数のフレームの各々について前記Ｓ／Ｎ比を算出し、当該Ｓ／Ｎ比が所定の条件を満たすフレームの終了時点を前記発音期間の終了時点として特定する。
また、本発明の音信号処理方法において、前記特定処理は、前記記憶されている音信号を所定時間長ごとに分割して得られる複数のフレームの各々について所定の属性値を算出し、前記算出した属性値が所定の条件を満たすフレームを前記Ｓ／Ｎ比の算出に用いない。
【発明の効果】
【００２０】  上記音信号処理装置及び音信号処理方法によれば、トリガ信号の取得前に取得され記憶されている音信号を環境雑音のみを示す音信号と見なしてＳ／Ｎ比を算出し、当該Ｓ／Ｎ比に基づき発音期間の特定が行われる結果、高い精度の特定結果が得られる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態にかかる音信号処理システムの構成を示すブロック図である。
【図２】本発明の実施形態にかかる第１バッファの構成を模式的に示した図である。
【図３】本発明の実施形態にかかる第２バッファの構成を模式的に示した図である。
【図４】本発明の実施形態にかかる周波数帯域の区分を示す図である。
【図５】本発明の実施形態にかかる開始時点の特定処理のフローを示す図である。
【図６】本発明の実施形態にかかる終了時点の特定処理のフローを示す図である。
【図７】本発明の実施形態にかかる発音期間の特定の様子を模式的に示した図である。
【符号の説明】
【００２２】１  音信号処理システム
１０  音信号処理装置
１１  制御部
１２  記憶部
１３  音信号出力部
１４  発振器
２０  マイク
３０  キーボード
４０  音信号認識装置
１１１  音信号取得部
１１２  Ａ／Ｄコンバータ
１１３  トリガ信号取得部
１１４  特定部
１２１  第１バッファ
１２２  第２バッファ
１２３  ノイズレベルデータ
１２４  サウンドレベルデータ
１２５  発音期間データ
１１４１  ＦＦＴ部
１１４２  Ｓ／Ｎ比算出部
１１４３  条件判定部
【発明を実施するための最良の形態】
【００２３】［構成］
図１は本発明の実施形態にかかる音信号処理システム１の構成を示すブロック図である。音信号処理システム１は、取得した音信号における発音期間を特定して特定した発音期間の音信号を出力する音信号処理装置１０、置かれた音空間における音を収音し音信号に変換して音信号処理装置１０に対し出力するマイク２０、複数のキーを有しユーザの当該キーに対する操作に応じて所定の信号を音信号処理装置１０に対し出力するキーボード３０、音信号処理装置１０から出力される音信号の特徴量を抽出し予め記憶している特徴量と比較することにより音信号により示される音声の話者を特定する音信号認識装置４０を備えている。【００２４】  なお、キーボード３０はユーザが音信号処理装置１０に対し指示を与える装置の一例であり、マウスポインタ等の他の装置が用いられてもよい。また、音信号認識装置４０は音信号処理装置１０により出力される音信号を利用する装置の一例であり、楽音のピッチを特定する装置等の他の装置が用いられてもよい。【００２５】  音信号処理装置１０は、マイク２０から音信号を取得して各種処理を行うとともに音信号処理装置１０の他の構成部を制御する制御部１１、制御部１１による各種処理を指示するプログラムおよび制御部１１により利用される各種データを記憶するとともに制御部１１のワークエリアとして用いられる記憶部１２、音信号を音信号認識装置４０に対し出力する音信号出力部１３、所定時間間隔でクロック信号を生成する発振器１４を備えている。なお、音信号処理装置１０の各構成部は発振器１４により生成されるクロック信号により必要に応じて処理の同期や計時を行う。【００２６】  制御部１１は、マイク２０から音信号を受け取る音信号取得部１１１、音信号取得部１１１が受け取った音信号をアナログ信号からデジタル信号に変換し所定時間長ごとのフレームに区分して記憶部１２に順次記憶させるＡ／Ｄ（Ａｎａｌｏｇ  ｔｏ  Ｄｉｇｉｔａｌ）コンバータ１１２、キーボード３０から所定の信号をトリガ信号として受け取るトリガ信号取得部１１３、トリガ信号取得部１１３によるトリガ信号の取得をトリガとして記憶部１２に順次記憶される音信号における発音期間を特定する特定部１１４を備えている。【００２７】  記憶部１２がＡ／Ｄコンバータ１１２から受け取るフレームには、各フレームを識別するために時系列順にフレーム番号が採番される。以下の説明において、フレーム番号は４桁の整数であり、例えばフレーム番号「０００１」のフレームをフレーム「０００１」のように呼ぶ。なお、以下の説明において、Ａ／Ｄコンバータ１１２により生成されるデジタル信号はＰＣＭ（Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）形式の音波形データであるものとするが、これに限られない。また、以下の説明においてＡ／Ｄコンバータ１１２により記憶部１２に記憶される音信号のフレームの長さは１０ミリ秒であるものとするが、これに限られない。【００２８】  さらに、特定部１１４は記憶部１２に順次記憶される音信号のフレームの各々に対しＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）アルゴリズムに従った処理を行い当該フレームに含まれる周波数成分を算出するＦＦＴ部１１４１、ＦＦＴ部１１４１��より算出された周波数成分の振幅を用いてフレームのＳ／Ｎ比を算出するＳ／Ｎ比算出部１１４２、Ｓ／Ｎ比算出部１１４２により算出されたＳ／Ｎ比が所定の条件を満たすか否かを順次判定することにより発音期間の開始時点および終了時点を特定する条件判定部１１４３を備えている。Ｓ／Ｎ比算出部１１４２および条件判定部１１４３による具体的な処理内容は後述の動作説明において述べる。【００２９】  記憶部１２には、音信号のフレームを一時的に格納するための領域として、第１バッファ１２１および第２バッファ１２２が設けられている。第１バッファ１２１は、音信号処理装置１０が動作を開始してからトリガ信号取得部１１３によりトリガ信号が取得されるまでの間、および前回の発音期間の特定処理がユーザの操作等により終了された後から再びトリガ信号取得部１１３によりトリガ信号が取得されるまでの間、Ａ／Ｄコンバータ１１２により順次生成されるフレームを過去の所定時間長分だけ格納するための領域である。以下、第１バッファ１２１にフレームの格納が行われる期間を「待機期間」と呼ぶ。また、以下の説明において第１バッファ１２１に格納可能なフレームは１０個、すなわち１００ミリ秒分であるものとするが、これに限られない。【００３０】  図２は第１バッファ１２１の構成を模式的に示した図である。第１バッファ１２１は１０個の領域に分割されており、各領域は「−００１０」乃至「−０００１」の番号により識別される。以下、例えば番号「−００１０」により識別される領域を領域「−００１０」のように呼ぶ。第１バッファ１２１において、領域「−００１０」に格納されるフレームが最も古く、領域「−０００１」に格納されるフレームが最も新しくなるように、取得順にフレームが各領域に格納される。なお、図２においては、領域「−００１０」乃至「−０００１」にフレーム「００８５」乃至「００９４」が各々格納されている様子が例示されている。【００３１】  待機期間中、記憶部１２は１０ミリ秒間隔でＡ／Ｄコンバータ１１２から新たなフレームを受け取り、ＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）により第１バッファ１２１の内容を継続的に更新する。なお、図２においては領域「−００１０」乃至「−０００１」が固定的な位置に描かれているが、記憶部１２における各領域の物理的な位置は固定される必要はなく、例えば記憶部１２の任意の記憶領域に記憶されたフレームをポインタにより参照することにより、第１バッファ１２１が実現されてもよい。その場合、ポインタを更新することにより第１バッファ１２１の内容更新が高速に行われる。【００３２】  第２バッファ１２２は、トリガ信号取得部１１３によりトリガ信号が取得された後、ユーザの操作等により発音期間の特定処理が終了されるまでの間、Ａ／Ｄコンバータ１１２により順次生成されるフレームを過去の所定時間長分だけ記憶するための領域である。以下、第２バッファ１２２にフレームの格納が行われる期間を「判定期間」と呼ぶ。なお、以下の説明において第２バッファ１２２に格納可能なフレームは６０００個、すなわち６０秒分であるものとするが、これに限られない。【００３３】  図３は第２バッファ１２２の構成を模式的に示した図であ��。第２バッファ１２２は６０００個の領域、すなわち領域「０００１」乃至「６０００」に分割されている。第２バッファ１２２において、領域「０００１」に格納されるフレームが最も古く、領域「６０００」に格納されるフレームが最も新しくなるように、取得順にフレームが各領域に格納される。なお、図３においては、領域「０００１」、「０００２」、「０００３」・・・にフレーム「００９５」、「００９６」、「００９７」・・・が各々格納されている様子が例示されている。また、図３に示される領域「５９９６」乃至「６０００」が空欄となっているのは、図３が判定期間の開始後まだ６０秒が経過しておらず、第２バッファ１２２の末尾付近の領域に未だフレームが格納されていない状態を例示しているためである。【００３４】  判定期間中、記憶部１２は１０ミリ秒間隔でＡ／Ｄコンバータ１１２から新たなフレームを受け取り、ＦＩＦＯにより第２バッファ１２２の内容を継続的に更新する。なお、第２バッファ１２２に含まれる各領域の物理的な位置が固定される必要はない点は、第１バッファ１２１の場合と同様である。【００３５】  記憶部１２には、さらに、判定期間中にＳ／Ｎ比算出部１１４２により生成されるノイズレベルデータ１２３およびサウンドレベルデータ１２４が一時的に格納される。ノイズレベルデータ１２３は、トリガ信号取得部１１３によりトリガ信号が取得された時点において第１バッファ１２１に記憶されているフレームの振幅に関する属性値を示すデータである。一方、サウンドレベルデータ１２４は判定期間中に第２バッファ１２２に順次格納されるフレームの振幅に関する属性値を示すデータである。ノイズレベルデータ１２３およびサウンドレベルデータ１２４の具体的内容は後述の動作説明において述べる。【００３６】  また、記憶部１２には、判定期間中に条件判定部１１４３により生成される発音期間データ１２５が一時的に格納される。発音期間データ１２５は発音期間の先頭のフレーム番号および末尾のフレーム番号を示すデータである。発音期間データ１２５により、先頭のフレームの開始時点が発音期間の開始時点として特定され、同様に末尾のフレームの終了時点が発音期間の終了時点として特定される。なお、発音期間データ１２５の形式はフレーム番号を用いるものに限られず、例えば発音期間の開始時点および終了時点を時刻データにより特定する等、他に様々なものが考えられる。【００３７】［動作］
続いて、音信号処理システム１の動作を説明する。今、音信号処理システム１のユーザは端末装置（図示略）を利用するために、音信号認識装置４０による本人認証を受ける必要があるものとする。【００３８】  ユーザは、本人認証を受けるためにキーボード３０に対し所定の操作を行い、音信号処理装置１０に対し本人認証の処理を指示するが、そのユーザの操作に先立ち、マイク２０は常時、音信号処理システム１の配置された音空間の音を示す音信号を音信号処理装置１０に対し出力している。音信号処理装置１０の音信号取得部１１１はマイク２０から音信号を受け取ると、受け取った音信号を順次、Ａ／Ｄコンバータ１１２に引き渡している。そして、Ａ／Ｄコンバータ１１２は音信号取得部１１１から音信号を受け取ると、受け取った音信号をデジタル信号に変換した後、記憶部１２に順次引き渡し、フレーム単位で記憶させている。この場合、トリガ信号取得部１１３はまだトリガ信号を受け取っていないので、待機期間中である。従って、Ａ／Ｄコンバータ１１２は記憶部１２に対し、送信する音信号を第１バッファ１２１に格納するように指示している。その結果、第１バッファ１２１には常に待機期間中における直近の最大１０フレーム分の音信号が格納されていることになる。このように第１バッファ１２１に格納されている音信号は、未だユーザによる発音（発声）が行われていない状態における音空間内の音、すなわち環境雑音の音を示す音信号である。【００３９】  上記の状態において、ユーザがキーボード３０に対し所定の操作を行い、音信号処理装置１０に対し本人認証の処理を指示すると、キーボード３０はユーザの操作に応じてトリガ信号を生成し音信号処理装置１０に対し出力する。音信号処理装置１０のトリガ信号取得部１１３はキーボード３０からトリガ信号を受け取ると、受け取ったトリガ信号をＡ／Ｄコンバータ１１２および特定部１１４に送信する。【００４０】  Ａ／Ｄコンバータ１１２は、トリガ信号取得部１１３からトリガ信号を受け取ると、その後、生成する音信号を記憶部１２に記憶させる際、第２バッファ１２２に記憶するように指示する。その結果、第２バッファ１２２には常に判定期間中における直近の最大６０００フレーム分の音信号が格納されていることになる。また、判定期間中において、待機期間中に格納された第１バッファ１２１の内容は保持されている。【００４１】  一方、特定部１１４はトリガ信号取得部１１３からトリガ信号を受け取ると、第２バッファ１２２に順次格納される音信号における発音期間の特定処理を開始する。まず、ＦＦＴ部１１４１は、第１バッファ１２１に記憶されている直近のフレーム、すなわち領域「−０００１」に格納されているフレームに関し、ＦＦＴ処理を行い、各々のフレームの音信号に含まれる各周波数の成分を示す複素数を算出する。以下、説明のため、第１バッファ１２１の領域「−０００１」に格納されているフレームがフレーム「００９４」であるものとする。【００４２】  以下の説明において、ＦＦＴ部１１４１はＦＦＴ処理により、複数の周波数の成分を示す複素数（Ｒ１＋Ｉ１ｉ）、（Ｒ２＋Ｉ２ｉ）、（Ｒ３＋Ｉ３ｉ）、・・・、（ＲＮ＋ＩＮｉ）を算出するものとする。ただし、こ��で「ｉ」は虚数単位であり、ＲｎおよびＩｎ（ｎは１〜Ｎ、ＮはＦＦＴｂｉｎの数）はそれぞれ実数部および虚数部の数値である。【００４３】  ＦＦＴ部１１４１は上記のように算出した周波数成分を示す複素数群をＳ／Ｎ比算出部１１４２に送信する。Ｓ／Ｎ比算出部１１４２は、ＦＦＴ部１１４１から受け取った複素数群を用いて、複数の周波数帯域に含まれる周波数の複素数群から、予め区分された複数の周波数帯域ごとに、音信号の成分に関する振幅の指標を算出する。以下の説明においては、Ｓ／Ｎ比算出部１１４２は図４に示す５つの周波数帯域の各々に関し、以下の（式１）乃至（式５）に従って周波数帯域ごとのパワー：Ｆｍ（ｍは周波数帯域番号）を算出する。ここで、ｂｍ：所望帯域の最低周波数に対応するＦＦＴｂｉｎの番号、ｅｍ：所望帯域の最高周波数に対応するＦＦＴｂｉｎの番号とする。
【数１】
0005388447.tif 000002
【００４４】  以下、ＦＦＴ部１１４１およびＳ／Ｎ比算出部１１４２によりフレーム「００９４」に格納されているフレームに関し上記のように算出されたＦ１、Ｆ２、・・・、Ｆ５をＦ００９４＿１、Ｆ００９４＿２、・・・、Ｆ００９４＿５のように呼ぶ。【００４５】  続いて、ＦＦＴ部１１４１およびＳ／Ｎ比算出部１１４２は、第１バッファ１２１の領域「−０００２」乃至「−０００５」に格納されているフレームの各々に関しても、同様に周波数帯域ごとのパワー、すなわちＦ００９３＿１乃至Ｆ００９３＿５、Ｆ００９２＿１乃至Ｆ００９２＿５、Ｆ００９１＿１乃至Ｆ００９１＿５、Ｆ００９０＿１乃至Ｆ００９０＿５を算出する。【００４６】  続いて、Ｓ／Ｎ比算出部１１４２は以下の（式６）に従って周波数帯域ごとのノイズレベル：ＮＬｍ（ｍは周波数帯域番号）を算出する。ただし、（式６）におけるｔはフレーム番号を示し、この場合ｋ＝００９０である。
【数２】
0005388447.tif 000003
【００４７】  Ｓ／Ｎ比算出部１１４２は上記のようにＮＬ１乃至ＮＬ５を算出すると、それらの数値群を示すデータをノイズレベルデータ１２３として記憶部１２に記憶させる。このように記憶部１２に記憶されるノイズレベルデータ１２３は、環境雑音のレベルを所定の周波数帯域ごとに示すデータである。【００４８】  続いて、ＦＦＴ部１１４１は第２バッファ１２２に新たに格納されたフレーム、すなわちフレーム「００９５」に関し、上述した第１バッファ１２１に格納されたフレームに関するものと同様の処理を行い、周波数成分を示す複素数群を算出する。Ｓ／Ｎ比算出部１１４２はＦＦＴ部１１４１によりフレーム「００９５」に関し算出された複素数群を用いて、上記（式１）乃至（式５）に従って、周波数帯域ごとのパワー、すなわちＦ００９５＿１、Ｆ００９５＿２、・・・、Ｆ００９５＿５を算出する。【００４９】  Ｓ／Ｎ比算出部１１４２は上記のようにＦ００９５＿１乃至Ｆ００９５＿５を算出すると、それらの数値群を示すデータをサウンドレベルデータ１２４として記憶部１２に記憶させる。このように記憶部１２に記憶されるサウンドレベルデータ１２４は、現時点の音空間における音のレベルを所定の周波数帯域ごとに示すデータである。【００５０】  Ｓ／Ｎ比算出部１１４２は、上記のように記憶部１２に記憶したノイズレベルデータ１２３およびサウンドレベルデータ１２４を用いて、以下の（式７）に従って、Ｓ／Ｎ比：ＳＮＲを算出する。ただし、（式７）におけるＳはサウンドレベルデータ１２４の算出に用いられたフレーム番号を示し、この場合Ｓ＝００９５である。
【数３】
0005388447.tif 000004
【００５１】  ＦＦＴ部１１４１およびＳ／Ｎ比算出部１１４２は、第２バッファ１２２に新たなフレームが格納されるごとに、上記（式７）に従い、新たに格納されたフレームに関するＳＮＲを算出する。なお、判定期間中に第１バッファ１２１に格納されている音信号は変更されないので、第２バッファ１２２に格納されるフレーム「００９６」以降に関するＳＮＲの算出においては、既に記憶部１２に記憶されているノイズレベルデータ１２３が利用される。【００５２】  上記のようにＳ／Ｎ比算出部１１４２により算出されるＳＮＲは、環境雑音のレベルに対する現時点の音空間における音のレベルの比を示す指標である。従って、ユーザにより発声がなされていない間に算出されるＳＮＲは１の近傍を示し、ユーザにより発声がなされている間に算出されるＳＮＲは１よりかなり大きな数値を示すことになる。そこで、条件判定部１１４３はＳ／Ｎ比算出部１１４２により順次算出されるＳＮＲに基づき、発音期間の特定処理を以下のように行う。【００５３】  条件判定部１１４３による発音期間の特定処理は、発音期間の開始時点を特定するための処理と、発音期間の終了時点を特定するための処理に区分される。図５は開始時点の特定処理のフローを、図６は終了時点の特定処理のフローを、それぞれ示している。【００５４】  まず、条件判定部１１４３は発音期間の特定処理に先立ち、予め以下の定数をパラメータとして記憶部１２に記憶している。
（ａ）開始閾値
（ｂ）開始満了回数
（ｃ）開始猶予回数
（ｄ）終了閾値
（ｅ）終了満了回数【００５５】  開始閾値は、ＳＮＲがその値を超えた場合に、そのＳＮＲの算出に用いられたフレームが発音期間中のフレームである可能性が高いことを示す閾値である。以下の説明において、開始閾値＝２．０であるものとする。【００５６】  開始満了回数は、その回数を超えてＳＮＲが開始閾値を超えた場合に、最初に開始閾値を超えたＳＮＲに対応するフレームを発音期間の先頭フレームと判定するための回数である。以下の説明において、開始満了回数＝５であるものとする。【００５７】  開始猶予回数は、いったん発音期間の開始時点の特定処理が開始された後、ＳＮＲが開始閾値を超えるか否かの判定がその回数を超えても開始時点の特定がなされない場合に、再度、それ以降のＳＮＲに関し発音期間の開始時点の特定処理をやり直すための回数である。以下の説明において、開始猶予回数＝１０であるものとする。【００５８】  終了閾値は、ＳＮＲがその値を下回った場合に、そのＳＮＲの算出に用いられたフレームが非発音期間のフレームである可能性が高いことを示す閾値である。以下の説明において、終了閾値＝１．２であるものとする。【００５９】  終了満了回数は、その回数を超えてＳＮＲが終了閾値を下回った場合に、最初に終了閾値を下回ったＳＮＲに対応するフレームを発音期間の末尾フレームと判定するための回数である。以下の説明において、終了満了回数＝１５であるものとする。【００６０】  条件判定部１１４３は、判定期間になると、まず以下の変数を初期化する（ステップＳ１００）。
（ｆ）開始時点データ
（ｇ）試行カウンタ
（ｈ）開始閾値超過カウンタ【００６１】  開始時点データは、発音期間の先頭のフレームのフレーム番号が格納される変数であり、そのフレーム番号の開始時点が発音期間の開始時点を示す。初期化により、開始時点データには例えば未特定値を示す「Ｎｕｌｌ」が代入される。【００６２】  試行カウンタは、ステップＳ１００の初期化処理の後、ＳＮＲを開始閾値「２．０」と比較した回数をカウントするカウンタである。また、開始閾値超過カウンタはＳＮＲが開始閾値「２．０」を超えた回数をカウントするカウンタである。初期化により、試行カウンタおよび開始閾値超過カウンタにはそれぞれ「０」が代入される。【００６３】  条件判定部１１４３はＳ／Ｎ比算出部１１４２から新たなＳＮＲを取得すると（ステップＳ１０１）、試行カウンタに１を加算した後（ステップＳ１０２）、ステップＳ１０１において取得したＳＮＲが開始閾値「２．０」を超えているか否かを判定する（ステップＳ１０３）。ＳＮＲが開始閾値「２．０」を超えていない場合（ステップＳ１０３：Ｎｏ）、条件判定部１１４３は試行カウンタが開始猶予回数「１０」を超えているか否かを判定する（ステップＳ１０４）。【００６４】  試行カウンタが開始猶予回数「１０」を超えていない場合（ステップＳ１０４：Ｎｏ）、条件判定部１１４３は処理をステップＳ１０１に戻し、次のＳＮＲに関しステップＳ１０１以降の処理を繰り返す。【００６５】  一方、開始時点の特定がなされないまま、ステップＳ１０１以下の処理が繰り返され、ステップＳ１０２において試行カウンタの値が増加される結果、１１になると、ステップＳ１０４の判定結果がＹｅｓとなる。その場合、条件判定部１１４３は処理をステップＳ１００に戻し、再度、それ以降のＳＮＲに関し発音期間の開始時点の特定処理をやり直す。【００６６】  ユーザは発声を行わない間は、ＳＮＲが開始閾値「２．０」を超えないため、条件判定部１１４３は上記のステップＳ１００乃至ステップＳ１０４の処理を繰り返す。そのような状態でユーザが発声を開始すると、ステップＳ１０３の判定における結果がＹｅｓとなる。その場合、続いて条件判定部１１４３は開始閾値超過カウンタが「０」であるか否かを判定する（ステップＳ１０５）。この場合、開始閾値超過カウンタは「０」であるので（ステップＳ１０５：Ｙｅｓ）、条件判定部１１４３は開始時点データに最後に取得したＳＮＲの算出に用いられたフレーム番号を代入する（ステップＳ１０６）。このように代入されるフレーム番号は、発音期間の開始時点を示すフレーム番号の候補である。【００６７】  続いて、条件判定部１１４３は開始閾値超過カウンタに１を加算した後（ステップＳ１０７）、開始閾値超過カウンタが開始満了回数「５」を超えているか否かを判定する（ステップＳ１０８）。この場合、開始閾値超過カウンタは「１」でありステップＳ１０８の判定結果はＮｏとなるため、条件判定部１１４３は処理をステップＳ１０１に戻し、新たなＳＮＲに関しステップＳ１０１以降の処理を繰り返す。【００６８】  通常、ユーザにより発声が開始され、いったんステップＳ１０３における判定結果がＹｅｓとなると、後続のフレームに関するＳＮＲに関するステップＳ１０３における��定結果もしばらくの間、Ｙｅｓとなる。ユーザの一続きの発声時間は数秒間に渡り、一方、各フレームの長さは１０ミリ秒と短いためである。その結果、再びステップＳ１０３の判定結果がＹｅｓとなり、ステップＳ１０５の判定がなされる場合、既に開始閾値超過カウンタは「１」以上となっているため、その判定結果はＮｏとなる。その場合、条件判定部１１４３はステップＳ１０６の開始時点データの設定を行わず、ステップＳ１０７以降の処理を行う。既に仮設定されている発音期間の開始を示すフレーム番号を変更する必要がないためである。【００６９】  ステップＳ１０３におけるＳＮＲと開始閾値との比較による判定結果が繰り返しＹｅｓとなり、ステップＳ１０５以降の処理が繰り返され、ステップＳ１０７において開始閾値超過カウンタの値が増加される結果、６になると、ステップＳ１０８の判定結果がＹｅｓとなる。その場合、条件判定部１１４３はその時点で開始時点データに格納されているフレーム番号を発音期間の先頭フレームを示すフレーム番号として確定し、処理を発音期間の終了時点の特定処理のフローに移す。【００７０】  ところで、いったんステップＳ１０３の判定結果がＹｅｓとなっても、例えば一単語の発音における音節間において、短い時間ではあるが発声が途切れたり、発声のレベルが低くなったりする場合がある。そのような場合、ステップＳ１０３の判定結果が一時的にＮｏとなるが、後続のＳＮＲに関するステップＳ１０３の判定結果がＹｅｓとなるため、それらのフレームは一連の発音期間のフレームと判断されることになる。【００７１】  一方、例えばユーザが物を落とした等により大きな雑音が発生し、発声ではない音によりＳＮＲが一時的に高くなるような場合がある。そのような場合、ステップＳ１０３の判定結果が一時的にＹｅｓとなるが、後続のＳＮＲに関するステップＳ１０３の判定結果がＮｏとなり、試行カウンタが１０を超えた時点で開始時点データに仮設定されていたフレーム番号も初期化されるため、誤ってそのような雑音の発生時点が発音期間の開始時点と判断されることはない。【００７２】  上記のように、発音期間の開始時点の特定処理が完了すると、条件判定部１１４３は続いて図６に示される発音期間の終了時点の特定処理を開始する。条件判定部１１４３はまず、以下の変数を初期化する（ステップＳ２００）。
（ｉ）終了時点データ
（ｊ）終了閾値未満カウンタ【００７３】  終了時点データは、発音期間の末尾のフレームのフレーム番号が格納される変数であり、そのフレーム番号の終了時点が発音期間の終了時点を示す。初期化により、終了時点データには例えば未特定値を示す「Ｎｕｌｌ」が代入される。【００７４】  終了閾値未満カウンタはＳＮＲが終了閾値「１．２」を下回った回数をカウントするカウンタである。初期化により、終了閾値未満カウンタには「０」が代入される。【００７５】  条件判定部１１４３はＳ／Ｎ比算出部１１４２から新たなＳＮＲを取得すると（ステップＳ２０１）、ステップＳ２０１において取得したＳＮＲが終了閾値「１．２」を下回っているか否かを判定する（ステップＳ２０２）。ＳＮＲが終了閾値「１．２」を下回っていない場合（ステップＳ２０２：Ｎｏ）、条件判定部１１４３は続いて当該ＳＮＲが開始閾値「２．０」を超えているか否かを判定する（ステップＳ２０３）。【００７６】  ユーザが発声中においては、ＳＮＲが開始閾値「２．０」を超える可能性が高く、その場合、ステップＳ２０３の判定結果はＹｅｓとなり、条件判定部１１４３は処理をステップＳ２００に移し、再び、終了時点の特定処理をやり直す。また、ユーザが発声中であって、発音がやや小さくなったりした場合には、ＳＮＲが開始閾値「２．０」以下であるが、終了閾値「１．２」以上となることがある。そのような場合（ステップＳ２０３：Ｎｏ）、条件判定部１１４３は変数の初期化は行わず、処理をステップＳ２０１に戻し、新たなＳＮＲに関しステップＳ２０１以降の処理を繰り返す。【００７７】  ユーザが発声を行っている間は、ＳＮＲが終了閾値「１．２」を下回らないため、条件判定部１１４３は上記のステップＳ２００乃至ステップＳ２０３の処理を繰り返す。そのような状態でユーザが発声を終了すると、ステップＳ２０２の判定における結果がＹｅｓとなる。その場合、続いて条件判定部１１４３は終了閾値未満カウンタが「０」であるか否かを判定する（ステップＳ２０４）。この場合、終了閾値未満カウンタは「０」であるので（ステップＳ２０４：Ｙｅｓ）、条件判定部１１４３は終了時点データに最後に取得したＳＮＲの算出に用いられたフレーム番号から１を減じた番号を代入する（ステップＳ２０５）。このように代入されるフレーム番号は、発音期間の終了時点を示すフレーム番号の候補である。【００７８】  続いて、条件判定部１１４３は終了閾値未満カウンタに１を加算した後（ステップＳ２０６）、終了閾値未満カウンタが終了満了回数「１５」を超えているか否かを判定する（ステップＳ２０７）。この場合、終了閾値未満カウンタは「１」でありステップＳ２０７の判定結果はＮｏとなるため、条件判定部１１４３は処理をステップＳ２０１に戻し、新たなＳＮＲに関しステップＳ２０１以降の処理を繰り返す。【００７９】  その後、ユーザがすぐさま発声を開始しない限り、再びステップＳ２０２の判定結果がＹｅｓとなる。その場合、ステップＳ２０４の判定においては、既に終了閾値未満カウンタが「１」以上となっているため、その判定結果がＮｏとなる。その場合、条件判定部１１４３はステップＳ２０５の終了時点データの設定を行わず、ステップＳ２０６���降の処理を行う。既に仮設定されている発音期間の終了を示すフレーム番号を変更する必要がないためである。【００８０】  ステップＳ２０２におけるＳＮＲと終了閾値との比較による判定結果が繰り返しＹｅｓとなり、ステップＳ２０４以降の処理が繰り返され、ステップＳ２０６において終了閾値未満カウンタの値が増加される結果、３１になると、ステップＳ２０７の判定結果がＹｅｓとなる。その場合、条件判定部１１４３はその時点で終了時点データに格納されているフレーム番号を発音期間の末尾フレームを示すフレーム番号として確定し、開始時点データおよび終了時点データの組み合わせを発音期間データ１２５として記憶部１２に記憶させる（ステップＳ２０８）。その後、条件判定部１１４３は音信号出力部１３に対し音信号の出力を指示した後（ステップＳ２０９）、次の発音期間を特定するために、再び図５に示した発音期間の特定処理に戻る。図７は、上述した特定部１１４による発音期間の特定の様子を模式的に示した図である。【００８１】  音信号出力部１３は、条件判定部１１４３から音信号の出力を指示されると、第２バッファ１２２から、発音期間データ１２５に含まれる開始時点データにより示されるフレーム番号を先頭とし、終了時点データにより示されるフレーム番号を末尾とする一連のフレーム群を読み出し、音信号認識装置４０に対し出力する。特定部１１４は例えば、ユーザにより発音期間の特定処理の終了指示がなされるか、トリガ信号の取得時点の後、発音期間の特定処理の最大時間として予め設定された時間が経過するまでの間、図５および図６に示した判定期間における一連の処理を繰り返す。【００８２】  音信号認識装置４０は音信号出力部１３から受け取った音信号に対し特徴量抽出を行い、予め記憶されている特徴量と、新たに抽出したユーザの音声に関する特徴量とを比較することにより、ユーザの本人認証を行う。その場合、音信号認識装置４０が音信号出力部１３から受け取る音信号は、ユーザの発声期間に応じた部分が正しく切り出された音信号であるため、精度の高い本人認証が行われることになる。【００８３】  上述したように、音信号処理システム１によれば、環境雑音の変化が予測不可能な状況においても、ユーザによる本人認証の処理の指示をトリガとして、そのトリガの発生直前に取得された音信号を環境雑音を示す音信号として用いる結果、トリガの発生後の音信号における発音期間の特定を高い精度で行うことが可能となる。【００８４】［変形例］
ところで、上述した実施形態は以下のように様々に変形してもよい。まず、上記説明においては、トリガ信号はユーザのキーボード３０に対する操作に応じて生成されるものとした。それに代えて、例えば、音信号処理装置１０が画像や文字でユーザにメッセージを通知するディスプレイや音でユーザにメッセージを通知するサウンドシステム等の通知手段を備えるようにし、ユーザの操作を待つことなく、例えば予め定められた時刻においてそれらの通知手段を用いてユーザに対し発声を促す通知を行うと同時に、トリガ信号を生成しトリガ信号取得部１１３に該トリガ信号を送信する渡すようにしてもよい。【００８５】  また、上記説明においては、複数の周波数帯域ごとにノイズレベルを示すＮＬｍおよびサウンドレベルを示すＦｍを算出した後、周波数帯域ごとのＦｍ／ＮＬｍの平均値を算出することによりＳＮＲを算出するものとした（式１乃至７参照）。それに代えて、例えば、Ｓ／Ｎ比算出部１１４２が全周波数帯域に関するＮＬおよびＦを各１つずつ算出した後、ＳＮＲ＝Ｆ／ＮＬとして算出するようにしてもよい。すなわち、周波数帯域の区分数は１であってもよい。【００８６】  また、上記説明においては、音信号に対しＦＦＴ部１１４１がＦＦＴ処理を施し、Ｓ／Ｎ比算出部１１４２が各周波数の振幅を算出することにより、周波数帯域ごとのパワーを示すＦｍを算出するものとした。それに代えて、例えば、特定部１１４がＦＦＴ部１１４１の代わりに周波数帯域ごとのバンドパスフィルタを備えるようにし、各バンドパスフィルタにより濾波された音信号の振幅の平均値を上記（式６）および（式７）におけるＦｍの代わりに用いることにより、ＳＮＲを算出するようにしてもよい。【００８７】  さらに、ＦＦＴ部１１４１やバンドパスフィルタを用いることなく、第１バッファ１２１に格納されているフレームに含まれる音信号の振幅の平均値で第２バッファ１２２に格納されているフレームに含まれる音信号の振幅の平均値を単純に除すことにより、ＳＮＲを算出するようにしてもよい。【００８８】  また、上記説明においては、Ｓ／Ｎ比算出部１１４２は各周波数成分のパワーを示すＦｍを上記（式１）乃至（式５）に従い算出するものとした。それに代えて、例えば、以下の（式８）もしくは（式９）に従いＦｍを算出するようにしてもよい。ただし、（式９）における「ａｂｓ（）」は（）内の数値の絶対値を示す。
【数４】
0005388447.tif 000005
【００８９】  また、上記説明においては、ＳＮＲを算出するにあたり、周波数帯域ごとに算出されたＦｍ／ＮＬｍを単純平均するものとした（式７参照）。それに代えて、例えば、ユーザにより発音される音が有する割合が高いと予想される周波数成分を含む周波数帯域に関するＦｍ／ＮＬｍに相対的に大きな値が設定されたウェイトを用いて、Ｓ／Ｎ比算出部１１４２がＦｍ／ＮＬｍの加重平均を行うことにより、ＳＮＲを算出するようにしてもよい。【００９０】  また、上記説明においては、トリガ信号が取得された後に第１バッファ１２１の内容が変更されることはなく、いったんノイズレベルを示すＮＬｍ（式６参照）が算出されると、その後の発音期間の特定処理においてＮＬｍが更新されることはないものとした。それに代えて、例えば、図５のステップＳ１０３におけるＳＮＲが開始閾値を超えるか否かの判定結果がＮｏとなり、そのＳＮＲの算出に用いられたフレームが非発音期間のものであることが確定した時点で、そのフレームを直近の環境雑音を示すフレームとして第１バッファ１２１に格納することにより、第１バッファ１２１の内容を更新するようにしてもよい。その場合、ＦＦＴ部１１４１およびＳ／Ｎ比算出部１１４２は更新された第１バッファ１２１のフレームを用いてＮＬｍを再計算し、その後は再計算されたＮＬｍを用いてＳＮＲの算出を行う。【００９１】  また、上記説明においては、ノイズレベルを示すＮＬｍ（式６参照）を算出するにあたり、第１バッファ１２１に格納されている直近の５フレームを固定的に選択するものとした。それに代えて、例えば、第１バッファ１２１に格納されているフレームの中から異常値を示すフレームを除外し、適当と思われるフレームを選択してＮＬｍの算出に用いるようにしてもよい。具体例を挙げると、ＦＦＴ部１１４１は第１バッファ１２１に格納されている１０フレームの全てに関しＦＦＴ処理を施す。そして、Ｓ／Ｎ比算出部１１４２はそれら１０フレームの全てに関し周波数帯域ごとのパワーを示すＦｍを算出する。そして、Ｓ／Ｎ比算出部１１４２はそのようにして算出したＦｍの平均値から所定の閾値以上に乖離するＦｍを異常値として除外し、除外しなかったＦｍを用いてＮＬｍを算出するようにすればよい。【００９２】  また、上記説明においては、第１バッファ１２１に格納されているフレームの各々に関し算出した周波数帯域ごとのパワーを示すＦｍを単純平均することによりノイズレベルを示すＮＬｍを算出するものとした（式６参照）。それに代えて、例えば、新しいフレームほど大きなウェイトを与え、Ｓ／Ｎ比算出部１１４２が各フレームに関するＦｍを加重平均することによりＮＬｍを算出するようにしてもよい。【００９３】  また、上記説明においては、開始閾値、開始満了回数、開始猶予回数、終了閾値および終了満了回数は予め音信号処理装置１０に記憶されているものとしたが、例えば、ユーザの操作に応じてこれらの定数を変更可能としてもよい。【００９４】  また、上記説明においては、マイク２０、キーボード３０および音信号認識装置４０は音信号処理装置１０とは異なる筐体に配置されているものとしたが、これらの配置は自由に変更可能である。例えば、音信号処理装置１０が音信号認識装置４０を構成部として備えるようにしてもよい。【００９５】  また、音信号処理装置１０は、専用のハードウェアにより実現されてもよいし、音信号の入出力が可能な汎用コンピュータにアプリケーションプログラムに従った処理を実行させることにより実現されてもよい。音信号処理装置１０が汎用コンピュータにより実現される場合、制御部１１は汎用コンピュータが備えるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）およびＣＰＵの制御下で動作するＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）が、アプリケーションプログラムに含まれる各モジュールに従った処理を同時並行して行うことにより、汎用コンピュータの機能として実現される。【００９６】  本発明を詳細にまた特定の実施態様を参照して説明してきたが、本発明の精神、範囲または意図の範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
本発明は、２００５年７月１５日出願の日本特許出願（特願２０００−２０７７９８）に基づくものであり、その内容はここに参照として取り込まれる。
【産業上の利用可能性】
【００９７】  本発明の音信号処理装置及び音信号処理方法によれば、トリガ信号の取得前に取得され記憶されている音信号を環境雑音のみを示す音信号と見なしてＳ／Ｎ比を算出し、当該Ｓ／Ｎ比に基づき発音期間の特定が行われる結果、高い精度の特定結果が得られる。
【図１】
0005388447.tif 000006
【図２】
0005388447.tif 000007
【図３】
0005388447.tif 000008
【図４】
0005388447.tif 000009
【図５】
0005388447.tif 000010
【図６】
0005388447.tif 000011
【図７】
0005388447.tif 000012