IP Library Granted Patent US 9,936,290
Granted Patent B2
US 9,936,290 · App. 14/156,292 · Granted Apr 3, 2018

Multi-channel echo cancellation and noise suppression

Inventors: Asif Iqbal Mohammad (San Diego, CA); Lae-Hoon Kim (San Diego, CA); Ian Ernan Liu (San Diego, CA); Erik Visser (San Diego, CA)
Assignee: QUALCOMM Incorporated
H04R3/002H04M9/082
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,936,290
App. No.
14/156,292
Granted
Apr 3, 2018
Kind
B2
Abstract

A method for multi-channel echo cancellation and noise suppression is described. One of multiple echo estimates is selected for non-linear echo cancellation. Echo notch masking is performed on a noise-suppressed signal based on an echo direction of arrival (DOA) to produce an echo-suppressed signal. Non-linear echo cancellation is performed on the echo-suppressed signal based, at least in part, on the selected echo estimate.

Claims (55)

1. A method for multi-channel echo cancellation and noise suppression, comprising:

selecting one of multiple echo estimates for non-linear echo cancellation, wherein the multiple echo estimates include a spatial-processed echo estimate that estimates echo added by spatial processing during noise suppression;

performing echo notch masking on a noise-suppressed signal based on an echo direction of arrival (DOA) to produce an echo-suppressed signal, wherein performing echo notch masking comprises:

determining a masking gain based on speech likelihood information, a notch width, a notch depth, and the echo direction of arrival (DOA), wherein the speech likelihood information indicates a likelihood per angle per frequency bin for target speech, and

applying the masking gain to the noise-suppressed signal to produce the echo-suppressed signal; and

performing non-linear echo cancellation on the echo-suppressed signal based, at least in part, on the selected echo estimate.

2. The method of claim 1 , wherein the one of multiple echo estimates is one of the spatial-processed echo estimate, a primary microphone echo estimate and a secondary microphone echo estimate.

3. The method of claim 1 , wherein the selecting one of multiple echo estimates comprises selecting a maxima of the multiple echo estimates.

4. The method of claim 1 , wherein the selecting one of multiple echo estimates comprises combining multiple echo estimates to produce the selected echo estimate.

5. The method of claim 1 , wherein the performing non-linear echo cancellation comprises using a non-linear model of echo based on the selected echo estimate and the echo-suppressed signal.

6. A computer-program product for multi-channel echo cancellation and noise suppression, comprising a non-transitory computer-readable medium having instructions thereon, the instructions comprising:

code for causing a communication device to select one of multiple echo estimates for non-linear echo cancellation, wherein the multiple echo estimates include a spatial-processed echo estimate that estimates echo added by spatial processing during noise suppression;

code for causing the communication device to perform echo notch masking on a noise-suppressed signal based on an echo direction of arrival (DOA) to produce an echo-suppressed signal, wherein the code for causing the communication device to perform echo notch masking comprises:

code for causing the communication device to determine a masking gain based on speech likelihood information, a notch width, a notch depth, and the echo direction of arrival (DOA), wherein the speech likelihood information indicates a likelihood per angle per frequency bin for target speech, and

code for causing the communication device to apply the masking gain to the noise-suppressed signal to produce the echo-suppressed signal; and

code for causing the communication device to perform non-linear echo cancellation on the echo-suppressed signal based, at least in part, on the selected echo estimate.

7. The computer-program product of claim 6 , wherein the one of multiple echo estimates is one of the spatial-processed echo estimate, a primary microphone echo estimate and a secondary microphone echo estimate.

8. The computer-program product of claim 6 , wherein the code for causing the communication device to select one of multiple echo estimates comprises code for causing the communication device to combine multiple echo estimates to produce the selected echo estimate.

9. The computer-program product of claim 6 , wherein the noise-suppressed signal is produced by causing the communication device to suppress noise in output of a linear echo cancellation of at least two microphone channels.

10. The computer-program product of claim 9 , wherein the linear echo cancellation comprises:

code for causing the communication device to subtract a primary microphone echo estimate from a primary microphone channel; and

code for causing the communication device to subtract a secondary microphone echo estimate from a secondary microphone channel.

11. The computer-program product of claim 9 , further comprising code for causing the communication device to spatial process a primary microphone echo estimate and a secondary microphone echo estimate to produce the spatial-processed echo estimate.

