DSPRelated.com
Forums

name of fft(log(fft())) algorithm?

Started by Unknown August 16, 2003
What is the name of the algorithm where one takes the fft of
the log amplitude of the fft of a waveform?  Where might one find
more information (books, publications, web ...) about this procedure?
It seems to be useful for detecting signals which have lots of
harmonic content (some musical instrument notes).

Thanks.

-- 
Ron Nicholson   rhn AT nicholson DOT com   http://www.nicholson.com/rhn/ 
#include <canonical.disclaimer>        // only my own opinions, etc.
Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message news:<bhkgee$6v7$1@blue.rahul.net>...
> What is the name of the algorithm where one takes the fft of > the log amplitude of the fft of a waveform? Where might one find > more information (books, publications, web ...) about this procedure? > It seems to be useful for detecting signals which have lots of > harmonic content (some musical instrument notes). > > Thanks.
Hi If I am not wrong, this is called Cepstrum. Any book on speech coding like the one by Rabiber & Juang or the one by Jurafsky shall deal with them. Its used for audio signals mainly which has lot of harmonics. Dr. Abhay Kumar
On 16 Aug 2003 02:36:52 -0700, akumar.elex@dauniv.ac.in (abhay kumar)
wrote:

>Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message news:<bhkgee$6v7$1@blue.rahul.net>... >> What is the name of the algorithm where one takes the fft of >> the log amplitude of the fft of a waveform? Where might one find >> more information (books, publications, web ...) about this procedure? >> It seems to be useful for detecting signals which have lots of >> harmonic content (some musical instrument notes). >> >> Thanks. > >Hi > >If I am not wrong, this is called Cepstrum. Any book on speech coding >like the one by Rabiber & Juang or the one by Jurafsky shall deal with >them. Its used for audio signals mainly which has lot of harmonics. > >Dr. Abhay Kumar
Hi, Oppenheim & Schafer discuss cepstrum in the 1st edition, 1989 version, of their "Discrete-Time Signal Processing" book. Note that they deleted that cepstrum discussion in their 2nd edition (1998 version) of the book. Good Luck, [-Rick-]
"Rick Lyons" <ricklyon@REMOVE.onemain.com> wrote in message
news:3f3faede.82466578@news.west.earthlink.net...
> On 16 Aug 2003 02:36:52 -0700, akumar.elex@dauniv.ac.in (abhay kumar) > wrote: > > >Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message
news:<bhkgee$6v7$1@blue.rahul.net>...
> >> What is the name of the algorithm where one takes the fft of > >> the log amplitude of the fft of a waveform? Where might one find > >> more information (books, publications, web ...) about this procedure? > >> It seems to be useful for detecting signals which have lots of > >> harmonic content (some musical instrument notes). > >> > >> Thanks. > > > >Hi > > > >If I am not wrong, this is called Cepstrum. Any book on speech coding > >like the one by Rabiber & Juang or the one by Jurafsky shall deal with > >them. Its used for audio signals mainly which has lot of harmonics. > > > >Dr. Abhay Kumar > > Hi, > > Oppenheim & Schafer discuss cepstrum in the 1st edition, > 1989 version, of their "Discrete-Time Signal Processing" book. > Note that they deleted that cepstrum discussion in their > 2nd edition (1998 version) of the book.
Rick, Any idea why they did that deletion? I recently did a brief bit of research on cepstral processing in textbooks and the result was less than satisfying. The application information was mostly missing - yet seems important because I'm not sure how to apply the ideas in a number of areas. There seem to be pitfalls that aren't discussed at all. Fred
"Fred Marshall" <fmarshallx@remove_the_x.acm.org> wrote in message news:<IGP%a.4091$Jk5.3893251@feed2.centurytel.net>...
> "Rick Lyons" <ricklyon@REMOVE.onemain.com> wrote in message > news:3f3faede.82466578@news.west.earthlink.net... > > On 16 Aug 2003 02:36:52 -0700, akumar.elex@dauniv.ac.in (abhay kumar) > > wrote: > > > > >Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message > news:<bhkgee$6v7$1@blue.rahul.net>... > > >> What is the name of the algorithm where one takes the fft of > > >> the log amplitude of the fft of a waveform? Where might one find > > >> more information (books, publications, web ...) about this procedure? > > >> It seems to be useful for detecting signals which have lots of > > >> harmonic content (some musical instrument notes). > > >> > > >> Thanks. > > > > > >Hi > > > > > >If I am not wrong, this is called Cepstrum. Any book on speech coding > > >like the one by Rabiber & Juang or the one by Jurafsky shall deal with > > >them. Its used for audio signals mainly which has lot of harmonics. > > > > > >Dr. Abhay Kumar > > > > Hi, > > > > Oppenheim & Schafer discuss cepstrum in the 1st edition, > > 1989 version, of their "Discrete-Time Signal Processing" book. > > Note that they deleted that cepstrum discussion in their > > 2nd edition (1998 version) of the book. > > Rick, > > Any idea why they did that deletion? I recently did a brief bit of research > on cepstral processing in textbooks and the result was less than satisfying. > The application information was mostly missing - yet seems important because > I'm not sure how to apply the ideas in a number of areas. There seem to be > pitfalls that aren't discussed at all.
I just looked up the cepstrum in Jackson: "Digital Filters and Signal Processing" 2nd ed. Kluwer Academic Publishers (1989) and the treatment is purely with respect to applications in speech processing. I know I saw a treatment of the cepstrum in Papoulis' book on statistics, but I don't have that book readily available. As for the pitfalls, it appears to me (after a less than 5 min review of Jackson's breaf treatment) that the cepstrum is used for deconvolution of speech signals to extract the impulse response of the human vocal tract. The vocal tract appears to be modeled as a broad-band linear filter that is excited by some stationary white noise signal. Of course, it's impossible to grasp the obscure details of a method just like that, but it *may* be that the properties of the cepstrum processing are such that speech processing is the only application that meet the required conditions. If that's correct, cepstrum processing is best left to books that treat speech processing in particular, and deleted from general DSP books. Quite a few echographic remote sensing techniques (sonar, seismics, ultrasound) would benefit significantly if the impulse response of the medium could be estimated. However, the input signal in those kinds of systems are impulses, not white noise. My 2c. Rune
"Rune Allnor" <allnor@tele.ntnu.no> wrote in message
news:f56893ae.0308171530.19a34b44@posting.google.com...
> "Fred Marshall" <fmarshallx@remove_the_x.acm.org> wrote in message
news:<IGP%a.4091$Jk5.3893251@feed2.centurytel.net>...
> > "Rick Lyons" <ricklyon@REMOVE.onemain.com> wrote in message > > news:3f3faede.82466578@news.west.earthlink.net... > > > On 16 Aug 2003 02:36:52 -0700, akumar.elex@dauniv.ac.in (abhay kumar) > > > wrote: > > > > > > >Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message > > news:<bhkgee$6v7$1@blue.rahul.net>... > > > >> What is the name of the algorithm where one takes the fft of > > > >> the log amplitude of the fft of a waveform? Where might one find > > > >> more information (books, publications, web ...) about this
procedure?
> > > >> It seems to be useful for detecting signals which have lots of > > > >> harmonic content (some musical instrument notes). > > > >> > > > >> Thanks. > > > > > > > >Hi > > > > > > > >If I am not wrong, this is called Cepstrum. Any book on speech coding > > > >like the one by Rabiber & Juang or the one by Jurafsky shall deal
with
> > > >them. Its used for audio signals mainly which has lot of harmonics. > > > > > > > >Dr. Abhay Kumar > > > > > > Hi, > > > > > > Oppenheim & Schafer discuss cepstrum in the 1st edition, > > > 1989 version, of their "Discrete-Time Signal Processing" book. > > > Note that they deleted that cepstrum discussion in their > > > 2nd edition (1998 version) of the book. > > > > Rick, > > > > Any idea why they did that deletion? I recently did a brief bit of
research
> > on cepstral processing in textbooks and the result was less than
satisfying.
> > The application information was mostly missing - yet seems important
because
> > I'm not sure how to apply the ideas in a number of areas. There seem to
be
> > pitfalls that aren't discussed at all. > > I just looked up the cepstrum in > > Jackson: "Digital Filters and Signal Processing" 2nd ed. > Kluwer Academic Publishers (1989) > > and the treatment is purely with respect to applications in speech > processing. I know I saw a treatment of the cepstrum in Papoulis' book on > statistics, but I don't have that book readily available. > > As for the pitfalls, it appears to me (after a less than 5 min review of > Jackson's breaf treatment) that the cepstrum is used for deconvolution > of speech signals to extract the impulse response of the human vocal
tract.
> The vocal tract appears to be modeled as a broad-band linear filter that > is excited by some stationary white noise signal. > > Of course, it's impossible to grasp the obscure details of a method just > like that, but it *may* be that the properties of the cepstrum processing > are such that speech processing is the only application that meet the > required conditions. If that's correct, cepstrum processing is best left > to books that treat speech processing in particular, and deleted from > general DSP books. Quite a few echographic remote sensing techniques > (sonar, seismics, ultrasound) would benefit significantly if the impulse > response of the medium could be estimated. However, the input signal in > those kinds of systems are impulses, not white noise.
Rune, I heard a lecture by Tom Stockham who had done work at the U. of Utah in the early days. They did a number of things with old Caruso recordings: - they removed the echo structure of the recording horn - they removed the orchestra As I understood it, the spectrum was smoothed to get rid of the multipath effects. But I haven't followed the process to the point I understand it. Fred
Rune Allnor wrote:
> > "Fred Marshall" <fmarshallx@remove_the_x.acm.org> wrote in message news:<IGP%a.4091$Jk5.3893251@feed2.centurytel.net>... > > "Rick Lyons" <ricklyon@REMOVE.onemain.com> wrote in message > > news:3f3faede.82466578@news.west.earthlink.net... > > > On 16 Aug 2003 02:36:52 -0700, akumar.elex@dauniv.ac.in (abhay kumar) > > > wrote: > > > > > > >Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message > > news:<bhkgee$6v7$1@blue.rahul.net>... > > > >> What is the name of the algorithm where one takes the fft of > > > >> the log amplitude of the fft of a waveform? Where might one find > > > >> more information (books, publications, web ...) about this procedure? > > > >> It seems to be useful for detecting signals which have lots of > > > >> harmonic content (some musical instrument notes). > > > >> > > > >> Thanks. > > > > > > > >Hi > > > > > > > >If I am not wrong, this is called Cepstrum. Any book on speech coding > > > >like the one by Rabiber & Juang or the one by Jurafsky shall deal with > > > >them. Its used for audio signals mainly which has lot of harmonics. > > > > > > > >Dr. Abhay Kumar > > > > > > Hi, > > > > > > Oppenheim & Schafer discuss cepstrum in the 1st edition, > > > 1989 version, of their "Discrete-Time Signal Processing" book. > > > Note that they deleted that cepstrum discussion in their > > > 2nd edition (1998 version) of the book. > > > > Rick, > > > > Any idea why they did that deletion? I recently did a brief bit of research > > on cepstral processing in textbooks and the result was less than satisfying. > > The application information was mostly missing - yet seems important because > > I'm not sure how to apply the ideas in a number of areas. There seem to be > > pitfalls that aren't discussed at all. > > I just looked up the cepstrum in > > Jackson: "Digital Filters and Signal Processing" 2nd ed. > Kluwer Academic Publishers (1989) > > and the treatment is purely with respect to applications in speech > processing. I know I saw a treatment of the cepstrum in Papoulis' book on > statistics, but I don't have that book readily available. > > As for the pitfalls, it appears to me (after a less than 5 min review of > Jackson's breaf treatment) that the cepstrum is used for deconvolution > of speech signals to extract the impulse response of the human vocal tract. > The vocal tract appears to be modeled as a broad-band linear filter that > is excited by some stationary white noise signal. > > Of course, it's impossible to grasp the obscure details of a method just > like that, but it *may* be that the properties of the cepstrum processing > are such that speech processing is the only application that meet the > required conditions. If that's correct, cepstrum processing is best left > to books that treat speech processing in particular, and deleted from > general DSP books. Quite a few echographic remote sensing techniques > (sonar, seismics, ultrasound) would benefit significantly if the impulse > response of the medium could be estimated. However, the input signal in > those kinds of systems are impulses, not white noise. > > My 2c. > > Rune
Stop me if I'm wrong, but ... Cepstrum processing is a form of homeomorphic processing in which a multiplicative process is treated with additive tools. It treats the logarithm of signals that have been multiplied with linear filters appropriate to addition, then transforms with an antilog to reveal an "unmultiplied" component. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Ronald H. Nicholson, Jr. <rhn@nojunk.rahul.net> wrote in message news:<bhkgee$6v7$1@blue.rahul.net>...
> What is the name of the algorithm where one takes the fft of > the log amplitude of the fft of a waveform? Where might one find > more information (books, publications, web ...) about this procedure? > It seems to be useful for detecting signals which have lots of > harmonic content (some musical instrument notes).
As others have noted, the technique that you are referring to is called Cepstral analysis and has been mentioned in many signal processing texts. It seems to be used almost exclusively in speach processing. Over the past several years I have attempted to develop a variant on the technique for detecting very weak binary pulsars in radio astronomy data. The variation comes from the fact that I take short FFTs of small portions of the power spectrum of a very long (4-10 hours typically at sample rates of 10-20kHz) time series. What happens is that the phase modulation of the pulsar signal caused by the Doppler effect of the fast binary orbit creates sidebands in the long power spectrum that can be detected with the secondary FFT. If you are interested, you can take a look here: The final paper: http://adsabs.harvard.edu/cgi-bin/nph-bib_query?bibcode=2003ApJ...589..911R&db_key=AST&high=3c756746e224699 or a draft: http://www.arXiv.org/abs/astro-ph/0210010 If any of you DSP gurus can think of a better way to do this, I'd love to hear about it! ;) Scott
Jerry Avins <jya@ieee.org> wrote in message news:<3F40357F.C6DA6E5E@ieee.org>...

> Stop me if I'm wrong, but ... > > Cepstrum processing is a form of homeomorphic processing in which a > multiplicative process is treated with additive tools. It treats the > logarithm of signals that have been multiplied with linear filters > appropriate to addition, then transforms with an antilog to reveal an > "unmultiplied" component. > > Jerry
That's roughly the impression I have as well: - Physical systems are in time domain described by convolution. - The Fourier transform converts the convolution operator to an "easier" multiplication operator in the frequency domain. - The log operator in computing the cepstrum converts the multiplication of spectra to an even "easier" addition operator. Which means that the computation of the output signal of whatever system is reduced to a mere addition of cepstra if the input signal and system impulse response [*]. At least what the time/frequency duality is concerned, the preferable domain is a matter of computational algorithms. Whether one chooses this or that domain, if you want to do some sort of deconvolution, one needs information or assumptions on at least one of the factors (input signal or impulse response). While I have no problems to accept that the cepstrum in certain applications may have beneficial properties, I can't see that it can dispose of the need to exploit whatever properties are known/assumed about the input signal. Even if the cepstrum transforms deconvolution to a mere subtraction, you do need to know what to subtract. Rune [*] Addition is way cheaper than multiplication in hardware implementations. Is this an argument for using the cepstrum in low-cost speech processing applications? Or is the benefit outweighted by the need to compute two DFTs and the logs in between?
Rune Allnor wrote:
>
...
> > While I have no problems to accept that the cepstrum in certain > applications may have beneficial properties, I can't see that it can > dispose of the need to exploit whatever properties are known/assumed > about the input signal. > > Even if the cepstrum transforms deconvolution to a mere subtraction, > you do need to know what to subtract. >
Moreover, it can be only approximate. The logs of negative and complex numbers are messy, so cepstrum deals with logs of magnitudes*. The loss of phase information is just that: a loss of information. Jerry _________________________ * Or squared magnitudes, which are easier to compute if the quantity is complex, and differ only by a factor of 2. -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;