Uploaded by Muhammad Asim

Final DSP Report

advertisement
University of Engineering &
Technology, Taxila
Faculty of Telecommunication & Information Engineering
B.Sc. Computer Engineering
Digital Signal Processing
Project Report
Title: Echo Removal from an audio signal
Presented By:
Hassan Raza (20-CP-14)
Zafar Iqbal (20-CP-39)
Muhammad Asim (20-CP-94)
Introduction:
Audio processing is the branch of the signal processing. Audio signal is basically a
sound wave. Electronically it is represented in digital or analog form. During the transfer of the
signal from transmitter to receiver it was observe that it is affected by various noises.
Echo is one of the major factors that affect the output signal. Echo is the reflection of the sound,
that is arriving at the listener end. Echo results in the degrading the quality of the output signal
that is received at the receiver.
Real-time communication is an essential aspect of modern life. With faster internet connections
and superior technology, communication has never before reached today’s high standards.
Unfortunately, remote communication technologies can’t always solve the problem of echo that
might occur in the process.
Echoes impair not only call quality but also can lead to an increased amount of bandwidth used.
This is because more data is transmitted from the additional sound information coming from the
echo.
Why Eliminating Echoes is So Critical:
Echoes can become a significant problem for users. While some may decide to muddle through
the problem. During the video conferencing call, having an echo canceller is needed on both sides
of the call to avoid echo. When a person speaks into the microphone, the speech is transmitted
through some channel which causes some delay to the signal. The transmitted signal is then
delivered to the listener’s loudspeaker and picked up by their microphone. The delayed signal is
then transferred back to the original speaker’s room and in that case, the person hears his/her
voice as echo which is extremely disruptive
•
Stunted and disrupted flow throughout meetings
•
Lack of clarity due to regular echoes
•
Any lag in the connection can worsen the issue
•
Loss of professional reputation
In this project approach of echo cancellation is proposed that will remove the echo from the
signal and will improve the quality of the signal. On receiving the signal at the receiver end an
echo cancellation technique is applied on it. The resultant signal obtained is echo free.
History of Echo Cancellation
The late 1950s marked the birth of echo control in the telecommunications industry with the
development of the first echo-suppression devices. These systems, first employed to manage
echo generated primarily in satellite circuits, were essentially voice-activated switches that
transmitted a voice path and then turned off to block any echo signal. Although echo suppressers
reduced echo caused by transmission problems in the network, they also resulted in choppy first
syllables and artificial volume adjustment. In addition, they eliminated double-talk capabilities,
greatly reducing the ability to achieve natural conversations.
Echo-cancellation theory was developed in the early 1960s by AT&T Bell Labs, followed by the
introduction of the first echo-cancellation system in the late 1960s by COMSAT Tele system
(previously a division of COMSAT Laboratories). COMSAT designed the first analog echo canceller
systems to demonstrate the feasibility and performance of satellite communications networks.
Based on analog processes, these early echo-cancellation systems were implemented across
satellite communications networks to demonstrate the network's performance for long-distance,
cross-continental telephony. These systems were not commercially viable, however, because of
their size and manufacturing costs.
In the late 1970s, COMSAT Tele system developed and sold the first commercial analog echo
cancellers, which were mainly digital devices with an analog interface to the network. The
semiconductor revolution of the early 1980s marked the switch from analog to digital
telecommunications networks. More sophisticated digital interface, multichannel echo-canceller
systems were also developed to address new echo problems associated with long-distance digital
telephony systems. Based on application-specific integrated circuit (ASIC) technology, these new
echo cancellers utilized high-speed digital signal processing techniques to model and subtract the
echo from the echo return path. The result was a new digital echo-cancellation technique that
outperformed existing suppression-based techniques, creating improved network performance.
The 1990s have witnessed explosive growth in the wireless telecommunications industry,
resulting from deregulation that has brought to market new analog and digital wireless handsets,
numerous network carriers, and new digital network infrastructures such as TDMA, CDMA, and
GSM. According to the Cellular Telecommunications Industry Association (CTIA). With wireless
telephony being widely implemented and competition increasing as new wireless carriers enter
the market, superior voice transmission quality and customer service have now become key
determining factors for subscribers evaluating a carrier's network. Understanding and
overcoming the inherent echo problems associated with digital cellular networks will enable
network operators and telcos to offer subscribers the network performance and voice quality
they are demanding today.
Technique to remove Echo:
We used Conventional Wiener filter to remove echo from audio signal.
A Wiener filter is a type of filter used in signal processing to reduce the amount of noise present
in a signal. It is a type of linear filter that uses a mathematical algorithm to estimate the desired
signal based on the noisy input signal and a statistical model of the noise present in the system.
The Wiener filter is widely used in image processing, speech processing, and other applications
where it is important to remove noise from signals while preserving the underlying signal.
Working principle of Wiener filter:
The working principle of a Wiener filter is based on the statistical information of both the signal
and the noise. It uses a linear filter to estimate the desired signal, or the signal that one wants to
obtain, based on the input signal and the statistical information of the noise.
The filter operates by minimizing the mean squared error between the estimated signal and the
original signal, subject to a constraint on the energy of the filter coefficients. This minimization is
achieved through the use of a cost function, which measures the difference between the
estimated signal and the original signal, and the optimization of the filter coefficients to minimize
this cost.
In essence, the Wiener filter uses the statistical information about the noise in the system to
estimate the underlying signal, and then subtracts the estimated noise from the input signal to
produce the filtered signal. The result is a signal with reduced noise, which is closer to the original
signal.
How wiener filter works to remove echo from audio signal:
The Wiener filter is a signal processing technique that can be used to remove echoes from audio
signals. It is based on a statistical model of the signal and the echo process. Here's how the
Wiener filter works to remove echoes from audio signals in detail:
Modeling the echo process: To remove echoes from audio signals, we need to first model the
echo process. The echo process can be modeled as a linear system where the input is the original
clean signal and the output is the noisy signal with echoes. The relationship between the input
and output signals can be represented by a system impulse response function, which describes
the impulse response of the echo process.
Cross-correlation: The cross-correlation between the noisy signal and the known impulse
response function can be used to estimate the clean signal. The cross-correlation between two
signals gives us information about the similarity between the two signals in different time lags.
Power spectral density: The power spectral density of the noise in the audio signal is used to
compute the Wiener filter coefficients. The power spectral density represents the power content
of the signal as a function of frequency.
Wiener filter coefficients: The Wiener filter coefficients are calculated using the cross-correlation
between the noisy signal and the impulse response function, and the power spectral density of
the noise. The filter coefficients are used to weight the different contributions of the noisy signal
and the impulse response function to the estimate of the clean signal.
Denoising: Once the Wiener filter coefficients have been calculated, they can be used to filter
the noisy signal to produce a denoised output. The Wiener filter subtracts the estimated echo
from the noisy signal to produce a clean output signal with reduced echoes.
Code implementation Steps:
Our project is to remove echo from audio signal but it isn’t necessary that every audio signal have
echo effect. There fore first we add echo to audio signal and then remove that echo from echoed
audio signal to get original signal back.
There fore our code consist of mainly three parts,
Part (i) :
Recording audio signal on run time then play our recorded signal and plot it.
Part (ii) :
Add echo to recording audio signal , play it and then plot it.
Part (iii) :
Remove echo from echoed recorded audio signal then play it and plot its graph.
Case study:
Original Audio Signal:
Audio Signal with echo produced in it:
Audio Signal with remove echo produced from it:
Future Work :
There are several techniques that can be used to remove echoes from audio signals.
1. Least Mean Squares (LMS) filter: This is a type of adaptive filter that uses a gradient
descent algorithm to minimize the mean-square error between the noisy signal and the
estimated clean signal.
2. Kalman filter: This is a statistical filter that uses a state-space model of the signal and the
echo process to estimate the clean signal.
3. Non-Linear Wiener filter: This is an extension of the conventional Wiener filter that uses
a non-linear model of the echo process to remove echoes from audio signals.
4. Spectral Subtraction: This is a technique that subtracts an estimate of the noise spectral
density from the noisy signal's power spectral density to obtain an estimate of the clean
signal's power spectral density.
5. Acoustic Echo Cancellation (AEC): This is a more advanced technique that uses a
reference signal from a microphone to estimate the impulse response of the echo path
and remove echoes from audio signals.
These are some of the most commonly used techniques for removing echoes from audio signals.
The choice of technique will depend on the specific requirements of the application and the
characteristics of the audio signal.
Reference:
[1] Bellanger, Maurice G., 2001. Adaptive Digital Filters, 2nd edition. Marcel Dekker Inc., New
York.
[2] Cowan, C.F.N., Grant, P.M. 1985, Adaptive Filters. Prentice-Hall, Inc. New Jersey. Diniz, Paulo
S. R. 1997,Adaptive Filtering, Algorithms and Practical Implementation. Kluwer Academic
Publishers, Boston.
[3] Farhang-Boroujeny, B. 1999, Adaptive Filters, Theory and Applications. John Wiley and Sons,
New York.
[4] Gottfried, Byron. 1996, Programming with C. Schaum.s Outlines, 2nd edition. McGrawHill
Book Co., New York.
[5] Hancock, Les. Krieger, Morris. Zamia, Saba.1990, The C primer, 3rd edition. McGraw- Hill, Inc.
New York.
Download