18.07.2013 Views

LR Rabiner and RW Schafer, June 3

LR Rabiner and RW Schafer, June 3

LR Rabiner and RW Schafer, June 3

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

DRAFT: L. R. <strong>Rabiner</strong> <strong>and</strong> R. W. <strong>Schafer</strong>, <strong>June</strong> 3, 2009<br />

8.4. COMPUTING THE SHORT-TIME CEPSTRUM AND COMPLEX CEPSTRUM OF SPEECH461<br />

zeros without first computing the complex cepstrum. To see how this can be<br />

done, we write the discrete-time Fourier transform in terms of the numerical<br />

values of the zeros as<br />

X(e jω ) = Ae −jωM0<br />

Mi <br />

(1 − ame −jω Mo <br />

) (1 − bme jω ) (8.68)<br />

m=1<br />

Assuming A > 0, the phase of X(e jω ) is<br />

arg[X(e jω )] = −jωM0 +<br />

Mi <br />

m=1<br />

m=1<br />

ARG{(1 − ame −jω )} +<br />

Mo <br />

m=1<br />

ARG{(1 − bme jω )}<br />

(8.69)<br />

Our notation in Eq. (8.69) implies that the sum of the terms on the right is the<br />

continuous phase function arg{X(e jω )} that we require in the computation of<br />

the complex cepstrum even though the right h<strong>and</strong> side terms are principal value<br />

phases. This is true because of the following relations for the principal value<br />

phases of the individual polynomial factors:<br />

−π/2 < ARG{(1 − ae −jω )}] < π/2 if |a| < 1 (8.70a)<br />

−π/2 < ARG{(1 − be jω )} < π/2 if |b| < 1, (8.70b)<br />

which hold for −π < ω ≤ π. Furthermore, it can be shown that<br />

ARG{(1 − ae −jω )} = 0 for ω = 0 <strong>and</strong> π (8.71a)<br />

ARG{(1 − be jω )} = 0 for ω = 0 <strong>and</strong> π. (8.71b)<br />

Since |am| < 1 for m = 1, . . . , Mi <strong>and</strong> |bm| < 1 for m = 1, . . . , Mo in Eq. (8.69),<br />

it follows that the principal values all of the terms in that equation can be<br />

computed without discontinuities, <strong>and</strong> therefore the sum will have no discontinuities.<br />

Also note that the term −jωMo can be included or not as desired.<br />

Generally it would be omitted since its inverse DTFT can dominate the complex<br />

cepstrum values.<br />

To compute the sampled values of the continuous phase at frequencies 2πk/N,<br />

we simply need to compute N-point DFT’s of the individual terms <strong>and</strong> then<br />

compute <strong>and</strong> add the principal-value phases of those terms. Specifically, the<br />

continuous phase of the DFT X[k] of the finite-length sequence x[n] is<br />

arg{X[k]} =<br />

+<br />

Mo <br />

m=1<br />

Mi <br />

m=1<br />

ARG{(1 − ame −j2πk/N )}<br />

ARG{(1 − bme −j2π(N−k)/N )} 0 ≤ k ≤ N − 1. (8.72)<br />

The contributions due to the zeros that are inside the unit circle (am’s) can<br />

be computed by using an N-point FFT algorithm to compute the DFTs of<br />

the sequences δ[n] − amδ[n − 1]. Similarly the contributions due to the zeros<br />

that are outside the unit circle are obtained by computing the DFTs of the<br />

sequences δ[n] − bmδ[n − N + 1]. The computation can be reduced significantly

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!