IP Library Granted Patent US 9,001,994
Granted Patent B1
US 9,001,994 · App. 14/035,369 · Granted Apr 7, 2015

Non-uniform adaptive echo cancellation

Inventor: Jun Yang (San Jose, CA)
Assignee: Rawles LLC
H04B3/237
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,001,994
App. No.
14/035,369
Granted
Apr 7, 2015
Kind
B1
Abstract

An audio-based system may perform echo cancellation by decomposing an input audio signal and a corresponding reference signal into sub-signals corresponding to different frequency bands and implementing adaptive filtering independently for each frequency band. Computational resources may be allocated differently for each of the frequency bands depending on observed conditions. Orders of adaptive FIR filters may be varied during operation. Double talk detection and echo path change detection may be implemented for some frequency bands and not others. Filter adaption rates may also be assigned independently to each of the FIR filters, and may be changed during operation.

Claims (77)

1. A system, comprising:

one or more input filters configured to decompose a microphone signal into a plurality of input sub-signals corresponding respectively to different frequency bands;

one or more reference filters configured to decompose a reference audio signal into a plurality of reference sub-signals corresponding respectively to the different frequency bands;

a plurality of echo cancellers corresponding respectively to the different frequency bands, wherein the echo canceller corresponding to each frequency band is configured to suppress echoes in an input sub-signal corresponding to a frequency band based at least in part on a reference sub-signal corresponding to the frequency band to produce an echo-suppressed input sub-signal corresponding to the frequency band;

a signal synthesizer configured to synthesize an echo-suppressed output audio signal by summing the produced echo-suppressed input sub-signals; and

wherein a first adaptive finite impulse response filter of a first of the echo cancellers has a first filter order and a second adaptive finite impulse response filter of a second of the echo cancellers has a second filter order that is different than the first filter order; and

wherein the first filter order and the second filter order are based at least in part on a power of the reference sub-signal corresponding to the first of the echo cancellers in relation to an average of the powers of the reference sub-signals of the different frequency bands.

2. The system of claim 1 , wherein the first adaptive finite impulse response filter corresponds to a first of the frequency bands and has a tap length that is calculated as a minimum of N and a rounded integer of

( L e /R )* P x /Px average , where:

L e is an echo path length associated with the first frequency band;

R is a subsampling rate;

N is a rounded integer of L e /R;

P x is a power of the reference sub-signal corresponding to the first frequency band; and

Px average is an average of the powers of the reference sub-signals corresponding to all of the frequency bands.

3. The system of claim 1 , wherein:

the first adaptive finite impulse response filter corresponds to a first of the frequency bands;

the first filter order is increased in response to increasing length of an echo path associated with the first frequency band; and

the first filter order is decreased in response to decreasing length of the echo path associated with the first frequency band.

4. The system of claim 1 , wherein the first adaptive finite impulse response filter corresponds to a first of the frequency bands, further comprising:

an echo path change detector configured to detect a change in an echo path associated with the first of the frequency bands;

a double-talk detector configured to detect whether near-end audio is represented by the input sub-signal corresponding to the first of the frequency bands; and

wherein the first adaptive finite impulse response filter has an adaptation rate that increases in response to detection of a change in the echo path by the echo path change detector and decreases in response to detection of near-end audio by the double-talk detector.

5. A method, comprising:

decomposing an input audio signal into a plurality of input sub-signals corresponding respectively to different frequency bands;

decomposing a reference audio signal into a plurality of reference sub-signals corresponding respectively to the different frequency bands;

suppressing echo components of each input sub-signal based at least in part on the reference sub-signal corresponding to a same frequency band as the input sub-signal to produce echo-suppressed input sub-signals corresponding respectively to the different frequency bands;

dynamically allocating computational resources for the suppressing based at least in part on a power of at least the reference sub-signal, wherein greater computational resources are allocated for suppressing the echo components of a first of the input sub-signals than are allocated for suppressing the echo components of a second of the input sub-signals; and

synthesizing an echo-suppressed output audio signal from the echo-suppressed input sub-signals.

6. The method of claim 5 , wherein synthesizing the echo-suppressed output audio signal comprises summing the echo-suppressed input sub-signals.

7. The method of claim 5 , further comprising repeatedly performing the allocating based at least in part on one or more characteristics of one or more of the following:

the input sub-signals;

the reference sub-signals; or

the echo-suppressed sub-signals.

8. The method of claim 5 , further comprising:

determining power of each of the reference sub-signals;

determining power of each of the echo-suppressed sub-signals; and

wherein the allocating is performed independently for each of the input sub-signals based at least in part on the determined powers of the reference sub-signal and the echo-suppressed sub-signal corresponding to a same frequency band as the input sub-signal.

9. The method of claim 5 , wherein the allocating comprises configuring filter orders of multiple adaptive filters that are used in the suppressing, further comprising:

determining powers of the reference sub-signals;

determining echo path lengths associated with the frequency bands; and

varying the filter orders of the multiple adaptive filters independently based at least in part on the determined powers and the determined echo path lengths.

