EVALUATION OF SIGNAL PROCESSING METHODS FOR SPEECH ENHANCEMENT

 
corrupt_spec_pdf.png

The problem of speech signal enhancement is illustrated in the above two spectrograms. The goal is to get from the representation on the left (a speech signal corrupted with White Gaussian Noise), to the right (a noise-free signal). During my final year at UIUC, I explored and evaluated various signal processing algorithms for noise removal and speech enhancement. 

 

SPECTRAL SUBTRACTION

png_specsub.png

One of the oldest and most popular signal processing algorithms for speech signal de-noising is spectral subtraction. While this algorithm is effective for most applications of speech enhancement, there are some inherent shortcomings with its ability to effectively remove noise, including the production of musical noise and issues with deleting noise that is dependent on the speaker. This process, at a high level, involves finding an estimate for assumed additive and uncorrelated noise, and subtracting it from the original signal to get a clean signal without any noise or unnecessary artifacts

 

WIENER FILTERING

png_wiener.png

Wiener filtering uses a mathematical approach to decrease error between true clean speech and algorithmically enhanced speech signal. This approach aims to minimize the mean-square error to get a better estimate of the noise-free speech signal. As such, the Wiener filter can be called an adaptive least mean squares (LMS) filter. This method is often more effective than spectral subtraction, especially in the cases where the assumptions of noise being constant and additive do not hold. However, this method does assume zero mean noise that is mostly uncorrelated with the signal of interest. 

 

SUBSPACE METHOD

png_subspace.png

Subspace methods take advantage of the characteristics of singular value decomposition (SVD) and eigenvalue decomposition (EVD) of matrices to remove noise from corrupted signals. The main idea behind this process is that given a noisy speech matrix, we can find two subspaces, the noisy subspace and the noise subspace. Given this information, removing noise from a signal can be accomplished by simply removing from the noisy speech matrix the values and vectors associated with the noise in the signal. This method often works without the common side effects of spectral subtraction like musical noise production; however, it does assume that the noise is zero mean and uncorrelated with the speech signal we are trying to recover.