This application claims priority to the co-pending European patent application titled, “ADAPTIVE POST FILTERING,” filed on Jul. 27, 2017 and having Serial No. EP 17 183 510.1. The subject matter of this related application is hereby incorporated herein by reference
The disclosure relates to an adaptive post filtering system and method and computer-readable storage medium that includes instructions for carrying out the method (also referred to herein as a “system”).
Systems for far field sound capturing, also referred to as far field microphones or far field microphone systems, are adapted to record sounds from a desired sound source that is positioned at a greater distance (e.g., several meters) from the far field microphone. The greater the distance between sound source and the far field microphone, the lower the desired sound to noise ratio is. The term “noise” in the instant case includes sound that carries no information, ideas or emotions, e.g., no speech or music. If the noise is undesired, it is also referred to as noise. When speech or music is introduced into a noise-filled environment such as a vehicle, home or office interior, the noise present in the interior can have an undesired interfering effect on a desired speech communication or music presentation. Noise reduction is commonly the attenuation of undesired signals but may also include the amplification of desired signals. Desired signals may be speech signals, whereas undesired signals can be any sounds in the environment which interfere with the desired signals. There have been three main approaches used in connection with noise reduction: Directional beamforming, spectral subtraction, and pitch-based speech enhancement. Systems designed to receive spatially propagating signals often encounter the presence of interference signals. If the desired signal and interferers occupy the same temporal frequency band, then temporal filtering cannot be used to separate the desired signal from the interferer. It is desired to improve noise reduction systems and methods.
An adaptive post filtering system for noise reduction includes a controllable filter block configured to generate, from a filter input signal, a filter output signal according to a filter transfer function, the filter transfer function being controllable with a filter control signal. The system further includes a statistical filter control block operatively coupled to the controllable filter block and configured to generate, according to a statistical optimization scheme, the filter control signal based on the input signal and a signal representative of noise contained in the filter input signal.
An adaptive post filtering method for noise reduction includes generating, from a filter input signal, a filter output signal according to a filter transfer function, the filter transfer function being controllable with a filter control signal, and generating, according to a statistical optimization scheme, the filter control signal based on the input signal and a signal representative of noise contained in the filter input signal.
Other systems, methods, features and advantages will be, or will become, apparent to one with skill in the art upon examination of the following detailed description and appended figures. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the following claims.
The system may be better understood with reference to the following drawings and description. In the Figures, like referenced numerals designate corresponding parts throughout the different views.
The Figures describe concepts in the context of one or more structural components. The various components shown in the figures can be implemented in any manner including, for example, software or firmware program code executed on appropriate hardware, hardware and any combination thereof. In some examples, the various components may reflect the use of corresponding components in an actual implementation. Certain components may be broken down into plural sub-components and certain components can be implemented in an order that differs from that which is illustrated herein, including a parallel manner.
It has been found that the desired signals and interfering signals often originate from different spatial locations. Therefore, beamforming techniques may be used to improve signal-to-noise ratio in audio applications. Common beamforming techniques include delay and sum techniques, adaptive finite impulse response (FIR) filtering techniques using algorithms such as the Griffiths-Jim algorithm, and techniques based on the modeling of the human binaural hearing system.
Beamformers can be classified as either data independent or statistically optimum, depending on how the weights are chosen. The weights in a data independent beamformer do not depend on the array data and are chosen to present a specified response for all signal/interference scenarios. Statistically optimum beamformers select the weights to optimize the beamformer response based on statistics of the data. The data statistics are often unknown and may change with time, so adaptive algorithms are used to obtain weights that converge to the statistically optimum solution. Computational considerations dictate the use of partially adaptive beamformers with arrays composed of large numbers of sensors. Many different approaches have been proposed for implementing optimum beamformers. In general, the statistically optimum beamformer places nulls in the directions of interfering sources in an attempt to maximize the signal to noise ratio at the beamformer output.
In many applications the desired signal may be of unknown strength and may not always be present. In such situations, the correct estimation of signal and noise covariance matrices in the maximum signal-to-noise ratio (SNR) is not possible. Lack of knowledge about the desired signal may impede utilization of the reference signal approach. These limitations may be overcome through the application of linear constraints to the weight vector. Use of linear constraints is a very general approach that permits extensive control over the adapted response of the beamformer. A universal linear constraint design approach does not exist and in many applications a combination of different types of constraint techniques may be effective. However, attempting to find either a single best way or a combination of different ways to design the linear constraint may limit the use of techniques that rely on linear constraint design for beamforming applications.
Generalized sidelobe canceller (GSC) technology presents an alternative formulation for addressing the drawbacks associated with the linear constraint design technique for beamforming applications. Essentially, GSC is a mechanism for changing a constrained minimization problem into unconstrained form. GSC leaves the desired signals from a certain direction undistorted, while, at the same time, undesired signals radiating from other directions are suppressed. However, GSC uses a two path structure; a desired signal path to realize a fix beamformer pointing to the direction of the desired signal, and an undesired signal path that adaptively generates an ideally pure noise estimate, which is subtracted from the output signal of the fix beamformer, thus increasing its signal-to-noise ratio (SNR) by suppressing noise.
The undesired signal path, i.e. the estimation of the noise, may be realized in a two-part approach. A first block of the undesired signal path is configured to remove or block remaining components of the desired signal from the input signals of this block, which is, e.g., an adaptive blocking filter in case of a single input, or an adaptive blocking matrix if more than one input signal is used. A second block of the undesired signal path may further comprise an adaptive (multi-channel) interference canceller (AIC) in order to generate a single-channel, estimated noise signal, which is then subtracted from the output signal of the desired signal path, e.g., an optionally time delayed output signal of the fix beamformer. Thus, the noise contained in the optionally time delayed output signal of the fix beamformer can be suppressed, leading to a better SNR, as the desired signal component ideally would not be affected by this processing. This holds true if and only if all desired signal components within the noise estimation could successfully be blocked, which is rarely the case in practice, and thus represents one of the major drawbacks related to current adaptive beamforming algorithms.
Acoustic echo cancellation can be achieved, e.g., by subtracting an estimated echo signal from the total sound signal. To provide an estimate of the actual echo signal, algorithms have been developed that operate in the time domain and that may employ adaptive digital filters that process time-discrete signals. Such adaptive digital filters operate in such a way that network parameters defining the transmission characteristics of the filter are optimized with reference to a preset quality function. Such a quality function is realized, for example, by minimizing the average square errors of the output signal of the adaptive network with reference to a reference signal.
Referring now to
A desired signal (positive-beam) path also operatively coupled with the beam steering block 400 and supplied with the desired-source beam signal b(n) includes a series-connection of an optional delay block 102, a subtractor block 103 and an (adaptive) post filter block 104. The adaptive post filter 104 receives an output signal u(n) from the subtractor block 103 and a control signal b′(n) from AIC block 600. An optional speech pause detector (not shown) may be connected to and downstream of the adaptive post filter block 104 as well as a noise reduction (NR) block 105 and an optional automatic gain control (AGC) block 106, each of which, if present, may be connected upstream of the speech pause detector. It is noted that the AEC block 200, instead of being connected upstream of the FB block 300 as shown, may be connected downstream thereof, which may be beneficial if B<M, i.e., fewer beamformer blocks are available than microphones. Further, the AEC block 200 may be split into a multiplicity of sub-blocks (not shown), e.g., short-length sub-blocks for each microphone signal and a long-length sub-block (not shown) downstream of the BS block 400 for the desired-source beam signal and optionally another long-length sub-block (not shown) for the undesired-source beam signal. Further, the system is applicable not only in situations with only one source as shown but can be adapted for use in connection with a multiplicity of sources. For example, if stereo sources that provide two uncorrelated signals are employed, the AEC blocks may be substituted by stereo acoustic echo canceller (SAEC) blocks (not shown).
As can be seen from
FIR filter 202 with transfer function ĥ(n) of order L−1, wherein L is a length of the FIR filter, is used to model the echo path. The transfer function ĥ(n) is given as
[ĥ(0,n), . . . ĥ(L−1,n),]T
The desired microphone signal d(n) at block 203 for the adaptive filter is given as
d(n)=xT(n)h(n)+v(n),
wherein x(n)=[x(n) x(n−1) . . . x(n−L+1)]T is a real-valued vector containing L (L is an integer) most recent time samples of the input signal, x(n), and v(n), i.e., the near-end signal with may include noise.
Using the previous notations, the feedback/echo error signal is given as
e
AEC(n)=d(n)−xT(n−1)ĥ(n)=xT(n)[h(n)−ĥ(n)]+v(n),
wherein vectors h(n) and h(n) contain the filter coefficients representing the acoustical echo path and its estimation by the adaptive filter coefficients at time n. The cancellation filters ĥ(n) are estimated using, e.g., a Least Mean Square (LMS) algorithm or any state-of the art recursive algorithm. The LMS update using a step size of μ(n) of the LMS-type algorithm can be expressed as
ĥ(n)=ĥ(n−1)+μ(n)x(n)e(n).
A simple yet effective beamforming technique is the delay-and-sum (DS) technique. Referring again to
wherein M is the number of microphones and for each (fix) beamformer output signal bj(n) with j=1, . . . , B, each microphone has a delay τi,j relative to each other. The FS beamformer may include a summer 301 which receives the input signals xi(n) via filter blocks 302 having the transfer functions wi(L).
Referring again to
Alternatively, the beam pointing to the undesired signal (e.g., noise) source, i.e. the undesired-signal beam, can be approximated based on the beam pointing to the desired sound source, i.e. the desired-signal beam, by letting it point to the opposite direction of the beam pointing to the desired sound source, which would result in a system using less resources and also in beams having exactly the same time variations. Further, this allows both beams to never point in the same direction.
As a further alternative, instead of just using the beam pointing to the desired-source direction (positive beam) a summation of this with its neighboring beams may be used as positive-beam output signal, since all of them contain a high level of desired signals, which are correlated to each other and would as such be amplified by the summation. On the other hand, noise parts contained in the three neighboring beams are uncorrelated to each other and will as such be suppressed by the summation. As a result, the final output signal of the three neighboring beams will improve SNR.
The beam pointing to the undesired-source direction (negative beam) can alternatively be generated by using all output signals of the FB block except the one representing the positive beam. This leads to an effective directional response having a spatial zero in the direction of the desired signal source. Otherwise, an omnidirectional character is applicable, which may be beneficial since noise usually enters the microphone array also in an omnidirectional way, and only rarely in a directional form.
Further, the optionally delayed, desired signal from the BS block may form the basis for the output signal and as such is input into the optional adaptive post filter. The adaptive post filter, which is controlled by the AIC block and which delivers a filtered output signal, can optionally be input into a subsequent single channel noise reduction block (e.g., NR block 105 in
Referring to
The filtered signal from filter block 401 is smoothed by applying, e.g., a low pass infinite impulse response (IIR) filter or an moving average (MA) finite impulse response (FIR) filter (both not shown) in smoothing block 402, thereby reducing the high frequency components and passing the low-frequency components with little change. The smoothing block 402 outputs a smoothed signal that may still contain some level of noise and thus, may cause noticeable sharp discontinuities as described above. The level of voice signals typically differs distinctly from the variation of the level of background noise, particularly due to the fact that the dynamic range of a level change of voice signals is greater and occurs in much shorter intervals than a level change of background noise. A linear smoothing filter in a noise estimation block 403 would therefore smear out the sharp variation in the desired signal, e.g., music or voice signal, as well as filter out the noise. Such smearing of a music or voice signal is unacceptable in many applications, therefore a non-linear smoothing filter (not shown) may be applied to the smoothed signal in noise estimation block 403 to overcome the artifacts mentioned above. The data points in output signal bj(n) of smoothing block 402 are modified in a way that individual points that are higher than the immediately adjacent points (presumably because of noise) are reduced, and points that are lower than the adjacent points are increased. This leads to a smoother signal (and a slower step response to signal changes).
Next, based on the smoothed signal from smoothing block 402 and the estimated background noise signal from noise estimation block 403, the variations in the SNR value are calculated. Using variations in the SNR, a noise source can be differentiated from a desired speech or music signal. For example, a low SNR value may represent a variety of noise sources such as an air-conditioner, a fan, an open window, or an electrical device such as a computer etc. The SNR may be evaluated in a time domain or in a frequency domain or in a sub-band frequency domain.
In a comparator block 405, the output SNR value from block 404 is compared to a pre-determined threshold. If the current SNR value is greater than a pre-determined threshold, a flag indicating, e.g., a desired speech signal will be set to, e.g., ‘1’. Alternatively, if the current SNR value is less than a pre-determined threshold, a flag indicating an undesired signal such as noise from an air-conditioner, fan, an open window, or an electrical device such as a computer will be set to ‘0’.
SNR values from blocks 404 and 405 are passed to a controller block 406 via paths #1 to path #B. A controller block 406 compares the indices of a plurality of SNR (both low and high) values collected over time against the status flag in comparator block 405. A histogram of the maximum and minimum values is collected for a pre-determined time period. The minimum and maximum values in a histogram are representative of at least two different output signals. At least one signal is directed towards a desired source denoted by S(n) and at least one signal is directed towards an interference source denoted by I(n).
If the indices for low and high SNR values in controller block 406 change over time, a fading process is initiated that allows a smooth transition from one to the other output signal, without generating acoustic artifacts. The outputs of the BS block 400 represent desired-signal and optionally undesired-signal beams selected over time. Here, the desired-signal beam represents the fix beamformer output b(n) having the highest SNR. The optional undesired beam represents a fix beamformer output bn(n) having the lowest SNR.
The outputs of BS block 400 contain a signal with a high SNR (positive beam) which can be used as a reference by the optional adaptive blocking filter (ABF) block 500 and an optional one with a low SNR (negative beam), forming a second input signal for the optional ABF block 500. The ABF filter block 500 may use least mean square (LMS) algorithm controlled filters to adaptively subtract the signal of interest, represented by the reference signal b(n) (representing the desired-source beam) from the signal bn(n) (representing the undesired-source beam) and provides error signal(s) e(n). Error signal(s) e(n) obtained from ABF block 500 is/are passed to the adaptive interference canceller (AIC) block 600 which adaptively removes the signal components that are correlated to the error signals from the beamformer output of the fix beamformer 300 in the desired-signal path. As already mentioned, other signals can alternatively or additionally serve as input to the ABM block. However, the adaptive beamformer block including optional ABM, AIC and APF blocks can be partly or totally omitted.
First, AIC block 600 computes an interference signal using an adaptive filter (not shown). Then, the output of this adaptive filter is subtracted from the optionally delayed (with delay 102) reference signal b(n), e.g., by a subtractor 103 to eliminate the remaining interference and noise components in the reference signal b(n). Finally, an adaptive post filter 104 may be disposed downstream of subtractor 103 for the reduction of statistical noise components (not having a distinct autocorrelation). As in the ABF block 500, the filter coefficients in the AIC block 600 may be updated using the adaptive LMS algorithm. The norm of the filter coefficients in at least one of AIC block 600, ABF block 500 and AEC blocks may be constrained to prevent them from growing excessively large.
Referring again to
Referring to
The background noise (level) may be estimated (not shown) or may be available in any other way (shown), e.g., at the output of the beam steering unit 400, and used to control a minimum threshold Hmin(pbn(n)) of the APF block 104, where pbn(n) designates an estimated time-varying power of the estimated background noise signal bn(n), wherein
p
bn(n)=αpbn(n−1)+(1−α)bn(n)2,
and α is a smoothing parameter (α∈[0, . . . , 1]).
The minimum threshold Hmin(pbn(n)) of the APF block 104 forms the basis for a decision as to whether APF fblock 104 is active or not. Estimated background noise signal bn(n) is exemplarily taken as broadband signal which can be extracted from the beam steering unit 400, as shown in
Thereby, the input power controlled, minimum threshold Hmin(pbn(n)) may be realized as follows:
with HMinInit is a fix minimum threshold, independent of the estimated background noise power, pbndB(n)=10 log10 {pbn(n)} is the estimated background noise power in [dB], and pbn dBTH is a threshold for the estimated background noise power in [dB].
This means, if the current estimated background noise power pbndB(n) (in [dB]) remains below a certain estimated background noise power threshold pbndBTH, a fix minimum threshold HMinInit will be used for Hmin(pbn((n)). Otherwise, the momentary threshold Hmin(pbn(n)) will be calculated based on the momentary input power pbndB(n), the minimum threshold HMinInit and the estimated background noise power threshold pbndBTH in such a way that it will linearly rise (in the logarithmic domain) together with the estimated background noise power.
The system and method described above may be implemented by way of a frequency-domain adaptive filter (FDAF) which offers a high convergence rate and moderate computational complexity. In such implementation, the FDAF may be considered as a normalized least-mean-square (LMS) type adaptive filter with one tap-weight in each frequency bin. With a given step size, the dynamic behavior of the FDAF can be described by a first order difference equation of the (residual) noise where a statistical model parameter is added. This statistical model parameter is the expectation of the magnitude-squared frequency response corresponding to the (residual) noise, i.e., the estimated (residual) noise. Optimization of the step size and normalization of the optimized (optimum) step size based on the APF input signal allows that a predicted convergence state solely depends on the result of a previous iteration, a time- and frequency dependent forgetting factor, and the statistical model parameter. If, for example, an FDAF is employed in the AIC block 600 shown in
The description of embodiments has been presented for purposes of illustration and description. Suitable modifications and variations to the embodiments may be performed in light of the above description or may be acquired from practicing the methods. For example, unless otherwise noted, one or more of the described methods may be performed by a suitable device and/or combination of devices. The described methods and associated actions may also be performed in various orders in addition to the order described in this application, in parallel, and/or simultaneously. The described systems are exemplary in nature, and may include additional elements and/or omit elements.
As used in this application, an element or step recited in the singular and proceeded with the word “a” or “an” should be understood as not excluding plural of said elements or steps, unless such exclusion is stated. Furthermore, references to “one embodiment” or “one example” of the present disclosure are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features. The terms “first,” “second,” and “third,” etc. are used merely as labels, and are not intended to impose numerical requirements or a particular positional order on their objects.
The embodiments of the present disclosure generally provide for a plurality of circuits, electrical devices, and/or at least one controller. All references to the circuits, the at least one controller, and other electrical devices and the functionality provided by each, are not intended to be limited to encompassing only what is illustrated and described herein. While particular labels may be assigned to the various circuit(s), controller(s) and other electrical devices disclosed, such labels are not intended to limit the scope of operation for the various circuit(s), controller(s) and other electrical devices. Such circuit(s), controller(s) and other electrical devices may be combined with each other and/or separated in any manner based on the particular type of electrical implementation that is desired.
A block is understood to be a hardware system or an element thereof with at least one of: a processing unit executing software and a dedicated circuit structure for implementing a respective desired signal transferring or processing function. Thus, parts or all of the system may be implemented as software and firmware executed by a processor or a programmable digital circuit. It is recognized that any system as disclosed herein may include any number of microprocessors, integrated circuits, memory devices (e.g., FLASH, random access memory (RAM), read only memory (ROM), electrically programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), or other suitable variants thereof) and software which co-act with one another to perform operation(s) disclosed herein. In addition, any system as disclosed may utilize any one or more microprocessors to execute a computer-program that is embodied in a non-transitory computer readable medium that is programmed to perform any number of the functions as disclosed. Further, any controller as provided herein includes a housing and a various number of microprocessors, integrated circuits, and memory devices, (e.g., FLASH, random access memory (RAM), read only memory (ROM), electrically programmable read only memory (EPROM), and/or electrically erasable programmable read only memory (EEPROM).
While various embodiments of the invention have been described, it will be apparent to those of ordinary skilled in the art that many more embodiments and implementations are possible within the scope of the invention. In particular, the skilled person will recognize the interchangeability of various features from different embodiments. Although these techniques and systems have been disclosed in the context of certain embodiments and examples, it will be understood that these techniques and systems may be extended beyond the specifically disclosed embodiments to other embodiments and/or uses and obvious modifications thereof.
Number | Date | Country | Kind |
---|---|---|---|
17 183 510.1 | Jul 2017 | EP | regional |