(57)【要約】【課題】信号処理の高速化を図ることができ、より精度の高いハウリング周波数を検出することができるハウリング防止装置を提供する。【解決手段】アナログ信号をデジタル信号に変換する第１の変換手段１１と、ハウリングが発生する周波数成分を抑制するフィルタ１２と、ゼロクロス間のサンプリングの数をカウントするカウント手段１３と、ゼロクロス間のサンプリングの数及び波高値に基づいてハウリングの有無を判定するハウリング判定手段１４と、ハウリング判定手段によってハウリングと判定された場合に、ゼロクロス間のサンプリングの数に基づいて算出されるハウリング周波数及び、ゼロクロス間のサンプリングのサンプル値である波高値の最大値によって、フィルタの係数を算出する算出手段１５と、係数をフィルタに設定する設定手段１６と、フィルタからの出力信号をアナログ信号に変換する第２の変換手段１７とを備える。【選択図】        図１
2005012708.tif 000002
【特許請求の範囲】
【請求項１】
入力されたアナログ信号をデジタル信号に変換する第１の変換手段と、
前記アナログ信号によりスピーカから拡声音を発生させる場合のハウリングが発生する周波数成分を抑制するフィルタと、
前記第１の変換手段によって変換された前記デジタル信号のゼロクロス間のサンプリングの数をカウントするカウント手段と、
前記カウント手段によってカウントされた前記デジタル信号の前記ゼロクロス間の前記サンプリングの数及び、前記デジタル信号の前記ゼロクロス間の前記サンプリングのサンプル値である波高値に基づいて前記ハウリングの有無を判定するハウリング判定手段と、
前記ハウリング判定手段によって前記ハウリングと判定された場合に、前記デジタル信号の前記ゼロクロス間の前記サンプリングの数に基づいて算出されるハウリング周波数及び、前記デジタル信号の前記ゼロクロス間の前記サンプリングのサンプル値である前記波高値の最大値によって、前記フィルタの係数を算出する算出手段と、
前記算出手段によって算出された前記係数を前記フィルタに設定する設定手段と、
前記係数が設定された前記フィルタからの出力信号をアナログ信号に変換する第２の変換手段とを、
備えるハウリング防止装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロホンなどによってピックアップされた音声をスピーカなどによって拡声する際、フィードバックループにより生じるハウリングを防止するハウリング防止装置に関する。
【０００２】
【従来の技術】
従来のハウリング防止装置には、入力された音声信号などのアナログ信号をデジタル信号に変換し、変換されたデジタル信号のゼロクロス間のサンプリングの数に基づいてハウリングを判定し、ハウリング周波数を検出するものや、高速フーリエ変換（以下、ＦＦＴとも言う）によってハウリングを判定し、ハウリング周波数を検出するものがあった。このようなハウリング防止装置が下記の特許文献１に開示されている。
【０００３】
【特許文献１】
特許第２５７４２８３号公報（請求項２、請求項３）
【０００４】
以下では、特許文献１に開示されたハウリング防止装置のうち、ＦＦＴによる従来のハウリング防止装置について図４を用いて説明する。図４に示すハウリング防止装置４０において、Ａ／Ｄ変換器４１は入力された音声信号などのアナログ信号をデジタル信号に変換し、変換したデジタル信号をノッチフィルタ４２及び高速フーリエ変換器４３へ送る。高速フーリエ変換器４３は、デジタル信号のゼロクロス間のサンプリングに対してＦＦＴによる周波数分析を行い、周波数特性の高い周波数を検出する。
【０００５】
判定部４４は、高速フーリエ変換器４３によって検出された周波数が所定の条件を満たすか否か、すなわちハウリング周波数であるか否かを判定する。係数算出部４５は、検出された周波数が所定の条件を満たす、すなわちハウリング周波数であると判定部４４によって判定された場合に、ハウリングを発生させる周波数を抑制するための係数を算出する。設定部４６は算出された係数をノッチフィルタ４２のフィルタ係数として設定する。Ｄ／Ａ変換器４７はノッチフィルタ４２から出力された信号をアナログ信号に変換し、出力する。
【０００６】
【発明が解決しようとする課題】
しかしながら、上記ＦＦＴによるハウリング防止装置では、精度の高いハウリング周波数を検出するためにＦＦＴの高タップ化が不可欠であり、それに伴い処理ステップ数が膨大となる。その結果としてＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）による信号処理時間が長くなり、信号処理の高速化を図ることができないという問題があった。一方、特許文献１に開示されたハウリング防止装置のうち、デジタル信号のゼロクロス間のサンプリングの数のみに基づいてハウリングを判定し、ハウリング周波数を検出するハウリング防止装置では、処理ステップ数が膨大となることはないが、精度の高いハウリング周波数を検出することが困難であるという問題があった。
【０００７】
本発明は、上記問題を解決するものであり、信号処理の高速化を図ることができ、より精度の高いハウリング周波数を検出することができるハウリング防止装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明は、第１の変換手段と、フィルタと、カウント手段と、ハウリング判定手段と、算出手段と、設定手段と、第２の変換手段とを備える。すなわち、入力されたアナログ信号をデジタル信号に変換する第１の変換手段と、前記アナログ信号によりスピーカから拡声音を発生させる場合のハウリングが発生する周波数成分を抑制するフィルタと、前記第１の変換手段によって変換された前記デジタル信号のゼロクロス間のサンプリングの数をカウントするカウント手段と、前記カウント手段によってカウントされた前記デジタル信号の前記ゼロクロス間の前記サンプリングの数及び、前記デジタル信号の前記ゼロクロス間の前記サンプリングのサンプル値である波高値に基づいて前記ハウリングの有無を判定するハウリング判定手段と、前記ハウリング判定手段によって前記ハウリングと判定された場合に、前記デジタル信号の前記ゼロクロス間の前記サンプリングの数に基づいて算出されるハウリング周波数及び、前記デジタル信号の前記ゼロクロス間の前記サンプリングのサンプル値である前記波高値の最大値によって、前記フィルタの係数を算出する算出手段と、前記算出手段によって算出された前記係数を前記フィルタに設定する設定手段と、前記係数が設定された前記フィルタからの出力信号をアナログ信号に変換する第２の変換手段とを備えるハウリング防止装置が提供される。
【０００９】
【発明の実施の形態】
以下、本発明の実施の形態について図１から図３を用いて説明する。図１は本発明の実施の形態に係るハウリング防止装置の構成図である。図２は、図１のハウリング防止装置で処理するデジタル信号のゼロクロス間のサンプリングを示す図である。図３は本発明の実施の形態に係るハウリング防止装置のハウリングの判定からノッチフィルタのフィルタ係数の設定までの動作を説明するためのフローチャートである。
【００１０】
まず、ハウリング防止装置の構成について図１を用いて説明する。ハウリング防止装置１０は、Ａ／Ｄ変換器１１、ノッチフィルタ１２、波長検出部１３、ハウリング周波数判定部１４、係数算出部１５、設定部１６、Ｄ／Ａ変換器１７から構成されている。
【００１１】
Ａ／Ｄ変換器１１は、マイクロホンなどから入力された音声信号などのアナログ信号をデジタル信号に変換する。ノッチフィルタ１２は、後述するフィルタ係数によってハウリングが発生する周波数成分を抑制する。波長検出部１３は、Ａ／Ｄ変換器１１によって変換されたデジタル信号におけるゼロクロス間のサンプリングの数（以下、ゼロクロス間のサンプリング数と言う）をカウントする。ハウリング周波数判定部１４は、波長検出部１３によってカウントされたゼロクロス間のサンプリング数と、ゼロクロス間のサンプリングに対するサンプル値（以下、波高値と言う（図２参照））とに基づいてハウリングであるか否かを判定する。
【００１２】
係数算出部１５は、ハウリング周波数判定部１４によってハウリングであると判定された場合に、ゼロクロス間のサンプリング数に基づいて算出されるハウリング周波数と、波高値の最大値とを用いてフィルタ係数を算出する。ここで、ハウリング周波数は下記の式（１）によって算出される。式（１）及び後述する式（２）において用いられるサンプリング周波数はあらかじめ設定されている。設定部１６は、係数算出部１５によって算出されたフィルタ係数をノッチフィルタ１２に設定する。Ｄ／Ａ変換器１７は、フィルタ係数が設定されたノッチフィルタ１２からの出力信号をアナログ信号に変換し、出力する。ここで、波長検出部１３、ハウリング周波数判定部１４、係数算出部１５、設定部１６は、例えばＣＰＵに該当する。
【００１３】
ハウリング周波数＝（サンプリング周波数／２）／ゼロクロス間のサンプリング数・・・（１）
【００１４】
ここで、ハウリング周波数判定部１４におけるハウリングの判定について詳細に説明する。ハウリングはマイクロホンとスピーカとの間で発生し、発生したハウリング信号の波形は、連続した単一周波数の正弦波に極めて近い波形となることが知られている。このような特徴から、マイクロホンとスピーカとの間で発生した信号（以下、発生信号と言う）が連続した単一周波数であり、かつ正弦波であればハウリングと判定することができる。そこで、発生信号が連続した単一周波数であるか否か及び正弦波であるか否かを判定する。
【００１５】
まず、発生信号が連続した単一周波数であるか否かを判定する。そのために波長検出部１３は、上述したようにゼロクロス間のサンプリング数をカウントする。ここでは、例えば１０組のゼロクロス間のサンプリング数をカウントする場合を考える。この１０組のゼロクロス間のサンプリング数のそれぞれに対して下記の式（２）により１０個の波長を求める。求めた１０個の波長のうち９個以上の波長が同一であるとき、発生信号が連続した単一周波数であると判定する。このとき、上述した波高値の最大値をハウリング防止装置１０の不図示の記憶領域に記憶する。なお、上記の例では、１０個の波長のうち９個以上の波長が同一であるときに、発生信号が連続した単一周波数であると判定しているが、発生信号が連続した単一周波数であるか否かを判定することができれば、これに限られるものではない。
【００１６】
波長＝サンプリング周波数／ゼロクロス間のサンプリング数・・・（２）
【００１７】
次に、発生信号が正弦波であるか否かを判定する。正弦波は時間軸に対して正負対称性の特徴があるため、周期を積分区間とする正弦波を積分すると積分値はゼロになる。このような特徴から、例えば、上記１０組のゼロクロス間のサンプリングに対するサンプル値である波高値に対して、所定の区間、例えばサンプリング周期Ｔで積分した積分値を合算して極めてゼロに近づいた場合に発生信号が正弦波であると判定する。なお、発信信号が正弦波であるとの判定は、上記の例では１０組のゼロクロス間のサンプリングに対するサンプル値である波高値に対して積分した積分値を合算しているが、発信信号が正弦波であるか否かを判定することができれば、１０組に限られるものではない。
【００１８】
しかし、実際にはノイズや音声信号などの成分が加わり、波高値の積分値を合算した値が完全にゼロにならない。そこで、しきい値を設定し、波高値の積分値を合算した値が設定したしきい値以下の場合に発生信号が正弦波であると判定する。例えば１６ビットの信号の場合を考える。この場合、波高値の積分値を合算した値が、１６ビットの２の補数の最大振幅値３２７６８に対して、−４０ｄＢ（１／１００）程度以下になったときに発生信号が正弦波であると判定する。なお、上記の例において設定されるしきい値は３２７である。
【００１９】
以上のように、ハウリング周波数判定部１４はハウリングであるか否かを判定する。ハウリング周波数判定部１４によってハウリングであると判定された場合には、係数算出部１５はノッチフィルタ１２のフィルタ係数を算出し、設定部１６は算出されたフィルタ係数をノッチフィルタ１２に設定する。
【００２０】
次に、本発明の実施の形態に係るハウリング防止装置のハウリングの判定からノッチフィルタ１２のフィルタ係数の設定までの動作について図３を用いて説明する。まず、Ａ／Ｄ変換器１１は入力された音声信号などのアナログ信号をデジタル信号に変換する（ステップＳ３０１）。波長検出部１３は、変換されたデジタル信号のゼロクロス間のサンプリング数をカウントする（ステップＳ３０２）。ハウリング周波数判定部１４は、ゼロクロス間のサンプリング数及び波高値に基づいてハウリングであるか否かを判定する（ステップＳ３０３）。
【００２１】
係数算出部１５は、ハウリング周波数判定部１４によってハウリングであると判定された場合に、ゼロクロス間のサンプリング数に基づいて算出されるハウリング周波数と、波高値の最大値とを用いてフィルタ係数を算出する（ステップＳ３０４）。設定部１６は、係数算出部１５によって算出されたフィルタ係数をノッチフィルタ１２に設定する（ステップＳ３０５）。Ｄ／Ａ変換器１７は、フィルタ係数を設定されたノッチフィルタ１２からの出力信号をアナログ信号に変換し、出力する（ステップＳ３０６）。
【００２２】
以上のように動作するので、信号処理の高速化を図ることができ、より精度の高いハウリング周波数を検出することができる。なお、本発明は上述した実施の形態に限定されることはなく、本発明の要旨を逸脱しない範囲において変更可能である。
【００２３】
【発明の効果】
以上説明したように、本発明によれば、入力されたアナログ信号をデジタル信号に変換する第１の変換手段と、アナログ信号によりスピーカから拡声音を発生させる場合のハウリングが発生する周波数成分を抑制するフィルタと、第１の変換手段によって変換されたデジタル信号のゼロクロス間のサンプリングの数をカウントするカウント手段と、カウント手段によってカウントされたデジタル信号のゼロクロス間のサンプリングの数及び、デジタル信号のゼロクロス間のサンプリングのサンプル値である波高値に基づいてハウリングの有無を判定するハウリング判定手段と、ハウリング判定手段によってハウリングと判定された場合に、デジタル信号のゼロクロス間のサンプリングの数に基づいて算出されるハウリング周波数及び、デジタル信号のゼロクロス間のサンプリングのサンプル値である波高値の最大値によって、フィルタの係数を算出する算出手段と、算出手段によって算出された係数をフィルタに設定する設定手段と、係数が設定されたフィルタからの出力信号をアナログ信号に変換する第２の変換手段とを備えるので、信号処理の高速化を図ることができ、より精度の高いハウリング周波数を検出することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るハウリング防止装置の構成図である。
【図２】本発明の実施の形態に係るハウリング防止装置で処理するデジタル信号のゼロクロス間のサンプリングを示す図である。
【図３】本発明の実施の形態に係るハウリング防止装置のハウリング判定からノッチフィルタのフィルタ係数の設定までの動作を説明するためのフローチャートである。
【図４】従来のハウリング防止装置の構成図である。
【符号の説明】
１０、４０  ハウリング防止装置
１１、４１  Ａ／Ｄ変換器（第１の変換手段）
１２、４２  ノッチフィルタ（フィルタ）
１３  波長検出部（カウント手段）
１４  ハウリング周波数判定部（ハウリング判定手段）
１５、４５  係数算出部（算出手段）
１６、４６  設定部（設定手段）
１７、４７  Ｄ／Ａ変換器（第２の変換手段）
４３  高速フーリエ変換器
４４  判定部
【図１】
2005012708.tif 000003
【図２】
2005012708.tif 000004
【図３】
2005012708.tif 000005
【図４】
2005012708.tif 000006