This document describes my diploma thesis titled:

Kalman Filtering and Speech Enhancement


The enhancement of noisy speech is a challenging research field with numerous applications. In the presented work we focus on the case of speech signal corrupted by slowly varying, non-white, additive noise, when only a corrupted signal is available. First, the survey of speech enhancement, identification and filtering techniques is presented. Second, a new speech enhancement algorithm based on Kalman smoothing, spectral minima tracking, state-space identification and all-pole modelling is proposed. The intended application of this algorithm is the suppression of noise in a running car environment for hands-free mobile telephony. Its performance is compared to the traditional methods: it is found that it can give better results at the expense of execution speed. Its usability in the speech recognition setting and the effect of changes to various parameters is demonstrated. A conventional as well as a parallel version (using Parallel Virtual Machine) of the algorithm discussed were developped. Sources are available in C and Matlab.

Keywords: speech enhancement, noise reduction, Kalman filtering, smoothing, spectral subtraction, system identification, parameter estimation, all-pole modelling, state-space identification, total least squares, structured total least squares, Hankel total least squares, singular value decomposition, spectral minima tracking, speech recognition, hands-free mobile telephony, Matlab, C, PVM, parallel computing.

AMS classification: 62M10, 62M20, 60G35, 68Q22, 93B30.


The report is available as compressed Postscript, in a reduced form (two pages on one A4 sheet), or as a pdf. Here are the slides I use for presentation and the archive containing all the programs and scripts I have written.


Have a look at our research unit, my bookmark page and home page.


Listen to the original signal, the signal processed by Reiner Martin's algorithm and the same signal processed by our so far best Kalman filtering algorithm for different parameter settings - version 1, 2, 3 and 4 (our best so far - using MEM spectrum estimate).

Somewhat longer samples: original, signal processed by spectral subtraction, Doblinger's algorithm, Martin's algorithm, and the new kalmse algorithm,

Mail me if you are interested.
Jan Kybic,

[My home page]