(57)【特許請求の範囲】
【請求項１】
入力信号に含まれるハウリング成分を抑圧するハウリング抑圧装置であって、
前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算器と、
前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタと、
前記適応フィルタのフィルタ係数の更新速度を制御する係数更新制御部とを備え、
前記係数更新制御部は、
前記入力信号の信号レベルを算出するレベル算出部と、
前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出部と、
前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出部と、
前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御部とを備え、
前記適応フィルタは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御部で設定された前記更新速度で更新する
ハウリング抑圧装置。
【請求項２】
前記係数更新制御部は、さらに、前記入力信号の信号レベルが所定の値を超えているか否かを、前記余韻区間の単位時間毎に判定するレベル判定部を備え、
前記更新速度制御部は、前記余韻区間のうち、前記入力信号の信号レベルが前記所定の値を超えている区間における前記更新速度を前記第１の速度に設定し、前記入力信号の信号レベルが所定の値以下の区間における前記更新速度を前記第２の速度に設定する
請求項１に記載のハウリング抑圧装置。
【請求項３】
前記係数更新制御部は、さらに、
前記入力信号の信号レベルを周波数信号に変換する周波数分析部と、
前記周波数信号にピークが存在するか否かを判断するピーク検出部とを備え、
前記更新速度制御部は、前記周波数信号にピークが複数存在する場合に、前記余韻区間における前記更新速度を前記第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第２の速度に設定する
請求項１に記載のハウリング抑圧装置。
【請求項４】
前記信号立上り検出部は、前記入力信号の信号レベルの時間方向の傾き値を前記閾値と比較することによって、前記立上り位置を検出する
請求項１〜３のいずれか１項に記載のハウリング抑圧装置。
【請求項５】
前記信号立上り検出部は、前記入力信号の信号レベルの時間方向の差分値を前記閾値と比較することによって、前記立上り位置を検出する
請求項１〜３のいずれか１項に記載のハウリング抑圧装置。
【請求項６】
前記余韻区間検出部は、さらに、
前記所定の範囲の最大値を、時間の経過と共に徐々に減少させる最大値算出部と、
前記入力信号の信号レベルが前記最大値に達した位置を前記余韻区間の終端と判定する余韻区間判定部とを備える
請求項１〜５のいずれか１項に記載のハウリング抑圧装置。
【請求項７】
前記余韻区間検出部は、さらに、
前記所定の範囲の最小値を、時間の経過と共に徐々に増加させる最小値算出部と、
前記入力信号の信号レベルが前記最小値に達した位置を前記余韻区間の終端と判定する余韻区間判定部とを備える
請求項１〜６のいずれか１項に記載のハウリング抑圧装置。
【請求項８】
周囲の音を収音して前記入力信号に変換する収音部と、
請求項１〜７のいずれか１項に記載のハウリング抑圧装置と、
前記減算器で生成された前記誤差信号を出力音に変換して出力する出力部とを備える
補聴器。
【請求項９】
入力信号に含まれるハウリング成分を抑圧するハウリング抑圧方法であって、
前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算ステップと、
前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタステップと、
前記適応フィルタステップでのフィルタ係数の更新速度を制御する係数更新制御ステップとを含み、
前記係数更新制御ステップは、
前記入力信号の信号レベルを算出するレベル算出ステップと、
前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出ステップと、
前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出ステップと、
前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御ステップとを含み、
前記適応フィルタステップでは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御ステップで設定された前記更新速度で更新する
ハウリング抑圧方法。
【請求項１０】
入力信号に含まれるハウリング成分を抑圧する集積回路であって、
前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算器と、
前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタと、
前記適応フィルタのフィルタ係数の更新速度を制御する係数更新制御部とを備え、
前記係数更新制御部は、
前記入力信号の信号レベルを算出するレベル算出部と、
前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出部と、
前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出部と、
前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御部とを備え、
前記適応フィルタは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御部で設定された前記更新速度で更新する
集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロホンとスピーカとを有する音響装置において、スピーカとマイクロホンとの間の音響結合により発生するハウリングを自動的に検出及び抑圧するハウリング抑圧装置に関するものである。
【背景技術】
【０００２】
ハウリングは、スピーカから出力された音がマイクロホンへ帰還することで起こる音のループが引き起こす発振現象である。一旦音響ループが形成されると、強いピークを持つ正弦波状信号が発生し、ループが切れるまで特定の周波数の音が増幅し続ける。【０００３】
従来のハウリング抑圧装置としては、適応フィルタを用いた適応処理によってマイクロホンとスピーカとの間の空間伝達特性を推定し、適応フィルタが生成した擬似帰還信号を入力信号から差し引くことで音響ループを断ち切り、ハウリングを抑圧するものが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００９−５３２９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のハウリング抑圧装置では、マイクロホンで収音した音に含まれるハウリング成分の誤検出等によって、適応フィルタの空間伝達特性の推定性能が低下したり、処理音の音質が劣化したりする可能性があるという課題を有している。【０００６】
本発明は、従来の課題を解決するもので、フィードバックが引き起こすハウリングの検出精度を向上させ、適応的にハウリングを抑圧するハウリング抑圧装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一形態に係るハウリング抑圧装置は、入力信号に含まれるハウリング成分を抑圧する。具体的には、ハウリング抑圧装置は、前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算器と、前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタと、前記適応フィルタのフィルタ係数の更新速度を制御する係数更新制御部とを備える。前記係数更新制御部は、前記入力信号の信号レベルを算出するレベル算出部と、前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出部と、前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出部と、前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御部とを備える。そして、前記適応フィルタは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御部で設定された前記更新速度で更新する。【０００８】
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたは記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【０００９】
本発明によれば、フィードバックが引き起こすハウリングの検出精度を向上させ、適応的にハウリングを抑圧することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態１におけるハウリング抑圧装置の基本ブロック図である。
【図２】図２は、実施の形態１におけるハウリング抑圧装置の係数更新制御部の詳細ブロック図である。
【図３】図３は、正弦波状信号の時間波形例を示すグラフである。
【図４】図４は、実施の形態１におけるハウリング抑圧装置の信号立上り検出部のフローチャートである。
【図５】図５は、実施の形態１におけるハウリング抑圧装置の余韻区間検出部の詳細ブロック図である。
【図６】図６は、実施の形態１におけるハウリング抑圧装置の信号区間検出部のフローチャートである。
【図７】図７は、実施の形態１におけるハウリング抑圧装置の状態判定部、更新速度制御部のフローチャートである。
【図８】図８は、実施の形態１におけるハウリング抑圧装置の更新制御過程を示すグラフである。
【図９】図９は、実施の形態２におけるハウリング抑圧装置の余韻区間検出部の詳細ブロック図である。
【図１０】図１０は、本発明の実施の形態２におけるハウリング抑圧装置の信号区間検出部のフローチャートである。
【図１１】図１１は、実施の形態２におけるハウリング抑圧装置の更新制御過程を示すグラフである。
【図１２】図１２は、実施の形態３におけるハウリング抑圧装置の係数更新制御部の詳細ブロック図である。
【図１３】図１３は、実施の形態３におけるハウリング抑圧装置のレベル判定部のフローチャートである。
【図１４】図１４は、実施の形態３におけるハウリング抑圧装置の状態判定部のフローチャートである。
【図１５】図１５は、実施の形態４におけるハウリング抑圧装置の係数更新制御部の詳細ブロック図である。
【図１６】図１６は、実施の形態４におけるハウリング抑圧装置のピーク検出部の詳細ブロック図である。
【図１７】図１７は、実施の形態４におけるハウリング抑圧装置のピーク検出部のフローチャートである。
【図１８】図１８は、実施の形態４におけるハウリング抑圧装置の状態判定部のフローチャートである。
【図１９】図１９は、特許文献１におけるハウリング抑圧装置のブロック図である。
【発明を実施するための形態】
【００１１】
（本発明の基礎となった知見）
図１９は、特許文献１に記載されたハウリング抑圧装置の構成を示すブロック図である。
【００１２】
図１９において、ハウリング抑圧装置は、入力音を入力信号に変換するマイクロホン８０１、マイクロホン８０１の入力信号から適応フィルタ８０６の出力信号を減算してエラー信号を出力する減算器８０２、エラー信号に増幅利得を適用することによってプロセッサ出力信号を生成する補聴器プロセッサ８０３、補聴器プロセッサ８０３の出力信号を出力音に変換するスピーカ８０４、補聴器プロセッサ８０３の出力信号を遅延させる遅延器８０５、遅延器８０５の出力信号に対しフィルタ係数を適用することによって、適応フィルタ出力信号（擬似帰還信号）を適応的に導出する適応フィルタ８０６、補聴器プロセッサ８０３の出力信号の自己相関を算出する自己相関算出部８０７、自己相関算出部８０７で算出された自己相関の値を閾値によって判定し、適応速度の変更を決定する閾値判定部８０８、閾値判定部８０８の判定結果から適応フィルタ８０６の更新速度を決定する更新制御部８０９から構成される。
【００１３】
マイクロホン８０１から入力された信号は、補聴器プロセッサ８０３を通って増幅され、スピーカ８０４から出力される。この時、スピーカ８０４の出力信号の一部は帰還信号として再びマイクロホン８０１へ入力される。そして、この音のループが途切れることなく補聴器プロセッサ８０３で増幅され続けると、信号の発振現象であるハウリングが発生する。そこで、適応フィルタ８０６にスピーカ８０４とマイクロホン８０１との間の空間伝達特性を推定させることで、ハウリングの基となる帰還信号を推定した信号である擬似帰還信号を生成し、減算器８０２で入力信号から推定した擬似帰還信号を差し引くことでハウリングを抑圧することができる。
【００１４】
適応フィルタ８０６には、自己相関の強い信号を優先的に推定するという性質がある。すなわち、正弦波状信号が入力されると、適応フィルタは正弦波状信号の特性を模擬するように更新を進める。適応フィルタ８０６のフィルタ特性の更新アルゴリズムは、減算器８０２を通った後のエラー信号を小さくするように働くが、この正弦波状信号を打ち消すように更新を進めてしまうと、更新を進めれば進めるほど信号の歪みが大きくなる。その結果、著しい音質劣化やハウリングを引き起こす。そこで、このような入力信号に対しては、適応フィルタ８０６の更新を止めたり緩めたりするなどして出力信号に歪みを生じさせない工夫が必要となる。そこで、特許文献１のハウリング抑圧装置は、信号の自己相関の値から入力信号が純音（ｐｕｒｅ  ｔｏｎｅ）であると判定されると、更新を一時的に停止する構成を備えている。
【００１５】
このように、特許文献１に記載されたハウリング抑圧装置は、信号の自己相関を閾値判定することによって適応フィルタ８０６の更新制御を行い、純音を検出すると適応フィルタ８０６の更新を一時的に停止して適応フィルタ８０６のフィルタ係数の破壊を抑えることが可能である。
【００１６】
しかしながら、特許文献１の構成では、純音の判定を信号の自己相関のみで行うため、ハウリングのように本来抑圧すべき信号で自己相関の高いものを誤判定してしまい、誤った適応フィルタ８０６の更新によって本来抑圧すべき音を打ち消さなかったり、音質の劣化を招いたりする可能性があるという課題を有している。
【００１７】
そこで、上記の課題を解決するために本発明の一形態に係るハウリング抑圧装置は、入力信号に含まれるハウリング成分を抑圧する。具体的には、ハウリング抑圧装置は、前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算器と、前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタと、前記適応フィルタのフィルタ係数の更新速度を制御する係数更新制御部とを備える。前記係数更新制御部は、前記入力信号の信号レベルを算出するレベル算出部と、前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出部と、前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出部と、前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御部とを備える。そして、前記適応フィルタは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御部で設定された前記更新速度で更新する。
【００１８】
本構成によって、入力信号の信号レベルを用いた信号立上り検出によって突発性の信号を検出し、さらに信号区間検出によって正弦波状信号を検出して、適応フィルタの更新速度を通常時より減速させることで、適応フィルタの誤適応とそれに伴う処理音の音質劣化を低減することができる。なお、本明細書において、「適応フィルタのフィルタ係数の更新」を、単に「適応フィルタの更新」と表記することがある。
【００１９】
さらに、前記係数更新制御部は、前記入力信号の信号レベルが所定の値を超えているか否かを、前記余韻区間の単位時間毎に判定するレベル判定部を備えてもよい。そして、前記更新速度制御部は、前記余韻区間のうち、前記入力信号の信号レベルが前記所定の値を超えている区間における前記更新速度を前記第１の速度に設定し、前記入力信号の信号レベルが所定の値以下の区間における前記更新速度を前記第２の速度に設定してもよい。
【００２０】
本構成によって、入力信号のレベルの大きさに応じて適応フィルタのフィルタ係数の更新速度を適応的に調整することができる。
【００２１】
さらに、前記係数更新制御部は、前記入力信号の信号レベルを周波数信号に変換する周波数分析部と、前記周波数信号にピークが存在するか否かを判断するピーク検出部とを備えてもよい。そして、前記更新速度制御部は、前記周波数信号にピークが複数存在する場合に、前記余韻区間における前記更新速度を前記第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第２の速度に設定してもよい。
【００２２】
本構成によって、入力信号の周波数特性を分析することで正弦波状信号の判定を行うことができるため、より精度良く適応フィルタの更新制御を行うことが可能となる。
【００２３】
一例として、前記信号立上り検出部は、前記入力信号の信号レベルの時間方向の傾き値を前記閾値と比較することによって、前記立上り位置を検出してもよい。
【００２４】
本構成のように、信号レベルの時間方向の傾き値を観察することで、適応フィルタの更新制御を精度良く行う事が可能となる。
【００２５】
他の例として、前記信号立上り検出部は、前記入力信号の信号レベルの時間方向の差分値を前記閾値と比較することによって、前記立上り位置を検出してもよい。
【００２６】
本構成のように、信号レベルの時間方向の差分値を観察することで、適応フィルタの更新制御を精度良く行うことが可能となる。
【００２７】
さらに、前記余韻区間検出部は、前記所定の範囲の最大値を、時間の経過と共に徐々に減少させる最大値算出部と、前記入力信号の信号レベルが前記最大値に達した位置を前記余韻区間の終端と判定する余韻区間判定部とを備えてもよい。
【００２８】
本構成によって、徐々に減少する最大値ホールドと信号レベルとを比較することにより、正弦波状信号の余韻区間を判定することができるので、適応フィルタの更新制御を精度良く行うことが可能となる。
【００２９】
さらに、前記余韻区間検出部は、前記所定の範囲の最小値を、時間の経過と共に徐々に増加させる最小値算出部と、前記入力信号の信号レベルが前記最小値に達した位置を前記余韻区間の終端と判定する余韻区間判定部とを備えてもよい。
【００３０】
本構成によって、徐々に増加する最小値ホールドと信号レベルとを比較することにより正弦波状信号の余韻区間を判定することができるので、適応フィルタの更新制御を精度良く行うことが可能となる。
【００３１】
本発明の一形態に係る補聴器は、周囲の音を収音して前記入力信号に変換する収音部と、上記に記載のハウリング抑圧装置と、前記減算器で生成された前記誤差信号を出力音に変換して出力する出力部とを備える。
【００３２】
この構成によって、ハウリングによる不快感を低減した補聴器を実現できる。
【００３３】
本発明の一形態に係るハウリング抑圧方法は、入力信号に含まれるハウリング成分を抑圧する方法である。具体的には、ハウリング抑圧方法は、前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算ステップと、前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタステップと、前記適応フィルタステップでのフィルタ係数の更新速度を制御する係数更新制御ステップとを含む。前記係数更新制御ステップは、前記入力信号の信号レベルを算出するレベル算出ステップと、前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出ステップと、前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出ステップと、前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御ステップとを含む。そして、前記適応フィルタステップでは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御ステップで設定された前記更新速度で更新する。
【００３４】
本発明の一形態に係る集積回路は、入力信号に含まれるハウリング成分を抑圧する。具体的には、集積回路は、前記入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、前記入力信号から減算して誤差信号を生成する減算器と、前記誤差信号にフィルタ処理を適用して、次の前記入力信号のための前記擬似帰還信号を生成する適応フィルタと、前記適応フィルタのフィルタ係数の更新速度を制御する係数更新制御部とを備える。前記係数更新制御部は、前記入力信号の信号レベルを算出するレベル算出部と、前記入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出部と、前記立上り位置を始端とし、前記入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出部と、前記余韻区間における前記更新速度を第１の速度に設定し、前記余韻区間以外の区間における前記更新速度を前記第１の速度より速い第２の速度に設定する更新速度制御部とを備える。そして、前記適応フィルタは、前記誤差信号にフィルタ処理を適用するためのフィルタ係数を、前記更新速度制御部で設定された前記更新速度で更新する。
【００３５】
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたは記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【００３６】
以下本発明の実施の形態について、図面を参照しながら説明する。なお、以下で説明する実施の形態は、いずれも本発明の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００３７】
（実施の形態１）
実施の形態１に係るハウリング抑圧装置は、入力信号に含まれるハウリング成分である帰還信号を推定した信号である擬似帰還信号を、入力信号から減算して誤差信号を生成する減算器と、誤差信号にフィルタ処理を適用して、次の入力信号のための擬似帰還信号を生成する適応フィルタと、適応フィルタのフィルタ係数の更新速度を制御する係数更新制御部とを備える。そして、適応フィルタは、誤差信号にフィルタ処理を適用するためのフィルタ係数を、係数更新制御部（後述する更新速度制御部）で設定された前記更新速度で更新する。
【００３８】
図１を参照して、実施の形態１に係るハウリング抑圧装置を詳細に説明する。図１は、実施の形態１におけるハウリング抑圧装置の基本ブロック図である。
【００３９】
図１において、本実施の形態に係るハウリング抑圧装置は、周囲の音を収音して入力信号（目標信号）に変換するマイクロホン１０１と、マイクロホン１０１の出力信号（目標信号）から適応フィルタ１０７の出力信号（擬似帰還信号）を差し引き、エラー信号（誤差信号）を出力する減算器１０２と、入力されたエラー信号に音響信号処理を施して出力する音響処理部１０３と、音響処理部１０３の出力信号を増幅するアンプ１０４と、アンプ１０４で増幅された音（出力音）を出力するスピーカ１０５と、音響処理部１０３の出力信号を遅延させて適応フィルタ１０７の参照信号として出力する遅延器１０６と、入力された参照信号にフィルタ係数を畳み込むことで擬似帰還信号を出力すると共に、適応アルゴリズムに従ってフィルタ係数の更新を行う適応フィルタ１０７と、マイクロホン１０１から出力される目標信号に基づいて、適応フィルタ１０７の更新速度を決定する係数更新制御部１０８とを備えている。
【００４０】
実施の形態１に係る係数更新制御部は、入力信号の信号レベルを算出するレベル算出部と、入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置を検出する信号立上り検出部と、立上り位置を始端とし、入力信号の信号レベルが時間の経過と共に徐々に狭まる所定の範囲を外れた位置を終端とする余韻区間を検出する余韻区間検出部と、余韻区間における更新速度を第１の速度に設定し、余韻区間以外の区間における更新速度を第１の速度より速い第２の速度に設定する更新速度制御部とを備える。
【００４１】
次に、図２を参照して、係数更新制御部１０８を詳細に説明する。図２は、本実施の形態１におけるハウリング抑圧装置の係数更新制御部１０８の詳細ブロック図である。
【００４２】
図２において、本実施の形態に係る係数更新制御部１０８は、目標信号が入力される入力端子２０１と、目標信号の信号レベルを算出するレベル算出部２０２と、レベル算出部２０２の出力信号の時間変化を分析することで信号の立ち上がりの強さを分析する信号立上り検出部２０３と、信号立上り検出部２０３の出力とレベル算出部２０２の出力である信号レベルとに基づいて、正弦波状信号の余韻区間を判定する余韻区間検出部２０４と、信号立上り検出部２０３の出力結果と余韻区間検出部２０４の出力結果とから適応フィルタ１０７のフィルタ係数の更新に適さない信号が入力信号に含まれているかどうかを判定する状態判定部２０５と、状態判定部２０５の判定結果に応じて適応フィルタ１０７のフィルタ係数の更新速度を決定する更新速度制御部２０６と、決定された更新速度を出力する出力端子２０７とを備えている。
【００４３】
まず、実施の形態１におけるハウリング抑圧装置の全体動作について説明する。
【００４４】
マイクロホン１０１に入力された入力信号は、図示していないＡ／Ｄ変換器によりアナログ信号からディジタル信号に変換された後、減算器１０２で適応フィルタ１０７の出力信号（擬似帰還信号）が減算され、誤差信号として音響処理部１０３に入力される。音響処理部１０３は、入力された誤差信号に所望の音響信号処理を施すもので、例えば増幅処理やフィルタ処理など、誤差信号を加工して時間波形を出力する。音響処理部１０３の出力信号は、遅延器１０６に入力されると共に、図示していないＤ／Ａ変換器によりディジタル信号からアナログ信号に変換された後、アンプ１０４に入力され、増幅される。そして増幅された出力信号は、スピーカ１０５から出力音として出力される。
【００４５】
この時、スピーカの出力音の一部がマイクロホン１０１に帰還することで、スピーカ１０５とマイクロホン１０１との間に音響ループが形成される。この音響ループが途切れず信号が周り続けると、特定の帯域で信号が発振し、ハウリングを引き起こす。そこで、実施の形態１におけるハウリング抑圧装置は、発生したハウリングを適応フィルタ１０７によって抑圧する。
【００４６】
また、音響処理部１０３から出力された出力信号は、遅延器１０６に入力されて、例えば数サンプル〜数十サンプル遅延される。遅延器１０６で遅延された出力信号は、参照信号として適応フィルタ１０７に出力される。そして、適応フィルタ１０７は、遅延器１０６から取得した参照信号とフィルタ係数との畳み込み処理を行い、擬似帰還信号を減算器１０２に出力する。減算器１０２では、マイクロホン入力信号（目標信号）から擬似帰還信号を差し引くことで、目標信号に含まれるフィードバック成分（ハウリング成分）を取り除き、エラー信号を出力する。
【００４７】
適応フィルタ１０７は、例えば２５６タップのＦＩＲフィルタである。適応フィルタ１０７のフィルタ係数は、例えば、目標信号とエラー信号との二乗平均誤差を最小とするような規範の下で動作する適応アルゴリズムに従って更新される。適応フィルタ１０７の更新アルゴリズムとしては、ＮＬＭＳアルゴリズムなど、公知の各種適応アルゴリズムを用いる。二乗平均誤差が最小となるときとは、適応フィルタ１０７が空間伝達特性を正確に推定できた場合である。
【００４８】
かかる構成によれば、フィルタ係数の更新を進めることで適応フィルタ１０７による空間伝達特性の推定精度が向上し、適応フィルタ１０７からの出力が帰還信号と類似した擬似帰還信号となる。その結果、減算器１０２から出力されるエラー信号は、目標信号から擬似帰還信号が取り除かれているので、ユーザが本来聞きたい音を得ることができる。なお、図１において、遅延器１０６は、音響処理部１０３の出力信号を入力としているが、減算器１０２の出力信号（誤差信号）を入力としても良いし、アンプ１０４の出力信号を入力とする構成でも良い。
【００４９】
次に、実施の形態１における係数更新制御部１０８の動作について説明する。係数更新制御部１０８は、適応フィルタ１０７のフィルタ係数の更新制御を実現するために設けられた部分である。
【００５０】
入力端子２０１には、マイクロホン１０１の入力信号（目標信号）が入力される。レベル算出部２０２は、入力端子２０１に入力された目標信号の信号レベルを算出する。信号立上り検出部２０３は、レベル算出部２０２で算出された信号レベルの時間方向の変化の大きさを観察する。信号立上り検出部２０３は、信号レベルの変化量を観察した結果、入力信号が時間方向に急激な立ち上がりを見せた場合に、その信号を突発性信号として検出することを目的としている。突発性信号は、全帯域に渡り非常に大きなレベルの信号を持つ事を特徴とし、適応フィルタ１０７が推定する空間伝達特性の精度を低下させる性質を持つ。
【００５１】
図３は、適応フィルタ１０７の更新に適さない正弦波状信号の時間波形の例を示すグラフである。図３では、０．９秒目付近から約２秒に渡って正弦波状信号が発生している。より具体的には、０．９秒目付近で急激な立ち上がり（突発性信号）が生じ、その後徐々にパワーを減衰させながら余韻が生じている事が観察できる。
【００５２】
図４は、図２における信号立上り検出部２０３の動作を表すフローチャートである。まず、信号立上り検出部２０３は、現在の時刻（ｔ）における入力信号の信号レベルと時刻（ｔ−ｎ）における入力信号の信号レベルとから、入力信号の信号レベルの時間変化量を算出する（Ｓ１１０１）。ここでは、時間変化量として両者の傾き値を算出するものとする。次に、信号立上り検出部２０３は、ステップＳ１１０１で算出した傾き値と予め定められた閾値との大小関係を判定する（Ｓ１１０２）。傾き値が閾値より大きい場合（Ｓ１１０２でＹｅｓ）、信号立上り検出部２０３は、立上り検出フラグを１に設定する（Ｓ１１０３）。一方、傾き値が閾値以下の場合（Ｓ１１０２でＮｏ）、信号立上り検出部２０３は、立上り検出フラグを０に設定する（Ｓ１１０４）。
【００５３】
ここで、ハウリングは、信号が立ち上がるのに数百ミリ秒程度の時間を要する信号である。これに対して、突発性信号（正弦波状信号の先頭部分）は、信号が立ち上がるのに要する時間が数ミリ〜数十ミリ秒程度であり、ハウリングと比較して立ち上がりに要する時間が短い信号である。すなわち、ステップＳ１１０２で用いられる閾値には、ハウリングが立ち上がるのに必要な時間より短い値が設定される。
【００５４】
なお、上述した立上り検出フラグの設定値は一例であり、これに限定されない。すなわち、立上り検出フラグには、入力信号の信号レベルの単位時間当たりの増加量が閾値を上回る立上り位置が検出されたことを表す値（上記の例では“１”）と、立上り位置が検出されなかったことを表す値（上記の例では“０”）とのうちのいずれかを設定すればよい。後述する他のフラグに設定される値についても同様のことが言える。
【００５５】
実施の形態１に係る余韻区間検出部は、所定の範囲の最大値を時間の経過と共に徐々に減少させる最大値算出部と、入力信号の信号レベルが最大値に達した位置を余韻区間の終端と判定する余韻区間判定部とを備える。なお、実施の形態１では、所定の範囲の最小値を一定とし、最大値を徐々に減少させることによって、所定の範囲を時間の経過と共に徐々に狭める例を説明する。
【００５６】
図５を参照して、実施の形態１に係る余韻区間検出部を詳細に説明する。図５は、図２における余韻区間検出部２０４の詳細ブロック図である。
【００５７】
図２において、本実施の形態に係る余韻区間検出部２０４は、立上り検出フラグが入力される入力端子３０１と、入力信号の信号レベルが入力される入力端子３０２と、立上り検出フラグの結果から余韻区間の検出を行うか否かを決定し、決定結果を出力する区間検出開始判定部３０３と、区間検出開始判定部３０３での決定結果に応じて、入力端子３０２から入力された信号レベルの最大値を算出する最大値算出部３０４と、入力端子３０２と最大値算出部３０４から出力される最大値とから余韻区間の判定を行う余韻区間判定部３０５と、余韻区間判定部３０５の判定結果を出力する出力端子３０６とを備えている。
【００５８】
図６は、図２における余韻区間検出部２０４の動作を表すフローチャートである。余韻区間検出部２０４は、始めに図６の（ａ）に示される余韻区間の検出の開始判定を行う。まず、区間検出開始判定部３０３は、立上り検出フラグの値が１であるかどうかを判定する（Ｓ１２０１）。立上り検出フラグの値が１であれば（Ｓ１２０１でＹｅｓ）、区間検出開始判定部３０３は、区間検出開始フラグを１に設定する（Ｓ１２０２）。一方、立上り検出フラグの値が０であれば（Ｓ１２０１でＮｏ）、区間検出開始判定部３０３は、区間検出開始フラグを０に設定する（Ｓ１２０３）。また、立上り検出フラグの値が１であった場合、最大値算出部３０４は、立上り位置の検出時における信号レベルを閾値（所定の範囲の最大値）として設定する（Ｓ１２０４）。
【００５９】
次に、余韻区間検出部２０４は、図６の（ｂ）に示される余韻区間の検出を行う。まず、余韻区間判定部３０５は、図６の（ａ）で値を定めた区間検出開始フラグの値を確認する（Ｓ１２０５）。区間検出開始フラグの値が０である場合（Ｓ１２０５でＮｏ）、余韻区間判定部３０５は、余韻区間の判定を行わずに処理を終了する。一方、区間検出開始フラグの値が１である場合（Ｓ１２０５でＹｅｓ）、余韻区間判定部３０５は、余韻区間を判定するために、レベル算出部２０２から取得した現時点における入力信号の信号レベルと、図６の（ａ）のステップＳ１２０４で設定された閾値とを比較する（Ｓ１２０６）。
【００６０】
次に、閾値が現時点における入力信号の信号レベルより大きければ（Ｓ１２０６でＹｅｓ）、余韻区間判定部３０５は、余韻区間検出フラグの値を１に設定する（Ｓ１２０７）。また、余韻区間判定部３０５は、閾値に１より小さな定数αをかけ、次のステップの新たな閾値とする（Ｓ１２０９）。一方、閾値が現時点における入力信号の信号レベルより小さい場合（Ｓ１２０６でＮｏ）、余韻区間判定部３０５は、余韻区間検出フラグの値を０に設定する（Ｓ１２０８）。この場合、余韻区間判定部３０５は、余韻区間が終了したと判定を下すため、区間検出開始フラグの値を０に設定する（Ｓ１２１０）。
【００６１】
ここで、ハウリングは、適応フィルタ１０７によって抑圧されなければ時間の経過と共に信号レベルが増大するか同じレベルを維持し（すなわち、減衰しない）、適応フィルタ１０７によって抑圧されれば数十ミリ〜数百ミリ秒程度で急激に減衰する。これに対して、正弦波状信号は、減衰するのに要する時間が数百ミリ〜数秒程度である。すなわち、所定の範囲の最大値の減少速度が、適応フィルタ１０７によって抑圧されないハウリングの減衰速度より速く、且つ適応フィルタ１０７によって抑圧されるハウリングの減衰速度より遅くなるように、ステップＳ１２０９におけるαの値を設定すればよい。
【００６２】
図７は、図２における状態判定部２０５と更新速度制御部２０６との動作を示すフローチャートである。状態判定部２０５では、図７の（ａ）に示されるように、入力された立上り検出フラグと余韻区間検出フラグとのうち、少なくともどちらかが１（Ｓ１３０１でＹｅｓ）であれば、更新速度制御を適用するものとして、制御フラグを１に設定する（Ｓ１３０２）。一方、２つのフラグの値がいずれも０の場合（Ｓ１３０１でＮｏ）、状態判定部２０５は、更新速度制御の必要はないと判断し、制御フラグを０に設定する（Ｓ１３０３）。
【００６３】
なお、突発性信号が発生した瞬間は、立上り検出フラグに１が設定され、信号区間検出フラグに１が設定される。一方、正弦波状信号の余韻区間の間は、立上り検出フラグに０が設定され、信号区間検出フラグに１が設定されることになる。すなわち、図７のように更新速度を制御することにより、突発性信号のみが発生した場合でも、突発性信号の後に余韻区間が続く正弦波状信号が発生した場合でも、適応フィルタ１０７のフィルタ係数の更新速度を適応的に制御することができる。
【００６４】
次に、更新速度制御部２０６では、図７の（ｂ）に示されるように、制御フラグの値を判定する（Ｓ１３０４）。制御フラグの値が１の場合（Ｓ１３０４でＹｅｓ）、更新速度制御部２０６は、適応フィルタ１０７の更新速度を減速時の値（第１の速度）に設定する（Ｓ１３０５）。一方、制御フラグの値が０の場合（Ｓ１３０４でＮｏ）、更新速度制御部２０６は、適応フィルタ１０７の更新速度を通常時の値（第２の速度）に設定する（Ｓ１３０６）。なお、「更新速度」とは、フィルタ係数の単位時間当たりの更新量を指す。より具体的には、更新速度は、１回の更新処理におけるフィルタ係数の変動幅と言い換えることができる。
【００６５】
図８は、突発性信号の検出から更新速度制御を行うまでの過程を順にグラフ化して示したものである。
【００６６】
まず、信号立上り検出部２０３は、図８の（ａ）に示される入力信号に対し、正弦波状信号の開始地点（立上り位置）を見極めるために突発性信号の検出を行う。具体的には、信号立上り検出部２０３は、２つの異なる時刻（ｔ）と時刻（ｔ−ｎ）との間の信号レベルの傾き値が予め定めた閾値を上回る場合に立上り検出フラグを１に、傾き値が閾値以下の場合に立上り検出フラグを０に設定する。立上り検出フラグの推移の例を、図８の（ｃ）に示す。
【００６７】
次に、余韻区間検出部２０４では、正弦波状信号の特に余韻区間を検出する。具体的には、余韻区間検出部２０４は、図８の（ｂ）に示されるように、レベル算出部２０２で算出された目標信号の信号レベルと、目標信号レベルの最大値ホールド（図６の（ａ）のステップＳ１２０４又は図６の（ｂ）のステップＳ１２０９で設定される閾値に相当）の値とを比較する。正弦波状信号の余韻区間は突発性信号の直後に続くように入力されるため、目標信号レベルと信号レベルの最大値とを比較する事で余韻区間の検出が可能となる。
【００６８】
具体的には、余韻区間検出部２０４は、余韻区間の信号レベルは時間の経過と共に減衰する事を利用して、最大値ホールドの値と信号レベルとの大小関係が逆転することなくどちらも緩やかに減衰し続ける間を、余韻成分が継続している区間であると判定する。そして、余韻区間検出部２０４は、突発音検出フラグが１を示した直後から最大値ホールドの値と信号レベルの値との大小関係が逆転するまでの区間で余韻区間検出フラグを１にする。余韻区間検出フラグの推移の例を、図８の（ｄ）に示す。
【００６９】
状態判定部２０５には、立上り検出フラグと余韻区間検出フラグとが入力される。正弦波状信号の余韻成分が適応フィルタ１０７のフィルタ係数による空間伝達特性の推定精度を低下させることについては言及済みであるが、突発性信号が入力された場合も入力レベルの急激な変動で適応フィルタ１０７のフィルタ係数による空間伝達特性の推定精度が劣化する事が確認されている。したがって、状態判定部２０５は、立上り検出フラグ及び余韻区間検出フラグ少なくともどちらか一方が１の場合にフィルタ係数の更新を停止するか減速するように、制御フラグを１にする。
【００７０】
次に、更新速度制御部２０６では、入力された制御フラグの値に応じて適応フィルタ１０７の更新速度を制御する。具体的には、更新速度制御部２０６は、制御フラグの値が１の場合で、且つフィルタ係数の更新を停止する場合は適応フィルタ１０７の更新速度を０に、フィルタ係数の更新を減速する場合は更新速度を減速値に設定し、制御フラグの値が０の場合は更新速度を通常値に設定する。更新速度の推移の例を、図８の（ｅ）に示す。そして、設定された更新速度は、出力端子２０７から適応フィルタ１０７に出力される。
【００７１】
かかる構成によれば、信号立上り検出部２０３で突発性信号を、余韻区間検出部２０４で正弦波状信号の余韻区間を検出することができるので、適応フィルタ１０７のフィルタ係数の更新に適さない信号が入力されたことを判断できる。その結果、適応フィルタ１０７の更新速度を入力信号に応じて適切に調整することが可能となる。
【００７２】
なお、本実施の形態において、係数更新制御部１０８への入力信号には適応フィルタ１０７の目標信号が用いられているが、これに限定されず、例えば、適応フィルタ１０７のエラー信号を入力しても良い。
【００７３】
なお、本実施の形態において、信号立上り検出部２０３では信号パワーの時間方向の傾き値を算出すると記述したが、時間方向の差分値を算出して判定を行っても良い。
【００７４】
なお、本実施の形態において、余韻区間検出部２０４では信号レベルの最大値ホールドの値と信号レベルの減衰の様子との大小関係により余韻区間を判定したが、突発音検出後に突発音検出時の信号レベルと現在の信号レベルとを比較し、信号レベルの減衰量が例えば１０ｄＢなど、一定の値以下に低下するまでの間を余韻区間として判定しても良い。
【００７５】
（実施の形態２）
実施の形態２に係る余韻区間検出部は、さらに、所定の範囲の最小値を時間の経過と共に徐々に増加させる最小値算出部と、入力信号の信号レベルが最小値に達した位置を余韻区間の終端と判定する余韻区間判定部とを備える。なお、実施の形態２では、所定の範囲の最大値を一定とし、最小値を徐々に増加させることによって、所定の範囲を時間の経過と共に徐々に狭める例を説明する。
【００７６】
図９を参照して、実施の形態２に係る余韻区間検出部を詳細に説明する。図９は、本発明の実施の形態２に係るハウリング抑圧装置における余韻区間検出部２０４の詳細ブロック図である。なお、図９において、図５と同じ構成要素については同じ符号を用い、説明を省略する。
【００７７】
図９において、本実施の形態に係る余韻区間検出部２０４は、図５の最大値算出部３０４に代えて、区間検出開始判定部３０３の出力結果に応じて、入力端子３０２から入力された信号レベルの最小値を算出する最小値算出部４０１を新たに備えている。そして、実施の形態２に係る余韻区間判定部４０２は、入力端子３０２の出力と最小値算出部４０１の出力とから余韻区間の判定を行う。
【００７８】
図１０は、図９における余韻区間検出部２０４の動作を表すフローチャートである。まず、余韻区間検出部２０４は、図１０の（ａ）に示されるように、余韻区間検出の開始判定を行う。区間検出開始判定部３０３は、まず初めに、立上り検出フラグの値が１であるかどうかを判定する（Ｓ１４０１）。そして、区間検出開始判定部３０３は、立上り検出フラグの値が１（Ｓ１０４１でＹｅｓ）であれば区間検出開始フラグを１に（Ｓ１４０２）、立上り検出フラグの値が０（Ｓ１０４１でＮｏ）であれば区間検出開始フラグを０に設定する（Ｓ１４０３）。また、最小値算出部４０１は、立上り検出フラグの値が１であった場合（Ｓ１０４１でＹｅｓ）に、信号立上り検出直前の信号レベルを閾値（最小値）として設定する（Ｓ１４０４）。
【００７９】
次に、余韻区間判定部４０２は、図１０の（ｂ）に示されるように、余韻区間の判定を行う。余韻区間判定部４０２は、まず初めに、余韻区間判定部４０２は、図１０の（ａ）で値を定めた区間検出開始フラグの値を確認する（Ｓ１４０５）。区間検出開始フラグの値が０である場合（Ｓ１４０５でＮｏ）、余韻区間判定部４０２は、信号区間判定は行わずに処理を終了する。一方、区間検出開始フラグの値が１である場合（Ｓ１４０５でＹｅｓ）、余韻区間判定部４０２は、閾値と信号レベルの値とのどちらが大きいか判定を行う（Ｓ１４０６）。
【００８０】
そして、閾値が信号レベルより小さければ（Ｓ１４０６でＹｅｓ）、余韻区間判定部４０２は、余韻区間検出フラグの値を１に設定する（Ｓ１４０７）。また、余韻区間判定部４０２は、閾値に１より大きな定数βをかけ、次のステップの新たな閾値とする（Ｓ１４０９）。一方、閾値が信号レベルより大きい場合（Ｓ１４０６でＮｏ）、余韻区間判定部４０２は、余韻区間検出フラグの値を０に設定する（Ｓ１４０８）。この場合、余韻区間判定部４０２は、余韻区間が終了したと判定を下すため、区間検出開始フラグの値を０に設定する（Ｓ１４１０）。
【００８１】
図１１は、突発性信号の検出から更新速度制御を行うまでの過程を順にグラフ化して示したものである。
【００８２】
まず、信号立上り検出部２０３は、図１１の（ａ）に示される入力信号に対し、正弦波状信号の開始地点を見極めるために突発性信号の検出を行う。具体的には、信号立上り検出部２０３は、２つの異なる時刻（ｔ）と時刻（ｔ−ｎ）との信号レベルの傾き値が予め定めた閾値を上回る場合には立上り検出フラグを１に、下回る場合には立上り検出フラグを０に設定する。立上り検出フラグの推移の例を、図１１の（ｃ）に示す。
【００８３】
次に、余韻区間検出部２０４では、正弦波状信号の特に余韻区間を検出する。具体的には、余韻区間判定部４０２は、図１１の（ｂ）に示されるように、レベル算出部２０２で算出された目標信号の信号レベルと、目標信号レベルの最小値ホールド（図１０の（ａ）のステップＳ１４０４又は図１０の（ｂ）のステップＳ１４０９で設定される閾値に相当）の値とを比較する。正弦波状信号の余韻区間は突発性信号の直後に続くように入力されるため、目標信号レベルと信号レベルの最小値とを比較する事で区間検出が可能となる。
【００８４】
具体的には、余韻区間判定部４０２は、余韻区間の信号レベルは時間の経過と共に減少する事を利用して、最小値ホールドと信号レベルとの大小関係が逆転することなく、信号レベルが緩やかに減衰し続け、且つ最小値ホールドが緩やかに増大する間は余韻成分が継続している区間であると判定する。そして、余韻区間判定部４０２は、突発音検出フラグが１を示した直後から最小値ホールドと信号レベルの値との大小関係が逆転するまでの区間で余韻区間検出フラグを１にする。余韻区間検出フラグの推移の例を、図１１の（ｄ）に示す。
【００８５】
次に、状態判定部２０５には、立上り検出フラグと余韻区間検出フラグとが入力される。正弦波状信号の余韻成分が適応フィルタ１０７のフィルタ係数による空間伝達特性の推定精度を低下させることについては言及済みであるが、突発性信号が入力された場合も入力レベルの急激な変動で適応フィルタ１０７のフィルタ係数による空間伝達特性の推定精度が劣化する事が確認されている。したがって、状態判定部２０５は、立上り検出フラグ及び余韻区間検出フラグ少なくともどちらか一方が１の場合はフィルタ係数の更新を停止するか減速するように、制御フラグを１にする。
【００８６】
次に、更新速度制御部２０６では、入力された制御フラグの値に応じて適応フィルタ１０７のフィルタ係数の更新速度を制御する。具体的には、更新速度制御部２０６は、制御フラグの値が１の場合で、且つ更新を停止する場合は適応フィルタ１０７の更新速度を０に、更新を減速する場合は更新速度を減速値に設定し、制御フラグの値が０の場合は更新速度を通常値に設定する。更新速度の推移の例を、図１１の（ｅ）に示す。そして、設定された更新速度は、出力端子２０７から適応フィルタ１０７に出力される。
【００８７】
かかる構成によれば、信号立上り検出部２０３で突発性信号を、余韻区間検出部２０４で正弦波状信号の余韻区間を検出することができるので、適応フィルタ１０７のフィルタ係数の更新に適さない信号が入力されたことを判断できる。その結果、適応フィルタ１０７のフィルタ係数の更新速度を入力信号に応じて適切に調整することが可能となる。
【００８８】
なお、実施の形態１に係る余韻区間検出部２０４は所定の範囲の最大値のみを変化させて余韻区間を検出し、実施の形態２に係る余韻区間検出部２０４は所定の範囲の最小値のみを変化させて余韻区間を検出しているが、これらを組み合わせてもよい。すなわち、余韻区間検出部２０４は、時間の経過と共に所定の範囲を徐々に狭めながら（最大値を徐々に減少させ、且つ最小値を徐々に増加させながら）、入力信号の信号レベルが所定の範囲に含まれるか否かを判定してもよい。
【００８９】
（実施の形態３）
実施の形態３に係る係数更新制御部は、さらに、入力信号の信号レベルが所定の値を超えているか否かを、余韻区間の単位時間毎に判定するレベル判定部を備える。そして、更新速度制御部は、余韻区間のうち、入力信号の信号レベルが所定の値を超えている区間における更新速度を第１の速度に設定し、入力信号の信号レベルが所定の値以下の区間における更新速度を第２の速度に設定する。
【００９０】
図１２を参照して、実施の形態３に係る係数更新制御部を詳細に説明する。図１２は、本発明の実施の形態３におけるハウリング抑圧装置の係数更新制御部１０８の詳細ブロック図である。なお、図１２において、図２と同じ構成要素については同じ符号を用い、説明を省略する。
【００９１】
図１２において、本実施の形態に係るハウリング抑圧装置の係数更新制御部１０８は、レベル算出部２０２から出力された信号レベルが所定の値（以下、「閾値」と表記する）を超えているか否かを、余韻区間の単位時間毎に判定するレベル判定部５０１を新たに備えている。そして、実施の形態３に係る状態判定部５０２は、信号立上り検出部２０３から出力された立上り検出フラグ、余韻区間検出部２０４から出力された余韻区間検出フラグ、及びレベル判定部５０１から出力されたレベル判定フラグに基づいて、適応フィルタ１０７のフィルタ係数の更新に適さない信号が入力信号に含まれているかどうか判定を行う。
【００９２】
適応フィルタ１０７のフィルタ係数の更新は、ある程度の大きさの信号が入力された場合は効果的に働くが、小さな信号が入力された場合は更新を行ってもそれほどフィルタ特性が更新されない。これを利用して、状態判定部５０２の判定基準に、入力信号の信号レベルを加える。具体的には、レベル判定部５０１は、入力信号レベルの大きさが予め定めた閾値を上回る場合にはレベル判定フラグを１に、閾値以下の場合にはレベル判定フラグを０に設定して出力する。
【００９３】
状態判定部５０２には、立上り検出フラグ及び余韻区間検出フラグに加えて、レベル判定フラグが入力される。そして、状態判定部５０２は、立上り検出フラグ及び余韻区間検出フラグの少なくともどちらか一方が１で、且つレベル判定フラグの値が１のときにのみ、フィルタ係数の更新を停止するか減速するように、制御フラグを１にする。
【００９４】
図１３は、図１２におけるレベル判定部５０１の動作を示すフローチャートである。レベル判定部５０１は、入力された信号レベルの大きさと閾値とを比較する（Ｓ１５０１）。そして、レベル判定部５０１は、信号レベルが閾値を上回る場合（Ｓ１５０１でＹｅｓ）にはレベル判定フラグを１に設定し（Ｓ１５０２）、閾値以下の場合（Ｓ１５０１でＮｏ）にはレベル判定フラグを０に設定する（Ｓ１５０３）。
【００９５】
図１４は、図１２における状態判定部５０２の動作を示すフローチャートである。状態判定部５０２は、まず初めに、レベル判定フラグの値を確認する（Ｓ１６０１）。レベル判定フラグの値が０の場合（Ｓ１６０１でＮｏ）、状態判定部５０２は、制御フラグの値を０に設定し（Ｓ１６０２）、処理を終了する。一方、レベル判定フラグの値が１の場合（Ｓ１６０１でＹｅｓ）、状態判定部５０２は、立上り検出フラグ及び余韻区間検出フラグを確認する（Ｓ１６０３）。そして、立上り検出フラグと余韻区間検出フラグとのどちらか一方でも値が１である場合（Ｓ１６０３でＹｅｓ）、状態判定部５０２は、制御フラグの値を１に設定する（Ｓ１６０４）。一方、立上り検出フラグと余韻区間検出フラグとの値が共に０である場合（Ｓ１６０３でＮｏ）、状態判定部５０２は、制御フラグを０に設定する（Ｓ１６０５）。
【００９６】
かかる構成によれば、レベル判定部５０１を新たに備えて状態判定部５０２へフラグ情報を出力することで、適応フィルタ１０７に悪影響を及ぼしにくい小さな入力信号では更新を継続することができるため、途切れることなく適応フィルタ１０７が空間伝達特性を推定できる。
【００９７】
なお、本実施の形態において、レベル判定部５０１では信号レベルが閾値を上回る場合にレベル判定フラグを１に設定するものとして説明したが、信号レベルが閾値を上回る状態が所定の時間継続した場合にレベル判定フラグを１に設定する構成にしても良い。
【００９８】
（実施の形態４）
実施の形態４に係る係数更新制御部は、さらに、入力信号の信号レベルを周波数信号に変換する周波数分析部と、周波数信号にピークが存在するか否かを判断するピーク検出部とを備える。そして、更新速度制御部は、周波数信号にピークが複数存在する場合に、余韻区間における更新速度を前記第１の速度に設定し、余韻区間以外の区間における更新速度を第２の速度に設定する。
【００９９】
図１５を参照して、実施の形態４に係る係数更新制御部を詳細に説明する。図１５は、本発明の実施の形態４におけるハウリング抑圧装置の係数更新制御部１０８の詳細ブロック図である。なお、図１５において、図２と同じ構成要素については同じ符号を用い、説明を省略する。
【０１００】
図１５において、本実施の形態に係る係数更新制御部１０８は、入力された信号を周波数領域の信号に変換する周波数分析部６０１と、周波数分析部６０１から取得した周波数領域の信号のピークを検出するピーク検出部６０２とを新たに備える。そして、実施の形態４に係る状態判定部６０３は、ピーク検出部６０２の出力結果であるピーク検出フラグと、信号立上り検出部２０３の出力結果である立上り検出フラグと、余韻区間検出部２０４の出力結果である余韻区間検出フラグを入力とに基づいて、適応フィルタ１０７のフィルタ係数の更新に適さない信号が入力信号に含まれているかどうかの判定を行う。
【０１０１】
周波数分析部６０１は、入力端子２０１からマイクロホン１０１から取得した入力信号を周波数変換することによって複数の帯域信号に分割する。周波数変換手法としては、例えば高速フーリエ変換や、複数のＦＩＲフィルタまたはＩＩＲフィルタから構成されるフィルタバンクなど、時間信号を複数の帯域信号に分割する公知の各手法を用いる。ピーク検出部６０２では、帯域分割された周波数領域の信号の周波数特性を分析し、周波数ピークの検出を行う。最後に状態判定部６０３では、ピーク検出部６０２の出力結果であるピーク検出フラグと、信号立上り検出部２０３の出力結果である立上り検出フラグと、余韻区間検出部２０４の出力結果である余韻区間検出フラグとの３つのパラメータを基に、マイクロホン１０１に入力された信号の中に正弦波状信号が存在しているかどうかの判定を行う。
【０１０２】
ハウリングが鋭い周波数ピークを１つだけ持つ正弦波に類似した信号であるのに対し、日常生活で耳にする正弦波状信号（風鈴、鈴、ドアベルなど）は、正弦波に似た信号のピークを２つ以上持つ特徴を有することが多い。この特徴を利用し、周波数特性の分析によって信号の中に鋭いピークを２つ以上検出した場合は、入力信号にハウリングでない正弦波状信号が含まれていると判断することが出来る。
【０１０３】
かかる構成によれば、入力信号に含まれる周波数ピークの情報を加味して判定を行うので、正弦波状信号の余韻区間検出を精度良く行うことが可能となる。
【０１０４】
図１６は、本発明の実施の形態４におけるピーク検出部６０２の詳細ブロック図である。
【０１０５】
図１６において、本実施の形態に係るピーク検出部６０２は、帯域分割された各周波数領域の信号をピーク検出部６０２へ入力する入力端子７０１と、帯域ごとに入力信号の信号レベルを算出するレベル算出部７０２と、複数の帯域の信号レベルから入力信号の特性を分析する特徴分析部７０３と、特徴分析部７０３からの出力に基づいて信号の周波数ピークを検出するピーク判定部７０４と、ピーク判定部７０４の出力結果を出力する出力端子７０５とを備えている。
【０１０６】
図１５の周波数分析部６０１で複数の帯域に分割された周波数領域の信号は、帯域ごとにレベル算出部７０２に入力される。レベル算出部７０２では、入力された帯域ごとの周波数信号の信号レベルを算出して出力する。特徴分析部７０３は、入力された帯域ごとの信号レベルから周波数特性を分析する。具体的には、特徴分析部７０３は、隣り合う帯域の信号レベルのレベル比を算出して出力する。ピーク判定部７０４は、特徴分析部７０３の出力結果であるレベル比と閾値とを比較し、レベル比が閾値を超える帯域があれば正弦波状信号が存在するとみなし、ピーク数カウンタを１加算する。出力端子７０５は、ピーク数カウンタの値を示すピーク検出フラグを出力する。
【０１０７】
ハウリングは、ピーク数が１の正弦波に類似した信号である。これに対して、日常生活で耳にする風鈴の音などの正弦波状信号は、ピーク数が２以上の複数の正弦波が混合された信号であることが多い。このように入力信号の周波数ピーク数をカウントすることで、適応フィルタ１０７のフィルタ係数の更新に不適切な正弦波状信号の有無を判定することができる。
【０１０８】
図１７は、図１５におけるピーク検出部６０２の動作を示すフローチャートである。まず、レベル算出部７０２は、入力端子７０１に入力された周波数領域の信号から、分割された帯域ごとに信号レベルを算出する（Ｓ１７０１）。次に、特徴分析部７０３は、算出された帯域ごとの信号レベルを利用して、隣り合う帯域のレベル比を算出する（Ｓ１７０２）。次に、ピーク判定部７０４は、算出されたレベル比と予め設定された閾値とを比較する（Ｓ１７０３）。そして、ピーク判定部７０４は、レベル比が閾値を超える（Ｓ１７０３でＹｅｓ）たびにピーク数カウンタのカウント値を１増加させる（Ｓ１７０４）。最後に、ピーク判定部７０４は、ピーク数カウンタの値によるピーク判定を行う（Ｓ１７０５）。すなわち、ピーク判定部７０４は、ピーク数カウンタの値が１より大きければ（Ｓ１７０５でＹｅｓ）正弦波状信号が入力信号に含まれているとしてピーク検出フラグの値を１に設定し（Ｓ１７０６）、ピーク数カウンタの値が１以下の場合（Ｓ１７０５でＮｏ）はピーク検出フラグの値を０に設定する（Ｓ１７０７）。
【０１０９】
図１８は、図１５における状態判定部６０３の動作を示すフローチャートである。まず、状態判定部６０３は、ピーク検出フラグの判定処理を行う（Ｓ１８０１）。ピーク検出フラグの値が０の場合（Ｓ１８０１でＮｏ）、状態判定部６０３は、制御フラグの値を０に設定し（Ｓ１８０３）、処理を終了する。一方、ピーク検出フラグの値が１の場合（Ｓ１８０１でＹｅｓ）、状態判定部６０３は、立上り検出フラグと余韻区間検出フラグとを用いて正弦波状信号の判定処理を行う（Ｓ１８０２）。立上り検出フラグまたは余韻区間検出フラグのどちらか一方の値が１である場合（Ｓ１８０２でＹｅｓ）、状態判定部６０３は、制御フラグの値を１に設定する（Ｓ１８０４）。一方、立上り検出フラグと余韻区間検出フラグとのどちらの値も０であった場合（Ｓ１８０２でＮｏ）、状態判定部６０３は、制御フラグの値を０に設定する（Ｓ１８０５）。
【０１１０】
かかる構成によれば、帯域ごとの信号レベルのレベル比に基づいて周波数特性のピーク検出を行うことにより、正弦波状信号をより精度よく検出し、適応フィルタ１０７のフィルタ係数の更新制御を適切に行うことが可能となる。
【０１１１】
なお、本実施の形態において、特徴分析部７０３では隣り合う帯域の信号レベル比を算出すると記述したが、隣り合う２つの帯域の信号レベルの差分（レベル差）を算出してピーク検出を行っても良いし、隣り合う２つの帯域の信号レベルの大小関係を利用してピーク検出を行っても良い。
【０１１２】
また、図１７のステップＳ１７０５において、ピーク検出部６０２はピーク数カウンタの値が１より大きければピーク検出フラグの値を１に設定するものとして説明したが、これに限定されるものではなく、ピーク数カウンタの判定閾値は１より大きな値であれば適宜設定しても良い。また、ピークが存在しない正弦波状信号も考えられるので、ピーク数カウンタが１の場合にピーク検出フラグの値を０に設定し、ピーク数カウンタが１以外の場合にピーク検出フラグの値を１に設定してもよい。
【０１１３】
上記の各実施の形態に係るハウリング抑圧装置は、例えば、補聴器に利用することができる。すなわち、このような補聴器は、周囲の音を収音して入力信号に変換する収音部（マイクロホン）と、上記の各実施の形態に係るハウリング抑圧装置と、減算器で生成された誤差信号を出力音に変換して出力する出力部（スピーカ）とを備える。
【０１１４】
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
【０１１５】
（１）上記の各装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムで実現され得る。ＲＡＭまたはハードディスクユニットには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【０１１６】
（２）上記の各装置を構成する構成要素の一部または全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。ＲＯＭには、コンピュータプログラムが記憶されている。マイクロプロセッサが、ＲＯＭからＲＡＭにコンピュータプログラムをロードし、ロードしたコンピュータプログラムにしたがって演算等の動作することにより、システムＬＳＩは、その機能を達成する。
【０１１７】
（３）上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なＩＣカードまたは単体のモジュールから構成されてもよい。ＩＣカードまたはモジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。ＩＣカードまたはモジュールには、上記の超多機能ＬＳＩが含まれてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、ＩＣカードまたはモジュールは、その機能を達成する。このＩＣカードまたはこのモジュールは、耐タンパ性を有してもよい。
【０１１８】
（４）本発明は、上記に示す方法で実現されてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムで実現してもよいし、コンピュータプログラムからなるデジタル信号で実現してもよい。
【０１１９】
また、本発明は、コンピュータプログラムまたはデジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、半導体メモリなどに記録したもので実現してもよい。また、これらの記録媒体に記録されているデジタル信号で実現してもよい。
【０１２０】
また、本発明は、コンピュータプログラムまたはデジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送してもよい。
【０１２１】
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、メモリは、コンピュータプログラムを記憶しており、マイクロプロセッサは、コンピュータプログラムにしたがって動作してもよい。
【０１２２】
また、プログラムまたはデジタル信号を記録媒体に記録して移送することにより、またはプログラムまたはデジタル信号をネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施してもよい。
【０１２３】
（５）上記実施の形態及び上記変形例をそれぞれ組み合わせてもよい。
【０１２４】
以上、図面を参照してこの発明の実施形態を説明したが、この発明は、図示した実施形態のものに限定されない。図示した実施形態に対して、この発明と同一の範囲内において、あるいは均等の範囲内において、種々の修正や変形を加えることが可能である。
【産業上の利用可能性】
【０１２５】
本発明に係るハウリング抑圧装置は、マイクロホンとスピーカとを有する各種音響装置において、スピーカとマイクロホンとの間の音響結合により発生するハウリングを抑圧するハウリング抑圧装置等として有用である。
【符号の説明】
【０１２６】
１０１，８０１    マイクロホン
１０２，８０２    減算器
１０３    音響処理部
１０４    アンプ
１０５，８０４    スピーカ
１０６，８０５    遅延器
１０７，８０６    適応フィルタ
１０８    係数更新制御部
２０１，３０１，３０２，７０１    入力端子
２０２    レベル算出部
２０３    信号立上り検出部
２０４    余韻区間検出部
２０５，５０２，６０３    状態判定部
２０６    更新速度制御部
２０７，３０６，７０５    出力端子
３０３    区間検出開始判定部
３０４    最大値算出部
３０５，４０２    余韻区間判定部
４０１    最小値算出部
５０１    レベル判定部
６０１    周波数分析部
６０２    ピーク検出部
７０２    レベル算出部
７０３    特徴分析部
７０４    ピーク判定部
８０３    補聴器プロセッサ
８０７    自己相関算出部
８０８    閾値判定部
８０９    更新制御部
【図１】
0005975290.tif 000002
【図２】
0005975290.tif 000003
【図３】
0005975290.tif 000004
【図４】
0005975290.tif 000005
【図５】
0005975290.tif 000006
【図６】
0005975290.tif 000007
【図７】
0005975290.tif 000008
【図８】
0005975290.tif 000009
【図９】
0005975290.tif 000010
【図１０】
0005975290.tif 000011
【図１１】
0005975290.tif 000012
【図１２】
0005975290.tif 000013
【図１３】
0005975290.tif 000014
【図１４】
0005975290.tif 000015
【図１５】
0005975290.tif 000016
【図１６】
0005975290.tif 000017
【図１７】
0005975290.tif 000018
【図１８】
0005975290.tif 000019
【図１９】
0005975290.tif 000020