Signal Processing Toolbox    
cceps

Complex cepstral analysis.

Syntax

Description

Cepstral analysis is a nonlinear signal processing technique that is applied most commonly in speech processing and homomorphic filtering [1].

xhat = cceps(x) returns the complex cepstrum of the (assumed real) sequence x. The input is altered, by the application of a linear phase term, to have no phase discontinuity at ± radians. That is, it is circularly shifted (after zero padding) by some samples, if necessary, to have zero phase at radians.

[xhat,nd] = cceps(x) returns the number of samples nd of (circular) delay added to x prior to finding the complex cepstrum.

[xhat,nd,xhat1] = cceps(x) returns a second complex cepstrum, computed using an alternate rooting algorithm, in xhat1. The alternate method ([1] p.795) is useful for short sequences that can be rooted and do not have zeros on the unit circle. For these signals, xhat1 can provide a verification of xhat.

[...] = cceps(x,n) zero pads x to length n and returns the length n complex cepstrum of x.

Algorithm

cceps, in its basic form, is an M-file implementation of algorithm 7.1 in [2]. A lengthy Fortran program reduces to three lines of MATLAB code:

rcunwrap is a special version of unwrap that subtracts a straight line from the phase.

See Also
icceps
Inverse complex cepstrum.
hilbert
Hilbert transform.
rceps
Real cepstrum and minimum phase reconstruction.
unwrap
Unwrap phase angles.

References

[1] Oppenheim, A.V., and R.W. Schafer. Discrete-Time Signal Processing. Englewood Cliffs, NJ: Prentice-Hall, 1989.

[2] IEEE. Programs for Digital Signal Processing. IEEE Press. New York: John Wiley & Sons, 1979.


 buttord cell2sos