JP2017098861A - Echo canceller and echo cancellation method - Google Patents
Echo canceller and echo cancellation method Download PDFInfo
- Publication number
- JP2017098861A JP2017098861A JP2015231312A JP2015231312A JP2017098861A JP 2017098861 A JP2017098861 A JP 2017098861A JP 2015231312 A JP2015231312 A JP 2015231312A JP 2015231312 A JP2015231312 A JP 2015231312A JP 2017098861 A JP2017098861 A JP 2017098861A
- Authority
- JP
- Japan
- Prior art keywords
- echo
- delay time
- filter
- evaluation value
- signal
- 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.)
- Pending
Links
Images
Landscapes
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Telephone Function (AREA)
Abstract
Description
本発明は、エコーキャンセラに係り、特に、電話網等で発生するエコーを消去するためのエコーキャンセラに関する。 The present invention relates to an echo canceller, and more particularly to an echo canceller for canceling echo generated in a telephone network or the like.
電話網では、電話機から加入者線(2線:双方向)と中継線(4線:片方向ずつ(2線)が独立に2つ)との間を、ハイブリッドと呼ばれる2線−4線変換回路で接続して2つの電話機間の通話が行われる。しかし、このようなハイブリッドを用いたシステムではインピーダンス不整合により、通話相手から受信した信号が自電話機のハイブリッドで反射し、通話相手に回り込むエコーが発生する。エコーは遅延を伴って通話相手に聞こえることとなり、通話に支障をきたすことから、エコーを消去する必要があった。 In a telephone network, a two-wire to four-wire conversion called a hybrid is performed between a telephone line and a subscriber line (two lines: two-way) and a trunk line (four lines: two one-way (two lines) independently). A call is made between two telephones connected by a circuit. However, in a system using such a hybrid, due to impedance mismatching, a signal received from the other party is reflected by the hybrid of the own telephone, and an echo that goes around to the other party is generated. Since the echo is heard by the other party with a delay and interferes with the call, it is necessary to cancel the echo.
図16は、従来のエコーキャンセラの構成を示す。エコーキャンセラは、ハイブリッド回路の近傍に設置され、近端側の電話機の対向である遠端側の電話機に戻るエコー信号をキャンセルする。
エコーキャンセラ1は、通常、適応フィルタ2を備えている。適応フィルタ2は、遠端側の話者からの受信信号x(n)に対して畳み込み演算を行い、疑似エコー信号y’(n)を生成する。エコーキャンセラ1は、エコーを含んだ遠端話者への送信信号y(n)から疑似エコー信号y’(n)を減算することにより該エコーを除去して出力送信信号z(n)を得る。ここでn(n=1、2、3、...)は時間軸上のサンプル点であり、信号が離散信号であることを示す。
適応フィルタ2は、通常、FIR(Finite Impulse Response Filter)フィルタによって実現される。FIRフィルタの出力y’(n)は、時間軸上のサンプルnのそれぞれにおける単位インパルス応答に相当する複数のフィルタ係数h(i)(i=1、2、3...)と入力x(n−i+1)との積の総和、すなわち畳み込み加算により表される。そして、各フィルタ係数を推定するための適応アルゴリズムには、LMS(least mean square)や学習同定法等のアルゴリズムが用いられる。なお、適応信号処理、音響エコーキャンセラに関する一般的な技術は、電子情報通信学会、1群9編 信号・システム 3章 適応信号処理、及び、2群6編 音響信号処理 5章、音響エコーキャンセラ等に開示されている。
FIG. 16 shows the configuration of a conventional echo canceller. The echo canceller is installed in the vicinity of the hybrid circuit, and cancels an echo signal that returns to the far-end phone that is opposite to the near-end phone.
The
The
一例として、128タップのFIRフィルタで構成される適応フィルタでは、各フィルタ係数の利得を調整して受信信号x(n)から擬似エコー信号を作成し、エコーキャンセラ内でエコーを消去する。8kHzでサンプルされた受信信号xを考えた場合、128×125μSec.=16mSec.迄の遅延を持つエコーを消去することが可能である。
一方で、上述のタップ数のエコーキャンセラでは16mSec.以上遅延するエコーについては十分な消去量を見込むことはできない。このようなエコーは、エコーキャンセラに入力する信号に固定的な遅延を持たせることで消去することができるが、この場合、事前に遅延時間がわかっていないとエコーを効果的に消去できない。さらに、遅延時間が変化した場合(例えば、エコー路に変化があった場合等)にはエコーを効果的に消去できないという課題がある。なお、通信時間が変化する例として、ハイブリッド回路が交換されること、音声変換等の処理を実行するソフトウェアが変更又は更新されること、音声変換等の機能の一部が適用される/されないなど切り替わることなどがあげられる。
As an example, in an adaptive filter composed of a 128-tap FIR filter, the gain of each filter coefficient is adjusted to create a pseudo echo signal from the received signal x (n), and the echo is canceled in the echo canceller. Considering a received signal x sampled at 8 kHz, 128 × 125 μSec. = 16 mSec. It is possible to cancel echoes with delays up to.
On the other hand, 16 mSec. A sufficient amount of erasure cannot be expected for echoes that are delayed as described above. Such an echo can be eliminated by giving a fixed delay to the signal input to the echo canceller. In this case, the echo cannot be effectively eliminated unless the delay time is known in advance. Furthermore, there is a problem that when the delay time changes (for example, when the echo path changes), the echo cannot be effectively erased. In addition, as an example in which the communication time changes, a hybrid circuit is exchanged, software that performs processing such as voice conversion is changed or updated, and some functions such as voice conversion are applied / not applied. For example, switching.
特許文献1では、遠端の電話機から入力される信号とエコー信号の相互相関から遅延時間を推定し、ヒストグラムを用いて頻度が最大となる遅延時間をエコーキャンセラへ入力する信号として適用する。しかし、特許文献1の技術では、遅延時間の決定に相互相関に基づく値の積算値を用いており、遅延時間に変化が発生した場合、遅延時間が変更されるまで時間がかかる場合があり、その間エコーの消去性能が劣化する課題があった。
本発明は、以上の点に鑑み、エコー信号の遅延時間が不明又は遅延時間に変化が生じてもエコーを消去するエコーキャンセラを提供することを目的とする。
In
In view of the above, an object of the present invention is to provide an echo canceller that cancels echoes even when the delay time of an echo signal is unknown or changes occur in the delay time.
本発明の第1の解決手段によると、
適応フィルタを用いて遠端側への送信信号に含まれるエコー信号を消去するエコー消去部と、
遠端側からの受信信号と遠端側への送信信号の一方を、所定時間ずつシフトさせながら両信号の相互相関を求め、該相互相関に基づき、受信信号に対する遅延時間の候補を複数求める相関処理部と、
求められた相互相関の履歴に基づき、遅延時間の候補に対する評価値を求める統計処理部と、
前記統計処理部により求められた評価値を遅延時間と対応して記憶する記憶部と、
前記記憶部に記憶された評価値に基づいて遅延時間の候補のひとつを選択し、選択された遅延時間に従い受信信号を遅延させて前記適応フィルタへ出力する遅延処理部と、
前記適応フィルタのフィルタ係数又は前記エコー消去部でのエコー消去量を監視し、監視結果に応じて前記記憶部に記憶された評価値を変更するフィルタ監視部と
を備えたエコーキャンセラが提供される。
According to the first solution of the present invention,
An echo canceler for canceling an echo signal included in the transmission signal to the far end side using an adaptive filter;
Correlation for obtaining a plurality of delay time candidates for a received signal based on the cross-correlation by obtaining one of the received signal from the far end and the transmission signal to the far end while shifting one signal at a time. A processing unit;
A statistical processing unit for obtaining an evaluation value for a delay time candidate based on the obtained cross-correlation history;
A storage unit for storing the evaluation value obtained by the statistical processing unit in correspondence with the delay time;
A delay processing unit that selects one of delay time candidates based on the evaluation value stored in the storage unit, delays a received signal according to the selected delay time, and outputs the delayed signal to the adaptive filter;
There is provided an echo canceller comprising a filter monitoring unit that monitors a filter coefficient of the adaptive filter or an echo cancellation amount in the echo cancellation unit and changes an evaluation value stored in the storage unit according to a monitoring result. .
本発明の第2の解決手段によると、
適応フィルタを用いて遠端側への送信信号に含まれるエコー信号を消去するエコーキャンセル方法であって、
遠端側からの受信信号と遠端側への送信信号の一方を、所定時間ずつシフトさせながら両信号の相互相関を求め、該相互相関に基づき、受信信号に対する遅延時間の候補を複数求め、
求められた相互相関の履歴に基づき、遅延時間の候補に対する評価値を求め、
求められた評価値を遅延時間と対応して記憶し、
記憶された評価値に基づいて遅延時間の候補のひとつを選択し、選択された遅延時間に従い受信信号を遅延させて適応フィルタへ出力し、
適応フィルタのフィルタ係数又はエコー消去量を監視し、監視結果に応じて記憶された評価値を低減させるエコーキャンセル方法が提供される。
According to the second solution of the present invention,
An echo cancellation method for canceling an echo signal included in a transmission signal to a far end side using an adaptive filter,
One of the received signal from the far end side and the transmission signal to the far end side is shifted by a predetermined time to obtain the cross-correlation of both signals, and based on the cross-correlation, a plurality of delay time candidates for the received signal are obtained,
Based on the obtained cross-correlation history, obtain an evaluation value for the delay time candidate,
The obtained evaluation value is stored in correspondence with the delay time,
Select one of the delay time candidates based on the stored evaluation value, delay the received signal according to the selected delay time, and output to the adaptive filter,
An echo cancellation method is provided that monitors the filter coefficient or echo cancellation amount of an adaptive filter and reduces the stored evaluation value in accordance with the monitoring result.
本発明によると、エコー信号の遅延時間が不明又は遅延時間に変化が生じてもエコーを消去するエコーキャンセラを提供することができる。 According to the present invention, it is possible to provide an echo canceller that cancels an echo even if the delay time of the echo signal is unknown or a change occurs in the delay time.
(実施例1)
図1は、本実施の形態におけるエコーキャンセラ10の構成を示すブロック図である。図1はエコーキャンセラ10の論理的な構成を示すものであり、後述するプロセッサ(CPU)及びメモリ等のハートウェア構成によって実現される。
エコーキャンセラ10は、図16に示すエコーキャンセラ1と同様に、遠端電話機からの信号(Rin)を受信し、遠端電話機へ信号(Sout)を送信する。また、エコーキャンセラ10は、近端電話機からの信号(Sin)を例えばハイブリッド回路を介して受信し、近端電話機への信号(Rout)を例えばハイブリッド回路に出力することで近端電話機へ送信する。エコーキャンセラ10は、例えば通信装置に備えられることができる。
エコーキャンセラ10は、例えば、遠端電話機からの受信信号x(n)、および遅延したエコーを含む遠端電話機への送信信号y(n)をバッファへコピーするバッファ処理部100と、遠端電話機からの受信信号を蓄積する受信バッファ101と、遅延したエコー信号を含む遠端電話機への送信信号を蓄積する送信バッファ102と、受信バッファ101と送信バッファ102に蓄積された信号の相互相関から遅延時間の候補を選定する相関処理部103と、相関処理部103の出力結果として得られる相互相関並びに遅延時間に対する統計処理を行い、および遅延時間の妥当性を評価し評価値を決定する統計処理部104と、統計処理部104の出力結果として得られる相互相関、遅延時間及び評価値を記憶する管理テーブル(記憶部)105と、エコー消去手段として用いる適応フィルタ106と、適応フィルタ106のフィルタ係数およびエコー消去量を監視し、管理テーブル105に記憶される遅延時間の評価値を監視結果に基づき加減するフィルタ監視部107と、データ線路110から入力される音声を、管理テーブル108に記憶される遅延時間のうち評価値が高い遅延時間だけ遅延させて適応フィルタ106へ出力する遅延処理部108と、エコーを含む遠端電話機への送信信号y(n)から疑似エコー信号を減算してエコーを消去する減算器109と、遠端電話機から近端電話機への論理的なデータ線路110と、近端電話機から遠端電話機への論理的なデータ線路120とを備える。適応フィルタ106と減算器109がエコー消去部130を構成する。
Example 1
FIG. 1 is a block diagram showing a configuration of an
Similarly to the
The
以下、各ブロックについて、説明する。
バッファ処理部100は、遠端電話機から受信した受信信号を受信バッファ101蓄積する。また、バッファ処理部100は、遅延したエコー信号を含む遠端電話機への送信信号を送信バッファ102へ蓄積する。
相関処理部103は、受信バッファ101および送信バッファ102に蓄積された受信信号、送信信号の相互相関を算出する。相関処理部103は、相互相関が大きい位置の遅延時間を決定し、後述の統計処理部104に遅延時間の候補として出力する。
統計処理部104は、相関処理部103の出力結果として得られる相互相関及び遅延時間に対し統計的な処理を行い、管理テーブル105に記憶する。統計的な処理を行う理由は、瞬間的には大きく変化する相互相関、遅延時間を平均化することで瞬間的な変化に対するエコーキャンセラの耐性を高めるためである。
Hereinafter, each block will be described.
The
The
The
また、統計処理部104は、遅延時間の評価値を算出し、管理テーブル105に記憶する。評価値は、例えば、相互相関に基づいた重みを管理テーブル105が更新される毎に積算する値である。すなわち、過去から現在までの相互相関の履歴が反映される値である。具体的には管理テーブル105に保持される該遅延時間の更新回数が多いほど、また相互相関が大きいほどに該遅延時間は高く評価される。
管理テーブル105は、遅延時間、相互相関及び評価値を対応して記憶する記憶領域である。管理テーブル105は統計処理部104およびフィルタ監視部107によって値が更新される。
適応フィルタ106は、上述の適応フィルタ2で示した従来と同様のエコー消去手段である。
フィルタ監視部107は、適応フィルタ106のフィルタ係数を監視し、適応フィルタ106が想定されるフィルタ係数になっていない場合には管理テーブル105に記憶されている該遅延時間の評価値を低減し、想定するフィルタ係数になっている場合は評価値を増加することで、後述の遅延処理部108が使用する遅延時間の変更を促す。
遅延処理部108は、管理テーブル105に記憶される複数の遅延時間のうち、高い評価値を持つ遅延時間を選択し、該遅延時間だけ遅延させて適応フィルタ106へ出力する。
Further, the
The management table 105 is a storage area that stores delay times, cross-correlations, and evaluation values in association with each other. The management table 105 is updated by the
The
The
The
図2は、エコーキャンセラ10のハードウェア構成図である。
エコーキャンセラ10は、例えば、プロセッサ21と、メモリ22と、インタフェース23を備える。プロセッサ21は、エコーキャンセラ10の処理を実行する処理部である。メモリ22は、プロセッサ21により実行されて図1に示す各部を実現するプログラムが記憶される。また、メモリ22は、図1に示す受信バッファ101、送信バッファ102、及び、管理テーブル105に相当する記憶領域を有する。
以下、図3〜図13を用いて本実施の形態のエコーキャンセラ10の動作を詳細に説明する。具体的には、8kHzでサンプリングされた信号に対して処理を行い、最大128msまで遅延するエコーを消去する例を説明する。またエコー消去手段として用いる適応フィルタ106には、128タップで最大16ms遅延までのエコーを消去可能なものを想定する。
FIG. 2 is a hardware configuration diagram of the
The
Hereinafter, the operation of the
図3はエコーキャンセラの動作を示すフロー図である。エコーキャンセラ10は、概略以下のように動作する。
バッファ処理210では、バッファ処理部100が、データ線路110、120から逐次コピーする受信信号及び送信信号を受信バッファ101及び送信バッファ102へそれぞれ蓄積する。
相関処理220では、相関処理部103が、受信バッファ101、送信バッファ102に蓄積された信号の一方を時間方向にずらしながら(遅延時間に相当)、両信号の相互相関を算出し、高い相互相関を持つ遅延時間を複数選定し、統計処理230への入力とする。
統計処理230では、統計処理部104が、相関処理220からの入力に基づき管理テーブル105を更新する。
遅延処理240では、遅延処理部108が、管理テーブル105から高い評価値を持つ遅延時間を取得し、受信信号を該遅延時間分遅らせて適応フィルタ106へ入力する。
エコー消去処理250では、適応フィルタ106が、遅延処理240により遅延させられた受信信号を、従来のエコーキャンセラ2と同一の方法で疑似エコーを作成し、送信信号から減算することでエコーを消去する。
フィルタ監視処理260では、フィルタ監視部107が、適応フィルタ106のフィルタ係数が最大となる位置を監視し、監視結果を評価値加減処理270への入力とする。
評価値加減処理270では、フィルタ監視部107が、フィルタ監視処理260の結果に基づき、フィルタ係数の最大値が適応フィルタ106の前半部分に位置しない場合には、管理テーブル105が持つ遅延時間の評価値を低減する。一方、フィルタ監視部107は、フィルタ係数の最大値が適応フィルタ106の前半部分に位置する場合には、管理テーブル105が持つ遅延時間の評価値を増加する。
FIG. 3 is a flowchart showing the operation of the echo canceller. The
In the
In the
In the
In the
In the
In the
In the evaluation value addition /
図4は、バッファの説明図である。本実施例で説明するエコーキャンセラ10は、最大128msまで遅延するエコーを消去することを想定するため、受信バッファ101のサイズRlenを128msに相当する領域とする。また、適応フィルタ106は128タップを想定するため、送信バッファ102のサイズSlenを16msに相当する領域とする。なお、バッファのサイズは、エコー消去の対象とする遅延量及び適応フィルタのタップ数に応じた適宜のサイズとすることができる。
受信バッファ101及び送信バッファ102はそれぞれFIFO(First In First Out)型のバッファであり、新たに信号が入力された場合、バッファの先頭に蓄積された信号(最も過去に蓄積された信号)が破棄され、新たな信号が末尾に蓄積される。
FIG. 4 is an explanatory diagram of the buffer. The
Each of the
図5は、相関処理220の詳細フロー図である。相関処理220では、相関処理部103は、受信バッファ101に蓄積された信号Rに対して、送信バッファ102に蓄積された信号Sを時間方向に逐次ずらしながら、送信信号の遅延時間Delay(i)と、受信信号と送信信号の相互相関CCor(i)を計算する(処理410〜450)。図示の例では、送信バッファ102に蓄積された信号Sを125mSec.づつずらしているが、ずらす値は適宜の値でよい。相関処理部103は、求めた相互相関CCor(i)のうち値が高い相互相関と、対応する遅延時間との組をひとつ又は複数組、統計処理部230に出力する(処理460)。例えば、相互相関が高い方から所定数の組を出力してもよいし、相互相関が予め定められた閾値より大きい組を出力してもよいし、他の予め定められた基準に従い相互相関が比較的高い組を出力してもよい。
FIG. 5 is a detailed flowchart of the
図6は、図5の相関処理220によって得られる相互相関CCor(i)と遅延時間Delay(i)のイメージ図である。本実施例では、一例として、図5におけるi=256(遅延時間32mSec.に相当)及びi=512(遅延時間64mSec.に相当)に該当する相互相関と遅延時間の組(2組)が統計処理230へ出力されることを想定する。
FIG. 6 is an image diagram of the cross-correlation CCor (i) and the delay time Delay (i) obtained by the
図7は、管理テーブル105の一例を示す説明図である。管理テーブル105は、遅延時間D510、相互相関C520及び評価値E530を対応づけて保持する。本実施例では、列番号m=0〜2の3つの配列をもつ管理テーブル500を考える。 FIG. 7 is an explanatory diagram illustrating an example of the management table 105. The management table 105 holds the delay time D510, the cross-correlation C520, and the evaluation value E530 in association with each other. In this embodiment, a management table 500 having three arrays with column numbers m = 0 to 2 is considered.
図8は、統計処理230の詳細フロー図である。統計処理部104は、相関処理部103から入力した遅延時間Delay(i)に対応する、管理テーブル500の相互相関Cの値を更新する。このとき、統計処理部104は、更新する相互相関Cの前回値と相関処理部103から入力した相互相関Cの値の移動平均をとる等の統計処理を行うことで、瞬間的な相互相関の変化に対して耐性を持たせることが可能である(処理620)。なお、移動平均以外にも、更新する相互相関Cの前回値が、更新後の相互相関Cに影響するような適宜の統計処理でもよい。
また、統計処理部104は評価値Eを算出する。ここで、評価値Eは、相互相関Cの大きさに応じた重みwを、該遅延時間Dの更新毎に積算して得られる値である。相互相関Cの値が大きく、かつ該遅延時間Dの更新回数が多いほどに高い評価値Eを持つようにすることができる。図8では一例として、相互相関Cに対する閾値として100を用い、相互相関Cの値が100以下の場合に重みw=0とし、相互相関Cが100より大きい場合に重みw=2として評価値Eに積算することで、相互相関が高い遅延時間は評価値が高くなるようにしている(処理630〜660)。
FIG. 8 is a detailed flowchart of the
Further, the
図9は、遅延処理240の詳細フロー図である。遅延処理部108は、管理テーブル105(500)を参照して評価値Eが最大の欄を特定し、最大の評価値Eに対応する遅延時間Dを取得する(処理710)。遅延処理部108は、線路110から入力される受信信号を、取得した遅延時間Dに相当する量遅延させて適応フィルタ106へ出力する(処理720)。これにより、受信信号は、送信信号と相関が高くなるように時間方向の位置が調整されて適応フィルタ106に出力されるため、エコー消去処理250において、128タップ(16ms)の適応フィルタであっても、最大128msまで遅延するエコーを消去することができる。
FIG. 9 is a detailed flowchart of the
図10は、フィルタ監視処理260の詳細フロー図である。フィルタ監視部107は、128タップの適応フィルタをN=8タップずつM=16個のブロックに区切って、ブロック毎のフィルタ係数hの平均値であるhave(n)を求め、全ブロックのうちフィルタ係数の平均値have(n)が最大となる位置(当該ブロックの時間軸上の位置を示すブロック識別情報)を算出する(処理820〜840)。処理820〜840を全16ブロックに対して行い(処理810〜860)、算出されたhave(n)が最大となる位置(ブロック識別情報)を評価値加減処理270へ提供する(処理870)。ここでNは適応フィルタの分割単位であって、1ブロックに含まれるタップ数を示す。MはNタップ毎に区切られた適応フィルタのブロック数である。
FIG. 10 is a detailed flowchart of the
図11は、評価値加減処理270の詳細フロー図である。
一般的に、エコー経路内に存在するエコー発生要素(例えば、ハイブリッド回路や壁など)自身のインパルス応答は、最初急激に立ち上がり、その後は減衰振動を示す。そのため、適応フィルタにおいても最大値をとるフィルタ係数は、時間軸の前半部分に相当するフィルタ係数であり、フィルタ係数の時間軸上の位置が最大値をとるフィルタ係数から遠くなるに従いフィルタ係数は小さな値をとる状態が、精度良くエコー発生要素を近似している状態と考えることが出来る。
この想定に基づき、フィルタ監視部107は、フィルタ監視処理で求められた、適応フィルタのフィルタ係数の平均値が最大となるブロックの位置が、適応フィルタの全フィルタ係数のうち時間軸上で前半部分に位置しない場合には(処理910:Yes)、管理テーブル105(500)中で最大の評価値E530を低減する(処理920)。一方、フィルタ監視部107は、フィルタ係数の平均値が最大となるブロックの位置が適応フィルタの全フィルタ係数のうち時間軸上で前半部分に位置する場合(処理910:Yes)、管理テーブル500中で最大の評価値E530を増加する(処理930)。
本実施例では、128タップの適応フィルタを想定するため、統計処理部104から入力されるフィルタ係数の平均値が最大となるブロックの位置が、16/2=8以降に位置する場合に、換言すると、時間軸上で前半部分に位置しない場合に、管理テーブル500中で最大値を持つ評価値Eを1/2に低減させる。一方、フィルタ係数の平均値が最大となるブロックの位置が8より前に位置する場合、換言すると、時間軸上で前半部分に位置する場合は、管理テーブル500中で最大値を持つ評価値Eを2倍に増加させる(処理910〜930)。
FIG. 11 is a detailed flowchart of the evaluation value addition /
In general, the impulse response of an echo generating element (for example, a hybrid circuit or a wall) existing in the echo path first suddenly rises first and then shows a damped oscillation. Therefore, the filter coefficient that takes the maximum value also in the adaptive filter is a filter coefficient corresponding to the first half of the time axis, and the filter coefficient becomes smaller as the position of the filter coefficient on the time axis becomes farther from the filter coefficient that takes the maximum value. It can be considered that the state of taking the value approximates the echo generating element with high accuracy.
Based on this assumption, the
In this embodiment, since an adaptive filter with 128 taps is assumed, when the position of the block having the maximum filter coefficient average value input from the
上記処理により、相互相関Cから最も高い評価値Eを導かれた遅延時間Dを適用した場合に、適応フィルタ105のフィルタ係数が、期待するフィルタ係数にならないと判断される場合は、適用した遅延時間に対応する評価値Eを強制的に低減させて、次に高い評価値Eを持つ遅延時間Dが適用されることを促すことが出来る。一方で、遅延時間Dにおいて期待するフィルタ係数となる場合、より高い評価値Eに更新することで該遅延時間Dの評価を高めることが出来る。
なお、図11中で使用する定数は一例であり、適応フィルタのインパルス応答の精度を高めたい場合は、フィルタ係数が最大となる位置を適応フィルタのより前半部分(例えば、前方1/3や1/4など)に限定することで実現可能である。また、評価値の加減についても、評価値へ乗算する定数を適宜設定して評価値の加減度合を調整することが可能である。また、定数を乗算する以外の適宜の手法で評価値を加減してもよい。
When it is determined that the filter coefficient of the
Note that the constants used in FIG. 11 are merely examples, and when it is desired to improve the accuracy of the impulse response of the adaptive filter, the position at which the filter coefficient is maximized is set to the first half of the adaptive filter (for example, the
図12は、管理テーブルの別例である。上述のフィルタ監視処理260および評価値加減処理270により評価値E(1)が図7の状態から半分に低減された状態を表す。
相関処理220及び統計処理230によって高い評価値E(1)を得た遅延時間D(1)を用いて遅延処理240及びエコー消去処理250を行った結果、フィルタ監視処理260及び評価値加減処理270によりフィルタ係数の平均値が最大となるブロックの位置が想定と異なると判断され、評価値E(1)の値が50(=1/2×100)に低減されている。この結果、エコーキャンセラ10は、評価値E(0)を持つ遅延時間D(0)を使用して動作する。上記動作より、フィルタの監視結果に応じて使用する遅延時間がD(1)からD(0)へ入れ替わるため、遅延時間の変化に対して素早く追従することが可能となる。
なお、上述の例では、ブロックを単位としてフィルタ係数の平均値を求め、フィルタ係数の平均値が最大となるブロック位置を基準に判断しているが、平均値以外にも、ブロック内のフィルタ係数に基づく適宜の値を基準としてもよいし、個々のフィルタ係数を基準とすることも可能である。上述の例のようにブロックを単位としてフィルタ係数の平均値を求めると、瞬間的な挙動を吸収できるため、動作が安定しやすい。
FIG. 12 is another example of the management table. The evaluation value E (1) is reduced by half from the state of FIG. 7 by the above-described
As a result of performing the
In the above example, the average value of the filter coefficient is obtained in units of blocks, and the determination is made based on the block position where the average value of the filter coefficient is maximum. An appropriate value based on the above may be used as a reference, or individual filter coefficients may be used as a reference. If the average value of the filter coefficients is obtained in units of blocks as in the above example, the instantaneous behavior can be absorbed, and the operation is likely to be stable.
(実施例2)
図13は、実施例2におけるフィルタ監視処理のフローチャートである。実施例2におけるフィルタ監視処理260(1000)では、実施例1のようにフィルタ係数の平均値が最大となるブロック位置を求めるのではなく、フィルタ係数の最大値を計算してフィルタの監視を行う(処理1010〜1040)。本実施例でも、フィルタ係数をブロックに分割し、ブロック内でのフィルタ係数の平均値haveを求めて、フィルタ係数のブロック平均値の最大値を求める。本実施例では、評価値加減処理270へはフィルタ係数の平均値の最大値を提供する(処理1070)。評価値加減処理は、図11に示す実施例1の処理と同様であるが、処理910が異なる。本実施例では、フィルタ監視部107は、フィルタ係数の平均値の最大値が予め定められた閾値以下か否かを判断し、閾値以下であれば処理920へ移り、閾値以下でなければ処理930へ移る。フィルタ係数の平均値の最大値が予め定められた閾値以下の場合、適応フィルタには明確なピークが存在しておらず想定するインパルス応答ではないと判断することができる。例えば、適用した遅延時間に対して、実際の遅延時間が大きい場合、適応フィルタが有効に作用する期間(例えば、16ms)の間にインパルス応答のピークがないことが考えられる。
なお、装置の構成及び他の処理は実施例1と同様である。
(Example 2)
FIG. 13 is a flowchart of the filter monitoring process in the second embodiment. In the filter monitoring process 260 (1000) in the second embodiment, the filter position is monitored by calculating the maximum value of the filter coefficient instead of obtaining the block position where the average value of the filter coefficient is the maximum as in the first embodiment. (Processing 1010-1040). Also in this embodiment, the filter coefficient is divided into blocks, the average value have of filter coefficients in the block is obtained, and the maximum value of the block average value of the filter coefficients is obtained. In this embodiment, the maximum value of the average value of the filter coefficients is provided to the evaluation value adjustment process 270 (process 1070). The evaluation value addition / subtraction process is the same as the process of the first embodiment shown in FIG. 11, but the
The apparatus configuration and other processes are the same as those in the first embodiment.
(実施例3)
図14は、実施例3におけるフィルタ監視処理のフローチャートである。実施例3におけるフィルタ監視処理260(1100)では、エコー消去量に基づいてフィルタの監視を行う。本実施例では、エコー消去量としてERLE(Echo Return Loss Enhancement)という指標を用いる。フィルタ監視部107は、エコー信号y(n)と疑似エコー信号y’(n)に基づき、例えば図14の処理1100に示す式に従い、適応フィルタのERLEの特定時間内における平均値ERLEaveを計算する(処理1110)。評価値加減処理270へはERLEaveを提供する(処理1120)。
評価値加減処理は、図11に示す実施例1の処理と同様であるが、処理910が異なる。本実施例では、フィルタ監視部107は、ERLEaveが予め定められた閾値以下か否かを判断し、閾値以下であれば処理920へ移り、閾値以下でなければ処理930へ移る。ERLEaveが予め定められた閾値以下の場合はエコー消去量が十分ではないと判断し、該遅延時間の評価値Eを低減させることができる。
上述の各実施例によるエコーキャンセラ及びエコー消去方法によれば、エコー信号の遅延時間が不明又は遅延時間に変化が発生しやすい環境下においても、エコー信号の遅延時間を短時間に精度よく決定することが可能であり、安定したエコー消去を実現することが可能である
(Example 3)
FIG. 14 is a flowchart of the filter monitoring process in the third embodiment. In the filter monitoring process 260 (1100) in the third embodiment, the filter is monitored based on the echo cancellation amount. In this embodiment, an index called ERLE (Echo Return Loss Enhancement) is used as the echo cancellation amount. Based on the echo signal y (n) and the pseudo echo signal y ′ (n), the
The evaluation value addition / subtraction process is the same as the process of the first embodiment shown in FIG. 11, but the
According to the echo canceller and the echo cancellation method according to each of the embodiments described above, the delay time of the echo signal is accurately determined in a short time even in an environment where the delay time of the echo signal is unknown or the delay time is likely to change. It is possible to achieve stable echo cancellation
(変形例)
図15は、本実施の形態の変形例を示す図である。
エコーキャンセラ10は、電話機に接続される以外にも、例えば、マイク31とスピーカ32を備えた電話会議システム(スピーカフォン)に用いられてもよい。この場合、上述の各実施例における近端電話機からの送信信号Sinが、本変形例ではマイク31を介して入力された話者の音声信号に相当する。また、上述の各実施例における近端電話機への受信信号Routが、本変形例ではスピーカ32から出力される音声信号に相当する。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
(Modification)
FIG. 15 is a diagram showing a modification of the present embodiment.
In addition to being connected to a telephone, the
In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
Further, the control lines and information lines indicate what is considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.
本発明は、例えば、通信システム、通信網を介した会議システム等に利用可能である。 The present invention is applicable to, for example, a communication system, a conference system via a communication network, and the like.
10:エコーキャンセラ
100:バッファ処理部
101:受信バッファ
102:送信バッファ
103:相関処理部
104:統計処理部
105:管理テーブル
106:適応フィルタ
107:フィルタ監視部
108:遅延処理部
110:データ線路
120:データ線路
130:エコー消去部
DESCRIPTION OF SYMBOLS 10: Echo canceller 100: Buffer processing part 101: Reception buffer 102: Transmission buffer 103: Correlation processing part 104: Statistical processing part 105: Management table 106: Adaptive filter 107: Filter monitoring part 108: Delay processing part 110: Data line 120 : Data line 130: Echo canceler
Claims (7)
遠端側からの受信信号と遠端側への送信信号の一方を、所定時間ずつシフトさせながら両信号の相互相関を求め、該相互相関に基づき、受信信号に対する遅延時間の候補を複数求める相関処理部と、
求められた相互相関の履歴に基づき、遅延時間の候補に対する評価値を求める統計処理部と、
前記統計処理部により求められた評価値を遅延時間と対応して記憶する記憶部と、
前記記憶部に記憶された評価値に基づいて遅延時間の候補のひとつを選択し、選択された遅延時間に従い受信信号を遅延させて前記適応フィルタへ出力する遅延処理部と、
前記適応フィルタのフィルタ係数又は前記エコー消去部でのエコー消去量を監視し、監視結果に応じて前記記憶部に記憶された評価値を変更するフィルタ監視部と
を備えたエコーキャンセラ。 An echo canceler for canceling an echo signal included in the transmission signal to the far end side using an adaptive filter;
Correlation for obtaining a plurality of delay time candidates for a received signal based on the cross-correlation by obtaining one of the received signal from the far end and the transmission signal to the far end while shifting one signal at a time. A processing unit;
A statistical processing unit for obtaining an evaluation value for a delay time candidate based on the obtained cross-correlation history;
A storage unit for storing the evaluation value obtained by the statistical processing unit in correspondence with the delay time;
A delay processing unit that selects one of delay time candidates based on the evaluation value stored in the storage unit, delays a received signal according to the selected delay time, and outputs the delayed signal to the adaptive filter;
An echo canceller comprising: a filter monitoring unit that monitors a filter coefficient of the adaptive filter or an echo cancellation amount in the echo cancellation unit, and changes an evaluation value stored in the storage unit according to a monitoring result.
遠端側からの受信信号と遠端側への送信信号の一方を、所定時間ずつシフトさせながら両信号の相互相関を求め、該相互相関に基づき、受信信号に対する遅延時間の候補を複数求め、
求められた相互相関の履歴に基づき、遅延時間の候補に対する評価値を求め、
求められた評価値を遅延時間と対応して記憶し、
記憶された評価値に基づいて遅延時間の候補のひとつを選択し、選択された遅延時間に従い受信信号を遅延させて適応フィルタへ出力し、
適応フィルタのフィルタ係数又はエコー消去量を監視し、監視結果に応じて記憶された評価値を低減させるエコーキャンセル方法。 An echo cancellation method for canceling an echo signal included in a transmission signal to a far end side using an adaptive filter,
One of the received signal from the far end side and the transmission signal to the far end side is shifted by a predetermined time to obtain the cross-correlation of both signals, and based on the cross-correlation, a plurality of delay time candidates for the received signal are obtained,
Based on the obtained cross-correlation history, obtain an evaluation value for the delay time candidate,
The obtained evaluation value is stored in correspondence with the delay time,
Select one of the delay time candidates based on the stored evaluation value, delay the received signal according to the selected delay time, and output to the adaptive filter,
An echo cancellation method for monitoring a filter coefficient or an echo cancellation amount of an adaptive filter and reducing an evaluation value stored according to a monitoring result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015231312A JP2017098861A (en) | 2015-11-27 | 2015-11-27 | Echo canceller and echo cancellation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015231312A JP2017098861A (en) | 2015-11-27 | 2015-11-27 | Echo canceller and echo cancellation method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017098861A true JP2017098861A (en) | 2017-06-01 |
Family
ID=58818235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015231312A Pending JP2017098861A (en) | 2015-11-27 | 2015-11-27 | Echo canceller and echo cancellation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017098861A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109961797A (en) * | 2017-12-25 | 2019-07-02 | 阿里巴巴集团控股有限公司 | A kind of echo cancel method, device and electronic equipment |
WO2024009892A1 (en) * | 2022-07-07 | 2024-01-11 | 株式会社トランストロン | Echo suppressing device, echo suppressing method, and echo suppressing program |
-
2015
- 2015-11-27 JP JP2015231312A patent/JP2017098861A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109961797A (en) * | 2017-12-25 | 2019-07-02 | 阿里巴巴集团控股有限公司 | A kind of echo cancel method, device and electronic equipment |
WO2024009892A1 (en) * | 2022-07-07 | 2024-01-11 | 株式会社トランストロン | Echo suppressing device, echo suppressing method, and echo suppressing program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105472189B (en) | Echo cancellation detector, method of cancelling echoes and comparison generator | |
JP5423966B2 (en) | Specific signal cancellation method, specific signal cancellation apparatus, adaptive filter coefficient update method, adaptive filter coefficient update apparatus, and computer program | |
US9544422B2 (en) | Acoustic echo suppression | |
CN108134863B (en) | Improved double-end detection device and detection method based on double statistics | |
GB2547063A (en) | Noise estimator | |
US10367949B2 (en) | Echo canceller device and voice telecommunications device | |
JP5422054B2 (en) | Time domain / frequency domain integrated echo cancellation apparatus and method | |
JP2001168775A (en) | Echo canceler | |
KR20150097686A (en) | Echo suppression | |
JP3236242B2 (en) | Echo canceller device | |
KR102194165B1 (en) | Echo removal | |
US20170310360A1 (en) | Echo removal device, echo removal method, and non-transitory storage medium | |
WO2019112467A1 (en) | Method and apparatus for acoustic echo cancellation | |
JP2001016142A (en) | Method and device for canceling echo and program recording medium | |
JP2017098861A (en) | Echo canceller and echo cancellation method | |
JP5293952B2 (en) | Signal processing method, signal processing apparatus, and signal processing program | |
JP3611493B2 (en) | Echo canceller device | |
JP5057109B2 (en) | Echo canceller | |
JP4475155B2 (en) | Echo canceller | |
JP6272590B2 (en) | Echo canceller device and communication device | |
JP6180689B1 (en) | Echo canceller apparatus, echo cancellation method, and echo cancellation program | |
JP4543896B2 (en) | Echo cancellation method, echo canceller, and telephone repeater | |
KR102218742B1 (en) | Adaptive delay diversity filter, echo cancel device using the same, and echo cancel method thereof | |
JP2002076999A (en) | Method and device for identifying system | |
JP2693183B2 (en) | Echo canceller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20170307 |