A Robust Adaptive Acoustic Echo Cancellation (aec) for Hands-free Communications Using a Low Computational Cost Algorithm in Frequency Domain

This study presents a new algorithm for cancelling the acoustic echo, which is a major problem for hands-free communications. The proposed adaptive Acoustic Echo Canceller algorithm is designed and developed using a digital signal processing technique in frequency domain. The main scope of this study is to implement this module, benefiting the advantage of circular convolution properties and Fast Fourier Transform (FFT) with high computation speed in frequency domain rather than adaptive algorithms Normalized Least Mean Square (NLMS) and Recursive Least Square (RLS) in time domain with high complexity, also the simplicity of the implementation using SIMULINK programming. The results obtained at the simulation level prove the module behavior for cancellation of echo for hands free communications using adaptive algorithm frequency domain. Nevertheless, our algorithm shows more performances in terms of convergence and complexity. Our algorithm has been verified using the ERLE criteria to measure the attenuation of the echo signal at the output of an AEC; at this level we obtained the best values according to IUT-T recommendation G.168.


INTRODUCTION
Adaptive filtering technique has emerged as an important technology for hands free communications.This is why adaptative filters were developed and tested long before by the use of analog bench platforms until a digital based technique took place, the DSP.This new technique allows better signal filtering design and found its benefits in High Fidelity audio systems or speech networks.
Acoustic echo takes place whenever a loudspeaker is placed near a microphone in a full-duplex communication application.This is the case in speakerphones, audio and video conferencing, desktop communication and many other communication scenarios.
Especially hands-free mobile communications and car-kits are becoming increasingly important due to safety regulations introduced in many countries (Ykhlef et al., 2009;Goetze et al., 2010).
In this study, we propose a Robust Adaptive Acoustic Echo Cancellation (AEC) for Hands-Free Communications using a Low Computational Cost Algorithm in Frequency Domain.This approach will focus on software based FLMS adaptive algorithm.It is therefore used to achieve echo cancellation hands free communications.This is why adaptative filters were developed and tested long before on analog bench platforms until a digital based technique breakthrough emerged, the DSP.This new technique allows better signal filtering design and found its benefits in High Fidelity audio systems or speech networks.However, the proposed AEC is modeled in SIMULINK environment by using digital filters, especially adaptive Fast Least Mean Square (FLMS) algorithm based FFT\IFFT operations and circular convolution frequency domain that require approximately Nlog 2 N real multiplications and reduce the computational complexity compared to LMS adaptive algorithms modeled and implemented by Wahbi et al. (2013), NLMS (Chinaboina et al., 2011;Rajesh and Sumalatha, 2012;Alam et al., 2011) and RLS (Munjal et al., 2008;Kourav and Soni, 2011) adaptive algorithms, which deal with time domain based on a linear convolution.This algorithm requires 3N+1 real multiplication.

METHODOLOGY
Digital adaptive filters for noise cancelling: An adaptive filter is a digital system which coefficients In this study, we will design an adaptive filter in frequency domain with low complexity.It is capable of estimating echo path and subtracts estimated echo signal for input signal.

Adaptive filters:
In this section we first go through an examination of the filter structure with an emphasis on Finite Impulse Reponses (FIR) filters.This is followed by a review of the Wiener filter leading to the development of the Fast Least Mean Squares (FLMS) algorithm.
The FIR filter consists of a series of delays, multipliers and adders; has one input, x (n) and one output, y (n).The output is expressed as a linear combination of the delayed input samples: where, h j = The filter coefficients N = The filter length y (n) = The convolution (inner product) of the two vectors h (n) and x (n) In this study we will only consider FLMS filters for echo cancellation.
Fast fourier transform: For calculating the FFT (Fig. 1), M is to be chosen as a power of 2. In general, we choose N+L-1 if this value is suitable.Otherwise, we choose the nearest power of 2 that is greater than the latter value (in which case we have to complement the vectors by the number of zero coefficients necessary and discard the last vector components introduced during the inverse transformation).To make it simple, we assume here that we choose M = N+L-1 in order to give an implementation example with values of M greater than N+L-1.
Let W F be the DFT matrix having M (M×N) in size and the following coefficients: And W -1 F the inverse transform matrix: Fast adaptive algorithm in the frequency domain: One of the adaptive filter applications is the adaptive echo canceller.Figure 2 describes its structure where the desired response is composed of an original signal plus the echoed, which is uncorrelated with the signal.The filter input is a sequence of an original signal which is correlated with the echoed signal in the desired signal.
By using the FLMS algorithm inside the adaptive filter, the error term e j produced by this system is then the original signal with the echo signal cancelled.

