# Re: Cepstrum computation

```Dear List,

Just to complicate matters a little. If you use the matlab/ieee fft, as defined,
to do cepstrum calculations, you already are in trouble. It is scaled so that
its output does not correspond to power. Thus it doesnt work for such calculations.

explains this problem in some detail.

It is much worse than you ever thought.

Jont

Paul Boersma wrote:
>
> Laszlo Toth wrote:
>
> > if(||FFT(x)||==0) { y=-BigNumber}
> > else {y=log(||FFT(x)||)
> >
> > Where "BigNumber" is some big constant.
>
> This is not correct, since you would like to preserve monotonicity, i.e. the relation that
> smaller ||FFT(x)|| means smaller y (or at least not larger y). So it would have to be:
>
> if (||FFT(x)|| <= exp(-BigNumber)) { y=-BigNumber}
> else {y=log(||FFT(x)||)
>
> But note that adding a small number makes the function differentiable:
>
>     y = log (||FFT(x)|| + epsilon)
>
> Bill Hartmann wrote:
>
> > You can always add a little broadband noise to keep the power spectrum
> > finite at all frequencies.
>
> The "epsilon" trick is equivalent to adding white noise.
> Perhaps we should instead add a noise whose spectrum is equivalent to
> the zero-phon curve?
>
> Paul Boersma
> Institute of Phonetic Sciences, University of Amsterdam
> Herengracht 338, 1016CG Amsterdam, The Netherlands
> http://www.fon.hum.uva.nl/paul/

--
Jont B. Allen
AT&T Labs-Research, Shannon Laboratory
180 Park Ave., Room E161, Florham Park NJ, 07932-0971
973/360-8545voice, x7111fax, http://www.research.att.com/info/jba

-My favorite URL: www-history.mcs.st-and.ac.uk/history

-Imagination is more important than knowledge.  --Albert Einstein
```