10. The method of claim 5 wherein:

the allocating comprises configuring filter orders of multiple adaptive filters that are used in the suppressing;

the filter order of a first of the adaptive filters corresponding to a first of the frequency bands is higher than the filter order of a second of the adaptive filters corresponding to a second of the frequency bands; and

the first frequency band is lower than the second frequency band.

11. The method of claim 5 , further comprising:

determining powers of the reference sub-signals;

determining powers of the echo-suppressed input sub-signals; and

wherein the suppressing comprises adaptively filtering the input sub-signals at respective adaptation rates that vary independently based at least in part on the determined powers of the reference sub-signals and the echo-suppressed input sub-signals.

12. The method of claim 5 , further comprising

detecting whether there are changes in echo paths associated with the different frequency bands;

detecting whether near-end audio is represented by one or more of the input sub-signals; and

wherein the suppressing comprises adaptively filtering the input sub-signal corresponding to a particular frequency band at an adaptation rate that varies by an amount that is based at least in part on (a) whether a change is detected in an echo path associated with the particular frequency band or (b) whether near-end audio is represented by the input sub-signal corresponding to the particular frequency band.

13. A method, comprising:

decomposing an input audio signal into a plurality of input sub-signals corresponding respectively to different frequency bands, wherein a first input sub-signal, from the plurality of input sub-signals, represents audio data of a first frequency band;

decomposing a reference audio signal into a plurality of reference sub-signals corresponding respectively to the different frequency bands, wherein a first reference sub-signal, from the plurality of reference sub-signals, represents audio data of the first frequency band;

suppressing echo components of the first input sub-signal based at least in part on the first reference sub-signal to produce a first echo-suppressed input sub-signal corresponding to the first frequency band;

calculating a variable adaptation rate based at least in part on power of the first reference sub-signal and power of the first echo-suppressed input sub-signal, wherein the suppressing comprises adaptively filtering the first input sub-signal using the variable adaptation rate; and

synthesizing a first echo-suppressed output audio signal from the first echo-suppressed input sub-signal.

14. The method of claim 13 , further comprising increasing the variable adaptation rate in response to a change in an echo path length associated with the first frequency band.

15. The method of claim 13 , further comprising decreasing the variable adaptation rate in response to detected near-end audio being in first input sub-signal.

16. The method of claim 13 , further comprising allocating computational resources for the suppressing, wherein greater computational resources are assigned for suppressing the echo components of the first input sub-signal of the input sub-signals than are assigned for suppressing the echo components of a second input sub-signal of the input sub-signals.

17. The method of claim 13 , further comprising allocating computational resources for the suppressing, wherein greater computational resources are assigned for suppressing the echo components of the first input sub-signal of the input sub-signals than are assigned for suppressing the echo components of a second input sub-signal of the input sub-signals, wherein the allocating comprises configuring filter orders of one or more adaptive filters that are used in the suppressing.

18. The system of claim 1 , wherein the first of the echo cancellers corresponds to a lower frequency band than the second of the echo cancellers and the first filter order is higher than the second filter order.

19. The method of claim 13 , further comprising dynamically allocating computational resources for the suppressing based at least in part on a power of the first reference sub-signal, wherein greater computational resources are assigned for suppressing the echo components of the first input sub-signal of the input sub-signals than are assigned for suppressing the echo components of a second input sub-signal of the input sub-signals.

20. A system, comprising:

one or more input filters configured to decompose a microphone signal into a plurality of input sub-signals corresponding respectively to different frequency bands;

one or more reference filters configured to decompose a reference audio signal into a plurality of reference sub-signals corresponding respectively to the different frequency bands;

a plurality of echo cancellers corresponding respectively to the different frequency bands, wherein the echo canceller corresponding to each frequency band is configured to suppress echoes in an input sub-signal corresponding to a frequency band based at least in part on a reference sub-signal corresponding to the frequency band to produce an echo-suppressed input sub-signal corresponding to the frequency band;

a signal synthesizer configured to synthesize an echo-suppressed output audio signal by summing the produced echo-suppressed input sub-signals; and

wherein a first adaptive finite impulse response filter of a first of the echo cancellers has a first filter order and a second adaptive finite impulse response filter of a second of the echo cancellers has a second filter order that is different than the first filter order; and

wherein the first filter order and the second filter order are based at least in part on a power estimation of the echo-suppressed sub-signal in relation to a power estimation of near-end audio in the input sub-signal.

21. The system of claim 20 , wherein the first adaptive finite impulse response filter corresponds to a first of the frequency bands and has an adaptation rate that is calculated as max{1−αPv/Pe, ξ}, where

α is a first positive scalar;

ξ is a second positive scalar;

P e is a power estimation of the echo-suppressed sub-signal corresponding to the first frequency band; and

P v is a power estimation of near-end audio in the input sub-signal corresponding to the first frequency band.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2015
From: RAWLES LLC
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 037103/0084 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2013
From: YANG, JUN
To: RAWLES LLC
Reel/Frame 031270/0399 →