JP5927558B2 - ハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法 - Google Patents

ハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法 Download PDF

Info

Publication number
JP5927558B2
JP5927558B2 JP2013503370A JP2013503370A JP5927558B2 JP 5927558 B2 JP5927558 B2 JP 5927558B2 JP 2013503370 A JP2013503370 A JP 2013503370A JP 2013503370 A JP2013503370 A JP 2013503370A JP 5927558 B2 JP5927558 B2 JP 5927558B2
Authority
JP
Japan
Prior art keywords
howling
input signal
value
level
estimated value
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.)
Active
Application number
JP2013503370A
Other languages
English (en)
Other versions
JPWO2012120815A1 (ja
Inventor
浦 威史
威史 浦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JPWO2012120815A1 publication Critical patent/JPWO2012120815A1/ja
Application granted granted Critical
Publication of JP5927558B2 publication Critical patent/JP5927558B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/02Circuits for transducers, loudspeakers or microphones for preventing acoustic reaction, i.e. acoustic oscillatory feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R25/00Deaf-aid sets, i.e. electro-acoustic or electro-mechanical hearing aids; Electric tinnitus maskers providing an auditory perception
    • H04R25/45Prevention of acoustic reaction, i.e. acoustic oscillatory feedback
    • H04R25/453Prevention of acoustic reaction, i.e. acoustic oscillatory feedback electronically

Landscapes

  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Otolaryngology (AREA)
  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Telephone Function (AREA)

Description

本発明は、ハウリングの発生を検出するハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法に関する。
マイクロホンに入力された音声を増幅してスピーカから出力する音響装置は、スピーカの出力音がマイクロホンへ回り込む場合に、ハウリングが発生することがある。これは、スピーカとマイクロホンとの間で音響結合が発生し、音響的なフィードバックループが形成されるためである。
ハウリング音は、大きい連続音であり、聞く者に不快感を与える。そこで、ハウリング音を抑制するための技術は、各種の手段が存在する。しかし、聞き手がハウリング音の発生を認識する前にハウリング音を高精度かつ高速に検出して抑制することは難しい。
ハウリングの発生を検出する技術は、例えば、特許文献1に記載されている。特許文献1に記載の技術(以下「従来技術」という)は、マイクロホンからの入力信号の信号レベルを算出し、算出された信号レベルを、予め定めた閾値と比較する。そして、従来技術は、信号レベルが閾値を超えている状態が所定時間継続したことを条件として、入力信号にハウリングが発生したと判定する。このような技術を用いることにより、ハウリング音は、抑制することができる。
特開平7−254870号公報
しかしながら、従来技術では、マイクロホンの音響環境によって、ハウリングを高精度に検出することができないという課題がある。その理由は、周囲に音声や騒音等があるとき、ハウリングが発生していないにもかかわらず信号レベルが閾値を超えてしまい、ハウリングが発生しているとの誤検出が発生し得るからである。また、逆に、このような誤検出を防ぐために高い閾値を設定してしまうと、ハウリングが検出され難くなるからである。
本発明の目的は、ハウリングの発生を高精度に検出することである。
本発明のハウリング検出装置は、入力信号から、所定の時間ごとに、前記入力信号の信号レベルである入力信号レベルを算出する信号レベル算出部と、前記入力信号レベルから時間とともに所定量漸増あるいは漸減する値である、レベル変動推定値を算出するレベル変動推定値算出部と、前記レベル変動推定値から、前記レベル変動推定値に応じて変化するレベル閾値を算出する閾値算出部と、前記入力信号レベルが前記レベル閾値を超えている状態が所定の時間継続したことを条件として、前記入力信号にハウリングが発生したと判定するハウリング判定部とを有する。
本発明のハウリング検出方法は、入力信号から、所定の時間ごとに、前記入力信号の信号レベルである入力信号レベルを算出するステップと、前記入力信号レベルから時間とともに所定量漸増あるいは漸減する値である、レベル変動推定値を算出するステップと、前記レベル変動推定値から、前記レベル変動推定値に応じて変化するレベル閾値を算出するステップと、前記入力信号レベルが前記レベル閾値を超えている状態が所定の時間継続したことを条件として、前記入力信号にハウリングが発生したと判定するステップとを有する。
本発明によれば、ハウリングの発生を高精度に検出することができる。
本発明の実施の形態1に係るハウリング検出装置の構成の一例を示すブロック図 本実施の形態1に係るハウリング検出装置の動作の一例を示すフローチャート 本実施の形態1におけるレベル変動推定値・閾値算出処理の一例を示すフローチャート 本実施の形態1の変形例1におけるレベル変動推定値・閾値算出処理の一例を示すフローチャート 本実施の形態1の変形例2におけるレベル変動推定値・閾値算出処理の一例を示すフローチャート 本実施の形態1の変形例3におけるレベル変動推定値・閾値算出処理の一例を示すフローチャート 本実施の形態1の変形例3におけるハウリング音に対する各信号の状態の一例を示す図 本実施の形態1の変形例3における電話着信音に対する各信号の状態の一例を示す図 本実施の形態1の変形例3における風鈴の音に対する各信号の状態の一例を示す図 本発明の実施の形態2に係るハウリング検出装置の構成の一例を示すブロック図 本実施の形態2に係るハウリング検出装置の動作の一例を示すフローチャート 本実施の形態2における周波数ピーク検出処理の一例を示すフローチャート 本発明の実施の形態3に係るハウリング抑制装置の構成を示すブロック図 本発明の実施の形態4に係るハウリング抑制装置の構成を示すブロック図
以下、本発明の各実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
図1は、本実施の形態に係るハウリング検出装置の構成の一例を示すブロック図である。
図1において、ハウリング検出装置100は、入力端子200、信号レベル算出部310、レベル変動推定値算出部320、閾値算出部330、ハウリング判定部340、および出力端子400を有する。
入力端子200は、マイクロホン(図示せず)等の音声信号を出力する機器に接続するための端子である。入力端子200は、接続するマイクロホンから出力された音声信号を入力し、信号レベル算出部310へ出力する。以下、入力端子200が入力した音声信号は、単に「入力信号」という。
信号レベル算出部310は、入力信号から、所定の時間ごとに、入力信号の信号レベルである入力信号レベルを算出する。具体的には、信号レベル算出部310は、入力信号の単位時間ごとのパワーあるいは絶対値である入力信号レベルを算出し、レベル変動推定値算出部320およびハウリング判定部340へ出力する。
レベル変動推定値算出部320は、レベル変動推定値を算出し、閾値算出部330へ出力する。
ここで、レベル変動推定値は、入力信号レベルから時間とともに所定量漸増あるいは漸減する値である。より具体的には、レベル変動推定値は、例えば、入力信号レベルの極小値から所定量漸増する値、入力信号レベルの極大値から所定量漸減する値、および、入力信号レベルの平均値から所定量漸減あるいは漸増する値のうちの1つである。すなわち、レベル変動推定値は、入力信号レベルの推移に対応して逐次更新され、かつ、所定の時間あたりの更新量(本実施の形態では、増加量とする)が制限された状態で追従する値である。言い換えると、レベル変動推定値は、入力信号レベルの時間的変動の推定値である。
ここでは、レベル変動推定値算出部320は、入力信号レベルの極小値の推移を入力信号レベルの推移(入力信号レベルの変動の範囲の推移)として扱うものとする。すなわち、ここでは、入力信号レベルの極小値から時間とともに所定量漸増する値を、レベル変動推定値とした場合について、説明する。
閾値算出部330は、レベル変動推定値から、レベル変動推定値に応じて変化する第1の閾値(レベル閾値)を算出し、ハウリング判定部340へ出力する。すなわち、レベル変動推定値は、第1の閾値の基準となる基準信号である。
ハウリング判定部340は、入力信号レベルが第1の閾値を超えている状態の継続時間を計測する。そして、ハウリング判定部340は、計測した継続時間が所定の時間閾値に到達したことを条件として、入力信号にハウリングが発生したと判定する。そして、ハウリング判定部340は、判定結果を、ハウリングの検出結果として、出力端子400へ出力する。
出力端子400は、アンプ等、上述のマイクロホンに入力された音声を増幅してスピーカから出力するための端子である。出力端子400は、ハウリングを抑制する機能を有する音響制御装置に対して、ハウリングの検出結果を出力する。
なお、ハウリング検出装置100は、例えば、CPU(central processing unit)、およびRAM(random access memory)等の記憶媒体などを含むコンピュータである。この場合、ハウリング検出装置100は、記憶する制御プログラムをCPUが実行することによって動作する。また、信号レベル算出部310、レベル変動推定値算出部320、閾値算出部330、およびハウリング判定部340により構成される機能部は、ハウリング検出装置100に組み込まれたハウリング検出部300として扱ってもよい。
このようなハウリング検出装置100は、入力信号レベルの極小値から時間とともに所定量漸増する値である、レベル変動推定値を算出する。そして、ハウリング検出装置100は、このレベル変動推定値に応じて変化する閾値を超えている状態が、所定の時間閾値を超えて継続したか否かに基づいて、ハウリング判定を行う。これにより、ハウリング検出装置100は、騒音のレベルによらずハウリングの誤検出および不検出の両方を低減することができる。
その理由は以下の通りである。ハウリングは発生すると、突出したレベルで持続する。以下、このような、ハウリングの特徴として見られる入力信号レベルの状態は「ハウリング状態」といい、ハウリング状態の区間は「ハウリング区間」という。また、ハウリング音と区別すべき音として、日常生活において一般的に存在する各種音は、「騒音」という。そして、騒音が発生している状態は、「騒音状態」という。
上述の第1の閾値は、入力信号レベルの極小値の推移に追従するレベル変動推定値に基づき、推移する。入力信号レベルの極小値は、騒音が大きいとき大きくなる。したがって、このような第1の閾値との比較によるハウリング判定は、騒音をハウリングと誤検出する可能性を低減することができる。
ところが、このようなハウリング判定は、ハウリングを検出し損なう可能性を増大させ得る。そこで、レベル変動推定値算出部320は、上述のように、入力信号レベルの変動の範囲に対応するレベル変動推定値を算出する。具体的には、レベル変動推定値算出部320は、入力信号レベルの極小値から時間とともに所定量漸増するレベル変動推定値、つまり、入力信号レベルの増加に対する低い追従性を有するレベル変動推定値を生成する。
ハウリング区間においては、入力信号レベルは、上述の通り突出したレベルで持続するため、所定の時間、最大値に近い値を持続する。そこで、本実施の形態に係るハウリング検出装置100は、レベル変動推定値に対して入力信号レベルが小さければ、レベル変動推定値を入力信号レベルの値に置き換える。また、ハウリング検出装置100は、レベル変動推定値に対して入力信号レベルが大きければ、レベル変動推定値を緩やかに上昇させる。このようなレベル変動推定値の特性は、ハウリング区間において、入力信号レベルの変動の範囲の最大値よりも常に小さくなるような変動閾値を設定することを可能にし、ハウリングを検出し損なう可能性を低減することができる。
ところが、このようなハウリング判定は、入力信号レベルの大きい騒音をもハウリングと誤検出してしまうおそれがある。そこで、ハウリング判定部340は、上述のように、入力信号レベルが第1の閾値を超えている状態が所定の時間閾値を超えて継続して初めて、入力信号にハウリングが発生したと判定する。騒音の多くは、一時的または断続的に入力信号レベルが大きくなるものであって、ハウリング音のように突出したレベルで持続するものではない。したがって、ハウリング検出装置100は、このようなハウリング判定を行うことにより、ハウリングの誤検出および不検出の両方を低減することができる。
次に、ハウリング検出装置100の動作について説明する。
図2は、ハウリング検出装置100の動作の一例を示すフローチャートである。
まず、ステップS1100において、信号レベル算出部310は、入力信号から入力信号レベルを算出する。信号レベル算出部310は、1サンプルごと(例えば16[kHz]サンプリング=0.0625[ms]ごと)またはフレーム(複数サンプル)ごとに、入力信号のパワーあるいは絶対値を求めることにより、入力信号レベルの算出を行う。したがって、ハウリング検出装置100は、ステップS1100からステップS2000までの処理を、所定のサンプリングタイムごとに、繰り返して行う。
そして、ステップS1200において、レベル変動推定値算出部320は、レベル変動推定値・閾値算出処理を行う。レベル変動推定値・閾値算出処理は、ここでは、入力信号レベルの極小値に追従するレベル変動推定値を算出する処理である。
図3は、ステップS1200のレベル変動推定値・閾値算出処理の一例を示すフローチャートである。
ステップS1210において、レベル変動推定値算出部320は、現在の周期で算出された入力信号レベルが、1つ前の周期で算出されたレベル変動推定値(以下、単に「レベル変動推定値」という)を超えているか否かを判断する。なお、現在の周期で算出された入力信号レベルは、以下、単に「入力信号レベル」という。レベル変動推定値算出部320は、入力信号レベルがレベル変動推定値を超えている場合(S1210:YES)、ステップS1220へ進む。また、レベル変動推定値算出部320は、入力信号レベルがレベル変動推定値を超えていない場合、または、最初の周期であってまだレベル変動推定値が算出されていない場合(S1210:NO)、ステップS1230へ進む。
ステップS1220において、レベル変動推定値算出部320は、レベル変動推定値に対して予め定めた第1の係数を乗じることにより得られる値でレベル変動推定値を更新して、ステップS1240へ進む。
ここで、第1の係数は、入力信号レベルの極小値をトレース可能な程度の値であり、1を超える値である。すなわち、第1の係数は、入力信号レベルが大きい状態が継続している場合の、レベル変動推定値の増加の度合い(傾き)を決めるものである。
より具体的には、第1の係数は、レベル変動推定値を、電車の走行音の場合のような緩やかな入力信号レベルの増加に対しては、ほぼリアルタイムに追従させる値である。そして、なおかつ、第1の係数は、レベル変動推定値を、ハウリング音の場合のような急激な入力信号レベルの増加に対しては、遅れて追従させるような値である。第1の係数は、本実施の形態では、実験に基づいて決定された値とする。
なお、レベル変動推定値算出部320は、レベル変動推定値に対して予め定めた定数を加算した値で、レベル変動推定値を更新してもよい。この場合、第1の係数は、0を超える値である。
ステップS1230において、レベル変動推定値算出部320は、入力信号レベルでレベル変動推定値を更新して、ステップS1240へ進む。
ステップS1240において、閾値算出部330は、更新されたレベル変動推定値に対して予め定めた第2の係数を乗じることにより得られる値を、第1の閾値として算出して、図2の処理へ戻る。ここで、第2の係数は、1を超える値である。そして、なおかつ、第2の係数は、第1の係数により定まるレベル変動推定値の入力信号レベル推移に対する追従性において、ハウリング区間の少なくとも初期には入力信号レベルが第1の閾値以下とならないような値である。
そして、図2のステップS1400において、ハウリング判定部340は、入力信号レベルが第1の閾値を超えているか否かを判定する。ハウリング判定部340は、入力信号レベルが第1の閾値を超えている場合(S1400:YES)、ステップS1500へ進む。また、ハウリング判定部340は、入力信号レベルが第1の閾値を超えていない場合(S1400:NO)、ステップS1600へ進む。
ステップS1500において、ハウリング判定部340は、第1のカウンタ値をインクリメントして、ステップS1700へ進む。
ステップS1600において、ハウリング判定部340は、第1のカウンタ値をリセットして、ステップS1700へ進む。
上述の通り、ハウリング検出装置100は、各処理を所定のサンプリングタイムごとに繰り返して行うため、第1のカウンタ値は、入力信号レベルが連続して第1の閾値を超えている時間の長さを示す。例えば、サンプリングタイムが0.0625[ms]である場合、1600という第1のカウンタ値は、100[ms]の間連続して入力信号レベルが第1の閾値を超えていることを示す。
ステップS1700において、ハウリング判定部340は、第1のカウンタ値が、予め定めた第2の閾値(時間閾値)を超えているか否かを判断する。
ここで、第2の閾値は、第1の係数および第2の係数により定まる第1の閾値の入力信号レベル推移に対する追従性において、ハウリング区間の初期に入力信号レベルが連続して第1の閾値を超える最小時間よりも短い時間に対応する値である。そして、なおかつ、第2の閾値は、上記追従性において、騒音を含む入力信号レベルが連続して第1の閾値を超える最大時間よりも長い時間に対応する値である。第2の閾値は、例えば、0.5秒〜1秒に相当する値である。
なお、ハウリング音を検出し騒音を検出しないような、第1の係数、第2の係数、および第2の閾値の組み合わせは、本実施の形態では、様々な騒音環境について実験やシミュレーションを行うことで求めるものとする。
ハウリング判定部340は、第1のカウンタ値が第2の閾値を超えている場合(S1700:YES)、ステップS1800へ進む。また、ハウリング判定部340は、第1のカウンタ値が第2の閾値を超えていない場合(S1700:NO)、ステップS1900へ進む。
ステップS1800において、ハウリング判定部340は、ハウリングが発生したと判定する。そして、ハウリング判定部340は、ハウリングが発生した旨を示す判定結果を、出力端子400を介して出力して、ステップS2000へ進む。これは、入力信号レベルが大きい状態が時間的に十分に継続したといえるからである。
ステップS1900において、ハウリング判定部340は、ハウリングが発生していないと判定し、そのままステップS2000へ進む。これは、入力信号レベルが大きい状態が発生していない、または、発生していたとしても時間的にまだ十分に継続していないといえるからである。
なお、ハウリング判定部340は、ハウリングが発生していない旨を示す判定結果を、出力端子400を介して出力してもよい。ここでは、ハウリング判定部340は、ハウリングが発生していない状態からハウリングが発生している状態へ移行するごとに、ハウリングが発生していることを示す検出フラグをオンにするものとする。そして、ハウリング判定部340は、ハウリングが発生している状態からハウリングが発生していない状態へ移行するごとに、検出フラグをオフにするものとする。
そして、ステップS2000において、信号レベル算出部310は、ユーザ操作等によりハウリング判定の処理の停止を指示されたか否かを判断する。信号レベル算出部310は、処理の終了を指示されていない場合(S2000:NO)、ステップS1100へ戻り、次の周期の処理を行う。また、信号レベル算出部310は、処理の指示を指示された場合(S2000:YES)、一連の処理を終了する。
上述の処理により、ハウリング検出装置100は、1つ前の周期の入力信号に基づいて第1の閾値を取得し、入力信号レベルがこれを超えている状態が所定の時間継続したか否かに基づいて、ハウリングの発生を判定することができる。
以上、説明したように、本実施の形態に係るハウリング検出装置100は、入力信号レベルの極小値から時間とともに所定量漸増する値である、レベル変動推定値を算出する。次に、ハウリング検出装置100は、算出したレベル変動推定値に応じて変化する閾値を超えている状態が所定の時間閾値を超えて継続したか否かに基づいて、ハウリング判定を行う。これにより、ハウリング検出装置100は、騒音のレベルによらずハウリングの誤検出および不検出の両方を低減することができる。
上述のように、従来装置は、予め定めた閾値を用いて閾値判定を行っており、そのハウリング発生の判定は、レベル依存するようになっている。そのため、従来装置を用いて騒音環境下でも安定して判定を行うためには、ハウリングのみを精度良く検出するよう、音響環境にあわせて逐一閾値を調整する必要がある。
これに対し、本実施の形態に係るハウリング検出装置100は、ハウリング検出用の閾値を逐一調整することなく、かつ、ハウリングの誤検出および不検出の両方を低減することができる。したがって、本実施の形態に係るハウリング検出装置100は、騒音環境下でも安定してハウリングを検出することができ、従来技術に比べてハウリングの発生をより高精度に検出することができる。
なお、入力信号レベルの変動の範囲を表す情報として扱われる値は、入力信号レベルの極小値に限定されない。以下、変形例として、レベル変動推定値を入力信号レベルの極小値以外の値の推移から求める場合のレベル変動推定値・閾値算出処理について説明する。
(実施の形態1の変形例1)
実施の形態1の変形例1は、レベル変動推定値を入力信号レベルの極大値の推移から求める場合の例である。すなわち、本変形例は、入力信号レベルの極大値から時間とともに所定量漸減する値を、レベル変動推定値として算出する例である。
図4は、本変形例におけるレベル変動推定値・閾値算出処理の一例を示すフローチャートであり、図3に対応するものである。
レベル変動推定値算出部320は、入力信号レベルを入力されると(図2のステップS1100)、ステップS1210aへ進む。
ステップS1210aにおいて、レベル変動推定値算出部320は、入力信号レベルがレベル変動推定値未満となっているか否かを判断する。レベル変動推定値算出部320は、入力信号レベルがレベル変動推定値未満となっている場合(S1210a:YES)、ステップS1220aへ進む。また、レベル変動推定値算出部320は、入力信号レベルがレベル変動推定値未満となっていない場合、または、最初の周期であってまだレベル変動推定値が算出されていない場合(S1210a:NO)、ステップS1230aへ進む。
ステップS1220aにおいて、レベル変動推定値算出部320は、レベル変動推定値に対して予め定めた第3の係数を乗じることにより得られる値でレベル変動推定値を更新して、図2の処理へ戻る。ここで、第3の係数は、レベル変動推定値を、ハウリング音の緩やかな入力信号レベルの減少に対しては、ほぼリアルタイムに追従させ、電車の騒音の立ち下がり部分等の入力信号レベルの減衰に対しては、遅れて追従させるような値である。
なお、レベル変動推定値算出部320は、レベル変動推定値に対して予め定めた定数を減算した値で、レベル変動推定値を更新してもよい。この場合、第3の係数は、0を超える値である。
ステップS1230aにおいて、レベル変動推定値算出部320は、入力信号レベルでレベル変動推定値を更新して、ステップS1240aへ進む。
ステップS1240aにおいて、閾値算出部330は、更新されたレベル変動推定値に対して予め定めた第4の係数を乗じることにより得られる値を、第1の閾値として算出して、図2の処理へ戻る。ここで、第4の係数は、0を超え1未満の値である。そして、第4の係数は、なおかつ、第3の係数により定まるレベル変動推定値の入力信号レベル推移に対する追従性において、ハウリング区間の少なくとも直後には入力信号レベルが第1の閾値以上とならないような値である。
また、ステップS1700で用いられる第2の閾値は、第1の係数および第3の係数により定まる第1の閾値の入力信号レベル推移に対する追従性において、ハウリング音と騒音とを峻別することができるような値である。
このように、ハウリング検出装置100は、入力信号レベルの極大値に基づいて、入力信号レベルの推移に遅れて追従するような第1の閾値を算出することができる。
特に、ハウリング検出装置100は、入力信号レベルの減少に対して遅れて追従するような第1の閾値を算出する。これにより、ハウリング検出装置100は、電車の騒音の立ち下がり部分等の緩やかな入力信号レベルの減衰において、ハウリングが発生したとの誤検出を防ぐことができる。すなわち、ハウリング検出装置100は、ハウリングが突出したレベルで持続することから、入力信号レベルの包絡線情報(大きさと時間推移)に応じて検出閾値を逐次算出する。
これにより、ハウリング検出装置100は、ハウリング検出用の閾値を逐一調整することなく、かつ、ハウリングの誤検出および不検出の両方を低減することができる。
(実施の形態1の変形例2)
実施の形態1の変形例2は、入力信号レベルの長時間平均値の推移を、入力信号レベルの推移として扱う場合の例である。すなわち、本変形例は、入力信号レベルの平均値から時間とともに所定量漸増あるいは漸減する値を、レベル変動推定値として算出する例である。
図5は、本変形例におけるレベル変動推定値・閾値算出処理の一例を示すフローチャートであり、図3に対応するものである。
レベル変動推定値算出部320は、入力信号レベルを入力されると(図2のステップS1100)、ステップS1210bへ進む。
ステップS1210bにおいて、レベル変動推定値算出部320は、入力信号レベルの時系列データに対して平滑化処理を行う。そして、レベル変動推定値算出部320は、平滑化処理により得られる値でレベル変動推定値を更新する。平滑化処理により得られる値は、入力信号レベルの長時間平均値である。なお、まだ長時間平均値を算出するのに充分な周期が経過していない間は、レベル変動推定値算出部320は、予め定めた初期値をレベル変動推定値に設定するようにしてもよい。
なお、平滑化後の、現在の周期kにおけるレベル変動推定値N(k)は、例えば、以下の式(1)に示す移動平均の算出を行うことにより可能である。
N(k)=(1−α)×X(k)+α×N(k−1) ・・・(1)
ここで、X(k)は、現在の周期kにおける入力信号レベルである。N(k−1)は、1つ前の周期k−1におけるレベル変動推定値である。また、αは、入力信号レベルの平均値をトレース可能な程度の値であり、0<<α<1の関係を満たす忘却係数である。より具体的には、αは、レベル変動推定値を、電車の騒音等の緩やかな更新量での入力信号レベルの変化に対して、ほぼリアルタイムに追従させる。つまり、αは、ハウリング音の急激な更新量での入力信号レベルの変化に対して、遅れて追従させるような値である。
そして、ステップS1240bにおいて、閾値算出部330は、更新されたレベル変動推定値に対して予め定めた第5の係数を乗じることにより得られる値を、第1の閾値として算出して、図2の処理へ戻る。
ここで、第5の係数は、忘却係数αにより定まるレベル変動推定値の入力信号レベル推移に対する追従性において、ハウリング区間の少なくとも初期には入力信号レベルが第1の閾値以下とならないような値である。第5の係数は、例えば1であり、この場合、閾値算出部330は、レベル変動推定値をそのまま第1の閾値とする。
なお、閾値算出部330は、レベル変動推定値に第5の係数として1以上の値を乗じて得られる値、または、レベル変動推定値に予め定めた0以上の定数を加算して得られる値を、第1の閾値としてもよい。
このように、ハウリング検出装置100は、入力信号レベルの長時間平均値に基づいて、入力信号レベルの推移に対して遅れて追従するような第1の閾値を算出することができる。
(実施の形態1の変形例3)
実施の形態1の変形例3は、騒音の開始時の入力信号レベルの立ち上がりに対して、レベル変動推定値をほぼリアルタイムに追従させるようにする場合の例である。
図6は、本変形例におけるレベル変動推定値・閾値算出処理の一例を示すフローチャートであり、図3に対応するものである。
ハウリング検出装置100は、レベル変動推定値を更新すると(ステップS1210〜S1230)、ステップS1231cへ進む。
ステップS1231cにおいて、レベル変動推定値算出部320は、入力信号レベルを入力されると(図2のステップS1100)、レベル変動推定値が予め定めた第3の閾値未満となっているか否かを判断する。
ここで、第3の閾値は、0以上の値であり、例えば、静かな音響環境下における騒音レベルに相当する値である。
レベル変動推定値算出部320は、レベル変動推定値が第3の閾値未満となっている場合(S1231c:YES)、ステップS1232cへ進む。また、レベル変動推定値算出部320は、レベル変動推定値が第3の閾値未満となっていない場合、または、最初の周期であってまだレベル変動推定値が算出されていない場合(S1231c:NO)、ステップS1233cへ進む。
ステップS1232cにおいて、レベル変動推定値算出部320は、第2のカウンタ値をインクリメントして、ステップS1234cへ進む。
ステップS1233cにおいて、レベル変動推定値算出部320は、第2のカウンタ値をリセットして、ステップS1234cへ進む。
すなわち、第2のカウンタ値は、レベル変動推定値が第3の閾値を超えない状態の継続時間を示す値となる。
そして、ステップS1234cにおいて、レベル変動推定値算出部320は、第2のカウンタ値が予め定めた第4の閾値を超えたか否かを判断する。
ここで、第4の閾値は、例えば、0.1秒〜0.5秒に相当する値であり、騒音レベルが小さくマイクロホンへの入力信号もないほぼ無音の状態が継続しているか判断するための値を設定する。
レベル変動推定値算出部320は、第2のカウンタ値が第4の閾値を超えた場合(S1234c:YES)、ステップS1235cへ進む。また、レベル変動推定値算出部320は、第2のカウンタ値が第4の閾値を超えていない場合(S1234c:NO)、そのままステップS1240へ進み、図2の処理へ戻る。
ステップS1235cにおいて、レベル変動推定値算出部320は、レベル変動推定値を初期化、つまりレベル変動推定値を入力信号レベルに一致させて、ステップS1240へ進み、図2の処理へ戻る。
すなわち、レベル変動推定値は、レベル変動推定値が第3の閾値を超えない状態が所定の時間閾値を超えて継続している場合には、予め定めた所定の時間、入力信号レベルに追従させる状態となる。これは、入力信号レベルが小さな状態から急激に大きくなったときに、第1の閾値の基となるレベル変動推定値がこれに追従していないと、ハウリングが発生したとの誤判定が成される可能性があるからである。
このようなレベル変動推定値・閾値算出処理により、ハウリング検出装置100は、レベル変動推定値を、入力信号レベルの立ち上がりにおいてはほぼリアルタイムに追従させつつ、その後は遅れて追従させるようにすることができる。
これにより、ハウリング検出装置100は、電話着信音のようにその開始時に急激に入力信号レベルが増加する騒音を、ハウリング音と誤検出するのを防ぎつつ、ハウリング音を検出することができる。したがって、ハウリング検出装置100は、ハウリング検出を更に高精度化することができる。
次に、変形例3に係るハウリング検出装置100において、ハウリングの発生を高精度に検出することができることについて説明する。
ここでは、ハウリング音が含まれる第1の入力信号と、電話着信音が含まれる第2の入力信号と、風鈴の音が含まれる第3の入力信号とを想定する。
図7は、ハウリング音が含まれる第1の入力信号の場合における各信号の状態の一例を示す図である。図7Aは、入力信号の時間推移を示す。図7Bは、入力信号レベル、レベル変動推定値、および第1の閾値の時間推移を示す。図7Cは、第1のカウンタ値の時間推移を示す。図7Dは、検出フラグおよび初期化フラグの時間推移を示す。ここで、初期化フラグとは、レベル変動推定値を初期化する状態にあるか否かを表すためのものである。
第1の入力信号911において、5秒目から10秒目の区間は、ハウリング区間である。図7Aに示すように、第1の入力信号911は、ハウリング区間においてその振幅が大きくなっている。したがって、図7Bに示すように、入力信号レベル912は、ハウリング区間においてレベルが大きい状態を維持する(S1210:YES)。
すると、図7Bに示すように、レベル変動推定値913は、ハウリング区間において徐々に大きくなっていき(S1220)、第1の閾値914も徐々に大きくなっていく(S1240)。
第1の閾値914が入力信号レベル912に到達する時刻tまでの間、入力信号レベル912は第1の閾値914を超えていると判定され続ける(S1400:YES)。その結果、第1のカウンタ値915は、徐々に増加していく(S1500)。
そして、図7Cに示すように、第1のカウンタ値915が時刻tの前の時刻tに第2の閾値901を超えると(S1700:YES)、図7Dに示すように、検出フラグ916はオンとなる(S1800)。また、第1の閾値914が入力信号レベル912に到達する時刻tを過ぎると(S1400:NO)、第1のカウンタ値915は、リセットされて第2の閾値901以下となる(S1600、S1700:NO)。
この結果、図7Dに示すように、検出フラグ916は、オフとなる(S1900)。
なお、この例では、レベル変動推定値913は継続して第3の閾値未満にはなっていないものとする(S1231c:NO)。この場合、図7Cに示すように、第2のカウンタ値917は、増加せず(S1233c)、第4の閾値903を超えない(S1234c:NO)。
この結果、図7Dに示すように、初期化フラグ918は、オフの状態を維持する。
図8は、電話着信音は含まれるがハウリング音は含まれない第2の入力信号における、各信号の状態の一例を示す図であり、図7に対応するものである。
第2の入力信号921において、時刻tから時刻tまでの区間は、電話着信音が鳴っている区間(以下「着信音区間」という)である。
図8Aに示すように、電話着信音は連続音ではないため、第2の入力信号921の振幅は、着信音区間において、大きい状態と小さい状態とを短い周期で交互に繰り返す。したがって、図8Bに示すように、着信音区間において、入力信号レベル922が第1の閾値924を超えているとの判定と、超えていないとの判定とが、短い周期で交互に繰り返される(S1400:NO)。
この結果、図8Cに示すように、第1のカウンタ値925は増加せず(S1600)、第1のカウンタ値925が第2の閾値901を超えることはない(S1700:NO)。
ところが、レベル変動推定値923が、時刻tの第2の入力信号921の立ち上がりに伴う入力信号レベル922の立ち上がりに追従するまでの間は、入力信号レベル922は、レベル変動推定値923を超えた状態となる。したがって、レベル変動推定値923の入力信号レベル922の立ち上がりに対する追従が遅いと、ハウリング発生との誤検出がされてしまうおそれがある。
そこで、上述の初期化により、図8Dに示すように、初期化フラグ928は、入力信号レベル922の立ち上がりの時刻tまではオンの状態となる。すなわち、図8Bに示すように、レベル変動推定値923および第1の閾値924は、入力信号レベル922の立ち上がりに素早く追従する。
そして、その後は、初期化フラグ928は、レベル変動推定値923が第3の閾値未満である状態が継続しないことから、オフの状態となる。すなわち、レベル変動推定値923は、急激な入力信号レベルの増加に対し遅れて追従する。
したがって、図8Dに示すように、第2の入力信号921の立ち上がり時を含め、検出フラグ926は常にオフとなる(S1900)。
このように、本実施の形態に係るハウリング検出装置100においては、電話着信音のように断続的に入力信号レベルが大きくなる騒音は、ハウリング音として誤検出されない。
図9は、風鈴の音は含まれるがハウリング音は含まれない第3の入力信号における、各信号の状態の一例を示す図であり、図7に対応するものである。
第3の入力信号931において、風鈴の音が鳴っている区間が連続しているものとする。図9Aに示すように、第3の入力信号931の振幅は、風鈴の音が開始する時刻tには大きいが、速やかに減衰し、図9Bに示すように、入力信号レベル932も短時間のうちに低い状態へ推移する(S1210:NO)。
つまり、図9Bに示すように、入力信号レベル932は、時刻tの直後に、レベル変動推定値933に基づいて算出される第1の閾値934を超えていても(S1400:YES)、すぐに第1の閾値934以下となる(S1400:NO)。したがって、図9Cに示すように、第1のカウンタ値935は、時刻tの直後には増加しても(S1500)、すぐにリセットされることになる(S1600)。
この結果、第1のカウンタ値935は第2の閾値901に到達することはなく(S1700:NO)、図9Dに示すように、検出フラグ936はオフの状態を維持する。
なお、この例では、レベル変動推定値933は継続して第3の閾値未満にはなっていないものとする(S1231c:NO)。この場合、図9Cに示すように、第2のカウンタ値937は、増加せず(S1233c)、第4の閾値903を超えない(S1234c:NO)。この結果、図9Dに示すように、初期化フラグ938はオフの状態を維持する。
このように、本実施の形態に係るハウリング検出装置100においては、風鈴の音のように入力信号レベルの減衰が速い騒音は、ハウリング音として誤検出されない。
(実施の形態2)
本発明の実施の形態2は、入力信号の周波数ピークを用いてハウリング検出の精度を向上させるようにしたハウリング検出装置である。
図10は、本実施の形態に係るハウリング検出装置の構成の一例を示すブロック図であり、実施の形態1の図1に対応するものである。図1と同一部分には、同一符号を付し、これについての説明を省略する。
図10において、本実施の形態に係るハウリング検出装置100dは、入力端子200、実施の形態1のハウリング検出部300、周波数ピーク検出部500d、ハウリング総合判定部600d、および出力端子400を有する。
本実施の形態では、入力端子200は、入力信号を、ハウリング検出部300だけでなく、周波数ピーク検出部500dへも出力する。また、ハウリング検出部300は、ハウリングの検出結果を、出力端子400ではなく、ハウリング総合判定部600dへ、第1の判定結果として出力する。
周波数ピーク検出部500dは、入力信号の周波数ピークの有無に基づいて、入力信号にハウリングが発生したか否かを判定する。周波数ピーク検出部500dは、周波数分析部510d、レベル算出部520d、平均レベル算出部530d、レベル比算出部540d、およびハウリング判定部550dを有する。
周波数分析部510dは、入力信号を、周波数帯域を複数に分割した分割帯域ごとの周波数成分に変換または分割し、各分割帯域の周波数成分(以下、単に「周波数成分」という)を、レベル算出部520dへ出力する。
入力信号の各周波数成分への変換または分割の手法としては、時間信号を複数の周波数成分に変換または分割する公知の各種手法を用いることができる。公知の手法は、例えば、高速フーリエ変換、または、複数のFIR(finite impulse response)、IIR(infinite impulse response)フィルタから構成されるフィルタバンクなどを含む。
レベル算出部520dは、変換または分割した各周波数成分ごとに、単位時間ごとのパワーあるいは絶対値である入力信号レベルを算出する。レベル算出部520dは、算出した周波数成分ごとの入力信号レベルを、平均レベル算出部530dおよびレベル比算出部540dへ出力する。
平均レベル算出部530dは、複数の周波数成分の入力信号レベルの平均値を算出し、算出した平均値を、平均レベルとしてレベル比算出部540dへ出力する。
レベル比算出部540dは、複数の周波数成分の入力信号レベルのそれぞれについて、平均レベルに対する比(以下「レベル比」という)を算出し、算出した周波数成分ごとのレベル比を、ハウリング判定部550dへ出力する。
ハウリング判定部550dは、各周波数成分のレベル比に基づいて、入力信号にハウリングが発生したか否かを判定し、第2の判定結果を、ハウリングの検出結果として、ハウリング総合判定部600dへ出力する。
ハウリング総合判定部600dは、第1の判定結果と第2の判定結果との両方が、ハウリングが発生したとの判定結果を示すことを条件として、ハウリングが発生したとの最終判定結果を出力端子400へ出力する。
このようなハウリング検出装置100dは、ハウリング検出部300による判定結果と周波数ピーク検出部500dによる判定結果とを総合した結果を最終判定結果とするので、ハウリング検出の精度を向上させることができる。
なお、ハウリング検出装置100dは、入力端子200および出力端子400を除いた構成としてもよい。
次に、本実施の形態に係るハウリング検出装置100dの動作について説明する。
図11は、ハウリング検出装置100dの動作の一例を示すフローチャートであり、実施の形態1の図2に対応するものである。図2と同一部分には同一ステップ番号を付し、これについての説明を省略する。
ハウリング検出部300のハウリング判定部340は、第1のカウンタ値が第2の閾値を超えている場合(S1700:YES)、ステップS1800dへ進む。そして、ステップS1800dにおいて、ハウリング判定部340は、ハウリングが発生したとの第1の判定結果を、ハウリング総合判定部600dへ出力する。
また、ハウリング検出部300のハウリング判定部340は、第1のカウンタ値が第2の閾値を超えていない場合(S1700:NO)、ステップS1900dへ進む。そして、ステップS1900dにおいて、ハウリング判定部340は、ハウリングが発生していないとの第1の判定結果を、ハウリング総合判定部600dへ出力する。
そして、ステップS1910dにおいて、周波数ピーク検出部500dは、周波数ピーク検出処理を行う。周波数ピーク検出処理は、入力信号の周波数ピークの有無に基づいて、入力信号にハウリングが発生したか否かを判定する処理である。
なお、周波数ピーク検出部500dは、ハウリング検出部300による第1の判定までの処理(S1100〜S1900d)に対して、これよりも前に、または同時に、周波数ピーク検出処理を行ってもよい。この場合にも、周波数ピーク検出部500dは、ハウリング検出部300の判定の周期と同じ周期で、つまり、1サンプルごとまたはフレーム(複数サンプル)ごとに、周波数ピーク検出処理を行うようにする。
図12は、周波数ピーク検出処理の一例を示すフローチャートである。
まず、ステップS1911dにおいて、周波数分析部510dは、入力信号から、複数の分割帯域のそれぞれについて、周波数成分を抽出する。
そして、ステップS1912dにおいて、レベル算出部520dは、複数の周波数成分から、周波数成分ごとに、その周波数成分の入力信号レベルを算出する。
そして、ステップS1913dにおいて、平均レベル算出部530dは、複数の周波数成分の入力信号レベルから、その平均レベルを算出する。なお、このとき、平均レベル算出部530dは、複数の周波数成分の入力信号レベルに対して重み付けを行って、平均レベルを算出するようにしてもよい。
そして、ステップS1914dにおいて、レベル比算出部540dは、複数の周波数成分の入力信号レベルおよび平均レベルから、周波数成分ごとに、レベル比を算出する。
そして、ステップS1915dにおいて、ハウリング判定部550dは、周波数成分ごとに、そのレベル比が予め定めた第5の閾値を超えているか否かを判断する。
ここで、第5の閾値は、上記レベル比が他の周波数成分に比べて突出していると判別できる値を設定する。
ハウリング判定部550dは、レベル比が第5の閾値を超えている周波数成分については、ステップS1916dへ進む。また、ハウリング判定部550dは、レベル比が第5の閾値を超えていない周波数成分については、ステップS1917dへ進む。
ステップS1916dにおいて、ハウリング判定部550dは、周波数成分ごとに用意した第3のカウンタ値のうち、該当する第3のカウンタ値をインクリメントして、ステップS1918dへ進む。
ステップS1917dにおいて、ハウリング判定部550dは、該当する第3のカウンタ値をリセットして、ステップS1918dへ進む。
すなわち、第3のカウンタ値は、対応する周波数成分にピークが連続して発生している時間の長さを示す。
ステップS1918dにおいて、ハウリング判定部550dは、いずれかの周波数成分の第3のカウンタ値が、予め定めた第6の閾値を超えているか否かを判断する。
ここで、第6の閾値は、上述の、ハウリング区間よりも短く騒音状態の連続時間よりも長い所定の時間に相当する値であり、例えば、0.5秒〜1秒に相当する値である。
ハウリング判定部550dは、第3のカウンタ値が第6の閾値を超えている場合(S1918d:YES)、ステップS1919dへ進む。また、ハウリング判定部550dは、第3のカウンタ値が第6の閾値を超えていない場合(S1918d:NO)、ステップS1920dへ進む。
ステップS1919dにおいて、ハウリング判定部550dは、ハウリングが発生したとの第2の判定結果をハウリング総合判定部600dへ出力して、図11の処理へ戻る。
ステップS1920dにおいて、ハウリング判定部550dは、ハウリングが発生していないとの第2の判定結果をハウリング総合判定部600dへ出力して、図11の処理へ戻る。
図11のステップS1930dにおいて、ハウリング総合判定部600dは、ハウリング検出部300による第1の判定結果と、周波数ピーク検出部500dによる第2の判定結果とを入力する。そして、ハウリング総合判定部600dは、第1の判定結果と、第2の判定結果に基づいて、ハウリングが発生したか否かを総合判定する。
ハウリング総合判定部600dは、第1の判定結果および第2の判定結果の両方が、ハウリングが発生したとの判定結果を示す場合(S1930d:YES)、ステップS1940dへ進む。また、ハウリング総合判定部600dは、第1の判定結果および第2の判定結果の少なくとも一方が、ハウリングが発生したとの判定結果を示さない場合(S1930d:NO)、ステップS1950dへ進む。
ステップS1940dにおいて、ハウリング総合判定部600dは、ハウリングが発生したと総合判定し、その旨を示す判定結果を、出力端子400を介して出力して、ステップS2000へ進む。
ステップS1950dにおいて、ハウリング総合判定部600dは、ハウリングが発生していないと総合判定し、そのままステップS2000へ進む。
このような処理により、ハウリング検出装置100dは、ハウリング検出部300による判定結果と周波数ピーク検出部500dによる判定結果とを総合した結果を、最終判定結果として出力することができる。
このように、本実施の形態に係るハウリング検出装置100dは、騒音レベルに応じた閾値だけでなく、周波数ピークを用いてハウリング検出を行うので、ハウリングの誤検出を低減することができる。
なお、ハウリング判定部550dは、周波数ピークがどの周波数帯域で発生したか、つまり、第3のカウンタ値が第6の閾値を超えた周波数帯域を示すピーク周波数情報を、取得するようにしてもよい。この場合、ハウリング検出装置100dは、どの周波数帯域でハウリングが発生しているかを検出することが可能となる。
なお、ハウリング総合判定部600dは、第1の判定結果および第2の判定結果の両方がハウリング発生を示している状態の継続時間を計測してもよい。そして、ハウリング総合判定部600dは、その継続時間が予め定めた第7の閾値を超えたことを条件として、ハウリングが発生したと判定してもよい。
また、ハウリング総合判定部600dは、第1の判定結果がハウリング発生を示している時間と、第2の判定結果がハウリング発生を示している時間との差が所定の範囲内であることを条件として、ハウリングが発生したと判定してもよい。ハウリング総合判定部600dは、このような判定を行うことにより、ハウリング検出の精度を更に向上させることができる。
(実施の形態3)
本発明の実施の形態3は、実施の形態2に係るハウリング検出装置を用いてハウリングの抑制を行うハウリング抑制装置の例である。
図13は、本実施の形態に係るハウリング抑制装置の構成を示すブロック図であり、実施の形態1の図1に対応するものである。図1と同一部分には同一符号を付し、これについての説明を省略する。
図13に示すように、本実施の形態に係るハウリング抑制装置700eは、入力端子200、A/Dコンバータ710e、実施の形態1に係るハウリング検出装置100、減算器720e、遅延器730e、適応フィルタ740e、D/Aコンバータ750e、および出力端子400eを有する。
入力端子200は、入力信号を、A/Dコンバータ710eへ出力する。
A/Dコンバータ710eは、入力信号をアナログ信号からデジタル信号へA/D変換し、変換後の入力信号を、ハウリング検出装置100および減算器720eへ出力する。
ハウリング検出装置100は、入力信号からハウリングの検出を行い、その検出結果を、出力端子400eではなく、適応フィルタ740eへ出力する。
減算器720eは、A/Dコンバータ710eから入力される入力信号と、後述する適応フィルタ740eから入力されるフィルタ出力信号との差分を、算出する。そして、減算器720eは、算出した差分を、遅延器730e、適応フィルタ740e、およびD/Aコンバータ750eへ出力する。すなわち、入力信号は目標信号であり、差分は誤差信号である。
遅延器730eは、誤差信号を遅延させた信号を生成し、生成した信号を、後述する適応フィルタ740eの参照信号として、適応フィルタ740eへ出力する。ここで、遅延器730eの遅延量は、減算器720eの目標信号(入力信号)と、参照信号(フィルタ入力信号)とが互いに相関を持たなくなるような値に設定されているものとする。
適応フィルタ740eは、誤差信号の二乗平均値が最小となるように、フィルタ係数を逐次更新する。そして、適応フィルタ740eは、参照信号とフィルタ係数との畳み込みを行い、畳み込みの結果として得られる信号を、フィルタ出力信号として、減算器720eへ出力する。
適応フィルタ740eがスピーカからマイクロホンへと回り込む帰還信号を模擬した信号を出力した場合、誤差信号の二乗平均値は最小となる。したがって、適応フィルタ740eによる上述のフィルタ係数の更新は、スピーカとマイクロホンとの間の音響フィードバック経路の伝達特性の推定を行うことを意味する。
本実施の形態では、このようなフィルタ更新の結果、減算器720eにより、帰還信号を含む目標信号から帰還信号を模擬した適応フィルタ740eの出力信号が差し引かれ、ハウリングが抑制されることになる。フィルタ係数の更新アルゴリズムとしては、NLMS(normalized least mean square)アルゴリズム等、公知の各種適応アルゴリズムを用いることができる。
ただし、適応フィルタ740eは、ハウリング検出装置100からのハウリング検出結果が、ハウリングが発生したとの判定結果を示すものであることを条件として、ハウリング抑制モードとなる。
ここで、ハウリング抑制モードとは、フィルタ係数の更新を行う、または、フィルタ係数の更新の速度を上げるモードである。したがって、適応フィルタ740eは、ハウリングが発生したときにのみ、ハウリングが収束するまでの間、フィルタ係数を高速に更新することができる。
D/Aコンバータ750eは、差分信号をデジタル信号からアナログ信号へD/A変換し、変換後の信号を、出力端子400eへ出力する。
出力端子400eは、アンプ等の、音声をスピーカから出力する機能を有する音響装置に接続するための端子である。
なお、ハウリング抑制装置700eは、例えば、CPUおよびRAM等の記憶媒体等を含むコンピュータによって構成することができる。また、ハウリング抑制装置700eは、入力端子200、A/Dコンバータ710e、D/Aコンバータ750e、および出力端子400eを除いた構成としてもよい。
このように、本実施の形態に係るハウリング抑制装置700eは、適応フィルタを用いてスピーカからマイクロホンへ回り込む帰還信号を打ち消すので、ハウリングを抑制することができる。
また、ハウリング抑制装置700eは、使用する音響環境に応じてハウリング検出用の閾値を自動的に算出し、検出結果に応じて適応フィルタのフィルタ係数更新のオンオフまたは速度を制御する。これにより、ハウリング抑制装置700eは、ハウリングが発生していないときの音量変化・音質変化をできるだけ回避しつつ、ハウリングの抑制を行うことができる。
なお、ハウリング抑制装置700eは、実施の形態1に係るハウリング検出装置100に替えて、実施の形態2に係るハウリング検出装置100dを備える構成であってもよい。
(実施の形態4)
本発明の実施の形態4は、周波数帯域のゲインを局所的に低減することによりハウリングの抑制を行うハウリング抑制装置の例である。
図14は、本実施の形態に係るハウリング抑制装置の構成を示すブロック図であり、実施の形態3の図13に対応するものである。図13と同一部分には同一符号を付し、これについての説明を省略する。
図14において、ハウリング抑制装置700fは、入力端子200、A/Dコンバータ710e、実施の形態2に係るハウリング検出装置100d、ハウリング抑圧部760f、D/Aコンバータ750e、および出力端子400eを有する。
A/Dコンバータ710eは、A/D変換後の入力信号を、ハウリング検出装置100dおよびハウリング抑圧部760fへ出力する。
ハウリング検出装置100dは、入力信号からハウリングの検出を行い、その検出結果を、出力端子400eではなく、ハウリング抑圧部760fへ出力する。また、ハウリング検出装置100dは、ハウリングが発生したと判定したとき、ピークが発生した周波数帯域(例えば、第3のカウンタ値が第6の閾値を超えた周波数帯域。以下、「ピーク周波数帯域」という)を特定し、ピーク周波数帯域を示すピーク周波数情報を、ハウリング抑圧部760fへ出力する。
ここで、ハウリング検出装置100dは、ハウリングが発生したと判定したときに、ピーク周波数情報をハウリング抑圧部760fへ出力するものとする。そして、ハウリング検出装置100dは、ピーク周波数情報の出力をもって、ハウリングの発生の通知とピークが発生した周波数帯域の通知とを行うものとする。
ハウリング抑圧部760fは、入力信号を、D/Aコンバータ750eへと出力する。ただし、ハウリング抑圧部760fは、ハウリング検出装置100dからピーク周波数情報を入力されたとき、ノッチフィルタを用いて、入力信号に対してピーク周波数情報が示すピーク周波数帯域のゲインを低減させる。この結果、ハウリングが発生した周波数帯域のゲインが低減し、ハウリングが抑圧されることになる。
なお、ハウリング抑制装置700fは、例えば、CPUおよびRAM等の記憶媒体等を含むコンピュータによって構成することができる。また、ハウリング抑制装置700fは、入力端子200、A/Dコンバータ710e、D/Aコンバータ750e、および出力端子400eを除いた構成としてもよい。
このように、本実施の形態に係るハウリング抑制装置700fは、ハウリングが発生した周波数帯域のゲインを局所的に低減するので、他の周波数帯域のゲインをできるだけ保持しつつ、ハウリングを抑制することができる。
また、ハウリング抑制装置700fは、使用する音響環境に応じてハウリング検出用の閾値を自動的に算出し、検出結果に応じてゲイン低減のオンオフを制御する。これにより、ハウリング抑制装置700fは、ハウリングが発生していないときの音量変化・音質変化をできるだけ回避しつつ、ハウリングの抑制を行うことができる。
なお、ハウリング抑圧部760fは、入力信号を複数の周波数成分に変換または分割し、ハウリングが発生した周波数帯域のゲインを低減した後に再度時間信号へと周波数合成することにより、ピーク周波数帯域のゲインを低減させてもよい。
(その他の実施の形態)
なお、本発明の実施の形態は、上記実施の形態1〜実施の形態4に限定されない。特に、発明を実現する装置のハードウェア構成は、例えば、以下のようにしてもよい。
(1)ハウリング検出装置およびハウリング抑制装置の全部または一部は、マイクロプロセッサ、ROM(read only memory)、RAM、ハードディスクユニット等を有するコンピュータシステムにより構成される。この場合、RAMまたはハードディスクユニットには、上記各部の動作と同様の動作を達成するコンピュータプログラムが記憶されている。そして、上記各部の機能は、マイクロプロセッサがコンピュータプログラムに従って動作することにより実現される。
(2)ハウリング検出装置およびハウリング抑制装置の全部または一部は、1つのシステムLSI(large scale integration(大規模集積回路))から構成される。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。この場合、RAMまたはハードディスクユニットには、上記各部の動作と同様の動作を達成するコンピュータプログラムが記憶されている。そして、上記各部の機能は、マイクロプロセッサがコンピュータプログラムに従って動作することにより実現される。
(3)ハウリング検出装置およびハウリング抑制装置の全部または一部は、脱着可能なICカードまたは単体のモジュールから構成される。ICカードまたはモジュールは、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。ICカードまたはモジュールは、上記の超多機能LSIを含んで構成されてもよい。これらの場合、上記各部の機能は、マイクロプロセッサがコンピュータプログラムに従って動作することにより実現される。ICカードまたはモジュールは、耐タンパ性を有することが望ましい。
また、本発明のカテゴリは、物の発明に限定されない。すなわち、本発明は、ハウリング検出装置およびハウリング抑制装置そのものではなく、ハウリング検出装置およびハウリング抑制装置において実現される方法および処理の全部または一部と捉えることができる。この場合、本発明は、例えば、以下のような形態を採ることができる。
(4)本発明は、上記方法および処理を実現するコンピュータプログラムから構成される。
(5)本発明は、上記コンピュータプログラムを規定するデジタル信号から構成される。この場合、コンピュータプログラムは、電気通信回線、無線通信回線、有線通信回線、インターネット等のネットワーク、データ放送等を経由して伝送され、伝送元とは独立した他のコンピュータシステムにおいて実行することができる。
(6)本発明は、上述のデジタル信号を記録したコンピュータ読み取り可能な記録媒体に記録したものから構成される。コンピュータ読み取り可能な記録媒体は、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO(magnet-optics)、DVD(digital video disc)、DVD−ROM、DVD−RAM、BD(blu-ray disc)、半導体メモリ等である。この場合、コンピュータプログラムは、記録媒体の移送により移送され、移送元とは独立した他のコンピュータシステムにおいて実行することができる。
2011年3月9日出願の特願2011−051623の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明は、ハウリングの発生をより高い精度で検出することができるハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法として有用である。特に、本発明は、補聴器やカラオケ装置等の、ハウリングが発生し易く、使用環境が一定ではないような機器に好適である。
100、100d ハウリング検出装置
200 入力端子
300 ハウリング検出部
310 信号レベル算出部
320 レベル変動推定値算出部
330 閾値算出部
340 ハウリング判定部
400、400e 出力端子
500d 周波数ピーク検出部
510d 周波数分析部
520d レベル算出部
530d 平均レベル算出部
540d レベル比算出部
550d ハウリング判定部
600d ハウリング総合判定部
700e、700f ハウリング抑制装置
710e A/Dコンバータ
720e 減算器
730e 遅延器
740e 適応フィルタ
750e D/Aコンバータ
760f ハウリング抑圧部

Claims (13)

  1. 入力信号から、所定の時間ごとに、前記入力信号の信号レベルである入力信号レベルを算出する信号レベル算出部と、
    前記入力信号レベルから時間とともに所定量漸増あるいは漸減する値である、レベル変動推定値を算出するレベル変動推定値算出部と、
    前記レベル変動推定値から、前記レベル変動推定値に応じて変化するレベル閾値を算出する閾値算出部と、
    前記入力信号レベルが前記レベル閾値を超えている状態が所定の時間閾値を超えて継続したことを条件として、前記入力信号にハウリングが発生したと判定するハウリング判定部と、を有する、
    ハウリング検出装置。
  2. 前記レベル変動推定値は、前記入力信号レベルの極小値から所定量漸増する値、前記入力信号レベルの極大値から所定量漸減する値、および、前記入力信号レベルの平均値から所定量漸減あるいは漸増する値、のうちの1つである、
    請求項1記載のハウリング検出装置。
  3. 前記レベル変動推定値は、前記入力信号レベルの推移に対応して逐次更新され、かつ、前記所定の時間あたりの更新量が制限された状態で追従する値である、
    請求項2記載のハウリング検出装置。
  4. 前記更新量は、増加量を含み、
    前記レベル変動推定値算出部は、
    前記入力信号レベルの極小値の推移を前記入力信号レベルの推移とし、
    前記閾値算出部は、
    前記レベル変動推定値に1を超える値を乗じて得られる値、または、前記レベル変動推定値に0を超える値を加算して得られる値を、前記レベル閾値とする、
    請求項3記載のハウリング検出装置。
  5. 前記更新量は、減少量を含み、
    前記レベル変動推定値算出部は、
    前記入力信号レベルの極大値の推移を前記入力信号レベルの推移とし、
    前記閾値算出部は、
    前記レベル変動推定値の値に0を超え1未満の値を乗じて得られる値、または、前記レベル変動推定値に0を超える値を減算して得られる値を、前記レベル閾値とする、
    請求項3記載のハウリング検出装置。
  6. 前記更新量は、増加量を含み、
    前記レベル変動推定値算出部は、
    前記入力信号レベルの長時間平均の推移を前記入力信号レベルの推移とし、
    前記閾値算出部は、
    前記レベル変動推定値に1以上の値を乗じて得られる値、または、前記レベル変動推定値に0以上の値を加算して得られる値を、前記レベル閾値とする、
    請求項3記載のハウリング検出装置。
  7. 前記レベル変動推定値算出部は、
    前記入力信号レベルの立ち上がりにおいて、前記増加量を制限せずに前記レベル変動推定値を前記入力信号レベルに追従させる、
    請求項4記載のハウリング検出装置。
  8. 前記入力信号の周波数ピークの有無に基づいて、前記入力信号にハウリングが発生したか否かを判定する周波数ピーク検出部と、
    前記ハウリング判定部と前記周波数ピーク検出部との両方で、ハウリングが発生したと判定したことを条件として、前記ハウリングが発生したとの最終判定を行うハウリング総合判定部と、を更に有する、
    請求項1記載のハウリング検出装置。
  9. 前記ハウリング総合判定部は、
    前記ハウリング判定部が、ハウリングが発生したと判定した時間と、前記周波数ピーク検出部が、ハウリングが発生したと判定した時間との差が所定の範囲内であることを条件として、前記ハウリングが発生したとの最終判定を行う、
    請求項8記載のハウリング検出装置。
  10. 請求項1記載のハウリング検出装置と、
    前記ハウリング検出装置が、前記ハウリングが発生したと判定したとき、前記入力信号に対して前記ハウリングを抑制するための処理を行うハウリング抑圧部と、を有する、
    ハウリング抑制装置。
  11. 前記ハウリング抑圧部は、
    前記入力信号の音響フィードバック経路の伝達特性に対応する適応フィルタを用いる、
    請求項10記載のハウリング抑制装置。
  12. 前記ハウリング抑圧部は、
    前記入力信号の周波数ピークが発生した周波数帯域のゲインを低減する、
    請求項10記載のハウリング抑制装置。
  13. 入力信号から、所定の時間ごとに、前記入力信号の信号レベルである入力信号レベルを算出するステップと、
    前記入力信号レベルから時間とともに所定量漸増あるいは漸減する値である、レベル変動推定値を算出するステップと、
    前記レベル変動推定値から、前記レベル変動推定値に応じて変化するレベル閾値を算出するステップと、
    前記入力信号レベルが前記レベル閾値を超えている状態が所定の時間閾値を超えて継続したことを条件として、前記入力信号にハウリングが発生したと判定するステップと、を有する、
    ハウリング検出方法。
JP2013503370A 2011-03-09 2012-02-24 ハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法 Active JP5927558B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011051623 2011-03-09
JP2011051623 2011-03-09
PCT/JP2012/001294 WO2012120815A1 (ja) 2011-03-09 2012-02-24 ハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法

Publications (2)

Publication Number Publication Date
JPWO2012120815A1 JPWO2012120815A1 (ja) 2014-07-17
JP5927558B2 true JP5927558B2 (ja) 2016-06-01

Family

ID=46797791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013503370A Active JP5927558B2 (ja) 2011-03-09 2012-02-24 ハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法

Country Status (5)

Country Link
US (1) US9154874B2 (ja)
EP (1) EP2685746A4 (ja)
JP (1) JP5927558B2 (ja)
CN (1) CN103081511B (ja)
WO (1) WO2012120815A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6190227B2 (ja) * 2013-09-20 2017-08-30 株式会社東芝 圧力センサ、マイクロフォン、血圧センサ、携帯情報端末および補聴器
CN103905958A (zh) * 2014-04-21 2014-07-02 杭州百控科技有限公司 音频处理装置及方法
JP6314325B2 (ja) * 2014-10-17 2018-04-25 パナソニックIpマネジメント株式会社 ハウリング消去装置、及びハウリング消去方法
US10070219B2 (en) 2014-12-24 2018-09-04 Hytera Communications Corporation Limited Sound feedback detection method and device
US10540983B2 (en) * 2017-06-01 2020-01-21 Sorenson Ip Holdings, Llc Detecting and reducing feedback
CN109218917B (zh) * 2018-11-12 2020-07-03 中通天鸿(北京)通信科技股份有限公司 一种实时通信系统中的自动声反馈监测与消除方法
CN111724811B (zh) * 2019-03-21 2023-01-24 成都鼎桥通信技术有限公司 基于亚音频的啸叫识别方法及设备
CN110012408B (zh) * 2019-04-19 2021-10-15 宁波启拓电子设备有限公司 啸叫检测方法及装置
US11700486B2 (en) * 2021-08-04 2023-07-11 GM Global Technology Operations LLC Audible howling control systems and methods
US11589154B1 (en) * 2021-08-25 2023-02-21 Bose Corporation Wearable audio device zero-crossing based parasitic oscillation detection
CN114724576B (zh) * 2022-06-09 2022-10-04 广州市保伦电子有限公司 一种啸叫检测中的门限实时更新方法、装置以及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05308697A (ja) * 1992-05-06 1993-11-19 Matsushita Electric Ind Co Ltd ハウリング抑制装置
JPH08223684A (ja) * 1995-02-17 1996-08-30 Sony Corp ハウリング検出装置
JP2007274640A (ja) * 2006-03-31 2007-10-18 Yamaha Corp 音響処理装置
JP2010178224A (ja) * 2009-01-30 2010-08-12 Panasonic Corp 補聴装置
JP2010245992A (ja) * 2009-04-09 2010-10-28 Yamaha Corp ハウリング防止装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3097376B2 (ja) 1993-03-09 2000-10-10 松下電器産業株式会社 ハウリング抑制装置
JPH07254870A (ja) 1994-03-16 1995-10-03 Mitsubishi Electric Corp 通信システムにおけるハウリング防止方法及び装置
US7092532B2 (en) 2003-03-31 2006-08-15 Unitron Hearing Ltd. Adaptive feedback canceller
JP4287762B2 (ja) 2004-02-20 2009-07-01 パナソニック株式会社 ハウリング検出方法及び装置、並びにこれを備えた音響装置
JP2006121188A (ja) 2004-10-19 2006-05-11 Matsushita Electric Ind Co Ltd ハウリング抑圧装置
CN1271593C (zh) 2004-12-24 2006-08-23 北京中星微电子有限公司 一种语音信号检测方法
JP4399735B2 (ja) 2005-03-01 2010-01-20 ヤマハ株式会社 ハウリング検出回路
US8144895B2 (en) 2005-05-18 2012-03-27 Panasonic Corporation Howling control apparatus and acoustic apparatus
WO2010035760A1 (ja) 2008-09-24 2010-04-01 ヤマハ株式会社 ループゲイン推定装置およびハウリング防止装置
JP2011051623A (ja) 2009-09-01 2011-03-17 Ricoh Elemex Corp 梱包装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05308697A (ja) * 1992-05-06 1993-11-19 Matsushita Electric Ind Co Ltd ハウリング抑制装置
JPH08223684A (ja) * 1995-02-17 1996-08-30 Sony Corp ハウリング検出装置
JP2007274640A (ja) * 2006-03-31 2007-10-18 Yamaha Corp 音響処理装置
JP2010178224A (ja) * 2009-01-30 2010-08-12 Panasonic Corp 補聴装置
JP2010245992A (ja) * 2009-04-09 2010-10-28 Yamaha Corp ハウリング防止装置

Also Published As

Publication number Publication date
EP2685746A4 (en) 2014-10-22
US9154874B2 (en) 2015-10-06
CN103081511B (zh) 2016-04-06
WO2012120815A1 (ja) 2012-09-13
JPWO2012120815A1 (ja) 2014-07-17
EP2685746A1 (en) 2014-01-15
US20130156205A1 (en) 2013-06-20
CN103081511A (zh) 2013-05-01

Similar Documents

Publication Publication Date Title
JP5927558B2 (ja) ハウリング検出装置、ハウリング抑制装置、およびハウリング検出方法
JP7066705B2 (ja) ヘッドフォンオフイヤー検知
US10341767B2 (en) Speaker protection excursion oversight
KR102124761B1 (ko) 적응형 잡음 제거 시스템에서의 다운링크 톤 검출 및 2차 경로 응답 모델의 적응
JP4697267B2 (ja) ハウリング検出装置およびハウリング検出方法
US20060089958A1 (en) Periodic signal enhancement system
US10276145B2 (en) Frequency-domain adaptive noise cancellation system
US11638094B2 (en) Techniques for howling detection
JP2010532879A (ja) アダプティブ・インテリジェント・ノイズ抑制システム及び方法
US11631390B2 (en) SDR-based adaptive noise cancellation (ANC) system
JP2008160506A (ja) 音声出力装置、音声出力方法、音声出力システムおよび音声出力処理用プログラム
CN110677796B (zh) 一种音频信号处理方法及助听器
JP2009531887A (ja) 補聴器,および補聴器内における動的利得限界推定方法
JP5490704B2 (ja) ハウリング抑圧装置、ハウリング抑圧方法、プログラム、及び集積回路
JP5975290B2 (ja) ハウリング抑圧装置、補聴器、ハウリング抑圧方法、及び集積回路
JP2004032387A (ja) ハウリング制御装置及び補聴器
JP4239993B2 (ja) ハウリングキャンセラ
CN115835092B (zh) 一种音频扩音反馈抑制方法、系统、计算机及存储介质
JP5346350B2 (ja) 反響消去装置とその方法とプログラム
JP2010178224A (ja) 補聴装置
CN116600232A (zh) 声响处理装置和声响处理方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20141006

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20141016

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160323

R151 Written notification of patent or utility model registration

Ref document number: 5927558

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151