JP5510288B2 - 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ - Google Patents

適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ Download PDF

Info

Publication number
JP5510288B2
JP5510288B2 JP2010261417A JP2010261417A JP5510288B2 JP 5510288 B2 JP5510288 B2 JP 5510288B2 JP 2010261417 A JP2010261417 A JP 2010261417A JP 2010261417 A JP2010261417 A JP 2010261417A JP 5510288 B2 JP5510288 B2 JP 5510288B2
Authority
JP
Japan
Prior art keywords
adaptive filter
echo
order
signal
end speaker
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.)
Active
Application number
JP2010261417A
Other languages
English (en)
Other versions
JP2012114650A (ja
Inventor
弘一 木原
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2010261417A priority Critical patent/JP5510288B2/ja
Publication of JP2012114650A publication Critical patent/JP2012114650A/ja
Application granted granted Critical
Publication of JP5510288B2 publication Critical patent/JP5510288B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Description

本発明は適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラに関し、特に、回線エコーキャンセラ又は音響エコーキャンセラに内蔵されている適応フィルタの次数をエコー経路に適合するように動的に変更しようとしたものである。
エコーキャンセラでは、周知のように、適応フィルタがエコー信号を推定した推定エコー信号を形成する。このように用いられる適応フィルタの次数(タップ数)は、従来、例えば、以下のような方法1〜方法3によって定められていた。
<従来方法1>
従来方法1は、エコー経路のインパルス応答時間の最大値を前もって想定しておき、エコーキャンセラの適応フィルタ次数もこの最大値に設定しておく方法である。従来方法1では、上述した最大値に設定された適応フィルタ次数をその後に変更することはない。
<従来方法2>
従来方法2は、エコー経路のインパルス応答時間の最大値を前もって想定しておき、適応フィルタが収束するまで待ち、適応フィルタ収束後に、適応フィルタの係数の分布を解析し、適応制御区間を定める方法である(特許文献1、2参照)。具体的に説明すると、例えば、反射が2回発生するエコー経路を考えてみると、エコーキャンセラの適応フィルタ収束後には、適応フィルタの係数は、ほぼ反射が2回発生するエコー経路のインパルス応答と同様の分布を示すことになる。よって、適応フィルタの全長は、各回の反射によるエコー経路のインパルス応答区間を共に含む区間に相当する値に設定し直し、適応制御区間は、1回目の反射によるエコー経路のインパルス応答区間と2回目の反射によるエコー経路のインパルス応答区間の長い区間に相当する区間に限定すれば、最小のリソースで最大の効果を得ることが可能となる。
<従来方法3>
従来方法3では、まず、エコーキャンセラの適応フィルタの次数を適当な値に設定しておき、そして、エコーリターンロス改善量(ERLE:Echo Return Loss Enhancement)が前もって定めた閾値を下回るときは、適応フィルタ次数が足りないと判断し、適宜、適応フィルタの次数を増加させ、ERLEが閾値以上となるまでこの処理を繰り返す(特許文献3、4参照)。ERLEは、エコー信号が含まれている送信信号の2乗を、エコー成分を除去した後のエコー除去後信号の2乗で割り、このような除算結果の統計的平均として定義される値である。
特開2006−128758号公報 特開2009−17029号公報 特表2001−503217号公報 特開平11−122144号公報
従来方法1は、エコー経路のインパルス応答長が想定される最大値であることを前提とし、適応フィルタの次数もこれに対応させているので、実際のエコー経路のインパルス応答長が当該最大値よりも小さい場合、その差分に相当するエコーキャンセラのリソース、処理、ならびに、電力が無駄に消費されることとなり、さらに、適応フィルタの収束時間もこの差分に相当する分だけ長くなることになる。特に、エコーキャンセラを1つの装置内に多チャンネル分だけ実装するときは、装置の原価、大きさ、消費電力の上昇を招くことになる。
従来方法2は、適応フィルタの収束後では最適なリソース配分を実現しているが、収束が完了するまでの間は、従来方法1と同等のリソースを必要とする。これは、特に、エコーキャンセラを多チャンネル実装する装置において、一斉発呼数の能力を低下させることになる。一斉発呼数とは、同時に通信開始可能な通話数のことであり、音声通信装置の能力を表す重要な指標の一つとなっている。
従来方法3の課題は、エコーキャンセラのERLEの値に基づいて、適応フィルタ次数を変更することにある。
エコーが極めて微量しか発生しない状況下ではERLEはほぼ1となり、適応フィルタでエコーが全く消去されていないと判定され、エコーは発生していないにもかかわらず、適応フィルタの次数を増加し続けることになる。特に、エコーキャンセラの数値演算に固定小数点を採用している場合にこの問題は発生し易い。
エコーが極めて微量しか発生しない状況の例として、回線エコーキャンセラの場合では、2線/4線変換素子を使用しない4線アナログ電話又はISDN回線のデジタル電話を用いる場合がこれに相当し、音響エコーキャンセラの場合では、個別のスピーカを使用せずに、受話器又はヘッドセット(のスピーカ)を用いる場合がこれに相当する。
そのため、エコーキャンセラに内蔵されている適応フィルタの次数をエコー経路に適合するように動的にしかも追従性良く変更できる適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラが望まれている。
第1の本発明は、次数を変更可能な適応フィルタによって推定エコー信号を形成するエコーキャンセラ本体に対し、上記適応フィルタの次数を指示する適応フィルタ次数制御装置において、(1)遠端話者が話中状態、近端話者が受聴状態にあるシングルトーク状態のシングルトーク検出手段と、(2)シングルトーク状態中に、遠端話者からの受信信号の信号レベルと、当該受信信号が近端話者側に存在するエコー経路を介して遠端話者に戻るエコー信号の信号レベルを測定し、エコーリターンロスを検出するエコーリターンロス検出手段と、(3)上記エコーリターンロスが既定値に到達するまで、上記適応フィルタの次数を初期値から徐々に大きくしていって、上記適応フィルタの次数を定める適応フィルタ次数探索手段とを有することを特徴とする。
第2の本発明は、次数を変更可能な適応フィルタによって推定エコー信号を形成するエコーキャンセラ本体に対し、上記適応フィルタの次数を指示する適応フィルタ次数制御プログラムであって、コンピュータを、(1)遠端話者が話中状態、近端話者が受聴状態にあるシングルトーク状態のシングルトーク検出手段と、(2)シングルトーク状態中に、遠端話者からの受信信号の信号レベルと、当該受信信号が近端話者側に存在するエコー経路を介して遠端話者に戻るエコー信号の信号レベルを測定し、エコーリターンロスを検出するエコーリターンロス検出手段と、(3)上記エコーリターンロスが既定値に到達するまで、上記適応フィルタの次数を初期値から徐々に大きくしていって、上記適応フィルタの次数を定める適応フィルタ次数探索手段として機能させることを特徴とする。
第3の本発明のエコーキャンセラは、次数を変更可能な適応フィルタによって推定エコー信号を形成するエコーキャンセラ本体と、上記エコーキャンセラ本体に対し、上記適応フィルタの次数を指示する第1の本発明の適応フィルタ次数制御装置とを有することを特徴とする。
本発明によれば、エコーリターンロスを指標として、適応フィルタの次数を探索するようにしたので、適応フィルタの次数をエコー経路に適合するように動的にしかも追従性良く変更できる適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラを提供できる。
エコー発生箇所が1か所の場合におけるエコー経路のインパルス応答h(n)の具体例を示す説明図である。 エコー発生箇所が2か所の場合におけるエコー経路のインパルス応答h(n)の具体例を示す説明図である。 エコーキャンセラ周辺の一般的な構成を模式的に示すブロック図である。 第1の実施形態に係るエコーキャンセラの構成を示すブロック図である。 第1の実施形態に係る適応フィルタ次数制御装置の詳細構成を示すブロック図である。 第1の実施形態におけるシングトーク検出器がシングルトーク状態と判断する3つの条件式による受信信号及び送信信号の領域を示すグラフである。 第1の実施形態における適応フィルタ次数決定部の処理を示すフローチャートである。 第2の実施形態に係るエコーキャンセラの構成を示すブロック図である。 第2の実施形態における適応フィルタ次数決定部の処理を示すフローチャートである。
(A)各実施形態に共通する前提
本発明による適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラの各実施形態を説明する前に、各実施形態に共通する前提を説明する。
(A−1)デジタル信号処理
各実施形態は、連続値系であるアナログ信号のエコーという物理現象に係るものではあるが、今日ではアナログ信号処理よりもコスト/パフォーマンスに圧倒的に優れるデジタル信号処理が普及しており、各実施形態もデジタル信号処理による実現を想定している。以下の説明では、アナログ信号の現象や処理であったとしても、離散値系で説明していることを前もって断っておく。
(A−2)回線エコーキャンセラ
各実施形態の技術思想は、回線エコーキャンセラにも音響エコーキャンセラにも適用し得るものである。以下では、各実施形態が適用可能な回線エコーキャンセラと音響エコーキャンセラを順に確認しておく。
アナログ電話機を収容する企業の構内私設交換機や通信事業者の加入者交換機には、2線/4線変換素子と呼ばれるアナログ部品が搭載されており、当該部品において、インピーダンス不整合により、通信相手(遠端話者)から受信した音声信号の一部が当該通信相手(近端話者)の送信信号にエコー信号として漏れ込む。この現象は、通話している2者間の伝搬遅延時間が小さいときは、エコー信号が瞬時に話者に戻ってくるため遠端話者には側音(モニタ)として聞こえ通話品質が劣化することはない。しかしながら、長距離通話のように伝搬遅延時間が増大する場合、もしくは、近距離通話であってもVoIP(Voice over Internet Protocol)のようにパケット化通信のために伝搬遅延時間が増大する場合には、遠端話者は遅れて戻ってくる自身の声のエコーのために煩わしく感じるようになり、通話品質は劣化する。回線エコーキャンセラは、この漏れ込んだエコー信号を除去し、劣化した通話品質を改善することを目的とした装置である。
なお、遠端話者の音声信号が2線/4線変換素子を介してエコー信号となって当該遠端話者に戻る通信路は、エコー経路と呼ばれている。音声通信において、エコー経路は1つとは限らず、複数箇所に存在し得る。例えば、企業網では、公専公(公衆電話網−専用線−公衆電話網)接続のような多段リンクを介して音声通信する場合があり、このような状況下ではアナログ回線が複数箇所に現れることがあり、2線/4線変換素子も複数箇所に現れるので、複数のエコー経路が同時に存在することになる。このような場合、回線エコーキャンセラは多重反射のことを考慮して設計する必要があり、本発明の各実施形態は多重反射に対応し得るものとなっている。
(A−3)音響エコーキャンセラ
音響エコーキャンセラは、スピーカとマイクを使用するハンズフリーホンや会議装置において、通信相手(遠端話者)から受信した音声信号がスピーカから音波として放射され、当該音波がマイクに回り込むエコー信号(音響エコー)となって遠端話者に戻り、通話品質が劣化することを抑制する装置である。
音響エコーの場合も、音波がスピーカからマイクまで回り込むエコー経路は1つとは限らず、通常は、複数のエコー経路が同時に存在する。例えば、音波がスピーカからマイクまで空間を介して直接回り込む経路と、室内の壁、床、天井、設置物を1回以上反射して回り込む経路がある。さらに、通信中における、人や物体の移動若しくはドアの開閉などにより、動的にエコー経路が変動する場合もある。そのため、音響エコーキャンセラも、これら多重反射のことを考慮して設計する必要があり、本発明の各実施形態は多重反射に対応し得るものとなっている。
(A−4)エコー経路の表現
各実施形態が前提としている、エコーを生成するエコー経路の数学的な表現は、以下の通りである。
エコーを生成するエコー経路を線形回路と見なすとき、エコー経路は、有限インパルス応答(FIR:Finit Impulse Response)フィルタH(z)で表現することが可能である。ここで、FIRフィルタH(z)はz関数であり、1次のFIRフィルタで構成されると想定すると、(1)式で表現することができる。(2)式に示すように、(1)式のタップ係数h(k)は、H(z)を逆z変換して得られる時間領域のインパルス応答h(n)でもある。(2)式において、jは純虚数であり、Cはz平面の原点を内包する周回積分路である。
Figure 0005510288
一般に、エコー経路は、周波数領域では(1)式の伝達関数H(z)で表現され、時間領域では(2)式のインパルス応答h(n)で表現される。
図1は、エコー経路のインパルス応答h(n)の具体例を示す説明図である。
図1において、Ntotalはインパルス応答h(n)の全体の長さを表し、Nはエコーキャンセラとエコー経路の間の往復伝搬遅延時間(≒スピーカから反射物を経てマイクへ至る時間)を表し、Nhybは、エコー経路の中に存在してエコーを発生させる素子(例えば、2線/4線変換素子)のインパルス応答時間を表している。エコーを発生させる素子が1個であれば、Ntotal=N+Nhybである。
図1に示したエコー経路のインパルス応答は、エコーの発生が1力所の場合であった。企業網などでは、公専公接続などの多段リンク構成により、アナログ回線が複数箇所に存在する場合、エコー経路も複数箇所に存在し、話者には多重反射されたエコーが戻ることとなる。図2は、エコー経路が2カ所に存在するときのインパルス応答の例を示している。図2において、Ntotalはインパルス応答h(n)の全体の長さを表し、Ni(iは1又は2)はそれぞれ、エコーキャンセラと第iのエコー経路の間の往復伝搬遅延時間を表し、Nhybiは、第iのエコー経路の中に存在してエコーを発生させる素子のインパルス応答時間を表している。ここで、Ntotal=N2+Nhyb2である。
(A−5)エコーキャンセラの基本原理
図3は、エコーキャンセラ周辺の一般的な構成を模式的に示すブロック図である。
受信信号x(n)は、図3に記載されていない遠端話者から受信した信号であり、これは、推定エコー信号形成部3−1とエコー経路3−2に供給される。受信信号x(n)は、エコー経路3−2を介してエコー信号y(n)となる。エコー信号y(n)は、加算器3−3において近端話者信号d(n)と加算され、送信信号d(n)としてエコーキャンセラに提供される。通常、エコー経路3−2と加算器3−3は、2線/4線変換素子が有する機能であるが、図3では説明の便宜上、分離して描かれている。
受信信号x(n)は、推定エコー信号形成部3−1を介してエコー信号y(n)の推定値である推定エコー信号^y(n)に変換される。減算器3−4において、送信信号d(n)から推定エコー信号^y(n)が減算されてエコー成分が除去され、除去し切れずに残っているエコー成分を含む送信信号であるエコー除去後信号e(n)が算出される。減算器3−4及び推定エコー信号形成部3−1によってエコーキャンセラが構成されている。エコー除去後信号e(n)は、遠端話者に送出されると同時に、推定エコー信号形成部3−1にフィードバックされている。推定エコー信号形成部3−1は、推定エコー信号^y(n)を算出する適応フィルタを内蔵している。
次に、適応フィルタについて説明する。適応フィルタに採用されている典型的なアルゴリズムは学習同定法である。以下の(3)式〜(5)式は、学習同定法を数式で示したものである。
Figure 0005510288
(3)式〜(5)式において、Nは適応フィルタの次数、^h(k)は時刻nにおける適応フィルタのk番目のタップ係数、μは0<μ≦1を満たす定数である。
なお、エコー経路のインパルス応答をh(k)とするとき、^h(k)はh(k)に対する推定値である。つまり、推定エコー信号形成部3−1は、エコー信号y(n)を推定する以前に、エコー経路のインパルス応答h(k)を推定している。
図3において、送信信号d(n)はエコー信号y(n)と近端話者信号w(n)の和となっている(d(n)=y(n)+w(n))。推定エコー信号形成部3−1は、エコー信号y(n)を推定することは可能であるが、近端話者信号w(n)は当然のことながら推定不可能であり、近端話者信号w(n)は適応フィルタから見ると、外乱雑音として振る舞うこととなる。近端話者が喋っていないときでも近端話者の背景雑音は外乱雑音として振る舞うことになる。従って、(5)式の適応フィルタの係数更新は、遠端話者が喋り近端話者が黙っているとき、換言すると、送信信号d(n)が遠端話者信号のエコー信号y(n)でほぼ占有されているときに限定して実施されるべきである。なお、この遠端話者が喋り近端話者が黙っている状況は、シングルトークと呼ばれている。
(A−6)各実施形態(従って本発明)の動機付け
(3)式で現れる適応フィルタの次数Nは、実際のエコー経路をFIRフィルタで表現したときの当該FIRフィルタ次数をMとすると、M以上でしかも極力Mに近い値であることが、エコーキャンセラのエコー消去量と追従速度の観点から、また、処理量、装置実装規模、コスト、消費電力などの観点から望ましい。
回線エコーキャンセラの観点からは、公専公接続のような多段リンクによりエコーの各重反射が発生したり、通信中の呼の転送などによりエコー経路が変動したりしても追従可能であることが望ましい。
音響エコーキャンセラの観点からは、様々な音場環境に追従でき、かつ、通信中の動的な音場環境変化にも追従可能であることが望ましい。
以上のような要望を満足させることを動機として、各実施形態を考えるに至った。
(A−7)各実施形態の概要
適応フィルタの次数が充足しているか、それとも不足しているかを判断するには、シングルトーク中(遠端話者:話中状態、近端話者:受聴状態)に、遠端話者から受信した信号レベルと、当該受信信号が近端話者側に存在するエコー経路を介して遠端話者に戻るエコー信号レベルを測定し、これらから、エコーリターンロス(=エコー信号レベル/受信信号レベル)を算出し、当該ロスが規定値以上のときは適応フィルタの次数は充足していると判断でき、逆に、規定値未満のときは適応フィルタの次数は不足していると判断できる。
従って、シングルトーク状態の正確な検出、適応フィルタ次数の充足/不足の判定契機、適応フィルタ次数の増加方法がポイントとなる。このようなポイントを適切に実現した実施形態として、第1の実施形態を説明する。
また、上述したポイントとなる機能に対するオプショナルな機能として、適応フィルタ次数が最適値を超過したときに最適化する機能があり、この機能を実現した実施形態として、第1の実施形態を説明する。
(B)第1の実施形態
以下、本発明による適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラの第1の実施形態を、図面を参照しながら説明する。
(B−1)第1の実施形態の構成
図4は、第1の実施形態に係るエコーキャンセラの構成を示すブロック図である。第1の実施形態に係るエコーキャンセラは、ハードウェアで構成することも、プログラムとそれを実行するCPUとによってソフトウェア的に構成することも可能であるが、いずれの場合にせよ、図4の機能ブロック図で表すことができる。
図4において、第1の実施形態に係るエコーキャンセラ4は、エコーキャンセラ本体4−1と適応フィルタ次数制御装置4−2とを有する。
エコーキャンセラ本体4−1は、上述した図3における推定エコー信号形成部3−1及び減算器3−4が相当するものであり、推定エコー信号を形成する中心部材である適応フィルタ4−3を内蔵している。
エコーキャンセラ本体4−1には、対向する遠端話者からの受信信号x(n)、近端話者から遠端話者方向への送信信号d(n)が入力されると共に、適応フィルタ次数制御装置4−2が出力した適応フィルタ4−3の次数N及びシングルトーク検出信号SGL_detが与えられるようになされている。
エコーキャンセラ本体4−1は、受信信号x(n)を適応フィルタ4−3に入力してエコー信号の推定値である推定エコー信号^y(n)(図3参照)を形成し、送信信号d(n)から推定エコー信号^y(n)を減算してエコー成分を除去し、除去し切れずに残っているエコー成分を含む送信信号であるエコー除去後信号e(n)を得る。エコー除去後信号e(n)は、遠端話者側に送信されるだけでなく、適応フィルタ次数制御装置4−2に与えられる。適応フィルタ4−3が推定エコー信号^y(n)を形成するために適用する次数は、適応フィルタ次数制御装置4−2から指示された適応フィルタ次数Nに従う。また、適応フィルタ4−3の係数更新は、適応制御フィルタ次数制御装置4−2から通知されるシングルトーク検出信号SGL_detがアクティブ(有意)であるときのみ実施するようになされている。
適応フィルタ次数制御装置4−2には、対向する遠端話者からの受信信号x(n)、近端話者から遠端話者方向への送信信号d(n)、エコーキャンセラ本体4−1から出力されたエコー除去後信号e(n)が与えられるようになされている。
適応フィルタ次数制御装置4−2は、受信信号x(n)、送信信号d(n)、エコー除去後信号e(n)に基づいて、シングルトーク状態を検出し、シングルトーク検出結果SGL_detをエコーキャンセラ本体4−1内の適応フィルタ4−3に通知すると共に、適応フィルタ4−3の現在の次数の充足/不足を判定し、その判定に応じて適宜算出した適応フィルタ4−3の新たな次数Nを適応フィルタ4−3に指示する。
ここで、適応フィルタ4−3は、以下の要求条件R1〜R6を満たしているものである。なお、適応フィルタ4−3のアルゴリズムとして良く適用されている上述した学習同定法アルゴリズムは、下記の要求条件を満たすことが可能なものである。
(R1)適応フィルタのタイプは、(3)式に示す有限インパルス応答型であること
(R2)近端話者側に配置されているエコー経路のインパルス応答を推定可能であること
(R3)推定したエコー経路のインパル応答と、遠端からの受信信号とから、近端話者側からの送信信号に含まれているエコー信号を推定可能であること((3)式参照)
(R4)適応フィルタの次数は、通信中に指定された値に変更可能であること((3)式参照)
(R5)遠端話者が話中かつ近端話者が受聴となっているシングルトーク状態であることを外部から通知されたときにのみ、適応フィルタ係数の更新を実施すること((5)式参照)
(R6)以上の機能を使用して、近端話者からの送信信号に含まれている遠端話者信号のエコー信号を除去することが可能であること((4)式参照)
ここで、要求条件R4は、上述した(3)式における総和Σの範囲を変更することで容易に応じられる。要求条件R5は、上述した(5)式における時刻nから時刻n+1への移行を、シングルトーク状態中に限り実施させることで容易に応じられる。
図5は、図4に示す適応フィルタ次数制御装置4−2の内部の詳細構成を示す機能ブロック図である。なお、上述したように、適応フィルタ次数制御装置4−2を、プログラムとそのプログラムを実行するCPUとで実現するようにしても良い。
図5において、適応フィルタ次数制御装置4−2は、受信信号絶対値化器(受信信号ABS)5−1、送信信号絶対値化器(送信信号ABS)5−2、除去後信号絶対値化器(除去後信号ABS)5−3、受信信号短時間平均値化器(受信信号LPF_S)5−4、受信信号中時間平均値化器(受信信号LPF_M)5−5、受信信号長時間平均値化器(受信信号LPF_L)5−6、送信信号短時間平均値化器(送信信号LPF_S)5−7、送信信号長時間平均値化器(送信信号LPF_L)5−8、除去後信号中時間平均値化器(除去後信号LPF_M)5−9、シングルトーク検出器5−10及び適応フィルタ次数決定部5−11を有する。
受信信号絶対値化器5−1、送信信号絶対値化器5−2及び除去後信号絶対値化器5−3にはそれぞれ、対応する受信信号x(n)、送信信号d(n)、エコー除去後信号e(n)が与えられるようになっている。
受信信号絶対値化器5−1は、受信信号x(n)の絶対値を取り、その絶対値出力を、受信信号短時間平均値化器5−4、受信信号中時間平均値化器5−5及び受信信号長時間平均値化器5−6に与えるものである。
送信信号絶対値化器5−2は、送信信号d(n)の絶対値を取り、その絶対値出力を、送信信号短時間平均値化器5−7及び送信信号長時間平均値化器5−8に与えるものである。
除去後信号絶対値化器5−3は、エコー除去後信号e(n)の絶対値を取り、その絶対値出力を、除去後信号中時間平均値化器5−9に与えるものである。
図5では、受信信号x(n)、送信信号d(n)、エコー除去後信号e(n)の信号レベルを捉えるために、それぞれを絶対値化するものを示しているが、2乗するようにしても良い。
受信信号短時間平均値化器5−4は、例えば、低域濾波器でなり、受信信号絶対値化器5−1からの出力を平滑化し、受信信号x(n)の短時間平均植xsを算出し、得られた短時間平均値xsをシングルトーク検出器5−10に与えるものである。ここで、平均に供する短時間は、適応フィルタ次数Nに相当する時間であり、そのため、適応フィルタ次数決定部5−11から出力された適応フィルタ次数Nが受信信号短時間平均値化器5−4に与えられるようになされている。
受信信号中時間平均値化器5−5は、例えば、低域濾波器でなり、受信信号絶対値化器5−1からの出力を平滑化し、受信信号x(n)の中時間平均植xmを算出し、得られた中時間平均値xmを適応フィルタ次数決定部5−11に与えるものである。ここで、平均に供する中時間は、適応フィルタ次数Nの初期値NINIに対応して適応フィルタ4−3の収束に要する時間のことであり、言い換えると、受信信号x(n)の信号レベルが極力正確に推定エコー信号^y(n)(図3参照)に反映されるようになる適応フィルタ4−3の収束にかかる時間のことである。この時間は、固定時間であって、適応フィルタ次数Nの初期値NINIを考慮して、シミュレーションなどによって予め定めておく。受信信号中時間平均値化器5−5には、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、受信信号中時間平均値化器5−5は、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力xmは直前の値を保持する。
受信信号長時間平均値化器5−6は、例えば、低域濾波器でなり、受信信号絶対値化器5−1からの出力を平滑化し、受信信号x(n)の長時間平均植xlを算出し、得られた長時間平均値xlをシングルトーク検出器5−10に与えるものである。ここで、平均に供する長時間は、エコー経路の正確な減衰率(=シングルトーク状態における(送信信号の平均レベル)/(受信信号の平均レベル))を得られる時間である。この時間は、固定時間であって、シミュレーションなどに基づいて予め定めておく。受信信号長時間平均値化器5−6には、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、受信信号長時間平均値化器5−6は、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力xlは直前の値を保持する。
送信信号短時間平均値化器5−7は、例えば、低域濾波器でなり、送信信号絶対値化器5−2からの出力を平滑化し、送信信号d(n)の短時間平均植dsを算出し、得られた短時間平均値dsをシングルトーク検出器5−10に与えるものである。平均に供する短時間は、上述した受信信号短時間平均値化器5−4における短時間と同一である。
送信信号長時間平均値化器5−8は、例えば、低域濾波器でなり、送信信号絶対値化器5−2からの出力を平滑化し、送信信号d(n)の長時間平均植dlを算出し、得られた長時間平均値dlをシングルトーク検出器5−10に与えるものである。平均に供する長時間は、上述した受信信号長時間平均値化器5−6における長時間と同一である。送信信号長時間平均値化器5−8には、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、送信信号長時間平均値化器5−8は、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力dlは直前の値を保持する。
除去後信号中時間平均値化器5−9は、例えば、低域濾波器でなり、除去後信号絶対値化器5−3からの出力を平滑化し、除去後信号e(n)の中時間平均植emを算出し、得られた中時間平均値emを適応フィルタ次数決定部5−11に与えるものである。平均に供する中時間は、上述した受信信号長時間平均値化器5−6における中時間と同一である。除去後信号中時間平均値化器5−9には、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、除去後信号中時間平均値化器5−9は、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力emは直前の値を保持する。
以上では、各平均値化器5−4〜5−9を低域濾波器で構成した場合を説明したが、他の構成によって平均値化器を構成するようにしても良い。例えば、所定期間のサンプル値をバッファリングするメモリと、所定期間のサンプル値の単純平均を算出する平均算出器で平均値化器を構成するようにしても良い。但し、以下の動作説明では、低域濾波器で構成されている場合を説明している。
シングルトーク検出器5−10には、上述のように、受信信号x(n)の短時間平均値xsと長時間平均値xl、並びに、送信信号d(n)の短時間平均値dsと長時間平均値dlが与えられる。シングルトーク検出器5−10は、これらの短時間平均値xs、長時間平均値xl、短時間平均値ds及び長時間平均値dlに基づいて、遠端話者が話中で近端話者が受聴となっているシングルトーク状態を検出し、検出結果SGL_detを、適応フィルタ4−3(図4参照)、受信信号中時間平均値化器5−5、受信信号長時間平均値化器5−6、送信信号長時間平均値化器5−8及び除去後信号中時間平均値化器5−9に出力するものである。シングルトーク検出器5−10の検出方法の詳細については、動作の項で明らかにする。
適応フィルタ次数決定部5−11には、上述のように、受信信号x(n)の中時間平均値xmとエコー除去後信号e(n)の中時間平均値emが与えられる。適応フィルタ次数決定部5−11は、これらの中時間平均値xmと中時間平均値emに基づいてエコーリターンロス(ERL:Echo Return Loss)を検出し、この検出値ERLに基づいて適応フィルタ4−3(図4参照)で採用すべき次数Nを決定し、決定した適応フィルタ次数Nを、適応フィルタ4−3、受信信号短時間平均値化器5−4及び送信信号短時間平均値化器5−7に出力するものである。適応フィルタ次数決定部5−11の検出方法の詳細については、動作の項で明らかにする。
(B−2)第1の実施形態の動作
次に、第1の実施形態のエコーキャンセラ4の動作を、適応フィルタ次数制御装置4−2の動作を中心に説明する。
エコーキャンセラ本体4−1が実行するエコー信号を除去する動作自体は、既存のエコーキャンセラと同様である。但し、適応フィルタ4−3として、上述した要求条件R1〜R6を満足するものを適用することを要し、適応フィルタ4−3が、適応フィルタ次数制御装置4−2から変更された適応フィルタ次数Nが与えられたときにはその新たな次数Nを適用して動作し、また、適応フィルタ次数制御装置4−2から出力されたシングルトーク検出結果SGL_detがアクティブのときだけフィルタ係数の更新動作を実行する。
ここで、エコーキャンセラ本体4−1がいわゆるダブルトーク検出器を内蔵し、適応フィルタ次数制御装置4−2から出力されたシングルトーク検出結果SGL_detがアクティブであってダブルトーク検出器の検出結果がシングルトーク以外の場合には、適応フィルタ次数制御装置4−2から出力されたシングルトーク検出結果SGL_detを優先させることとなっている。
次に、適応フィルタ次数制御装置4−2における動作について説明する。
受信信号x(n)は、受信信号絶対値化器5−1によって絶対値に変換された後、受信信号短時間平均値化器5−4、受信信号中時間平均値化器5−5及び受信信号長時間平均値化器5−6に与えられ、各平均値化器5−3、5−4、5−5のそれぞれによって処理されることにより、受信信号レベルの短時間平均値xs、中時間平均値xm及び長時間平均値xlが得られる。受信信号レベルの短時間平均値xs及び長時間平均値xlは、シングルトーク検出器5−10に与えられ、受信信号レベルの中時間平均値xmは、適応フィルタ次数決定部5−11に与えられる。
ここで、受信信号中時間平均値化器5−5及び受信信号長時間平均値化器5−6には、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、受信信号中時間平均値化器5−5及び受信信号長時間平均値化器5−6はそれぞれ、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力xs、xlは直前の値を保持する。
受信信号短時間平均値化器5−4に係る短時間とは、適応フィルタ次数Nに相当する時間のことである。例えば、音声信号の標本化周波数を8kHz(標本化周期は1/8kHz)、適応フィルタ次数Nを256とするとき、256×8kHz=32msである。従って、受信信号短時間平均値化器(低域濾波器)5−4のフィルタ係数は、時間32msの平均を算出するように選定すれば良い。この第1の実施形態の場合、適応フィルタ次数Nは変動するため、適応フィルタ次数Nと受信信号短時間平均値化器5−4のフィルタ係数の対応表を前もって作成しておき、受信信号短時間平均値化器5−4は、その時点の適応フィルタ次数Nをキーとして対応表からフィルタ係数を取出して設定することにより、適応フィルタ次数Nに相当した短時間平均値xsを得ることができる。なお、受信信号短時間平均値化器5−4と送信信号短時間平均値化器5−7は同様な機能を担っているので、上述した対応表を共用することができる。
受信信号中時間平均値化器5−5に係る中時間とは、適応フィルタ次数Nの初期値NINIが適応フィルタ4−3に設定されて収束動作を開始した後、適応フィルタ4−3が収束し、受信信号x(n)の信号レベルが極力正確に推定エコー信号^y(n)に反映されるようになるまでの時間のことである。従って、受信信号中時間平均値化器(低域濾波器)5−5のフィルタ係数は、この中時間の平均を算出するように選定すれば良い。平均に供する中時間は固定時間であるので、受信信号中時間平均値化器5−5のフィルタ係数が変更されることはない。
受信信号長時間平均値化器5−6に係る長時間とは、エコー経路の正確な減衰率を得られる時間であり、例えば、1秒程度を適用できる。従って、受信信号長時間平均値化器(低域濾波器)5−6のフィルタ係数は、この長時間の平均を算出するように選定すれば良い。平均に供する長時間は固定時間であるので、受信信号長時間平均値化器5−6のフィルタ係数が変更されることはない。
送信信号d(n)は、送信信号絶対値化器5−2によって絶対値に変換された後、送信信号短時間平均値化器5−7及び送信信号長時間平均値化器5−8に与えられ、各平均値化器5−7、5−8のそれぞれによって処理されることにより、送信信号レベルの短時間平均値ds及び長時間平均値dlが得られ、シングルトーク検出器5−10に与えられる。
ここで、送信信号長時間平均値化器5−8にも、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、送信信号長時間平均値化器5−8は、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力dlは直前の値を保持する。
送信信号短時間平均値化器5−7に係る平均化時間は、受信信号短時間平均値化器5−4に係る平均化時間と同一であり、送信信号長時間平均値化器5−8に係る平均化時間は、受信信号短時間平均値化器5−6に係る平均化時間と同一である。
エコー除去後信号e(n)は、除去後信号絶対値化器5−3によって絶対値に変換された後、除去後信号中時間平均値化器5−9に与えられ、この平均値化器5−9によって処理されることにより、エコー除去後信号レベルの中時間平均値emが得られ、適応フィルタ次数決定部5−11に与えられる。
ここで、除去後信号中時間平均値化器5−9にも、シングルトーク検出器5−10の検出結果SGL_detが与えられるようになっており、除去後信号中時間平均値化器5−9は、シングルトーク検出結果SGL_detがアクティブのときに処理を実施し、シングルトーク検出SGL_detがインアクティブのときに処理を停止し、その出力emは直前の値を保持する。
除去後信号中時間平均値化器5−9に係る平均化時間は、受信信号中時間平均値化器5−5に係る平均化時間と同一である。
次に、シングルトーク検出器5−10について説明する。シングルトーク状態とは、上述したように、遠端話者のみが話中で、近端話者は受聴になっている状態のことを指す。
第1の実施形態のシングルトーク検出器5−10は、以下の(6)式〜(8)式に示す3つの条件が全て成立したときに、シングルトーク状態であると判定する。
xs>xs_th …(6)
0.5・xs>ds …(7)
α・xs・dl>ds・xl
但し、αはα>1を満たす定数である …(8)
(6)式の条件は、受信信号x(n)の短時間平均値xsが、前もって規定した閾値xs_thを超過するときに条件が成立する。閾値xs_thは、(6)式の条件が成立したときに遠端話者が話中であると判断できる値に選定されている。
(7)式を(9)式のように変形すると、(7)式の条件が意味するところを理解し易くなる。
0.5>ds/xs …(9)
(9)式は、ITU−T勧告G.168で規定されているエコーキャンセラの外的動作条件になっており、この外的動作条件は、エコー経路の減衰率が0.5未満であることを要求している。一般に、電話回線のエコー経路の減衰率は0.5よりも低く設定されている。なお、エコー経路の減衰率が0.5未満の場合でも、近端話者が話中状態のときは、送信信号d(n)の短時間平均値dsに近端話者の音声が重量されて(9)式が成立しなくなる可能性があるが、その際は、シングルトーク状態ではないと判断され、適応フィルタ4−3の係数更新が停止され、フィルタ係数の発散が防止される。(7)式の条件は、一面で(条件不成立)、近端話者の話中状態を検出する条件と見なすこともできる。しかしながら、近端話者の話中検出は、(8)式の条件の方がより感度に優れている。
(8)式を(10)式のように変形すると、(8)式の条件が意味するところを理解し易くなる。
α・(dl/xl)>ds/xs …(10)
(10)式において、dl/xlとds/xsは共に、エコー経路の減衰率を表しているが、dl/xlは、長時間平均で、しかも、シングルトーク状態中にのみ観測した値になっているのに対して、ds/xsは、短時間平均で常時測定した値になっている。従って、エコー経路の長時間減衰率dl/xlはエコー経路の正確な減衰率を示している。これに対して、エコー経路の短時間減衰率ds/xsは、近端話者が喋りだすと長時間減衰率dl/xlよりも大きくなると共に、短時間平均なのでエコー経路の減衰率変動に対する追従速度が速いものである。(8)式の条件の長所は、信号レベルを絶対レベルと判定するのではなく、dl/xlとds/xsとを相対比較していることである。これは、受信信号x(n)の信号レベルのダイナミックレンジが広いときでも正確にシングルトーク状態を判定できることを意味している。但し、受信信号x(n)の信号レベルが小さくなるほど、(8)式の条件を単体で見るとその信頼性は劣化するが、(6)式の条件により受信信号x(n)に一定以上のレベルがあることが保証されているので、(8)式の条件の信頼性は十分である。
以上のことは、(10)式の両辺の対数を取って得た(11)式のように変形することで明らかとなる。(11)式はさらに(12)式のように変形することができる。
20log10α+20log10(dl/xl)
>20log10(ds/xs) …(11)
20log10xs+20log10α+20log10(dl/xl)
>20log10ds …(12)
ここで、(11)式において、短時間平均であるds/xsの観点からは、dl/xlは定数と見なすことが可能である。(6)式、(7)式、(12)式を図6のように図示することで、シングルトークの動作領域が明確化される。図6は両対数グラフである。縦軸は20log10dsであり、すなわち、送信信号d(n)の短時間平均値dsのdBm表示である。横軸は20log10xsであり、すなわち、受信信号x(n)の短時間平均値xsのdBm表示である。
(6)式の条件は横軸と20log10(xs_th)で交わる垂線であり、(6)式の条件だけから見れば、この垂線の右側がシングルトーク領域である。(7)式の条件は、縦軸と−6dBmで交わる45度の傾きを有する直線となり、(7)式の条件だけから見れば、この直線の下側がシングルトーク領域である。(12)式の条件は、縦軸と20log10(dl/xl)+20log10αで交わる45度の傾きを有する直線となり、(12)式の条件だけから見れば、この直線の下側がシングルトーク領域である。以上、3つの条件式が重なる領域がシングルトークの動作領域であり、ハッチで示している。
なお、(12)式の条件に係る45度の傾きを有する直線が、(7)式の条件に係る45度の傾きを有する直線に一致するか下方に存在することを保証するように、受信信号x(n)の長時間平均値xlと送信信号d(n)の長時間平均値dlの初期値が、0.5・xl=dlを満足するように、受信信号長時間平均値化器(低域濾波器)5−6と送信信号長時間平均値化器(低域濾波器)5−8とを初期化しておくことが好ましい。
(6)式〜(8)式の条件が全て成立するときにのみ、シングルトーク検出器5−10は、シングルトーク検出結果SGL_detをアクティブにする。
次に、適応フィルタ次数決定部5−11について説明する。
適応フィルタ次数決定部5−11は、受信信号x(n)の中時間平均値xmとエコー除去後信号e(n)の中時間平均値emとから、エコー信号の減衰率、すなわち、エコーリターンロスERL=em/xmを算出し、エコー信号の減衰率が既定値に到達していないときには適応フィルタ4−3の次数が不足していると判断して、適応フィルタ4−3の次数Nを増加させるものである。
エコーリターンロスERL=em/xmを検出するに際し、適応フィルタ4−3の収束過程はシングルトーク状態中にのみ進行すること、換言すると、シングルトーク状態中にのみ適応フィルタの係数更新を繰り返しながら適応フィルタ4−3のフィルタ係数を収束させていくことに留意する。例えば、適応フィルタ4−3の次数の初期値をN1とし、エコー経路をFIRフィルタに仮想的に置換したときのFIRフィルタ次数がN1以下であるとき、適応フィルタ4−3の収束に要する係数更新回数をM1とする。適応フィルタ次数決定部5−11は、シングルトーク検出器5−10からシングルトーク検出結果SGL−detの供給を受けており、シングルトーク検出結果SGL−detがアクティブのときだけ適応フィルタ4−3はフィルタ係数の更新を実施するので、適応フィルタ次数決定部5−11はシングルトーク検出結果SGL_detがアクティブとなっているときに標本化クロックに同期してカウントアップすることで係数更新回数を知ることができる。従って、適応フィルタ次数決定部5−11は、動作開始後、係数更新回数がM1に到達した時点で、エコーリターンロスERL=em/xmをチェックし、既定値に達していないときは、適応フィルタ次数N(=N1)をN2に変更する。同様に、適応フィルタ次数N2のときに収束に要する係数更新回数をM2とする。適応フィルタ次数NをN2に変更後、係数更新回数がM2に到達した段階でエコーリターンロスERL=em/xmをチェックし、既定値に達していないときは、適応フィルタ次数N(=N2)をN3に変更する。以下、同様とする。ここで、適応フィルタ次数N1、N2、…と収束に要する係数更新回数M1、M2、…の対応表は、前もって用意しておく。
図7は、以上の適応フィルタ次数決定部5−11の処理を実現する際のフローチャートを示している。
適応フィルタ次数決定部5−11は、図7に示す動作を開始すると、まず、適応フィルタ次数と収束に要する係数更新回数との対応表におけるインデックスiを初期値「1」にし、また、適応フィルタ次数Nも初期値Niに設定し、さらに、係数更新カウンタの値UPDCNTも初期値「0」にする(ステップ7−1)。
以上のような初期設定が終了すると、適応フィルタ次数決定部5−11は、標本化クロックによる割込みを待ち受ける(ステップ7−2)。割込みが発生すると、適応フィルタ次数決定部5−11は、係数更新カウンタ値UPDCNTを1インクリメントした後(ステップ7−3)、新たな係数更新カウンタ値UPDCNTが適応フィルタ次数Nを見直す値Miに到達したか否かを判別する(ステップ7−4)。新たな係数更新カウンタ値UPDCNTが適応フィルタ次数Nを見直す値Miに到達していない場合には、適応フィルタ次数決定部5−11は、標本化クロックによる割込みを待ち受けるステップ7−2に戻る。
新たな係数更新カウンタ値UPDCNTが適応フィルタ次数Nを見直す値Miに到達すると、適応フィルタ次数決定部5−11は、係数更新カウンタ値UPDCNTを0クリアした後(ステップ7−5)、現在のエコーリターンロスERLを算出し、得られたエコーリターンロスERLが、エコー信号の減衰が十分か否かを切り分けるための既定値(閾値)ERL_th以下になっているか否かを判別する(ステップ7−6)。エコーリターンロスERLが既定値(閾値)ERL_th以下になっていると、適応フィルタ次数決定部5−11は、標本化クロックによる割込みを待ち受けるステップ7−2に戻る。なお、エコーリターンロスERLが既定値(閾値)ERL_th以下になっている場合は、適応フィルタ次数Nとして適切な次数Niを見付けた場合であるので、図7に示す一連の処理を終了させることも考えられるが、エコー経路の将来的な変動を考慮し、標本化クロックによる割込みを待ち受けるステップ7−2に戻ることとした。
これに対して、エコーリターンロスERLが既定値(閾値)ERL_thを超過していると、適応フィルタ次数決定部5−11は、インデックスiを1インクリメントし、更新されたインデックスiをキーとして対応表から適応フィルタ次数Niを取出して、適応フィルタ4−3に与える適応フィルタ次数Nに設定し(ステップ7−7)、標本化クロックによる割込みを待ち受けるステップ7−2に戻る。なお、更新されたインデックスiが対応表における最後のインデックスに到達し、適応フィルタ次数Nとして対応表から定まる最大値を設定したときには、図7に示す一連の処理を終了するようにしても良い。
(B−3)第1の実施形態の効果
上記第1の実施形態によれば、以下の効果を奏することができる。
<エコー消去時間の広範囲化>
一般的には、エコーキャンセラ4の適応フィルタ4−3の次数をNとし、エコー経路を仮想的にFIRフィルタで表現したときの次数をMとすると、適応フィルタ次数Nが固定の場合、エコーキャンセラ4はM≦Nなるエコー経路のエコーしか消去することができない。第1の実施形態では、適応フィルタ次数Nを動的に増加させることができるので、適応フィルタ次数Nが取り得る最大値までのMに対応させることができる。
すなわち、エコーキャンセラ4のエコー消去時間能力の広範囲化を可能としている。このことにより、例えば、1つのデバイス又は装置に多数の電話回線を収容する際には、これら多数の電話回線のエコー経路のインパルス応答長が広範囲に分布してもそれぞれの電話回線のエコーを消去することができるようになる。
<適応制御の追従特性の向上>
エコーキャンセラ4の適応フィルタ次数Nと、エコー経路を仮想的にFIRフィルタで表現したときの次数Mとが一致するときに、エコーキャンセラ4はエコー経路の各種特性の時間的変動に最も適切に追従することが知られている。第1の実施形態では、適応フィルタ次数Nを動的に増加させることができるので、次数Mが未知であっても適応フィルタ次数NをM以上の極力Mに近い値にすることが可能であり、良好な追従性を実現することができる。
<転送サービスへの対応>
通信中の転送サービスにより、エコー経路のインパルス応答長が突如増大しても、第1の実施形態では対処可能である。
(C)第2の実施形態
次に、本発明による適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラの第2の実施形態を、図面を参照しながら説明する。
(C−1)第2の実施形態の構成
図8は、第2の実施形態に係るエコーキャンセラの構成を示すブロック図であり、第1の実施形態に係る図4との同一、対応部分には同一、対応符号を付して示している。
第2の実施形態のエコーキャンセラ4Aは、適応フィルタ4−3のフィルタ係数^h(k)を適応フィルタ次数制御装置4−2Aから読み取れるようになっている点が第1の実施形態と異なっている。第2の実施形態の場合も、適応フィルタ次数制御装置4−2A内部の構成要素は第1の実施形態と同様であるが(図5参照)、適応フィルタ次数決定部5−11がフィルタ係数^h(k)をも利用して適応フィルタ次数Nを定めている点が第1の実施形態と異なっている。
これらの点以外は、第1の実施形態と同様であるので、その説明は省略する。
(C−2)第2の実施形態の動作
第2の実施形態に関しては、適応フィルタ次数決定部5−11が実行する適応フィルタ次数Nの決定動作を説明する。
上述した第1の実施形態では、適応フィルタ次数を動的に増加させることが可能であったが、動的に減少させることには対応していなかった。減少させることを実行しなくても問題が生じない理由は以下の通りである。適応フィルタ次数をNとし、エコー経路を仮想的にFIRフィルタで表現したときの次数をMとすると、M≦Nなる条件が成立するときにエコー消去量は最大となる。従って、通信途中で次数Mが小さくなってもエコー消去は継続して可能であり、適応フィルタ次数の動的減少に対応していなくても通話品質上は問題は生じない。
しかしながら、エコー経路の次数Mが通信中に大幅に減少することが多い通信環境の場合、また、エコーキャンセラ4Aで消費するリソースを僅かでも経済化したい要求がある場合には、動的に適応フィルタ次数を減少させる方法が望まれる。第2の実施形態は、このような要望に応えている。
第2の実施形態における適応フィルタ次数決定部5−11の動作は、第1の実施形態における動作に比較し、以下のような動作が増えている点が異なっている。
エコーリターンロスERL(=em/xm)が規定値を下回り、エコー消去量が目標を達成しているものとする。このとき、通信中にエコー経路が切り替わり、例えば、次数512の適応フィルタの係数が図2のように収束していたとする。この場合、インパルス応答長Ntotalは約350であり、適応フィルタ次数を350にまで減少させることが可能である。
一般に、エコー経路のインパルス応答は減衰振動を示すので、以下のようにして適応フィルタ次数Nを切り詰める区間(上述の例であれば、最後の方の512−350の区間)を決定することが可能となる。
適応フィルタ4−3の次数をN、切り詰める区間を最後からLとし、全区間、切り詰める区間でのフィルタ係数の電力をPall、Pとすると、各電力Pall、Pはそれぞれ、(13)式、(14)式で表すことができる。なお、(13)式及び(14)式の2乗和に代えて、絶対値和を適用するようにしても良い。
Figure 0005510288
全区間の電力Pallに比較して切り詰める区間の電力Pが小さいならば、切り詰めても悪影響は生じない。そこで、(15)式を満足する限り切り詰める区間Lを増加させていくことができる。(15)式において、Pthは前もって適切に定めた閾値である。
/Pall>Pth …(15)
区間Lを増加単位ΔLずつ徐々に増加させながら、(15)式を満足するか否かを確認し、(15)式を満足するようになったとき、そのときの区間Lより増加単位ΔLだけ短い区間L−ΔLが切り詰めてよい区間であり、(16)式に示すように、適応フィルタ次数Nを、今までの値から切り詰めて良い区間L−ΔLだけ小さく更新させる。
N=N−(L−ΔL) …(16)
図9は、第2の実施形態の適応フィルタ次数決定部5−11の処理を示すフローチャートであり、第1の実施形態に係る図7との同一ステップには同一符号を付している。図9は、上述したような第2の実施形態に特有な処理を含むものである。
第2の実施形態の場合、適応フィルタ次数決定部5−11は、算出したエコーリターンロスERLが、エコー信号の減衰が十分か否かを切り分けるための既定値(閾値)ERL_th以下になっていると(ステップ7−6でNO)、適応フィルタ次数の切り詰め区間候補値Lを初期値0にすると共に、適応フィルタ4−3からフィルタ係数^h(k)を適用して、上述した(13)式の演算を実行して全区間の電力Pallを算出する(ステップ8−1)。
次に、適応フィルタ次数決定部5−11は、切り詰め区間候補値Lを増加単位ΔLだけ増大させると共に、増大させた切り詰め区間候補値Lを適用して、上述した(14)式の演算を実行して切り詰め区間の電力Pを算出する(ステップ8−2)。そして、適応フィルタ次数決定部5−11は、上述した(15)式を満足しているか否かを判別する(ステップ8−3)。(15)式を満足していない場合には、適応フィルタ次数決定部5−11は、切り詰め区間の候補をより長くすべく上述したステップ8−2に戻る。
一方、(15)式を満足した場合には、適応フィルタ次数決定部5−11は、上述した(16)式を実行して適応フィルタ次数Nを小さい値に更新し(ステップ8−4)、標本化クロックによる割込みを待ち受けるステップ7−2に戻る。
なお、ステップ8−1〜8−4の一連の処理で切り詰めることが可能な最大区間長を決定しておくようにしても良い。この場合には、ステップ8−2及び8−3のループを繰り返して最大区間長に達した場合には、その最大区間長分だけ適応フィルタ次数Nを小さい値に更新するようにすれば良い。
(C−3)第2の実施形態の効果
第2の実施形態によっても、上述した第1の実施形態と同様な効果を奏することができる。第2の実施形態によれば、さらに、以下の効果を奏することができる。適応フィルタ次数Nを、その次数で定まる適応フィルタのフィルタ係数の電力に対する、最後尾側の電力を確認しつつ、インパルス応答の振動がないと捉えられる最後尾側の区間に相当する分だけ、適応フィルタ次数Nを切り詰めるようにしたので、エコー経路の次数Mが通信中に大幅に減少することが多い通信環境の場合や、エコーキャンセラで消費するリソースを僅かでも経済化したい要求がある場合に有効である。
(D)他の実施形態
上記各実施形態では、(6)式〜(8)式の条件を適用してシングルトーク状態を検出するシングルトーク検出器5−10の検出結果を、適応フィルタ次数決定部5−11が利用するものを示したが、エコーキャンセラ本体に設けられているダブルトーク検出器のシングルトーク状態という検出結果を利用するようにしても良い。
上記第2の実施形態では、減衰振動が終了して変化していないと捉えられる最後尾側の区間を、全区間に対する電力比で検出するものを示したが、適応フィルタのフィルタ係数の分布(図2参照)から、変化していないと捉えられる最後尾側の区間を決定できるのであれば、他の方法を適用するようにしても良い。例えば、0若しくは0と見なせる値をとるフィルタ係数の最後尾側の連続区間を検出するようにしても良い。
本発明は、アナログ電話の通話回線で発生するエコーを消去する回線エコーキャンセラにも、スピーカとマイクを使用したハンズフリーホン又は会議システムで発生するエコーを消去する音響エコーキャンセラにも適用可能である。
4、4A…エコーキャンセラ、4−1…エコーキャンセラ本体、4−2、4−2A…適応フィルタ次数制御装置、5−1…受信信号絶対値化器(受信信号ABS)、5−2…送信信号絶対値化器(送信信号ABS)、5−3…除去後信号絶対値化器(除去後信号ABS)、5−4…受信信号短時間平均値化器(受信信号LPF_S)、5−5…受信信号中時間平均値化器(受信信号LPF_M)、5−6…受信信号長時間平均値化器(受信信号LPF_L)、5−7…送信信号短時間平均値化器(送信信号LPF_S)、5−8…送信信号長時間平均値化器(送信信号LPF_L)、5−9…除去後信号中時間平均値化器(除去後信号LPF_M)、5−10…シングルトーク検出器、5−11…適応フィルタ次数決定部。

Claims (4)

  1. 次数を変更可能な適応フィルタによって推定エコー信号を形成するエコーキャンセラ本体に対し、上記適応フィルタの次数を指示する適応フィルタ次数制御装置において、
    遠端話者が話中状態、近端話者が受聴状態にあるシングルトーク状態のシングルトーク検出手段と、
    シングルトーク状態中に、遠端話者からの受信信号の信号レベルと、当該受信信号が近端話者側に存在するエコー経路を介して遠端話者に戻るエコー信号の信号レベルを測定し、エコーリターンロスを検出するエコーリターンロス検出手段と、
    上記エコーリターンロスが既定値に到達するまで、上記適応フィルタの次数を初期値から徐々に大きくしていって、上記適応フィルタの次数を定める適応フィルタ次数探索手段と
    を有することを特徴とする適応フィルタ次数制御装置。
  2. エコーリターンロスが既定値に到達後に、上記適応フィルタの収束したフィルタ係数の分布から、切り詰め可能な係数の最後尾側の区間を決定し、その区間に相当する分だけ上記適応フィルタの次数を減少させる適応フィルタ次数減少手段をさらに有することを特徴とする請求項1に記載の適応フィルタ次数制御装置。
  3. 次数を変更可能な適応フィルタによって推定エコー信号を形成するエコーキャンセラ本体に対し、上記適応フィルタの次数を指示する適応フィルタ次数制御プログラムであって、
    コンピュータを、
    遠端話者が話中状態、近端話者が受聴状態にあるシングルトーク状態のシングルトーク検出手段と、
    シングルトーク状態中に、遠端話者からの受信信号の信号レベルと、当該受信信号が近端話者側に存在するエコー経路を介して遠端話者に戻るエコー信号の信号レベルを測定し、エコーリターンロスを検出するエコーリターンロス検出手段と、
    上記エコーリターンロスが既定値に到達するまで、上記適応フィルタの次数を初期値から徐々に大きくしていって、上記適応フィルタの次数を定める適応フィルタ次数探索手段と
    して機能させることを特徴とする適応フィルタ次数制御プログラム。
  4. 次数を変更可能な適応フィルタによって推定エコー信号を形成するエコーキャンセラ本体と、
    上記エコーキャンセラ本体に対し、上記適応フィルタの次数を指示する請求項1又は2に記載の適応フィルタ次数制御装置と
    を有することを特徴とするエコーキャンセラ。
JP2010261417A 2010-11-24 2010-11-24 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ Active JP5510288B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010261417A JP5510288B2 (ja) 2010-11-24 2010-11-24 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010261417A JP5510288B2 (ja) 2010-11-24 2010-11-24 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ

Publications (2)

Publication Number Publication Date
JP2012114650A JP2012114650A (ja) 2012-06-14
JP5510288B2 true JP5510288B2 (ja) 2014-06-04

Family

ID=46498384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010261417A Active JP5510288B2 (ja) 2010-11-24 2010-11-24 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ

Country Status (1)

Country Link
JP (1) JP5510288B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7122756B2 (ja) * 2017-06-12 2022-08-22 株式会社オーディオテクニカ 音声信号処理装置と音声信号処理方法と音声信号処理プログラム
CN111883160B (zh) * 2020-08-07 2024-04-16 上海茂声智能科技有限公司 一种定向麦克风阵列拾音降噪方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11122144A (ja) * 1997-10-13 1999-04-30 Nippon Telegr & Teleph Corp <Ntt> エコー消去方法および装置
JP2009017029A (ja) * 2007-07-02 2009-01-22 Sony Corp 音声信号処理装置、音声信号処理方法
JP5321372B2 (ja) * 2009-09-09 2013-10-23 沖電気工業株式会社 エコーキャンセラ

Also Published As

Publication number Publication date
JP2012114650A (ja) 2012-06-14

Similar Documents

Publication Publication Date Title
JP5321372B2 (ja) エコーキャンセラ
US7856097B2 (en) Echo canceling apparatus, telephone set using the same, and echo canceling method
JP5061853B2 (ja) エコーキャンセラ及びエコーキャンセルプログラム
US8041027B2 (en) Electricity echo cancellation device and method
US7366118B2 (en) Echo cancellation
JP2011055494A (ja) エコーキャンセラ
JP5510288B2 (ja) 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ
JP4403776B2 (ja) エコーキャンセラ
JP4544040B2 (ja) エコーキャンセル装置およびそれを用いた電話機、並びにエコーキャンセル方法
US8666058B2 (en) Time domain adaptive filter bank for network echo reduction or cancellation
JP4075835B2 (ja) 拡声通話装置
JP4475155B2 (ja) エコーキャンセラ
JP2009017029A (ja) 音声信号処理装置、音声信号処理方法
JP2015039093A (ja) エコーキャンセラおよびエコーキャンセル方法
US8737601B2 (en) Echo canceller
JP4877083B2 (ja) 残留エコー抑圧制御装置、方法及びプログラム
JP6635211B1 (ja) エコーキャンセラおよびip電話機
JP4371002B2 (ja) 拡声通話装置
JP5561025B2 (ja) エコー経路特性推定装置、エコー経路特性推定プログラム及びエコーキャンセラー
Ferreira et al. An efficient long distance echo canceller
KR20090085314A (ko) 아날로그 트렁크 및 아날로그 트렁크의 음질 최적화 방법
JP2009100182A (ja) 拡声通話装置
JP2007194740A (ja) 拡声通話装置
JP3187715B2 (ja) 反響消去装置
US7917562B2 (en) Method and system for estimating and applying a step size value for LMS echo cancellers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140310

R150 Certificate of patent or registration of utility model

Ref document number: 5510288

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150