Procedure



Contents

Home

The Problem

The ARMA Model

Autocorrelation

[What we did]

The Data

Conclusions

A Word on Decoding

Acknowledgements

Who we are

Using MATLAB and the DSP blockset, we constructed a system to do the following:
1) Take an input signal loaded from a .WAV file into MATLAB
2) Use linear prediction to calculate coefficients containing information about the periodicity of the signal
3) Calculate the error by subtracting the predicted signal (constructed with the coefficients) from the original signal

Linear Prediction Compressor Block Diagram

Our Linear Predictor

-- W - this is the local stationary segment of voice signal to be compressed
-- Shift register - stores up several previous samples of the signal.
-- Yule-Walker AR Estimator - Computes the prediction coefficients for the entire signal (see below for further detail).
-- The first coefficient, a 1, is removed, and the rest have their sign reversed. -- The prediction is constructed by taking the dot product of the coefficients and the contents of the shift register.
-- The error is the difference between the original signal and the predicted signal.

Yule-Walker AR Estimator Block Diagram

The Yule-Walker Estimator

Input- A vector of signal values
Autocorrelation - A measure of the similarity among successive time samples of a signal.
Levinson Solver - An efficient algorithm for solving the necessary equations to calculate the weighting coefficients (analogous to FFT for Fourier transforms).
Outputs- 1 ) the coefficients 2) the gain


If you want to experiment with our predictor, here is the Simulink file: compressor.mdl

   This system does the prediction and takes the error, and then graphs them along with the original signal. You must have MATLAB, Simulink, and the DSP Blockset. Before you start the simulation, you must load into MATLAB's workspace a signal called w, and specify the constant n, which is the order of the predictor.


Copyright (c) 2000 by the Oracle Gang.