1. Field of the Invention
The present invention relates to acoustics, and, in particular, to techniques for reducing wind-induced noise in microphone systems, such as those in hearing aids and mobile communication devices, such as laptop computers and cell phones.
2. Description of the Related Art
Wind-induced noise in the microphone signal input to mobile communication devices is now recognized as a serious problem that can significantly limit communication quality. This problem has been well known in the hearing aid industry, especially since the introduction of directionality in hearing aids.
Wind-noise sensitivity of microphones has been a major problem for outdoor recordings. Wind noise is also now becoming a major issue for users of directional hearing aids as well as cell phones and hands-free headsets. A related problem is the susceptibility of microphones to the speech jet, or flow of air from the talker's mouth. Recording studios typically rely on special windscreen socks that either cover the microphone or are placed between the talker and the microphone. For outdoor recording situations where wind noise is an issue, microphones are typically shielded by windscreens made of a large foam or thick fuzzy material. The purpose of the windscreen is to eliminate the airflow over the microphone's active element, but allow the desired acoustic signal to pass without any modification.
Certain embodiments of the present invention relate to a technique that combines a constrained microphone adaptive beamformer and a multichannel parametric noise suppression scheme to allow for a gradual transition from (i) a desired directional operation when noise and wind conditions are benign to (ii) non-directional operation with increasing amount of wind-noise suppression as the environment tends to higher wind-noise conditions.
In one possible implementation, the technique combines the operation of a constrained adaptive two-element differential microphone array with a multi-microphone wind-noise suppression algorithm. The main result is the combination of these two technological solutions. First, a two-element adaptive differential microphone is formed that is allowed to adjust its directional response by automatically adjusting its beampattern to minimize wind noise. Second, the adaptive beamformer output is fed into a multichannel wind-noise suppression algorithm. The wind-noise suppression algorithm is based on exploiting the knowledge that wind-noise signals are caused by convective airflow whose speed of propagation is much less than that of desired propagating acoustic signals. It is this unique combination of both a constrained two-element adaptive differential beamformer with multichannel wind-noise suppression that offers an effective solution for mobile communication devices in varying acoustic environments.
In one embodiment, the present invention is a method for processing audio signals. First and second cardioid signals are generated from first and second microphone signals. A first adaptation factor is generated and applied to the second (e.g., backward) cardioid signal to generate an adapted second cardioid signal. The first (e.g., forward) cardioid signal and the adapted second cardioid signal are combined to generate a first output audio signal corresponding to a first beampattern having no nulls for at least one value of the first adaptation factor.
Other aspects, features, and advantages of the present invention will become more fully apparent from the following detailed description, the appended claims, and the accompanying drawings in which like reference numerals identify similar or identical elements.
a) shows a directivity plot for a first-order array having no nulls, while
A differential microphone is a microphone that responds to spatial differentials of a scalar acoustic pressure field. The order of the differential components that the microphone responds to denotes the order of the microphone. Thus, a microphone that responds to both the acoustic pressure and the first-order difference of the pressure is denoted as a first-order differential microphone. One requisite for a microphone to respond to the spatial pressure differential is the implicit constraint that the microphone size is smaller than the acoustic wavelength. Differential microphone arrays can be seen directly analogous to finite-difference estimators of continuous spatial field derivatives along the direction of the microphone elements. Differential microphones also share strong similarities to superdirectional arrays used in electromagnetic antenna design. The well-known problems with implementation of superdirectional arrays are the same as those encountered in the realization of differential microphone arrays. It has been found that a practical limit for differential microphones using currently available transducers is at third-order. See G. W. Elko, “Superdirectional Microphone Arrays,” Acoustic Signal Processing for Telecommunication, Kluwer Academic Publishers, Chapter 10, pp. 181-237, March, 2000, the teachings of which are incorporated herein by reference and referred to herein as “Elko-1.”
First-Order Dual-Microphone Array
The output mi(t) of each microphone spaced at distance d for a time-harmonic plane wave of amplitude So and frequency ωincident from angle θ can be written according to the expressions of Equation (1) as follows:
m
1(t)=Soejax−jkd cos(θ)/2
m
2(t)=Soejax+jkd cos(θ)/2 (1)
The output E(θ,t) of a weighted addition of the two microphones can be written according to Equation (2) as follows:
where w1 and w2 are weighting values applied to the first and second microphone signals, respectively.
If kd<<π, then the higher-order terms (“h.o.t.” in Equation (2)) can be neglected. If w1=−w2, then we have the pressure difference between two closely spaced microphones. This specific case results in a dipole directivity pattern cos(θ) as can easily be seen in Equation (2). However, any first-order differential microphone pattern can be written as the sum of a zero-order (omnidirectional) term and a first-order dipole term (cos(θ)). A first-order differential microphone implies that w1≈−w2. Thus, a first-order differential microphone has a normalized directional pattern E that can be written according to Equation (3) as follows:
E(θ)=α±(1−α)cos(θ) (3)
where typically 0≦α≦1, such that the response is normalized to have a maximum value of 1 at θ=0, and for generality, the ± indicates that the pattern can be defined as having a maximum either at θ=0 or θ=π. One implicit property of Equation (3) is that, for 0≦α≦1, there is a maximum at θ=0 and a minimum at an angle between π/2 and π. For values of 0.5<α≦1, the response has a minimum at π, although there is no zero in the response. A microphone with this type of directivity is typically called a “sub-cardioid” microphone.
When α=0.5, the parametric algebraic equation has a specific form called a cardioid. The cardioid pattern has a zero response at θ=180°. For values of 0≦α≦0.5, there is a null at:
b) shows a directional response corresponding to α=0.5 which is the cardioid pattern. The concentric rings in the polar plots of
A computationally simple and elegant way to form a general first-order differential microphone is to form a scalar combination of forward-facing and backward-facing cardioid signals. These signals can be obtained by using both solutions in Equation (3) and setting α=0.5. The sum of these two cardioid signals is omnidirectional (since the cos(θ) terms subtract out), and the difference is a dipole pattern (since the constant term α subtracts out).
A practical way to realize the back-to-back cardioid arrangement shown in
By combining the microphone signals defined in Equation (1) with the delay and subtraction as shown in
C
F(kd,θ)=−2jSo sin(kd[1+cos θ]/2). (5)
Similarly, the backward-facing cardioid microphone signal can similarly be written according to Equation (6) as follows:
C
B(kd,θ)=−2jSo sin(kd[1−cos θ]/2). (6)
If both the forward-facing and backward-facing cardioids are averaged together, then the resulting output is given according to Equation (7) as follows:
E
c-omni(kd,θ)=1/2[CF(kd,θ)+CB(kd,θ)]=−2jSo sin(kd/2)cos([kd/2] cos θ). (7)
For small kd, Equation (7) has a frequency response that is a first-order high-pass, and the directional pattern is omnidirectional.
The subtraction of the forward-facing and backward-facing cardioids yields the dipole response of Equation (8) as follows:
E
c-dipole(kd,θ)=CF(kd,θ)−CB(kd,θ)=−2jSo cos(kd/2)sin([kd/2] cos θ). (8)
A dipole constructed by simply subtracting the two pressure microphone signals has the response given by Equation (9) as follows:
E
dipole(kd,θ)=−2jSo sin([kd/2] cos θ). (9)
One observation to be made from Equation (8) is that the dipole's first zero occurs at twice the value (kd=2π) of the cardioid-derived omnidirectional and cardioid-derived dipole term (kd=π) for signals arriving along the axis of the microphone pair.
and hence
A desired signal S(jω) arriving from straight on (θ=0) is distorted by the factor | sin(kd)|. For a microphone used for a frequency range from about kd=2π·100 Hz·T to kd=π/2, first-order recursive low-pass filter 616 can equalize the mentioned distortion reasonably well. There is a one-to-one relationship between the adaptation factor β and the null angle θn as given by Equation (12) as follows:
Since it is expected that the sound field varies, it is of interest to allow the first-order microphone to adaptively compute a response that minimizes the output under a constraint that signals arriving from a selected range of direction are not impacted. An LMS or Stochastic Gradient algorithm is a commonly used adaptive algorithm due to its simplicity and ease of implementation. An LMS algorithm for the back-to-back cardioid adaptive first-order differential array is given in U.S. Pat. No. 5,473,701 and in Elko-2, the teachings of both of which are incorporated herein by reference.
Subtraction node 614 generates the unfiltered output signal y(n) according to Equation (13) as follows:
y(t)=cF(t)−βcB(t). (13)
Squaring Equation (13) results in Equation (14) as follows:
y
2(t)=cF2(t)−2βcF(t)cB(t)+β2cB(t). (14)
The steepest-descent algorithm finds a minimum of the error surface E[y2(t)] by stepping in the direction opposite to the gradient of the surface with respect to the adaptive weight parameter β. The steepest-descent update equation can be written according to Equation (15) as follows:
where μ is the update step-size and the differential gives the gradient of the error surface E[y2(t)] with respect to β. The quantity that we want to minimize is the mean of y2(t) but the LMS algorithm uses the instantaneous estimate of the gradient. In other words, the expectation operation in Equation (15) is not applied and the instantaneous estimate is used. Performing the differentiation yields Equation (16) as follows:
Thus, we can write the LMS update equation according to Equation (17) as follows:
βt+1=βt+2μy(t)cB(t). (17)
Typically the LMS algorithm is slightly modified by normalizing the update size and adding a regularization constant ε. Normalization allows explicit convergence bounds for μ to be set that are independent of the input power. Regularization stabilizes the algorithm when the normalized input power in cB becomes too small. The LMS version with a normalized μ is therefore given by Equation (18) as follows:
where the brackets (“<.>”) indicate a time average. One practical issue occurs when there is a desired signal arriving at only θ=0. In this case, β becomes undefined. A practical way to handle this case is to limit the power ratio of the forward-to-back cardioid signals. In practice, limiting this ratio to a factor of 10 is sufficient.
The intervals βε[0,1] and βε[1,∞) are mapped onto θε[0.5π,π)] and θε[0,0.5π], respectively. For negative β, the directivity pattern does not contain a null. Instead, for small |β| with −1<β<0, a minimum occurs at θ=π; the depth of which reduces with growing |β|. For β=−1, the pattern becomes omnidirectional and, for β<−1, the rear signals become amplified. An adaptive algorithm 618 chooses β such that the energy of y(n) in a certain exponential or sliding window becomes a minimum. As such, β should be constrained to the interval [−1,1]. Otherwise, a null may move into the front half plane and suppress the desired signal. For a pure propagating acoustic field (no wind or self-noise), it can be expected that the adaptation selects a β equal to or bigger than zero. For wind and self-noise, it is expected that −1≦β<0. An observation that β would tend to values of less than 0 indicates the presence of uncorrelated signals at the two microphones. Thus, one can also use β to detect (1) wind noise and conditions where microphone self-noise dominates the input power to the microphones or (2) coherent signals that have a propagation speed much less than the speed of sound in the medium (such as coherent convected turbulence).
It should be clear that acoustic fields can be comprised of multiple simultaneous sources that vary in time and frequency. As such, U.S. Pat. No. 5,473,701 proposed that the adaptive beamformer be implemented in frequency subbands. The realization of a frequency-dependent null or minimum location is now straightforward. We replace the factor β by a filter with a frequency response H(jω) that is real and not bigger than one. The impulse response h(n) of such a filter is symmetric about the origin and hence noncausal. This involves the insertion of a proper delay d in both microphone paths.
In the embodiment of
In principle, we could directly use any standard adaptive filter algorithm (LMS, FAP, FTF, RLS . . . ) for the adjustment of h(n), but it would be challenging to easily incorporate the constraint H(jω)≦1. Therefore and in view of a computationally inexpensive solution, we realize H(jω) as a linear combination of band-pass filters of a uniform filterbank. The filterbank consists of M complex band-passes that are modulated versions of a low-pass filter W(jω). That filter is commonly referred to as prototype filter. See R. E. Crochiere and L. R. Rabiner, Multirate Digital Signal Processing, Prentice Hall, Englewood Cliffs, N.J., (1983), and P. P. Vaidyanathan, Multirate Systems and Filter Banks, Prentice Hall, Englewood Cliffs, N.J., (1993), the teachings of both of which are incorporated herein by reference. Since h(n) and H(jω) have to be real, we combine band-passes with conjugate complex impulse responses. For reasons of simplicity, we choose M as a power of two so that we end up with M/2+1 channels. The coefficients β0,β1, . . . βK/2 control the position of the null or minimum in the different subbands. The βu's form a linear combiner and will be adjusted by an NLMS-type algorithm.
It is desirable to design W(jω) such that the constraint H(jω)≦1 will be met automatically for all frequencies kd, given all coefficients βu are smaller than or equal to one. The heuristic NLMS-type algorithm of the following Equations (19)-(21) is apparent:
It is by no means straightforward that this algorithm always converges to the optimum solution, but simulations and real time implementations have shown its usefulness.
The back-to-back cardioid power and cross-power can be related to the acoustic pressure field statistics. Using
where R12 is the cross-correlation function of the acoustic pressures and R11 and R22 are the acoustic pressure auto-correlation functions.
For an isotropic noise field at frequency ω, the cross-correlation function R12 of the acoustic pressures p1 and p2 at the two sensors 102 of
and the acoustic pressure auto-correlation functions are given by Equation (24) as follows:
R
11(τ)=R22(τ)=cos(ωτ), (24)
where τ is time and k is the acoustic wavenumber.
For ωT=kd, βopt is determined by substituting Equations (23) and (24) into Equation (22), yielding Equation (25) as follows:
For small kd, kd<<π/2, Equation (25) approaches the value of β=0.5. For the value of β=0.5, the array response is that of a hypercardioid, i.e., the first-order array that has the highest directivity index, which corresponds to the minimum power output for all first-order arrays in an isotropic noise field.
Due to electronics, both wind noise and self-noise have approximately 1/f2 and 1/f spectral shapes, respectively, and are uncorrelated between the two microphone channels (assuming that the microphones are spaced at a distance that is larger than the turbulence correlation length of the wind). From this assumption, Equation (22) can be reduced to Equation (26) as follows:
It may seem redundant to include both terms in the numerator and the denominator in Equation (26), since one might expect the noise spectrum to be similar for both microphone inputs since they are so close together. However, it is quite possible that only one microphone element is exposed to the wind or turbulent jet from a talker's mouth, and, as such, it is better to keep the expression more general. A simple model for the electronics and wind-noise signals would be the output of a single-pole low-pass filter operating on a wide-sense-stationary white Gaussian signal. The low-pass filter h(t) can be written as Equation (27) as follows:
h(t)=e−αtU(t) (27)
where U(t) is the unit step function, and α is the time constant associated with the low-pass cutoff frequency. The power spectrum S(ω) can thus be written according to Equation (28) as follows:
and the associated autocorrelation function R(τ) according to Equation (29) as follows:
A conservative assumption would be to assume that the low-frequency cutoff for wind and electronic noise is approximately 100 Hz. With this assumption, the time constant α is 10 milliseconds. Examining Equations (26) and (29), one can observe that, for small spacing (d on the order of 2 cm), the value of T≈60μ seconds, and thus R(T)≦1. Thus,
βopt-noise=−1 (30)
Equation (30) is also valid for the case of only a single microphone exposed to the wind noise, since the power spectrum of the exposed microphone will dominate the numerator and denominator of Equation (26). Actually, this solution shows a limitation of the use of the back-to-back cardioid arrangement for this one limiting case. If only one microphone was exposed to the wind, the best solution is obvious: pick the microphone that does not have any wind contamination. A more general approach to handling asymmetric wind conditions is described in the next section.
From the results given in Equation (30), it is apparent that, to minimize wind noise, microphone thermal noise, and circuit noise in a first-order differential array, one should allow the differential array to attain an omnidirectional pattern. At first glance, this might seem counterintuitive since an omnidirectional pattern will allow more spatial noise into the microphone output. However, if this spatial noise is wind noise, which is known to have a short correlation length, an omnidirectional pattern will result in the lowest output power as shown by Equation (30). Likewise, when there is no or very little acoustic excitation, only the uncorrelated microphone thermal and electronic noise is present, and this noise is also minimized by setting β≈−1, as derived in Equation (30).
As mentioned at the end of the previous section, with asymmetric wind noise, there is a solution where one can process the two microphone signals differently to attain a higher SNR output than selecting β=−1. One approach, shown in
ε(t)=γm2(t)−(1−γ)m1(t) (31)
where γ is a combining coefficient whose value is between 0 and 1, inclusive.
Squaring the combined output ε(t) of Equation (31) to compute the combined output power ε2 yields Equation (32) as follows:
ε2=γ2m2(t)−2γ(1−γ)m1(t)m2(t)+(1−γ)2m12(t) (32)
Taking the expectation of Equation (32) yields Equation (33) as follows:
ε=γ2R22(0)−2γ(1−γ)R12(0)+(1−γ)2R11(0) (33)
where R11(0) and R22(0) are the autocorrelation functions for the two microphone signals of Equation (1), and R12(0) is the cross-correlation function between those two microphone signals.
Assuming uncorrelated inputs, where R12(0)=0, Equation (33) simplifies to Equation (34) as follows:
ε=γ2R22(0)+(1−γ)2R11(0) (34)
To find the minimum, the derivative of Equation (34) is set equal to 0. Thus, the optimum value for the combining coefficient γ that minimizes the combined output ε is given by Equation (35) as follows:
If the two microphone signals are correlated, then the optimum combining coefficient γopt is given by Equation (36) as follows:
To check these equations for consistency, consider the case where the two microphone signals are identical (m1(t)=m2(t)). Note that this discussion assumes that the omnidirectional microphone responses are flat over the desired frequency range of operation with no distortion, where the electrical microphone output signals are directly proportional to the scalar acoustic pressures applied at the microphone inputs. For this specific case,
γopt=1/2 (37)
which is a symmetric solution, although all values (0≦γopt≦1) of γopt yield the same result for the combined output signal. If the two microphone signals are uncorrelated and have the same power, then the same value of γopt is obtained. If m1(t)=0, ∀t and E[m22]>0, then γopt=0, which corresponds to a minimum energy for the combined output signal. Likewise, if E[m1(t)2]>0 and m2(t)=0, ∀t, then γopt=1, which again corresponds to a minimum energy for the combined output signal.
A more-interesting case is one that covers a model of the case of a desired signal that has delay and attenuation between the microphones with independent (or less restrictively uncorrelated) additive noise. For this case, the microphone signals are given by Equation (38) as follows:
m
1(t)=x(t)+n1(t)
m
2(t)=αx(t−τ)+n2(t) (38)
where n1(t) and n2(t) are uncorrelated noise signals at the first and second microphones, respectively, α is an amplitude scale factor corresponding to the attenuation of the acoustic pressure signal picked up by the microphones. The delay, τ is the time that it takes for the acoustic signal x(t) to travel between the two microphones, which is dependent on the microphone spacing and the angle that the acoustic signal is propagating relative to the microphone axis.
Thus, the correlation functions can be written according to Equation (39) as follows:
R
11(0)=Rxx(0)+Rn
R
22(0)=α2Rxx(0)+Rn
R
12(0)=αRxx(−τ)=αRxx(τ) (39)
where Rxx(0) is the autocorrelation at zero time lag for the propagating acoustic signal, Rxx(τ) and Rxx(−τ) are the correlation values at time lags +τ and −τ, respectively, and Rn
Substituting Equation (39) into Equation 36) yields Equation (40) as follows:
If it is assumed that the spacing is small (e.g., kd<<π, where k=ω/c is the wavenumber, and d is the spacing) and the signal m(t) is relatively low-passed, then the following approximation holds: Rxx(τ)≈R11(0). With this assumption, the optimal combining coefficient γopt is given by Equation (41) as follows:
One limitation to this solution is the case when the two microphones are placed in the nearfield, especially when the spacing from the source to the first microphone is smaller than the spacing between the microphones. For this case, the optimum combiner will select the microphone that has the lowest signal. This problem can be seen if we assume that the noise signals are zero and α=0.5 (the rear microphone is attenuated by 6 dB).
Thus, for nearfield sources with no noise, the optimum combiner will move towards the microphone with the lower power. Although this is what is desired when there is asymmetric wind noise, it is desirable to select the higher-power microphone for the wind noise-free case. In order to handle this specific case, it is desirable to form a robust wind-noise detector that is immune to the nearfield effect. This topic is covered in a later section.
As shown in Elko-1, the sensitivity of differential microphones is proportional to kn, where |k|=k=ω/c and n is the order of the differential microphone. For convective turbulence, the speed of the convected fluid perturbations is much less that the propagation speed for radiating acoustic signals. For wind noise, the difference between propagating speeds is typically by two orders of magnitude. As a result, for convective turbulence and propagating acoustic signals at the same frequency, the wave-number ratio will differ by two orders of magnitude. Since the sensitivity of differential microphones is proportional to kn, the output signal ratio of turbulent signals will be two orders of magnitude greater than the output signal ratio of propagating acoustic signals for equivalent levels of pressure fluctuation.
A main goal of incoherent noise and turbulent wind-noise suppression is to determine what frequency components are due to noise and/or turbulence and what components are desired acoustic signals. The results of the previous sections can be combined to determine how to proceed.
U.S. Pat. No. 7,171,008 proposes a noise-signal detection and suppression algorithm based on the ratio of the difference-signal power to the sum-signal power. If this ratio is much smaller than the maximum predicted for acoustic signals (signals propagating along the axis of the microphones), then the signal is declared noise and/or turbulent, and the signal is used to update the noise estimation. The gain that is applied can be (i) the Wiener filter gain or (ii) by a general weighting (less than 1) that (a) can be uniform across frequency or (b) can be any desired function of frequency.
U.S. Pat. No. 7,171,008 proposed to apply a suppression weighting function on the output of a two-microphone array based on the enforcement of the difference-to-sum power ratio. Since wind noise results in a much larger ratio, suppressing by an amount that enforces the ratio to that of pure propagating acoustic signals traveling along the axis of the microphones results in an effective solution. Expressions for the fluctuating pressure signals p1(t) and p2(t) at both microphones for acoustic signals traveling along the microphone axis can be written according to Equation (42) as follows:
p
1(t)=s(t)+V(t)+n1(t)
p
2(t)=s(t−τs)+V(t−τV)+n2(t) (42)
where τs is the delay for the propagating acoustic signal s(t), τV is the delay for the convective or slow propagating signal V(t), and n1(t) and n2(t) represent microphone self-noise and/or incoherent turbulent noise at the microphones. If we represent the signals in the frequency domain, then the power spectrum Yd(ω) of the pressure difference (p1(t)−p2(t)) and the power spectrum Ys(ω) of the pressure sum (p1(t)+p2(t)) can be written according to Equations (43) and (44) as follows:
where γc(ω) is the turbulence coherence as measured or predicted by the Corcos (see G. M. Corcos, “The structure of the turbulent pressure field in boundary layer flows,” J. Fluid Mech., 18: pp. 353-378, 1964, the teachings of which are incorporated herein by reference) or other turbulence models, (ω) is the RMS power of the turbulent noise, and N1 and N2, respectively, represent the RMS powers of the independent noise at the two microphones due to sensor self-noise.
The ratio of these factors gives the expected power ratio R(ω) of the difference and sum signals between the microphones according to Equation (45) as follows:
For turbulent flow where the convective wave speed is much less than the speed of sound, the power ratio R(ω) is much greater (by the ratio of the different propagation speeds). Also, since the convective-turbulence spatial-correlation function decays rapidly and this term becomes dominant when turbulence (or independent sensor self-noise is present), the resulting power ratio tends towards unity, which is even greater than the ratio difference due to the speed of propagation difference. As a reference, a purely propagating acoustic signal traveling along the microphone axis, the power ratio is given by Equation (46) as follows:
For general orientation of a single plane-wave where the angle between the planewave and the microphone axis is θ, the power ratio is given by Equation (47) as follows:
The results shown in Equations (46) and (47) led to a relatively simple algorithm for suppression of airflow turbulence and sensor self-noise. The rapid decay of spatial coherence results in the relative powers between the differences and sums of the closely spaced pressure (zero-order) microphones being much larger than for an acoustic planewave propagating along the microphone array axis. As a result, it is possible to detect whether the acoustic signals transduced by the microphones are turbulent-like noise or propagating acoustic signals by comparing the sum and difference powers.
If sound arrives from off-axis from the microphone array, then the ratio of the difference-to-sum power levels for acoustic signals becomes even smaller as shown in Equation (47). Note that it has been assumed that the coherence decay is similar in all directions (isotropic). The power ratio R maximizes for acoustic signals propagating along the microphone axis. This limiting case is the key to the proposed wind-noise detection and suppression algorithm described in U.S. Pat. No. 7,171,008. The proposed suppression gain G(ω) is stated as follows: If the measured ratio exceeds that given by Equation (46), then the output signal power is reduced by the difference between the measured power ratio and that predicted by Equation (46). This gain G(ω) is given by Equation (48) as follows:
where Rm(ω) is the measured difference-to-sum signal power ratio. A potentially desirable variation on the proposed suppression scheme described in Equation (48) allows the suppression to be tailored in a more general and flexible way by specifying the applied suppression as a function of the measured ratio R and the adaptive beamformer parameter β as a function of frequency.
One proposed suppression scheme is described in PCT patent application serial no. PCT/US06/44427. The general idea proposed in that application is to form a piecewise-linear suppression function for each subband in a frequency-domain implementation. Since there is the possibility of having a different suppression function for each subband, the suppression function can be more generally represented as a suppression matrix.
Combining the suppression defined in Equation (48) with the results given on the first-order adaptive beamformer leads to a new approach to deal with wind and self-noise. A desired property of this combined system is that one can maintain directionality when wind-noise sources are smaller than acoustic signals picked up by the microphones. Another advantage of the proposed solution is that the operation of the noise suppression can be accomplished in a gradual and continuous fashion. This novel hybrid approach is expressed in Table I. In this implementation, the values of β are constrained by the value of R(ω) as determined from the electronic windscreen algorithm described in U.S. Pat. No. 7,171,008 and PCT patent application no. PCT/US06/44427. In Table I, the directivity determined solely by the value of R(ω) is set to a fixed value. Thus, when there is no wind present, the value of β is selected by the designer to have a fixed value. As wind gradually becomes stronger, there is a monotonic mapping of the increase in R(ω) to β(ω) such that β(ω) gradually moves towards a value of −1 as the wind increases. One could also just switch the value of β to −1 when any wind is detected by the electronic windscreen or robust wind noise detectors described within this specification.
Similarly, one can use the constrained or unconstrained value of β(ω) to determine if there is wind noise or uncorrelated noise in the microphone channels. Table II shows appropriate settings for the directional pattern and electronic windscreen operation as a function of the constrained or unconstrained value of β(ω) from the adaptive beamformer. In Table II, the suppression function is determined solely from the value of the constrained (or even possibly unconstrained) β, where the constrained β is such that −1<β<1. For 0<β<1, the value of β utilized by the beamformer can be either a fixed value that the designer would choose, or allowed to be adaptive. As the value of β becomes negative, the suppression would gradually be increased until it reached the defined maximum suppression when β≈−1. Of course, one could use both the values of R(ω) and β(ω) together to form a more-robust detection of wind and then to apply the appropriate suppression depending on how strong the wind condition is. The general scheme is that, as wind noise becomes larger and larger, the amount of suppression increases, and the value of β moves towards −1.
In differential microphones arrays, the magnitudes and phase responses of the microphones used to realize the arrays should match closely. The degree to which the microphones should match increases as the ratio of the microphone element spacing becomes much less than the acoustic wavelength. Thus, the mismatch in microphone gains that is inherent in inexpensive electret and condenser microphones on the market today should be controlled. This potential issue can be dealt with by calibrating the microphones during manufacture or allowing for an automatic in-situ calibration. Various methods for calibration exist and some techniques that handle automatic in-situ amplitude and phase mismatch are covered in U.S. Pat. No. 7,171,008.
One scheme that has been shown to be effective in implementation is to use an adaptive filter to match bandpass-filtered microphone envelopes.
For each different subband of each different microphone signal, an envelope detector 1206 generates a measure of the subband envelope. For each non-reference microphone (each of microphones 1202-2, 1202-3, . . . in the implementation of
The time-varying filter coefficients wj for each microphone and each set of one or more adjacent subbands are applied to control block 1212, which applies those filter coefficients to three different low-pass filters that generate three different filtered weight values: an “instantaneous” low-pass filter LPi having a high cutoff frequency (e.g., about 200 Hz) and generating an “instantaneous” filtered weight value wij, a “fast” low-pass filter LPf having an intermediate cutoff frequency (e.g., about 20 Hz) and generating a “fast” filtered weight value wfj, and a “slow” low-pass filter LPs having a low cutoff frequency (e.g., about 2 Hz) and generating a “slow” filtered weight value wsj. The instantaneous weight values wij are preferably used in a wind-detection scheme, the fast weight values wfj are preferably used in an electronic wind-noise suppression scheme, and the slow weight values wsj are preferably used in the adaptive beamformer. The exemplary cutoff frequencies for these lowpass filters are just suggestions and should not be considered optimal values.
As shown in
The generation of wind-detection signal 1214 by a robust wind-detection scheme based on computed wind metrics in different subbands is described in further detail below with respect to
In the last section, it was shown that, for farfield sources, the difference-to-sum power ratio is an elegant and computationally simple detector for wind and uncorrelated noise between corresponding subbands of two microphones. For nearfield operation, this simple wind-noise detector can falsely trigger even when wind is not present due to the large level differences that the microphones can have in the nearfield of the desired source. Therefore, a wind-noise detector should be robust with nearfield sources.
As shown in
For each of the three illustrated subbands of filterbank 1304, a corresponding difference node 1308 generates the difference between the subband coefficients for reference microphone 1202-1 and weighted subband coefficients for non-reference microphone 1202-2, where the weighted subband coefficients are generated by applying the corresponding instantaneous weight factor wij=2 from control block 1212 to the “raw” subband coefficients for non-reference microphone 1202-2 at a corresponding amplifier 1306. Note that, if the weight factor wij=2 is less than 1, then amplifier 1306 will attenuate rather than amplify the raw subband coefficients.
The resulting difference values are scaled at scalar amplifiers 1310 based on scale factors sk that depend on the spacing between the two microphones (e.g., the greater the microphone spacing and greater the frequency of the subband, the greater the scale factor). The magnitudes of the resulting scaled, subband-coefficient differences are generated at magnitude detectors 1312. Each magnitude constitutes a measure of the difference-signal power for the corresponding subband. The three difference-signal power measures are summed at summation block 1314, and the resulting sum is normalized at normalization amplifier 1316 based on the summed magnitude of all three subbands for both microphones 1202-1 and 1202-2. This normalization factor constitutes a measure of the sum-signal power for all three subbands. As such, the resulting normalized value constitutes a measure of the effective difference-to-sum power ratio R (described previously) for the three subbands.
This difference-to-sum power ratio R is thresholded at threshold detector 1318 relative to a specified corresponding ratio threshold level. If the difference-to-sum power ratio R exceeds the ratio threshold level, then wind is detected for those three subbands, and control block 1212 suspends updating of the corresponding weight factors by the low-pass filters for those three subbands.
In
The algorithms described herein for the detection of wind noise also function effectively as algorithms for the detection of microphone thermal noise and circuit noise (where circuit noise includes quantization noise in sampled data implementations). As such, as used in this specification including the attached claims, the detection of the presence of wind noise should be interpreted as referring to the detection of the presence of any of wind noise, microphone thermal noise, and circuit noise.
Calibration filter 1504 calibrates both electrical audio signals 1503 relative to one another. This calibration can either be amplitude calibration, phase calibration, or both. U.S. Pat. No. 7,171,008 describes some schemes to implement this calibration in situ. In one embodiment, a first set of weight factors are applied to microphone signals 1503(1) and 1503(2) to generate first calibrated signals 1505(1) and 1505(2) for use in the adaptive beamformer, while a second set of weight factors are applied to the microphone signals to generate second calibrated signals 1520(1) and 1520(2) for use in SNS processor 1518. As describe earlier with respect to
Copies of the first calibrated signals 1505(1) and 1505(2) are delayed by delay blocks 1506(1) and 1506(2). In addition, first calibrated signal 1505(1) is applied to the positive input of difference node 1508(2), while first calibrated signal 1505(2) is applied to the positive input of difference node 1508(1). The delayed signals 1507(1) and 1507(2) from delay nodes 1506(1) and 1506(2) are applied to the negative inputs of difference nodes 1508(1) and 1508(2), respectively. Each difference node 1508 generates a difference signal 1509 corresponding to the difference between the two applied signals.
Difference signals 1509 are front and back cardioid signals that are used by LMS (least mean square) block 1510 to adaptively generate control signal 1511, which corresponds to a value of adaptation factor β that minimizes the power of output signal 1519. LMS block 1510 limits the value of β to a region of −1≦β≦0. One modification of this procedure would be to set β to a fixed, non-zero value, when the computed value for β is greater that 0. By allowing for this case, β would be discontinuous and would therefore require some smoothing to remove any switching transient in the output audio signal. One could allow β to operate adaptively in the range −1≦β≦1, where operation for 0≦β≦1 is described in U.S. Pat. No. 5,473,701.
Difference signal 1509(1) is applied to the positive input of difference node 1514, while difference signal 1509(2) is applied to gain element 1512, whose output 1513 is applied to the negative input of difference node 1514. Gain element 1512 multiplies the rear cardioid generated by difference node 1508(2) by a scalar value computed in the LMS block to generate the adaptive beamformer output. Difference node 1514 generates a difference signal 1515 corresponding to the difference between the two applied signals 1509(1) and 1513.
After the adaptive beamformer of elements 1504-1514, first-order low-pass filter 1516 applies a low-pass filter to difference signal 1515 to compensate for the C high-pass that is imparted by the cardioid beamformers. The resulting filtered signal 1517 is applied to spatial-noise suppression processor 1518. SNS processor 1518 implements a generalized version of the electronic windscreen algorithm described in U.S. Pat. No. 7,171,008 and PCT patent application PCT/US06/44427 as a subband-based processing function. Allowing the suppression to be defined generally as a piecewise linear function in the log-log domain, rather than by the ratio G(ω) given in Equation (48), allows more-precise tailoring of the desired operation of the suppression as a function of the log of the measured power ratio Rm. Processing within SNS block 1518 is dependent on second calibrated signals 1520 from both microphones as well as the filtered output signal 1517 from the adaptive beamformer. SNS block 1518 can also use the β control signal 1511 generated by LMS block 1510 to further refine and control the wind-noise detector and the overall suppression to the signal achieved by the SNS block. Although not shown in
One difference between audio system 1500 of
One advantage of this implementation over the time-domain adaptive beamformers of
The previous descriptions have been limited to first-order differential arrays. However, the processing schemes to reduce wind and circuit noise for first-order arrays are similarly applicable to higher-order differential arrays, which schemes are developed here.
For a plane-wave signal s(t) with spectrum S(ω) and wavevector k incident on a three-element array with displacement vector d shown in
where d=|d| is the element spacing for the first-order and second-order sections. The delay T1 is equal to the delay applied to one sensor of the first-order sections, and T2 is the delay applied to the combination of the two first-order sections. The subscript on the variable Y is used to designate that the system response is a second-order differential response. The magnitude of the wavevector k is |k|=k=ω/c, and c is the speed of sound. Taking the magnitude of Equation (49) yields:
Now, it is assumed that the spacing and delay are small such that kd1,kd2<<π and ωT1, ωT2<<π, so that:
The terms inside the brackets in Equation (51) contain the array directional response, composed of a monopole term, a first-order dipole term cos θ that resolves the component of the acoustic particle velocity along the sensor axis, and a linear quadruple term cos2 θ. One thing to notice in Equation (51) is that the second-order array has a second-order differentiator frequency dependence (i.e., output increases quadratically with frequency). This frequency dependence is compensated in practice by a second-order lowpass filter.
The topology shown in
In the design of differential arrays, the array directivity is of major interest. One possible way to simplify the analysis for the directivity of the Nth-order array is to define a variable αi such that:
The array response can then be rewritten as:
The last product term expresses the angular dependence of the array, the terms that precede it determine the sensitivity of the array as a function of frequency, spacing, and time delay. The last product term contains the angular dependence of the array. Now define an output lowpass filter HL(ω) as:
This definition for HL(ω) results in a flat frequency response and unity gain for signals arriving from θ=0°. Note that this is true for frequencies and spacings where the small kd approximation is valid. The exact response can be calculated from Equation (50). With the filter described in Equation (55), the output signal is:
Thus, the directionality of an Nth-order differential array is the product of N first-order directional responses, which is a restatement of the pattern multiplication theorem in electroacoustics. If the αi are constrained as 0≦αi≦0.5, then the directional response of the Nth-order array shown in Equation (54) contains N zeros (or nulls) at angles between 90°≦θ≦180°. The null locations can be calculated for the αi as:
One possible realization of the second-order adaptive differential array variable time delays T1 and T2 is shown in
The null angles for the Nth-order array are at the null locations of each first-order section that constitutes the canonic form. The null location for each section is:
Note that, for βi=1, θi=90°; and, for βi=0, θi=180°. For small kd (kd=ωT<<π):
The relationship between βi and the αi defined in Equation (53) is:
The optimum values of βi are defined here as the values of βi that minimize the mean-square output from the sensor. Starting with a topology that is a straightforward extension to the first-order adaptive differential array developed earlier and shown in
The terms CF1(t) and CF2(t) are the two signals for the forward facing cardioid outputs formed as shown in
y(t)=CFF(t)−α1cBB(t)−α2cTT(t). (64)
where the following variable substitutions have been made:
These results have an appealing intuitive form if one looks at the beam-patterns associated with the signals cFF(t), cBB(t), and cTT(t). These directivity functions are phase aligned relative to the center microphone, i.e., they are all real when the coordinate origin is located at the center of the array.
The locations of the nulls in the pattern can be found as follows:
To find the optimum α1,2 values, start with squaring Equation (64):
E[y
2(t)]=RFF(0)−2α1RFB(0)−2α2RFT(0)+2α1α2RBT(0)+α12RBB(0)+α22RTT(0). (67)
where R are the auto and cross-correlation functions for zero lag between the signals cFF(t), cBB(t), and CTT(t). The extremal values can be found by taking the partial derivatives of Equation (67) with respect to α1 and α2 and setting the resulting equations to zero. The solution for the extrema of this function results in two first-order equations and the optimum values for α1 and α2 are:
To simplify the computation of R, the base pattern is written in terms of spherical harmonics. The spherical harmonics possess the desirable property that they are mutually orthonormal, where:
where Y0(θ,φ), Y1(θ,φ), and Y2(θ,φ) are the standard spherical harmonics where the spherical harmonics Ynm(θ,φ) are of degree m and order n. The degree of the spherical harmonics in Equation (71) is 0.
Based on these expressions, the values for the auto- and cross-correlations are:
The patterns were normalized by ⅓ before computing the correlation functions. Substituting the results into Equation (65) yield the optimal values for α1,2:
It can be verified that these settings for α result in the second hypercardioid pattern which is known to maximize the directivity index (DI).
In
Moreover, the outputs of difference nodes 2006 and 2008 may be said to be second-order cardioid signals, while output signal y of
Although
The LMS or Stochastic Gradient algorithm is a commonly used adaptive algorithm due to its simplicity and ease of implementation. The LMS algorithm is developed in this section for the second-order adaptive differential array. To begin, recall:
y(t)=cFF(t)−α1cBB(t)−α2cTT(t) (74)
The steepest descent algorithm finds a minimum of the error surface E[y2(t)] by stepping in the direction opposite to the gradient of the surface with respect to the weight parameters α1 and α2. The steepest descent update equation can be written as:
where μi is the update step-size and the differential gives the gradient component of the error surface E[y2(t)] in the αi direction (the divisor of 2 has been inserted to simplify some of the following expressions). The quantity that is desired to be minimized is the mean of y2(t) but the LMS algorithm uses an instantaneous estimate of the gradient, i.e., the expectation operation in Equation (75) is not applied and the instantaneous estimate is used instead. Performing the differentiation for the second-order case yields:
Thus the LMS update equation is:
α1t+1=αit+μ1[α2cBB(t)−cFF(t)+α2cTT(t)]cBB(t)
α2t+1=αit+μ2[α2cTT(t)−cFF(t)+α1cBB(t)]cTT(t) (77)
Typically, the LMS algorithm is slightly modified by normalizing the update size so that explicit convergence bounds for μi can be stated that are independent of the input power. The LMS version with a normalized μi (NLMS) is therefore:
where the brackets indicate a time average.
A more compact derivation for the update equations can be obtained by defining the following definitions:
With these definitions, the output error an be written as (dropping the explicit time dependence):
e=c
FF−αTc (81)
The normalized update equation is then:
where μ is the LMS step size, and δ is a regularization constant to avoid the potential singularity in the division and controls adaptation when the input power in the second-order back-facing cardioid and toroid are very small.
Since the look direction is known, the adaptation of the array is constrained such that the two independent nulls do not fall in spatial directions that would result in an attenuation of the desired direction relative to all other directions. In practice, this is accomplished by constraining the values for α1,2. An intuitive constraint would be to limit the coefficients so that the resulting zeros cannot be in the front half plane. This constraint is can be applied on β1,2; however, it turns out that it is more involved in strictly applying this constraint on α1,2. Another possible constraint would be to limit the coefficients so that the sensitivity to any direction cannot exceed the sensitivity for the look direction. This constraint results in the following limits:
−1≦α1,2≦1
The audio systems of
Although the present invention has been described in the context of an audio system having two omnidirectional microphones, where the microphone signals from those two omni microphones are used to generate forward and backward cardioids signals, the present invention is not so limited. In an alternative embodiment, the two microphones are cardioid microphones oriented such that one cardioid microphone generates the forward cardioid signal, while the other cardioid microphone generates the backward cardioid signal. In other embodiments, forward and backward cardioid signals can be generated from other types of microphones, such as any two general cardioid microphone elements, where the maximum reception of the two elements are aimed in opposite directions. With such an arrangement, the general cardioid signals can be combined by scalar additions to form two back-to-back cardioid microphone signals.
Although the present invention has been described in the context of an audio system in which the adaptation factor is applied to the backward cardioid signal, as in
Although the present invention has been described in the context of an audio system in which the adaptation factor is limited to values between −1 and +1, inclusive, the present invention can, in theory, also be implemented in the context of audio systems in which the value of the adaptation factor is allowed to be less than −1 and/or allowed to be greater than +1.
Although the present invention has been described in the context of systems having two microphones, the present invention can also be implemented using more than two microphones. Note that, in general, the microphones may be arranged in any suitable one-, two-, or even three-dimensional configuration. For instance, the processing could be done with multiple pairs of microphones that are closely spaced and the overall weighting could be a weighted and summed version of the pair-weights as computed in Equation (48). In addition, the multiple coherence function (reference: Bendat and Piersol, “Engineering applications of correlation and spectral analysis”, Wiley Interscience, 1993.) could be used to determine the amount of suppression for more than two inputs. The use of the difference-to-sum power ratio can also be extended to higher-order differences. Such a scheme would involve computing higher-order differences between multiple microphone signals and comparing them to lower-order differences and zero-order differences (sums). In general, the maximum order is one less than the total number of microphones, where the microphones are preferably relatively closely spaced.
As used in the claims, the term “power” in intended to cover conventional power metrics as well as other measures of signal level, such as, but not limited to, amplitude and average magnitude. Since power estimation involves some form of time or ensemble averaging, it is clear that one could use different time constants and averaging techniques to smooth the power estimate such as asymmetric fast-attack, slow-decay types of estimators. Aside from averaging the power in various ways, one can also average the ratio of difference and sum signal powers by various time-smoothing techniques to form a smoothed estimate of the ratio.
As used in the claims, the term first-order “cardioid” refers generally to any directional pattern that can be represented as a sum of omnidirectional and dipole components as described in Equation (3). Higher-order cardioids can likewise be represented as multiplicative beamformers as described in Equation (56). The term “forward cardioid signal’ corresponds to a beampattern having its main lobe facing forward with a null at least 90 degrees away, while the term “backward cardioid signal” corresponds to a beampattern having its main lobe facing backward with a null at least 90 degrees away.
In a system having more than two microphones, audio signals from a subset of the microphones (e.g., the two microphones having greatest power) could be selected for filtering to compensate for wind noise. This would allow the system to continue to operate even in the event of a complete failure of one (or possibly more) of the microphones.
The present invention can be implemented for a wide variety of applications having noise in audio signals, including, but certainly not limited to, consumer devices such as laptop computers, hearing aids, cell phones, and consumer recording devices such as camcorders. Notwithstanding their relatively small size, individual hearing aids can now be manufactured with two or more sensors and sufficient digital processing power to significantly reduce diffuse spatial noise using the present invention.
Although the present invention has been described in the context of air applications, the present invention can also be applied in other applications, such as underwater applications. The invention can also be useful for removing bending wave vibrations in structures below the coincidence frequency where the propagating wave speed becomes less than the speed of sound in the surrounding air or fluid.
Although the calibration processing of the present invention has been described in the context of audio systems, those skilled in the art will understand that this calibration estimation and correction can be applied to other audio systems in which it is required or even just desirable to use two or more microphones that are matched in amplitude and/or phase.
The present invention may be implemented as analog or digital circuit-based processes, including possible implementation on a single integrated circuit. As would be apparent to one skilled in the art, various functions of circuit elements may also be implemented as processing steps in a software program. Such software may be employed in, for example, a digital signal processor, micro-controller, or general-purpose computer.
The present invention can be embodied in the form of methods and apparatuses for practicing those methods. The present invention can also be embodied in the form of program code embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention. The present invention can also be embodied in the form of program code, for example, whether stored in a storage medium, loaded into and/or executed by a machine, or transmitted over some transmission medium or carrier, such as over electrical wiring or cabling, through fiber optics, or via electromagnetic radiation, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention. When implemented on a general-purpose processor, the program code segments combine with the processor to provide a unique device that operates analogously to specific logic circuits.
Unless explicitly stated otherwise, each numerical value and range should be interpreted as being approximate as if the word “about” or “approximately” preceded the value of the value or range.
Reference herein to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments necessarily mutually exclusive of other embodiments. The same applies to the term “implementation.”
The use of figure numbers and/or figure reference labels in the claims is intended to identify one or more possible embodiments of the claimed subject matter in order to facilitate the interpretation of the claims. Such use is not to be construed as necessarily limiting the scope of those claims to the embodiments shown in the corresponding figures.
It will be further understood that various changes in the details, materials, and arrangements of the parts which have been described and illustrated in order to explain the nature of this invention may be made by those skilled in the art without departing from the principle and scope of the invention as expressed in the following claims. Although the steps in the following method claims, if any, are recited in a particular sequence with corresponding labeling, unless the claim recitations otherwise imply a particular sequence for implementing some or all of those steps, those steps are not necessarily intended to be limited to being implemented in that particular sequence.
This application is a continuation-in-part of PCT patent application no. PCT/US06/44427, filed on Nov. 15, 2006 as attorney docket no. 1053.006PCT, which (i) claimed the benefit of the filing date of U.S. provisional application No. 60/737,577, filed on Nov. 17, 2005 as attorney docket no. 1053.006PROV, and (ii) was itself a continuation-in-part of U.S. patent application Ser. No. 10/193,825, filed on Jul. 12, 2002 as attorney docket no. 1053.002 and issued on Jan. 30, 2007 as U.S. Pat. No. 7,171,008, which claimed the benefit of the filing date of U.S. provisional application No. 60/354,650, filed on Feb. 5, 2002 as attorney docket no. 1053.002PROV, the teachings of all of which are incorporated herein by reference. This application also claims the benefit of the filing date of U.S. provisional application No. 60/781,250, filed on Mar. 10, 2006 as attorney docket no. 1053.007PROV, the teachings of which are incorporated herein by reference.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US2007/006093 | 3/9/2007 | WO | 00 | 9/2/2008 |
Number | Date | Country | |
---|---|---|---|
60781250 | Mar 2006 | US |