Fast adaptive algorithm formulation:
Table 1 depicts a summary on variables used in proposed fast adaptive algorithm in frequency domain.
Each iteration of the adaptive algorithm in frequency domain requires below distinct steps in this order: • The estimated echo in time domain can be obtained from Eq. ( 4): • The truncation matrix T N having N× (N+L-1) in size and defined by:  The input in time domain, at each iteration "j" Xj The input in frequency domain, at each iteration "j" hj The array with the values of adaptive filter in time domain, at each iteration "j" Hj The array with the values of adaptive filter in frequency domain, at each iteration "j" yj The estimated echo in time domain, at each iteration "j" TN The truncation matrix Yj The estimated echo in frequency domain, at each iteration "j" dj The echoed signal in time domain, at each iteration "j" ej The estimated error in time domain, at each iteration "j" Ej The estimated error in frequency domain, at each iteration "j" Hj The update of the adaptive filter ( 1) . ( 6) • The circular convolution completion is done in the frequency domain using the respective DFT of x j and h j , noted therefore X j and H j plus having M in length: . ( 7) . ( 8) • The calculation of the linear convolution is then performed according to the following expression: We then obtain: where ⨀ represents the component to component product of the vectors.• The DFT of the error sequence, E j , as follows: • The update of the adaptive filter is then performed according to the equation: where, λ j is the adaptation step that controls the speed of convergence of the algorithm.

Flow chart of FLMS algorithm:
Flow chart in Fig. 3 describes the flow of the adaptive algorithm in frequency domain.
FLMS algorithm: Block LMS (BLMS) algorithm can be made less computation time consuming if the temporal convolution is achieved in the frequency domain.Doing so, it is therefore possible to take advantage of DFT (Discrete Fourier Transform) circular convolution properties and Fast Fourier Transform (FFT) high computation speed.
The FLMS Filter block shown in Fig. 4 implements an adaptive Fast Least Mean Square (FLMS) filter,  where the adaptation of filter weights occurs once for every block of samples.Connect the signal you want to model the desired port.
The desired signal must have the same data type, frame status, complexity and dimensions as the input signal.
The output port outputs the filtered input, which can be sample or frame based.The error port outputs the result of subtracting the output signal from the desired signal.

Complexity of adaptive algorithm:
The Computational cost or complexity of an adaptive algorithm is characterized by the number of addition and multiplication at each iteration j.
From Table 2  However, the ERLE plays an important role in digital signal processing; it measures the attenuation of the echo signal at the output of an AEC (Hänsler and Schmidt, 2004).

Echo canceller modeling under SIMULINK:
In this study we modeled the system shown in Fig. 5 under SIMULINK Blockset.Also, we designed a reliable module based S-function for evaluating the performance of the AEC by calculating the ERLE values.
The delay of time is approximately 20 msec and the number of samples for each read from file (From Wave File) length is 128 samples/frame at 8000 Hz sampling rate.AEC implementation is setup with filter length = 128 and block size of FFT = 128.The step size is chosen as λ = 0.00005.

SIMULINK results:
In the following graphics (Fig. 6 to 8), we observe the input signal, the echoed signal and how this echo is removed from the original signal after crossing by the "echo cancellation Fast adaptive Filter in frequency domain" module, knowing the echoed signal has less amplitude than the original signal.It is also demonstrating how the signal is filtered and the result is an output signal with less amplitude than the input signal and without echo.
The convergence rate of the AEC to find the optimal value of the FLMS filter to cancel the echo depends on various factors such as the step size parameter.In this case, we modified the step-size, the filter length and the number of samples to better test the performance of this AEC against acoustic echo.We also noticed that the smaller the step size is then the

Fig. 1 :
Fig. 1: Block diagram of N-point FFT algorithm are modified in themselves function of external signals.This category of filters has a best behavior for the phenomena of the signal processing in real time rather conventional filters.An adaptive filter is depends on bellow criteria: • An adjustable digital filter coefficients based on an optimization criterion • The speed of convergence • The complexity of computation

Table 1 :
Variables of fast adaptive algorithm

Table 2 :
Computational cost of adaptive algorithms it is clear that the performance of adaptive algorithm is better than NLMS and RLS

Table 3 :
ERLE improvement of AEC