Sound source positioning method, system, device and program product
By using IIR filters and full-pass phase compensation filters to filter audio signals in a microphone array, the frequency response differences and phase distortion between microphones are compensated, improving the accuracy and robustness of sound source localization and solving the problem of hardware differences among multiple microphones.
Patent Information
- Application Number
- CN202610468540.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-10
- Publication Date
- 2026-05-29
AI Technical Summary
Differences in frequency response caused by hardware variations among multiple microphones in a microphone array affect beamforming and positioning accuracy.
The audio signal of the microphone array is filtered by an IIR filter and an all-pass phase compensation filter to compensate for amplitude frequency response differences and nonlinear phase distortion. The nonlinear phase distortion of the IIR filter is corrected by the all-pass phase compensation filter to ensure that the spectral amplitude and phase of the audio signal are consistent.
It improves the accuracy and robustness of sound source localization, providing a precise foundation for subsequent noise suppression and speech enhancement processing, and solves the problem of frequency response differences caused by the differences in multi-microphone hardware.
Smart Images

Figure CN122110001A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of sound source localization technology, and in particular to a sound source localization method, system, device and program product. Background Technology
[0002] A microphone array is a system that arranges multiple microphones in a specific layout. Algorithms can be used to perform functions such as sound source localization, noise suppression, speech enhancement, and directional sound pickup based on the audio signals collected by the microphone array. Microphone arrays are widely used in smart speakers, video conferencing, in-vehicle audio systems, security monitoring, and far-field communication to achieve clear sound pickup, noise reduction, and sound source localization over long distances. The accuracy of sound source localization is crucial to the effectiveness of subsequent audio processing such as noise suppression and speech enhancement. However, in practical applications, due to the large number of microphones in a microphone array and various hardware differences, frequency response differences may exist between microphones during overall system testing. If these differences exceed a certain threshold, they will directly affect beamforming and localization accuracy. Summary of the Invention
[0003] To address the problems in the prior art, the purpose of this application is to provide a sound source localization method, system, device, and program product, which solves the problem of frequency response differences caused by hardware differences among multiple microphones in a microphone array and improves robustness.
[0004] The first aspect of this application provides a sound source localization method, comprising the following steps: Acquire multiple initial audio signals from a microphone array, which includes multiple microphones arranged in an array. Each initial audio signal corresponding to a microphone is filtered using a corresponding IIR filter and a corresponding full-pass phase compensation filter to obtain multiple filtered audio signals. The IIR filter is configured to compensate for the amplitude frequency response differences of multiple microphones, and the full-pass phase compensation filter is configured to compensate for the nonlinear phase distortion of the corresponding IIR filter. Based on the multi-channel filtered audio signal, the location information of the sound source is determined within the space where the microphone array is located.
[0005] In some embodiments, multiple microphones in the microphone array are arranged in a curved form.
[0006] In some embodiments, the parameters of the all-pass phase compensation filter are configured based on the group delay and ideal group delay of the corresponding IIR filter, so that the all-pass phase compensation filter compensates for the group delay of the IIR filter.
[0007] In some embodiments, the parameters of the all-pass phase compensation filter are configured based on the group delay, ideal group delay, and fixed delay of the corresponding IIR filter and the corresponding microphone.
[0008] In some embodiments, the space where the microphone array is located is divided into multiple sectors; Based on the multi-channel filtered audio signal, the location information of the sound source within the space where the microphone array is located is determined, including the following steps: Based on the multi-channel filtered audio signal, the beam intensity of each sector is calculated, and the sector with the largest beam intensity is taken as the prepositioning sector. Spatial spectral peak search is performed in the pre-positioning sector, and the location of the energy peak point in the pre-positioning sector is determined based on the multi-channel filtered audio signal. The location of the sound source is determined based on the location of the energy peak point.
[0009] In some embodiments, a spherical Fibonacci network is pre-generated in the space where the microphone array is located. The Fibonacci network includes multiple Fibonacci points, and the correspondence between the three-dimensional coordinates of each Fibonacci point and the spherical coordinates is established. The spatial spectrum peak search is performed in the prepositioning sector, including: searching for multiple Fibonacci points in the prepositioning sector, and taking the Fibonacci point with the highest sound field response power as the energy peak point. Determining the sound source location information based on the peak point location includes: determining the horizontal angle and pitch angle corresponding to the sound source location based on the spherical coordinates corresponding to the peak point.
[0010] In some embodiments, spatial spectral peak search is performed on multiple Fibonacci points within a prepositioned sector, including the following steps: The SRP-PHAT algorithm is used to search for multiple Fibonacci points within the prepositioning sector.
[0011] A second aspect of this application provides a sound source localization system for implementing the sound source localization method of the first aspect, the system comprising: The signal acquisition module is used to acquire multiple initial audio signals from a microphone array, which includes multiple microphones arranged in an array. The signal filtering module is used to filter the initial audio signal corresponding to each microphone using the corresponding IIR filter and the corresponding full-pass phase compensation filter to obtain multiple filtered audio signals. The IIR filter is configured to compensate for the amplitude frequency response differences of multiple microphones, and the full-pass phase compensation filter is configured to compensate for the nonlinear phase distortion of the corresponding IIR filter. The sound source localization module is used to determine the location information of the sound source within the space where the microphone array is located based on the multi-channel filtered audio signal.
[0012] A third aspect of this application also provides a sound source localization device, comprising: processor; A memory in which executable instructions of the processor are stored; The processor is configured to perform the steps of the sound source localization method described above by executing the executable instructions.
[0013] A fourth aspect of this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the sound source localization method described above.
[0014] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application.
[0015] The sound source localization method, system, device, and program products of this application have the following beneficial effects: This sound source localization method acquires multiple initial audio signals from a microphone array. Each initial audio signal is then filtered using an IIR filter and an all-pass phase compensation filter. The IIR filter compensates for the amplitude and frequency response differences among the microphones, making these differences more consistent. Simultaneously, the all-pass phase compensation filter compensates for the nonlinear phase distortion of the corresponding IIR filter, ensuring the linearity of the phase in the processed audio signal. By jointly correcting the spectral amplitude and phase of the audio signal using these two filters, sound source localization is performed based on the filtered audio signal. This improves the accuracy of sound source localization, providing a precise foundation for subsequent noise suppression and speech enhancement algorithms. It effectively solves the frequency response difference problem caused by hardware differences among multiple microphones in a microphone array, significantly enhancing robustness. Attached Figure Description
[0016] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings.
[0017] Figure 1 This is a flowchart of a sound source localization method according to an embodiment of this application; Figure 2 This is a schematic diagram showing the correspondence between audio signals and filters according to an embodiment of this application; Figure 3 This is a schematic diagram of a sound source localization method according to an embodiment of this application; Figure 4 This is a schematic diagram of a spherical Fibonacci network according to an embodiment of this application; Figure 5 This is a schematic diagram illustrating the process of coarse and fine localization based on filtered audio signals according to an embodiment of this application; Figure 6 This is a schematic diagram of the structure of a sound source localization system according to an embodiment of this application; Figure 7 This is a schematic diagram of the structure of a sound source localization device according to an embodiment of this application. Detailed Implementation
[0018] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, they are provided to make this application more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0019] Furthermore, the accompanying drawings are merely illustrative of this application and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted. Some block diagrams shown in the drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices. Although the terms "first" or "second," etc., are used in this specification to denote certain features, these are only for indicating function and not as a limitation on the number or importance of specific features.
[0020] The flowchart shown in the attached diagram is merely an illustrative example and does not necessarily include all steps. For example, some steps may be broken down, while others may be combined or partially combined. Therefore, the actual execution order may change depending on the specific circumstances.
[0021] like Figure 1 As shown in the figure, this application provides a sound source localization method, including the following steps: S100: Acquires multiple initial audio signals from a microphone array, which includes multiple microphones arranged in an array. Among them, the microphone array is a multi-channel microphone array, with each channel corresponding to one microphone audio signal. Multiple microphone audio signals can be collected through the microphone array. S200: The initial audio signal corresponding to each microphone is filtered by the corresponding IIR filter and the corresponding full-pass phase compensation filter to obtain multiple filtered audio signals; wherein, the IIR filter is configured to compensate for the amplitude frequency response difference of multiple microphones, and the full-pass phase compensation filter is configured to compensate for the nonlinear phase distortion of the corresponding IIR filter. Due to various hardware differences, multiple microphones may exhibit amplitude and frequency response variations, affecting beamforming and positioning accuracy. In this embodiment, an IIR filter is used to compensate for these amplitude and frequency response differences. An IIR filter, or Infinite Impulse Response filter, can achieve steep filtering characteristics with a relatively low order by introducing a feedback structure. While this application uses an IIR filter to compensate for the amplitude and frequency response differences among multiple microphones, it is limited by the inherent characteristics of the IIR filter and carries the risk of phase nonlinearity. This application also employs an all-pass phase compensation filter to compensate for the nonlinear phase distortion caused by the IIR filter, ensuring positioning accuracy. S300: Determines the location information of the sound source within the space where the microphone array is located based on the multi-channel filtered audio signal; In this embodiment, the sound source intensity is searched for in various locations or points within the space where the microphone array is located after multi-channel filtering of the audio signal, and the sound source location is located. In this embodiment, the sound source location information refers to the horizontal angle and pitch angle corresponding to the sound source location.
[0022] By employing this sound source localization method, after acquiring multiple initial audio signals from the microphone array in step S100, each initial audio signal is filtered using an IIR filter and an all-pass phase compensation filter in step S200. The IIR filter compensates for the amplitude and frequency response differences among the microphones, making these differences more consistent. Simultaneously, the all-pass phase compensation filter compensates for the nonlinear phase distortion of the corresponding IIR filter, ensuring that the phase of the audio signal processed by the IIR filter maintains linear characteristics. By jointly correcting the spectral amplitude and phase of the audio signal using both filters, sound source localization is performed in step S300 based on the filtered audio signal. This improves the accuracy of sound source localization, providing a precise foundation for subsequent noise suppression, speech enhancement, and other processing algorithms. It effectively solves the problem of frequency response differences caused by hardware variations among multiple microphones in a microphone array, significantly improving robustness. This application can be applied to human voice localization, but is not limited to it; it can also be applied to the localization of other types of sounds, such as animal sounds and musical instrument sounds.
[0023] Existing microphone arrays typically employ either one-dimensional linear arrays or two-dimensional planar arrays. One-dimensional linear arrays can only locate sound sources within the plane of the array's center normal; sound sources at other points will exhibit significant positioning errors. In contrast, the lower average RMS (Root Mean Square) sound pressure level of the outermost ring of a two-dimensional planar array microphone is closely related to the sound wave scattering characteristics and sound pressure distribution patterns of a finite-sized disk. This makes it susceptible to signal attenuation due to edge diffraction, which is exacerbated by beamforming weighting, affecting beamforming and positioning accuracy. Therefore, in this embodiment, multiple microphones in the microphone array are arranged in a curved surface configuration. The three-dimensional curved surface array microphone array sound source localization technology can overcome the shortcomings of one-dimensional and two-dimensional arrays, suppress sound energy loss caused by edge diffraction, improve the signal uniformity of the outermost ring, and enhance beamforming and positioning accuracy.
[0024] In this embodiment, the microphone array can be mounted on the ceiling. The planar surface of the existing ceiling array panel is curved (e.g., the array panel bulges downwards or upwards, with the bulge height selectable as needed), distributing multiple microphones across the curved surface to form a three-dimensional curved distribution. This effectively suppresses sound energy loss due to edge diffraction, reduces edge distortion, and improves the signal-to-noise ratio of the outer microphone rings. Furthermore, compared to spherical arrays that require spherical harmonic transformations or high-order polynomial calculations, the three-dimensional curved array has lower cost and lower processing complexity.
[0025] Figure 2 This illustration shows the correspondence between multiple audio signals and filters in this embodiment. The microphone array contains n microphones, each acquiring one audio signal. Each audio signal is sequentially filtered by a corresponding IIR filter and an all-pass phase filter. Filtering eliminates amplitude and frequency response differences between different microphones and removes the nonlinear phase distortion of the IIR filter. Specifically, the IIR filter is used for amplitude compensation, equalizing and compensating for amplitude and frequency response differences among multiple microphones to eliminate signal amplitude deviations caused by inconsistent microphone sensitivities. The all-pass phase compensation filter is used for phase compensation, correcting phase shifts and group delay differences introduced during amplitude compensation to ensure phase alignment and flat group delay of all channel signals, providing a precise signal foundation for subsequent positioning algorithms.
[0026] In this embodiment, the filter parameters of the IIR filter are obtained through pre-calibration. Specifically, the parameters of the IIR filter corresponding to each microphone are configured based on the frequency response and reference frequency response of that microphone. By calibrating the filter parameters of the IIR filter, the IIR filter... satisfy: ,in, Let be the frequency response function of the k-th microphone, describing the microphone at different angular frequencies. The amplitude response reflects the microphone's ability to pick up sound at different frequencies. The frequency response of the IIR filter corresponding to the k-th microphone is used to compensate for... differences The reference frequency response, i.e., the preset standard frequency response, is the target benchmark for amplitude compensation. It is angular frequency, corresponding to the frequency of an audio signal. The effective frequency range, i.e., the frequency interval corresponding to the sound source, ensures that within this frequency range, after compensation by the IIR filter, the amplitude response of all microphones is consistent. This is achieved by adjusting the parameters of the IIR filter. Pre-calibration is performed to correct the amplitude-frequency response of the k-th microphone, so that the amplitude of the corrected total frequency response is equal to that of the reference frequency response, thereby eliminating the amplitude-frequency response differences between different microphones.
[0027] In this embodiment, the parameters of the all-pass phase compensation filter are configured based on the group delay and ideal group delay of the corresponding IIR filter, so that the all-pass phase compensation filter compensates for the group delay of the IIR filter. By calibrating the parameters of the all-pass phase compensation filter, the all-pass phase compensation filter... satisfy: ,in This represents the actual group delay of the IIR filter corresponding to the k-th microphone, reflecting the time delay of the audio signal after passing through the IIR filter. Let be the actual group delay of the all-pass phase filter corresponding to the k-th microphone. By calibrating this parameter, the all-pass phase filter can compensate for the actual group delay of the IIR filter. This represents the ideal group delay, also known as the preset standard group delay. By designing this ideal group delay, the audio signal delays of all channels are made consistent, avoiding positioning errors caused by delay differences. The actual group delay of the IIR filter for the k-th microphone is defined as follows: ,in Let be the phase response of the IIR filter corresponding to the k-th microphone.
[0028] In this embodiment, furthermore, when calibrating the all-pass phase compensation filter, the fixed delay of each microphone can be considered. The parameters of the all-pass phase compensation filter are configured based on the group delay, ideal group delay, and fixed delay of the corresponding IIR filter and microphone. All-pass filter Must meet: .in, To address the microphone delay caused by physical location, adding a fixed delay can preserve the spatial information of each microphone, maintain the time delay characteristics of each channel, and eliminate nonlinear phase distortion, thus ensuring positioning accuracy.
[0029] In this embodiment, the parameters required for calibrating the IIR filter and the all-pass phase compensation filter are: the parameters for each microphone at different angular frequencies. The amplitude response, actual group delay of each IIR filter, and fixed delay of each microphone can be obtained as follows: During the filter parameter calibration stage, the frequency domain characteristics of each microphone channel are tested using an acoustic testing system to obtain the frequency response of each microphone at different angular frequencies. The amplitude response is measured. After the IIR filter calibration is completed, the phase response of each channel's IIR filter is measured to obtain the phase response of each IIR filter, and the actual group delay is calculated. A reference microphone is determined in the microphone array, and a sound source is played in the anechoic chamber. The time delay of other microphones relative to the reference microphone is measured and used as the fixed time delay of the other microphones. The fixed time delay of the reference microphone can be set to 0. Alternatively, the physical time delay from other microphones to the reference microphone can be calculated directly from their physical locations as the fixed time delay. For example, based on the array geometry and coordinates, the path difference from each other microphone to the reference microphone is calculated, and the path difference is divided by the speed of sound to obtain the inherent physical time delay of each microphone.
[0030] Figure 3 This is a schematic diagram of the sound source localization method in this embodiment. Figure 3 As shown, corresponding to step S100, the multi-channel microphone array acquires multiple audio data inputs. Corresponding to step S200, two filters are used to calibrate the frequency response differences of each microphone and correct the phase difference to eliminate phase nonlinearity. Then, corresponding to step S300, sound source localization is performed based on the filtered audio signal. In this embodiment, coarse sound source localization is first performed through sector scanning to determine the pre-positioning sector where the sound source exists. Fine localization is then performed within the pre-positioning sector, which helps reduce the computational load of the fine localization algorithm and improves localization efficiency and accuracy.
[0031] In this embodiment, the space containing the microphone array is pre-divided into multiple sectors. The horizontal and vertical angle ranges corresponding to each sector are determined (for example, setting the horizontal angle range of each sector to 60° and the vertical angle range to 30°; this is just an example, and the specific angle ranges can be set as needed). Each sector represents a coarse localization direction region. Each sector forms a fixed beam, used for preliminary coarse localization to quickly pinpoint the approximate direction of the sound source. For each sector, the theoretical time delay from the sector direction to each microphone is pre-calculated; this theoretical time delay can be calculated based on the microphone's physical coordinates and the sector direction.
[0032] In this embodiment, step S300: determining the sound source location information within the space where the microphone array is located based on the multi-channel filtered audio signal includes the following steps: Based on the multi-channel filtered audio signal, the beam intensity of each sector is calculated, and the sector with the largest beam intensity is taken as the prepositioning sector. The calculation of beam intensity for each sector includes: for each sector, aligning all filtered audio signals according to the theoretical time delay corresponding to the sector direction, and then summing them to obtain the beam intensity of the sector. The sector with the largest beam intensity is the sector for coarse localization of the sound source. In the pre-positioned sector, a spatial spectral peak search is performed to determine the location of the energy peak point within the pre-positioned sector based on the multi-channel filtered audio signal. This step is a further fine scan within the coarsely positioned sector, accurately locating the sound source position and direction within the pre-positioned sector. The direction of the signal source is located by finding peaks in space through spatial spectral peak search, thereby performing sound source localization. By pre-selecting the sector, the scanning range and computational load of the spatial spectral peak search can be reduced, avoiding the impact on sound source localization efficiency due to excessive computational load. The location of the sound source is determined based on the location of the energy peak point; that is, the direction of the sound source location is determined based on the horizontal angle and pitch angle corresponding to the energy peak point.
[0033] In this embodiment, a spatial spectral peak search is performed on the prepositioned sector. Specifically, the SRP-PHAT (Steered Response Power with Phase Transform) algorithm is used to search the prepositioned sector with the highest sound source intensity. SRP-PHAT is a spatial spectral peak search based on time delay consistency.
[0034] When using the SRP-PHAT algorithm for precise localization, high-density SRP-PHAT scanning can be achieved by setting a scanning interval smaller than the angle of each sector. For example, a scanning accuracy of 2° horizontal angle and 2° pitch angle can be used to scan the pre-positioning sector. For each scanning direction, the corresponding sound field response power is calculated as the sound source energy to determine the energy peak point within the pre-positioning sector. Alternatively, the space where the microphone array is located can be pre-divided into multiple grids, with each sector corresponding to multiple grid points. After determining the pre-positioning sector, the SRP-PHAT algorithm is used to scan each grid point within the pre-positioning sector, searching for the energy peak point among these grid points.
[0035] In this embodiment, a spherical Fibonacci grid is pre-generated within the space where the microphone array is located. The Fibonacci grid includes multiple Fibonacci points, and the correspondence between the three-dimensional coordinates of each Fibonacci point and the spherical coordinates is established. Each Fibonacci point corresponds to a grid point. Figure 4An exemplary schematic diagram of a spherical Fibonacci network is shown. The three-dimensional coordinate range of the space containing the microphone array and the number of Fibonacci points can be predefined. Uniformly distributed sampling points (Fibonacci points) are generated on the sphere using the following formula:
[0036] Where n represents the index of the nth sampling point, and N represents the total number of sampling points. It is the golden ratio. Using Cartesian three-dimensional coordinates, This represents the polar coordinate of the nth point in the spherical coordinate system. , This represents the coordinates of the nth point on the horizontal plane. After dividing the spherical Fibonacci network, the corresponding spherical coordinates are calculated for each Fibonacci point based on its Cartesian coordinates.
[0037] Figure 5 This is a schematic diagram illustrating the process of coarse and fine localization based on the filtered audio signal in this embodiment. Figure 3 and Figure 5 As shown, spatial spectral peak search is performed within the pre-positioning sector, including: searching for multiple Fibonacci points within the pre-positioning sector, and selecting the Fibonacci point with the highest sound field response power as the energy peak point; that is, based on the horizontal and vertical angle ranges corresponding to the sector with the maximum sound source intensity (pre-positioning sector), Fibonacci points within the horizontal and vertical angle ranges of the pre-positioning sector are selected as points for SRP-PHAT scanning, and Fibonacci points outside the maximum sector range are eliminated. Then, a high-density SRP-PHAT scan is performed on the pre-positioning sector to accurately locate the sound source. Sound source location information is determined based on the peak point location, including: determining the horizontal and vertical angles corresponding to the sound source location based on the spherical coordinates corresponding to the peak point, that is, using the horizontal and vertical angles in the spherical coordinates of the peak Fibonacci point as the horizontal and vertical angles of the sound source location, respectively.
[0038] In this embodiment, the SRP-PHAT algorithm is used to search for multiple Fibonacci points within the prepositioning sector, specifically including the following steps: (1) Obtain the input data for the SRP-PHAT algorithm search.
[0039] The input data includes: the time delay difference and sample difference from each Fibonacci point coordinate to each microphone pair, and the filtered audio data of N microphone pairs.
[0040] The time delay difference and sample difference corresponding to each Fibonacci point are obtained based on the spherical coordinates of each Fibonacci point and the physical coordinates of N microphone pairs. Specifically, the spherical coordinates of the Fibonacci points are converted to Cartesian coordinates, and combined with the physical coordinates of the microphone pairs, the path difference from each Fibonacci point to each microphone pair is calculated. This path difference is then divided by the speed of sound to obtain the time delay difference. The time delay difference is multiplied by the sampling rate to convert it into a sample difference, which is used for alignment with the digital domain.
[0041] (2) Frequency domain preprocessing of audio signals.
[0042] Each audio signal is framed, windowed, and subjected to FFT (Fourier Transform) processing to convert the time-domain signal into a frequency-domain signal. Within the effective audio frequency band, calculate the generalized cross-correlation function of each microphone pair, assuming the signals received by the two microphones are as follows: and Its Fourier transform frequency domain signal is and Generalized cross-correlation function The definition is as follows:
[0043] in, express Compared to The time offset.
[0044] Then, the PHAT-weighted generalized cross-correlation function is calculated based on the generalized cross-correlation function. as follows:
[0045] in, , for The conjugate of complex numbers, For cross-power spectral modes, Angular frequency, This represents the complex exponential kernel of the Fourier transform. The PHAT weighted generalized cross-correlation function improves the robustness of time delay estimation by suppressing amplitude information and highlighting phase information.
[0046] (3) SRP-PHAT spatial spectrum summation and peak search.
[0047] For each Fibonacci point within the prepositioning sector, traverse all microphone pairs, extract the cross-correlation value of the corresponding sample difference from the generalized cross-correlation function, and sum the cross-correlation values of all microphone pairs to obtain the SRP spatial spectrum energy corresponding to that Fibonacci point. Traverse each Fibonacci point within the prepositioning sector to find the point of maximum spatial spectrum energy, and determine the horizontal and vertical angles in the spherical coordinates corresponding to the point of maximum energy as the horizontal and vertical angles of the sound source.
[0048] The SRP-PHAT algorithm combines beamforming and phase transformation techniques. By combining beam scanning with PHAT weighting, it can achieve high-precision sound source localization in complex environments such as noisy and reverberant environments. Since the SRP-PHAT global search algorithm has a large computational load, it pre-calculates the beam energy of each sector and selects the sector with the highest beam energy as the pre-positioning sector. This achieves coarse locking of a small sector space through multi-beam bursting processing, sector pre-scanning, and beam focusing, significantly reducing the complexity and computational load of the SRP-PHAT algorithm, thereby improving the real-time performance of sound source localization. Simultaneously, by using multi-beam parallel computation and sector pre-positioning to lock the strongest real sound source sector, the fine scanning range is limited to this small area, directly excluding most noise / interference directions and retaining only the direction area where the real sound source is located, thus reducing the problems of sound source position drift and jitter.
[0049] like Figure 6 As shown in the figure, this application embodiment also provides a sound source localization system for implementing the above-described sound source localization method. The system includes: The signal acquisition module M100 is used to acquire multiple initial audio signals from a microphone array, which includes multiple microphones arranged in an array. The signal filtering module M200 is used to filter the initial audio signal corresponding to each microphone using the corresponding IIR filter and the corresponding full-pass phase compensation filter to obtain multiple filtered audio signals. The IIR filter is configured to compensate for the amplitude frequency response differences of multiple microphones, and the full-pass phase compensation filter is configured to compensate for the nonlinear phase distortion of the corresponding IIR filter. The sound source localization module M300 is used to determine the location information of the sound source within the space where the microphone array is located based on the multi-channel filtered audio signal.
[0050] By employing this sound source localization system, after the signal acquisition module M100 acquires multiple initial audio signals from the microphone array, the signal filtering module M200 filters each initial audio signal using an IIR filter and an all-pass phase compensation filter. The IIR filter compensates for the amplitude and frequency response differences among the microphones, making these differences more consistent. Simultaneously, the all-pass phase compensation filter compensates for the nonlinear phase distortion of the corresponding IIR filter, ensuring that the phase of the audio signal processed by the IIR filter maintains linear characteristics. By performing joint amplitude and phase correction on the audio signal using both filters, the sound source localization module M300 performs sound source localization based on the filtered audio signal. This improves the accuracy of sound source localization, providing a precise foundation for subsequent noise suppression, speech enhancement, and other processing algorithms. It effectively solves the problem of frequency response differences caused by hardware differences among multiple microphones in the microphone array, significantly improving robustness.
[0051] In the sound source localization system of this application, the functions of each module can be implemented using the specific implementation methods of the sound source localization method described above, which will not be elaborated here.
[0052] This application embodiment also provides a sound source localization device, including a processor; a memory storing executable instructions of the processor; wherein the processor is configured to perform the steps of the sound source localization method by executing the executable instructions.
[0053] Those skilled in the art will understand that various aspects of this application can be implemented as systems, methods, or computer program products. Therefore, various aspects of this application can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, collectively referred to herein as a "circuit," "module," or "platform."
[0054] The following reference Figure 7 To describe an electronic device 600 according to this embodiment of the present application. Figure 7 The electronic device 600 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0055] like Figure 7 As shown, the electronic device 600 is presented in the form of a general-purpose computing device. The components of the electronic device 600 may include, but are not limited to: at least one processing unit 610, at least one storage unit 620, a bus 630 connecting different system components (including storage unit 620 and processing unit 610), a display unit 640, etc.
[0056] The storage unit stores program code that can be executed by the processing unit 610, causing the processing unit 610 to perform the steps described in the above-described sound source localization method section of this specification according to various exemplary embodiments of this application. For example, the processing unit 610 can perform actions such as... Figure 1 The steps are shown in the figure.
[0057] The storage unit 620 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 6201 and / or a cache storage unit 6202, and may further include a read-only memory unit (ROM) 6203.
[0058] The storage unit 620 may also include a program / utility 6204 having a set (at least one) program module 6205, such program module 6205 including but not limited to: an operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.
[0059] Bus 630 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0060] Electronic device 600 can also communicate with one or more external devices 700 (e.g., keyboard, pointing device, Bluetooth device, etc.), and with one or more devices that enable a user to interact with electronic device 600, and / or with any device that enables electronic device 600 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 650. Furthermore, electronic device 600 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 660. Network adapter 660 can communicate with other modules of electronic device 600 via bus 630. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 600, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0061] In the sound source localization device, when the program in the memory is executed by the processor, it implements the steps of the sound source localization method. Therefore, the device can also achieve the technical effects of the sound source localization method described above.
[0062] An exemplary embodiment of this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the sound source localization method described above.
[0063] In one embodiment, the computer program product can be a tangible product containing a computer program, such as a computer-readable storage medium storing the computer program. The readable storage medium can be a storage medium based on electrical, magnetic, optical, electromagnetic, infrared, or other signals, including but not limited to: random access memory (RAM), read-only memory (ROM), magnetic tape, floppy disk, flash memory, hard disk drive (HDD), solid-state drive (SSD), etc. Exemplarily, the computer program product can be implemented as a non-volatile storage medium storing a computer program, such as read-only memory, NAND flash memory, etc.
[0064] In one implementation, the computer program product can be an intangible product containing a computer program. For example, the computer program product can be implemented as a virtual digital product, such as an executable file, installation package, or other digital file storing the computer program.
[0065] Computer program code can be written in one or more programming languages. Examples of programming languages include C, Java, C++, and Python. Program code can execute entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, such as a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via an internet connection provided by a mobile network operator).
[0066] Computer programs can be carried or transmitted via signals such as electricity, magnetism, light, electromagnetic radiation, and infrared radiation. Electronic devices can convert the signals carrying computer programs into digital signals, thereby running the computer programs. When a computer program runs on an electronic device, its code is used to cause the electronic device to execute (more specifically, the processor of the electronic device to execute) the method steps of various exemplary embodiments of this application, such as the steps of the sound source localization method described above.
[0067] When the computer program is executed by the processor, it implements the steps of the sound source localization method described above. Therefore, the computer program product can also achieve the technical effects of the sound source localization method described above.
[0068] The above description, in conjunction with specific preferred embodiments, provides a further detailed explanation of this application and should not be construed as limiting the specific implementation of this application to these descriptions. For those skilled in the art, various simple deductions or substitutions can be made without departing from the concept of this application, and all such modifications or substitutions should be considered within the scope of protection of this application.
Claims
1. A method for locating a sound source, characterized in that, Includes the following steps: Acquire multiple initial audio signals from a microphone array, wherein the microphone array comprises multiple microphones arranged in an array; Each initial audio signal corresponding to a microphone is filtered using a corresponding IIR filter and a corresponding full-pass phase compensation filter to obtain multiple filtered audio signals; wherein, the IIR filter is configured to compensate for the amplitude frequency response differences of multiple microphones, and the full-pass phase compensation filter is configured to compensate for the nonlinear phase distortion of the corresponding IIR filter; Based on the multi-channel filtered audio signal, the sound source location information is determined within the space where the microphone array is located.
2. The sound source localization method according to claim 1, characterized in that, The microphone array contains multiple microphones arranged in a curved surface.
3. The sound source localization method according to claim 1, characterized in that, The parameters of the all-pass phase compensation filter are configured based on the group delay and ideal group delay of the corresponding IIR filter, so that the all-pass phase compensation filter compensates for the group delay of the IIR filter.
4. The sound source localization method according to claim 1, characterized in that, The parameters of the all-pass phase compensation filter are determined based on the group delay, ideal group delay, and fixed delay of the corresponding IIR filter and the corresponding microphone.
5. The sound source localization method according to claim 1, characterized in that, The space where the microphone array is located is divided into multiple sectors; Based on the multi-filtered audio signal, the sound source location information is determined within the space where the microphone array is located, including the following steps: Based on the multi-channel filtered audio signal, the beam intensity of each sector is calculated, and the sector with the largest beam intensity is taken as the prepositioning sector. Spatial spectral peak search is performed in the pre-positioning sector, and the position of the energy peak point in the pre-positioning sector is determined based on the multi-channel filtered audio signal. The location information of the sound source is determined based on the location of the energy peak point.
6. The sound source localization method according to claim 5, characterized in that, A spherical Fibonacci network is pre-generated within the space where the microphone array is located. The Fibonacci network includes multiple Fibonacci points, and the correspondence between the three-dimensional coordinates of each Fibonacci point and the spherical coordinates is established. The spatial spectrum peak search in the prepositioning sector includes: performing a spatial spectrum peak search on multiple Fibonacci points in the prepositioning sector, and taking the Fibonacci point with the highest sound field response power as the energy peak point. Determining the sound source location information based on the peak point location includes: determining the horizontal angle and pitch angle corresponding to the sound source location based on the spherical coordinates corresponding to the peak point.
7. The sound source localization method according to claim 6, characterized in that, The spatial spectral peak search for multiple Fibonacci points within the prepositioned sector includes the following steps: The SRP-PHAT algorithm is used to search for multiple Fibonacci points within the prepositioned sector.
8. A sound source localization system, characterized in that, The system for implementing the sound source localization method according to any one of claims 1 to 7 comprises: The signal acquisition module is used to acquire multiple initial audio signals from a microphone array, wherein the microphone array includes multiple microphones arranged in an array. The signal filtering module is used to filter the initial audio signal corresponding to each microphone using a corresponding IIR filter and a corresponding full-pass phase compensation filter to obtain multiple filtered audio signals; wherein, the IIR filter is configured to compensate for the amplitude frequency response differences of multiple microphones, and the full-pass phase compensation filter is configured to compensate for the nonlinear phase distortion of the corresponding IIR filter; The sound source localization module is used to determine the sound source location information within the space where the microphone array is located based on the multi-channel filtered audio signal.
9. A sound source localization device, characterized in that, include: processor; A memory in which executable instructions of the processor are stored; The processor is configured to perform the steps of the sound source localization method according to any one of claims 1 to 7 by executing the executable instructions.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the sound source localization method according to any one of claims 1 to 7.
