IP Library › Granted Patent US 10,746,840
Granted Patent B1
US 10,746,840 · App. 15/601,981 · Granted Aug 18, 2020

Beam rejection in multi-beam microphone systems

Inventors: William Folwell Barton (Harvard, MA); Kenneth Edgar Hild, II (Cupertino, CA); Ramya Gopalan (Cupertino, CA); Kavitha Velusamy (San Jose, CA); Amit Singh Chhetri (Santa Clara, CA)
Assignee: Amazon Technologies, Inc.
G01S3/8083G01S3/805G01S3/86G01S5/22H04R25/407H04R2430/20
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 10,746,840
App. No.
15/601,981
Filed
May 22, 2017
Granted
Aug 18, 2020
Kind
B1
Art Unit
2654
USPC
381/92
Abstract

The systems, devices, and processes described herein may identify a beam of a voice-controlled device that is directed toward a reflective surface, such as a wall. The beams may be created by a beamformer. An acoustic echo canceller (AEC) may create filter coefficients for a reference sound. The filter coefficients may be analyzed to identify beams that include multiple peaks. The multiple peaks may indicate presence of one or more reflective surfaces. Using the amplitude and the time delay between the peaks, the device may determine that it is close to a reflective surface in a direction of the beam.

Claims (52)

1. A computing device comprising:

memory;

one or more processors coupled to the memory;

a loudspeaker coupled to the one or more processors;

a plurality of microphones coupled to the one or more processors;

a beamforming component stored in the memory and executable by the one or more processors;

an acoustic echo cancellation (AEC) component stored in the memory and executable by the one or more processors; and

a speech processing component stored in the memory and executable by the one or more processors,

wherein the one or more processors are configured to:

cause the plurality of microphones to generate a first audio signal and a second audio signal based on speech input;

cause the beamforming component to process the first audio signal and the second audio signal to generate a first beamformed signal and a second beamformed signal, respectively;

cause the AEC component to perform echo cancellation on the first beamformed signal and the second beamformed signal to generate first echo-canceled data and second echo-canceled data, respectively;

determine that the first beamformed signal is directed towards a reflective surface; and

cause the speech processing component to: (i) receive the second echo-canceled data; (ii) send at least a portion of the second echo-canceled data to a remote computing resource; (iii) receive response data from the remote computing resource, the response data being generated based on the portion of the second echo-canceled data; and (iv) output audible sound representing the response data.

2. The computing device as recited in claim 1 , wherein the one or more processors are further configured to cause the AEC component to create a first filter coefficient associated with the first beamformed signal, wherein determining that the first beamformed signal is directed towards the reflective surface is based at least in part on the first filter coefficient.

3. The computing device as recited in claim 1 , wherein the one or more processors are further configured to cause the AEC component to cancel at least some acoustic echo generated by sound emitted from the loudspeaker.

4. The computing device as recited in claim 1 , wherein the one or more processors are further configured to determine a user profile associated with the speech input, and wherein the output of the audible sound is performed is based at least in part on the user profile.

5. The computing device as recited in claim 1 , further comprising a noise reduction component, and wherein the one or more processors are further configured to cause the noise reduction component to remove at least some background noise in at least one of the first beamformed signal or the second beamformed signal.

6. The computing device as recited in claim 1 , wherein the first audio signal is generated by a different microphone of the plurality of microphones than the second audio signal.

7. A computer-implemented method comprising:

generating a first audio signal and a second audio signal based on speech input received by a plurality of microphones;

processing the first and the second audio signals by a beamforming component to generate a first beamformed signal and a second beamformed signal, respectively;

performing acoustic echo cancellation (AEC) on the first beamformed signal and the second beamformed signal to generate first echo-canceled data and second echo-canceled data, respectively;

determining that the first beamformed signal is directed towards a reflective surface;

sending at least a portion of the second echo-canceled data to a remote computing resource;

receiving response data from the remote computing resource as a result of at least processing the second echo-canceled data by the remote computing resource; and

causing a loudspeaker to output audible sound representing the response data.

8. The computer-implemented method as recited in claim 7 , further comprising determine a user profile associated with the speech input, and wherein the response data is based at least in part on the user profile.

9. The computer-implemented method as recited in claim 7 , further comprising generating the first audio signal by a first microphone and generating the second audio signal by a second microphone of the plurality of microphones.

