JP2008124914A - エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体 - Google Patents

エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体 Download PDF

Info

Publication number
JP2008124914A
JP2008124914A JP2006308191A JP2006308191A JP2008124914A JP 2008124914 A JP2008124914 A JP 2008124914A JP 2006308191 A JP2006308191 A JP 2006308191A JP 2006308191 A JP2006308191 A JP 2006308191A JP 2008124914 A JP2008124914 A JP 2008124914A
Authority
JP
Japan
Prior art keywords
filter coefficient
adaptive filter
frequency domain
signal
unit
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.)
Granted
Application number
JP2006308191A
Other languages
English (en)
Other versions
JP4705554B2 (ja
Inventor
Masafumi Tanaka
雅史 田中
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2006308191A priority Critical patent/JP4705554B2/ja
Publication of JP2008124914A publication Critical patent/JP2008124914A/ja
Application granted granted Critical
Publication of JP4705554B2 publication Critical patent/JP4705554B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】差分型FG/BG構成において、BG部の適応フィルタ係数Hbが、時間に連続するFGフィルタ係数Hfが互いに拘束条件を満たさない部分を打ち消し合わないように加算される処理が行なわれる状況が継続することを解決する。
【解決手段】BG部は周波数領域で処理を行うものであり、周波数領域の上記適応フィルタ係数を時間領域に変換した場合に、最初の係数或いは半分より1つ後方の係数が0になり、その他はそのままであるような帯域阻止フィルタのフィルタ係数で巡回畳み込みした結果と同一になるように、上記適応フィルタ係数を更新する過程の少なくとも一つにおけるデータに対して、周波数領域処理して更新された適応フィルタ係数として適応フィルタ係数レジスタに格納する部分拘束処理部を備える。
【選択図】図4

Description

この発明は、例えば、TV会議や音声会議などハンズフリー通信のエコーキャンセル装置、回線エコーキャンセル装置などのエコーキャンセル装置、その方法、そのプログラム、およびその記録媒体に関する。
エコーが伝達する未知の系をディジタルフィルタでモデル化し、受話信号と収音信号を用いてエコーの伝達系を推定する基本的な技術として適応フィルタを用いるものがある。適応フィルタによりエコー伝達系を推定する際にエコー伝達系の推定精度を大きく劣化させる要因として収音信号に含まれる雑音が挙げられる。特に、音響および回線エコーキャンセル装置等で同時通話あるいはダブルトークと呼ばれるエコーへの話者からの送話音声の混入は、混入するまで持っていたディジタルフィルタの推定精度を大きく低下させ、エコーキャンセル装置等がエコー伝達を推定するため、何らかの対策が必要となる。以下、適応フィルタを用いた従来のエコーキャンセル装置、その従来のダブルトーク対策について説明する。
図1に従来のエコーキャンセラの機能構成例を示す。図1において、受話信号をx(k)、エコー推定信号をy(k)、収音信号をd(k)、誤差信号をe(k)、適応フィルタの係数からなるベクトルをh(k)とし、kは離散的時刻を表す。
図示しない遠端話者からの音声信号が、受話信号x(k)として、エコーキャンセラ10を通じて再生手段4に入力される。エコーキャンセラ10は推定信号生成部11と、フィルタ係数更新部12と、減算部13と、適応フィルタ係数レジスタ14と、により構成されており、受話信号x(k)はフィルタ係数更新部12と推定信号生成部11とに入力される。
推定信号生成部11で、受話信号x(k)を適応フィルタ係数レジスタ14よりの適応フィルタ係数h(k)でフィルタ処理することでエコー推定信号y(k)を生成する。エコー推定信号y(k)を生成する手段は様々であるが、一時刻分のエコー推定信号y(k)を生成する場合には、受話信号x(k)から成るベクトルと適応フィルタ係数のベクトルh(k)の内積により生成し、つまりy(k)は、以下の式(1)で表すことができる。
y(k)=[x(k−L+1)、x(k−L+2),...,x(k)]h(k)
式(1)
ただし、Lは推定信号生成部11を構成する適応フィルタの係数の数(タップ数)を表す。一般の適応フィルタにおいて、複数の時刻分の推定信号を生成する場合には、演算量低減のために周波数領域で行うことが多いが、その詳細は非特許文献1に記載されている。減算部13では、収音手段6で収音された収音信号d(k)からエコー推定信号y(k)を減算して誤差信号e(k)求める。つまり、減算部13で、以下の式(2)を計算する。
e(k)=d(k)−y(k) 式(2)
フィルタ係数更新部12では誤差信号e(k)と受話信号x(k)から適応アルゴリズムにより適応フィルタ係数修正量Δhを求める。そして、適応フィルタ係数修正量Δhに修正量を調節するステップサイズμを乗算して、1時刻前の適応フィルタ係数h(k−1)に加算することで、適応フィルタ係数レジスタ14内の適応フィルタ係数を更新する。つまり、このフィルタ係数の更新は、以下の式(3)で表すことができる。
h(k)=h(k−1)+μΔh(k) 式(3)
適応フィルタ係数修正量Δhは、適応アルゴリズムにより誤差信号e(k)のパワーが減少するように求められる。なお、代表的な適応アルゴリズムとしては、時間領域で処理する最小二乗(LMS:Least-Mean-Squares)法、学習同定(NLMS:Normalized LMS)法、逐次最小二乗(RLS:Recursive-Least-Square)法が良く知られている。減算部13で収音信号d(k)からエコー推定信号y(k)が除去され、送話信号として、受話信号x(k)の送信側に送信される。
<ダブルトーク対策手段>
従来のダブルトーク対策手段としてフィルタ二重化による手段を一例として説明する。これは、Foreground/Background(以下FG/BGと称する)とも呼ばれるものである。
図2に従来のFG/BG方式を用いて構成されたFG/BGエコーキャンセラ20の機能構成例を示す。図1と同一の機能構成部分には同一参照番号を付けて重複説明を省略する。このことは以下の説明においても同様である。
FG/BGエコーキャンセラ20では、まず、BGフィルタ係数更新部22で、反響路(再生手段4から収音手段6へのエコー経路)24のインパルス応答を推定し、その推定値hb(k)を適応フィルタ係数レジスタ27に適応フィルタ係数hb(k)として転送する。
BG推定信号生成部26で、受話信号x(k)を適応フィルタ係数hb(k)で上記と同様のフィルタ処理をして、BG推定信号yb(k)を生成する。適応フィルタ係数hb(k)は適応フィルタ係数レジスタ27に格納されている。
減算部28において、収音手段6から収音された収音信号d(k)からBG推定信号yb(k)を減算して、BG誤差信号eb(k)が生成される。反響路24のインパルス応答の推定が良好に行われていれば、再生手段4よりの収音手段6に収音された反響信号と推定信号yb(k)はほぼ等しいものとなる。
一方、FG推定信号生成部30で、受話信号x(k)をFGフィルタ係数hf(k)でフィルタ処理して、FG推定信号yf(k)を生成する。FGフィルタ係数はFGフィルタ係数レジスタ29に格納されている。そして、減算部31で、収音信号d(k)からFG推定信号yf(k)を減算して、FG誤差信号ef(k)が生成される。
BG推定信号生成部26の特性が真の反響路24の特性に近ければ(詳細は以下で述べる)、適応フィルタ係数レジスタ27中の適応フィルタ係数hb(k)をFGフィルタ係数レジスタ29に転送し、FGフィルタ係数hf(k)をその適応フィルタ係数hb(k)に更新する。
また、BG誤差信号eb(k)とFG誤差信号ef(k)とが誤差比較部38に入力される。受話信号x(k)のパワーが所定値以上であり、かつダブルトークでない状態において、誤差比較部38で、BG誤差信号eb(k)のパワーPeb(k)がFG誤差信号ef(k)のパワーPef(k)よりも小さいと判断された場合、適応フィルタ係数hb(k)は、FGフィルタ係数hf(k)と比べて、実際の反響路24のインパルス応答h(k)をより良く模擬していると考えられる。この場合、適応フィルタ係数hb(k)をFG推定信号生成部37に転送してFGフィルタ係数hf(k)を更新する。
ここでパワーとは信号の時間積分値であり、離散化された信号を扱う場合には、例えばPx(k)=Σx2 (k−i)(Σはi=0からn−1まで)のように計算される。ここでnは積分時間を表す。
そして、発話者の音声が収音手段6に収音された状態では、FG誤差信号ef(k)が受話信号x(k)の送信側に、出力される。なお、FG/BGエコーキャンセラ20の詳細については、特許文献1に記載されている。
このように、FG/BG構成とすることで、ダブルトーク時には適応フィルタ係数hb(k)が乱れ、FGフィルタ係数hf(k)への複製が起きずFGフィルタ係数hf(k)はダブルトーク前の値を保持しているので、FG誤差信号ef(k)にダブルトークによる影響が現れない。
<差分型FG/BG構成>
さらに、同時通話による適応フィルタ係数hb(k)の乱れがFGフィルタ係数hf(k)に及ぼす影響を小さくし、良好な同時通話性能を保持する手法として、FG誤差信号ef(k)をBG部に入力させることで、適応フィルタ係数hb(k)として、FGフィルタ係数hf(k)の変化分を推定する差分型FG/BGエコーキャンセラがある。
差分型FG/BGエコーキャンセラ45の機能構成例を図3に示す。BG部40はBGフィルタ係数更新部22、BG推定信号生成部26、BG減算部28、適応フィルタ係数レジスタ27、とで構成されている。またFG部50は、FGフィルタ係数レジスタ29、FG推定信号生成部30、FG減算部31とで構成されている。
BG減算部28では、FG減算部31よりのFG誤差信号ef(k)が誤差比較部38とBG減算部28とに入力される。BG減算部28で、BG推定信号生成部26よりのBG推定信号yb(k)から、FG誤差信号ef(k)を減算することにより、BG誤差信号eb(k)が求められる。eb(k)はBGフィルタ係数更新部22に入力される。誤差比較部38で、BG誤差信号eb(k)のパワーPeb(k)がFG誤差信号ef(k)のパワーPef(k)よりも小さいと判断された場合、FGフィルタ係数更新部52において、適応フィルタ係数レジスタ27中の適応フィルタ係数hb(k)を、FGフィルタ係数レジスタ29中のhf(k)と加算、もしくは重み付け加算して、その加算結果のフィルタ係数を新たなFGフィルタ係数hf(k)として更新する。なお、差分型FG/BGエコーキャンセラの詳細は、特許文献2に記載されている。
上記のように、この差分型FG/BGエコーキャンセラ構成は、BG部の適応アルゴリズムとして、適応フィルタ係数hb(k)をFGフィルタ係数hf(k)に反映するまでの間に、少ないエコー消去量さえ得られればよいという特徴がある。
特許3248551号、図7 2836277号 "Multidelay block frequency domain adaptive filter," Jia Sien Soo and Khee K. Pang, IEEE Transaction on Acoustics, Speech, and Signal Processing, vol. 38, No. 2, pp. 373-376 (1990.2) "Frequency−domain and mulirate adaptive filtering,"JohnSynk,IEEE SPmagazin,Jabuary 1992 "Connecting Partitioned Frequency−Domain Filters in Parallel or in Cascade,section I,II,III,"M.Joho and G.S.Moschytz,vol47.pp.685−698(2000.8)
上記で説明した従来の差分型FG/BG型エコーキャンセラでは、適応フィルタ係数のフィルタ数が多いと、演算量が多いという問題点があった。そこで、上記の演算を時間領域でなく、周波数領域で行うということを考えた。周波数領域で動作するFG/BG型エコーキャンセラの場合、BG部40の適応フィルタ係数hb(k)をFGフィルタ係数hf(k)に加算する際に適応フィルタ係数hb(k)がある拘束条件を満たすように変換した後に加算を行う必要がある。この拘束条件とは、FG部50における周波数領域で行うフィルタ処理の結果が時間領域でフィルタ処理を行った場合の結果と一致させるというものである。
この拘束条件を満たすための具体的な処理手順としては、周波数領域にある適応フィルタ係数hを時間領域に変換し、その結果の半分以上を0で置き換えた後、再度周波数領域に変換するというものである。このことは、一般的に、適応フィルタにおいて、周波数領域で処理する場合に、適応フィルタ係数を更新する際と同様に考えられ、また、時間領域に変換した適応フィルタ係数のどの要素を0に置き換えるか等の詳細な説明は上記非特許文献1、もしくは、上記非特許文献2に記載されている。なお、FGフィルタ係数が時間領域の値である場合は、再度の周波数領域への変換は不要であり0に置き換えない係数を用いればよい。
しかし、上記のように、BG部40のBG推定信号生成部26を周波数領域で動作させる差分型FG/BG構成の場合、ダブルトークやエコーに重畳したノイズのために適応フィルタ係数hb(k)が大きく乱れた結果、拘束条件を満たす値から大きく外れた状況が継続することが考えられる。この状況では、適応フィルタ係数の個々の要素は、拘束条件を満たさないが、時間的に連続する適応フィルタ係数が互いに拘束条件を満たさない部分を打ち消しあうように、更新され、このためBG誤差信号eb(k)のレベルは小さくなる。そのため、適応フィルタ係数hb(k)をFGフィルタ係数hf(k)に加算する動作が行われるが、この際のフィルタ係数hf(k)の更新はFG誤差信号ef(k)が減少するようには必ずしもならずに、FG誤差信号ef(k)のレベルが時間とともに増加していくという問題が生じるおそれがあると考えられる。また、この問題を解決するためには、周波数領域で処理するBGフィルタ係数更新部22において、適応フィルタ係数hb(k)が拘束条件を満たすためには適応フィルタ係数hb(k)を時間領域に変換しなければならないため演算量が増加するという問題が生じる。
この発明によるエコーキャンセル装置は、FG推定信号生成部が受話信号をFGフィルタ係数でフィルタ処理してFG推定信号を求め、FG減算部が収音信号から上記FG推定信号を減算してFG誤差信号を求めるFG部と、
BG推定信号生成部が上記受話信号を適応フィルタ係数でフィルタ処理してBG推定信号を生成し、誤差計算部が上記FG誤差信号から上記BG推定信号を減算してBG誤差信号を求め、BGフィルタ係数更新部が上記BG誤差信号と上記受話信号とを用いて上記BG誤差信号のパワーが減少するように上記適応フィルタ係数を更新するBG部と、
上記適応フィルタ係数を上記FGフィルタ係数に加算し、上記FGフィルタ係数を更新するFGフィルタ係数更新部と、を具備するエコーキャンセル装置において、
上記BG部は周波数領域で処理を行うものであり、
周波数領域の上記適応フィルタ係数を時間領域に変換した場合に、最初の係数或いは半分より1つ後方の係数が0になり、その他はそのままであるような帯域阻止フィルタのフィルタ係数で巡回畳み込みした結果と同一になるように、上記適応フィルタ係数を更新する過程の少なくとも一つにおけるデータに対して、周波数領域処理して更新された適応フィルタ係数として適応フィルタ係数レジスタに格納する部分拘束処理部を具備する。
この構成によれば、部分拘束処理部による簡単な処理により、FG誤差信号のレベルがFG適応フィルタ係数の更新とともに増加して行く問題が解決される。また、BG部において適応フィルタの更新処理で拘束条件を満たすための処理を行なわないため、演算量が増加する問題が解決される。
以下に、この発明を実施するための最良の形態を示す。複数の図面中同一のものには同じ参照符号を付し、説明は繰り返さない。
後述するUMDF法にこの発明を適用した実施例1のエコーキャンセラ120の機能構成例を図4に示し、その処理の流れを図5に示す。この発明において、少なくとも、BG部は、周波数領域で処理を行うものであり、FG部は、周波数領域、もしくは時間領域で処理を行うことができる。一般的に、時間領域で行う処理は遅延量が少ないが、演算量が多くなる。よって、FG部の処理は、状況に応じて、周波数領域で行うか、時間領域で行うかを使い分けて実施すればよい。
この実施例1では、BGフィルタ係数更新部90は上記したLMS法あるいはNLMS(Normalized LMS)法を周波数領域で実行し、非特許文献1で挙げられているMDF法(MultiDelay block Frequency domain adaptive filter)もしくはUMDF法(Unconstrained MultiDelay block Frequency domain adaptive filter)などを対象とする。
ここでは、BG部60内の周波数領域適応フィルタ処理に用いる時間領域の適応フィルタ係数hbを連続するN/2要素(Nは後で説明する)ごとにJ分割し、分割した適応フィルタを周波数領域で更新する演算量の少ない適応アルゴリズムであるUMDF法に基づいて説明する。
なお、受話信号x(k)が複数チャネルある場合についても受話信号x(k)と適応フィルタ係数h(k)の要素がチャネル分増加するだけで以下の全ての事項が適用できるため説明を略する。この実施例1では、FG部70が周波数領域で処理を行う場合を説明する。
FG部70の処理
以下、図5を参照して各部の処理を説明する。FG部70では、まず時間領域の受話信号x(k)と収音信号d(k)が新たに得られると(図5、ステップS2)時間領域の受話信号x(k)は再生手段4と、周波数領域変換部62に入力される。周波数領域変換部62で、周知の技術である短時間離散的フーリエ変換などで、例えば、ω1〜ωNまでのN個の周波数に対応するN個の離散周波数領域信号、x(ω1),…,x(ωn),…,x(ωN)に変換される。ただし、受話信号x(k)は一定周期でサンプリングされ、各サンプルがディジタル値に変換されたディジタル信号である。このNは正整数で上記時間領域の適応フィルタ係数hbを分割する時のN/2のNと同一である。
周波数領域変換部62は、時間領域の適応フィルタ係数hbをN/2個の要素毎に分割したj番目の分割h(j=0,1,…,j−1)に対応する周波数領域受話信号Xを式(4)により生成する(ステップS4)。以降、周波数領域の信号の符号を大文字で表す。
=F[x(k−j×(N/2)−N+1),x(k−j×(N/2)−N+2),…,x(k−j×(N/2))] T 式(4)
ここでFはフーリエ変換を施すことであり、Nは1フレームのサンプル数であり、(フレームシフトはN/2)、は転置行列を表す。
周波数領域の受話信号Xは、FG部70に入力される。FG部70は、図4に示すように、FGフィルタ係数レジスタ74、FG推定信号生成部76、FG時間領域変換部78、FG減算部31とで構成される。受話信号Xは、FG推定信号生成部76に入力される。
FG推定信号生成部76は、時間領域での受話信号x(k)と適応フィルタ係数h(k)によるフィルタ処理に相当する演算を周波数領域で行う。つまり受話信号XとFGフィルタ係数レジスタ74に記録されている周波数領域適応フィルタ係数Hfとの内積を周波数毎に取ることで周波数領域推定信号Yfを得る。周波数領域推定信号Yfは、式(5)で計算される。
Yf=Σdiag(X)(H) 式(5)
ただし、diag(A)はAの対角行列を表わす。
周波数領域推定信号Yfは、時間領域変換部78に入力され公知の技術である短時間離散的フーリエ変換などで時間領域の推定信号yf(k)に変換される(ステップ6)。
yf(k)=[y(k−N/2+1),y(k−N/2+2),…,y(k)]=WF-1Yf
式(6)
ただし、Wは、Wの右からベクトルを乗じた場合に乗じたベクトルの下半分の要素を抜き出すN/2行N列の行列を表わし、F-1は逆フーリエ変換を施すことを表わす。つまり、このFG時間領域変換部78はyfを時間領域信号に変換した後、その変換された時間領域信号中から下半分の要素をN/2行N列だけ取り出す(ステップS6)。
時間領域の推定信号yf(k)の各要素yf(k−i),(i=0,1,…,N/2)は、FG減算部31に入力される。FG減算部31は収音信号d(k−i)から推定信号y(k−i)を減算し誤差信号ef(k−i)を求める(ステップS8)。
ef(k−i)=d(k−i)−yf(k−i),i=0,1,…,N/2−1
式(7)
このFG誤差信号ef(k−i)がエコーキャンセル装置の出力になる。この時間領域のFG誤差信号ef(k−i)は図示しない通信網を通じて、遠端話者のスピーカ、及び、BG部60に入力される。
BG部60の処理
次に、BG部60の動作を説明する。BG部60は、図4に示すように、BGフィルタ係数更新部90、部分拘束処理部67、適応フィルタ係数レジスタ68、BG推定信号生成部64、周波数領域誤差計算部61、係数更新判定部96とで構成されている。
一方、BG部60でも適応フィルタ係数レジスタ68に記録されている適応フィルタ係数HB(以下適応フィルタ係数Hbと称する)と受話信号Xとの内積を周波数毎に取ることで周波数領域推定信号Yb(以下BG推定信号Ybと称する)が求められる(ステップS10)。つまり、BG推定信号生成部64で式(8)によってBG推定信号Ybが計算される。
Yb=Σj(diag(X)Hb) 式(8)
FG誤差信号ef(k)は、周波数領域誤差計算部61のBG周波数領域変換部61aに入力され周波数領域FG誤差信号Ef(以下FG誤差信号Efと称する)に変換される。つまり、FG部70からのN/2個の誤差信号ef(k−i),i=0,1,…,N/2−1の前にN/2個の0をつけて式(9)で計算される。
Ef=F[0,0,…,0,ef(k−N/2+1),ef(k−N/2+2),…,ef(k)] 式(9)
BG推定信号Ybが、周波数領域誤差計算部61のBG減算部61bに入力される。減算部61bでは、FG誤差信号Efの各要素からBG推定信号Ybの対応する要素を減算してBG誤差信号Ebを求める(ステップS12)。つまり式(10)を計算する。
Eb=Ef−GYb 式(10)
ただし、GはWをWの右からベクトルを乗じた場合に乗じたベクトルの下半分の要素を抜き出し、上半分を0にするN行N列の行列としてFW−1そのものかそれを近似する行列である。
BG誤差信号Ebは、BGフィルタ係数更新部90に入力される。BGフィルタ係数更新部90は、BG誤差信号Ebと受話信号Xとを用いてBG誤差信号Ebのパワーが減少するように、周波数領域の適用フィルタ係数の更新量であるΔHbを求める(ステップS14)。ΔHbの具体的な求め方は後述する。
ここで、上記した課題である時間的に連続する適応フィルタ係数が互いに拘束条件を満たさない部分を打ち消し合うとFG推定誤差が増加する理由について説明する。
まず、式(8)と式(6)による周波数領域での畳み込みについて述べる。式(8)に右辺でjに関するものだけを抜き出したものを、式(11)で表わし、
Yb=diag(X)Hb 式(11)
これを式(6)のように時間領域に変換したものを式(12)に表わす。
yb=WF−1Yb 式(12)
ybは、N個の受話信号x(k−j×(N/2)−N+1)、x(k−j×(N/2)−N+2)、‥‥、x(k−j×(N/2))と周波数領域の適応フィルタの第j分割Hbを時間領域に変換したF−1Hbを巡回畳み込みし、その結果の例えば上半分N/2個を抜き出したものになる。この巡回畳み込みの結果ybを分割番号jに関して総和をとると推定信号yb(k)になる。
もし、FG側のフィルタ係数がそうであるようにF−1Hbの下半分が0であるとするとybはN−1個の受話信号x(k−j×(N/2)−N+2)、x(k−j×(N/2)−N+3)、‥‥、x(k−j×(N/2))と周波数領域の適応フィルタの第j分割Hbを時間領域に変換したhb(=F−1Hb)とxとが重なる範囲で直線畳み込みをした結果に一致する。
以上の式(8)と式(12)による周波数領域での畳み込みで注意したいのは、F−1Hbの下半分が0であれば、ybにはx(k−j×(N/2)−N+1)が影響しないが、UMDF法をBG側に用いた場合の適応フィルタ係数がそうであるようにF−1Hbの下半分が0でなければ、ybにはx(k−j×(N/2)−N+1)が影響するということである。
また、一方でx(k−j×(N/2)−N+1)というデータは、k−j×(N/2)−N+1がk−(j+1)×(N/2)−(N/2)+1と変形できることから分かるようにXj+1を時間領域に変換した受話信号列のN/2番目にも存在する。このため、MDF法においてはXj+1に対応する適応フィルタ係数の分割はHbj+1だけであるのに、UMDF法では隣の分割HbにもXj+1の影響が現れる。そして、適応フィルタの更新において、HbとHbj+1は、式(8)のように分割番号に関して総和をとったYbにおいて分割Hbに現れたXj+1の影響をdiag(Xj+1)Hbj+1が打ち消すように更新される。
時間領域で見ると、Xj+1の分割Hbへの影響はhbの先頭(つまり最も新しい信号に対応する位置)hj0に現れ、これを打ち消すHj+1の時間領域の係数はhj+1のN/2番目の位置にあるhj+1 N/2に現れる。
ところでBG側の適応フィルタ係数HbをFG側のフィルタHfに転送する際には、Hbを時間領域に変換し、前半部を0として再度周波数領域に変換する拘束条件処理が行なわれる。この拘束条件処理の際に、Xj+1の分割Hbへの影響が現れるhbの先頭は取り除かれるが、それを打ち消していたhj+1 N/2はそのままHfに転送される。こうなると、BG側では式(8)の総和を取る際に打ち消し合っていた値がFG側では打ち消し合わずに誤差として表れ推定誤差が増加することになる。
このhj0にXj+1の影響が現れることが原因となる推定誤差の増加を防止するためには、hj0を0にすればよいことが分かる。
データの並び方によっては、hのN/2番目の係数を0にする必要がある。このhの最初の係数を0、若しくはhのN/2番目の係数を0にする処理を部分拘束処理と呼ぶ。この実施例1では、BGフィルタ係数更新部90で更新された適応フィルタ係数HBに対して部分拘束処理を行なう(ステップS16)。
部分拘束処理
0番目の係数hj0を0にし、他の係数はそのままに保つ部分拘束処理部67を実現する帯域阻止フィルタBの係数は、B=[1−1/N,−1/N,…,−1/N]である。ここで−1/Nの係数は(N−1)個である。この帯域阻止フィルタBとBG部60の適応フィルタ係数Hbを巡回畳み込みする演算は例えば次のようにして行なえばよい。図6aに示すようにBG部の適応フィルタ係数Hbの各要素の平均値をH平均値算出部671aで求め、その平均値AHをBG部60の適応フィルタ係数Hbの各要素Hbjiから減じる。つまり係数算出部672aで式(13)に示す演算を行う。
j,i=Hj,i−Σi(Hj,i)/N,i=0,1,2,…,N−1
式(13)
この部分拘束処理は、このように大きな演算量を必要としない。
また、hのN/2番目の係数を0にする部分拘束処理部67を実現する帯域阻止フィルタBのフィルタ係数は、B=[1−1/N,1/N,−1/N,1/N,−1/N,…,1/N]である。この係数の個数はN個である。この帯域阻止フィルタBとBG部の適応フィルタ係数Hを巡回畳み込みする演算は例えば次のようにして行なえばよい。図6bに示すようにBG部の適応フィルタ係数Hの偶数番目と奇数番目の係数の差の平均値をH平均値算出部671bで式(14)に示すように求め、その平均値HtmpをBG部の適応フィルタ係数Hbから減じるか加算する。つまり係数算出部672bで式(15)、または式(16)を計算すればよい。
Htmp=Σi((Hj,2×i)−(Hj,2×i+1))/N,i=0,1,2,…,N/2-1
式(14)
j,i=Hj,i−Htmp,i=0,2,4,…,N-2 式(15)
j,i=Hj,i−Htmp,i=1,3,5,…,N-1 式(16)
部分拘束処理として式(13)と、式(15)又は式(16)の何れを用いるかは、上記周波数領域誤差計算部61のBG周波数領域変換部61aがef(k)を周波数領域の信号に変換する際の処理方法による。古いデータ側を0として周波数領域に変換した場合は、時間領域に変換した適応フィルタ係数hの半分より1つ後方の係数を0とする。
その反対にBG周波数領域変換部61aが新しいデータ側を0とした場合、上記周波数領域適応フィルタ係数を時間領域に変換した最初の係数を0とする。部分拘束処理された適応フィルタ係数Hb’は、適応フィルタ係数レジスタ68に上書きされる。
FGフィルタ係数更新処理
次に、FGフィルタ係数更新部72の具体的構成例を図7に示して説明する。FGフィルタ係数更新部72は適応フィルタ係数HbをFGフィルタ係数Hfに加算し、FGフィルタ係数Hfを更新する(ステップS18)。また、周波数領域で、適応フィルタ係数HbをFGフィルタ係数Hfに加算する際に、後述する拘束条件を満たしていなければならない。図7に示すように、この実施例では、FGフィルタ係数更新部72は時間領域変換手段802、半分0化手段804、周波数領域変換手段806、加算手段808により構成されている。なお、係数更新判定部96により、FGフィルタ係数の更新を行う旨の判定がされなかった周波数ωnの要素には0を詰めて、FGフィルタ係数更新部72のFGフィルタ係数更新処理は作動する。
適応フィルタ係数レジスタ68に記録された適応フィルタ係数Hb’は、時間領域変換手段802で、時間領域の適応フィルタ係数hb(k)に変換される。
適応フィルタ係数hb(k)は半分0化手段804に入力され、半分0化手段804で、適応フィルタ係数hb(k)の要素の半分以上を0にする。時間領域に変換した適応フィルタ係数のどの要素を0に置き換えるかは、上記非特許文献1もしくは上記参考文献に記載されている。適応フィルタ係数hb(k)の要素の半分以上を0にされた適応フィルタ係数hb(k)’は、周波数領域変換手段806に入力され、再び、周波数領域に変換され、適応フィルタ係数Hb”が求められる。周波数領域の適応フィルタ係数Hb”とFGフィルタ係数レジスタ701に格納されているFGフィルタ係数Hfとが加算手段808に入力される。
加算手段808で、Hfの各要素とHb”の対応要素とが加算され、FGフィルタ係数Hfが求められる。新たに求められたFGフィルタ係数HfがFGフィルタ係数レジスタ74に格納され、FGフィルタ係数は更新される。このようにして、FG部70、BG部60の処理は繰り返される。
次に、適応フィルタ係数hbよりも長い時間かけて全ての分割Jについて拘束を行うPFDLMS法(Partitioned Frequency Domain Least Mean Square)に基づいて説明する。
図8は、実施例1にPFDLMS法を適用した例を示す。図8では、この発明の要部である部分拘束処理部67を省略し、その部分を図10に示す。
PFDLMS法では、演算量を減らす目的で適応フィルタ係数HBの学習が進んだ分割jに対応する適応フィルタ係数HBのみに拘束条件処理を課す拘束条件処理指令を出力する。その選択は、FG誤差信号EfとBG誤差信号Ebが入力される選択的拘束条件適用部66が行う。その選択の判断は、FG誤差信号Efの周波数ωnのパワーPEfωnからBG誤差信号Ebの周波数ωnのパワーPEfωnを減算した値が、ある閾値αより大きければ、つまり、式(17)を満たしているか否かで行う。
PEfωn−PEbωn≧α 式(17)
パワーの差がある程度大きければ、選択的拘束条件適用部66は適応フィルタ係数HBの学習が進んだと判断し、その分割jに対応する適応フィルタ係数HBに拘束を課すように拘束条件処理指令を出力する。
拘束条件処理指令が入力される選択部80は、その選択された分割jに対応する適応フィルタ係数HBを拘束条件適用部69に出力する。
また選択の判断は、BG推定信号生成部64よりのBG推定信号Ybの周波数ωnのパワーPYbωnと、BG誤差信号Ebの周波数ωnのパワーPEbωnと、を用いて行ってもよい。この場合は、PYbωnからPEbωnを減算した値が、閾値βより大きければ学習が進んだと判断できる。つまり式(18)を満たしていれば、上記と同様に、その分割jに対応する適応フィルタ係数HBに拘束を課すように拘束条件処理指令を出力する。
これは、適用フィルタ係数Hbの学習が十分に進むと、BG推定信号Ybは、FG誤差信号Efに近い値になることによる。
PYbωn−PEbωn≧β 式(18)
拘束条件とは、周波数領域で行うフィルタ処理の結果を、時間領域でフィルタ処理した場合の結果と一致させるものである。この拘束条件を満たすための具体的な処理手順としては、図9に示すように周波数領域にある適応フィルタ係数Hbを時間領域変換手段691で時間領域に変換し、その結果の半分を半分0化手段692で0に置き換えた後に、周波数領域変換手段693で再度周波数領域に変換するというものであり、式(19)で計算される。
Hb’=FW’F−1Hb 式(19)
ただし、W’はW’の右からベクトルを乗じた場合に乗じたベクトルの上半分の要素を抜き出すN行N列の行列を表わす。
この拘束条件処理がなされた適用フィルタ係数Hb、つまり収束した適用フィルタ係数Hbは、適用フィルタ係数レジスタ68に入力され、適用フィルタ係数が更新される。
PFDLMS法においては、選択部80で非選択となった非選択周波数領域適応フィルタ係数H、または適応フィルタ係数Hbの初期値が0として、適応フィルタ係数Hbに加算あるいは上書きする適応フィルタ係数Hbの更新量ΔHbのどちらか、又は双方に部分拘束処理を課してもよい。
ここで周波数領域の適用フィルタ係数の更新量であるΔHbの求め方を述べる。ΔHbの計算方法はNLMS法を周波数領域で行なう場合を例とした。受話信号Xは、BGフィルタ係数更新部90内の乗算部904とパワー計算部902に入力される。パワー計算部902では、受話信号Xのパワー、つまり以下の式(20)が計算される。
Σdiag(X)diag(conj(X)) 式(20)
ただしconj(A)はA内のスカラーあるいはベクトル、行列の個々の要素に対して複素共役をとることを示す。
また、BG減算部94で求められた周波数領域のBG誤差信号Ebは乗算部904に入力される。
乗算部904では、受話信号Xと、誤差信号Ebが乗算され、つまり、以下の式(21)が計算される。
diag( conj(X))Eb 式(21)
乗算部904の結果であるdiag( conj(X))Ebと、パワー計算部902の結果であるΣdiag(X)diag(conj(X))とが、除算部906に入力され、以下の式(22)が計算され、周波数領域の適応フィルタ係数の更新量であるΔHbが求められる。
ΔHb=(Σ(diag(X)diag(conj(X)))−1diag(conj(X))Eb 式(22)
この更新量ΔHbに対して部分拘束処理を課す部分拘束処理部672を、除算部906と乗算部908との間に設けてもよい。その場合、上記した式(13)乃至式(16)の演算は、それぞれ式(13)が式(23)に、以下式(26)まで順番に対応する。
ΔHbj,i=ΔHbj,i−Σi(ΔHbj,i)/N 式(23)
ΔHbtmp=Σi(ΔHbj,2×i−ΔHbj,2×i+1)/N,i
=0,1,2,..…,N/2−1 式(24)
ΔHbj,i=ΔHbj,i−ΔHbtmp,i=0,2,4,…,N−2
式(25)
ΔHbj,i=ΔHbj,i−ΔHbtmp,i=1,3,5,…,N−1
式(26)
ΔHbは乗算部908に入力される。
人手により、もしくは、図示しない制御部により、ステップサイズ選択部909において、周波数帯域のステップサイズSが選択される。ここで、Sは各周波数帯域のステップサイズを対角要素に持つ行列を意味する。選択されたステップサイズSは乗算部908に入力される。乗算部908では、ステップサイズSとΔHbとが乗算される、つまり以下の式(27)が計算される。
SΔHb 式(27)
この結果が加算部910に入力される。加算部910では、適応フィルタ係数レジスタ912に格納されているHbj-1がSΔHbに加算される。つまり、以下の式(28)が計算され、その結果により、前回の適応フィルタ係数Hbj-1が更新される。
Hb=Hbj-1+SΔHb 式(28)
つまり式(20)〜(22)と式(24)と(25)又は(26)と、以下の式(29)で、周波数領域の適応フィルタ係数は更新される(ステップS6)。
Hb=Hbj-1+S(Σ(diag(X))diag(conj(X))))−1diag(conj(X))Eb 式(29)
加算部910で更新された適応フィルタ係数Hbは、選択的拘束条件適用部66において、上記説明したように学習が進んだと判断された分割jに対してのみ拘束条件処理が課せられる。
そして、上記拘束条件処理指令を受けていない非選択周波数領域適応フィルタ係数Hが選択部80によってが部分拘束処理部671に供給されて、部分拘束処理が行なわれる。この場合の非選択周波数領域適応フィルタ係数Hに対する処理を式(30)乃至式(33)に示す。
j,i=Hj,i−Σi(Hj,i)/N 式(30)
btmp=Σi(Hj,2×i−Hj,2×i+1)/N,i
=0,1,2,…,N/2−1 式(31)
j,i=Hj,i−Hbtmp,i=0,2,4,…,N−2
式(32)
j,i=Hj,i−Hbtmp,i=1,3,5,…,N−1
式(33)
以上説明した周波数領域適応フィルタHb、周波数領域適応フィルタ係数Hの更新量ΔHb、非選択周波数領域適応フィルタHは適応フィルタ係数を更新する過程で得られるものであり、その何れに部分拘束を課してもよい。また複数に課してもよい。
図8に示すようにそれぞれのフィルタ係数に対して部分拘束処理部を設け、部分拘束を課さないときは、各部分拘束処理部を構成する帯域阻止フィルタのフィルタ係数をB=[1,0,0,…,0]にすればよい。
また、実施例1の変形例として、FG部のFG減算部31で周波数領域の信号同士の差を求める方法も考えられる。FG部70中に図4中に破線で示すようにFG時間領域変換部78の後段にFG周波数領域変換部705を設けて、上記拘束条件を満たすようにして、その出力であるFG推定信号YfをFG減算部31に入力する。時間領域の収音信号d(k)を周波数領域に変換してFG減算部31に入力するFG周波数領域変換部708(図4中に破線で示している)を設ける。FG減算部31で、周波数領域の収音信号Dの各要素からFG推定信号Yfの対応要素を減算して、周波数領域のFG誤差信号Efが求められる。このFG誤差信号Efは図4中には破線で示すように、BG部60内のBG減算部61bと選択的拘束条件適用部66に入力される。この場合、BG周波数領域変換部61aは省略される。FG誤差信号Efが周波数領域の信号であるので、FG誤差信号Efを時間領域に変換する時間領域変換部710(図4中に破線で示している)を設けて時間領域のFG誤差信号ef(k)を通信網に出力する。
この実施例2では、FG部70中のFG推定信号生成部76が時間領域で処理を行う。また、図4において時間領域処理を行うことを同一番号にダッシュ「’」を付け、かつ括弧書きで示す。FG部70中のFG時間領域変換部78は設けられない。
この場合、受話信号x(k)は周波数領域変換部62に入力されずに、図4に破線で示すように、FG推定信号生成部76’に直接入力される。また、FGフィルタ係数レジスタ74’には、時間領域のFGフィルタ係数hf(k)が、格納されている。FG推定信号生成部76’では、上記式(1)において、h(k)をhf(k)に置き換えた式の左辺により、FG推定信号yf(k)が求められる。
また、この実施例2では、図7に示すようにFGフィルタ係数更新部72は、時間領域変換手段802と、加算手段808’と、で構成されている。
BG部60中の適応フィルタ係数レジスタ68に周波数領域で格納されているHb’は、時間領域変換手段802に入力され、時間領域の適応フィルタ係数hb(k)’に変換され、0に置き換える処理が行われることなく、加算手段808’に入力される。加算手段808’において、hf(k)とhb(k)とが加算される。加算された値hf(k)がFGフィルタ係数レジスタ74’に格納され、FGフィルタ係数は更新される。
シミュレーション結果
図11にこの発明の部分拘束処理を行った差分型FG/BGエコーキャンセル装置と従来法とを比較した結果を示す。図11の横軸は、動作開始後の時間(秒)であり、縦軸は係数誤差をdBで表す。
係数誤差とは、伝達系とBG部フィルタ係数hの差を表す量であり、伝達系をhと表すと係数誤差CはC=‖h−h/‖hにより定義される。
シミュレーション条件
「FG部70のFFT点数:256、BG部60のFFT点数:512、FG部70の時間領域の適応フィルタ係数を周波数領域に変換した一つの周波数帯域当たりのフィルタ長:12、受話信号:男性音声、収音信号:受話信号+女性音声+背景雑音、伝達系の変化:動作開始後約3秒で伝達系の正負を反転することで系の変化を模擬」
例えば動作開始後約3秒後にマイクロホン(収音手段6)の位置をずらす等の伝達系を変化させたのち、約7秒で係数誤差が収束を開始する。動作開始後20秒の係数誤差は、この発明の方が従来法よりも2〜3dB程度よいことが分かる。
以上の各実施形態の他、本発明であるエコーキャンセル装置は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、エコーキャンセル装置において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
また、この発明のエコーキャンセル装置における処理をコンピュータによって実現する場合、エコーキャンセル装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、エコーキャンセル装置における処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(DigitalVersatileDisc)、DVD−RAM(RandomAccessMemory)、CD−ROM(CompactDiscReadOnlyMemory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto−Opticaldisc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and ProgrammableRead Only Memory)等を用いることができる。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(ApplicationServiceProvider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、エコーキャンセル装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
従来技術のエコーキャンセラ10の機能構成例を示すブロック図。 従来技術のFG/BG構成のエコーキャンセラ20の機能構成例を示すブロック図。 従来技術の差分型FG/BG構成のエコーキャンセラ45の機能構成例を示すブロック図。 この発明の実施例1のエコーキャンセラ120の機能構成例を示すブロック図。 実施例1の処理の流れを示す図。 図6aは0番目の係数hを0にする部分拘束処理部の機能構成例を示すブロック図、図6bはN/2番目の係数hを0にする部分拘束処理部の機能構成例を示すブロック図である。 FGフィルタ係数更新部72の機能構成例を示すブロック図。 実施例1にPFDLMS法を適用した機能構成例を示すブロック図。 実施例1の拘束条件適用部69の機能構成例を示すブロック図。 図8のBGフィルタ係数更新部90と部分拘束処理部67についての機能構成例を示すブロック図。 係数誤差についてのシミュレーション結果を示す図。

Claims (10)

  1. 受話信号をFGフィルタ係数でフィルタ処理して、FG推定信号を求めるFG推定信号生成部と、
    収音信号から上記FG推定信号を減算して、FG誤差信号を求めるFG減算部と、を備えるFG部と、
    上記受話信号を適応フィルタ係数でフィルタ処理して、BG推定信号を生成するBG推定信号生成部と、
    上記FG誤差信号から上記BG推定信号を減算して、BG誤差信号を求める誤差計算部と、
    上記BG誤差信号と上記受話信号とを用いて、上記BG誤差信号のパワーが減少するように上記適応フィルタ係数を更新するBGフィルタ係数更新部と、を備えるBG部と、
    上記適応フィルタ係数を上記FGフィルタ係数に加算し、上記FGフィルタ係数を更新するFGフィルタ係数更新部と、を具備するエコーキャンセル装置において、
    上記BG部は周波数領域で処理を行うものであり、
    周波数領域の上記適応フィルタ係数を時間領域に変換した場合に、最初の係数或いは半分より1つ後方の係数が0になり、その他はそのままであるような帯域阻止フィルタのフィルタ係数で巡回畳み込みした結果と同一になるように、上記適応フィルタ係数を更新する過程の少なくとも一つにおけるデータに対して、周波数領域処理して更新された適応フィルタ係数として適応フィルタ係数レジスタに格納する部分拘束処理部を具備することを特徴とするエコーキャンセル装置。
  2. 請求項1に記載のエコーキャンセル装置において、
    上記BG部は、上記FG誤差信号と、
    上記BG誤差信号又は上記BG推定信号とから収束した周波数領域適応フィルタ係数を選択して拘束条件指令を出力する選択的拘束条件適用部と、
    上記拘束条件処理指令を受けた選択された周波数領域適応フィルタ係数に対して拘束条件処理を行なう拘束条件適用部と、
    を備え、
    上記部分拘束処理部における少なくとも一つにおけるデータは、上記拘束条件処理指令を受けていない非選択周波数領域適応フィルタ係数であることを特徴とするエコーキャンセル装置。
  3. 請求項1に記載のエコーキャンセル装置において、
    上記BGフィルタ係数更新部は、上記BG誤差信号と上記受話信号とを用いて更新量を求める更新量計算部と、
    上記更新量と前回の適応フィルタ係数とを加算して適応フィルタ係数を更新する加算部と、を備え、
    上記部分拘束処理部における上記少なくとも一つにおけるデータは、上記更新量であることを特徴とするエコーキャンセル装置。
  4. 請求項1乃至3の何れかに記載のエコーキャンセル装置において、
    上記部分拘束処理部は、周波数領域の適応フィルタ係数の平均値を求める平均値計算部と、
    上記平均値を上記適応フィルタ係数のそれぞれから減算して上記更新適応フィルタ係数を求める係数計算部と、を具備し、
    若しくは、上記適応フィルタ係数の偶数番目と奇数番目のそれぞれを、上記誤差の平均値に対し減算又は加算を行なって上記更新適応フィルタ係数を求める係数計算部と、を備えることを特徴とするエコーキャンセル装置。
  5. 請求項1乃至4の何れかに記載のエコーキャンセル装置において、
    上記BG部の誤差計算部は、データ数の半分の0を付加して上記時間領域のFG誤差信号を周波数領域の信号に変換するFG誤差周波数領域変換部を備え、
    上記部分拘束処理部は、上記FG誤差周波数領域変換部が古いデータ側に0を付加して変換処理を行なうものであれば、
    上記周波数領域適応フィルタ係数を時間領域に変換した場合に半分より1つ後方の係数が0になる周波数領域処理を行なうものであり、
    上記FG誤差周波数領域誤差計算部が新しいデータ側を0とした場合、上記周波数領域適応フィルタ係数を時間領域に変換した最初の係数を0とするものであることを特徴とするエコーキャンセル装置。
  6. FG推定信号生成部が、受話信号をFGフィルタ係数でフィルタ処理して、FG推定信号を求める過程と、
    FG部が、収音信号から上記FG推定信号を減算して、FG誤差信号を求める過程と、
    BG推定信号生成部が、上記受話信号を適応フィルタ係数でフィルタ処理して、BG推定信号を生成する過程と、
    誤差計算部が、上記FG誤差信号から上記BG推定信号を減算して、BG誤差信号を求める過程と、
    BGフィルタ係数更新部が、上記BG誤差信号と上記受話信号とを用いて、上記BG誤差信号のパワーが減少するように上記適応フィルタ係数を更新する過程と、
    FGフィルタ係数更新部が、上記適応フィルタ係数を上記FGフィルタ係数に加算し、上記FGフィルタ係数を更新する過程と、から成るエコーキャンセル方法において、
    上記BG部は周波数領域で処理を行うものであり、周波数領域の上記適応フィルタ係数を時間領域に変換した場合に、最初の係数或いは半分より1つ後方の係数が0になり、その他はそのままであるような帯域阻止フィルタのフィルタ係数で巡回畳み込みした結果と同一になるように、上記適応フィルタ係数を更新する過程の少なくとも一つにおけるデータに対して、周波数領域処理して更新された適応フィルタ係数として適応フィルタ係数レジスタに格納する過程を、含むことを特徴とするエコーキャンセル方法。
  7. 請求項6に記載のエコーキャンセル方法において、
    上記FG誤差信号と、上記BG誤差信号又は上記BG推定信号とから収束した周波数領域適応フィルタ係数を選択して拘束条件指令を出力する過程と、
    上記周波数領域適応フィルタ係数を更新する過程の少なくとも一つにおけるデータは、上記拘束条件処理指令を受けていない非選択周波数領域適応フィルタ係数である周波数領域適応フィルタ係数であることを特徴とするエコーキャンセル方法。
  8. 請求項6に記載のエコーキャンセル方法において、
    上記BG誤差信号を求める過程が、データ数の半分の0を付加して上記時間領域のFG誤差信号を周波数領域の信号に変換する過程を備え、
    上記FG誤差信号を周波数領域の信号に変換する過程が古いデータ側に0を付加して変換処理を行なうものであれば、
    上記周波数領域適応フィルタ係数を時間領域に変換した場合に半分より1つ後方の係数が0になる周波数領域処理過程を行なうものであり、
    上記FG誤差信号を周波数領域の信号に変換する過程が新しいデータ側を0とした場合、上記周波数領域適応フィルタ係数を時間領域に変換した最初の係数を0とする周波数領域処理過程を含むことを特徴とするエコーキャンセル方法。
  9. 請求項1乃至5の何れかに記載した各装置としてコンピュータを機能させるための装置プログラム。
  10. 請求項9に記載した何れかのプログラムを記録したコンピュータで読み取り可能な記録媒体。
JP2006308191A 2006-11-14 2006-11-14 エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体 Expired - Fee Related JP4705554B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006308191A JP4705554B2 (ja) 2006-11-14 2006-11-14 エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006308191A JP4705554B2 (ja) 2006-11-14 2006-11-14 エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体

Publications (2)

Publication Number Publication Date
JP2008124914A true JP2008124914A (ja) 2008-05-29
JP4705554B2 JP4705554B2 (ja) 2011-06-22

Family

ID=39509191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006308191A Expired - Fee Related JP4705554B2 (ja) 2006-11-14 2006-11-14 エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体

Country Status (1)

Country Link
JP (1) JP4705554B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015019183A (ja) * 2013-07-10 2015-01-29 日本電信電話株式会社 エコー消去装置、エコー消去方法、及びそのプログラム
WO2017085760A1 (ja) * 2015-11-16 2017-05-26 三菱電機株式会社 エコーキャンセラ装置及び通話装置
JPWO2017085761A1 (ja) * 2015-11-16 2018-02-22 三菱電機株式会社 エコーキャンセラ装置及び通話装置
CN111868826A (zh) * 2018-12-17 2020-10-30 深圳市汇顶科技股份有限公司 一种回声消除中的自适应滤波方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003234679A (ja) * 2001-12-28 2003-08-22 Avaya Technology Corp 音響エコーの相殺および抑制を実行する利得制御方法
JP2004507923A (ja) * 2000-08-21 2004-03-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 分割ブロック周波数領域適応フィルタ
JP2004274412A (ja) * 2003-03-10 2004-09-30 Nippon Telegr & Teleph Corp <Ntt> 反響消去装置、方法、及び反響消去プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004507923A (ja) * 2000-08-21 2004-03-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 分割ブロック周波数領域適応フィルタ
JP2003234679A (ja) * 2001-12-28 2003-08-22 Avaya Technology Corp 音響エコーの相殺および抑制を実行する利得制御方法
JP2004274412A (ja) * 2003-03-10 2004-09-30 Nippon Telegr & Teleph Corp <Ntt> 反響消去装置、方法、及び反響消去プログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015019183A (ja) * 2013-07-10 2015-01-29 日本電信電話株式会社 エコー消去装置、エコー消去方法、及びそのプログラム
WO2017085760A1 (ja) * 2015-11-16 2017-05-26 三菱電機株式会社 エコーキャンセラ装置及び通話装置
JP6279172B2 (ja) * 2015-11-16 2018-02-14 三菱電機株式会社 エコーキャンセラ装置及び通話装置
JPWO2017085761A1 (ja) * 2015-11-16 2018-02-22 三菱電機株式会社 エコーキャンセラ装置及び通話装置
JPWO2017085760A1 (ja) * 2015-11-16 2018-04-26 三菱電機株式会社 エコーキャンセラ装置及び通話装置
US10367949B2 (en) 2015-11-16 2019-07-30 Mitsubishi Electric Corporation Echo canceller device and voice telecommunications device
CN111868826A (zh) * 2018-12-17 2020-10-30 深圳市汇顶科技股份有限公司 一种回声消除中的自适应滤波方法、装置、设备及存储介质

Also Published As

Publication number Publication date
JP4705554B2 (ja) 2011-06-22

Similar Documents

Publication Publication Date Title
US11315587B2 (en) Signal processor for signal enhancement and associated methods
US7813499B2 (en) System and process for regression-based residual acoustic echo suppression
JP3177562B2 (ja) 少遅延サブバンド適応フィルタ装置
JP5075042B2 (ja) エコー消去装置、エコー消去方法、そのプログラム、記録媒体
US8073147B2 (en) Dereverberation method, apparatus, and program for dereverberation
US5774562A (en) Method and apparatus for dereverberation
US9536539B2 (en) Nonlinear acoustic echo signal suppression system and method using volterra filter
CN111031448A (zh) 回声消除方法、装置、电子设备和存储介质
JP4705554B2 (ja) エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体
JP5161157B2 (ja) 周波数領域エコー除去装置、周波数領域エコー除去方法、プログラム
JP5469564B2 (ja) 多チャネルエコー消去方法、多チャネルエコー消去装置及びそのプログラム
JP2000035788A (ja) 多重チャネル適応フィルタリング
Hofmann et al. Significance-aware filtering for nonlinear acoustic echo cancellation
Jin et al. A simultaneous equation method-based online secondary path modeling algorithm for active noise control
JP2003250193A (ja) 反響消去方法、この方法を実施する装置、プログラムおよびその記録媒体
JP3673727B2 (ja) 反響消去方法、その装置、そのプログラム及びその記録媒体
JP5524316B2 (ja) パラメータ推定装置、エコー消去装置、パラメータ推定方法、及びプログラム
JP4769161B2 (ja) エコーキャンセラ装置、その方法、そのプログラム、およびその記録媒体
EP3829151B1 (en) Echo suppression device, echo suppression method, and echo suppression program
JP5438629B2 (ja) ステレオ反響消去方法、ステレオ反響消去装置、ステレオ反響消去プログラム
JP7373947B2 (ja) 音響エコーキャンセル装置、音響エコーキャンセル方法及び音響エコーキャンセルプログラム
JP5583181B2 (ja) 縦続接続型伝達系パラメータ推定方法、縦続接続型伝達系パラメータ推定装置、プログラム
JPH09261135A (ja) 音響エコー消去装置
JP5565593B2 (ja) 信号処理方法、信号処理装置、及び信号処理プログラム
JP6343585B2 (ja) 未知伝達系推定装置、未知伝達系推定方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110218

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110311

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees