(57)【要約】【課題】適応マイクロホンアレイ残響抑圧における収束速度の向上を図る。【解決手段】マイクロホンアレイの各マイクロホンによって観測された音声信号を狭帯域信号に分割し、同じ周波数帯域のすべてのマイクロホンに関する狭帯域信号を適応フィルタに入力して残響を抑圧し、それら残響が抑圧された信号を広帯域信号に再構成して出力する適応マイクロホンアレイ残響抑圧装置において、適応フィルタは各狭帯域信号を予め定められた時間だけ遅延させる遅延素子300と、遅延素子300の出力信号の標本を予め定められた個数だけベクトル化するベクトル化器310と、ベクトル化器310の出力ベクトル信号から１つのマイクロホンに関する上記狭帯域信号に含まれる残響成分を予測する残響予測フィルタ320と、残響予測フィルタ320のタップ重みベクトルを重み付きRLS法に従って制御する適応重み制御機構330とを備える。【選択図】図３
2010245697.tif 000002
【特許請求の範囲】
【請求項１】
マイクロホンアレイの各マイクロホンによって観測された音声信号を狭帯域信号に分割し、同じ周波数帯域のすべてのマイクロホンに関する狭帯域信号を適応フィルタに入力して残響を抑圧し、それら残響が抑圧された信号を広帯域信号に再構成して出力する適応マイクロホンアレイ残響抑圧装置において、
上記適応フィルタは、
上記各狭帯域信号を予め定められた時間だけ遅延させる遅延素子と、
上記遅延素子の出力信号の標本を予め定められた個数だけベクトル化する第１のベクトル化器と、
上記第１のベクトル化器の出力ベクトル信号から１つのマイクロホンに関する上記狭帯域信号に含まれる残響成分を予測する残響予測フィルタと、
上記残響予測フィルタのタップ重みベクトルを重み付きRLS法に従って制御する適応重み制御機構とを備えることを特徴とする適応マイクロホンアレイ残響抑圧装置。
【請求項２】
請求項１記載の適応マイクロホンアレイ残響抑圧装置において、
上記適応重み制御機構は、
すべてのマイクロホンに関する上記第１のベクトル化器の出力ベクトル信号をまとめて多チャネルのベクトル信号にする第２のベクトル化器と、
重みを計算する重み計算部と、
誤差共分散行列を更新する誤差共分散計算部と、
上記第２のベクトル化器の出力ベクトル信号と上記重みと上記誤差共分散行列からゲインベクトルを計算するゲインベクトル計算部とを備えることを特徴とする適応マイクロホンアレイ残響抑圧装置。
【請求項３】
請求項２記載の適応マイクロホンアレイ残響抑圧装置において、
上記重み計算部は１つのマイクロホンに関する上記狭帯域信号の絶対値の冪乗を計算して上記重みとすることを特徴とする適応マイクロホンアレイ残響抑圧装置。
【請求項４】
請求項２記載の適応マイクロホンアレイ残響抑圧装置において、
上記適応重み制御機構は上記適応フィルタの出力信号を用いて上記重みを再計算することを特徴とする適応マイクロホンアレイ残響抑圧装置。
【請求項５】
マイクロホンアレイの各マイクロホンによって観測された音声信号を狭帯域信号に分割するフィルタバンク分析処理と、同じ周波数帯域のすべてのマイクロホンに関する狭帯域信号から残響が抑圧された信号を適応的に計算する適応フィルタ処理と、それら残響が抑圧された信号を広帯域信号に再構成して出力するフィルタバンク合成処理とを含む適応マイクロホンアレイ残響抑圧方法において、
上記適応フィルタ処理は、上記各狭帯域信号を予め定められた時間だけ遅延させる遅延処理と、その遅延された信号の標本を予め定められた個数だけベクトル化する第１のベクトル化処理と、そのベクトル化された信号から１つのマイクロホンに関する上記狭帯域信号に含まれる残響成分を予測する残響予測フィルタ処理と、その残響予測フィルタ処理のタップ重みベクトルを重み付きRLS法によって制御する適応重み制御処理とを含むことを特徴とする適応マイクロホンアレイ残響抑圧方法。
【請求項６】
請求項５記載の適応マイクロホンアレイ残響抑圧方法において、
上記適応重み制御処理は、すべてのマイクロホンに関する上記第１のベクトル化処理でベクトル化された信号をまとめて多チャネルのベクトル信号にする第２のベクトル化処理と、重みを計算する重み計算処理と、誤差共分散行列を計算する誤差共分散行列計算処理と、上記多チャネルのベクトル信号と上記重みと上記誤差共分散行列からゲインベクトルを計算するゲインベクトル計算処理とを含むことを特徴とする適応マイクロホンアレイ残響抑圧方法。
【請求項７】
請求項６記載の適応マイクロホンアレイ残響抑圧方法において、
１つのマイクロホンに関する上記狭帯域信号の絶対値の冪乗を上記重みとすることを特徴とする適応マイクロホンアレイ残響抑圧方法。
【請求項８】
請求項６記載の適応マイクロホンアレイ残響抑圧方法において、
上記適応フィルタ処理の出力信号を用いて上記重みを再計算することを特徴とする適応マイクロホンアレイ残響抑圧方法。
【請求項９】
請求項５乃至８のいずれかに記載した適応マイクロホンアレイ残響抑圧方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、適応マイクロホンアレイ技術と残響抑圧技術に関するものである。具体的には、マイクロホンアレイで観測した残響を含む音声から、部屋の残響特性の変動に追従しながら、残響成分を抑圧する装置及び方法に関する。このような残響抑圧技術はテレビ会議システムなどに利用することができる。
【背景技術】
【０００２】
図１は一般的な適応マイクロホンアレイ残響抑圧装置の構成を示したものである。Mはマイクロホンの個数を表し、Jは周波数帯域の個数を表す。
tを時間のインデクスとして、m番目のマイクロホンで観測された音声信号ym(t)はプリホワイトニングフィルタ100に入力される。プリホワイトニングフィルタ100は白色化された信号xm(t)を出力する。xm(t)はフィルタバンク分析器110に入力され、複数の狭帯域信号に分割された後、ダウンサンプリングされる。その結果、狭帯域ごとの信号xjm(n)がフィルタバンク分析器110から出力される。但し、jは周波数帯域のインデクス、nはダウンサンプリング後の時間のインデクスである。
【０００３】
次に、j番目の周波数帯域のすべてのマイクロホンに関する信号xj1(n),xj2(n),…,xjM(n)は適応フィルタ120に入力される。適応フィルタ120は残響が抑圧された狭帯域信号uj(n)を出力する。u0(n),…,uJ-1(n)はフィルタバンク合成器130に入力され、アップサンプリングされた後、広帯域信号に再構成される。その結果、広帯域の信号u(t)がフィルタバンク合成器130から出力される。最後に、u(t)はポストアンホワイトニングフィルタ140に入力され、プリホワイトニングフィルタ100の効果が除去される。このようにして、残響が抑圧された所望の信号v(t)がポストアンホワイトニングフィルタ140から出力される。なお、適応フィルタ120以外のコンポーネントは省略される場合がある。
【０００４】
図２は図１に示した適応マイクロホンアレイ残響抑圧装置における適応フィルタの従来構成例として、非特許文献１に記載されている適応フィルタの構成を示したものであり、図中、太矢印はベクトル信号を表す。
【０００５】
適応フィルタの入力信号xjm(n)はベクトル化器200に入力されて、過去Kj個の標本とまとめてベクトル化される。その結果、ベクトル化器200からXjm(n)=[xjm(n),xjm(n-1),…,xjm(n-Kj)]Tが出力される。なお、本明細書では、スカラー信号を小文字で、ベクトル信号を大文字で表現する。Kjは残響抑圧フィルタ210の次数、上付き添字Tは非複素共役転置である。Xjm(n)は、タップ重みベクトルWjm(n)=[wjm0(n), wjm1(n),…,wjmKj(n)]Tをもつ残響抑圧フィルタ210に入力される。各mに対する残響抑圧フィルタ210の出力が加算部230で加算されて、適応フィルタの出力信号uj(n)が計算される。
【０００６】
【数１】
2010245697.tif 000003
【０００７】
上式において、上付き添字Hは複素共役転置を表す。タップ重みベクトルWjm(n)は次に示す規則にしたがって更新される。
Wjm(n+1)=Wjm(n)+ΔWjm(n)            (2)
但し、ΔWjm(n)は適応重み制御機構220から入力されるタップ重み更新量ベクトルである。適応重み制御機構220は出力信号uj(n)の負の正規化尖度が最小になるように、確率的勾配法に基づいてΔWjm(n)を決定する。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Gillespie,B.W.,Malvar,H.S.,and Florencio,D.A.F.,“Speech dereverberation via maximum-kurtosis subband adaptive filtering,”in Proc. Int'l Conf. Acoust. Speech,Signal Process.,vol.VI,2001,pp.3701-3704.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来の適応マイクロホンアレイ残響抑圧装置は、上述したように確率的勾配法に基づいてフィルタを制御しており、よって収束速度が遅いという課題があった。
本発明の目的は高速な収束特性をもつ適応マイクロホンアレイ残響抑圧装置・方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
この発明によれば、図1に示した適応マイクロホンアレイ残響抑圧装置において、適応フィルタは、上記各狭帯域信号を予め定められた時間だけ遅延させる遅延素子と、遅延素子の出力信号の標本を予め定められた個数だけベクトル化するベクトル化器と、ベクトル化器の出力ベクトル信号から１つのマイクロホンに関する上記狭帯域信号に含まれる残響成分を予測する残響予測フィルタと、残響予測フィルタのタップ重みベクトルを重み付きRLS法に従って制御する適応重み制御機構とを備える。この発明は、フィルタバンク分析器とフィルタバンク合成器を必須の構成要素とする。プリホワイトニングフィルタとポストアンホワイトニングフィルタを含めるか否かは、任意に選択できる。
【発明の効果】
【００１１】
本発明では、確率的勾配法の代わりに重み付きRLS(Recursive Least Squares)法に基づいて、フィルタを適応的に制御する。確率的勾配法がコスト関数の値を確率論的に最小化するのに対して、重み付きRLS法はコスト関数の値を決定論的に最小化する。従って、重み付きRLS法は確率的勾配法と比較して収束速度が速いという特長をもつ。このため、本発明によれば、高速な収束特性をもつ適応マイクロホンアレイ残響抑圧装置・方法を実現することができる。
【図面の簡単な説明】
【００１２】
【図１】適応マイクロホンアレイ残響抑圧装置の構成を示すブロック図。
【図２】図１における適応フィルタの従来構成例を示すブロック図。
【図３】本発明による適応マイクロホンアレイ残響抑圧装置の実施形態１における適応フィルタの構成を示すブロック図。
【図４】図３における適応重み制御機構の構成を示すブロック図。
【図５】本発明による適応マイクロホンアレイ残響抑圧装置の実施形態２における適応フィルタの構成を示すブロック図。
【図６】図５における適応重み制御機構の構成を示すブロック図。
【図７】適応マイクロホンアレイ残響抑圧方法の処理の流れを示すフローチャート。
【図８】本発明による適応マイクロホンアレイ残響抑圧方法における適応フィルタの処理の流れを示すフローチャート。
【図９】図８におけるタップ重み更新量ベクトルの実施形態３による計算方法の処理の流れを示すフローチャート。
【図１０】図８におけるタップ重み更新量ベクトルの実施形態４による計算方法の処理の流れを示すフローチャート。
【図１１】観測音声と原音声の間及び本発明による処理後の音声と原音声の間の平均MFCC距離を示すグラフ。
【図１２】本発明により得られた平均MFCC距離の改善値を示すグラフ。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態を説明する。
〈実施形態１〉
適応マイクロホンアレイ残響抑圧装置の全体構成は図１と同様とし、実施形態１では適応フィルタ120を図３に示したような構成とする。
適応フィルタへの入力はプリホワイトニング処理された観測音声の狭帯域信号xjm(n)で、出力は残響が抑圧された狭帯域信号uj(n)である。
【００１４】
適応フィルタの入力信号xjm(n)はD単位時間遅延素子300に入力されて、遅延された信号xjm(n-D)が出力される。Dは予め決められた定数である。xjm(n-D)はベクトル化器310に入力されて、過去Kj個の標本とまとめてベクトル化される。その結果、ベクトル化器310からXjm(n-D)=[xjm(n-D),xjm(n-D-1),…,xjm(n-D-Kj)]Tが出力される。但し、Kjは残響予測フィルタ320の次数である。Xjm(n-D)は、タップ重みベクトルGjm(n)=[gjm0(n), gjm1(n),…,gjmKj(n)]Tをもつ残響予測フィルタ320に入力される。各mに対する残響予測フィルタ320の出力は加算部340で加算された後、符号反転部350で正負が反転され、その反転された出力が加算部360で1番目のマイクロホンに関する入力信号xj1(n)と加算されることで、適応フィルタの出力信号uj(n)が計算される。
【００１５】
【数２】
2010245697.tif 000004
【００１６】
タップ重みベクトルGjm(n)は次に示す規則にしたがって更新される。
Gjm(n+1)=Gjm(n)+ΔGjm(n)            (4)
但し、ΔGjm(n)は適応重み制御機構330から入力されるタップ重み更新量ベクトルである。
適応重み制御機構330は出力信号uj(n)に関する次式のコスト関数Fの値（コスト関数Fの値はuj(n)に含まれる残響成分の度合いの見積もりを表す）が最小となるように、重み付きRLS法に基づいてΔGjm(n)を決定する。
【００１７】
【数３】
2010245697.tif 000005
【００１８】
但し、αは予め決められた適応の速度を調整する忘却係数、λj(n)は適応フィルタの入力信号に依存して決められる重み(後述)である。
図４は適応重み制御機構330の構成を示したものであり、図中、白抜き矢印は行列信号を表す。
【００１９】
適応重み制御機構330への入力はxj1(n),Xjm(n-D),uj(n)で、出力はタップ重み更新量ベクトルΔGjm(n)である。すべてのmに関するXjm(n-D)はベクトル化器400に入力されて単一のベクトルにまとめられる。その結果、ベクトル化器400からXj(n-D)=[Xj1(n-D)T,…,XjM(n-D)T]Tが出力される。Xj(n-D)はゲインベクトル計算部410に入力される。ゲインベクトル計算部410は次式にしたがってゲインベクトルQj(n)を計算し、出力する。
【００２０】
【数４】
2010245697.tif 000006
【００２１】
但し、Φj(n)は誤差共分散計算部420から入力される誤差共分散行列、λj(n)は重み計算部430から入力される重みである。ゲインベクトルQj(n)がuj(n)の複素共役と積算されて、タップ重み更新量ベクトルΔGj(n)が出力される。
ΔGj(n)=Qj(n)uj(n)*            (7)
なお、図４中、440は複素共役生成部を示し、450は積算部を示す。
ΔGj(n)は次式のように、各mに関するタップ重み更新量ベクトルΔGjm(n)で構成されている。
ΔGj(n)=[ΔGj1(n)T,ΔGj2(n)T,…,ΔGjM(n)T]T          (8)
誤差共分散計算部420は次式にしたがってΦj(n)を更新する。
【００２２】
【数５】
2010245697.tif 000007
【００２３】
重み計算部430はxj1(n)を入力として受け取り、重みλj(n)を出力する。
λj(n)の計算方法は仮定する音声のモデルに依存して決まる。例えば、音声のモデルとして正規分布を仮定する場合、最適なλj(n)の値は、時刻n、周波数帯域jにおける原音声の狭帯域短時間パワーである。ただし、原音声とは、残響が重畳される前の未知の音声を指す。原音声の狭帯域短時間パワーは未知であるから、その近似値をλj(n)とする。一つの近似方法として、次式のように、λj(n)をxj1(n)の振幅の二乗としてもよい。
λj(n)=｜xj1(n)｜2            (10)
また、これを一般化して、次式のようにλj(n)を設定してもよい。
λj(n)=｜xj1(n)｜β            (11)
但し、βは正の実数である。
【００２４】
〈実施形態２〉
実施形態１の重み計算部430は、重みλj(n)を適応フィルタの入力信号xj1(n)から直接計算する。xj1(n)は残響を含むため、求められたλj(n)の値は最適な重みである残響を含まない原音声の狭帯域短時間パワーの粗い近似となっている。適応フィルタの出力信号uj(n)はxj1(n)と比較して残響が抑圧されていると期待されるから、uj(n)を用いてλj(n)を再計算すれば、より高い残響抑圧性能を得ることができる。実施形態２はこれを実現する装置の構成方法を提供する。
【００２５】
実施形態２は適応マイクロホンアレイ残響抑圧装置を図１と同様に構成する。適応フィルタ120は図５のように構成する。適応フィルタへの入力はプリホワイトニング処理された観測音声の狭帯域信号xjm(n)で、出力は残響が抑圧された狭帯域信号uj(n)である。実施形態２におけるD単位時間遅延素子500，ベクトル化器510，残響予測フィルタ520の機能は、実施形態１におけるD単位時間遅延素子300，ベクトル化器310，残響予測フィルタ320の機能と同じである。実施形態２は適応重み制御の方法が実施形態１と異なる。実施形態１では適応重み制御が適応重み制御機構330で実現されるのに対して、実施形態２では図５中の符号530〜583で示した構成で実現される。
【００２６】
実施形態２の具体的な処理の流れを述べる。まず、適応フィルタの入力信号xjm(n)はD単位時間遅延素子500に入力されて、遅延された信号xjm(n-D)が出力される。Dは予め決められた定数である。xjm(n-D)はベクトル化器510に入力されて、過去Kj個の標本とまとめてベクトル化される。その結果、ベクトル化器510からXjm(n-D)=[xjm(n-D),xjm(n-D-1),…,xjm(n-D-Kj)]Tが出力される。但し、Kjは残響予測フィルタ520の次数である。
【００２７】
最新のタップ重みベクトルの値がフィルタ記憶部580に記憶されており、このタップ重みベクトルの値がフィルタ記憶部580から読み込まれ、残響予測フィルタ520に設定される。このタップ重みベクトルの値は、フィルタ記憶部580とは別のフィルタ記憶部570にも書き込まれる。図５中、白抜き矢印はタップ重みベクトルをコピーすることを表す。残響予測フィルタ520はXjm(n-D)を入力として受け取る。各mに対する残響予測フィルタ520の出力は加算部591で加算された後、符号反転部592で正負が反転され、その反転された出力が加算部593で1番目のマイクロホンに関する入力信号xj1(n)と加算されることで、適応フィルタの出力信号uj(n)が計算される。
【００２８】
【数６】
2010245697.tif 000008
【００２９】
上式において、Gjm(n)は残響予測フィルタ520のタップ重みベクトルを表す。
以上の過程により、出力信号uｊ(n)が計算される。上記説明から明らかなように、フィルタ記憶部570は、直前の出力信号uｊ(n)の計算過程で用いられたタップ重みベクトルの値を記憶している。一方、フィルタ記憶部580は、現在の出力信号の計算過程で用いるタップ重みベクトルの値を記憶している。
【００３０】
次に、フィルタ記憶部580に記憶されているタップ重みベクトルの値が更新される過程について説明する。
補間素子530はxj1(n)とXjm(n-D)に対して、次式にしたがって1:Rの補間を行う。
x’j1[Rn+r]=xj1(n)
X’jm[Rn+r]=Xjm(n-D)  0＜∀r＜R-1            (13)
なお、本明細書では、補間後の信号を表すのに、プライム符号と角括弧を用いる。
【００３１】
タップ重みベクトルの値がフィルタ記憶部570から読み込まれ、残響予測フィルタ540に設定される。残響予測フィルタ540はX’ jm[k]を入力として受け取る。各mに対する残響予測フィルタ540の出力は加算部581で加算された後、符号反転部582で正負が反転され、その反転された出力が加算部583でx’j1[k]と加算されることでu’j[k]が計算される。
【００３２】
【数７】
2010245697.tif 000009
【００３３】
上式において、G’jm[k]は残響予測フィルタ540のタップ重みベクトルを表す。タップ重みベクトルG’jm[k]は次に示す規則にしたがって更新される。
G’jm[k+1]=G’jm[k]+ΔG’jm[k]            (15)
但し、ΔG’jm[k]は適応重み制御機構560から入力されるタップ重み更新量ベクトルである。更新されたタップ重みベクトルの値は、フィルタ記憶部580に書き込まれる。マルチプレクサ550はx’j1[k]とu’j[k]を受け取り、z’j[k]を適応重み制御機構560に出力する。z’j[k]はマルチプレクサ550の制御信号が1の場合にはx’j1[k]を、制御信号が0の場合にはu’j[k]をとる。但し、制御信号はkの値がRの倍数のときにだけ1をとり、それ以外のときには0をとるものとする。
【００３４】
適応重み制御機構560の構成を図６に示す。適応重み制御機構560への入力はz’j[k], X’jm[k], u’j[k]及び制御信号で、出力はタップ重み更新量ベクトルΔG’jm[k]である。すべてのmに関するX’jm[k]はベクトル化器600に入力されて、単一のベクトルにまとめられる。その結果、ベクトル化器600からX’j[k]=[X’j1[k]T,…,X’jM[k]T]Tが出力される。X’j[k]はゲインベクトル計算部610に入力される。ゲインベクトル計算部610は次式にしたがってゲインベクトルQ’ j[k]を計算し、出力する。
【００３５】
【数８】
2010245697.tif 000010
【００３６】
但し、Φ’j[k]は誤差共分散計算部620から入力される誤差共分散行列、λ’j[k]は重み計算部630から入力される重みである。ゲインベクトルQ’j[k]がu’j[k]の複素共役と積算されて、タップ重み更新量ベクトルΔG’j[k]が出力される。
ΔG'j[k]=Q'j[k]u'j[k]*            (17)
なお、図６中、640は複素共役生成部を示し、650は積算部を示す。
ΔG’j[k]は次式のように、各mに関するタップ重み更新量ベクトルΔG’jm[k]で構成されている。
ΔG’j[k]=[ΔG’j1[k]T,ΔG’j2[k]T,…,ΔG’jM[k]T]T            (18)
誤差共分散計算部620は制御信号が1のときにだけ、次式にしたがってΦ’j[k]を更新し、そうでなければ、Φ’j[k+1]= Φ’j[k]とする。
【００３７】
【数９】
2010245697.tif 000011
【００３８】
重み計算部630はz’j[k]を入力として受け取り、次式にしたがって重みλ’j[k]を計算し、出力する。
λ’j[k]=｜z’j[k]｜β            (20)
但し、βは正の実数である。
この実施形態２では図５において一点鎖線で囲った処理部は、それ以外の処理部に比べてR倍の速度で動作するものとなっている。
【００３９】
<実施形態３>
本発明の適応マイクロホンアレイ残響抑圧の方法は、処理の手続きをコンピュータが実行可能なプログラムとして記述し、コンピュータにこのプログラムを実行させることによって実現することもできる。以下では実施形態１に対応する実行可能プログラムの処理の手続きを説明する。
【００４０】
図７は実施形態３で用いる、一般的な適応マイクロホンアレイ処理の流れを示している。手順1000ではm番目のマイクロホンで観測された音声信号ym(t)に対してプリホワイトニングフィルタを適用することで、白色化された信号xm(t)を計算する。手順1010ではxm(t)に対してフィルタバンク分析を適用することで、狭帯域ごとの信号xjm(n)を計算する。但し、jは周波数帯域のインデクスである。手順1020ではj番目の周波数帯域のすべてのマイクロホンに関する信号xj1(n),xj2(n),…,xjM(n)に対して適応フィルタを適用することで、残響が抑圧された狭帯域信号uj(n)を計算する。手順1030ではすべての周波数帯域に関する狭帯域信号u0(n),u1(n),…,uJ-1(n)に対してフィルタバンク合成を適用することで、広帯域の信号u(t)を計算する。手順1040ではu(t)に対してポストアンホワイトニングフィルタを適用することで、適応マイクロホンアレイ残響抑圧システムの出力信号v(t)を計算する。但し、適応フィルタ処理を行う1020以外の手順は適宜省略してもよい。
【００４１】
図８は手順1020の処理の流れを示している。なお、手順1020はn=0,1,…に対して順次実行される。手順1100ではxjm(n)をD単位時間だけ遅延させることで、xjm(n-D)を求める。手順1110ではxjm(n-D),xjm(n-D-1),…,xjm(n-D-Kj)をベクトル化して、Xjm(n-D)を求める。
Xjm(n-D)=[xjm(n-D),xjm(n-D-1),…,xjm(n-D-Kj)]T            (21)
但し、Kjは手順1120で用いる残響予測フィルタの次数である。手順1120ではXjm(n-D)と残響予測フィルタを用いてxj1(n)に含まれる残響成分を予測し、これをxj1(n)から減算することでuj(n)を計算する。
【００４２】
【数１０】
2010245697.tif 000012
【００４３】
上式において、Gjm(n) =[gjm0(n), gjm1(n),…,gjmKj(n)]Tは残響予測フィルタのタップ重みベクトルを表す。手順1130ではuj(n),xj1(n),及びXj1(n-D),Xj2(n-D),…,XjM(n-D)を用いて、重み付きRLS法にしたがってタップ重み更新量ベクトルΔGj1(n),ΔGj2(n),…,ΔGjM(n)を計算する。手順1140では残響予測フィルタのタップ重みベクトルを次式にしたがって更新する。
Gjm(n+1)=Gjm(n)+ΔGjm(n)            (23)
【００４４】
図９は手順1130の処理の流れを示している。手順1200ではxj1(n)を用いて、次式にしたがって重みλj(n)を計算する。
λj(n)=｜xj1(n)｜β            (24)
但し、βは正の実数である。手順1210ではXj1(n-D),Xj2(n-D),…,XjM(n-D)を単一のベクトルにまとめてXj(n-D)を求める。
Xj(n-D)=[Xj1(n-D)T,Xj2(n-D)T,…,XjM(n-D)T]T            (25)
手順1220ではXj(n-D),λj(n)及び誤差共分散行列Φj(n)を用いて、次式にしたがってゲインベクトルQj(n)を計算する。
【００４５】
【数１１】
2010245697.tif 000013
【００４６】
手順1230では次式にしたがってΦj(n)を更新する。
【００４７】
【数１２】
2010245697.tif 000014
【００４８】
手順1240では次式にしたがってタップ重み更新量ベクトルΔGj(n)を計算する。
ΔGj(n)=Qj(n)uj(n)*            (28)
ΔGj(n)は次式のように各mに対するタップ重み更新量ベクトルでΔGjm(n)で構成されている。
ΔGj(n)=[ΔGj1(n)T,ΔGj2(n)T,…,ΔGjM(n)T]T            (29)
【００４９】
〈実施形態４〉
実施形態４は、実施形態２が実現する処理の手続きをコンピュータが実行可能なプログラムとして記述し、コンピュータにこのプログラムを実行させることで実現される。実施形態４の残響抑圧方法は、実施形態３の残響抑圧方法において、適応フィルタの出力信号uj(n)を用いて重みλj(n)を再計算するものである。
図７と図８の処理の流れは、実施形態３と実施形態４で共通である。これらの実施形態では、手順1130におけるタップ重み更新量ベクトルの計算方法のみ異なる。
【００５０】
実施形態４によるタップ重み更新量ベクトルの計算方法を、図１０を参照しながら説明する。図１０に示した通り、本実施形態は繰り返し処理に基づく。手順1300ではXj1(n-D),Xj2(n-D),…,XjM(n-D)をベクトル化して、Xj(n-D)を求める。
Xj(n-D)=[Xj1(n-D)T,Xj2(n-D)T,…,XjM(n-D)T]T            (30)
手順1310では適応フィルタの入力信号かフィルタ処理後の信号のいずれかを表す信号zj(n)を導入し、zj(n)を入力信号xj1(n)で初期化する。
zj(n)=xj1(n)            (31)
手順1320ではzj(n)を用いて、次式にしたがって重みλj(n)を計算する。
λj(n)=|zj(n)|β          (32)
但し、βは正の実数である。手順1330ではXj(n-D),λj(n)、及び誤差共分散行列Φj(n)を用いて、次式にしたがってゲインベクトルQj(n)を計算する。
【００５１】
【数１３】
2010245697.tif 000015
【００５２】
手順1340では次式にしたがってタップ重み更新量ベクトルΔGj(n)を計算する。
ΔGj(n)=Qj(n)uj(n)*            (34)
ΔGj(n)は次式のように各mに対するタップ重み更新量ベクトルでΔGjm(n)で構成されている。
ΔGj(n)=[ΔGj1(n)T,ΔGj2(n)T,…,ΔGjM(n)T]T            (35)
手順1350では次式で定義される残響予測フィルタのタップ重みベクトルを計算する。
G'jm(n)=Gjm(n)+ΔGjm(n)            (36)
手順1360ではタップ重みベクトルG'jm(n)を用いて残響抑圧処理された信号u'j(n)を計算する。
【００５３】
【数１４】
2010245697.tif 000016
【００５４】
手順1370では繰り返し回数が予め定められた回数Rに到達しているか否かを判定し、処理を分岐させる。手順1380は繰り返し回数がRより少なかった場合に実行され、zj(n)をu'j(n)に更新する。
zj(n)=u'j(n)            (38)
手順1380の後、手順1320が再び実行される。手順1390は繰り返し回数がRであった場合に実行され、次式にしたがってΦj(n)を更新する。
【００５５】
【数１５】
2010245697.tif 000017
【００５６】
<実験結果>
本発明の効果を確認する実験を行った。ここでは本発明の実施形態として実施形態３を用いた。この実験では20名分の音声を用いた。各音声の音響信号を、残響時間が500ミリ秒の部屋で計測したインパルス応答に畳み込むことで、残響を含む観測音声を模擬した。用いたマイクロホンは2個、忘却係数αの値は0.99、遅延Dは2とした。また、観測音声信号の標本化周波数は8ｋHzとし、手順1010のフィルタバンク分析における分割数は256、間引き率は128とした。各帯域における残響予測フィルタの次数Kｊは、当該帯域における残響時間におよそ一致するように設定した。
【００５７】
図１１は観測音声と原音声の間の平均MFCC距離(MMD)及び本発明による処理後の音声と原音声の間のMMDを示している。図１２は本発明により得られたMMDの改善値(MMDI)を示している。図１２から読み取れるように、2秒以内にMMDIが増加し始め、5秒で収束状態に達している。これは本発明が高速な収束特性をもつことを実証している。
【図１】
2010245697.tif 000018
【図２】
2010245697.tif 000019
【図３】
2010245697.tif 000020
【図４】
2010245697.tif 000021
【図５】
2010245697.tif 000022
【図６】
2010245697.tif 000023
【図７】
2010245697.tif 000024
【図８】
2010245697.tif 000025
【図９】
2010245697.tif 000026
【図１０】
2010245697.tif 000027
【図１１】
2010245697.tif 000028
【図１２】
2010245697.tif 000029