Adam M Hess
Data Compression
Speech Compression Using Vector Quantization: The LBG Algorithm

Context:

This project was completed as part of graduate level Data Compression course taught by Dr. Mark Fowler. This was a solo project. The project goal was to explore a specific compression mechanism or technique and give a detailed write up about it.

Summary/Abstract:

Programs are growing larger and more complex each day. Hard drive memory is being quickly eaten up by videos and software. This paper explores ways to compress speech recordings using the famed Linde-Buzzo-Gray (LBG) algorithm to implement a vector quantizer.

The LBG algorithm has applications outside of data compression, it is often used in Machine Learning under the name "K-Means Clustering" as a form of unsupervised learning.

Results:

Paper on VQ

Matlab Code and Testing Files

Below are some preprocessed sound files that are the result of the Vector Quantizer for various bit rates. Each one uses 256 reconstruction levels, but different dimensionality, that is fewer bits represent more samples of audio.

Original Test file
4 Samples
8 Samples
10 Samples
64 Samples