Audio Signal Extraction in Noisy Environment Using DSP Technique

DOI : 10.17577/IJERTV4IS080486

Download Full-Text PDF Cite this Publication

Text Only Version

Audio Signal Extraction in Noisy Environment Using DSP Technique

Shahrukh Ahmed Irfani

Department of Electrical and Electronics Engineering VIT University

Chennai, India

Abstract Adaptive filter is signal processing technique which is widely used in the removal of noise in various domains of signal processing applications. It has huge applications from acoustic noise equalization, adaptive speech enhancement, channel equalization, adaptive line enchanter to cancelling of antenna side lobe interference. Adaptive filter includes a digital filter and an adaptive algorithm. Convergence speed and precision of the adaptive filter plays a key role in the selection of an adaptive algorithm for a particular application. Adaptive filter uses the standard Least Mean Square (LMS) algorithm to achieve the best filter characteristics. Due to stability and convergence speed constraints, the design can be optimized using improved LMS algorithm. Digital Signal Processor TMS320C6713 developed by Texas Instruments is used in the proposed design to improve the processing speed of the algorithm and to realize the real time processing of the signal.

KeywordsAdaptive filter, Noise Cancellation, Digital Signal Processor


    Modern day computing techniques have simplified several complex mathematical problems. This serves the basic ideology to translate the working efforts of manpower into automated intelligent computer systems. With the help of the scientists and researchers, it has been led to the development of advanced computer algorithms which can be implemented in real-time processors in no time. The modern computer systems are the backbone of communication systems in specific the digital signal processors which being a family of the advanced computer systems like microcontrollers and microprocessors perform the same function of a computer in a much efficient way.

    Noise Signals originates between the transmitter and receivers end and distorts the signal quality thereby rendering the signal information of no use. The process of removal of noise from the information signal is the key area of interest of various scientists and researchers in the field of signal processing. Noise in audio signals arises due to acoustic signals from sources other than wanted speech such as sound from working machines, chattering of people, anomalies in hardware transmitting the signal and impulse noise due to electromagnetic interferences. Removal of unwanted interference from the signal uses numerous techniques. Adaptive filtering is one such technique to attain noise reduction especially in systems working under unknown environment or situations where specifications are unavailable or time varying.

    An active noise cancellation system is designed and implemented using an adaptive Finite Impulse Response (FIR) filter. This active noise cancellation system is used to increase the Signal-to-Noise ratio (SNR) of a signal by decreasing the power of the noise. The noise cancellation algorithm is simulated using MATLAB software. The real time implementation of adaptive noise cancellation is done on DSK320C6713 kit by Texas Instruments. The Software coding is implemented using CCStudio 3.1.


    The principle of Adaptive Noise Cancellation is briefly explained with the help of a high level block diagram shown in figure 1.There are two inputs in the system: reference and interference signals. The reference signal, d(n), contains the target signal and an interference signal. The interference signal, x(n), contains just an interference signal similar to that contained in the reference signal. When the interference signal is passed through the adaptive filter, the output, y(n), is generated so that when it is subtracted from the reference signal the error signal, e(n), is obtained. The error signal is then used to update the coefficients of the filter. It is necessary to understand that the output of the adaptive noise cancellation system is the error signal e(n) rather than output signal y(n) of the adaptive filter.

    Fig. 1. The principle block diagram of Adaptive Noise Cancellation System


    IEC61508 – Functional safety of Electrical/Electronic/Programmable Electronic safety related systems. IEC61508 relates to the basic safety standard applicable to all kinds of industry. It defines functional safety as: part of the overall safety relating to the EUC (Equipment Under Control) and the EUC control system which depends on the correct functioning of the E/E/PE safety-related systems, other technology safety-related systems and external risk reduction facilities.

    The testing of the real-time project is carried out under laboratory conditions using functional safety standards of the electronic equipment.


    1. Mathematical Method for Adaptive Filters

      Adaptive filters operate by attempting to reduce a cost function. One of the most popular cost functions to use is known as the Least Square Error equation. It uses the mean square error as the cost function and attempts to reduce the cost function. Various adaptive algorithms can be obtained based on how to minimize the cost function. The cost function (J) can be represented as follows:

      J = E{e2 (n)} (1)

      The error signal of the system can be expressed as:

      e(n) = d(n) – y(n) = d(n) – f T X (n) (2)

      where f is the filter coefficients and X (n) which is a column vector of the filter input signal The cost function becomes

      J =E{e2 (n)} =E{(d(n) f T.X (n))2} (3)

      J = E{d(n)2 +2d(n) . f T .X (n) + f T. X (n) . X T(n) . f } (4)

      By setting the gradient, if J equal to zero and solving for the filter coefficient f, we find that:

      Px(n) = (x2(n-m))/M

      = Px (n-) + (x2 (n)- x2(n-m))/M (9)

      Where M is the length of the moving window. This method results in a good power estimate: however, M+1 storage bins are required. The Second method uses an exponential window ( or first order IIR filter) and only requires one storage bin :

      Px(n) = (1- )Px(n-1) + x2(n) (10)

      Where is smoothing parameter. It is useful to interpret in terms of its equivalent window length Where

      M 1/

      Which can then be roughly compared to the rectangular window length M in the above equation

      If the window length in above equation is equal to the number of adaptive filter coefficient L , then

      Px(n) = (x^T (n).x(n))/M (11) And above µ can be reduced to

      µ = /(x^T (n).x(n))


    From the analysis of literature, Adaptive Noise cancellation of speech or audio signal is implemented using the improved LMS algorithm. The software simulations of test results of

    E{d(n) . X (n)} = E{X T (n) . X (n)} fopt


    random noise and Gaussian noise corrupted with the true signal are tested using MATLAB is shown in figure 2 and

    Solving for the optimum coefficients results in the following equation:

    fopt = (E{d(n).X(n)})/(E{XT(n).X(n)}) (6)

    1. Improved LMS algorithm

    The stability, convergence time, and fluctuation of the LMS adaptation process is governed by the step size µ and the reference signal power . The maximum step size µ is inversely proportional to the filter order L and the power of reference signal x(n). One important technique to optimize the speed of convergence while maintaining the desired steady state performance, independent of the reference signal power , is known as the improved LMS algorithm . it can be expressed as

    figure 3 repectively. The results are extrapolated and inference is extracted for further computations.

    The results obtained from the simulation of noise models is used in finding out the root mean squared error for efficient quantization of the improved LMS algorithm using MATLAB software is shown in figure 4.

    W(n+1) =w(n) +µ(n).x(n).e(n) (7)

    Where µ (n) is an adaptive step size that is compared as

    µ(n) = .(1/(L.Px(n)) (8)

    where Px(n) is an estimate of the power of x(n) at time n, and is a improved step size that satisfies the criterion


    Two methods are commonly used to estimate the power of a signal .The first one uses a rectangular moving technique as follows:

    Fig. 2. Testing the effectiveness of improved LMS algorithm using random noise generator.

    A sine function as desired signal with some frequency , order and size of the filter as 2 is initially assumed. The sampling frequency is set to 500hz. Consider the noise signal as cosine function with some different frequency. Noise Signal is

    generated using a random signal generator and it is then added to the cosine function, this comprises our primary signal. Similarly another noisy reference signal from the same source is generated. The two inputs are passed through the adaptive filter. Finally a desired signal is obtained after a few iterations which approximates the desired signal.

    Fig. 3. Testing the effectiveness of improved LMS algorithm using Gaussian noise generator.

    Similarly the adaptive output for a Gaussian noise is obtained by changing the noise signal to Gaussian white noise and also the mean square error for Gaussian white noise is calculated and the results are shown in figure 4.

    Fig. 4. Calculation of MSE( Mean squared error)


    Real-time implementation of adaptive noise cancellation system is carried out in laboratory limits using the floating point DSP processor TMS320C6713. The software coding for the real-time processing is carried out using CCStudio 3.1. The code is effectively downloaded on the DSP board. The input to the DSP processor which has inbuilt audio codec is the LINE IN input which passes the desired signal for processing or the input can either be given through the MIC IN input of the processor, both the cases leads the same results. The output of the DSP processor is taken through the HEADPHONE OUT pin of the processor which give the filtered output signal corresponding to the true value of the signal.

    Part of the program code of adaptive noise cancellation system is as following:

    #define mu 0.006 // rate of convergence

    #define N 1000 // number of iterations

    shortintadaptive_filter(short int, short int); float delay[N];

    float w[N];

    shortintadaptive_filter(short l_input1, short r_input1)


    short i, output, t; floatyn=0,E=0,primary=0,desired=0,noise=0; for(t=0;t<N;t++)

    { w[t]=0;



    desired=l_input1; noise=r_input1; primary=desired+noise; delay[0]=noise; for(i=0;i<N;i++) yn=yn+(w[i]*delay[i]); E=(desired+noise)-yn; for(i=N-1;i>=0;i–)


    w[i]=w[i]+mu*E*delay[i]; delay[i]=delay[i-1];


    output=((short) E); return(output);



The improved LMS algorithm improves the computational results and enhances the signal stability and convergence speeds. The floating point DSP processor TMS320C6713 can effectively resolve the problem of eliminating noise as a stochastic property when the noise signal is non-linear, time varying and accurately eliminate the single rate noise.

The system is designed to accommodate a sampling rate conversion of at least 44.1Kbps for audio signals and be able to increase the SNR by at least 20 decibels (dB).


I am thankful to Dr. Chendur Kumaran for his moral support and academic guidance and my dear friends, family members for inspiring, encouraging and helping me overcome every milestone.


  1. Xu Yanhong and Zhang Ze, "Design the adaptive noise canceller based on improved LMS algorithm and realize it by DSP," Proc. IEEE, pp. 143-146, Jan. 2012.

  2. Ma Shengqian, Xu Guowei, Ma Zhifeng, Wei Shuping and Fan Manhong, "Research on adaptive noise canceller of an improved LMS algorithm,"Proc. IEEE, pp. 1611-1614, Sept. 2011.

  3. Mendiratta A. and Jha D.,"Adaptive Noise cancelling for audio signals using LMS algorithm," Proc. IEEE, pp.1-4, Jan. 2014.

Leave a Reply