BRIEF DESCRIPTION OF DRAWINGS
FIG. 1 is a diagram demonstrating, for example, an acoustic feedback path for one application of the present system relating to an in the ear hearing aid application, according to one application of the present system.
FIG. 2 illustrates an acoustic system with an adaptive feedback cancellation filter according to one embodiment of the present subject matter.
FIGS. 3A-C illustrate the response of an adaptive feedback system with using a transform domain algorithm according one embodiment of the present subject matter, but without compensating the adaptation in light of the eigenvalue spread.
FIGS. 4A and 4B illustrate the response of the entrainment avoidance system embodiment of FIG. 2 using a signal processor to monitor and modulate the adaptation of an adaptive feedback cancellation filter using the eigenvalue spread of an input autocorrelation matrix calculated using a transform domain algorithm.
FIG. 5 is a flow diagram showing one example of a method of entrainment avoidance according to one embodiment of the present subject matter.
DETAILED DESCRIPTION
FIG. 1 is a diagram demonstrating, for example, an acoustic feedback path for one application of the present system relating to an in-the-ear hearing aid application, according to one embodiment of the present system. In this example, a hearing aid 100 includes a microphone 104 and a receiver 106. The sounds picked up by microphone 104 are processed and transmitted as audio signals by receiver 106. The hearing aid has an acoustic feedback path 109 which provides audio from the receiver 106 to the microphone 104. It is understood that the invention may be applied to variety of other systems, including, but not limited to, behind-the-ear hearing systems, in-the-canal hearing systems, completely-in-the-canal hearing systems and systems incorporating improved hearing assistance programming and variations thereof.
FIG. 2 illustrates an acoustic system 200 with an adaptive feedback cancellation filter 225 according to one embodiment of the present subject matter. FIG. 2 also includes a input device 204, such as a microphone, an output device 206, such as a speaker, a signal processing module 208 for processing and amplifying a compensated input signal en212, an acoustic feedback path 209 and acoustic feedback path signal yn210. In various embodiments, the adaptive feedback cancellation filter 225 mirrors the acoustic feedback path 209 transfer function and signal yn 210 to produce a feedback cancellation signal ŷn 211. When the feedback cancellation signal ŷn211 is subtracted from the input signal xn 205, the resulting compensated input signal en212 contains minimal, if any, feedback path 209 components. In one example, the adaptive feedback canceller 225 includes a pre-filter 202 to separate the input 207 of the adaptive feedback cancellation filter 225 into eigen components. In addition to updating the weights 226 of the filter to mirror the feedback path 209, in various embodiments, an adaptation controller 201 monitors the spread of the pre-filter eigenvalues to detect entrainment. In various embodiments, the eigenvalue spread is analyzed against a predetermined threshold. In various embodiments, when the eigenvalue spread exceeds the threshold, adaptation is suspended to eliminate entrainment artifacts generated by the adaptive feedback cancellation filter 225. In various embodiments, the signal processing module includes an output limiter stage 226. The output limiting stage 226 is used to avoid the output un from encountering hard clipping. Hard clippings can result unexpected behavior. In various embodiments, the physical receiver and gain stage limitations produce the desired clipping effect. Clippings is common during entrainment peaks and instabilities. During experimentation, a sigmoid clipping unit that is linear from −1 to 1 was used to achieve the linearity without affecting the functionality.
FIGS. 3A-C illustrate the response of an adaptive feedback system with using a transform domain algorithm according one embodiment of the present subject matter, but without compensating the adaptation in light of the eigenvalue spread. The input to the system includes a interval of white noise 313 followed by interval of tonal input 314 as illustrated in FIG. 3A. FIG. 3B illustrates the output of the system in response to the input signal of FIG. 3A. As expected, the system's output tracks the white noise input signal during the initial interval 313. When the input signal changes to a tonal signal at 315, FIG. 3B shows the system is able to output an attenuated signal for a short duration before the adaptive feedback begins to entrain to the tone and pass entrainment artifacts 316 to the output. The entrainment artifacts are illustrated by the periodic amplitude swings in the output response of FIG. 3B. FIG. 3C shows a representation of eigen values during application of the input signal of FIG. 3A. During the white noise interval the eigen values maintained a narrow range of values compared to the eigenvalues during the tonal interval of the input signal.
In various embodiments of the present subject matter, eigenvalue spread of an input signal autocorrelation matrix provides indication of the presence of correlated signal components within an input signal. As correlated inputs cause entrainment of adaptive, or self-correcting, feedback cancellation algorithms, entrainment avoidance apparatus and methods discussed herein, use the relationship of various autocorrelation matrix eigenvalues to control the adaptation of self-correcting feedback cancellation algorithms. Various embodiments use transform domain algorithms to separate the input signal into eigen components and then use various adaptation rates for each eigen component to improve convergence of the adaptive algorithm to avoid entrainment.
The convergence speed of an adaptive algorithm varies with the eigenvalue spread of the input autocorrelation matrix. The system input can be separated into individual modes (eigen modes) by observing the convergence of each individual mode of the system. For the system identification configuration, the number of taps represents the number of modes in the system. For gradient decent algorithms, the overall system convergence is a combination of convergence of separate modes of the system. Each individual mode is associated with an exponential decaying Mean Square Error (MSE) convergence curve. For smaller adaptation rate parameters with the steepest decent algorithm, the convergence time constants for the individual modes are approximated with,
where τk,mse is a time constant which corresponds to the kth mode, λk is the kth eigenvalue of the system and It is the adaptation rate. The above equation shows that the smaller eigen modes take longer to converge for a given step size parameter. Conversely, large adaptation rates put a limit on the stability and minimum convergence error. In various embodiments, better convergence properties are obtained by reducing the eigenvalue spread or changing the adaptation rate based on the magnitude of the eigenvalues. Predetermined convergence is achieved by separating the signal into eigen components. Pre-filtering the input signal with Karhunen Leve Transform (KLT) will separate the signal into eigen components. Selecting an adaptation rate based on the magnitude of each component's eigenvalues allows varying degrees of convergence to be achieved. For a real time system, it is not necessary, or practical, to know the spectra of the input signal in detail to use this data dependent transform.
In practice, the Discrete Cosine Transforms (DCT), Discrete Fourier Transforms (DFT) and Discrete Hartley Transforms (DHT) based adaptive systems [33] are used to de-correlate signals. Transform domain adaptive filters exploit the de-correlation properties of these data independent transforms. Most real life low frequency signals, such as acoustic signals, can be estimated using DCTs and DFTs.
Transform domain LMS algorithms, including DCT-LMS and DFT-LMS algorithms, are suited for block processing. The transforms are applied on a block of data similar to block adaptive filters. Use of blocks reduce the complexity of the system by a factor and improves the convergence of the system. By using block processing, it possible to implement these algorithms with O(m) complexity, which is attractive from a computation complexity perspective. Besides entrainment avoidance, these algorithms improve the convergence for slightly correlated inputs signals due to the variable adaptation rate on the individual modes.
The feedback canceller input signal un is transformed by a pre-selected unitary transformation,
ūi=uiT
where the ui=[ui, ui−1, . . . ui−M+1] and T is the transform.
For a DFT transform case, T matrix becomes,
the scaling factor, √{square root over (M)}, makes the regular DFT the transform unitary, T T*=I.
For a DCT algorithm, the transform is,
For the system identification configuration, the error signal is calculated as the difference between the desired signal and the approximated signal, e(i)=d(i)−uiTW. For the case of the feedback canceller configuration, the error signal is given by,
e
i
=y
i
−ŷ
i
+x
i.
With the transformation of the input signal to DCT/DFT domain, ūi=uiT changes the input autocorrelation matrix to,
The derivation of the transform domain algorithm starts using the LMS algorithm,
W
i+1
=W
i
+μu
i
*e
i
where ei=yi−WTui+xi for the feedback canceller configuration. Applying the transform T,
TW
i+1
=TW
i
+Tμu
i
*e
i.
Applying the transformed weight vector Wi=TWi,
W
i+1
= W
i
+Tμu
i
*e
i.
Applying the input vector from above, ūi=uiT,
W
i+1
= W
i
+μū
i
*└y
i
−u
i
T
W
i
+x
i┘
The unitary transform gives,
uiTWi=uiTTTTWi=ūiTWi
W
i+1
= W
i
+μū
i
*└y
i
−u
i
T
W
i
+x
i┘
Power normalization based on the magnitude of the de-correlated components is achieved by normalizing the update of the above equation with D−1,
W
i+1
= W
i
+μD
−1
ū
i
*└y
i
−u
i
T
W
i
+x
i┘
where D is an energy transform. The power normalization matrix can be united to a single transform matrix by choosing a transform T′=TD−1/2. The weight vector, Wi, and the input signal get transformed to
u′
i
=u
i
TD
−1/2
=u
i
T′
W′
i
=TD
−1/2
W
i
=T′W
i
After de-correlating the entries of ūi, the uncorrelated power of each mode can be estimated by,
λi(k)=βλi−1(k)+(1−β)|ûi(k)|2, k=0, 1, . . . , M−1
and the weights are updated using,
It is important to note that unitary transforms do not change the eigenvalue spread of the input signal. A unitary transform is a rotation that brings eigen vectors into alignment with the coordinated axes.
Experimentation shows the DCT-LMS algorithms perform better than the DFT-LMS algorithms. Entrainment avoidance includes monitoring the eigenvalue spread of the system and determining a threshold. When eigenvalue spread exceeds the threshold, adaptation is suspended. The DCT LMS algorithm uses eigenvalues in the normalization of eigen modes and it is possible to use these to implement entraimnent avoidance. A one pole smoothed eigenvalue spread is given by,
ζi(k)=γζi−1(k)+(1−γ)λi(k), k=0, 1, . . . , M−1
where ζi(k) is the smoothed eigenvalue magnitude and γ<1 is a smoothing constant. The entrainment is avoided using the condition number that can be calculated by,
where ψ is a threshold constant selected based on the adaptation rate and the eigenvalue spread for typical entrainment prone signals. In various embodiments, as the ratio exceeds ψ, adaptation is suspended. In various embodiments, as the adaptation rate in creases beyond ψ, the adaptation rate is reduced. Adaptation is resumed when the value of the ratio is less than ψ.
FIG. 5 is a flow diagram showing one example of a method of entrainment avoidance 550 according to one embodiment of the present subject matter. In this embodiment, various systems perform other signal processing 552 associated with feedback cancellation while monitoring and avoiding entrainment of a transform domain adaptive feedback cancellation filter. The input of the transform domain adaptive feedback cancellation filter are sampled into digital delay components 554. The digital delay components are processed by a transform to form an input auto-correlation matrix 556. In various embodiments, the transform is a discrete Fourier transform (DFT). In various embodiments, the transform is a discrete Cosine transform (DCT). The transformed signals are normalized by a square root of their powers 558. The processor monitors the eigenvalues and determines the eigenvalue spread of the input auto correlation matrix 560. If the eigenvalue spread does not violate a predetermined threshold value or condition 562, adaptation is enable 564, if it was not enabled, and the normalized eigen components are weighted 566 and subsequently recombined to form the output of the cancellation filter. If the eigenvalue spread violates a predetermined threshold value or condition 562, adaptation is suspended 568 and the normalized eigen components are scaled using previous weights and subsequently recombined to form the output of the cancellation filter. In various embodiments, each eigen component's weight is adjusted based on Least Mean Square (LMS) algorithm and each eigen component represents a particular frequency band. It is understood that some changes in the process and variations in acts performed may be made which do not depart from the scope of the present subject matter.
FIG. 4A-B illustrates the response of the entrainment avoidance system embodiment of FIG. 2 using a signal processor to monitor and modulate the adaptation of an adaptive feedback cancellation filter using the eigenvalue spread of an input autocorrelation matrix calculated using a transform domain algorithm. Upon indication of entrainment, the system prohibited the adaptive feedback cancellation filter from adapting. FIG. 4A shows the system outputting a interval of white noise followed by a interval of tonal signal closely replicating the input to the system represented by the signal illustrated in FIG. 3A. FIG. 4B illustrates a representation of eigenvalues from the input autocorrelation matrix of the adaptive feedback canceller where adaptation is controlled depending on the spread of the eigenvalues of the input autocorrelation matrix. FIG. 4B shows the eigenvalues do spread from the values during the white noise interval, however, the eigenvalues do not fluctuate and diverge as rapidly and extremely as the eigenvalues in the FIG. 3C.
The DCT LMS entrainment avoidance algorithm was compared with the NLMS feedback canceller algorithm to derive a relative complexity. The complexity calculation was done only for the canceller path. For the above reason, we used a M stage discrete cosine transform adaptive algorithm. This algorithm has faster convergence for slightly colored signals compared to the NLMS algorithm. In summery, the DCT-LMS entrainment avoidance algorithm has ˜M2/2+8M complex and ˜M2/2+8M simple operations. The ūi=uiT vector multiplication computation uses ˜3M operations when redundancies are eliminated. The block version of the algorithm has significant complexity reductions.
The results of FIGS. 4A-B were generated with a typical acoustic leakage path (22 tap) with a 16 tap DCT-LMS adaptive feedback canceller with eigenvalue control. Each data point is created by averaging 20 runs (N=20). Each audio file is 10 seconds in duration, 5 seconds of white noise followed by 5 seconds of tonal signal. The level drop is calculated as the ratio of output level while white noise to the final tonal signal level. Level drops are adaptation rate dependent. Frequency also factors into level drops but to much smaller extent than the adaptation rate dependency. Most level reductions are less than 9% of the original signal and not perceivable to the normal or hearing impaired listeners.
This application is intended to cover adaptations and variations of the present subject matter. It is to be understood that the above description is intended to be illustrative, and not restrictive. The scope of the present subject matter should be determined with reference to the appended claim, along with the full scope of equivalents to which the claims are entitled.