| Signal Processing Toolbox | ![]() |
Compute reflection coefficients from an autocorrelation sequence.
Syntax
k = schurrc(r) [k,e] = schurrc(r)
Description
k = schurrc(r)
uses the Schur algorithm to compute a vector k of reflection coefficients from a vector r representing an autocorrelation sequence. k and r are the same size. The reflection coefficients represent the lattice parameters of a prediction filter for a signal with the given autocorrelation sequence, r. When r is a matrix, schurrc treats each column of r as an independent autocorrelation sequence, and produces a matrix k, the same size as r. Each column of k represents the reflection coefficients for the lattice filter for predicting the process with the corresponding autocorrelation sequence r.
[k,e] = schurrc(r)
also computes the scalar e, the prediction error variance. When r is a matrix, e is a row vector. The length of e is the same as the number of columns of r.
Examples
Create an autocorrelation sequence from the MATLAB speech signal contained in mtlb.mat, and use the Schur algorithm to compute the reflection coefficients of a lattice prediction filter for this autocorrelation sequence.
load mtlb
r = xcorr(mtlb(1:5),'unbiased');
k = schurrc(r(5:end))
k =
-0.7583
0.1384
0.7042
-0.3699
See Also
levinson Compute a prediction filter using the Levinson
algorithm.
References
[1] Proakis, J. and D. Manolakis, Digital Signal Processing: Principles, Algorithms, and Applications, Third edition, Prentice-Hall, 1996, pp. 868-873.
| sawtooth | seqperiod | ![]() |