10. The computer-implemented method as recited in claim 7 , further comprising generating a first filter coefficient associated with the first beamformed signal and a second filter coefficient associated with the second beamformed signal, the first filter coefficient and the second filter coefficient to cancel sound associated with at least one of the first audio signal or the second audio signal, and wherein determining that the first beamformed signal is directed towards the reflective surface is based at least in part on the first filter coefficient.

11. The computer-implemented method as recited in claim 7 , wherein the AEC cancels at least some background noise captured by the plurality of microphones to reduce presence of the background noise in the echo-canceled data.

12. The computer-implemented method as recited in claim 7 , wherein the AEC cancels at least some ambient noise captured by the plurality of microphones.

13. The computer-implemented method as recited in claim 7 , wherein generating the first beamformed signal and the second beamformed signal includes processing by a fixed beamformer.

14. The computer-implemented method as recited in claim 7 , further comprising causing the loudspeaker to generate the sound, and wherein the AEC removes the sound from the at least one of the first beamformed signal or the second beamformed signal to generate the echo-canceled data.

15. A system comprising:

memory;

one or more processors coupled to the memory;

a plurality of microphones coupled to the one or more processors;

a beamforming component stored in the memory and executable by the one or more processors;

an acoustic echo cancellation (AEC) component stored in the memory and executable by the one or more processors; and

a speech processing component stored in the memory and executable by the one or more processors,

wherein the one or more processors are configured to:

cause the plurality of microphones to generate a first audio signal and a second audio signal based on speech input;

cause the beamforming component to process the first audio signal and the second audio signal to generate a first beamformed signal and a second beamformed signal;

cause the AEC component to perform echo cancellation on the first beamformed signal and the second beamformed signal to generate first echo-canceled data and second echo-canceled data, respectively;

determine that the first beamformed signal is directed towards a reflective surface; and

cause the speech processing component to process the second echo-canceled data to determine a command and in response to processing the command, send at least a portion of the second echo-canceled data to a remote computing resource and receive response data from the remote computing resource, the response data being generated based on the portion of the second echo-canceled data.

16. The system as recited in claim 15 , cause a loudspeaker to output audible sound representing the response data.

17. The system as recited in claim 15 , further comprising a detection component, and wherein the one or more processors are further configured to cause the detection component to determine that sound received by the plurality of microphones includes the speech input.

18. The system as recited in claim 15 , wherein the one or more processors are further configured to cause the AEC component to generate a first filter coefficient associated with the first beamformed signal and a second filter coefficient associated with the second beamformed signal, the first filter coefficient and the second filter coefficient to facilitate processing beamformed signals to create the echo-canceled data, and wherein determining that the first beamformed signal is directed towards the reflective surface is based at least in part on the first filter coefficient.

19. The system as recited in claim 15 , wherein the one or more processors are further configured to determine a user profile associated with the speech input, and wherein the response data is based at least in part on the user profile.

20. The system as recited in claim 15 , wherein the one or more processors are further configured to cause the AEC component to cancel at least some acoustic echo generated by sound emitted from a loudspeaker.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2018
From: BARTON, WILLIAM FOLWELL; HILD, KENNETH EDGAR, II; GOPALAN, RAMYA; VELUSAMY, KAVITHA; CHHETRI, AMIT SINGH
To: RAWLES LLC
Reel/Frame 045758/0386 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2018
From: RAWLES LLC
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 045758/0450 →
Continuity (1)
Continuation 13857040 · Apr 4, 2013
Cited By (35)
US 12,192,713 US 12,210,801 US 12,211,490 US 12,217,748 US 12,217,765 US 12,230,291 US 12,231,859 US 12,236,932 US 12,277,368 US 12,279,096 US 12,288,558 US 12,322,390 US 12,340,802 US 12,360,734 US 12,374,334 US 12,375,052 US 12,387,716 US 12,424,220 US 12,438,977 US 12,462,802 US 12,505,832 US 12,513,466 US 12,513,479 US 12,518,755 US 12,518,756 US 12,525,239 US 12,578,779 US 12,579,978 US 12,626,717 US 12,640,148 US 12,699,543 US 12,711,962 US 12,732,547 US 12,744,035 US 12,748,566