[go: up one dir, main page]

JP5321372B2 - エコーキャンセラ - Google Patents

エコーキャンセラ Download PDF

Info

Publication number
JP5321372B2
JP5321372B2 JP2009208337A JP2009208337A JP5321372B2 JP 5321372 B2 JP5321372 B2 JP 5321372B2 JP 2009208337 A JP2009208337 A JP 2009208337A JP 2009208337 A JP2009208337 A JP 2009208337A JP 5321372 B2 JP5321372 B2 JP 5321372B2
Authority
JP
Japan
Prior art keywords
echo
signal
frequency
unit
adaptive filter
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.)
Expired - Fee Related
Application number
JP2009208337A
Other languages
English (en)
Other versions
JP2011061449A5 (ja
JP2011061449A (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 JP2009208337A priority Critical patent/JP5321372B2/ja
Priority to CN2010102088907A priority patent/CN102025395A/zh
Priority to US12/877,990 priority patent/US8280037B2/en
Publication of JP2011061449A publication Critical patent/JP2011061449A/ja
Publication of JP2011061449A5 publication Critical patent/JP2011061449A5/ja
Application granted granted Critical
Publication of JP5321372B2 publication Critical patent/JP5321372B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Telephone Function (AREA)
  • Filters That Use Time-Delay Elements (AREA)

Description

本発明は、エコーキャンセラに関し、例えば、音声会議装置やハンズフリー電話装置等の装置に用いるエコーキャンセラに適用し得るものである。
従来、この種のエコーキャンセラには、特許文献1〜特許文献4に開示されるような技術があった。
特許文献1に開示される技術は、主に交換機に用いられるエコーキャンセラであるが、エコー発生源インパルス応答をもつハイブリッドが遠隔地にあるとき、その遠隔地までの遅延、すなわちエコーパスの初期遅延を、測定用の特別信号出力とその応答信号から推定して、適応フィルタのフィルタ係数の代わりに純遅延を割り当て、保有する残りの一定タップ長をその後ろに割り当てることで、実質のエコーキャンセラの適応フィルタのタップ長を短くする技術である。
これは適応フィルタの収束時間は、タップ長が大きくなるほど遅くなるという公知の事実に基づいており、特許文献1の技術は適応フィルタのタップのうち、エコーパスの初期遅延部分に割り当てられたタップが実際にはエコーの除去には寄与しないことを利用したものである。
特開平8−251079号公報 特開平8−79136号公報 特開平9−55687号公報 特開2006−157498号公報
しかしながら、上記特許文献1の記載技術を音響エコーキャンセラに直接用いると、音響エコーのエコーパスの様子が回線エコーの様子とまったく異なるために、適応フィルタのタップ係数位置割り当てでは依然として過不足が発生してしまうという問題があった。音響エコーパスにおいては初期遅延だけでなく、初期遅延以後のエコー応答(散乱時間応答)が、個別に大きく異なるからである(つまり、エコー応答の尻尾の長さがまちまちだからである)。
しかし、これは自然で不可避的な現象である。回線エコーのエコー経路が、電話通信回線の規格を満たすように、ある程度画一的に製造されたハイブリッド電気回路の応答であるのに対して、音響エコー経路はスピーカから放射された音が、マイクによって集音されるまでの音経路、すなわち、近端話者存在の反射を含む部屋の音反射の応答なのだから、その応答が千差万別なのは至って自然なことである。
しかしながら、特許文献1の記載技術はこの問題に対して、さまざまに想定されるエコーパスの最大長のフィルタ長を予め持つ必要がある。もしも実際の音響エコー経路の初期遅延も、散乱応答もさほど大きくないなら、残りの長大なタップはすべてその直後から割り当てられてしまい、不要なフィルタ係数タップの短縮ができなかった。従って、収束時間が長くなるという問題がある。
さらに都合の悪いことに、適応フィルタが本来必要以上のタップ数を駆動したときには、不必要なタップがエコー推定誤差の発生原因になるため、むしろエコー除去性能を劣化させる場合がしばしばである。
その上、誤差発生の原因となるフィルタ処理、係数更新処理であっても、本来エコーキャンセラとして必要な部分と計算処理はまったく同様に行うから、DSPで行う際の演算処理・演算電力に無駄が発生する問題がある。
この根本的問題に対して、特許文献2及び特許文献3の記載技術は、初期遅延だけでなく、エコーパスの散乱応答部分に割り当てられる適応フィルタのタップ長の短縮を行う技術を開示している。
特許文献2の開示技術は、適応フィルタの収束程度を打ち消し誤差の大きさで判定することにし、打ち消し誤差が小さいと判定したら、適応フィルタのタップのうち大きさが小さいフィルタ係数をリセットする。リセット係数部分は適応フィルタとしては用いないことで、タップ数を小さくする技術を開示している。
また、特許文献3の記載技術は、適応フィルタのタップ係数をいくつかの大ブロックに分割し、初期動作で初期遅延を推定した後は、収束を進行させながらブロック単位でタップ係数のパワーが固定の閾値を越えるかどうかを判定し、閾値を越えた部分を基本のADF係数更新対象領域として使い、その後は残差信号の増減を監視しつつ、基本的に、最後尾ブロックを削ってみて、エコー除去性能(ERLE)が劣化すると、再び付け足すことを繰り返すことで、概ねのタップ最適化を行おうとする技術が開示されている。
しかし、これらの技術でもしばしば不都合が発生し得る。
特許文献2の技術では、単純に係数を固定閾値と比較して小さい値の係数を削除する。結果、タップの数は小さくなるが、間引き状にタップが削減されてしまったり、入力成分に応じてたまたま小さな値を持つ正しいタップ係数まで除去することが発生し、性能劣化を伴ったりした。また、残差が小さいときに自動的に係数の小さい部分を削除するので、音声信号など参照入力レベルの変動がある信号のとき、残差信号が小さいのは単に参照入力レベルとそれに伴うエコーが小さいという自然な現象であるのに、係数削減処理が働いてしまい、必要な係数まで削除対象になってしまうので、徐々にエコーが十分に消去できなくなる場合があるという問題がある。
特許文献3の技術では、ADFのタップ係数ブロック長の決め方は部屋の大きさなどに応じて最適な設計に熟練を必要とし、適用対象に応じた柔軟な決定/設計が困難であった。更にタップ係数をブロック単位にしたうえで、タップ数増減の試行を繰り返すので、結果としてエコー除去性能の劣化が繰り返し発生してしまい、通話品質を劣化が発生してしまう問題がある。
これらの困難に対して、特許文献4の開示技術は、適応フィルタの係数の最大値から初期遅延を計算して、初期遅延部分ではディレイを割り当てて、初期遅延相当部分の適応フィルタのタップ長を節約するとともに、適応フィルタをさらに長さの異なる複数ブロックに分割し、係数の正規化パワー積和値を各ブロックで計算し、ブロック内の正規化パワーが、遅延後方に相当するタップにいくに従って小さくなるかどうかで適応フィルタが収束しているかどうかを判定することにして、
固定の閾値を設け、
閾値>後半ブロックのパワー/前半ブロックのパワー
ならばブロックを延長し、
閾値<後半ブロックのパワー/前半ブロックのパワー
ならばブロックを延長することでタップ係数を予め決めたブロック単位で増減させ、散乱時間部分のタップ長に関しても節約を試みる優れたエコーキャンセル技術が開示されている。
しかし、この特許文献4の方法にも次のような問題がある。例えば近端話者側のノイズが多く、エコーとノイズとのパワーの差が小さいときには、タップ係数のパワーにも差がさほど大きく現れないので、ブロックは徐々に延長され最大長にむかってしまう。
このようにノイズによってエコーの除去ができないのであれば、タップ長は可能な限り短くして演算処理の資源や演算電力の節約をするのが望ましい。
逆に、ノイズとエコーとのパワー差が大きなときでも、ブロックの変わり目がエコーパスの主要な部分にかち合ってしまうと、ブロックを1個短縮するとタップが急に不足し、次にそれを補おうとしてタップ長を再び延長し係数更新をするという動作を繰り返すため、特許文献3と同様にエコー消去性能の劣化が繰り返し発生してしまうという問題ある。
そこで、本発明は、上記の課題に鑑みたものであって、エコーキャンセラのエコー消去量と、適応フィルタ係数の係数値の特性の関係を監視し、実際のエコー除去に有効に作用しているタップ係数部分を計算し、その部分だけを選択的に適応フィルタとして機能させ、残りを動作停止することで、エコー消去の性能劣化なくタップ数を少なくする。そして、エコー除去性能の劣化を伴うことなく、演算規模/演算電力を小さくし、タップ長を短く動作するので状態変化にも素早く対応できるエコーキャンセラを提供することを目的としている。
かかる課題を解決するために、第1の本発明のエコーキャンセラは、遠端入力信号を利用して擬似エコー信号を形成する適応フィルタと、擬似エコー信号を用いて近端入力信号に含まれるエコー信号を除去するエコー成分除去手段とを備えるエコーキャンセラにおいて、(1)エコー成分除去手段に入力する近端入力信号と、エコー成分除去手段から出力する出力信号とに基づき、所定期間に亘るエコー消去量の平均値を求め、エコー消去量の平均値を逐次更新していき、適応フィルタの収束状態を検出し、適応フィルタの収束状態での収束時エコー消去量を求めるエコー消去量計算手段と、(2)エコー消去量計算手段から適応フィルタの収束状態の検出信号を受けると、適応フィルタが保持する全タップ係数のパワー総和と、適応フィルタのタップ係数のうちタップの割り当てを外そうとするタップ係数の部分パワー和とのパワー比を求め、収束時エコー消去量とパワー比とに基づいて、エコー成分除去に実効的な有効タップ数を決定する係数選択手段とを備え、適応フィルタが、係数選択手段が決定した有効タップ数のみを更新することを特徴とする。
第2の本発明のエコーキャンセラは、遠端入力信号を利用して擬似エコー信号を形成する適応フィルタと、擬似エコー信号を用いて近端入力信号に含まれるエコー信号を除去するエコー成分除去手段とを備えるエコーキャンセラにおいて、(1)受信経路上に音声信号が入力したか否かを検出する音声検出手段と、(2)音声検出手段による音声検出結果に基づき、近端入力信号に含まれるエコー信号の大きさと近端入力信号に含まれるノイズの大きさから、エコー信号とノイズとの大きさの比又は差を求め、この比又は差と閾値との比較を行うエコー/ノイズ計算手段と、(3)エコー/ノイズ計算手段からの比較結果に基づいて、当該エコーキャンセラの動作を有効にするか否かを判定する有効判定手段と、(4)エコーロス計算手段による減衰量が閾値を超えた場合、又は、有効判定手段により当該エコーキャンセラの動作を停止させると判定した場合に、当該エコーキャンセラの動作を停止させ、近端入力信号を透過させる省力優先判定手段とを備えることを特徴とする。
本発明によれば、エコーキャンセラのエコー消去量と、適応フィルタ係数の係数値の特性の関係を監視し、実際のエコー除去に有効に作用しているタップ係数部分を計算し、その部分だけを選択的に適応フィルタとして機能させ、残りを動作停止することで、エコー消去の性能劣化なくタップ数を少なくすることができる。
第1の実施形態のエコーキャンセラの構成を示すブロック図である。 第1の実施形態の適応フィルタの構成を示すブロック図である。 第1の実施形態のエコー消去量とタップ係数パワーとの関係を説明する説明図である。 第1の実施形態の適応フィルタ11のタップ係数と実際のPOW_LOG(m)との様子を説明する説明図である。 第2の実施形態のエコーキャンセラの構成を示すブロック図である。 第3の実施形態のエコーキャンセラの構成を示すブロック図である。 第3の実施形態の初期遅延推定部の構成を示すブロック図である。 第4の実施形態のエコーキャンセラの構成を示すブロック図である。 第4の実施形態の初期遅延及びエコー状態判定部の構成を示すブロック図である。
(A)第1の実施形態
以下では、本発明のエコーキャンセラの第1の実施形態を、図面を参照しながら詳細に説明する。
(A−1)第1の実施形態の構成
図1は、第1の実施形態のエコーキャンセラ100Aの構成を示すブロック図である。図1において、左側が図示しない遠端話者側であり、右側が図示しない近端話者側である。
図1において、エコーキャンセラ100Aは、受信入力端子Rin1、受信出力端子Rout2、ディジタル/アナログ変換器(以後D/A)3、スピーカ4、マイクロフォン5、アナログ/ディジタル変換器(以後A/D)6、送信入力端子Sin7、送信出力端子Sout8、打ち消し加算器9、係数選択部10、適応フィルタ(ADF:Adaptive Filter)11、音声検出器12(VAD:Voice Activity Detector)、エコー消去量計算器(ACANC)13である。
受信入力端子Rin1は、遠端話者の音声信号がディジタル化された遠端入力信号(遠端話者信号ともいう)x(n)を入力する端子である。受信出力端子Rout2は、遠端話者からの遠端入力信号x(n)をD/A3に出力する端子である。
ディジタル/アナログ変換器(D/A)3は、受信出力端子Rout2から出力されたディジタル信号をアナログ信号に変換してスピーカ4に与えるものである。
スピーカ4は、D/A3から音声信号を受け取り音声を空間に放出するものである。
マイクロフォン5は、近端側の音声を集音して、音声信号をアナログ/ディジタル変換器6に与えるものである。
アナログ/ディジタル変換器6は、マイクロフォン5からの音声信号を、アナログ信号からディジタル信号に変換して送信入力端子Sin7に与えるものである。
送信入力端子Sin7は、アナログ/ディジタル変換器6から出力された近端入力信号(近端話者信号ともいう)を入力する端子である。この近端入力信号は、エコー信号を含む信号である。また、送信出力端子Sout8は、打ち消し加算器9からの出力信号を遠端話者側に向けて送信する出力端子である。
打ち消し加算器9は、送信入力端子Sin7から入力された近端入力信号と適応フィルタ11からの擬似エコー信号y´(n)とを加算して、近端入力信号に含まれるエコー信号y(n)を除去するエコー成分除去手段である。また、打ち消し加算器9は、加算処理した残差信号e(n)を適応フィルタ11、エコー消去量計算器13及び送信出力端子Sout8に出力する。
音声検出器12は、受信入力端子Rin1から入力された遠端入力信号x(n)に音声があるか否かを判定し、音声がある場合に、音声検出結果(v_flg)をエコー消去量計算器13に与えるものである。例えば、音声検出した場合にはv_flg=1を出力する。
エコー消去量計算器13は、打ち消し加算器9に入力する入力信号のパワーと、打ち消し加算器9から出力する出力信号のパワーとに基づいてエコー消去量の平均値を計算するものである。また、エコー消去量計算器13は、収束とともに徐々に大きくなるエコー消去量を反映してエコー消去量の平均値を逐次更新していき、エコー消去量の平均値の変動量が前回のエコー消去量の平均値の変動量よりも小さくなったことにより、適応フィルタ11の係数の変化が収束したと判定し、その音声検出結果(suv_flg)及びこのときのエコー消去量(ACANC_UP(nT),収束時エコー消去量ともいう)を係数選択部10に与えるものである。なお、この実施形態では、例えば、適応フィルタ11の収束状態を検出した場合には、suv_flg=1として係数選択部10に与える。
適応フィルタ11は、入力信号x(n)及び打ち消し加算器9からの出力信号e(n)入力し、擬似エコー信号y´(n)を生成して、打ち消し加算器9に与えるものである。また、適応フィルタ11は、タップ係数を係数選択部10に出力するものである。
図2は、適応フィルタ11の内部構成を示すブロック図である。図2において、適応フィルタ11は、タップ係数部11a、積和演算部11b、保持レジスタ11c、係数更新部11dを少なくとも有するものである。
タップ係数部11aは、フィルタ係数を格納するものである。タップ係数部11aは、N個の係数値を格納し、1つの係数ベクトルとして取り扱う。例えば、第1の実施形態では、N=1024個とするが、特に限定されるものではない。また、タップ係数部11aは、係数選択部10に対してタップ係数を出力する。
積和演算部11bは、タップ係数部11aの係数ベクトルと、保持レジスタ11cに保持されるデータベクトルとに基づいて積和演算を行い、擬似エコー信号y´(n)を計算するものである。積和演算部11bは、係数選択部10からタップ開始点stとタップ終了点endとを入力し、そのタップ開始点stからタップ終了点endまでのタップ係数を用いて積和演算を行う。
保持レジスタ11cは、受信入力端子Rin1からの遠端入力信号x(n)を格納するものである。保持レジスタ11cは、N個分の過去のサンプルを蓄えて、データベクトルとして取り扱う。
係数更新部11dは、打ち消し加算器9から残差信号e(n)と、保持レジスタ11cから信号x(n)ベクトルとを受け、所定のアルゴリズムを用いて適応フィルタ11のフィルタ係数を更新し、更新したフィルタ係数をタップ係数部11aに与えるものである。係数更新部11dは、係数選択部10からタップ開始点stとタップ終了点endとを入力し、そのタップ開始点stからタップ終了点endまでのタップ係数の更新を行う。
係数選択部10は、適応フィルタ11のタップ係数部11aのタップ係数パワーの総和と、タップ係数の部分パワーの和とを計算し、タップ係数パワーの総和とタップ係数の部分パワーの和との比を計算して、エコー消去量計算器13が計算したエコー消去量と前記比と、性能安定のための閾値δacancとに基づいて、エコー除去に実効的な適応フィルタ11のタップ数(以下、有効タップ数ともいう)を決定するものである。
また、係数選択部10は、決定したエコー除去に実効的な適応フィルタ11のタップ数として、タップ開始点st及びタップ終了点endを、適応フィルタ11の係数更新部11d及び積和演算部11bに与えるものである。
これにより、エコー除去に実効的な適応フィルタ11のタップ数(有効タップ数)だけを、係数更新させ、かつ、これを用いて擬似エコー信号の発生に用いるようにすることができるので、無駄なタップ係数の更新処理をなくすことができ、フィルタ係数を短くできるので適応フィルタ11の追従速度を向上させることができる。さらに、エコー消去性能は収束時の性能を維持することができるので、例えば通話時にエコー感のない通話を実現することができる。
(A−2)第1の実施形態の動作
次に、第1の実施形態のエコーキャンセラ100Aにおける処理を、図面を参照しながら詳細に説明する。
図示しない遠端話者からの音声信号はディジタル化された信号として到来するものとする。受信音声信号x(n)は音声検出器12と適応フィルタ11、受信出力端子Rout2に入力される。音声検出器12及び適応フィルタ11における動作に関しては後述する。なお、nはサンプル順である。
受信出力端子Rout2から出力された信号は、D/A3でアナログ信号に変換された後、スピーカ4で音声になり空間に放出される。
また、スピーカ4から放出された信号は、図示しない近端の話者に音声信号として供せられるが、一部の音がマイクロフォン5に回り込んで入力される。
マイクロフォン5に入力された信号yは、A/D6でディジタル信号に変換され、エコー信号y(n)となって、打ち消し加算器9とエコー消去量計算器13に出力される。
打ち消し加算器9には、適応フィルタ11の出力である擬似エコーy´(n)が出力されており、エコー信号y(n)と相殺される。
打ち消し加算器9の出力信号e(n)は、エコー消去量計算器13と送信出力端子Sout8に出力される。また、出力信号である残差信号e(n)は、適応フィルタ11にも出力され、後述するように適応フィルタ11の係数更新に用いられる。
送信出力端子Sout8から出力された信号は、図示しない遠端話者へと送信され遠端話者との会話に用いられる。
(A−2−1)音声検出器12における処理
次に、各構成ブロックの動作について詳しく説明する。まず、遠端話者からの音声信号x(n)が入力する音声検出器12における動作を詳細に説明する。
音声検出器12による音声検出方法は、入力信号x(n)から音声の有無を検出することができれば種々の方法を広く適用することができ、第1の実施形態では、例えば、次に示すような音声区間検出方法を適用する場合を例示する。
例えば、音声検出器12は、|x(n)|の短期平均x_short(n)、長期平均x_long(n)を各々式(1)、式(2)を用いて計算し、下記の式(3)の条件が成立したときに「音声あり」とし、そうでないときに「音声なし」と判定する。
x_short(n)
=δs・|x(n)|+(1.0−δs)・x_short(k−1)…(1)
x_long(n)
=δl・|x(n)|+(1.0−δl)・x_long(k−1)…(2)
ただし、0<δs≦1.0、0<δl≦1.0(上記lはLの小文字)
(音声検出条件)
x_short(n)≧x_long(n)+VAD12_m (dB)…(3)
ここで、δs、δlは、平均の追従の速さを決定する定数である。δs、δlが、大きいと時間変動に敏感に反応する代わりに背景ノイズの影響を受け易くなり、小さいと大まかな成分に追従し、ノイズの影響には鈍感になる。
第1の実施形態では、例えば、δsについては0.4、δlについては0.002を用い、VAD12_mは6dBを用いたが、この値に限定しない。また、式(3)は、dB表現としたが、dB表現ではなく、通常表記で表すと以下のようになる。
x_short(n)≧x_long(n)×VAD12_mlin…(3’)
ここで、この場合、例えばVAD12_mlinは2.0となる。
また、δs、δlはサンプリング周波数によって適宜変更するのが望ましく、例えば、サンプリング周波数によらず、δsを立ち上がり20ms相当に、δlを5秒相当に設定するなどしてもよいのはもちろんである。
(A−2−2)エコー消去量計算器13における処理
次に、エコー消去量計算器13におけるエコー消去量の計算方法と、適応フィルタ11の係数変化の収束状態の判定方法を説明する。
例えば、エコー消去量計算器13は、音声検出器12から音声検出信号(例えばv_flg=1)の出力を受けたとき、打ち消し加算器9の入出力信号のパワーからエコー消去量ACANCを計算する。これは、エコーが発生していないときに、エコー消去量を計算しても意味がないため、音声検出されている期間のみエコー消去量を計算する意図である。
エコー消去量計算器13は、送信入力端子Sin7からの信号y(n)と、打ち消し加算器9からの出力信号e(n)とを入力し、式(4)のようにしてエコー消去量の瞬時値ACANC_S(n)を計算する。
ACANC_S(n)
=10LOG10{(y(n))/(e(n))}…(4)
第1の実施形態では、式(4)のように信号のパワーを用いるようにしたが、別の方法として信号の絶対値を用いて、式(5)のようにしてもよい。
ACANC_S(n)
=20LOG10{|y(n)|/|e(n)|)…(5)
ここで||は絶対を表す。
次に、エコー消去量計算器13は、エコー消去量の平滑値ACANC_L(n)を式(6)のように計算する。
ACANC_L(n)
=δ・ACANC_L(n−1)+(1−δ)ACANC_S(n)…(6)
ここで、式(6)において、δは平滑の滑らかさを表す定数であり、式(7)の関係がある。
0<δ<1.0…(7)
δが小さいとき、瞬時値ACANC_S(n)に追従する速さが速くなるが、同時に、ノイズ成分があるときにはそのノイズの影響も受けやすくなる。一方で、δが大きいときは瞬時値ACANC_S(n)の大まかな変化を反映するようになり、ノイズ成分の影響も受けづらくなる。第1の実施形態では、δ=0.998を用いた場合を例示するが、この値は特に限定しない。
また、式(4)、式(5)からわかるように、エコー消去量の瞬時値ACANC_S(n)や、平滑値ACANC_L(n)は、適応フィルタ11の適応が進行し、エコー除去性能が発揮できるようになるに従って、大きな値をとるようになる。
エコー消去量計算器13は、計算した平滑値ACANC_L(n)を用いて、一定期間nT毎に、エコー消去量の平滑値ACANC_L(n)の値の上昇値ACANC_UP(nT)を式(8)、式(9)のように計算する。
ACANC_L(n)>ACANC_UP(nT)なら
ACANC_UP(nT)=ACANC_L(n)…(8)
ACANC_L(n)≦ACANC_UP(nT)なら
ACANC_UP(nT)=ACANC_UP((n−1)T)…(9)
つまり、ACANC_UP(nT)は、前回nTのタイミングで計算したACANC_UP(nT)と、最新の現サンプル値ACANC_L(n)を比較し、どちらか大きい値が新しいACAN_UP(nT)として継続更新されていくことを表している。
さらに、エコー消去量計算器13は、式(8)が行われたときに、その上昇の程度diff_ACANCがどの程度大きいかを式(10)のように計算する。
diff_ACANC(nT)
=ACANC_UP(nT)−ACANC_UP((n−1)T)…(10)
また、エコー消去量計算器13は、式(11)が成立するか否かを判定する。
diff_ACANC(nT)
≦diff_ACANC((n−1)T)+δ2…(11)
ここで、δ2は2dBを用いたがこれに限定しない。
そして、式(11)のとき、エコー消去量計算器13は、適応フィルタ11の係数の変化が収束したと判定し、判定結果としてsuv_flg=1とACANC_UP(nT)を係数選択部10に出力する。
(A−2−3)適応フィルタ11における処理
適応フィルタ11における処理を図1及び図2を用いて説明する。
まず、保持レジスタ11cは、受信入力端子Rin1からの信号x(n)を格納する。
このとき、保持レジスタ11cは、次のように、信号x(n)をデータベクトルとして扱う。つまり、N個分の過去サンプルが蓄えられることになる。
x(n)=[x(n)、x(n−1)、…、x(n−N+1)] …(12)
ここで、nはサンプル順、Nは適応フィルタ11のタップ数(例えば、N=1024個とするがこれに限定されない)、tは行列の転置を表している。
また、タップ係数部11aには、図示しないフィルタ係数(タップ係数)が格納されており、N個の係数値を持つ。係数の値は、後述するように、係数更新部11dによる時々刻々と更新される。
例えば、タップ係数部11aのN個の係数は、式(13)のように1つの係数ベクトルとして扱う。
H(n)=[h(0)、h(1)、…、h(N−1)] …(13)
ここで、Nは適応フィルタ11のタップ数である。
積和演算部11bは、タップ係数部11aの係数ベクトルと保持レジスタ11cのデータベクトルとを受け、式(14)のようにy´(n)を計算する。このy´(n)は擬似エコーのサンプルデータである。y´(n)は1つの値を持つ、スカラー値データである。
Figure 0005321372
ここで、st及びendの値は、後述する係数選択部10から出力される値である。stの初期値は0、endの値はN−1である。従って、積和演算部11bは、初期状態では、Nサンプルの過去のデータとNタップ分の係数とを積和して、擬似エコー信号y´(n)を作成する。上記のように作成された擬似エコーy´(n)は、打ち消し加算器9に出力される。
打ち消し加算器9は、上述のようにスピーカ4からマイク5に漏れこんだエコー信号y(n)が入力されており、式(15)のように信号同士を加算相殺して残差信号e(n)を計算する。残差信号e(n)は送信出力端子Sout8に出力される。
e(n)=y(n)−y´(n)…(15)
送信出力端子Sout8からの出力信号は、図示しない遠端話者側への音声信号として出力される。
また、打ち消し加算器9の残差信号e(n)は、係数更新部11dにも出力される。
係数更新部11dは、打ち消し加算器9からの残差信号e(n)と、保持レジスタ11cからの受信信号ベクトルx(n)とに基づいて、例えば式(16)のように公知のNLMSアルゴリズムを用いて適応フィルタのフィルタ係数を更新する。
Figure 0005321372
ここで、式(16)の右辺第2項分母のstとendは式(15)と同じである。式(16)は信号e(n)、x(n)から、次回の擬似エコー作成に用いるための係数ベクトルが作成されることを示している。
係数更新部11dは、作成した係数ベクトルをタップ係数11aに出力し、次回の擬似エコー信号y´(n)の作成に備える。何度か、式(16)の係数更新が進行すると、式(15)の残差信号e(n)は徐々に小さくなる。
やがて十分にe(n)が小さくなると、式(16)の係数更新で係数の変化がほとんど起きなくなる。これが「適応フィルタが収束した状態」である。
以上のように、音声検出器12の出力が音声ありのとき、エコーキャンセラは適応フィルタ11が主体となってエコーの同定と打ち消しを担う。
以上説明したように適応フィルタ11では、遠端入力信号x(n)が入力されるに従い、残差信号e(n)のパワーが最小になるように適応フィルタ11のフィルタのタップ係数が更新されていく。
図示しない近端話者側からのノイズ成分がない場合は、e(n)=0になった時点でフィルタタップ係数の変更が自動的に停止されて、それ以後はエコーを打ち消す状態が維持される。
(A−2−4)係数選択部10及びフィルタ係数の更新の動作
次に、係数選択部10における係数選択処理の動作を、図面を参照しながら説明する。
係数選択部10は、エコー消去量計数器13からsuv_flg及びACANC_UP(nT)が入力され、また適応フィルタ11からフィルタ係数が入力されている。
係数選択部10は、図示しないフィルタ係数から、例えば下記のようにして、適応フィルタ11のタップ係数として実働させる適応フィルタ11のフィルタ係数を決定する。
係数選択部10は、エコー消去量計数器13からsuv_flg=1がないとき、何も実行しない。
また、係数選択部10がエコー消去量計数器13からsuv_flg=1を受けると、係数選択部10は、式(17)のような適応フィルタ11のフィルタ係数のパワーログ特性を計算する。
ここで、mは、第m番目のタップ位置での計算であることを表している。Nは、適応フィルタ11の全タップ数を表している。
式(17)の分母は、第M番目から最後までのタップ係数のパワー総和であり、分子は適応フィルタ11の全タップ長分のフィルタタップ係数のパワー総和である。また、式(17)は、式(17´)のように計算しても意味は同じである。
Figure 0005321372
式(17)及び式(17´)の意味するところは、本発明にとって重要であるので、図3を用いて詳しく説明する。
前述したエコー消去量計算器13で計算するエコー消去量は2つの信号パワーの比、すなわち、式(4)を基本に計算された量である。
いま、エコー消去量が、仮にa(dB)であるとする。
このエコー消去量a(dB)は、エコーパスのインパルス応答波形、すなわち収束した適応フィルタ11のタップ係数値の部分パワー比に置き換えて考えることができる。その仕組みを以下に説明する。
近端側のノイズの影響が小さいとして考える。図1のy(n)はエコーのことであり、図3で言い換えるならエコー全体そのもの、つまりエコーパスの応答波形(インパルス応答)のNタップ分の全パワーに相当する。
エコーキャンセラの係数タップはすでに説明したように、適応フィルタ11が収束するとエコーパスのインパルス応答を模擬したものになる。(例えば、第1の実施形態のNLMSアルゴリズムの場合では、エコーパス時間波形の模擬波形となる。)
しかし一方で、適応フィルタ11はフィルタ長が有限であるから、無限長のエコーパス全長をカバーしきれない。したがって、従来技術では冗長を覚悟の上で、実際に想定されるだけ十分に長いタップ長Nを予め設計者が割り当てるか、逆にメモリなどの資源を可能なだけ割り当てたあとの結果がタップ長Nであることが多い。
もし、フィルタ長に全長Nではなく、それより少ない冒頭Mタップを用いたとすると、図3のように、エコーキャンセラはタップ長Mの分だけエコー消去を受け持ち、残りのN−Mタップ分に関しては係数タップが割り当てられていないのでエコーを打ち消せない。すなわち、この割り当てられていない部分のパワーの打ち消し残差パワーe(n)になる。
つまり、打ち消し加算器9の入出力パワー比であるエコー消去量は、全エコーのうちどれだけのエコーを消去できたのか、言い換えれば、全Nタップのうち、何タップ程度が実際有効に機能しているかの指標にできる。
図4は、適応フィルタ11のタップ係数と実際のPOW_LOG(m)との様子を説明する。図4において、図4(A)は、適応フィルタ11のタップ係数の時間波形を示し、図4(B)は、式(17)のPOW_LOG(m)の特性であり、両方の時間軸を合わせて図示する。
POW_LOG(m)は、エコーパスの初期遅延idのうちは値が変化しないが、時間id以後は、mが大きくなるにつれ上昇し、m=Mのときに全体に対して例えばa(dB)の割合になることを示すようになる。
図4からわかるように、m=M以後は、mが増加してもさほどPOW_LOG(m)が上昇しなくなる。つまり、適応フィルタ11において、タップ長をMより多少増加したとしても、消去性能の改善は頭打ちに近くなることを反映する。これは空間の音響エコー経路というものが「反射を繰り返しながら徐々に減衰する」、「反射は時間後方ほど緩やかに減衰する」という公知の物理的特性を反映したものである。
これらエコーパスの性質に鑑みれば、一旦エコーキャンセラを収束させてエコー消去量を測定できれば、実用問題として、計算したエコー消去量と係数レジスタのPOW_LOG(m)の関係から、その時点のエコー打消性能を維持する係数タップの数が計算できることを意味している。
そこで、係数選択部10は、実際にエコー消去量計算器13の計算した計算値ACANC_UP(nT)を用い、式(18)を満足するmを求める。
Figure 0005321372
閾値δacancは、タップ数のマージンを確保するための定数(マージン閾値)であり、例えば第1の実施形態では、δacanc=3dBを用いたが、これに限定されない。
図4に戻って説明する。例えば、図4の場合、実際にa(dB)の消去性能が発揮できているとき、タップ数mはMとなり、実際に近端ノイズなどがあり、a(dB)よりも性能が発揮できていないときには、Mより少ない値mが自動的に計算されることになる。
係数選択部10は、式(18)の演算により得られたタップ長mを、タップ終了点endとして適応フィルタ11の係数更新部11dに出力する。
また、第1の実施形態では、係数選択部10は、タップ開始点st=0を適応フィルタ11の係数更新部11dに出力するが、以下のようにしても良い。
例えば、図4のエコーパス初期遅延idは装置によってスピーカ4とマイク5の距離から予め固定値とすることもできる。そのような場合、例えば、音速svとスピーカ4とマイク5の間の距離dから初期遅延サンプルstを次のように計算し、これにより得られた初期遅延サンプルをタップ開始点としても良い。
st=(d/sv)×サンプリング周期、
又は、st=d/(sv×サンプリング周波数)
適応フィルタ11の係数更新部11dは、係数選択部10からタップ開始点stとタップ終了点endが入力されると、例えば式(16)のように、タップ開始点st〜タップ終了点endのタップ係数だけを更新して、残りは更新しない。
さらに、係数選択部10は、タップ開始点stとタップ終了点endを適応フィルタ11の積和演算部11bにも出力する。
適応フィルタ11の積和演算部11bは、タップ係数部11aのフィルタ係数と保持レジスタ11cのうち、タップ開始点st〜タップ終了点endのデータだけを用いて式(14)のように擬似エコーを作成する。
なお、第1の実施形態では、タップ開始点st〜タップ終了点endのデータだけを使い残りのタップ係数部11aの係数レジスタを計算に用いないようにしたが、さらに、残りの部分をリセットするようにしてもよい。
また、以上述べたように係数選択部10は、一旦達成したエコー消去性能を維持しつつ、フィルタのタップ数を削減するためのタップ開始点stとタップ終了点endをADF11に出力し、以後ADF11はst〜endのフィルタ係数と保持レジスタ11cのデータだけを用いてエコー打消し動作を継続していく。
(A−3)第1の実施形態の効果
以上のように、第1の実施形態のエコーキャンセラ100Aは、音声検出器12が音声ありを検出したときに、エコー消去量計算部13がエコー消去量を求め、係数選択部10は、適応フィルタ11が収束した状態のエコー消去量を用いて、タップ係数パワーの総和とタップ係数の部分パワーの和とを計算し、両者の比を計算して現在エコー打ち消しに有効に機能している適応フィルタ11のタップ数を決定し、その決定したタップだけを係数更新し、擬似エコー信号の生成を行うこととした。
その結果、第1の実施形態によれば、一旦タップ係数が限定されたあとは、無駄なフィルタタップ係数を用いた擬似エコー信号発生のフィルタ処理を行う必要がなく、また無駄な係数更新処理を行う必要がなく、更にフィルタ係数が短くなるので、エコーパスの変化に対する適応フィルタ11の追従速度が向上する。
その一方で、エコー消去性能は、収束時の性能がそのまま維持されて、通話時にエコー感のない通信機を実現するエコーキャンセラを提供することができる。
(B)第2の実施形態
次に、本発明のエコーキャンセラの第2の実施形態を図面を参照しながら説明する。
第2の実施形態は、第1の実施形態と同様に、一旦フィルタタップを限定したあと、エコー経路の変化でエコー消去性能が劣化したときに対応して、タップの割り当て限定を一旦解除して、再び有効タップの限定処理を行うものである。
一般に、例えばデスクワーク等を行う話者のように、体の動きがあまり発生しない環境で用いる装置に、本発明のエコーキャンセラを適用する場合、第1の実施形態のように、タップの限定動作を行い、一定タップ数でエコー消去を行うことで十分なエコー除去性能を発揮できることも多い。
しかし、例えば自動車電話などに応用する場合は事情が異なる。例えば、ドライバは自動車運転操作の必然から、運転中においてはエコーパスの変化が発生することがしばしばである。
第2の実施形態は、このようなエコーパスの変化によるエコー消去性能が変動する場合も考慮したものであり、動作するタップ係数を限定したあと、外部要因であるエコーの状態が変わったことによるエコー消去性能劣化を回復することに鑑みたものである。
(B−1)第2の実施形態の構成及び動作
図5は、第2の実施形態のエコ−キャンセラ100Bの構成を示すブロック図である。
第2の実施形態が、第1の実施形態と異なる点は、エコー消去量計算器13に代えてエコー消去量計算器20とすること、係数選択部10に代えて係数選択部21にすることであり、それ以外の構成要素は第1の実施形態と同じである。
そこで、以下では、エコー消去量計算器20及び係数選択部21の動作を詳細に説明し、それ以外の構成要素の動作については重複するので改めて説明しない。
まず、エコー消去量計算器20について説明する。エコー消去量計算器20は、第1の実施形態で説明した処理に加えて、タップ係数が限定されたあとも、エコー消去量計算値を更新継続するようにし、計算したエコー消去量が低下することで、タップ係数限定の後にエコー経路変動による消去性能の劣化したことを検出するようにし、その劣化を検出したときに検出信号(以下、エコー消去性能劣化信号ともいう)span_resetを係数選択部21に与えるものである。
つまり、エコー消去量計算器20も、式(11)を計算するところまでは第1の実施形態で説明した動作と同じである。さらに、エコー消去量計算器20は、音声検出器12からv_flg=1が入力されると、係数タップが限定されたあとも、式(19)のようにACANC_UP(nT)を更新継続する点が第1の実施形態と異なる。
ACANC_UP(nT)≧ACANC_MAXなら
ACANC_MAX=ACANC_UP(nT)−δ20 …(19)
ACANC_UP(nT)<ACANC_MAXなら
ACANC_MAX=ACANC_MAX …(20)
ここで、δ20は定数であり、δ20≦δ2 である。また、第2の実施形態では、例えばδ20=1dBを用いたが、これに限定されるものではない。
式(19)は、ACANC_UP(nT)が安定になったあと、エコー消去量の平滑最大値ACANC_MAXにACANC_UP(nT)を反映しながら、ACANC_UP(nT)を逐次更新して、後述するエコー経路変動による消去性能の劣化判定に用いることにするのである。
式(19)の更新の結果として、ACANC_UP(nT)更新時にエコー消去がうまくいっているなら、式(8)の動作によって、δ20のせいで毎回ACANC_UP(nT)は一旦大きな値ACANC_L(n)に引き戻される。その結果、その後再び式(19)によってACANC_MAXも大きな値に引き戻される。
つまり、ACANC_MAXはそれまでの最大値とそこからδ20(dB)分だけ小さくなった値を行き来するが、毎回の差分としては式(11)のδ2の範囲は超えないのでタップ係数の限定がなされたままとなる。
一方で、式(19)が何度か実行されるうち、式(8)が成立せずに、式(9)が成立するときは、現象としてはACANC_L(n)が小さく、ACANC_UP(nT)を上方に引き戻すことができない状態になっているということである。
説明したようにACANC_L(n)が意味するのは、エコー消去量の長時間平滑値であるから、これは長期間で見てもエコー打ち消し性能が低下しているということを表している。このときACANC_MAXは式(20)のように維持されたままとなる。
そこで、エコー消去量計算器20は、suv_flg=1のときで、かつ、下記式(21)が成立するほどACANC_UP(nT)が降下したとき、検出信号span_reset=1を係数選択部21に出力する。それ以外のときには、何も出力しない。
ACANC_MAX
≧ACANC_UP(nT)−δ21 …(21)
ここで、δ21はタップ限定リセット処理発動のための閾値であり、第2の実施形態では、例えばδ21=10dBを用いたがこの値に限定しない。式(21)ではδ21を差し引くように計算したが、式(21)‘のように乗算の形で−10dBパワー減少に相当する値すなわち δ21‘=0.1 を計算するようにしてもよい。
ACANC_MAX
≧ACANC_UP(nT)×δ21‘ …(21)’
本実施形態では式(21)をもちいた。
次に、係数選択部21について説明する。係数選択部21は、第1の実施形態で説明した処理に加えて、エコー消去量計算器20からspan_reset=1を入力すると、適応フィルタ11の係数更新部11dにタップ開始点st=0、タップ終了点end=Nを出力するものである。
すなわち、係数選択部21は、適応フィルタ11の全タップを動作させる初期状態に戻すものである。これにより、タップ数を限定した後に発生したエコーパスの変化に基づいて再びエコー消去性能を発揮するために、最小限のタップ数で動作することができる。
エコー消去量計算器20は、suv_flg=1、span_reset=1を出力し終えると、suv_flg=0に戻し、他の内部パラメータも全てリセットして動作を再開する。その後の動作は、第1の実施形態と同じである。
(B−2)第2の実施形態の効果
上記のように、第2の実施形態によれば、外部要因のエコー経路の変化に追従するが、タップの不適割り当ての繰り返しによるエコー消去量の揺らぎなどが発生しない。つまり、一旦、適応フィルタとして動作できるタップを限定した後でも、エコーパスの変化が発生すれば、エコー除去性能が劣化したことを自動的に検知して、エコーを除去し、再び最小のタップ長に落ち着いて、安定にかつ省電力でエコーを消去し得るエコーキャンセラを提供できる。
(C)第3の実施形態
次に、本発明のエコーキャンセラの第3の実施形態を図面を参照しながら説明する。
(C−1)第3の実施形態の構成
図6は、第3の実施形態のエコーキャンセラ100Cの構成を示すブロック図である。
第3の実施形態が、第2の実施形態と異なる点は、初期遅延推定部30を追加した点である。それ以外の構成要素は、第2の実施形態と同じであるので、改めて説明しない。
初期遅延推定部30は、周波数成分別にタップ係数のタップ開始点stを推定するものである。初期遅延推定部30は、受信信号線側のD/A3と係数選択部21との間に設けられたものであり、エコー消去量計算器20から後述する動作リセットのための信号線が結ばれている。
図7は、初期遅延推定部30の詳細な構成を示すブロック図である。図7において、初期遅延推定部30は、周波数変換部31r、周波数選択部32r、パワー計算部33r、時間差計算部34、周波数別時間差乖離判定部35、初期遅延量決定部36、パワー計算部33s、周波数選択部32s、周波数変換部31sを少なくとも有する。
周波数変換部31rは、受信側の周波数変換部である。周波数変換部31rは、音声検出器12から音声ありを示すv_flgを受け、時間軸信号の遠端入力信号x(n)を周波数成分に変換するものである。
また、周波数変換部31sは、送信側の周波数変換部である。周波数変換部31sは、音声検出器12から音声ありを示すv_flgを受け、エコー信号y(n)を周波数成分に変換するものである。
周波数選択部32rは、受信側の周波数選択部である。周波数選択部32rは、周波数変換部31rにより変換された全周波数成分のうち、1個以上の予め定めた周波数成分を選択するものである。
また、周波数選択部32sは、送信側の周波数選択部である。周波数選択部32sは、周波数変換部31sにより変換された全周波数成分のうち、受信側の周波数選択部32rが選択した周波数成分を選択するものである。
パワー計算部33rは、受信側のパワー計算部である。パワー計算部33rは、周波数選択部32rが選択した周波数成分のパワーを求めるものである。
また、パワー計算部33sは、周波数選択部32sが選択した周波数成分のパワーを求めるものである。
時間差計算部34は、パワー計算部33rが計算した受信側の各周波数成分の各フレームタイミング毎のパワー値に基づき各パワー値の長期平滑値を求めて、受信側の各周波数成分の立ち上がりを検出するものである。
また、時間差計算部34は、受信側と同様にして、パワー計算部33sが計算した送信側の各周波数成分の各フレームタイミング毎のパワー値に基づき各パワー値の長期平滑値を求めて、送信側の各周波数成分の立ち上がりを検出するものである。
さらに、時間差計算部34は、受信側の各周波数成分の立ち上がり時刻と、送信側の各周波数成分の立ち上がり時刻とに基づいて、各周波数成分の受信側と送信側との立ち上がり時間差を求めるものである。
周波数別時間差乖離判定部35は、時間差計算部34が求めた各周波数成分の立ち上がり時間差のばらつきの最大値を周波数成分毎に求めるものである。また、周波数別時間差乖離判定部35は、各周波数成分の立ち上がり時間差の最大値が閾値以下であるか否かを判定し(すなわち、各周波数成分の立ち上がり時間差が所定範囲内であるか否かを判定し)、閾値以下である場合に、各周波数の時間差の中から最小の時間差を、エコーパスの初期遅延推定値として初期遅延量決定部36に与えるものである。
初期遅延量決定部36は、周波数別時間差乖離判定部35からの各周波数の初期遅延推定値を時間毎に複数個保持し、これら複数個の初期遅延推定値が予め定めた所定範囲内にあるときに、これらの中から最終的なエコーパスの初期遅延量を決定して、係数選択部21に対して適応フィルタ11のタップ開始点stを与えるものである。
(C−2)第3の実施形態の動作
続いて、第3の実施形態のエコーキャンセラ100Cにおける動作を図6及び図7を参照しながら詳細に説明する。以下では、第3の実施形態で特徴的な初期遅延推定部30の動作を詳細に説明する。
遠端話者から信号x(n)は、初期遅延推定部30に入力される。一方で、初期遅延推定部30には、送信入力端子Sin7からディジタル化された入力信号、すなわちエコー信号y(n)が入力される。また、初期遅延推定部30には、音声検出器12から音声検出を示すv_flgが入力される。
初期遅延推定部30は、上記の各信号の入力に基づき、エコーパスの初期遅延idを推定し、係数選択部21に対してタップ開始点st=idとするための信号stを出力する。
次に、図7を用いて、初期遅延推定部30における詳細な処理を説明する。
初期遅延推定部30に入力した遠端入力信号x(n)は、一旦、分析窓長分のJサンプルのデータとして受信側周波数変換部31rに蓄積される。ここで、第3の実施形態では、例えば8サンプルのデータを蓄積する場合を例示する。
受信側周波数変換部31rは、音声検出器12から「音声あり」を示す信号v_flg=1を入力すると、時間軸信号を周波数成分に変換する。
ここで、周波数の変換には、特に限定されるものでなく、広く適用することができ、例えば、公知の高速フーリエ変換(以後FFT)を用いても良いし、あるいは急峻な特性をもつ帯域通過フィルタを帯域ごとに並べたフィルタバンクを用いるようにしても良い。第3の実施形態では、例えば、8点データのFFTを用いた。第3の実施形態では、例えば、サンプリング周波数を8000Hzとしたので、FFTの結果、計算される周波数成分は1000Hz〜8000Hzの1000Hz刻みの周波数成分が求まる。ただし、実際には5000〜8000Hzの成分は1000〜4000Hzの成分を折り返したものとなる。
いま、分析窓長をJサンプルとすると計算される周波数成分もJ個となる。実際には上記のように成分の半分は、中心周波数で折り返した残りの対と同じ値を示すので異なる処理をすればよいのはJ/2個であるが、ここでは説明の簡単のため周波数成分はJ個として以後説明を続ける。
受信側周波数変換部31rは、所定のJサンプルごと、すなわち1フレームごとに、周波数変換を行い、信号x(n)(n=1〜J)を、成分X(fn)(n=1〜J)に変換して、受信側周波数選択部32rに出力する。
受信側周波数選択部32rは、X(fn)のうち予め定めた方法で、いくつかの周波数成分を選択する。
ここで、周波数成分の選択方法としては、例えば、音声成分が典型的に最も強く入手できることが多いf1=1000Hzの成分X(f1)と、副成分としてf3=3000Hzの成分X(f3)との2つの成分を選択するようにした。なお、ここでは選択数を2個としたが、選択数が2個に限定されないのはもちろんである。
受信側周波数選択部32rにより選択された周波数成分X(fn)は、受信側パワー計算部33rに出力される。
受信側パワー計算部33rは、入力された1又は複数の周波数成分のパワーFPOW(fn,I)を計算する。
ここで、fnは第n周波数、Iは第Iフレームであることを表している。例えば、動作開始から1フレーム目の1000Hzの周波数成分であれば、そのパワーはFPOW(f1,1)のように表される。
受信側パワー計算部32rにより計算されたフレームタイミング毎のパワー値FPOW(fn,I)は、時間差計算部34に与えられる。
時間差計算部34は、各パワー値FPOW(fn,I)の長期平滑値LONG_FPOW(fn,I)を式(22)のようにそれぞれ計算する。
LONG_FPOW(fn,I)
=δ30×LONG_FPOW(fn,I−1)
+(1.0−δ30)×FPOW(fn,I) …(22)
ここで、LONG_FPOW(fn、I)の初期値は0である。δ30は、平滑の滑らかさを表す定数であり、0<δ30<1.0を満たす定数である。δ30は、大きければ平滑の度合いが滑らかになり、小さければLONG_FPOW(fn,I)の値はFPOW(fn,I)そのものに近くなり、平滑効果が小さくなる。第3の実施形態では、例えばδ30=0.99を用いたが、この値に限定しない。
そして、下記の条件3a、3bを満足するとき、
そのフレーム番号Iを受信側第n周波数成分の立ち上がりフレーム番号R_ID(fn)とし、RFD=1とする。
(条件3a)
前回フレームはRFD=0
(条件3b)
今回フレームで
FPOW(fn,I)≧LONG_FPOW(fn,I)+δ31 …(23)
条件3aかつ条件3bでRFD=1とする。
このとき、立ち上がりフレーム番号R_ID(fn)とする。
ここで、δ31は音声周波数成分検出の閾値であり、第3の実施形態では、δ31=12(dB)を用いたが、これに限定しない。
条件3aは、一旦音声周波数成分が検出されてRFD=1になれば、音声期間中はLONG_FPOW(fn,I)がFPOW(fn,I)に近い値まで大きくなってくるまでは成立しなくなる。従って、RFDは「ある周波数における急なパワーの立ち上がりの瞬間」を検出したフラグを表すことになる。
第3の実施形態では、時間差検出部34が、以上のように周波数パワーの立ち上がりタイミングフレーム番号R_ID(fn)を検出するようにしたが、周波数パワーの立ち上がりタイミング検出はこの方法に限定せず、要は音声周波数成分の立ち上がりが検出できる方法であればどのような方法であってもよい。
以上、受信側の周波数成分の立ち上がり検出を説明したが、時間差検出部34は、送信側も同様に周波数パワーの立ち上がり検出を行う。
すなわち、送信側周波数変換部31sでは所定のJサンプルフレームごとに周波数変換を行い、信号y(n)(n=1〜J)を成分Y(fn)(n=1〜J)に変換して、送信側周波数選択部32sに出力する。
送信側周波数選択部32sは、Y(fn)のうち受信側と同じ周波数成分を必ず選択する。第3の実施形態では、f1(1000Hzの成分)とf3(3000Hzの成分)を選択する。
送信側周波数選択部32sにより選択された周波数成分Y(fn)は、送信側パワー計算部33sに与えられ、送信側パワー計算部33sは、パワーFPOW_s(fn,I)を計算し、時間差計算部34に与える。
時間差計算部34は、FPOW_s(fn,I)に関しても、受信側FPOW(fn,I)と同様にして、送信側第n周波数成分立ち上がりフレーム番号S_ID(fn)を求める。
次に、時間差計算部34は、各周波数成分でのR_ID(fn)とS_ID(fn)から、第n周波数成分の立ち上がり時間差fn_idを計算する。
fn_id=S_D(fn)−R_ID(fn) …(24)
例えば、第1周波数成分のたち上がり時間差fl_idは式(24−1)で計算できる。
fl_id=S_ID(f1)−R_ID(f1) …(24−1)
ここで、時間差fl_idは、1000Hz成分の成分が受信側から出力された後、送信側に回り込み始めたフレーム数が何個だったかを表す数となる。
同様に残りの他の選択済み周波数成分に関しても式(24)を行う。第3の実施形態では、成分f1のほかに成分f3に関しても、同様に式(24)を実行する。
そして、時間差計算部34は、選択された周波数毎の時間差fn_idを、周波数別時間差乖離判定部35に出力する。
周波数別時間差乖離判定部35は、各周波数成分ごとの時間差fn_idのばらつきの最大値MAX_DIF_fn_idを計算する。
ここで、第3の実施形態は、例えば2個の周波数成分が用いられているので、式(25)のようになるが、周波数の選択数を多くしたときは選択した周波数の分だけ式(25)を計算するようにすればよい。
MAX_DIF_fn_id(K)=MAX{f2_id−f1_id} …(25)
ここで、Kは、第K回目の最大値計算の結果であることを表している。また、MAX{}は、最大値を計算する関数である。
周波数別時間差乖離判定部35は、MAX_DIF_fn_id(K)が式(26)を満たすとき、MAX_DIF_fn_id(K)が初期遅延推定値の有力候補susup_id(K)であるとして初期遅延量決定部36に出力する。なお、式(26)を満足しないとき、周波数別時間差乖離判定部35は初期遅延量決定部36になにも出力しない。
MAX_DIF_fn_id(K)≦δ32 …(26)
ここで、δ32は、ばらつきフレーム数を許容する閾値であり、第3の実施形態では例えばδ32=1としたが、これに限定されない。
本来、式(24)は、音声信号がエコーパスを経由する時間が周波数にかかわらず一定であることを利用して、初期遅延の推定計算結果の確からしさを向上するものである。エコーパスを経由する時間は、スピーカ4とマイクロフォン5との間の距離と音速によって物理的に一意に定まる量である。
一方、近端話者のエコーパスにはさまざまな雑音源が存在しており、エコーパスの初期遅延の計算を妨害する。例えば、初期遅延の推定計算の観点から言えば、近端話者の音声信号でさえエコーパス推定妨害雑音として作用する。
しかしながら、一般にはエコーと近端話者側雑音が同一音声信号であることは非常にまれであるので、そのことをエコー経路の初期遅延推定に利用するのである。つまり、エコーパス測定する間、近端話者が話したり、例えばオフィスにある何かの装置が動きだしたりすることにとって、周波数ごとにエコーパスの初期遅延推定量に大きな違いがあれば、それはエコーパス初期遅延の推定が不適切な状態なことを意味する。そのときはエコーパス初期遅延の推定値を用いない。
第3の実施形態では、上述したように、近端話者側雑音によってエコーパスの初期遅延推定計算が擾乱されることを防止している。
初期遅延量決定部36は、susup_id(K)を一旦複数個保持し、式(27)のように、susup_id(K)のばらつきの最大値MAX_DIF_susup_id(K2)を計算する。なお、第3の実施形態では、保持の回数を2回としたが、この値に限定されない。
MAX_DIF_susup_id(K2)
=MAX{susup_id(K2)} …(27)
ここで、K2は、K2回目の最大値計算の結果であることを表す。
そして、MAX_DIF_susup_id(K2)が式(28)を満足するとき、初期遅延量決定部26は、以下のようにして、係数選択部21に対してタップ開始点stを出力する。
MAX_DIF_susup_id(K2)≦δ33 …(28)
ここで、δ33は、検出値のばらつきを許容する閾値であり、第3の実施形態ではδ32=1としたがこれに限定されるものではない。
初期遅延量決定部36は、最も小さい時間差を表す式(24)の時間差fn_id、すなわち、フレーム数の差を式(29)のようにサンプル差に変換して、タップ係数開始点stを係数選択部21に出力する。
st=J×(MIN{fn_id}−δ34) …(29)
ここで、δ34はマージンフレーム数を表し、Jはフレームのサンプル数を表す。第3の実施形態では、例えば、δ34=0としてマージン設定したが、例えば、フレーム長が大きいときや、音声信号にノイズが多いことが予めわかっているときにはδ34に適宜マージンフレーム数を設定するようにしても良い。
初期遅延量決定部36が式(28)で複数の候補でばらつきを計算するのは、エコーパス初期遅延の推定値の確からしさを向上するためである。式(26)では各周波数別に遅延の推定量が一致することを確認したが、式(28)では時間別に複数回での実行した計算結果が一致することを確認して一層エコーパス初期遅延推定計算結果の確からしさを向上するものである。
初期遅延量決定部36は、式(29)によって計算されるstが求まらないうちはst=0を係数選択部21に出力し、一旦式(29)式によってstが計算されたときはその値を係数選択部21に出力する。
係数選択部21は、第2の実施形態で説明したようにstをタップ係数開始サンプル点として動作し、あとは第2の実施例で説明したと同じように動作する。
一方、初期遅延推定部30がエコー消去量計算器20からリセット信号span−resetを入力されたときは、初期遅延推定部30はすべての内部状態を初期状態にリセットし、第3の実施形態で説明した動作を最初から行うこととする。
(C−3)第3の実施形態の効果
上記のように、第3の実施形態によれば、第2の実施形態の効果に加え、近端話者の位置変化ではなく、エコー経路の初期遅延自体が変わるような場合にも対応できるようになる。
また、第3の実施形態によれば、装置のスピーカ4とマイクロフォン5との間の距離が一定でなく、しばしば変化する装置、例えばスピーカ4やマイクロフォン5とが電気コードとジャックで装置本体と接続されるような形式の装置であっても、無駄なくフィルタの係数タップを設定することで、余分な動作エネルギーを節約できると共に、エコーキャンセラの追従動作を速くし、しかもエコー消去性能の劣化が発生しないエコーキャンセラを提供できる。
(D)第4の実施形態
次に、本発明のエコーキャンセラの第4の実施形態を図面を参照しながら説明する。
(D−1)第4の実施形態の構成
図8は、第4の実施形態のエコーキャンセラ100Dの構成を示すブロック図である。
第4の実施形態が、第3の実施形態と異なる点は、初期遅延推定部30に代えて初期遅延及びエコー状態判定部40を備えること、打ち消し加算器9と送信入力端子Sin7との間にスイッチ48を備えること、スイッチ48と初期遅延及びエコー状態判定部40の間に省力優先判定部49を備える点である。それ以外の構成要素は、第3の実施形態と同じであるので改めて説明はしない。
初期遅延及びエコー状態判定部40は、第3の実施形態と同様に初期遅延量を推定すると共に、次の処理を行うものである。
初期遅延及びエコー状態判定部40は、音声検出器12から音声ありを示すv_flg=1を受け、遠端入力信号x(n)及び送信入力信号y(n)が入力すると、遠端入力信号x(n)の大きさと送信入力信号y(n)の大きさとに基づいて、エコー経路の信号減衰量であるエコーロスを計算し、当該エコーロスが閾値よりも大きい場合に、省電力優先判定部49にエコーキャンセラ停止信号を出力するものである。
また、初期遅延及びエコー状態判定部40は、音声検出器12から音声ありを示すv_flg=1を受け、送信入力信号y(n)が入力すると、音声検出器12の音声検出期間での、エコー信号の大きさと背景ノイズの大きさの比又は差分を計算し、その計算結果が閾値を超えたときに、省電力優先判定部49にエコーキャンセラ停止信号を出力するものである。
スイッチ48は、初期状態では端子aに接続し、省電力優先判定部49からの切替指示により端子bに切り替えるものである。
省電力優先判定部49は、後述するエコーロス計算部43又はキャンセル有効判定部46からエコーキャンセラ停止信号を受信すると、スイッチ48に対して切替指示を行うものである。
図9は、初期遅延及びエコー状態判定部40の詳細な構成を示すブロック図である。
図9において、初期遅延及びエコー状態判定部40は、周波数変換部31r、周波数選択部42r、パワー計算部33r、時間差計算部34、周波数別時間差乖離判定部35、初期遅延量決定部36、周波数変換部41、周波数選択部42s、パワー計算部33s、エコーロス計算部43、エコー/ノイズ比計算部44、キャンセル有効判定部46を少なくとも有する。
図9において、図7に示す初期遅延推定部30の内部構成と異なるのは、周波数変換部41、周波数選択部42r、周波数選択部42s、エコーロス計算部43、エコー/ノイズ比計算部44、キャンセル有効判定部46であり、それ以外の構成要素は図7の第3の実施形態の構成要素と同じである。
周波数変換部41は、送信側の周波数変換部であり、エコー信号y(n)を周波数成分に変換するものである。周波数変換部41は、音声検出器12から音声検出信号の入力がない点で、図7の送信側の周波数変換部31sと異なる。
エコーロス計算部43は、音声検出器12から音声ありを示す音声検出信号v_flg=1を受け、音声ありのときの遠端入力信号x(n)のパワー、と送信入力信号y(n)のパワーとに基づいて、計算時刻nでの音響エコー経路の信号減衰量(エコーロス)を求め、そのエコーロスが閾値を越えたとき、エコーキャンセラ処理を不要な環境と判定し、エコーキャンセラ100Dの動作を停止させるエコーキャンセラ停止信号を、省力優先判定部49に出力するものである。
エコー/ノイズ比計算部44は、音声検出器12の音声検出信号に基づき、音声ありを示すv_flg=1がないときの近端入力信号の大きさをノイズの大きさとし、音声ありを示すv_flg=1があるときの近端入力信号の大きさをエコー信号の大きさとし、エコー信号の大きさとノイズの大きさとの比を計算し、このエコー/ノイズ比と閾値との比較により、閾値を超えたとき、エコー/ノイズ比を周波数選択部42sに出力するものである。
周波数選択部42sは、エコー/ノイズ比計算部44から閾値を超えたエコー/ノイズ比を受け取ると、エコー信号の大きさが大きいものから所定数選択して、その選択した周波数をキャンセル有効判定部46に与えるものである。
周波数選択部42rは、周波数変換部31rからの周波数成分のうち、周波数選択部42sが選択した周波数成分を選択して、パワー計算部33rに与えるものである。
キャンセル有効判定部46は、周波数選択部42sが選択した周波数の個数に応じて、エコーキャンセラ100Dの動作をキャンセルさせるか否かを判定し、エコーキャンセラ100dを動作させてもエコーと区別できないほど、近端ノイズが多い場合には、エコーキャンセラ100Dの動作を停止させるエコーキャンセラ停止信号を、省力優先判定部49に出力するものである。
(D−2)第4の実施形態の動作
次に、第4の実施形態のエコーキャンセラ100Dにおける動作を図8及び図9を参照しながら詳細に説明する。
以下では、第3の実施形態と異なる第4の実施形態の構成要素の動作を中心に説明する。また、第1〜第3の実施形態の同じ番号が付与した構成要素の動作は、第1〜第3の実施形態の動作と同じであるのでここでは説明しない。ただし、音声検出部12のように内部動作は変わらないが出力信号を分岐して第4の実施形態の新しい構成要素に入力するような場合に関しては適宜説明を加える。
図8において、初期状態において、スイッチ48は端子aに接続している。
遠端入力信号x(n)は、初期遅延及びエコー状態判定部40に入力される。一方で、初期遅延及びエコー状態判定部40は、音声検出器12からの音声検出信号v_flg、エコー消去量計算器20からの出力span_reset、送信入力端子Sin7からの入力信号y(n)が入力されている。
図9を用いて初期遅延及びエコー状態判定部40の動作を説明する。
遠端からの遠端入力信号x(n)は、受信側周波数変換部31rとエコーロス計算部43とに入力される。なお、受信側周波数変換部31rの動作は第3の実施形態と同様である。
エコーロス計算部43は、遠端入力信号x(n)の他に、送信入力端子Sin7からエコー信号y(n)と、音声検出器12から音声検出信号v_flgとが入力される。エコーロス計算部43は、以下のようにして、省電力動作移行処理を行う。
エコーロス計算部43は、音声検出器12から音声ありを示すv_flg=1が入力されると、遠端入力信号x(n)のパワー時間平均値x_avel(n)とエコーのパワー時間平均値y_avel(n)を式(30)、式(31)のように計算する。
x_avel(n)
=δ40×x (n)+(1.0−δ40)×x_avel(n) …(30)
y_avel(n)
=δ40×y (n)+(1.0−δ40)×y_avel(n) …(31)
ここで、δ40は、0<δ40<1.0の条件を満足する定数である。また、δ40は、信号の平均の長さを制御する平滑定数であって、δ40が大きければ雑音の影響を受けやすいが音声パワーの変動には追従性が良く、小さければ雑音の影響は受けにくいが音声パワーへの変動の追従が遅くなる。第3の実施形態では、比較的ゆっくりした信号の要素でエコーロスを計算するのが望ましいので、例えばδ40=0.001としたが、この値に限定されない。また、第4の実施形態の式(30)、式(31)では、パワーの平均値を計算したが、信号の絶対値を計算するようにしてもよい。
次に、エコーロス計算部43は、式(32)のようにして、エコーロス量AECHO(n)を計算する。
AECHO(n)
=10LOG10(x_avel(n)/y_avel(n)) (dB) …(32)
そして、エコーロス計算部43は、計算したエコーロス量AECHO(n)を予め定めた閾値δ41と比較して、式(33)が成立するときに省力優先判定部49にエコーキャンセラ停止信号P_SAVE=1を出力する。
AECHO(n)≧δ41 …(33)
ここで、第4の実施形態実施例では、閾値δ41=40(dB)としたが、これに限定しない。これは、下記のような事情に鑑みたものである。
例えば、電話などでは伝送路中の信号レベルは国際通信規格ITU−T G.711で規定される音声レベルである、−20dBmレベル近辺に調整されることが多い。このとき、エコーパスで40dBものエコーロスが確保された場合、遠端話者には会話に支障になるほどのエコーは回り込まない。むしろこのような場合にエコーキャンセラを動作させても、近端話者信号をエコーと誤判定してキャンセルする危険のほうが大きいことがしばしばである。従って、このようなときはむしろ消費電力を節約することを重視し、エコーキャンセラの動作を停止するのである。
省力優先判定部49は、後述するキャンセル有効判定部46からもエコーキャンセラ停止信号P_SAVEが入力される。省力優先判定部49は、エコーロス計算部43とキャンセル有効判定部46のいずれか一方から、エコーキャンセラ停止信号P_SAVE=1が入力されたときには、スイッチ48の端子をbに切り替えるとともに、図示しないエコーキャンセラの内部状態をすべてリセットしてエコーキャンセラの動作を停止する。なお、キャンセル有効判定部46の動作は後述する。
一方、遠端入力信号x(n)は受信側周波数変換部31rで周波数軸へ変換された後、受信側周波数選択部42rに入力される。
受信側周波数選択部42rは、独自の周波数成分の選択を行わず、後述する送信側周波数選択部42sの周波数選択に従う点が第3の実施形態と異なっている。
次に、送信側周波数選択部42sまでの動作を順に説明する。送信入力信号y(n)は送信側周波数変換部41に入力される。
送信側周波数変換部41は、第3の実施形態の送信側周波数変換部31sと異なり、音声検出器12の音声検出信号の如何にかかわらず、時間軸信号y(n)を周波数軸Y(fn)に変換して、エコー/ノイズ比計算部44に出力する。
ここで、第4の実施形態では、周波数変換部41として例えば8点FFTを用いたので、8個の周波数成分がエコー/ノイズ比計算部44に出力される。しかし、その周波数成分の個数は特に限定されない。
エコー/ノイズ比計算部44は、送信側周波数変換部41により変換された周波数成分を受け、以下に述べるように、ノイズレベル(背景ノイズレベル)と、エコーのレベルとの比を計算する。
また、エコー/ノイズ比計算部44には、音声検出部12からの音声検出信号v_flgが入力されているが、エコー/ノイズ比計算部44は、常時Y(fn)の大きさ|Y(fn)|を計算する。
ここで、v_flg=1の用途は次のようである。
音声検出器12から音声ありを示すv_flg=1が入力されていないタイミング(すなわちv_flg=0のタイミング)で計算された周波数成分の大きさ、|Y(fn)|v_flg0を直近のノイズレベルとする。
一方、音声検出器12から音声ありを示すv_flg=1が入力されたタイミングで計算された周波数成分の大きさ、|Y(fn)|v_flg1を直近のエコー信号レベルとする。
ここで、エコー/ノイズ比計算部44は、エコー周波数成分の大きさの計算に、v_flg=1を用いるのは、エコー源信号の有無を利用することによる。
第4の実施形態では、さらに、エコーによる初期遅延の影響があることから、|Y(fn)|v_flg0、|Y(fn)|v_flg1を予め定めた個数(第4の実施形態では例えば10個だがこれに限定しない)集めて、その平均を各々以下のようにする。なお、時間軸の平均で説明したような平滑方法を用いるようにしても良い。
AVL_|Y(fn)|v_flg0 …(34)
AVL_|Y(fn)|v_flg1 …(35)
そして、エコ/ノイズ比計算部44は、式(36)のようにして、エコーとノイズの大きさの比を計算する。
R_EN(fn)=
20LOG10(AVL_|Y(fn)|v_flg0/AVL_|Y(fn)|v_flg1)…(36)
ここで、n=1…J であり、第4の実施形態では、例えばn=8である。
そして、エコー/ノイズ比計算部44は、送信側周波数変換部41から入力されたJ個の周波数成分の値Y(fn)と、式(36)で計算したJ個のエコー/ノイズ比R_EN(fn)とを、送信側周波数選択部42sに出力する。
送信側周波数選択部42sは、まず式(37)を満足する周波数を、Ysusup(fn)として選別する。
R_EN(fn)≧δ42 …(37)
ここで、閾値δ42は、例えば3dBを用いたが、これに限定しない。
そして、送信側周波数選択部42sは、Ysusup(fn)のうち、|Y(fn)|v_flg1の値が大きい方から、予め定めたI個(第4の実施形態では、例えば2個)を選択し、その選択個数と選択した周波数fnをキャンセル有効判定部46に出力する。
また、送信側周波数選択部42sは、Ysusup(fn)が予め定めた個数Iに満たないときは、式(37)を満たした個数だけの周波数成分と、選択個数Iをキャンセル有効判定部46に出力する。
キャンセル有効判定部46は、送信側周波数選択部42sからの入力IがI>0のときは、選択個数Iと選択された周波数fnを、受信側周波数選択部42rに出力する。
受信側周波数選択部42rは、キャンセル有効判定部46から入力されたI個の周波数成分fnを自己の選択周波数成分として動作する。
また、キャンセル有効判定部46は、送信側周波数選択部42sからの入力IがI=0であるときは、下記のように動作する。
I=0は、すべての周波数成分でノイズに比べてエコー信号y(n)が小さい、すなわちエコーがノイズに埋もれて観測できないことを示している。第1の実施形態で説明したように、適応フィルタ11は、エコーがノイズに埋もれていては有効なタップ係数更新ができないから、適応フィルタを動作させても実際には意味がなく、無駄である。
そこで、キャンセル有効判定部46は、I=0のとき、省力優先判定部49に対して、エコーキャンセラ停止信号P_SAVE=1を出力する。
省力優先判定部49は、上述したようにエコーロス計算部43又はキャンセル有効判定部46のいずれか一方から、エコーキャンセラ停止信号P_SAVE=1が入力されたとき、スイッチ48を端子bに接続して送信信号を透過させるとともに、エコーキャンセラ100D全体の内部状態をリセットし動作を停止する。
(D−3)第4の実施形態の効果
以上のように、第4の実施形態は、新たに省力優先判定部49及びスイッチ48を備え、エコーロス計算部43が、エコーロスを計算して、エコーキャンセラがなくても十分エコーが小さいことを検出し、エコー/ノイズ比計算部44が近端ノイズとエコーの信号パワー比を検出し、キャンセル有効判定部46が、たとえエコーキャンセラを動作させてもエコーと区別できないほど、近端ノイズが多い環境であることを検出し、エコーロス計算部43又はキャンセル有効判定部46が、省力優先判定部49に対してエコーキャンセラの停止とリセット、さらに送信信号透過スイッチの切り替えを促す信号P_SAVEを出力するようにしたので、エコーキャンセラを動作させなくても十分にエコーが小さく実害にならない場合や、逆エコーとノイズが同レベルなのでエコー除去による音質の向上が期待できないような場合、無駄にエコーキャンセラを動作させないで、通話におけるエコーの影響変化させることなく、消費電力を省くことが可能なエコーキャンセラを提供できるのである。
(E)他の実施形態
第1〜第4の実施形態において、エコーキャンセラ100A〜100Dには一般に適応フィルタ11の係数更新と停止の制御を行うため、図示しない双方向通話検出器が用いられ、送信信号と遠端話者からの受信信号の両方がある、いわゆるダブルトーク状態では適応フィルタの適応動作を停止し、また、双方向通話検出器は、近端話者信号だけがある送信状態と、遠端話者の信号も近端話者の信号もない無音状態の時には、係数更新と擬似エコー作成動作の両方をとめるようにするこことが公知であるが、第1〜第4の実施形態にも上記の公知の双方向通話検出器を用いて同様の制御を加えるようにするようにてもよいのはもちろんである。
第4の実施形態において、エコー/ノイズ比計算部44に音声検出器12から音声ありの音声検出信号v_flgv_flg=1が入力されていないタイミングで計算された周波数成分の大きさ
|Y(fn)|v_flg0をノイズレベルとするようにしたが、
音声検出器12からの音声検出フラグを用いず、送信側周波数変換部41で計算した成分のうち最小の周波数成分の大きさをノイズレベルとして用いるようにしてもよい。
これは、人間音声は調波構造を持つので、実際には周波数成分が局所的に小さい部分が点在することを利用したものであり、このようにすると、VAD12からの音声検出フラグとパワー計算の連携を考慮する必要がなくなるため、装置の構成/動作を簡略化でき、ソフトウェアの規模、装置の規模を小さくすることができ、一層の省電力化を促すことができる。
さらに、第4の実施形態では、例えば8kHzをサンプリング周期としたが、サンプリング周波数がもっと大きい場合、例えば161kHz以上のサンプリング周波数を用いる場合などは、音声検出器12との連携をやめるだけでなく、固定的に周波数成分の高い成分のうち、例えば予め定めた成分(例えば7KHz成分)の大きさをノイズレベルとして用いるようにしてもよい。
これは、一般に人間音声の周波数スペクトルが高周波数になるにつれて小さくなるという公知の事実を用いたものであり、特に高周波数成分が小さいような音声(例えば日本語音声など)では本方法を用いることで、周波数選択の機構をより簡単にできるので更にハード、ソフトの小規模化と、装置の動作エネルギーの節約を行うことができる。
100A〜100D…エコーキャンセラ、
1…受信入力端子、2…受信出力端子、3…ディジタル/アナログ変換器(D/A)、
4…スピーカ、5…マイクロフォン、6…アナログ/ディジタル変換器(A/D)、
7…送信入力端子、8…送信出力端子、9…打ち消し加算器、10、21…係数選択部、
11…適応フィルタ、12…音声検出器(VAD)、13、20…エコー消去量計算器、
30…初期遅延推定部、40…初期遅延及びエコー状態判定部、48…スイッチ、
49…省力優先判定部、
11a…タップ係数部、11b…積和演算部、11c…保持レジスタ、
11d…係数更新部、
31r…周波数変換部、32r、42r…周波数選択部、33r…パワー計算部、
31s、41…周波数変換部、32s、42…周波数選択部、33s…パワー計算部、
34…時間差計算部、35…周波数別時間差乖離判定部、36…初期遅延量決定部、
43…エコーロス計算部、44…エコー/ノイズ比計算部、
46…キャンセル有効判定部。

Claims (21)

  1. 遠端入力信号を利用して擬似エコー信号を形成する適応フィルタと、上記擬似エコー信号を用いて近端入力信号に含まれるエコー信号を除去するエコー成分除去手段とを備えるエコーキャンセラにおいて、
    上記エコー成分除去手段に入力する上記近端入力信号と、上記エコー成分除去手段から出力する出力信号とに基づき、所定期間に亘るエコー消去量の平均値を求め、上記エコー消去量の平均値を逐次更新していき、上記適応フィルタの収束状態を検出し、上記適応フィルタの収束状態での収束時エコー消去量を求めるエコー消去量計算手段と、
    上記エコー消去量計算手段から上記適応フィルタの収束状態の検出信号を受けると、上記適応フィルタが保持する全タップ係数のパワー総和と、上記適応フィルタのタップ係数のうちタップの割り当てを外そうとするタップ係数の部分パワー和とのパワー比を求め、上記収束時エコー消去量と上記パワー比とに基づいて、エコー成分除去に実効的な有効タップ数を決定する係数選択手段と
    を備え、
    上記適応フィルタが、上記係数選択手段が決定した上記有効タップ数のみを更新することを特徴とするエコーキャンセラ。
  2. 上記係数選択手段が求める上記部分パワー和は、上記適応フィルタのタップ係数のうち、上記有効タップ数から時間的に後方部分のタップ係数の和であることを特徴とする請求項1に記載のエコーキャンセラ。
  3. 上記係数選択手段は、上記収束時エコー消去量と上記パワー比とに基づいて、以下の演算式により上記有効タップ数を求めることを特徴とする請求項1又は2に記載のエコーキャンセラ。
    Figure 0005321372
    ここで、Nは上記適応フィルタの全タップ数、mは第m番目のタップ位置、
    POW_LOG(m)はタップ数mとしたときの上記パワー比、
    hは適応フィルタのタップ係数、δacancはマージン閾値、
    Mは 0≦M≦N−1 の整数であり、 上記条件式の成立点を求めるために、m=Mとして順次代入される整数である。
    ACANCは上記エコー消去量を示す。
  4. 上記係数選択手段が、予め定めた方法によるタップ開始点と、上記演算式により求めたタップ数mを上記適応フィルタのタップ終了点とを上記適応フィルタに与えることで、上記有効タップ数を決定することを特徴とする請求項3に記載のエコーキャンセラ。
  5. 受信経路上に音声信号が入力したか否かを検出する音声検出手段を備え、
    上記エコー消去量計測手段は、上記音声検出手段が音声検出した場合のみ、上記エコー消去量の平均値を求めることを特徴とする請求項1〜4のいずれかに記載のエコーキャンセラ。
  6. 上記エコー消去量計算手段が、上記係数選択手段により有効タップ数が決定された後も、上記エコー消去量の平均値の更新継続を行い、上記エコー消去量の劣化を検出すると、上記係数選択手段に対してエコー消去性能劣化信号を与え、
    上記係数選択手段が、上記エコー消去性能劣化信号を受けると、上記適応フィルタを初期状態に戻す
    ことを特徴とする請求項1〜5のいずれかに記載のエコーキャンセラ。
  7. 上記エコー消去量計算手段が、上記エコー消去量の平均最大値を一定量リークした値と、エコー消去量の平均最大値を保持した値との大小関係により、上記エコー消去量の劣化を検出することを特徴とする請求項6に記載のエコーキャンセラ。
  8. 上記エコー消去量計算手段は、上記エコー消去量の短期間最大値が、上記エコー消去量の長期間最大値から所定値を差し引いた値よりも降下した場合、上記エコー消去量の劣化を検出することを特徴とする請求項7に記載のエコーキャンセラ。
  9. 係数選択手段が、上記適応フィルタに対して、タップ開始点を0、タップ終了点を上記適応フィルタの全タップ数を出力することを特徴とする請求項6に記載のエコーキャンセラ。
  10. 上記遠端入力信号及び上記近端入力信号に基づいて、エコー経路の初期遅延を推定する初期遅延推定手段を更に備えることを特徴とする請求項1〜9のいずれかに記載のエコーキャンセラ。
  11. 上記初期遅延推定手段は、
    上記遠端入力信号を周波数成分に変換する第1の周波数変換部と、
    上記第1の周波数変換部による変換された周波数成分のうち、1又は複数の周波数成分を選択する第1の周波数選択部と、
    上記第1の周波数選択部が選択した周波数成分のパワーを求める第1のパワー計算部と、
    上記エコー信号を周波数成分に変換する第2の周波数変換部と、
    上記第2の周波数変換部による変換された周波数成分のうち、1又は複数の周波数成分を選択する第2の周波数選択部と、
    上記第2の周波数選択部が選択した周波数成分のパワーを求める第2のパワー計算部と、
    上記第1のパワー計算部が求めた上記遠端入力信号の周波数毎のパワーの立ち上がりと、上記第2のパワー計算部が求めた上記エコー信号の周波数毎のパワーの立ち上がりとの時間差を求め、上記時間差に基づき、エコー経路の初期遅延量を求めて、上記適応フィルタのタップ開始点を決定する時間差計算部と
    を有することを特徴とする請求項10に記載のエコーキャンセラ。
  12. 上記初期遅延推定手段が、
    上記時間差計算部が求めた周波数毎の上記時間差から、エコー経路の初期遅延量のばらつきを求め、上記エコー経路の初期遅延量のばらつきが所定範囲内であるか否かを判定する周波数別時間差乖離判定部を更に備え、
    上記周波数別時間差乖離判定部が、上記エコー経路の初期遅延量のばらつきが所定範囲内であると判定されると、上記時間差計算部からの上記周波数毎の上記時間差の中から最小の時間差を、エコー経路の初期遅延量として上記適応フィルタのタップ開始点を決定することを特徴とする請求項11に記載のエコーキャンセラ。
  13. 上記初期遅延量推定手段が、
    上記時間差計算部からの周波数成分のうち、エコー経路の初期遅延量推定を時間毎に複数個保持し、複数個の推定値が予め定めた所定範囲内にあるときに、最終的なエコー経路の初期遅延推定量と設定し、エコー経路の初期遅延を上記適応フィルタのタップ開始点を決定する初期遅延量決定部を更に備えることを特徴とする請求項11に記載のエコーキャンセラ。
  14. 上記初期遅延量推定手段が、
    上記周波数別時間差乖離判定部が出力した、エコー経路の初期遅延量推定を時間ごとに複数個保持し、複数個の推定値が予め定めた所定範囲内にあるときに、最終的なエコー経路の初期遅延推定量と設定し、エコー経路の初期遅延を上記適応フィルタのタップ開始点を決定する初期遅延量決定部を更に備えることを特徴とする請求項12に記載のエコーキャンセラ。
  15. 上記音声検出手段による音声検出期間における上記遠端入力信号の大きさと、上記近端入力信号の大きさとに基づいて、エコー経路での音の減衰量を求め、上記減衰量と閾値との比較を行うエコーロス計算手段と、
    上記音声検出手段による音声検出結果に基づき、上記近端入力信号に含まれるエコー信号の大きさと上記近端入力信号に含まれるノイズの大きさから、上記エコー信号とノイズとの大きさの比又は差を求め、この比又は差と閾値との比較を行うエコー/ノイズ計算手段と、
    上記エコー/ノイズ計算手段からの比較結果に基づいて、当該エコーキャンセラの動作を有効にするか否かを判定する有効判定手段と、
    上記エコーロス計算手段による上記減衰量が閾値を超えた場合、又は、上記有効判定手段により当該エコーキャンセラの動作を停止させると判定した場合に、当該エコーキャンセラの動作を停止させ、上記近端入力信号を透過させる省力優先判定手段と
    を備えることを特徴とする請求項5〜14のいずれかに記載のエコーキャンセラ。
  16. 上記エコー/ノイズ計算手段が、上記近端入力信号に含まれるエコー信号のパワーとノイズのパワーの比又は差と、閾値との大小比較を、複数の周波数成分で行うことを特徴とする請求項15に記載のエコーキャンセラ。
  17. 上記有効判定手段が、上記有効判定手段による判定結果を受けて、予め定めた個数以下の複数周波数成分しか閾値を越えられないときに、エコーキャンセラの動作を停止することを特徴とする請求項15又は16に記載のエコーキャンセラ。
  18. 上記初期推定手段は、上記エコー/ノイズ計算手段による比又は差が閾値を超えた周波数成分のうち、エコーパワーの大きい周波数の順に、予め定めた個数の周波数成分を初期遅延の推定に選択することを特徴とする請求項10〜17のいずれかに記載のエコーキャンセラ。
  19. 遠端入力信号を利用して擬似エコー信号を形成する適応フィルタと、上記擬似エコー信号を用いて近端入力信号に含まれるエコー信号を除去するエコー成分除去手段とを備えるエコーキャンセラにおいて、
    受信経路上に音声信号が入力したか否かを検出する音声検出手段と、
    上記音声検出手段による音声検出結果に基づき、上記近端入力信号に含まれるエコー信号の大きさと上記近端入力信号に含まれるノイズの大きさから、上記エコー信号とノイズとの大きさの比又は差を求め、この比又は差と閾値との比較を行うエコー/ノイズ計算手段と、
    上記エコー/ノイズ計算手段からの比較結果に基づいて、当該エコーキャンセラの動作を有効にするか否かを判定する有効判定手段と、
    上記エコーロス計算手段による上記減衰量が閾値を超えた場合、又は、上記有効判定手段により当該エコーキャンセラの動作を停止させると判定した場合に、当該エコーキャンセラの動作を停止させ、上記近端入力信号を透過させる省力優先判定手段と
    を備えることを特徴とするエコーキャンセラ。
  20. 上記エコー/ノイズ計算手段が、上記近端入力信号に含まれるエコー信号のパワーとノイズのパワーの比又は差と、閾値との大小比較を、複数の周波数成分で行うことを特徴とする請求項19に記載のエコーキャンセラ。
  21. 上記有効判定手段が、上記有効判定手段による判定結果を受けて、予め定めた個数以下の複数周波数成分しか閾値を越えられないときに、エコーキャンセラの動作を停止することを特徴とする請求項19又は20に記載のエコーキャンセラ。
JP2009208337A 2009-09-09 2009-09-09 エコーキャンセラ Expired - Fee Related JP5321372B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009208337A JP5321372B2 (ja) 2009-09-09 2009-09-09 エコーキャンセラ
CN2010102088907A CN102025395A (zh) 2009-09-09 2010-06-18 回波抵消器
US12/877,990 US8280037B2 (en) 2009-09-09 2010-09-08 Echo canceller having its effective filter taps adaptively controlled with echo cancellation amount monitored

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009208337A JP5321372B2 (ja) 2009-09-09 2009-09-09 エコーキャンセラ

Publications (3)

Publication Number Publication Date
JP2011061449A JP2011061449A (ja) 2011-03-24
JP2011061449A5 JP2011061449A5 (ja) 2012-06-21
JP5321372B2 true JP5321372B2 (ja) 2013-10-23

Family

ID=43647777

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009208337A Expired - Fee Related JP5321372B2 (ja) 2009-09-09 2009-09-09 エコーキャンセラ

Country Status (3)

Country Link
US (1) US8280037B2 (ja)
JP (1) JP5321372B2 (ja)
CN (1) CN102025395A (ja)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1950739B1 (de) * 2007-01-23 2011-09-14 Siemens Aktiengesellschaft Österreich Verfahren zur Identifikation von Signalen gleichen Ursprungs
JP5347794B2 (ja) * 2009-07-21 2013-11-20 ヤマハ株式会社 エコー抑圧方法およびその装置
US8340278B2 (en) * 2009-11-20 2012-12-25 Texas Instruments Incorporated Method and apparatus for cross-talk resistant adaptive noise canceller
JP6363324B2 (ja) * 2010-10-08 2018-09-12 日本電気株式会社 信号処理装置、信号処理方法、及び信号処理プログラム
JP5510288B2 (ja) * 2010-11-24 2014-06-04 沖電気工業株式会社 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ
US8908877B2 (en) 2010-12-03 2014-12-09 Cirrus Logic, Inc. Ear-coupling detection and adjustment of adaptive response in noise-canceling in personal audio devices
CN103270552B (zh) 2010-12-03 2016-06-22 美国思睿逻辑有限公司 在个人语音装置中的适应性噪音消除器的监督控制
US20120140940A1 (en) * 2010-12-07 2012-06-07 Electronics And Telecommunications Research Institute Method and device for cancelling acoustic echo
WO2012153452A1 (ja) * 2011-05-10 2012-11-15 三菱電機株式会社 エコー消去装置およびエコー検出装置
US9824677B2 (en) 2011-06-03 2017-11-21 Cirrus Logic, Inc. Bandlimiting anti-noise in personal audio devices having adaptive noise cancellation (ANC)
US8958571B2 (en) 2011-06-03 2015-02-17 Cirrus Logic, Inc. MIC covering detection in personal audio devices
US9318094B2 (en) * 2011-06-03 2016-04-19 Cirrus Logic, Inc. Adaptive noise canceling architecture for a personal audio device
JP6064159B2 (ja) * 2011-07-11 2017-01-25 パナソニックIpマネジメント株式会社 エコーキャンセル装置、それを用いた会議システム、およびエコーキャンセル方法
JP2013030868A (ja) * 2011-07-27 2013-02-07 Sony Corp エコー除去装置、エコー除去方法、プログラムおよび記録媒体
TWI474638B (zh) * 2011-11-08 2015-02-21 Realtek Semiconductor Corp 消除傳輸埠間干擾之網路裝置及其消除傳輸埠間干擾之方法
JP5823845B2 (ja) * 2011-12-14 2015-11-25 ラピスセミコンダクタ株式会社 エコーキャンセラ装置及びエコーキャンセル方法
US9232071B2 (en) 2011-12-16 2016-01-05 Qualcomm Incorporated Optimizing audio processing functions by dynamically compensating for variable distances between speaker(s) and microphone(s) in a mobile device
US9654609B2 (en) 2011-12-16 2017-05-16 Qualcomm Incorporated Optimizing audio processing functions by dynamically compensating for variable distances between speaker(s) and microphone(s) in an accessory device
EP2798759A4 (en) 2011-12-20 2015-08-19 Intel Corp TECHNIQUES FOR TRANSMITTING AND RECEIVING SIMULTANEOUSLY ON THE SAME RADIO FREQUENCY CARRIER
US9318090B2 (en) 2012-05-10 2016-04-19 Cirrus Logic, Inc. Downlink tone detection and adaptation of a secondary path response model in an adaptive noise canceling system
US9123321B2 (en) 2012-05-10 2015-09-01 Cirrus Logic, Inc. Sequenced adaptation of anti-noise generator response and secondary path response in an adaptive noise canceling system
US20150078564A1 (en) * 2012-06-08 2015-03-19 Yongfang Guo Echo cancellation algorithm for long delayed echo
US9767828B1 (en) * 2012-06-27 2017-09-19 Amazon Technologies, Inc. Acoustic echo cancellation using visual cues
US9532139B1 (en) 2012-09-14 2016-12-27 Cirrus Logic, Inc. Dual-microphone frequency amplitude response self-calibration
US9697847B2 (en) * 2013-03-14 2017-07-04 Semiconductor Components Industries, Llc Acoustic signal processing system capable of detecting double-talk and method
US9414150B2 (en) 2013-03-14 2016-08-09 Cirrus Logic, Inc. Low-latency multi-driver adaptive noise canceling (ANC) system for a personal audio device
US9502020B1 (en) 2013-03-15 2016-11-22 Cirrus Logic, Inc. Robust adaptive noise canceling (ANC) in a personal audio device
US8879720B2 (en) * 2013-03-17 2014-11-04 Revolabs, Inc. Acoustic echo cancellation using a variable length adaptive filter
US10206032B2 (en) 2013-04-10 2019-02-12 Cirrus Logic, Inc. Systems and methods for multi-mode adaptive noise cancellation for audio headsets
US9462376B2 (en) 2013-04-16 2016-10-04 Cirrus Logic, Inc. Systems and methods for hybrid adaptive noise cancellation
US9460701B2 (en) 2013-04-17 2016-10-04 Cirrus Logic, Inc. Systems and methods for adaptive noise cancellation by biasing anti-noise level
US9478210B2 (en) 2013-04-17 2016-10-25 Cirrus Logic, Inc. Systems and methods for hybrid adaptive noise cancellation
US9578432B1 (en) 2013-04-24 2017-02-21 Cirrus Logic, Inc. Metric and tool to evaluate secondary path design in adaptive noise cancellation systems
US9154187B2 (en) 2013-05-24 2015-10-06 Nxp B.V. System and method for operating a filter for echo cancellation
GB201309779D0 (en) * 2013-05-31 2013-07-17 Microsoft Corp Echo removal
GB201309773D0 (en) 2013-05-31 2013-07-17 Microsoft Corp Echo removal
US9666176B2 (en) 2013-09-13 2017-05-30 Cirrus Logic, Inc. Systems and methods for adaptive noise cancellation by adaptively shaping internal white noise to train a secondary path
US9620101B1 (en) 2013-10-08 2017-04-11 Cirrus Logic, Inc. Systems and methods for maintaining playback fidelity in an audio system with adaptive noise cancellation
US9704472B2 (en) 2013-12-10 2017-07-11 Cirrus Logic, Inc. Systems and methods for sharing secondary path information between audio channels in an adaptive noise cancellation system
US10382864B2 (en) 2013-12-10 2019-08-13 Cirrus Logic, Inc. Systems and methods for providing adaptive playback equalization in an audio device
US10219071B2 (en) 2013-12-10 2019-02-26 Cirrus Logic, Inc. Systems and methods for bandlimiting anti-noise in personal audio devices having adaptive noise cancellation
US10044527B2 (en) 2014-02-25 2018-08-07 Intel Corporation Apparatus, system and method of simultaneous transmit and receive (STR) wireless communication
US9479860B2 (en) 2014-03-07 2016-10-25 Cirrus Logic, Inc. Systems and methods for enhancing performance of audio transducer based on detection of transducer status
US10181315B2 (en) 2014-06-13 2019-01-15 Cirrus Logic, Inc. Systems and methods for selectively enabling and disabling adaptation of an adaptive noise cancellation system
US9478212B1 (en) 2014-09-03 2016-10-25 Cirrus Logic, Inc. Systems and methods for use of adaptive secondary path estimate to control equalization in an audio device
JP6201949B2 (ja) * 2014-10-08 2017-09-27 株式会社Jvcケンウッド エコーキャンセル装置、エコーキャンセルプログラム及びエコーキャンセル方法
US9552805B2 (en) 2014-12-19 2017-01-24 Cirrus Logic, Inc. Systems and methods for performance and stability control for feedback adaptive noise cancellation
JP6964581B2 (ja) 2015-08-20 2021-11-10 シーラス ロジック インターナショナル セミコンダクター リミテッド 固定応答フィルタによって部分的に提供されるフィードバック応答を有するフィードバック適応雑音消去(anc)コントローラおよび方法
US9578415B1 (en) 2015-08-21 2017-02-21 Cirrus Logic, Inc. Hybrid adaptive noise cancellation system with filtered error microphone signal
US9923592B2 (en) 2015-12-26 2018-03-20 Intel Corporation Echo cancellation using minimal complexity in a device
US10013966B2 (en) 2016-03-15 2018-07-03 Cirrus Logic, Inc. Systems and methods for adaptive active noise cancellation for multiple-driver personal audio device
CN105872156B (zh) * 2016-05-25 2019-02-12 腾讯科技(深圳)有限公司 一种回声时延跟踪方法及装置
WO2018026372A1 (en) * 2016-08-04 2018-02-08 Hewlett-Packard Development Company, L.P. Frequency band selection
US10177810B2 (en) * 2016-09-02 2019-01-08 Marvell World Trade Ltd. Systems and methods for echo or interference cancellation power-saving management in a communication system
US10594869B2 (en) * 2017-08-03 2020-03-17 Bose Corporation Mitigating impact of double talk for residual echo suppressors
US10542153B2 (en) 2017-08-03 2020-01-21 Bose Corporation Multi-channel residual echo suppression
CN111052767B (zh) * 2017-08-28 2022-04-15 索尼公司 音频处理装置、音频处理方法以及信息处理装置
WO2019056372A1 (en) * 2017-09-25 2019-03-28 Global Silicon Limited ADAPTIVE FILTER
US10863269B2 (en) 2017-10-03 2020-12-08 Bose Corporation Spatial double-talk detector
CN111213359B (zh) * 2017-10-04 2021-09-10 主动音频有限公司 回声消除器和用于回声消除器的方法
US11363147B2 (en) 2018-09-25 2022-06-14 Sorenson Ip Holdings, Llc Receive-path signal gain operations
KR102167469B1 (ko) * 2018-12-19 2020-10-19 주식회사 이엠텍 피드백 처리 방법
JP6635394B1 (ja) * 2019-01-29 2020-01-22 パナソニックIpマネジメント株式会社 音声処理装置および音声処理方法
US10964305B2 (en) 2019-05-20 2021-03-30 Bose Corporation Mitigating impact of double talk for residual echo suppressors
CN112491443B (zh) * 2019-09-11 2022-10-28 瑞昱半导体股份有限公司 具有回音消除省电机制的电子系统及相关回音消除方法
CN113067955B (zh) * 2019-12-13 2024-03-08 瑞昱半导体股份有限公司 通信装置及回音消除方法
US11875810B1 (en) 2021-09-29 2024-01-16 Amazon Technologies, Inc. Echo cancellation using neural networks for environments with unsynchronized devices for audio capture and rendering
JP2024008271A (ja) * 2022-07-07 2024-01-19 株式会社トランストロン エコー抑圧装置、エコー抑圧方法及びエコー抑圧プログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04119713A (ja) * 1990-09-10 1992-04-21 Fujitsu Ltd 適応フィルタ係数推定時に使用する修正定数の設定方法
JPH0537825A (ja) * 1991-07-29 1993-02-12 Sanyo Electric Co Ltd 自動等化回路
JP2643852B2 (ja) * 1994-08-31 1997-08-20 日本電気株式会社 エコーキャンセラ
JPH08251079A (ja) 1995-03-07 1996-09-27 Fujitsu Ltd エコーキャンセラ
JP3417159B2 (ja) 1995-08-11 2003-06-16 Kddi株式会社 エコーキャンセラ装置
JP2000341178A (ja) * 1999-05-27 2000-12-08 Fujitsu Ltd ハンズフリー通話装置
GB2379369B (en) * 2001-08-29 2005-06-29 Zarlink Semiconductor Inc Subband echo location and double-talk detection in communication systems
JP4403776B2 (ja) * 2003-11-05 2010-01-27 沖電気工業株式会社 エコーキャンセラ
JP2006157498A (ja) 2004-11-30 2006-06-15 Matsushita Electric Ind Co Ltd 音響エコーキャンセラとそれを用いたハンズフリー電話及び音響エコーキャンセル方法
JP4613705B2 (ja) * 2005-06-15 2011-01-19 沖電気工業株式会社 エコーキャンセラ
JP4692291B2 (ja) * 2006-01-13 2011-06-01 沖電気工業株式会社 エコーキャンセラ
JP5061853B2 (ja) * 2007-11-06 2012-10-31 沖電気工業株式会社 エコーキャンセラ及びエコーキャンセルプログラム
JP5096179B2 (ja) * 2008-01-28 2012-12-12 ルネサスエレクトロニクス株式会社 適応等化装置

Also Published As

Publication number Publication date
US8280037B2 (en) 2012-10-02
JP2011061449A (ja) 2011-03-24
US20110058667A1 (en) 2011-03-10
CN102025395A (zh) 2011-04-20

Similar Documents

Publication Publication Date Title
JP5321372B2 (ja) エコーキャンセラ
KR101089481B1 (ko) 스펙트럼 음향 특성에 기초한 더블 토크 검출 방법
JP5036874B2 (ja) エコー消去装置
KR100233463B1 (ko) 반향제거장치 및 방법
US8750491B2 (en) Mitigation of echo in voice communication using echo detection and adaptive non-linear processor
KR20010071860A (ko) 디지털 적응형 필터 및 이를 사용하는 반향 제거기
EP0671099A1 (en) A voice activity detector for an echo suppressor and an echo suppressor
EP3796629B1 (en) Double talk detection method, double talk detection device and echo cancellation system
KR20110042232A (ko) 프리-화이트닝을 사용한 lms 알고리즘에 의해 적응된 적응형 필터의 갱신된 필터 계수를 결정하기 위한 방법
JP4457639B2 (ja) エコーキャンセラ
JP2003500936A (ja) エコー抑止システムにおけるニアエンド音声信号の改善
JP4410819B2 (ja) エコーキャンセラ
US9602922B1 (en) Adaptive echo cancellation
JP5057109B2 (ja) エコーキャンセラ装置
JP4403776B2 (ja) エコーキャンセラ
JP4945429B2 (ja) エコー抑圧処理装置
JP3611493B2 (ja) エコーキャンセラ装置
JP4075835B2 (ja) 拡声通話装置
JP4709714B2 (ja) エコー消去装置、その方法、そのプログラム、およびその記録媒体
KR100272131B1 (ko) 계층적 구조의 적응반향 제거장치
JP4475155B2 (ja) エコーキャンセラ
JP5510288B2 (ja) 適応フィルタ次数制御装置及びプログラム、並びに、エコーキャンセラ
JP3466049B2 (ja) 通話機の音声スイッチ
JP2006033802A (ja) エコーキャンセル装置およびそれを用いた電話機、並びにエコーキャンセル方法
JP2003516673A (ja) 端末通信システムのエコー処理装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120507

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130612

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: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130701

R150 Certificate of patent or registration of utility model

Ref document number: 5321372

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees