Line spectral pairs
From Wikipedia, the free encyclopedia
Line Spectral Pairs (LSP) are used to represent Linear Prediction Coefficients (LPC) for transmission over a channel. LSPs have several properties (e.g. smaller sensitivity to quantisation noise) that make them superior to direct quantisation of LPCs. For this reason, LSPs are very useful in speech coding.
[edit] Mathematical foundation
The LP polynomial can be decomposed into:
- P(z) = A(z) + z − (p + 1)A(z − 1)
- Q(z) = A(z) − z − (p + 1)A(z − 1)
where P(z) corresponds to the vocal tract with the glottis closed and Q(z) with the glottis open.
While A(z) has complex roots anywhere within the unit circle (z-transform), P(z) and Q(z) have the very useful property of only having roots on the unit circle, hence P is a palindromic polynomial and Q an antipalindromic polynomial. So to find them we take a test point z = exp(jw) and evaluate P(exp(jw)) and Q(exp(jw)) using a grid of points between 0 and pi. The zeros (roots) of P(z) and Q(z) also happen to be interspersed which is why we swap coefficients as we find roots. So the process of finding the LSP frequencies is basically finding the roots of two polynomials of order p+1. The root of P(z) and Q(z) occur in symmetrical pairs at +/-w, hence the name Line Spectrum Pairs (LSPs). Because all the roots are complex and two roots are found at 0 and π, only p/2 roots need to be found for each polynomial. The output of the LSP search thus has p roots, hence the same number of coefficients as the input LPC filter (not counting a0 = 1).
To convert back to LPCs, we need to evaluate A(z) = 0.5[P(z)(z + z − 1) + Q(z)(z − z − 1)] by "clocking" an impulse through it N times (order of the filter), yielding the original filter, A(z).
[edit] Properties
Line Spectral Pairs have several interesting and useful properties. When the roots of P(z) and Q(z) are interleaved, stability of the filter is ensured if and only if the roots are monotonously increasing. Moreover, the closer two roots are, the more resonant the filter is at the corresponding frequency. Because LSPs are not overly sensitive to quantization noise and stability is easily ensured, LSP are widely used for quantizing LPC filters. At last, LSPs are a good representation for interpolating filters.
[edit] Sources
- Speex manual and source code (lsp.c)
- Tony Robinson: Speech Analysis
- "The Computation of Line Spectral Frequencies Using Chebyshev Polynomials"/ P. Kabal and R. P. Ramachandran. IEEE Trans. Acoustics, Speech, Signal Processing, vol. 34, no. 6, pp. 1419-1426, Dec. 1986.
Includes an overview in relation to LPC.
- "Line Spectral Pairs" chapter as an online excerpt (pdf) / "Digital Signal Processing - A Computer Science Perspective" (ISBN: 0-471-29546-9) Jonathan Stein.