Wind noise reduction method and device based on reference microphone, and storage medium
By testing the sensitivity and frequency response curves of the microphone array, setting position weighting coefficients and frequency response curve quality, selecting the microphone with the strongest anti-wind noise capability as the reference microphone, and using an anti-wind noise algorithm to optimize the microphone array output, the problem of the microphone array's performance and accuracy being affected in windy environments was solved, achieving a better wind noise suppression effect.
Patent Information
- Application Number
- CN202310555263.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-16
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2043-05-16
AI Technical Summary
Traditional microphone arrays suffer from poor performance and accuracy in windy environments, and existing algorithms struggle to effectively eliminate wind noise.
By testing the sensitivity and frequency response curves of the microphone array, setting the position weight coefficient and frequency response curve quality, calculating the reference weight value, selecting the microphone with the strongest anti-wind noise capability as the reference microphone, and using an anti-wind noise algorithm to optimize the microphone array output.
It achieves better wind noise suppression, reduces the noise ratio in the output signal, and obtains a clean audio signal.
Smart Images

Figure CN116582781B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of microphone array wind noise reduction technology, and relates to a wind noise reduction optimization method, device and storage medium based on a reference microphone. Background Technology
[0002] A microphone array is a device used for sound signal processing, typically consisting of multiple microphones installed in a specific geometric layout. Microphone arrays have wide applications in speech recognition, sound source localization, and noise suppression. However, in some installation environments, such as those with fans, air conditioning, or open windows, microphone arrays may be affected by wind noise, thus impacting their performance and accuracy. Traditional microphone array algorithms generally pre-specify microphones or set up individual microphones as reference microphones, which have limitations in eliminating wind noise. Therefore, it is necessary to design an algorithm to dynamically find the most suitable reference microphone to better eliminate wind noise. Summary of the Invention
[0003] In view of the shortcomings of the prior art, the technical problem to be solved by the present invention is to provide a wind noise reduction optimization method, device and storage medium based on a reference microphone.
[0004] To achieve the above objectives, the present invention provides the following technical solution:
[0005] A wind noise reduction optimization method based on a reference microphone includes the following steps:
[0006] S110. Test the sensitivity and frequency response curves of each microphone in the microphone array;
[0007] S120. Set the position weight coefficient of the microphone according to the distance between each microphone in the microphone array and the center point of the microphone array;
[0008] S130. Set the target frequency response curve and calculate the frequency response curve quality of each microphone in the microphone array based on the target frequency response curve.
[0009] S140. Calculate the reference weight value of each microphone based on its sensitivity, position weight coefficient, and frequency response curve quality.
[0010] S150. Select a reference microphone based on the reference weight values of each microphone;
[0011] S160. Based on the output of the reference microphone, the output of the microphone array is optimized using an anti-wind noise algorithm to obtain the optimized output signal of the microphone array.
[0012] Furthermore, in step S120, the position weighting coefficient of each microphone in the microphone array is inversely proportional to the distance between the microphone and the center point of the microphone array.
[0013] Furthermore, in step S130, the frequency response curve quality of the microphone is calculated using the following formula:
[0014]
[0015] Wherein, RMSE represents the quality of the microphone's frequency response curve; g represents the total number of test frequency points when testing the microphone's frequency response curve, and j represents the frequency point number; Y_target_j represents the gain value corresponding to the j-th frequency point in the target frequency response curve; Y_actual_j represents the gain value corresponding to the j-th frequency point in the microphone's frequency response curve.
[0016] Furthermore, in step S140, the reference weight value for each microphone in the microphone array is calculated using the following formula:
[0017] W con _i=W loc _i×S_i×RMSE_i
[0018] Where i represents the sequence number of the microphone in the microphone array; W con _i represents the reference weight value of the i-th microphone; W loc _i represents the position weighting coefficient of the i-th microphone; S_i represents the absolute value of the sensitivity of the i-th microphone; RMSE_i represents the frequency response curve quality of the i-th microphone.
[0019] Furthermore, the microphone with the highest reference weight value in the microphone array is selected as the reference microphone.
[0020] Furthermore, in step S160, the wind noise reduction algorithm includes the following sub-steps:
[0021] S161. The autocorrelation matrix R_yy between the signals collected by each microphone in the microphone array other than the reference microphone is obtained by matrix multiplication. The calculation formula is as follows:
[0022] R_yy = np.dot(y, yT)
[0023] Where np.dot() is the matrix multiplication function; y represents a matrix formed by taking the signal collected by each microphone other than the reference microphone as an element; yT represents the matrix obtained by transposing matrix y;
[0024] S162. The cross-correlation matrix R_xy between the signal acquired by the reference microphone and the signals acquired by other microphones in the microphone array is obtained through matrix multiplication. The calculation formula is as follows:
[0025] R_xy = np.dot(x, yT)
[0026] Where x represents a vector formed from the signal acquired by the reference microphone;
[0027] S163. Calculate the wind noise reduction weight matrix w based on matrices R_yy and R_xy. The calculation formula is as follows:
[0028] w=R_xy / np.sum(R_yy,axis=1)
[0029] Here, np.sum() is the matrix summation function; axis is the parameter of np.sum(), used to specify the axis of summation;
[0030] S164. Calculate the optimized output signal s(n) of the microphone array after wind noise reduction based on the wind noise reduction weight matrix w. The calculation formula is as follows:
[0031]
[0032] Where k represents the sequence number of each microphone in the microphone array after removing the reference microphone; (N-1) represents the total number of microphones in the microphone array after removing the reference microphone; w k Let y represent the k-th element of the wind noise reduction weight matrix w. k (n) represents the signal collected by the k-th microphone.
[0033] A wind noise reduction optimization device based on a reference microphone, including
[0034] The parameter storage module is used to store the sensitivity and frequency response curves of each microphone in the microphone array;
[0035] The weighting coefficient setting module is used to set the position weighting coefficient of each microphone in the microphone array;
[0036] The frequency response curve quality calculation module is used to store the target frequency response curve and calculate the frequency response curve quality of each microphone in the microphone array based on the target frequency response curve.
[0037] The weighting calculation module is used to calculate the reference weight value of each microphone based on its sensitivity, position weight coefficient, and frequency response curve quality.
[0038] A reference microphone selection module is used to select a reference microphone based on the reference weight values of each microphone; and
[0039] The wind noise reduction algorithm module is used to optimize the output of the microphone array based on the output of the reference microphone using a wind noise reduction algorithm.
[0040] Furthermore, the wind noise reduction algorithm module includes
[0041] The first matrix multiplication unit is used to obtain the cross-correlation matrix R_yy between the signals collected by each microphone other than the reference microphone in the microphone array through matrix multiplication operations;
[0042] The second matrix multiplication unit is used to obtain the cross-correlation matrix R_xy between the signal acquired by the reference microphone and the signals acquired by other microphones in the microphone array through matrix multiplication operations.
[0043] The weight vector calculation unit is used to calculate the wind noise reduction weight matrix based on matrices R_yy and R_xy; and
[0044] The wind noise reduction optimization unit is used to calculate the wind noise reduction optimized output signal of the microphone array based on the wind noise reduction weight matrix.
[0045] A computer-readable storage medium having a computer program stored thereon, which, when loaded and executed by a processor, implements a wind noise reduction optimization method based on a reference microphone.
[0046] In this invention, by pre-calculating the reference weight value of each microphone in the microphone array, the microphone with the highest reference weight value is selected as the reference microphone according to preset rules during wind noise reduction optimization. By selecting the microphone with the strongest wind noise interference resistance in the microphone array as the reference microphone, a better wind noise reduction effect can be achieved during wind noise reduction optimization. Attached Figure Description
[0047] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0048] Figure 1 This is a flowchart of one embodiment of the wind noise reduction optimization method based on a reference microphone according to the present invention.
[0049] Figure 2 This is a schematic diagram showing the positions of each microphone in a microphone array.
[0050] Figure 3 The flowchart for the wind noise reduction algorithm.
[0051] Figure 4 This is a structural block diagram of one embodiment of the wind noise reduction optimization device based on a reference microphone according to the present invention.
[0052] Figure 5 This is a block diagram of the wind noise prevention algorithm module.
[0053] The meanings of the labels in the attached diagram are as follows:
[0054] Parameter storage module - 100; Weight coefficient setting module - 200; Frequency response curve quality calculation module - 300; Weight value calculation module - 400; Reference microphone selection module - 500; Anti-wind noise algorithm module - 600; First matrix multiplication unit - 610; Second matrix multiplication unit - 620; Weight vector calculation unit - 630; Anti-wind noise optimization unit - 640. Detailed Implementation
[0055] The following specific examples illustrate the implementation of the present invention. The illustrations provided in the following embodiments are only schematic representations of the basic concept of the present invention. Unless otherwise specified, the following embodiments and features can be combined with each other.
[0056] Please see Figure 1 , Figure 1 This is a flowchart of one embodiment of the wind noise reduction optimization method based on a reference microphone according to the present invention. This embodiment of the wind noise reduction optimization method based on a reference microphone includes the following steps:
[0057] S110. Test the sensitivity and frequency response curves of each microphone in the microphone array. For the reference microphone selected for wind noise reduction optimization, lower sensitivity is better; this is because lower sensitivity reduces the microphone's sensitivity to environmental noise (including wind noise) when receiving audio signals, thus reducing noise interference with the audio signal. Lower sensitivity means the microphone's sound reception is more limited, which is advantageous for reducing interference from environmental noise such as wind noise. Additionally, the reference microphone selected for wind noise reduction optimization should have a relatively flat frequency response, meaning it can accurately receive and transmit sound signals across the entire sound frequency range without introducing significant frequency deviations or distortion. This ensures good recording quality and prevents sound reproduction and recognition from being affected by frequency response distortion. Therefore, in this embodiment, sensitivity and frequency response curves are the primary criteria for selecting the reference microphone.
[0058] S120. Set the position weight coefficient of each microphone in the microphone array based on the distance between each microphone and the center point of the microphone array. In this embodiment, the position weight coefficient of each microphone in the microphone array is inversely proportional to the distance between that microphone and the center point of the microphone array. For example, please refer to... Figure 2 This is a schematic diagram showing the positions of each microphone in a microphone array with 32 microphones. Figure 2 Each number in the code represents a microphone. Figure 2 As can be seen, the 32 microphones can be positioned along four axes, with each microphone on each axis being equidistant from the center point of the microphone array. Since the positional weighting coefficient of a microphone is related to its distance from the center point, microphones equidistant from the center point can be grouped together, with each group having the same positional weighting coefficient. This results in 8 groups of microphones: {mic1,9,17,25},{mic2,10,18,26},{mic3,11,19,27},{mic4,12,20,28},{mic5,13,21,29},{mic6,14,22,30},{mic7,15,23,31},{mic8,16,24,32}. Here, mic1 represents the first group of microphones, mic2 represents the second group, and so on. Based on the distance between each group of microphones and the center point of the microphone array, the position weight coefficients of the microphones from the 1st group to the 8th group can be set to 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, and 0.8 respectively; the higher the position weight coefficient, the higher the priority.
[0059] S130. Set the target frequency response curve, and calculate the frequency response quality of each microphone in the microphone array based on the target frequency response curve. The following formula can be used to calculate the microphone frequency response quality:
[0060]
[0061] Where RMSE represents the quality of the microphone's frequency response curve; g represents the total number of frequency points tested when testing the microphone's frequency response curve, and j represents the index of the frequency point; Y_target_j represents the gain value corresponding to the j-th frequency point in the target frequency response curve, i.e., 1≤j≤n; Y_actual_j represents the gain value corresponding to the j-th frequency point in the microphone's frequency response curve. A larger RMSE indicates that the frequency response curve is closer to the target frequency response curve, and the better the flatness.
[0062] S140. Calculate the reference weight value for each microphone in the microphone array based on its sensitivity, position weighting coefficient, and frequency response curve quality. The reference weight value for each microphone in the microphone array can be calculated using the following formula:
[0063] W con _i=W loc _i×S_i×RMSE_i
[0064] Where i represents the sequence number of the microphone in the microphone array, i.e., 1≤i≤N, and N represents the total number of microphones in the microphone array. W con_i represents the reference weight value of the i-th microphone; W loc _i represents the position weight coefficient of the i-th microphone. S_i represents the absolute value of the sensitivity of the i-th microphone, with the unit of sensitivity being dBm. Lower sensitivity values receive higher weight values. RMSE_i represents the frequency response curve quality of the i-th microphone. Higher quality frequency response curves have better flatness and higher priority.
[0065] S150. Select a reference microphone based on the reference weight value of each microphone. In this embodiment, since the reference weight value has a higher priority, the microphone with the highest reference weight value in the microphone array is selected as the reference microphone.
[0066] S160. Based on the output of the reference microphone, an anti-wind noise algorithm is used to optimize the output of the microphone array, resulting in the optimized output signal. Since a microphone has already been selected as the reference microphone in the array, and the reference microphone has strong anti-wind noise capabilities, the signal from the reference microphone can be used to cancel out wind noise in the signals from other microphones in order to reduce wind noise. Specifically, assume the signal collected by the k-th microphone (hereinafter referred to as the k-th microphone signal) is y. k Given x(n) and the signal acquired by the reference microphone (hereinafter referred to as the reference microphone signal), the output signal of the microphone array can be calculated using the following formula:
[0067]
[0068] Where k represents the sequence number of each microphone in the microphone array after removing the reference microphone; (N-1) represents the total number of microphones in the microphone array after removing the reference microphone. k This represents the wind noise reduction weighting coefficient (scalar) for the k-th microphone. In this embodiment, n represents the number of sampling points on the time axis, and the signal x(n) consists of the sampled values of the reference microphone at n sampling points, and the signal y... k (n) consists of the sampled values from the k-th microphone at n sampling points. To minimize wind noise in the output signal, the wind noise reduction weighting coefficient should satisfy the following condition:
[0069]
[0070] Please see Figure 3 To determine the wind noise reduction weighting coefficients for each microphone that satisfy the above conditions, the wind noise reduction algorithm may include the following sub-steps:
[0071] S161. The autocorrelation matrix R_yy between the signals collected by each microphone in the microphone array other than the reference microphone is obtained by matrix multiplication. The calculation formula is as follows:
[0072] R_yy = np.dot(y, yT)
[0073] Here, `np.dot()` is the matrix multiplication function in Python. `y` represents a matrix formed by treating the signals collected by each microphone other than the reference microphone as individual elements. Each element of matrix `y` is a vector containing n elements; for example, the k-th element of matrix `y` is the vector containing the signal from the k-th microphone. k (n) is a vector composed of n sampled values. Matrix y is a one-dimensional matrix with dimension (N-1); T represents the transpose of the matrix, and yT represents the matrix obtained by transposing matrix y. np.dot(y,yT) calculates the autocorrelation matrix between the signals collected by each microphone, resulting in a two-dimensional matrix R_yy with dimension (N-1,N-1). The element in the k-th row and m-th column of matrix R_yy represents the autocorrelation coefficient vector between the k-th and m-th microphone signals; k and m are the indices of the microphones after removing the reference microphone; i.e., 1≤k≤(N-1), 1≤m≤(N-1).
[0074] S162. The cross-correlation matrix R_xy between the signal acquired by the reference microphone and the signals acquired by other microphones in the microphone array is obtained through matrix multiplication. The calculation formula is as follows:
[0075] R_xy = np.dot(x, yT)
[0076] Here, x represents a vector formed from the signal acquired by the reference microphone, that is, a vector composed of n sampled values of the signal x(n) acquired by the reference microphone; the number of elements in vector x is n. np.dot(x,yT) calculates the cross-correlation matrix between the signal x(n) acquired by the reference microphone and the signals acquired by other microphones; the principle is to treat the reference microphone signal x(n) as a row vector and each of the other microphone signals as a column vector, and combine the results of their cross-correlation coefficients into a matrix. Therefore, the resulting matrix R_xy is a one-dimensional matrix with (N-1) elements. R_xy(k) represents the k-th element of the one-dimensional matrix R_xy, that is, the reference microphone signal x(n) and the k-th microphone signal y. k A cross-correlation vector between (n); the nth element R_xy(k,n) in this vector represents the nth sampling point of the reference microphone signal x(n) and the kth microphone signal y on the time axis. k (n) The cross-correlation coefficient between the nth sampling point on the time axis.
[0077] S163. Calculate the wind noise reduction weight matrix w based on the autocorrelation matrix R_yy and the cross-correlation matrix R_xy. The calculation formula is as follows:
[0078] w=R_xy / np.sum(R_yy,axis=1)
[0079] Here, `np.sum()` is the matrix summation function in Python; `axis` is the parameter of `np.sum()`, used to specify the axis of summation. The number of elements in the anti-noise weight matrix `w` is (N-1), meaning that each microphone in the microphone array after removing the reference microphone corresponds to one element of the anti-noise weight matrix `w`, and the value of each element of the anti-noise weight matrix `w` is the anti-noise weight coefficient of a microphone. Dividing each element of the cross-correlation matrix `R_xy` by the sum of the elements of the corresponding row of the autocorrelation matrix `R_yy` yields the anti-noise weight matrix `w` with (N-1) elements. The anti-noise weight matrix `w` is a one-dimensional matrix with a length equal to the number of microphones after removing the reference microphone (N-1). Its elements are scalars, each representing the anti-noise weight coefficient of the corresponding microphone in the microphone array; these values represent the contribution of each microphone to the output signal of the microphone array. According to the calculation formula of the anti-noise weight matrix `w`, its k-th element `w`... k The calculation formula is:
[0080]
[0081] Where sum(R_yy(k)) represents the sum of the elements in the k-th row of matrix R_yy.
[0082] S164. Calculate the optimized output signal s(n) of the microphone array after wind noise reduction based on the wind noise reduction weight matrix w. The calculation formula is as follows:
[0083]
[0084] In this embodiment, by pre-calculating the reference weight value of each microphone in the microphone array, the microphone with the highest reference weight value is selected as the reference microphone according to preset rules during wind noise reduction optimization. By selecting the microphone with the strongest wind noise interference resistance as the reference microphone, better wind noise reduction effect can be achieved in subsequent microphone array wind noise reduction optimization. The wind noise reduction weight coefficients of other microphones are designed based on the reference microphone. After weighted summation of the signals from other microphones, the proportion of noise in the output signal can be greatly reduced, resulting in a cleaner audio signal, thereby achieving the purpose of noise reduction.
[0085] Please see Figure 4 , Figure 4This is a structural block diagram of an embodiment of the wind noise reduction optimization device based on a reference microphone according to the present invention. This embodiment of the wind noise reduction optimization device based on a reference microphone includes a parameter storage module 100, a weight coefficient setting module 200, a frequency response curve quality calculation module 300, a weight value calculation module 400, a reference microphone selection module 500, and a wind noise reduction algorithm module 600.
[0086] The parameter storage module 100 is used to store the sensitivity and frequency response curves of each microphone in the microphone array obtained from pre-testing. For the reference microphone selected during wind noise reduction optimization, the lower the sensitivity, the less sensitive the microphone is to wind noise when receiving audio signals, thereby reducing the interference of wind noise on the audio signal. In addition, the reference microphone selected during wind noise reduction optimization should have a relatively flat frequency response, that is, it should be able to accurately receive and transmit sound signals across the entire sound frequency range without introducing significant frequency deviations or distortions. Therefore, in this embodiment, the sensitivity and frequency response curves are stored to facilitate the selection of the reference microphone.
[0087] The weighting coefficient setting module 200 is used to set the position weighting coefficient for each microphone in the microphone array. The position weighting coefficient for each microphone in the microphone array can be set to be inversely proportional to the distance between the microphone and the center point of the microphone array. The closer the microphone is to the center point of the microphone array, the higher the position weighting coefficient, and the higher the priority.
[0088] The frequency response curve quality calculation module 300 is used to store a pre-set target frequency response curve and to calculate the frequency response curve quality of each microphone in the microphone array based on the target frequency response curve. The frequency response curve quality calculation module uses the following formula to calculate the frequency response curve quality of the microphones:
[0089]
[0090] The weighting calculation module 400 is used to calculate a reference weighting value for each microphone in the microphone array based on the sensitivity, position weighting coefficient, and frequency response curve quality of each microphone. The weighting calculation module uses the following formula to calculate the weighting value of each microphone in the microphone array:
[0091] W con _i=W loc _i×S_i×RMSE_i
[0092] The reference microphone selection module 500 is used to select a reference microphone based on the reference weight value of each microphone. In this embodiment, the higher the reference weight value, the higher the priority. Therefore, the microphone with the highest reference weight value in the microphone array is selected as the reference microphone.
[0093] The wind noise reduction algorithm module 600 is used to optimize the output of the microphone array based on the output of a reference microphone using a wind noise reduction algorithm. Please refer to [link / reference]. Figure 5 The anti-wind noise algorithm module 600 may include a first matrix multiplication unit 610, a second matrix multiplication unit 620, a weight vector calculation unit 630, and an anti-wind noise optimization unit 640. The first matrix multiplication unit 610 is used to obtain the cross-correlation matrix R_yy between the signals collected by each microphone in the microphone array other than the reference microphone through matrix multiplication operations. The second matrix multiplication unit 620 is used to obtain the cross-correlation matrix R_xy between the signal collected by the reference microphone and the signals collected by other microphones in the microphone array through matrix multiplication operations. The weight vector calculation unit 630 is used to calculate the anti-wind noise weight matrix based on the matrix R_yy and the matrix R_xy. The anti-wind noise optimization unit 640 is used to calculate the wind-noise optimized output signal of the microphone array based on the anti-wind noise weight matrix.
[0094] In this embodiment, a reference weight value for the microphone is calculated using stored microphone sensitivity and frequency response curves and set position weight coefficients. This allows the microphone with the strongest wind noise resistance to be selected as the reference microphone from the microphone array. The wind noise reduction algorithm module determines the wind noise reduction weight coefficients for other microphones based on the reference microphone and performs a weighted summation of the signals from the other microphones. This significantly reduces the proportion of noise in the output signal, resulting in a cleaner audio signal and achieving noise reduction.
[0095] This invention also discloses a computer-readable storage medium. A preferred embodiment of this computer-readable storage medium stores a computer program that, when loaded and executed by a processor, implements the wind noise reduction optimization method based on a reference microphone as described in any of the above embodiments. In this embodiment, the storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof. The details of the method implemented when the computer program is loaded and executed by the processor are described in the foregoing embodiments and will not be repeated here.
[0096] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the present invention, and all such modifications or substitutions should be covered within the scope of the claims of the present invention.
Claims
1. A wind noise reduction optimization method based on a reference microphone, characterized in that, Includes the following steps: S110. Test the sensitivity and frequency response curves of each microphone in the microphone array; S120. Set the position weight coefficient of the microphone according to the distance between each microphone in the microphone array and the center point of the microphone array; S130. Set the target frequency response curve and calculate the frequency response curve quality of each microphone in the microphone array based on the target frequency response curve. S140. Calculate the reference weight value of each microphone based on its sensitivity, position weight coefficient, and frequency response curve quality. S150. Select the microphone with the highest reference weight value in the microphone array as the reference microphone; S160. Based on the output of the reference microphone, the output of the microphone array is optimized using an anti-wind noise algorithm to obtain the optimized output signal of the microphone array.
2. The wind noise reduction optimization method based on a reference microphone according to claim 1, characterized in that: In step S120, the position weighting coefficient of each microphone in the microphone array is inversely proportional to the distance between the microphone and the center point of the microphone array.
3. The wind noise reduction optimization method based on a reference microphone according to claim 1, characterized in that, In step S130, the frequency response curve quality of the microphone is calculated using the following formula: Wherein, RMSE represents the quality of the microphone's frequency response curve; g represents the total number of test frequency points when testing the microphone's frequency response curve, and j represents the frequency point number; Y_target_j represents the gain value corresponding to the j-th frequency point in the target frequency response curve; Y_actual_j represents the gain value corresponding to the j-th frequency point in the microphone's frequency response curve.
4. The wind noise reduction optimization method based on a reference microphone according to claim 3, characterized in that, In step S140, the reference weight value for each microphone in the microphone array is calculated using the following formula: IN con _i=W loc _i×S_i×RMSE_i Where i represents the sequence number of the microphone in the microphone array; W con _i represents the reference weight value of the i-th microphone; W loc _i represents the position weighting coefficient of the i-th microphone; S_i represents the absolute value of the sensitivity of the i-th microphone; RMSE_i represents the frequency response curve quality of the i-th microphone.
5. The wind noise reduction optimization method based on a reference microphone according to any one of claims 1 to 4, characterized in that, In step S160, the wind noise reduction algorithm includes the following sub-steps: S161. The autocorrelation matrix R_yy between the signals collected by each microphone in the microphone array other than the reference microphone is obtained by matrix multiplication. The calculation formula is as follows: R_yy = np.dot(y, yT) Where np.dot() is the matrix multiplication function; y represents a matrix formed by taking the signal collected by each microphone other than the reference microphone as an element; yT represents the matrix obtained by transposing matrix y; S162. The cross-correlation matrix R_xy between the signal acquired by the reference microphone and the signals acquired by other microphones in the microphone array is obtained through matrix multiplication. The calculation formula is as follows: R_xy = np.dot(x, yT) Where x represents a vector formed from the signal acquired by the reference microphone; S163. Calculate the wind noise reduction weight matrix w based on matrices R_yy and R_xy. The calculation formula is as follows: w=R_xy / np.sum(R_yy,axis=1) Here, np.sum() is the matrix summation function; axis is the parameter of np.sum(), used to specify the axis of summation; S164. Calculate the optimized output signal s(n) of the microphone array after wind noise reduction based on the wind noise reduction weight matrix w. The calculation formula is as follows: Where k represents the sequence number of each microphone in the microphone array after removing the reference microphone; (N-1) represents the total number of microphones in the microphone array after removing the reference microphone; w k Let y represent the k-th element of the wind noise reduction weight matrix w. k (n) represents the signal collected by the k-th microphone.
6. A wind noise reduction optimization device based on a reference microphone, characterized in that: include The parameter storage module is used to store the sensitivity and frequency response curves of each microphone in the microphone array; The weighting coefficient setting module is used to set the position weighting coefficient of each microphone in the microphone array; The frequency response curve quality calculation module is used to store the target frequency response curve and calculate the frequency response curve quality of each microphone in the microphone array based on the target frequency response curve. The weighting calculation module is used to calculate the reference weight value of each microphone based on its sensitivity, position weight coefficient, and frequency response curve quality. The reference microphone selection module is used to select the microphone with the highest reference weight value in the microphone array as the reference microphone. as well as The wind noise reduction algorithm module is used to optimize the output of the microphone array based on the output of the reference microphone using a wind noise reduction algorithm.
7. The wind noise reduction optimization device based on a reference microphone according to claim 6, characterized in that: The wind noise reduction algorithm module includes The first matrix multiplication unit is used to obtain the cross-correlation matrix R_yy between the signals collected by each microphone other than the reference microphone in the microphone array through matrix multiplication operations; The second matrix multiplication unit is used to obtain the cross-correlation matrix R_xy between the signal acquired by the reference microphone and the signals acquired by other microphones in the microphone array through matrix multiplication operations. The weight vector calculation unit is used to calculate the wind noise reduction weight matrix based on matrix R_yy and matrix R_xy; as well as The wind noise reduction optimization unit is used to calculate the wind noise reduction optimized output signal of the microphone array based on the wind noise reduction weight matrix.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is loaded and executed by the processor, it implements the wind noise reduction optimization method based on the reference microphone as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Sound pickup equipment, method, device and system and a storage medium
CN112702669A