Adaptive Filtering With Averaging in Noise Cancellation For Voice and Speech Recognition
Adaptive Filtering With Averaging in Noise Cancellation For Voice and Speech Recognition
Abstract – In many applications of noise cancellation correlation between the two noise signals. This is
the changes in signal characteristics could be quite equivalent to the minimization of the mean-square
fast. This requires the utilization of adaptive error E[e2(n)] where
algorithms, which converge rapidly. From this point
of view the best choice is the recursive least squares e(n) = s(n) + n2(n) – n3(n) (1)
(RLS) algorithm. Unfortunately this algorithm has
high computational complexity and stability Having in mind that by assumption, s(n) is
problems. In this contribution we present an algorithm correlated neither with n2(n) nor with n1(n) we have
based on adaptive filtering with averaging (AFA) used
for noise cancellation. The main advantages of AFA E[e2(n)] = E[s2(n)] + E[n2(n) – n3(n)]2. (2)
algorithm could be summarized as follows. It has high
convergence rate comparable to that of the RLS In other words the minimization of E[e2(n)] is
algorithm and at the same time low computational equivalent to the minimization of the difference
complexity and possible robustness in fixed-point between n2(n) and n3(n). Obviously E[e2(n)] will be
implementations. The algorithm is illustrated on car minimal when n3(n) ≈ n2(n) i.e. when the impulse
and office noise added to speech data. response of the adaptive filter closely mimics the
impulse response of the noise path.
The minimization of E[e2(n)] can be achieved by
updating the filter taps wi(n). Most often NLMS and
RLS algorithms are used. In Tables 1 and 2 are
I. INTRODUCTION summarized the steps required for adaptive noise
The purpose of this contribution is to study the cancellation scheme depicted in Fig. 1.
application of a new algorithm based on adaptive
filtering with averaging in noise cancellation problem.
It is well known that two of most frequently applied s(n)+n2(n) e(n)
algorithms for noise cancellation [1] are normalized
least mean squares (NLMS) [2], [3], [4] and recursive
least squares (RLS) [5], [6] algorithms. Considering
the two algorithms, it is obvious that NLMS algorithm hi(n)
has the advantage of low computational complexity.
On the contrary, the high computational complexity is n1(n) n3(n)
the weakest point of RLS algorithm but it provides a wi(n)
fast adaptation rate. Thus, it is clear that the choice of
the adaptive algorithm to be applied is always a
tradeoff between computational complexity and fast Fig. 1. Adaptive noise cancellation scheme.
convergence.
In the present work we propose a new adaptive
algorithm with averaging applied for noise
cancellation. The conducted extensive experiments Table 1. NLMS algorithm.
with different types of noise reveal its robustness
maintaining fast convergence and at the same time Noise estimation:
keeping the computational complexity at a low level. N
n3(n) = ∑ w i (n ) n1 (n − i)
i =0
Amplitude
presented in Fig. 3 (here the original speech is the 0.1
word "return"). 0
-0.1
0 2000 4000 6000 8000 10000 12000
Number of Iterations
Speech ANC Output
0.4 0.4
0.2 0.2
Amplitude
Amplitude
0 0
-0.2 -0.2
-0.4 -0.4
0 2000 4000 6000 8000 10000 12000 0 2000 4000 6000 8000 10000 12000
Number of Iterations Number of Iterations
Noise
0.2
Fig. 2d. The AFA algorithm – office noise.
0.1
Amplitude
-0.1
-0.2
0 2000 4000 6000 8000 10000 12000
Speech
Number of Iterations 0.4
0.2
Fig. 2a. The signals for the experiment with office
Amplitude
0
noise. -0.2
-0.4
Filter Taps
1.5 -0.6
0 2000 4000 6000 8000 10000 12000 14000
1 Number of Iterations
Noise
Amplitude
0.5 0.4
0 0.2
Amplitude
-0.5
0
-1
0 2000 4000 6000 8000 10000 12000 -0.2
Number of Iterations
ANC Output
0.4 -0.4
0 2000 4000 6000 8000 10000 12000 14000
Number of Iterations
0.2
Amplitude
0 Fig. 3a. The signals for the experiment with car noise.
-0.2
-0.4
0 2000 4000 6000 8000 10000 12000
Filter Taps
Number of Iterations 1
Filter Taps 0
0.4
0.3 -0.5
0 2000 4000 6000 8000 10000 12000 14000
Amplitude
0
0
Amplitude
-0.1
0 2000 4000 6000 8000 10000 12000
Number of Iterations -0.5
ANC Output
0.4
-1
0.2 0 2000 4000 6000 8000 10000 12000 14000
Amplitude
Number of Iterations
0
0.4
0.2
the adaptive filter, the step size and the initial values
0
of filter taps are controlled via the interface. At the
-0.2
output the user may see the plotted filter taps and the
0 2000 4000 6000 8000
Number of Iterations
10000 12000 14000 speech after noise reduction, listen to the different
0.4
ANC Output
signals used in the process of adaptive noise
0.2
cancellation and save the free of noise speech in a
.wav format file.
Amplitude
-0.2
-0.4
V. CONCLUSIONS
-0.6
The main goal of this paper is to investigate the
0 2000 4000 6000 8000 10000 12000 14000
Number of Iterations
application of an algorithm based on adaptive filtering
with averaging in noise cancellation problem. Here
Fig. 3c. The RLS algorithm – car noise. the main concern is to achieve a high convergence
rate in order to meet the requirements imposed by
Filter Taps applications where the changes in signal
0.6
characteristics could be quite rapid. In this aspect the
0.4
obtained results show that the AFA algorithm is very
Amplitude