(57)【要約】  ハウリング抑圧装置は、Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最大値を求める統合処理部と、最大値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理部と、を含む。
2019160006.tif 000002
【特許請求の範囲】
【請求項１】
Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最大値を求める統合処理部と、
前記最大値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理部と、を含む、
ハウリング抑圧装置。
【請求項２】
請求項１のハウリング抑圧装置であって、
前記ハウリング抑圧処理部は、前記複数のマイクロホンにより収音された音響信号間におけるハウリングの位相がずれていることを利用してハウリング抑圧処理を行う、
ハウリング抑圧装置。
【請求項３】
請求項１または請求項２のハウリング抑圧装置であって、
前記ハウリング抑圧処理部は、(i)前記最大値が所定のパワーを示す値よりも大きい場合と、(ii)前記最大値の変化量を示す値が所定の変化量を示す値よりも大きい場合との少なくとも何れかの場合に、前記最大値に基づき得られる第一ゲインと、前記最大値の変化量を示す値に基づき得られる第二ゲインとのうちの何れか小さい値を前記L個の第i信号の少なくとも何れかに乗算することでハウリング抑圧処理を行う、
ハウリング抑圧装置。
【請求項４】
請求項１から請求項３の何れかのハウリング抑圧装置であって、
前記L個の第i信号を時間方向に平滑化し、前記L個の値を求める平滑化処理部を含み、
前記ハウリング抑圧処理部は、
前記最大値が所定のパワーを示す値よりも大きいか否かを示すパワー判定結果P(k,n)を求めるパワー判定部と、
前記最大値の変化量を示す値は現在のフレームの最大値と過去のフレームの最大値との比であり、前記所定の変化量を示す値は所定の時定数であり、現在のフレームの最大値が過去のフレームの最大値に所定の時定数を乗じた値よりも大きいか否かを示す変化量判定結果S(k,n)を求める時定数判定部と、
現在のフレームのパワー判定結果P(k,n)から得られるパワー指標 -P(k,n)が、所定の値-Pminよりも小さい場合には-P(k,n)=-Pminとし、所定の値-Pmaxよりも大きい場合には-P(k,n)=-Pmaxとし、パワー指標 -P(k,n)と所定の閾値Pthrとの大小関係に基づき第一ゲインを求め、現在のフレームの変化量判定結果S(k,n)から得られる時定数指標 -S(k,n)が、所定の値-Sminよりも小さい場合には-S(k,n)=-Sminとし、所定の値-Smaxよりも大きい場合には-S(k,n)=-Smaxとし、時定数指標 -S(k,n)と所定の閾値Sthrとの大小関係に基づき第二ゲインを求める利得計算部と、
前記第一ゲインと前記第二ゲインとのうちの何れか小さい値を前記L個の第i信号に乗算する利得重畳部とを含む、
ハウリング抑圧装置。
【請求項５】
Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最小値を求める統合処理部と、
L個のマイクロホンのうちの2個のマイクロホンにより収音された音響信号が周波数変換された信号である2個の第i信号のn番目のフレームに対応する2個の値の差分の符号が、所定の時間内に所定の回数以上変化した場合に、ハウリングが発生する恐れがある、または、発生していると判定するハウリング判定部と、
ハウリングが発生する恐れがある、または、ハウリングが発生していると判定された場合に、前記最小値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理部と、を含む、
ハウリング抑圧装置。
【請求項６】
請求項１から請求項５の何れかのハウリング抑圧装置であって、
L=2である、
ハウリング抑圧装置。
【請求項７】
Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最大値を求める統合処理ステップと、
前記最大値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理ステップと、を含む、
ハウリング抑圧方法。
【請求項８】
Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最小値を求める統合処理ステップと、
L個のマイクロホンのうちの2個のマイクロホンにより収音された音響信号が周波数変換された信号である2個の第i信号のn番目のフレームに対応する2個の値の差分の符号が、所定の時間内に所定の回数以上変化した場合に、ハウリングが発生する恐れがある、または、発生していると判定するハウリング判定ステップと、
ハウリングが発生する恐れがある、または、ハウリングが発生していると判定された場合に、前記最小値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理ステップと、を含む、
ハウリング抑圧方法。
【請求項９】
請求項１から請求項６の何れかのハウリング抑圧装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スピーカで音声を拡声し会話をしやすくする際に発生するハウリングを抑圧する技術に関する。
【背景技術】
【０００２】
広い空間では人同士の会話音声が相手に届きにくく、会話がしづらい状況が発生する。このような場合に、拡声装置がしばしば用いられる。多人数会議のような用途では、図１のように、同一空間内で聞き手から遠い位置にいる話者の音声を話者の近傍の配置されたマイクスピーカ１で収音し、聞き手の近傍に配置されたマイクスピーカ２で再生し、拡声するということも行われる。マイクとスピーカ（例えばマイクとスピーカとが１つの筐体内に組み込まれたマイクスピーカ）とはそれぞれ２組あり、２組のマイクのうちの話者に近い方のマイクで収音された音が２組のスピーカのうちの話者から遠い方のスピーカで再生される。【０００３】
ここで、図１のような系は、講堂等における講演者の拡声等と異なり、話者同士の距離がそれほど遠くはない。そのため、拡声された音声だけではなく話者音声そのもの（直接音）も少し聞こえる、という状況となる。この場合、拡声された音声が遅れて再生されると、話者音声の直接音とずれて聞こえる。このような場合、聴感上の違和感が生じる。例えば、拡声された音声が直接音に対して20ms〜30ms程度遅れて聞こえる場合、人間の耳では響きのように認識し、違和感を感じる。そのため、図１のような系では低遅延の処理であることが求められる。【０００４】
このようなマイクスピーカの系では、一般に拡声の音量や部屋の環境によりハウリングが発生する。ハウリングを防ぐためにはマイクとスピーカとの距離を大きくする、スピーカ音量を小さくする等の他に、ハウリング防止機能を搭載する方法がある。例えば特許文献１のように、周波数ごとのパワーを用いて閾値処理によりハウリングを検出する方法がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−１６４２７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、図１のような系において、図２のようなハウリングを起こす場合がある。近接した２つの周波数がハウリングを起こし、ハウリングの時間波形がうなりを起こす場合である。図２では、ハウリングが発散するまでには至っていないが、特に0.4秒の辺りは音声がないにもかかわらずハウリング成分だけが大きく残り、通常のハウリングと同様に非常に耳障りな音となる。しかし、このようなケースでは、従来技術で対応しようとした場合に問題が起きる。具体的には、従来技術で対応するためには、ハウリングの発生を検知するために、「うなりがおきている現象の影響を排除するために、十分長いフレームで周波数を分析する」か「短時間フレームでの分析結果のうなり成分の影響を低減するために時間方向に平滑化する」ということをする必要がある。しかし、どちらも長時間の観測が必要であるため、上記で述べた「低遅延」という要求条件に反する。もしくは、検出が遅れるため、ハウリングがある程度起きてからしか対応ができない。【０００７】
本発明は、ハウリングの検知の遅れを防ぐことができ、拡声システムのハウリング防止効果を向上させるハウリング抑圧装置、その方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本発明の一態様によれば、ハウリング抑圧装置は、Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最大値を求める統合処理部と、最大値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理部と、を含む。【０００９】
上記の課題を解決するために、本発明の他の態様によれば、ハウリング抑圧装置は、Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最小値を求める統合処理部と、L個のマイクロホンのうちの2個のマイクロホンにより収音された音響信号が周波数変換された信号である2個の第i信号のn番目のフレームに対応する2個の値の差分の符号が、所定の時間内に所定の回数以上変化した場合に、ハウリングが発生する恐れがある、または、発生していると判定するハウリング判定部と、ハウリングが発生する恐れがある、または、ハウリングが発生していると判定された場合に、最小値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理部と、を含む。【００１０】
上記の課題を解決するために、本発明の他の態様によれば、ハウリング抑圧方法は、Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最大値を求める統合処理ステップと、最大値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理ステップと、を含む。【００１１】
上記の課題を解決するために、本発明の他の態様によれば、ハウリング抑圧方法は、Lを2以上の整数の何れかとし、i=1,2,…,Lとし、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号のn番目のフレームに対応するL個の値の中から最小値を求める統合処理ステップと、L個のマイクロホンのうちの2個のマイクロホンにより収音された音響信号が周波数変換された信号である2個の第i信号のn番目のフレームに対応する2個の値の差分の符号が、所定の時間内に所定の回数以上変化した場合に、ハウリングが発生する恐れがある、または、発生していると判定するハウリング判定ステップと、ハウリングが発生する恐れがある、または、ハウリングが発生していると判定された場合に、最小値を用いて、L個の第i信号の少なくとも何れかにハウリング抑圧処理を行うハウリング抑圧処理ステップと、を含む。
【発明の効果】
【００１２】
本発明によれば、ハウリングの検知の遅れを防ぐことができ、拡声システムのハウリング防止効果を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】拡声装置の使用状況を説明するための図。
【図２】ハウリングの状態を説明するための図。
【図３】２つのハウリング抑圧装置の配置例を示す図。
【図４】第一実施形態に係るハウリング抑圧装置の機能ブロック図。
【図５】第一実施形態に係るハウリング抑圧装置の処理フローの例を示す図。
【図６】ハウリング抑圧処理部の機能ブロック図。
【図７】ハウリング抑圧処理部の処理フローの例を示す図。
【図８】図２の0.35〜0.45の0.1秒間を拡大し、x1とx2を並べてプロットした図。
【図９】第一実施形態の変形例２のL個のハウリング抑圧装置の配置例を示す図。
【図１０】第一実施形態の変形例３のハウリング抑圧装置の配置例を示す図。
【図１１】第一実施形態の変形例３に係るハウリング抑圧装置の機能ブロック図。
【図１２】第二実施形態に係るハウリング抑圧装置の機能ブロック図。
【図１３】第二実施形態に係るハウリング抑圧装置の処理フローの例を示す図。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、テキスト中で使用する記号「-」等は、本来直後の文字の真上に記載されるべきものであるが、テキスト記法の制限により、当該文字の直前に記載する。式中においてはこれらの記号は本来の位置に記述している。また、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
【００１５】
＜第一実施形態のポイント＞
２つのハウリング系の信号解析数値を連携させ、ハウリング周波数となり得る成分の情報をより正確に求める。これにより、検出遅れによるハウリングの発散を防止する。
【００１６】
＜第一実施形態＞
ハウリング抑圧システムは、２つのハウリング抑圧装置１００−ｉを含む。ただし、i=1,2である。図３は２つのハウリング抑圧装置１００−ｉの配置例を示す。
【００１７】
図４は第一実施形態に係るハウリング抑圧装置の機能ブロック図を、図５はその処理フローを示す。
【００１８】
ハウリング抑圧装置１００−ｉは、周波数変換部１１０と平滑化処理部１２０と遅延部１２１と統合処理部１３０とハウリング抑圧処理部１４０と周波数逆変換部１５０とを含む。
【００１９】
ハウリング抑圧処理部１４０は、パワー判定部１４１と時定数判定部１４２と遅延部１４３と利得計算部１４４と利得重畳部１４５とを含む。図６はハウリング抑圧処理部１４０の機能ブロック図を、図７はその処理フローを示す。
【００２０】
図３に示すように、ハウリング抑圧装置１００−ｉは、同じ系のマイクロホン８０−ｉにより収音された音響信号と、他の系のハウリング抑圧装置１００−ｊの平滑化処理部１２０の出力値とを入力とする。ただし、j=1,2、i≠jである。ハウリング抑圧装置１００−ｉは、同じ系のマイクロホン８０−ｉにより収音された音響信号に含まれるハウリング成分を抑圧し、抑圧後の信号を同じ系のスピーカ９０−ｉに出力する。スピーカ９０−ｉでは、抑圧後の信号を再生する。例えば、マイクロホン８０−ｉとスピーカ９０ｊとが１つのマイクスピーカを構成する。
【００２１】
ハウリング抑圧装置は、例えば、中央演算処理装置（CPU: Central Processing Unit）、主記憶装置（RAM: Random Access Memory）などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。ハウリング抑圧装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。ハウリング抑圧装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。ハウリング抑圧装置の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。ハウリング抑圧装置が備える各記憶部は、例えば、RAM（Random Access Memory）などの主記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。ただし、各記憶部は、必ずしもハウリング抑圧装置がその内部に備える必要はなく、ハードディスクや光ディスクもしくはフラッシュメモリ（Flash Memory）のような半導体メモリ素子により構成される補助記憶装置により構成し、ハウリング抑圧装置の外部に備える構成としてもよい。
【００２２】
以下、各部について説明する。
【００２３】
＜周波数変換部１１０＞
周波数変換部１１０は、同じ系のマイクロホン８０−ｉにより収音された音響信号xi(t)を入力とし、周波数領域の信号に変換し（Ｓ１１０）、変換後の信号Xi(k,n)を出力する。例えば、時間領域の音響信号xi(t)を次式で表されるフーリエ変換(高速フーリエ変換等)により周波数領域の信号に変換する。
Xi(k,n)=FT(xi(n))
ここでxi(n)=[xi(nT-T+1),xi(nT-T+2),…,xi(nT)]、nは現在時刻のフレーム番号、FTはフーリエ変換、Tはフーリエ変換のフレームサイズ（Tは２以上の整数の何れか）、kは周波数インデックスを表す。なお、tは離散時刻のインデックスを表し、フレーム周期T/D(Dは2以上のTを割り切れる整数の何れか)毎に時刻tから過去T個分の音響信号xi(t),xi(t-1),…,xi(t-T+1)を用いてフーリエ変換を行う。なお、このときt=nT/Dの関係を満たす。
【００２４】
なお、ハウリング抑圧装置１００−ｉ及び周波数変換部１１０に入力される信号は、マイクロホンにより収音された音響信号そのものではなく、音響信号に対して信号処理を行った後の信号でもよい。例えば、ｍ個のマイクロホン(例えばマイクロホンアレー)により収音したされた音響信号に対してビームフォーミング処理を行い、所定の方向に指向性を有するL(本実施形態ではL=2)個の出力信号を得、この出力信号を音響信号xi(t)に代えて、ハウリング抑圧装置１００−ｉ及び周波数変換部１１０に入力する。また、ビームフォーミング処理に限らず、雑音抑圧処理等の信号処理を行った後の信号を入力としてもよい。要は、ハウリング抑圧装置１００−ｉ及び周波数変換部１１０には、マイクロホンにより収音された音響信号から得られるL個の信号が入力される。
【００２５】
＜平滑化処理部１２０＞
平滑化処理部１２０は、信号Xi(k,n)を入力とし、遅延部１２１から一時刻（フレーム）前の値Xi'(k,n-1)を取り出し、信号Xi(k,n)を時間方向に平滑化し(Ｓ１２０)、値X'i(k,n)を求め、統合処理部１３０とハウリング抑圧装置１００−ｊに出力する。さらに、値X'i(k,n)を遅延部１２１に格納し、次フレームn+1の平滑化処理時に利用する。例えば、次式により、各周波数成分を一時刻（フレーム）前の値Xi'(k,n-1)との重みづけ和で時間方向へ平滑化する。
X'i(k,n)=||Xi(k,n)||+αXi'(k,n-1)
ただし、αは、時定数で0以上1未満の実数であり、大きいほど過去の情報を大きく反映する値である。
【００２６】
＜統合処理部１３０＞
統合処理部１３０は、ハウリング抑圧装置１００−ｉの平滑化処理部１２０の出力値である値X'i(k,n)と、他のハウリング抑圧装置１００−ｊの平滑化処理部１２０の出力値である値X'j(k,n)とを入力とし、2個の値X'i(k,n),X'j(k,n)の中から最大値 -X(k,n)を求め(Ｓ１３０)、出力する。なお、この最大値を求める処理を2個の値X'i(k,n),X'j(k,n)を統合する処理とも言い、最大値 -X(k,n)を統合した値とも言う。例えば、次式により、最大値を求める。
-X(k,n)=max{Xi'(k,n),Xj'(k,n)}
max{}は{}内の最大の値を出力するものとする。
【００２７】
このような構成により、ハウリングが２組のマイクスピーカのループで発生する場合、それぞれのマイク入力信号においてうなりの位相がずれていることを利用する。例えば、最大πの位相ずれがある場合、片側のマイク入力でハウリングが局所的に最小になったタイミングで、もう片方のマイク入力ではハウリングが局所的に最大になり、逆も同様である。図８は図２の0.35〜0.45の0.1秒間を拡大し、x1とx2を並べてプロットしたものである。図８からうなりのピークとなるタイミングが異なることがわかる。そのため、うなりの位相がずれている、かつ、振幅が近しい場合に、２つの値の最大値を採用することで、うなりの振幅の影響を低減することができる。
【００２８】
＜ハウリング抑圧処理部１４０＞
ハウリング抑圧処理部１４０は、最大値 -X(k,n)と周波数領域の信号Xi(k,n)とを入力とし、最大値 -X(k,n)を用いて、信号Xi(k,n)にハウリング抑圧処理を行い（Ｓ１４０）、抑圧後の信号Yi(k,n)を出力する。最大値 -X(k,n)を利用する構成は、L(本実施形態ではL=2)個のマイクロホンにより収音された音響信号間におけるハウリングの位相がずれていることを利用することに相当する。つまり、ハウリング抑圧処理部１４０は、L個のマイクロホンにより収音された音響信号間におけるハウリングの位相がずれていることを利用してハウリング抑圧処理を行っているとも言える。
【００２９】
本実施形態では、ハウリング抑圧処理部１４０は、(i)最大値 -X(k,n)が所定のパワーを示す値よりも大きい場合と、(ii)最大値 -X(k,n)の変化量を示す値が所定の変化量を示す値よりも大きい場合との少なくとも何れかの場合に、最大値 -X(k,n)に基づき得られる第一ゲインと、最大値 -X(k,n)の変化量を示す値に基づき得られる第二ゲインとのうちの何れか小さい値を信号Xi(k,n)に乗算することでハウリング抑圧処理を行う。以下、図６、図７を用いて、ハウリング抑圧処理部１４０の各部の処理内容を説明する。
【００３０】
＜パワー判定部１４１＞
パワー判定部１４１は、最大値 -X(k,n)を入力とし、最大値 -X(k,n)がパワーの条件を満たしているかを判定する。例えば、最大値 -X(k,n)が所定のパワーを示す値(閾値Thr1、Thr1は実験等により予め算出した正の実数)よりも大きいか否かを判定し(Ｓ１４１)、パワー判定結果P(k,n)を出力する。例えば、次式により、パワー判定結果P(k,n)を得る。
【００３１】
【数１】
2019160006.tif 000003
【００３２】
つまり、この例ではパワー判定結果P(k,n)が1のときにパワーの条件を満たしていることを示す。
【００３３】
＜遅延部１４３＞
遅延部１４３は、最大値 -X(k,n)を入力とし、記憶し、時定数判定部１４２の求めに応じて出力する。
【００３４】
＜時定数判定部１４２＞
時定数判定部１４２は、最大値 -X(k,n)を入力とし、遅延部１４３から一時刻（フレーム）前の最大値 -X(k,n-1)を取り出す。時定数判定部１４２は、最大値 -X(k,n)の一時刻（フレーム）前からの差分値が条件を満たしているかを判定し(Ｓ１４２)、時定数判定結果S(k,n)を出力する。
【００３５】
本実施形態では、最大値 -X(k,n)の一時刻（フレーム）前からの差分値が条件を満たしているかを、最大値 -X(k,n)の変化量を示す値と所定の変化量を示す値との大小関係から判定する。最大値 -X(k,n)の変化量を示す値は現在のフレームの最大値 -X(k,n)と過去のフレームの最大値 -X(k,n-1)との比 -X(k,n)/ -X(k,n-1)であり、所定の変化量を示す値は所定の時定数βである。時定数判定部１４２は、現在のフレームの最大値 -X(k,n)が過去のフレームの最大値 -X(k,n-1)に所定の時定数βを乗じた値β -X(k,n-1)よりも大きいか否かを判定し、変化量判定結果S(k,n)を出力する。例えば、次式により、変化量判定結果Ｓ(k,n)を得る。
【００３６】
【数２】
2019160006.tif 000004
【００３７】
時定数βは、通常室内の残響よりも十分大きく1（＝減衰無し）よりは小さい値である。つまり、この例では変化量判定結果S(k,n)が1のときに変化量の条件を満たしていることを示す。
【００３８】
＜利得計算部１４４＞
利得計算部１４４は、パワー判定結果P(k,n)と変化量判定結果S(k,n)とを入力とし、ハウリングを抑圧するための利得(ゲイン)を計算し（Ｓ１４４）、出力する。例えば、利得計算部１４４は、現在のフレームのパワー判定結果P(k,n)から得られるパワー指標 -P(k,n)が、所定の値 -Pminよりも小さい場合には -P(k,n)=-Pminとし、所定の値 -Pmaxよりも大きい場合には -P(k,n)= -Pmaxとし、パワー指標 -P(k,n)と所定の閾値Pthrとの大小関係に基づき第一ゲインGpを求める。ただし、-Pmin< -Pmaxである。例えば、以下のように第一ゲインGpを求める。
【００３９】
【数３】
2019160006.tif 000005
【００４０】
ただし、Gp1は0以上1以下の固定値である。-P(k,n)のn=0の初期値は0とする。
【００４１】
さらに、利得計算部１４４は、現在のフレームの変化量判定結果S(k,n)から得られる時定数指標 -S(k,n)が、所定の値 -Sminよりも小さい場合には-S(k,n)=-Sminとし、所定の値 -Smaxよりも大きい場合には -S(k,n)= -Smaxとし、時定数指標 -S(k,n)と所定の閾値Sthrとの大小関係に基づき第二ゲインGSを求める。ただし、-Smin< -Smaxである。例えば、以下のように第二ゲインGSを求める。
【００４２】
【数４】
2019160006.tif 000006
【００４３】
ただし、Gs1は0以上1以下の固定値である。-S(k,n)のn=0の初期値は0とする。
【００４４】
利得計算部１４４は、第一ゲインGPと、第二ゲインGSとのうちの何れか小さい値を第三ゲインGとし、ハウリングを抑圧するためのゲインとして第三ゲインGを出力する。例えば、以下のように第三ゲインGを求める。
G(k,n)=min{GP,GS}
ただし、min{}は{}内の最小の値を出力するものとする。
【００４５】
＜利得重畳部１４５＞
利得重畳部１４５は、第三ゲインGと信号Xi(k,n)とを入力とし、第三ゲインGを信号Xi(k,n)に乗算し(Ｓ１４５)、積を抑圧後の信号Yi(k,n)として出力する。
Yi(k,n)=Xi(k,n)G(k,n)
【００４６】
＜周波数逆変換部１５０＞
周波数逆変換部１５０は、信号Yi(k,n)を入力とし、時間領域の信号に変換し（Ｓ１５０）、変換後の信号yi(t)をハウリング抑圧装置１００−ｉの出力値として出力する。なお、時間領域への変換方法は、周波数変換部１１０で用いた周波数領域への変換方法に対応するものを用いればよい。例えば、周波数領域の信号Yi(k,n)をフーリエ逆変換(高速フーリエ逆変換等)により時間領域の信号に変換する。
yi(n)=IFT(Yi(k,n))
なお、yi(n)=[yi(nT-T+1),yi(nT-T+2),…,yi(nT)]である。フーリエ逆変換によりフレーム毎に得られた時間領域の信号yi(n)は適宜シフトされて線形和が取られて、連続した時間領域の信号yi(t)となる。
【００４７】
＜効果＞
以上の構成により、ハウリングの検知の遅れを防ぐことができ、拡声システムのハウリング防止効果を向上させることができる。
【００４８】
図３のように２つのハウリング抑圧装置１００−ｉを配置し、i=1,2においてそれぞれハウリング抑圧処理を実行することで、二つの系からハウリングの発生を抑圧することができる。
【００４９】
＜変形例１＞
本実施形態において、第一ゲインGp1,第二ゲインGs1は固定値としていたが、入力音響信号に連動させてもよい。例えば、
Gp1=α×Thr2/-X(k,n)
のように設定する。αは0以上1以下の実数で、Xi(k,n)=-X(k,n)かつα=1のとき、Gp1はXi(k,n)をThr2まで落とす抑圧ゲインとなる。αが１未満の場合、Thr2よりもさらに小さくなるように抑圧量が設定される。例えば、Thr2は、これ以上大きな音であればハウリングであると考えらえる値、もしくは、それよりも小さな値に設定される。また、Thr2はパワー判定部１４１で用いるThr1以下の値に設定してもよい。
【００５０】
第二ゲインGs1についても同様に
GS1=α2×Thr3/-X(k,n)
のように設定してもよい。α2は0以上1以下の実数である。Thr3はThr2と同様の考え方で設定される。
【００５１】
＜変形例２＞
ハウリング抑圧システムは、L個のハウリング抑圧装置１００−ｉを含む構成としてもよい(図９参照)。Lは２以上の整数の何れかであり、i=1,2,…,Lである。
【００５２】
この変形例２では、統合処理部１３０は、ハウリング抑圧装置１００−ｉの平滑化処理部１２０の出力値である値X'i(k,n)と、他のL-1個のハウリング抑圧装置１００−ｊの平滑化処理部１２０の出力値である値X'j(k,n)とを入力とする。ただし、j=1,2,…,Lであり、i≠jである。統合処理部１３０は、L個の値X'i(k,n)の中から最大値 -X(k,n)を求め(Ｓ１３０)、出力する。なお、この最大値を求める処理をL個の値X'i(k,n)を統合する処理とも言い、最大値 -X(k,n)を統合した値とも言う。例えば、次式により、最大値を求める。
-X(k,n)=max{X1'(k,n),X2'(k,n),…,XL'(k,n)}
max{}は{}内の最大の値を出力するものとする。
【００５３】
このような構成により、第一実施形態のハウリング抑圧システムを、L個のハウリング抑圧装置１００−ｉを含む構成に拡張することができる。また、第一実施形態は変形例２の一例と言える。
【００５４】
なお、例えば、L個のハウリング抑圧装置１００−ｉの出力値yiのうちのL-1個の出力値yiを合成(ミキシング)し、スピーカ９０−ｉに出力する構成としてもよい。例えば、あるマイクスピーカを構成するマイクにより収音された音響信号に対応する出力値yiをL個の出力値yiから除いたもの(L-1個の出力値yi)を合成し、同じマイクスピーカを構成するスピーカで再生すればよい。
【００５５】
＜変形例３＞
本実施形態の二つのハウリング処理装置１００−ｉを一つの装置により実現してもよい。図１０は、変形例３のハウリング抑圧装置１００の配置例を示す。図１１は本変形例に係るハウリング抑圧装置の機能ブロック図を示す。ハウリング抑圧装置１００は、周波数変換部１１０と平滑化処理部１２０と遅延部１２１と統合処理部１３０とハウリング抑圧処理部１４０と周波数逆変換部１５０とを含み、各部において、第一実施形態と同様の処理を行う。ただし、第一実施系形態では、統合処理部を除き各部において1つの系の信号に対して処理を行っていたが、本変形例では、2つの系の信号に対して処理を行う。なお、統合処理部では、第一実施系形態と同様の処理を行う。
【００５６】
このような構成により、図１０に示すように、ハウリング抑圧装置１００は、2つの系のマイクロホン８０−ｉにより収音された音響信号を入力とし、2つのマイクロホン８０−ｉにより収音された音響信号に含まれるハウリング成分をそれぞれ抑圧し、抑圧後の信号をそれぞれ2つのスピーカ９０−ｉに出力する。
【００５７】
なお、変形例１〜３はそれぞれ組合せてもよい。
【００５８】
＜その他の変形例＞
本実施形態及びその変形例では、L個の系全てにおいてハウリング成分を抑圧しているが、L個の系のうちの少なくとも1つの系においてハウリング成分を抑圧する構成としてもよい。例えば、第一実施形態において、ハウリング抑圧処理装置１００−１、１００−２の何れか一方のみを配置する構成としてもよい。この場合、配置されたハウリング抑圧処理装置において、他方の系のマイクロホンにより収音された音響信号に対して周波数変換部１１０及び平滑化処理部１２０における処理(Ｓ１１０，Ｓ１２０)を行い、統合処理部１３０の入力値を生成する。
【００５９】
このような構成であっても、第一実施形態等と比べるとハウリング防止効果は下がるが、ハウリングの検知の遅れを防ぐことができ、拡声システムのハウリング防止効果を向上させることができる。
【００６０】
また、本実施形態では、マイクロホンにより収音された時間領域の音響信号を入力としているが、別装置により周波数領域の信号に変換された音響信号を入力としてもよい。この場合、ハウリング抑圧装置１００−ｉは、周波数領域変換部１１０を含まなくともよい。
【００６１】
また、平滑化処理部１２０における平滑化処理を行うことで、フレームは安定するが、平滑化処理を行わずに処理を行ったとしても、ハウリングの検知の遅れを防ぐことができ、拡声システムのハウリング防止効果を向上させることはできる。よって、ハウリング抑圧装置１００−ｉは、平滑化処理部１２０を含まなくともよい。
【００６２】
統合処理部１３０では、複数のマイクロホンにより収音された音響信号から得られる周波数領域の信号であるL個の第i信号を入力とすればよい。例えば、本実施形態の2個の値X'i(k,n),X'j(k,n)以外に、平滑化処理前の周波数領域の信号Xi(k,n)や、複数のマイクロホンにより収音された音響信号に対してビームフォーミング処理、雑音抑圧処理等の信号処理を行った後の周波数領域の信号を入力とすればよい。
【００６３】
また、ハウリング抑圧装置１００−ｉは、例えば、周波数領域の信号Yi(k,n)をそのまま出力し、後段の装置において、周波数領域の信号Yi(k,n)に対して何らかの信号処理を行い、信号処理後に時間領域の信号に変換してもよい。よって、ハウリング抑圧装置１００−ｉは、周波数逆変換部１５０を含まなくともよい。
【００６４】
＜第二実施形態のポイント＞
第一実施形態の統合処理部１３０において
-X(k,n)=max{Xi'(k,n),Xj'(k,n)}
によりうなりの影響を軽減できるが、片側で音声を発話しているなど、別の音が鳴っている場合にも影響を受けやすい。つまり、どちらか一方で周波数成分が大きければ-X(k,n)は大きな値をとる。
【００６５】
これに対し、「片側で発せられた音声」が片側でのみ音圧が大きいことを利用し、
-X(k,n)=min{Xi'(k,n),Xj'(k,n)}
とする方法を上げる。このときminは{}内の最小の値を出力するものとする。
【００６６】
これにより、音声を通常に発した場合(言い換えると、ハウリングが起きていない状況で話者が音声を発した場合)は、２系統の低い方が選ばれる。一方、ハウリングをしかけている場合は、２系統はほぼ同じ音量で増加していくため、音声を通常に発生した場合に比べ２系統の低い方の値は相対的に大きな値となる。このような値を用いることで、第一実施形態よりもハウリングとそうでない信号の区別がつきやすくなる。
【００６７】
なお、このやり方では逆にうなりの現象を捉えにくくなるが、以下のように、
【００６８】
【数５】
2019160006.tif 000007
【００６９】
という変数を定義して、この変数が短期間の間にプラスとマイナスを頻繁に行き来するような場合にうなりと判定することにすれば、問題は軽減される。
【００７０】
第二実施形態では、上述の構成を実現するための構成について説明する。
【００７１】
＜第二実施形態＞
第一実施形態と異なる部分を中心に説明する。
【００７２】
図１２は第二実施形態に係るハウリング抑圧装置の機能ブロック図を、図１３はその処理フローを示す。
【００７３】
ハウリング抑圧装置１００−ｉは、周波数変換部１１０と平滑化処理部１２０と遅延部１２１と統合処理部２３０とハウリング判定部２６０とハウリング抑圧処理部２４０と周波数逆変換部１５０とを含む。周波数変換部１１０と平滑化処理部１２０と周波数逆変換部１５０における処理は第一実施形態と同様である。
【００７４】
なお、「片側で発せられた音声」が片側でのみ音圧が大きいことを利用するため、2個のマイクロホン８０−ｉは、音源に対して異なる距離に配置されているものとする。
【００７５】
＜統合処理部２３０＞
統合処理部２３０は、ハウリング抑圧装置１００−ｉの平滑化処理部１２０の出力値である値X'i(k,n)と、他のハウリング抑圧装置１００−ｊの平滑化処理部１２０の出力値である値X'j(k,n)とを入力とし、2個の値X'i(k,n),X'j(k,n)の中から最小値 -X(k,n)を求め(Ｓ２３０)、出力する。なお、この最小値を求める処理を2個の値X'i(k,n),X'j(k,n)を統合する処理とも言い、最小値 -X(k,n)を統合した値とも言う。例えば、次式により、最小値を求める。
-X(k,n)=min{Xi'(k,n),Xj'(k,n)}
【００７６】
＜ハウリング判定部２６０＞
ハウリング判定部２６０は、ハウリング抑圧装置１００−ｉの平滑化処理部１２０の出力値である値X'i(k,n)と、他のハウリング抑圧装置１００−ｊの平滑化処理部１２０の出力値である値X'j(k,n)とを入力とし、2個の値X'i(k,n),X'j(k,n)の差分の符号が、所定の時間内に所定の回数以上変化した場合に、ハウリングが発生する恐れがある、または、発生していると判定し(Ｓ２６０)、判定結果に出力する。例えば、ハウリングが発生する恐れがある、または、発生していると判定した場合には判定結果として１を出力し、それ以外の場合に０を出力する。
【００７７】
2個の値X'i(k,n),X'j(k,n)の差分の符号が変化するか否かは、(X'i(k,n)-X'j(k,n))の符号を用いて判断してもよいし、上述の通り、
【００７８】
【数６】
2019160006.tif 000008
【００７９】
という変数を定義して、この変数の符号を用いて判断してもよい。例えば、図８の例では0.1秒内に6回符号が変化しているので、このような状態を検知できるように所定の時間及び所定の回数を設定すればよい。
【００８０】
＜ハウリング抑圧処理部２４０＞
ハウリング抑圧処理部２４０は、最小値 -X(k,n)と周波数領域の信号Xi(k,n)とハウリング判定部２６０の判定結果とを入力とし、判定結果がハウリングが発生する恐れがある、または、ハウリングが発生していることを示す場合、最小値 -X(k,n)を用いて、信号Xi(k,n)にハウリング抑圧処理を行い（Ｓ２４０）、抑圧後の信号Yi(k,n)を出力する。なお、上述の条件を満たさない場合(判定結果がハウリングが発生する恐れがある、または、ハウリングが発生していることを示さない場合)、信号Xi(k,n)に対してハウリング抑圧処理を行わず、信号Yi(k,n)=Xi(k,n)を出力する。ハウリング抑圧処理を行う場合には、最大値 -X(k,n)に代えて最小値 -X(k,n)を用いてハウリング抑圧処理部１４０と同様の処理を行えばよい。ただし、閾値Thr1や時定数β等は最小値 -X(k,n)に合わせて適切に設定する。なお、本実施形態では、１度、ハウリング抑圧処理を行った後は、ハウリング抑圧処理を行い続けるものとする。この場合、ハウリング判定部２６０では、ハウリングが発生する恐れがある、または、発生していると１度判定した後は判定処理を行わない構成としてもよい。また、判定結果がハウリングが発生する恐れがある、または、ハウリングが発生していることを示さない場合は、再度ハウリング抑圧処理を行わない構成とし、ハウリング判定部２６０における判定処理を再開してもよい。
【００８１】
＜効果＞
このような構成とすることで、第一実施形態と同様の効果を得ることができる。さらに、ハウリング以外の別の音が鳴っている場合にも適切にハウリングを抑圧できる。なお、本実施形態と第一実施形態の変形例とを組合せてもよい。また、ハウリング判定部２６０の判定結果を統合部２３０の入力とし、判定結果がハウリングが発生する恐れがある、または、ハウリングが発生していることを示さない場合、統合処理部２３０における統合処理（Ｓ２３０）を省略する構成としてもよい。
【００８２】
＜その他の変形例＞
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【００８３】
＜プログラム及び記録媒体＞
また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００８４】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００８５】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
【００８６】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００８７】
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
2019160006.tif 000009
【図２】
2019160006.tif 000010
【図３】
2019160006.tif 000011
【図４】
2019160006.tif 000012
【図５】
2019160006.tif 000013
【図６】
2019160006.tif 000014
【図７】
2019160006.tif 000015
【図８】
2019160006.tif 000016
【図９】
2019160006.tif 000017
【図１０】
2019160006.tif 000018
【図１１】
2019160006.tif 000019
【図１２】
2019160006.tif 000020
【図１３】
2019160006.tif 000021
【国際調査報告】
2019160006.tif 000022
2019160006.tif 000023
2019160006.tif 000024