Noise reduction systems and methods for voice applications
First Claim
Patent Images
1. A method comprising:
- providing a computing device having a housing and an array of microphones comprising two or more microphones, wherein at least one of the microphones is mounted inside the housing and at least one of the microphones is mounted outside the housing; and
using the microphone array, training the device to recognize noise from known locations by equipping the device with a filter system that can filter noise from the known locations, wherein said training is accomplished using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more of the known locations and in which said speech is captured by said two or more microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the computing device and said noise is captured by said two or more microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile.
2 Assignments
0 Petitions
Accused Products
Abstract
Various embodiments reduce noise within a particular environment, while isolating and capturing speech in a manner that allows operation within an otherwise noisy environment. In one embodiment, an array of one or more microphones is used to selectively eliminate noise emanating from known, generally fixed locations, and pass signals from a pre-specified region or regions with reduced distortion.
-
Citations
110 Claims
-
1. A method comprising:
-
providing a computing device having a housing and an array of microphones comprising two or more microphones, wherein at least one of the microphones is mounted inside the housing and at least one of the microphones is mounted outside the housing; and using the microphone array, training the device to recognize noise from known locations by equipping the device with a filter system that can filter noise from the known locations, wherein said training is accomplished using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more of the known locations and in which said speech is captured by said two or more microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the computing device and said noise is captured by said two or more microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
-
providing a computing device having a housing and an array of microphones comprising two or more microphones, wherein at least one of the microphones is mounted inside the housing and at least one of the microphones is mounted outside the housing; and using the microphone array, training the device to recognize noise from particular known locations and sources by equipping the device with a filter system that can filter noise from the particular known locations and sources, wherein said training is accomplished using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more of the known locations and in which said speech is captured by said array of microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the computing device and said noise is captured by said array of microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method comprising:
-
providing a game controller having an array of microphones comprising one or more microphones; using the microphone array, training the game controller to recognize audio signals from particular known locations and sources by equipping the game controller with a filter system that can (a) filter noise from particular known locations and sources, and (b) pass signals associated with desired speech from particular locations, wherein said training is accomplished using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more of the known locations and in which said speech is captured by said array of microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the game controller and said noise is captured by said array of microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A method comprising:
-
providing a user-engagable input device comprising a housing that supports an array of microphones, at least one of the microphones being mounted inside of the housing, wherein the user-engagable input device comprises a game controller; using the microphone array, training the device to recognize noise from known locations, wherein said training is accomplished using multiple training phases that are initiated by a user, including a noise capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the user-engagable input device and audio signals associated with the noise are captured by the array of microphones, and a speech-capturing phase in which the user speaks from one or more of the known locations and audio signals associated with the speech are captured by the array of microphones; correlation processing the audio signals associated with the noise and constructing one or more filter components as a function of the processed audio signals; correlation processing the audio signals associated with the speech and constructing one or more filter components as a function of the processed audio speech signals; and incorporating a filter system comprising the filter components into one or more user-engagable input devices. - View Dependent Claims (37, 38, 39)
-
-
40. A method comprising:
-
providing a computing device having a housing and an array of microphones comprising two or more microphones, the computing device comprising a trained filter system configured to recognize noise from particular known locations relative to the computing device, wherein at least one of the microphones is mounted inside of the housing and at least one of the microphones is mounted outside of the housing, wherein the trained filter system is trained using multiple training phases that are initiated by a user including a speech-capturing phase in which the user speaks from one or more of the particular known locations and in which said speech is captured by said two or more microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the computing device, wherein the training enables the filter system to create a desired speech profile and a desired noise profile; capturing audio signals using the microphone array; filtering noise from the captured audio signals using the trained filter system. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
-
51. A method comprising:
-
providing a computing device having an array of microphones comprising one or more microphones, the computing device comprising a trained filter system configured to recognize noise from particular known locations and sources, wherein the trained filter system is trained using multiple training phases initiated by a user including a speech-capturing phase in which the user speaks from one or more of the particular known locations and in which said speech is captured by said one or more microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the computing device and said noise is captured by said one or more microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile; coupling the computing device in communication with another computing device via a network; capturing audio signals using the microphone array; and filtering noise from the captured audio signals using the trained filter system such that the filtered noise is not transmitted to the other computing device. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65)
-
-
66. A method comprising:
-
providing a game controller having an array of microphones comprising one or more microphones, the game controller comprising a trained filter system configured to recognize audio signals from particular known locations and sources, wherein the filter system has been trained using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more of the particular known locations and in which said speech is captured by said array of microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the game controller and said noise is captured by said array of microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile; coupling the game controller in communication with another game controller via a network; capturing audio signals using the microphone array; filtering the captured signals using the trained filter system effective to (a) filter noise from particular locations and sources, and (b) pass signals associated with desired speech from particular locations, wherein the filtered noise is not communicated to the other game controller. - View Dependent Claims (67, 68, 69, 70, 71, 72, 73, 74)
-
-
75. A method comprising:
-
providing a user-engagable input device comprising a housing that supports an array of microphones, at least one of the microphones being mounted inside of the housing, and wherein at least one of the microphones is mounted outside of the housing; capturing audio signals associated with the environment in which the user-engagable input device is used, wherein the audio signals can comprise both noise and desired speech; filtering the captured audio signals using a trained filter system that is configured to recognize noise and desired speech, wherein the filter system is trained using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more known locations and in which said speech is captured by said array of microphones, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the user-engagable input device and said noise is captured by said array of microphones, wherein the training enables the filter system to create a desired speech profile and a desired noise profile, the filter system comprising multiple filters computed as generalized Wiener filters having the form;
wopt=(Rss+β
Rnn)−
1 (E{ds}),where Rss is the correlation matrix for a desired speech signal, Rnn is the correlation matrix for the noise component, β
is a weighting parameter for the noise component, and E{ds} is the expected value of the product of the desired signal d and the actual signal s that is received by a microphone. - View Dependent Claims (76, 77, 78, 79, 80)
-
-
81. A system comprising:
-
a housing; one or more user input mechanisms supported by the housing; a processor; a computer-readable media; a microphone array at least some of which supported by the housing and comprising two or more microphones, wherein at least one of the microphones is mounted inside the housing and at least one of the microphones is mounted outside the housing; a noise reduction component comprising a filter system embodied on the computer-readable media, the filter system being trained to recognize noise from particular known locations; and the noise reduction component being configured to cause the processor to use the trained filter system to filter noise, from said known locations, from audio signals captured by the microphone array, wherein the trained filter system is trained using multiple training phases that are initiated by a user, including a speech-capturing phase in which the user speaks from one or more of said known locations and in which said speech is captured by the microphone array, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the housing and said noise is captured by the microphone array, wherein the training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (82, 83, 84, 85, 86, 87, 88)
-
-
89. A system comprising:
-
a housing; one or more user input mechanisms supported by the housing; a processor; a computer-readable media; a microphone array comprising one or more microphones; a noise reduction component comprising a filter system embodied on the computer-readable media, the filter system being trained to recognize noise from particular known locations and sources; and the noise reduction component being configured to cause the processor to use the trained filter system to filter noise, from said known locations and sources, from audio signals captured by the microphone array, wherein the system is configured to communicate with another system, and wherein the filtered noise is not transmitted to the other system, wherein the trained filter system is trained using multiple phases that are initiated by a user including a speech-capturing phase in which the user speaks from one or more of the known locations and said speech is captured by the microphone array, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the housing and said noise is captured by the microphone array, wherein the training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (90, 91, 92, 93, 94)
-
-
95. A system comprising:
-
a housing; one or more user input mechanisms supported by the housing; a processor; a computer-readable media; a microphone array comprising two or more microphones, at least one of the microphones being mounted within the housing and at least one of the microphones being mounted outside the housing; a noise reduction component comprising a filter system embodied on the computer-readable media, the filter system being trained to recognize audio signals from particular known sources and locations; and the noise reduction component being configured to cause the processor to use the trained filter system to (a) filter noise, from said known sources and locations, from audio signals captured by the microphone array, and (b) pass signals associated with desired speech from particular locations, wherein the trained filter system is trained using multiple training phases that are initiated by a user including a speech-capturing phase in which a user speaks from one or more of the known locations, and a noise-training phase in which the user produces button clicking noise by physically manipulating one or more buttons on the housing and said noise is captured by the microphone array, wherein said training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (96, 97, 98, 99, 100, 101)
-
-
102. A noise reduction component comprising:
-
a transform component configured to transform audio samples from a microphone array of a game controller from the time domain into the frequency domain; a filter system associated with the transform component and configured to filter frequency samples produced by the transform component, the filter system comprising multiple filters each of which being associated with a frequency bin, individual filters comprising a generalized Wiener filter having the form;
wopt=(Rss+β
Rnn)−
1 (E{ds}),where Rss is the correlation matrix for a desired speech signal, Rnn is the correlation matrix for a noise component, β
is a weighting parameter for the noise component, and E{ds} is the expected value of the product of the desired signal d and the actual signal s that is received by a microphone, wherein the filter system is trained using multiple training phases that are initiated by a user including a speech-capturing phase in which the user speaks from one or more known locations and in which said speech is captured by the microphone array, and a noise-capturing phase in which the user produces button clicking noise by physically manipulating one or more buttons on the game controller and said noise is captured by the microphone array, wherein the training enables the filter system to create a desired speech profile and a desired noise profile. - View Dependent Claims (103, 104, 105, 106, 107, 108, 109, 110)
-
Specification