Military Institute of Science and Technology
Electrical, Electronic and Communication Engineering
EECE-312: Digital Signal Processing Lab
Assignment - II
1 Objective
The objective of this assignment is to develop a technique for removing white noise from
noisy real-life voice recordings, specifically those recorded in a cafeteria or construction
environment, using the auto-correlation algorithm. The goal is to extract the clean voice
signal while strictly adhering to the constraints of using only the auto-correlation method
without employing traditional filtering techniques.
2 Introduction
In real-world scenarios, voice recordings often get contaminated by various noise sources,
one of the most common being white noise. White noise typically manifests as random,
uncorrelated signals that mask the desired speech signal. In this assignment, we focus on
the application of the auto-correlation technique to isolate the periodic components of the
speech and suppress the random noise, thereby improving the overall quality of the recorded
audio. The use of auto-correlation allows us to exploit the inherent periodicity of speech
while distinguishing it from the stochastic nature of white noise.
3 Methodology
The methodology for noise removal in this assignment is based on the following key steps:
3.1 Observing Clean Speech Signal (10%)
The first step in the process is to load the clean voice recording into MATLAB. Upon loading,
use Fourier transform to see the frequency component of the clean signal. The recording can
be sampled at 44.1 kHz.
3.2 Preprocessing the Noisy Signal (10%)
The second step in the process is to load the noisy voice recording into MATLAB. The noise
is predominantly white noise resulting from the cafeteria environment. Upon loading, the
signal is optionally normalized to ensure it is within a suitable amplitude range, typically
between -1 and 1, to maintain numerical stability during further processing.
3.3 Auto-Correlation Calculation (25%)
The auto-correlation function (ACF) is computed to measure the similarity of the noisy
signal with a time-shifted version of itself. The ACF serves as a key tool for identifying
periodicity within the signal. Speech signals generally exhibit periodicity due to phonemes,
syllables, and rhythm, while noise lacks such structure. Therefore, the ACF will display
periodic peaks corresponding to the clean speech signal and a flat, random structure in the
case of white noise.
• Main Peak: The primary peak at lag = 0 corresponds to the self-similarity of the
signal at the same time point.
• Secondary Peaks: Peaks at non-zero lags represent repeating structures in the speech
signal, such as phonetic units.
1
• White Noise: The ACF of white noise typically shows no periodic peaks, appearing
as a flat line or with minimal variations.
3.4 Noise Estimation and Thresholding (25%)
After computing the ACF, the next task is to isolate the periodic components (representing
speech) from the non-periodic noise components. This is achieved by detecting significant
peaks in the ACF. The higher the peak, the more likely it is to represent a valid periodic
structure from the speech signal.
• Peak Detection: Significant peaks are identified in the ACF, representing periodic
speech components. The non-significant peaks, which correspond to noise, are filtered
out.
• Thresholding: A threshold is applied to the ACF to differentiate between the peri-
odic components of the speech and the random noise. Any correlation values below
this threshold are considered as noise and are suppressed, leaving only the periodic
components.
3.5 Signal Reconstruction (20%)
Once the noise has been suppressed, the clean signal is reconstructed. The clean speech
signal is reconstructed by focusing on the periodic components retained after thresholding
the ACF. The process of reconstruction may involve directly manipulating the time-domain
representation of the signal or applying techniques such as the inverse Fourier transform,
depending on the specific method chosen for synthesis.
3.6 Performance Evaluation (10%)
The effectiveness of the noise removal algorithm is evaluated using the Signal-to-Noise
Ratio (SNR), which compares the power of the clean speech signal to that of the remaining
noise. The SNR before and after the noise removal process is computed to quantify the
improvement in signal quality.
• SNR Measurement: The primary metric for evaluating the effectiveness of noise
removal is the SNR. A higher SNR indicates that the noise has been successfully
suppressed.
• Visual Comparison: The noisy and clean signals are plotted in the time domain to
provide a visual comparison of the quality of the reconstructed signal.
• Spectrogram Analysis: A spectrogram analysis can provide insight into the fre-
quency domain, showing how much of the noise has been suppressed across various
frequency bands.
4 Key Insights and Challenges
4.1 White Noise Characteristics
White noise is characterized by its randomness and lack of periodic structure. As a result,
its auto-correlation function is typically flat, making it distinguishable from periodic signals
like human speech. The challenge lies in correctly identifying and suppressing these random
fluctuations without inadvertently affecting the speech components.
4.2 Threshold Selection
Choosing an appropriate threshold for peak detection and noise suppression is crucial for
the success of the algorithm. An overly strict threshold might suppress useful parts of the
speech signal, while a too lenient threshold might fail to suppress enough noise. An adaptive
thresholding approach, which adjusts based on the characteristics of the signal, can help
overcome this challenge.
2
4.3 SNR Improvement
The ultimate goal of noise removal is to improve the Signal-to-Noise Ratio (SNR),
which quantifies how much the clean signal has been enhanced relative to the noise. A
significant increase in SNR after processing indicates the successful removal of white noise
while preserving the speech signal.