Wind detection method
The method improves wind detection accuracy in earbuds by calculating cross-correlation and phase variation between microphone signals, enabling adaptive noise reduction filters for enhanced noise cancellation.
Patent Information
- Application Number
- FR2024000099
- Authority / Receiving Office
- FR · FR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-01-05
- Publication Date
- 2026-02-20
- Estimated Expiration
- 2044-01-05
AI Technical Summary
Existing wind detection methods in noise-canceling earbuds or headphones are unreliable due to the deflection of microphone diaphragms by airflow turbulence, leading to inaccurate wind noise detection.
A method involving the calculation of cross-correlation and phase variation between signals from two external microphones, combined with energy and coherence calculations, to determine the presence of wind, and adaptive noise reduction filters based on wind detection for improved accuracy.
Enhances the reliability of wind detection and enables adaptive noise reduction by applying specific filters in the presence of wind, improving the noise cancellation performance of earbuds or headphones.
Smart Images

Figure 00000012_0000 
Figure 00000013_0000 
Figure 00000014_0000
Abstract
Description
Title of the invention: Wind detection method
[0001] The present invention relates to a wind detection method of the type implemented in a sound reproduction device and comprising the following steps:
[0002] - the measurement of a first sampled external signal (X [ 21 ] ) from a first external microphone;
[0003] - the measurement of a second external signal sampled (Y[n]) from a second external microphone; and
[0004] - the calculation of a cross correlation (Xy[n]) between the first and second signals external (X[n], y[ n ]).
[0005] Earbuds or headphones often incorporate noise-canceling treatment to attenuate or amplify external noise.
[0006] The noise reduction processing chains use an external microphone to capture ambient sound outside the cavity.
[0007] When a microphone is in an airflow, the pressure variation from the turbulence of this airflow deflects the microphone diaphragm, resulting in wind noise in the microphone output signal.
[0008] The external microphone which is used for active noise cancellation feeds the noise reduction controller with a noisy signal which requires specific processing taking into account the presence or absence of wind.
[0009] The implementation of wind detection means is described in US document 2004 / 0161120 AL
[0010] This document relates to a device for detecting the presence of wind comprising two external microphones. Each microphone is connected to a processing device that generates a cross-correlation between a first and a second signal from the microphones. The processing device also generates a signal corresponding to the autocorrelation of the first or second signal.
[0011] The processing device compares the autocorrelation and cross-correlation values. The comparison means are arranged to detect whether the autocorrelation of one signal is greater than the cross-correlation of the two signals. Satisfaction of this condition indicates the presence of wind noise.
[0012] These wind detection means are relatively unreliable for wind detection.
[0013] The invention aims to provide a more reliable method for detecting wind.
[0014] To this end, the invention relates to a wind detection method of the aforementioned type, characterized in that it also comprises:
[0015] - the calculation of a variation ( A ¢{22]) over time of a sentence (^
[22] ) of the cross-correlation (XK
[22] ); and
[0016] - determining the presence of wind as a function at least of the variation in calculated phase (A <^
[22] )-
[0017] According to particular embodiments, the process comprises one or more of the following characteristics: - the calculation of an energy (EnFPfn]) of at least one external signal and the determination of the presence of wind as a function at least of the calculated phase variation ( A ¢(22]) and the calculated energy (EnF; - the calculation of an autocorrelation (XX
[22] , YY[n]) of each first and second sampled external signal (X
[22] , Y
[21] X), a coherence calculation (cmcJnJ) between the two calculated autocorrelations, and the determination of the presence of wind as a function of at least the calculated phase variation ( A ¢(22]) and calculated consistency a step in calculating a wind estimator (equal to an estimator) phase variation depending on the calculated phase variation ( A < / {22]),
[0018] of the product of a consistency estimator dependent on the calculated consistency (r1 TnTl) and an energy estimator dependent on the calculated energy (EnFF[n]) ct of the phase variation estimator, and in which the determination of the presence of wind includes the comparison of the wind estimator (W\E'[l2]) to at least one predetermined threshold (Tl); - The wind estimator WE[n] is given by the following formula: WE[n] = 1- {1- ( 1- Cmean
[23] ) al• ( 1-} . ( 1- A ^
[22] )a3 Or
[0019] CniAan
[22] is the calculated consistency;
[0020] A (p [ n ] is the phase variation;
[0021] EnFF[n] is the energy of at least one of the first and second signals; and
[0022] a1, a2, and a3 are weights; - the calculation of the cross correlation (XY [ n ] ) recursively so that the cross correlation at the next step is calculated based on the signals sampled at the next step (X [ 22 ], Y [ 22 ] ) and the cross correlation (XY[n - l]) at the previous step; - The calculation of the cross correlation XY
[22] is given by the formula:
[0023] XY
[22] =a •XY[22-l] + (la) • ^
[22] • conj (X
[22] )
[0024] Where: a is a parameter between O and 1, X
[22] and Y
[21] are Fourier transforms of the signals measured from the first and second microphones (30, 35),
[0025] COnj (X[ll] ) is the conjugate of X[II] and XY[11- 1] is the cross correlation of the two signals at the previous step.
[0026] The invention further relates to an external noise treatment method comprising: - wind detection by implementing a method such as above, and the application of an external noise treatment dependent on the wind detection.
[0027] According to particular embodiments, the process comprises one or more of the following characteristics: - External noise processing includes an active noise reduction (ANC) mode in which, in the presence of wind, the signal from at least one of the external microphones is filtered by a peak filter at a frequency between 1.5 and 2.5 kHz; and - the external noise treatment includes a transparent mode in which, in the presence of wind, the signal from at least one of the external microphones is filtered both by a stepped low pass at a frequency between 200 and 300 Hz and a peak filter at a frequency between 800 Hz and 1 kHz.
[0028] The invention also relates to a wind detection device comprising:
[0029] - a first and a second external microphone and its own processing means to the implementation of the process as defined above. The invention also relates to a sound reproduction device comprising; - - it includes a first and a second external microphone and a module of external noise treatment suitable for implementing a process such as the above.
[0030] The invention will be better understood upon reading the following description, given solely by way of example and made with reference to the drawings in which: - [Fig.1] Fig.1 is a schematic view of an earpiece according to the invention; - [Fig. 2] [Fig. 2] is a block diagram of the auricle according to the invention; and - [Fig.3] The [Fig.3] is a block diagram of the wind detector according to the invention.
[0031] In [Fig. 1], the earpiece 1, as known, has an ear tip 5 designed to be inserted into the ear canal. This ear tip defines a sound reproduction cavity 10. A housing 15 extends the cavity 10 outside the ear. This housing 15, as known per se, receives the electronic components of the earpiece.
[0032] An electroacoustic transducer 20 is disposed in this cavity 10 opposite the ear canal. This transducer 20 is capable of emitting either a signal noise reduction, i.e. a transparency signal in cavity 10 as well as possibly to ensure the reproduction of a sound signal such as music or voice.
[0033] The transducer 20 is connected to an external noise processing module 25 to receive an excitation signal.
[0034] The earpiece includes a first external microphone 30 used only for noise attenuation. The earpiece also includes a second microphone 35 specifically designed to capture the wearer's voice when speaking.
[0035] The two microphones 30, 35 are each adapted to capture an ambient sound outside the cavity 10 from distinct angles. The two microphones 30, 35 are connected to a wind detector 40.
[0036] In addition, the earpiece includes an internal microphone 45 disposed in the cavity 10 for capturing internal sound in the cavity.
[0037] The internal microphone 45 is connected to the external noise processing module 25 to provide a feedback loop.
[0038] In [Fig.2], the earpiece components illustrated in [Fig.1] bear the same reference number. Thus, we find the two external microphones 30 and 35 as well as the internal microphone 45 and the wind sensor 40.
[0039] The external noise processing module 25 includes, at its input, a synthesis unit 50 to which the two external microphones 30 and 35 are connected. This synthesis unit 50 is designed to combine the two signals from the external microphones 30 and 35 into a single signal, taking into account the position and orientation of the two microphones on the earpiece to reconstruct a single signal representative of the external sound perceived from a single direction. The combination of these two microphones allows, for example, beamforming in the direction of the user's mouth, in the case of voice recording. The direction of the beamformed is adjustable via the delay value applied to the signals between the two microphones.
[0040] The signal from the synthesis unit 50 is addressed to an adaptive wind noise reduction filter 55. This wind noise reduction filter is adaptive depending on whether or not wind has been detected and depending on the type of processing provided by the external noise processing module 25.
[0041] For this purpose, the wind noise detector 40 is connected to the filter 55 to send a signal representative of the presence of wind, a value of 0 if there is no wind, and a value of 1 if there is wind for example.
[0042] The earpiece has a manual selector 56 for selecting the operating mode. The two operating modes are transparency mode, which allows external noises to be heard without attenuation by the earpiece structure, and noise reduction mode, which attenuates external noises as much as possible. switch 56 is connected to the wind reduction filter 55 so that it adapts the implemented filter, in the presence of wind, according to the selected operating mode.
[0043] If the noise attenuation mode is chosen, the wind reduction filter 55 implements a filter in which the signal from at least one of the external microphones or their combination is filtered by a peaking filter at a frequency between 1.5 and 2.5 kHz and preferably equal to 2 kHz.
[0044] If the transparent mode is chosen, the wind reduction filter 55 implements a filter in which the signal from at least one of the external microphones or their combination is filtered both by a low shelf filter at a frequency between 200 and 300 Hz and preferably equal to 250 Hz and a peaking filter at a frequency between 800 Hz and 1 kHz and preferably equal to 900 Hz.
[0045] The output of the wind noise reduction filter 55 is connected to a switch 57 suitable for addressing the signal in a noise reduction filter 60 or in a transparency filter 65. The switch 57 is connected to the selector 56 for its control.
[0046] The noise reduction filter 60 is a predictive active noise reduction filter (known as a feed-forward filter) based on an estimation of the inverse of the secondary path to cancel residual noise transmitted through the atrial structure. Such a filter is known per se.
[0047] Similarly, the transparency filter is a predictive noise active amplification filter based on an estimation of the primary path to cancel the sound damping by the earpiece structure. Such a filter is known per se.
[0048] The outputs of filters 60 and 65 are connected to a summing junction 70, the output of which is connected to a summing junction 75. In addition, the summing junction 75 is connected to a feedback noise-canceling filter 80 directly fed by the internal microphone 45. Alternatively, the filter 80 and the microphone 45 are omitted.
[0049] The output of the summing 75 forms an output 90 of the external noise processing module 25 which is connected to an amplifier, not shown, for the excitation of the transducer 20.
[0050] Advantageously, an input for a musical signal is also connected to the input of the amplifier.
[0051] Fig. 3 shows the detail of the wind detector 40.
[0052] According to [Fig. 3], the earpiece components illustrated in [Fig. 1] or 2 bear the same reference number. Thus, the two external microphones 30 and 35 are also shown.
[0053] The two microphones 30 and 35 are each connected to a fast Fourier transform calculation module 95 and 100.
[0054] The signals measured by microphones 30 and 35 are sampled at a predetermined frequency and are denoted x[ü] for microphone 30 and y[fl] for the microphone 35 and are stored in a buffer memory, n representing the index of the sampling window.
[0055] The fast Fourier transforms of the signals x[n] and y[n] are noted: X[n], Y
[22] .
[0056] X[n] and Y
[11] are vectors with L complex coefficients.
[0057] Since wind noise is mostly present at low frequencies, the vectors X[n] and Y[il] from the Fourier transforms are truncated in order to keep only the components at low frequencies and thus reduce the processing load.
[0058] The wind detector 40 includes two autocorrelation calculation modules 105, 110 for the X [n] and Y [n] signals.
[0059] Each of the autocorrelations XX
[22] and yy[n] is calculated recursively based on the following calculation:
[0060] XX[n] = a • XX[n -1] + (1-a) • X[n] • conj(^[^])
[0061] yy[n] = a • YY[nl] + (1-a) • y[n] • conj(y[n])
[0062] Where:
[0063] denotes the term-by-term product of the two vectors when between two vectors;
[0064] a is a smoothing parameter between 0 and 1,
[0065] n-1 is the index of the previous sampling window
[0066] conj(X[zî] ), conj(y[n]) is the conjugate of X[n], Y[n] respectively, that is to say the vector X[ 22], respectively Y[n], whose coefficients are each the conjugates.
[0067] It can be noted here that XX and YY are real numbers because they come from the multiplication of a complex number and its conjugate.
[0068] It can be noted here that XX [ n ] and YY [ 22] are real numbers because they come from the multiplication of a complex number and its conjugate.
[0069] Similarly, a cross-correlation calculation module 115 for signals from microphones 30 and 35 is provided in the wind detector 40. It receives the outputs of modules 95, 100 for calculating fast Fourier transforms and performs the cross-correlation calculation, denoted XY
[22] , recursively according to the following formula:
[0070] %y[n] = a • XY[22-1 ]+ (1-a) • Y
[22] • co22j(X
[22] )
[0071] With 0 < a < 1
[0072] The autocorrelations XX [ 12], and yy[n] and the cross correlation are vectors of complex numbers.
[0073] A coherence calculation module 120 is connected to the output of the two autocorrelation calculation modules 105 and 110 as well as to the output of the cross correlation calculation module 115.
[0074] The calculation of the coherence denoted C[zi] between the signals X[zi] and Y[zi] is given by:
[0075] c[ n ] = |xY[n]| / ^E?î^^ where denotes the square root term by term
[0076] Module 120 is suitable for calculating the mean denoted Cmean[ zî] of the square of The consistency C[zi] is given by the formula Cmean[zi] = C^Zl] where C denotes the arithmetic mean of the coefficients of the vector. Cmeai2[n] is a real number.
[0077] An energy calculation module 125 is connected to the output of the first microphone 30. The energy, denoted EnFF[n], of the signal x[zz] from the microphone is calculated using the following calculation:
[0078] EnFF [ n ] = | Zl] | WHERE II denotes the modulus of the complex number X [ n ]
[0079] The output of module 115 for calculating the cross correlation is connected to a block 130 of calculation of phase variation A <p[_n].
[0080] For this purpose, for example, the estimator 130 is suitable for calculating the phase noted which is the average of the arguments of the complex coefficients of the cross correlation vector XY[n], <p[n] est un nombre réel entre 0 et 2ir.
[0081] Module 130 is also suitable for calculating the phase difference of the cross-correlation signals XY[n] and XY[zz-l] corresponding respectively to the current window n and the previous window n-1:
[0082] A (p [n] = | <p[zz] --1]| / 2zt
[0083] A continuous wind estimation block 135 is connected to the output of the energy calculation module 125, to the output of the coherence calculation module 120 and to the output of the sentence variation calculation module 130.
[0084] The block is suitable for calculating a continuous wind estimator IVEIn] for each window. WE [n] = 1- {l-(C wea Jn]) al * (1^^^ (1- A <p[n]) a3
[0085] Where al, a2 and a3 are weights.
[0086] lVK[zi] is between 0 and 1.
[0087] A logic wind estimator 140 is connected to the output of the continuous wind estimator 135. The logic estimator 140 is designed to provide, at output 145, a logic indicator LE that can take 2 values:
[0088] 1 in the presence of wind, and
[0089] 0 in the absence of wind.
[0090] The value of the logic indicator LE is determined by comparing the value of the continuous wind estimator WE to a predetermined threshold Tl provided by a memory 150.
[0091] To avoid excessively rapid fluctuations, the value of the logic indicator, LE, is only modified if the continuous wind estimator has remained for at least a predetermined duration, preferably adjustable and for example equal to one second beyond the predetermined threshold.
[0092] The operation of the algorithm will now be briefly explained.
[0093] The earpiece measures two signals X[n] and y[n] using two microphones external signals 30 and 35. The fast Fourier transforms of these two signals are calculated to form vectors with L complex coefficients. Two autocorrelations XX[fl] and XK[Zï], as well as a cross correlation XY
[13] , are calculated recursively.
[0094] A continuous wind presence estimator [VKEtu] is calculated from the signal energy of one of the two microphones, the coherence calculated from the two autocorrelations, and the cross correlation. The phase variation A<p[ n] est calculée à partir de la corrélation croisée x y [ n ]. l’estimateur présence vent we 11 ] ensuite établi par comparaison au seuil tl
[0095] In the absence of wind, no filter is implemented by the adaptive filter 55.
[0096] In the presence of wind, and depending on the selected operating mode, one of the filters that can be implemented by the adaptive filter 55 is implemented.
Claims
1. Demands Wind detection method implemented in a sound reproduction device and comprising the following steps: - the measurement of a first sampled external signal (X[l3] ) from a first external microphone (30), - the measurement of a second sampled external signal (Y[n]) from a second external microphone (35), and - the calculation of a cross-correlation (XY[zi]) between the first and second external signals (X[l2], Y[îJ], characterized in that it further comprises: - the calculation of a variation ( A over time of a sentence ( <p[n]) de la corrélation croisée (XY[n]), et - determining the presence of wind based at least on the calculated phase variation ( A - in that it includes - the calculation of an energy (FnFFfn]) of at least one external signal and the determination of the presence of wind as a function at least of the calculated phase variation ( A and the calculated energy (EnFF[n])- - the calculation of an autocorrelation (XX [ 12 ], Y each first and second sampled external signal (X[zi], y[n]), a coherence calculation Jn]) between 'cs First and second signals from the two calculated autocorrelations and the XY cross correlation [ 22 ] and the determination of the presence of wind as a function at least of the calculated phase variation ( A tp[71]) and the calculated coherence ( - a step of calculating a wind estimator (TVE^n]) equal to a phase variation estimator dependent on the calculated phase variation (A ( / {il]), weighted by the product of a consistency estimator dependent on the calculated consistency Jll])' ^ an energy estimator dependent on the calculated energy (EnF and the phase variation estimator, the determination of the presence of wind including the comparison of the wind estimator (W_E[lî]) to at least a predetermined threshold (Tl), and in that the wind estimator WE[n] is given by the following formula: WEDi] = 1- {1- ( 1- Cmeaa[n] ) al. (}.(1-A <p[n] )a3 où est la cohérence calculée ; A cp [n] est la variation de phase ; EnFF[n] est l’énergie d’au moins l’un des premier et second signaux ; et al, a2, et a3 sont des poids.
2. A method according to claim 1, comprising calculating the cross correlation (XY[u]) recursively such that the cross correlation at the next step is calculated based on the signals sampled at the next step (X[n], Y[n]) and the cross correlation (XY[n-1]) at the previous step.
3. A method according to claim 2, wherein the calculation of the cross correlation XY [ 12 ] is given by the formula: XY[a] = a -XY[n-1] + ( 1-a) • Y[n] • conj (X[n]) Where: a is a parameter between 0 and 1, X[11] and Y[n] are Fourier transforms of the signals measured from the first and second microphones (30, 35), CO11 (X[n]) is the conjugate of X[n] and XY[n- 1] is the cross correlation of the two signals at the previous step.
4. Method of external noise treatment comprising wind detection by implementation of a method according to any one of the preceding claims, and the application of external noise treatment dependent on wind detection.
5. Method of external noise treatment according to claim 4, wherein the external noise treatment includes a noise reduction mode (ANC) in which, in the presence of wind, the signal from at least one of the external microphones is filtered by a peak filter at a frequency between 1.5 and 2.5 kHz.
6. An external noise treatment method according to claim 4 or 5, wherein the external noise treatment comprises a transparent mode in which, in the presence of wind, the signal from unless one of the external microphones is filtered by both a stepped low-pass filter at a frequency between 200 and 300 Hz and a peak filter at a frequency between 800 Hz and 1 kHz.
7. Wind detection device comprising a first and a second external microphone (30, 35) and processing means for implementing the method according to any one of claims 1 to 3.
8. Sound reproduction device comprising a first and a second external microphone (30, 35), a wind detection device according to claim 7 and an external noise processing module (25) adapted to implement a method according to any one of claims 4 to 6.