Subject: Re: Cepstrum computation From: Jont Allen <jba(at)RESEARCH.ATT.COM> Date: Tue, 22 Jun 1999 21:56:37 -0400Dear 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. If you send me your email address, I will forward a postscript document that 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