12. The computer-program product of claim 11 , wherein the code for causing the communication device to spatial process replicates spatial processing that is performed by the causing the communication device to suppress noise in output of the linear echo cancellation.

13. The computer-program product of claim 11 , wherein code for causing the communication device to determine the primary microphone echo estimate and the secondary microphone echo estimate comprises:

code for causing the communication device to model a room response in an acoustic echo canceller (AEC) filter for a primary microphone and a secondary microphone;

code for causing the communication device to determine the primary microphone echo estimate based on the room response for the primary microphone; and

code for causing the communication device to determine the second microphone echo estimate based on the room response for the secondary microphone.

14. The computer-program product of claim 11 , wherein the primary microphone echo estimate and the secondary microphone echo estimate are determined during the linear echo cancellation.

15. A communication device for multi-channel echo cancellation and noise suppression, comprising:

a processor;

memory in electronic communication with the processor;

instructions stored in memory, the instructions executable to:

select one of multiple echo estimates for non-linear echo cancellation, wherein the multiple echo estimates include a spatial-processed echo estimate that estimates echo added by spatial processing during noise suppression;

perform echo notch masking on a noise-suppressed signal based on an echo direction of arrival (DOA) to produce an echo-suppressed signal, wherein the instructions executable to perform echo notch masking comprise instructions executable to:

determine a masking gain based on speech likelihood information, a notch width, a notch depth, and the echo direction of arrival (DOA), wherein the speech likelihood information indicates a likelihood per angle per frequency bin for target speech, and

apply the masking gain to the noise-suppressed signal to produce the echo-suppressed signal; and

perform non-linear echo cancellation on the echo-suppressed signal based, at least in part, on the selected echo estimate.

16. The communication device of claim 15 , wherein the one of multiple echo estimates is one of the spatial-processed echo estimate, a primary microphone echo estimate and a secondary microphone echo estimate.

17. The communication device of claim 15 , wherein the instructions executable to select one of multiple echo estimates comprise instructions executable to combine multiple echo estimates to produce the selected echo estimate.

18. The communication device of claim 15 , wherein the echo direction of arrival (DOA) is determined based on a location of one or more microphones and one or more loudspeakers.

19. The communication device of claim 15 , wherein the echo direction of arrival (DOA) is determined during a calibration stage.

20. The communication device of claim 15 , wherein the echo direction of arrival (DOA) is determined in real-time when far-end activity is detected.

21. The communication device of claim 15 , wherein the instructions executable to determine the masking gain comprise instructions executable to:

apply a masking window located based on the echo direction of arrival (DOA); and

determine an amount to suppress the noise-suppressed signal within the masking window.

22. The communication device of claim 15 , wherein the instructions executable to perform echo notch masking are further based on an indication of far-end speech.

23. A communication device for multi-channel echo cancellation and noise suppression, comprising:

means for selecting one of multiple echo estimates for non-linear echo cancellation, wherein the multiple echo estimates include a spatial-processed echo estimate that estimates echo added by spatial processing during noise suppression;

means for performing echo notch masking on a noise-suppressed signal based on an echo direction of arrival (DOA) to produce an echo-suppressed signal, wherein the means for performing echo notch masking comprises:

means for determining a masking gain based on speech likelihood information, a notch width, a notch depth, and the echo direction of arrival (DOA), wherein the speech likelihood information indicates a likelihood per angle per frequency bin for target speech, and

means for applying the masking gain to the noise-suppressed signal to produce the echo-suppressed signal; and

means for performing non-linear echo cancellation on the echo-suppressed signal based, at least in part, on the selected echo estimate.

24. The communication device of claim 23 , wherein the one of multiple echo estimates is one of the spatial-processed echo estimate, a primary microphone echo estimate and a secondary microphone echo estimate.

25. The communication device of claim 23 , wherein the means for selecting one of multiple echo estimates comprise means for combining multiple echo estimates to produce the selected echo estimate.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2014
From: MOHAMMAD, ASIF IQBAL; KIM, LAE-HOON; LIU, IAN ERNAN; VISSER, ERIK
To: QUALCOMM INCORPORATED
Reel/Frame 032037/0100 →
Continuity (2)
Provisional Application 61819423 · May 3, 2013
Related Publication 20140328490A1 · Nov 6, 2014