A processing method and system for acquiring audio echo cancellation using a microphone array
Patent Information
- Application Number
- CN202311723529.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-15
- Publication Date
- 2026-11-03
- Estimated Expiration
- 2043-12-15
AI Technical Summary
When a microphone fails, the algorithm design of the existing microphone array is disrupted, affecting the sound pickup effect, especially in harsh environments where it is difficult to effectively suppress non-steady-state noise.
The system employs a microphone array module and a processor module, combined with the VAD algorithm to detect microphone malfunctions, and uses a dual-microphone array algorithm or array noise reduction algorithm for noise reduction processing. It also generates reference microphone data through an echo cancellation algorithm to improve sound pickup performance.
When the microphone malfunctions, the algorithm automatically switches and combines reference microphone data for noise reduction, improving the quality of speech in the far field and enhancing the sound pickup effect.
Smart Images

Figure CN117935830B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of audio signal processing, and particularly relates to a processing method and system for acquiring audio with a microphone array to eliminate echo. Background Technology
[0002] Research on speech enhancement and array technology began relatively early. Although these two technologies have achieved certain results with the improvement and maturity of related theories in the field of digital signal processing, the earliest speech enhancement focused on single microphone speech enhancement, and the earliest array technology also used narrowband antenna arrays for detection. The application of array technology to speech enhancement is a more recent development.
[0003] Traditional audio pickup devices are based on a single-microphone design. While simple, a single microphone can suppress steady-state noise using the time and frequency domain characteristics of the signal, making it difficult to meet the pickup requirements in harsh environments. However, in the face of non-steady-state noise such as sirens, engine transient noise, and weapon fire, the noise reduction performance of a single microphone drops sharply, and may even introduce other noises. Microphone arrays can utilize time, frequency, and spatial characteristics to suppress both steady-state and non-steady-state noise. Common microphone array architectures include linear arrays, circular arrays, and spherical arrays. Currently, a 6-line linear microphone array configuration exists, which can effectively solve the speech signal quality problem in far-field voice interaction environments and effectively suppress non-steady-state noise. However, a problem exists: if one microphone malfunctions, the entire algorithm design is disrupted, affecting the pickup effect. Summary of the Invention
[0004] To overcome the shortcomings of existing technologies, this invention provides a method and system for obtaining audio echo cancellation using a microphone array.
[0005] To solve the above-mentioned technical problems, the technical solution adopted by the present invention is as follows:
[0006] In a first aspect, a processing system for acquiring audio echo cancellation using a microphone array is provided, comprising:
[0007] Microphone array module and processor module;
[0008] The microphone array module has N microphones, where N is a positive integer greater than 2;
[0009] The microphone array module is used to acquire N corresponding microphone data through N microphones, and obtain two reference microphone data according to a preset echo cancellation algorithm; the N microphone data and the two reference microphone data are transmitted to the processor module through their respective audio channels;
[0010] The processor module is used to process the data from each microphone channel using the Voice Activity Detection (VAD) algorithm to detect whether N microphones are faulty. When at least one microphone is detected to be faulty, the dual-microphone array algorithm and two reference microphone data are used to perform noise reduction processing on the N microphone data to obtain a single digital audio data channel.
[0011] The processor module is also used to perform noise reduction processing on the N-channel microphone data using an array noise reduction algorithm to obtain a single-channel digital audio data when no microphone failure is detected.
[0012] Furthermore, the microphone array module includes:
[0013] Array board; N is 6;
[0014] Six microphones are arranged in a straight line on the array board, and all six microphones have the same microphone parameters.
[0015] Furthermore, the spacing between any two adjacent microphones on the array board is 3.5 centimeters.
[0016] Furthermore, the microphone array module also includes:
[0017] USB transmission unit and echo cancellation algorithm unit;
[0018] The echo cancellation algorithm unit is used to generate two reference microphone data based on the microphone parameters of the six microphones and according to a preset echo cancellation algorithm.
[0019] The USB transmission unit is connected to the echo cancellation algorithm unit and 6 microphones;
[0020] The USB transmission unit connects to the processor module via a USB cable, establishing 8 audio channels. These 8 audio channels include 6 microphone audio channels and 2 echo-cancelling audio channels. Each microphone audio channel corresponds to one microphone, and each echo-cancelling audio channel transmits one reference microphone data.
[0021] Furthermore, the processor module includes:
[0022] Six VAD units, each VAD unit is connected to one microphone audio channel;
[0023] The VAD unit is used to process the microphone data transmitted through the corresponding microphone audio channel using the VAD algorithm to detect whether there is a voice signal. When there is a voice signal, the detection result is that the corresponding microphone is not faulty; when there is no voice signal, the detection result is that the corresponding microphone is faulty.
[0024] Furthermore, the processor module also includes:
[0025] The algorithm selection unit is used to obtain the detection results of the 6 VAD units; when it is determined that at least one of the 6 microphones is faulty based on the detection results, the dual-microphone array algorithm is selected; when it is determined that no microphone is faulty based on the detection results, the array noise reduction algorithm is selected.
[0026] Secondly, a method for obtaining audio echo cancellation using a microphone array is provided, applied to the audio echo cancellation processing system of the first aspect, the processing method including:
[0027] Data from N microphones was collected, and data from two reference microphones was obtained based on a preset echo cancellation algorithm.
[0028] The Voice Activity Detection (VAD) algorithm is used to process the data from each microphone channel to detect whether N microphones are faulty.
[0029] When at least one microphone failure is detected, noise reduction processing is performed on N microphone data using a dual-microphone array algorithm and two reference microphone data to obtain single-channel digital audio data.
[0030] When no microphone malfunction is detected, an array noise reduction algorithm is used to process the noise of the N microphone data to obtain a single digital audio data.
[0031] Furthermore, the VAD algorithm is used to process the data from each microphone channel separately to detect whether N microphones are faulty, including:
[0032] The VAD algorithm is used to process the data from each microphone to detect the presence of a voice signal.
[0033] When a voice signal is present, the detection result indicates that the corresponding microphone is not malfunctioning;
[0034] When there is no voice signal, the detection result indicates that the corresponding microphone is malfunctioning.
[0035] The beneficial effects achieved by this invention are as follows:
[0036] The microphone array module acquires N microphone data channels from N microphones and obtains two reference microphone data channels based on a preset echo cancellation algorithm. The N microphone data channels and the two reference microphone data channels are then transmitted to the processor module through their respective audio channels. The processor module processes each microphone data channel using the VAD algorithm to detect whether any of the N microphones are faulty. When at least one microphone fault is detected, a dual-microphone array algorithm is used to perform noise reduction processing on the N microphone data channels and the two reference microphone data channels to obtain a single digital audio data channel. When no microphone fault is detected, an array noise reduction algorithm and the two reference microphone data channels are used to perform noise reduction processing on the N microphone data channels to obtain a single digital audio data channel. Compared with existing technologies, the addition of the VAD algorithm detection function automatically switches to the dual-microphone algorithm when a microphone malfunctions, and simultaneously performs echo cancellation using the two reference microphone data channels, improving speech quality in the far field and enhancing sound pickup. Attached Figure Description
[0037] Figure 1 This is a structural diagram of the audio echo cancellation processing system using a microphone array according to the present invention;
[0038] Figure 2 This is a flowchart of the method for obtaining audio echo cancellation using a microphone array according to the present invention. Detailed Implementation
[0039] The present invention will be further described below with reference to the accompanying drawings. The following embodiments are only used to more clearly illustrate the technical solution of the present invention, and should not be used to limit the scope of protection of the present invention.
[0040] like Figure 1 As shown, this embodiment of the invention provides a processing system for audio echo cancellation using a microphone array, comprising:
[0041] Microphone array module 101 and processor module 102;
[0042] The microphone array module 101 has N microphones 1011, where N is a positive integer greater than 2;
[0043] The microphone array module 101 is used to acquire corresponding N-channel microphone data through N microphones 1011 and obtain two-channel reference microphone data according to a preset echo cancellation algorithm; and transmit the N-channel microphone data and the two-channel reference microphone data to the processor module 102 through their respective audio channels.
[0044] The processor module 102 is used to process the data of each microphone channel using the Voice Activity Detection (VAD) algorithm to detect whether the N microphones are faulty; when at least one microphone is detected to be faulty, the dual-microphone array algorithm and two reference microphone data are used to perform noise reduction processing on the N microphone data to obtain single-channel digital audio data.
[0045] The processor module 102 is also used to perform noise reduction processing on the N-channel microphone data using an array noise reduction algorithm to obtain single-channel digital audio data when no microphone failure is detected.
[0046] Among them, the VAD algorithm is a technology for speech processing, which aims to detect the presence of speech signals and is mainly used for speech coding and speech recognition;
[0047] The dual-microphone array algorithm is one of the most widely used noise reduction techniques, and its principle is as follows:
[0048] Suppose we have two microphones, A and B, with identical performance. Microphone A is the main microphone used to pick up voice during calls, while microphone B is used to pick up background noise. During a normal voice call, when the mouth is close to microphone A, it generates a larger audio signal Va. At the same time, microphone B receives some voice signal Vb, but it is much smaller than that of A. Both signals are output to a processor, whose input is a differential amplifier, which subtracts the two signals and then amplifies them. The resulting signal is Vm = Va - Vb. If there is background noise in the environment, because the sound source is far from the device, the intensity of the sound waves reaching both microphones is almost the same, that is, Va ≈ Vb. Therefore, although both microphones pick up the background noise, Vm = Va - Vb ≈ 0. It can be seen that this design can effectively resist the interference of ambient noise around the mobile phone, greatly improving the clarity of normal calls.
[0049] The principle of array noise reduction algorithm is as follows:
[0050] In the process of setting up a microphone array, the directionality and distance of signal and noise sources are taken into account, and the positions and directions of each microphone are arranged reasonably.
[0051] The data collected by the microphones in the array is sampled, filtered, gain controlled, and aligned to improve the reliability and accuracy of the signal;
[0052] By analyzing parameters such as signal-to-noise ratio, the noise sources that need to be reduced can be identified. At the same time, the characteristics of sound wave propagation should be taken into account to determine the location of the noise source and the signal source.
[0053] The array algorithm processes and separates the sound wave signals received by each microphone, thereby achieving signal-to-noise separation and noise reduction.
[0054] Combination Figure 1 In the illustrated embodiment, preferably, the microphone array module 101 includes:
[0055] Array board; N is 6;
[0056] Six microphones 1011 are arranged in a straight line on the array board, and the six microphones 1011 have the same microphone parameters.
[0057] The spacing between any two adjacent microphones 1011 on the array board is 3.5 cm. It should be noted that the 3.5 cm spacing is a parameter obtained from testing in actual applications.
[0058] Combination Figure 1 In the illustrated embodiment, preferably, the microphone array module 101 further includes:
[0059] USB transmission unit 1012 and echo cancellation algorithm unit 1013;
[0060] The echo cancellation algorithm unit 1013 is used to generate two reference microphone data based on the microphone parameters of the six microphones 1011 and according to a preset echo cancellation algorithm.
[0061] The USB transmission unit 1012 is connected to the echo cancellation algorithm unit 1013 and six microphones 1011;
[0062] The USB transmission unit 1012 is connected to the processor module 102 via a USB transmission cable to establish 8 audio channels, including 6 microphone audio channels and 2 echo cancellation audio channels. Each microphone audio channel corresponds to one microphone; each echo cancellation audio channel transmits one reference microphone data.
[0063] Combination Figure 1 In the illustrated embodiment, preferably, the processor module 102 includes:
[0064] Six VAD units 1021, each VAD unit 1021 is connected to one microphone audio channel;
[0065] VAD unit 1021 is used to process the microphone data transmitted by the corresponding microphone audio channel through the VAD algorithm to detect whether there is a voice signal; when there is a voice signal, the detection result is that the corresponding microphone is not faulty; when there is no voice signal, the detection result is that the corresponding microphone is faulty.
[0066] Combination Figure 1 In the illustrated embodiment, preferably, the processor module 102 further includes:
[0067] The algorithm selection unit 1022 is used to obtain the detection results of the six VAD units 1021; when it is determined that at least one of the six microphones is faulty based on the detection results, the dual-microphone array algorithm is selected; when it is determined that no microphone is faulty based on the detection results, the array noise reduction algorithm is selected.
[0068] It should be noted that the processor module 102 also includes a processor 1023, which uses a dual-microphone array algorithm and two reference microphone data to perform noise reduction processing on the N microphone data to obtain a single digital audio data; or, it uses an array noise reduction algorithm to perform noise reduction processing on the N microphone data to obtain a single digital audio data.
[0069] Based on the above description, in the microphone array-based audio echo cancellation processing system of this invention, the reason for performing VAD detection on each microphone audio channel is that if one of the six microphones malfunctions, the array noise reduction algorithm will be unable to perform noise reduction processing and will not effectively eliminate noise interference. In this case, to perform noise reduction, a dual-microphone array algorithm is needed, combining the two reference microphone data from the echo cancellation algorithm for noise reduction processing. This improves the voice quality in the far field and enhances the sound pickup effect.
[0070] Based on the above description of the audio echo cancellation processing system using a microphone array, the following explains the processing method for audio echo cancellation using a microphone array applied to the processing system.
[0071] like Figure 2 As shown, this embodiment of the invention provides a method for obtaining audio echo cancellation using a microphone array, comprising:
[0072] 201. Collect N microphone data and obtain two reference microphone data according to the preset echo cancellation algorithm;
[0073] 202. The Voice Activity Detection (VAD) algorithm is used to process the data from each microphone channel to detect whether N microphones are faulty.
[0074] If at least one microphone malfunction is detected, proceed to step 203; if no microphone malfunction is detected, proceed to step 204.
[0075] The specific detection process is as follows: the VAD algorithm is used to process the data of each microphone to detect whether there is a voice signal; when there is a voice signal, the detection result is that the corresponding microphone is not faulty; when there is no voice signal, the detection result is that the corresponding microphone is faulty.
[0076] 203. Use a dual-microphone array algorithm and two reference microphone data to perform noise reduction on N microphone data to obtain single-channel digital audio data;
[0077] 204. An array noise reduction algorithm is used to process the noise of N microphone data to obtain a single digital audio data.
[0078] The beneficial effects achieved by this invention are as follows:
[0079] VAD (Voice Amplitude Adjustment) detection is performed on each microphone audio channel because if one of the six microphones malfunctions, the array noise reduction algorithm will be unable to process noise and effectively eliminate noise interference. In this case, a dual-microphone array algorithm is needed, combining the data from the two reference microphones with the echo cancellation algorithm for noise reduction. This improves the voice quality in the far field and enhances the sound pickup effect.
[0080] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0081] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0082] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0083] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0084] The above are merely embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention are included within the scope of the claims of the present invention pending approval.
Claims
1. A processing system for acquiring audio and eliminating echo using a microphone array, characterized in that, include: Microphone array module and processor module; The microphone array module has N microphones, where N is a positive integer greater than 2; The microphone array module is used to acquire N corresponding microphone data through N microphones, and obtain two reference microphone data according to a preset echo cancellation algorithm; and transmit the N microphone data and the two reference microphone data to the processor module through their respective audio channels. The processor module is used to process the microphone data of each channel using the Voice Activity Detection (VAD) algorithm to detect whether the N microphones are faulty; when at least one microphone is detected to be faulty, the dual-microphone array algorithm and the two reference microphone data are used to perform noise reduction processing on the N microphone data to obtain single-channel digital audio data. The processor module is also used to perform noise reduction processing on the N microphone data using an array noise reduction algorithm when no microphone failure is detected, to obtain single-channel digital audio data.
2. The audio echo cancellation processing system using a microphone array according to claim 1, characterized in that, The microphone array module includes: Array board; the value of N is 6; The six microphones are arranged in a straight line on the array board, and the six microphones have the same microphone parameters.
3. The audio echo cancellation processing system using a microphone array according to claim 2, characterized in that, The distance between any two adjacent microphones on the array board is 3.5 cm.
4. The audio echo cancellation processing system using a microphone array according to claim 3, characterized in that, The microphone array module also includes: USB transmission unit and echo cancellation algorithm unit; The echo cancellation algorithm unit is used to generate two reference microphone data based on the microphone parameters of the six microphones and according to a preset echo cancellation algorithm. The USB transmission unit is connected to the echo cancellation algorithm unit and the six microphones; The USB transmission unit is connected to the processor module via a USB transmission cable to establish 8 audio channels. The 8 audio channels include 6 microphone audio channels and 2 echo cancellation audio channels. Each microphone audio channel corresponds to one microphone. Each echo cancellation audio channel transmits one channel of reference microphone data.
5. The audio echo cancellation processing system using a microphone array according to claim 4, characterized in that, The processor module includes: There are 6 VAD units, and each VAD unit is connected to one microphone audio channel. The VAD unit is used to process the microphone data transmitted through the corresponding microphone audio channel using the VAD algorithm to detect whether there is a voice signal; when there is a voice signal, the detection result is that the corresponding microphone is not faulty; when there is no voice signal, the detection result is that the corresponding microphone is faulty.
6. The audio echo cancellation processing system using a microphone array according to claim 5, characterized in that, The processor module further includes: An algorithm selection unit is used to obtain the detection results of the six VAD units; when it is determined that at least one of the six microphones is faulty based on the detection results, a dual-microphone array algorithm is selected; when it is determined that no microphone is faulty among the six microphones based on the detection results, an array noise reduction algorithm is selected.
7. A method for echo cancellation of audio data acquired using a microphone array, characterized in that, The processing system for acquiring audio echo cancellation using a microphone array, as described in any one of claims 1-6, comprises: Data from N microphones was collected, and data from two reference microphones was obtained based on a preset echo cancellation algorithm. The Voice Activity Detection (VAD) algorithm is used to process the data from each microphone channel to detect whether N microphones are faulty. When at least one microphone failure is detected, noise reduction processing is performed on the N microphone data using a dual-microphone array algorithm and two reference microphone data to obtain a single digital audio data. When no microphone malfunction is detected, an array noise reduction algorithm is used to process the noise reduction data of the N microphones to obtain a single digital audio data.
8. The method for obtaining audio echo cancellation using a microphone array according to claim 7, characterized in that, The step of processing the microphone data of each channel using the VAD algorithm to detect whether N microphones are faulty includes: The VAD algorithm is used to process the data from each microphone channel to detect the presence of a voice signal. When a voice signal is present, the detection result indicates that the corresponding microphone is not malfunctioning; When there is no voice signal, the detection result indicates that the corresponding microphone has malfunctioned.
Citation Information
Patent Citations
Sound signal processing method and device, audio equipment and storage medium
CN114708884A
