Cepstrum

In Fourier analysis, the cepstrum (plural cepstra, adjective cepstral) is the result of computing the inverse Fourier transform (IFT) of the logarithm of the estimated signal spectrum. The method is a tool for investigating periodic structures in frequency spectra. The power cepstrum has applications in the analysis of human speech.

The term cepstrum was derived by reversing the first four letters of spectrum. Operations on cepstra are labelled quefrency analysis (or quefrency alanysis ), liftering, or cepstral analysis. It may be pronounced in the two ways given, the second having the advantage of avoiding confusion with kepstrum.



Origin
The concept of the cepstrum was introduced in 1963 by B. P. Bogert, M. J. Healy, and J. W. Tukey. It serves as a tool to investigate periodic structures in frequency spectra. Such effects are related to noticeable echos or reflections in the signal, or to the occurrence of harmonic frequencies (partials, overtones). Mathematically it deals with the problem of deconvolution of signals in the frequency space.

References to the Bogert paper, in a bibliography, are often edited incorrectly. The terms "quefrency", "alanysis", "cepstrum" and "saphe" were invented by the authors by rearranging the letters in frequency, analysis, spectrum, and phase. The invented terms are defined in analogy to the older terms.

General definition
The cepstrum is the result of following sequence of mathematical operations:
 * transformation of a signal from the time domain to the frequency domain
 * computation of the logarithm of the spectral amplitude
 * transformation to frequency domain, where the final independent variable, the quefrency, has a time scale.

Types
The cepstrum is used in many variants. Most important are:
 * power cepstrum: The logarithm is taken from the "power spectrum"
 * complex cepstrum: The logarithm is taken from the spectrum, which is calculated via Fourier analysis

The following abbreviations are used in the formulas to explain the cepstrum:

Power cepstrum
The "cepstrum" was originally defined as power cepstrum by the following relationship:


 * $$C_{p}=\left|\mathcal{F}^{-1}\left\{\log\left(\left|\mathcal{F}\{f(t)\}\right|^2\right)\right\}\right|^2$$

The power cepstrum has main applications in analysis of sound and vibration signals. It is a complementary tool to spectral analysis.

Sometimes it is also defined as:


 * $$C_{p}=\left|\mathcal{F}\left\{\log\left(\left|\mathcal{F}\{f(t)\}\right|^2\right)\right\}\right|^2$$

Due to this formula, the cepstrum is also sometimes called the spectrum of a spectrum. It can be shown that both formulas are consistent with each other as the frequency spectral distribution remains the same, the only difference being a scaling factor which can be applied afterwards. Some articles prefer the second formula.

Other notations are possible due to the fact that the log of the power spectrum is equal to the log of the spectrum if a scaling factor 2 is applied:
 * $$\log |\mathcal{F}|^2 = 2 \log |\mathcal{F}| $$

and therefore:
 * $$C_{p}=\left|\mathcal{F}^{-1}\left\{2\log |\mathcal{F}|\right\}\right|^2, \text{ or} $$
 * $$C_{p}=4\cdot\left|\mathcal{F}^{-1}\left\{\log |\mathcal{F}| \right\}\right|^2,$$

which provides a relationship to the real cepstrum (see below).

Further, it shall be noted, that the final squaring operation in the formula for the power spectrum $$C_{p}$$ is sometimes called unnecessary and therefore sometimes omitted.

The real cepstrum is directly related to the power cepstrum:


 * $$C_{p}=4\cdot C_{r}^2$$

It is derived from the complex cepstrum (defined below) by discarding the phase information (contained in the imaginary part of the complex logarithm). It has a focus on periodic effects in the amplitudes of the spectrum:


 * $$C_{r}=\mathcal{F}^{-1}\left\{\log(\mathcal{|\mathcal{F}\{f(t) \}|})\right\}$$

Complex cepstrum
The complex cepstrum was defined by Oppenheim in his development of homomorphic system theory. The formula is provided also in other literature.


 * $$C_{c}=\mathcal{F}^{-1}\left\{\log( \mathcal{F}\{f(t) \})\right\}$$

As $$\mathcal{F}$$ is complex the log-term can be also written with $$\mathcal{F}$$ as a product of magnitude and phase, and subsequently as a sum. Further simplification is obvious, if log is a natural logarithm with base e:


 * $$\log(\mathcal{F}) = \log(\mathcal{|F| \cdot e^{i\varphi}})$$
 * $$\log_e(\mathcal{F}) = \log_e(\mathcal{|F|}) + \log_e(e^{i\varphi}) = \log_e(\mathcal{|F|}) + i\varphi$$

Therefore: The complex cepstrum can be also written as:


 * $$C_{c}=\mathcal{F}^{-1}\left\{\log_e(\mathcal{|F|}) + i\varphi\right\}$$

The complex cepstrum retains the information about the phase. Thus it is always possible to return from the quefrency domain to the time domain by the inverse operation:


 * $$f(t)=\mathcal{F}^{-1}\left\{b^\left(\mathcal{F}\{C_c\}\right)\right\},$$

where b is the base of the used logarithm.

Main application is the modification of the signal in the quefrency domain (liftering) as an analog operation to filtering in the spectral frequency domain. An example is the suppression of echo effects by suppression of certain quefrencies.

The phase cepstrum (after phase spectrum) is related to the complex cepstrum as
 * phase spectrum = (complex cepstrum − time reversal of complex cepstrum)2.

Related concepts
The independent variable of a cepstral graph is called the quefrency. The quefrency is a measure of time, though not in the sense of a signal in the time domain. For example, if the sampling rate of an audio signal is 44100 Hz and there is a large peak in the cepstrum whose quefrency is 100 samples, the peak indicates the presence of a fundamental frequency that is 44100/100 = 441 Hz. This peak occurs in the cepstrum because the harmonics in the spectrum are periodic and the period corresponds to the fundamental frequency, since harmonics are integer multiples of the fundamental frequency.

The kepstrum, which stands for "Kolmogorov-equation power-series time response", is similar to the cepstrum and has the same relation to it as expected value has to statistical average, i.e. cepstrum is the empirically measured quantity, while kepstrum is the theoretical quantity. It was in use before the cepstrum.

The autocepstrum is defined as the cepstrum of the autocorrelation. The autocepstrum is more accurate than the cepstrum in the analysis of data with echoes.

Playing further on the anagram theme, a filter that operates on a cepstrum might be called a lifter. A low-pass lifter is similar to a low-pass filter in the frequency domain. It can be implemented by multiplying by a window in the quefrency domain and then converting back to the frequency domain, resulting in a modified signal, i.e. with signal echo being reduced.

Interpretation
The cepstrum can be seen as information about the rate of change in the different spectrum bands. It was originally invented for characterizing the seismic echoes resulting from earthquakes and bomb explosions. It has also been used to determine the fundamental frequency of human speech and to analyze radar signal returns. Cepstrum pitch determination is particularly effective because the effects of the vocal excitation (pitch) and vocal tract (formants) are additive in the logarithm of the power spectrum and thus clearly separate.

The cepstrum is a representation used in homomorphic signal processing, to convert signals combined by convolution (such as a source and filter) into sums of their cepstra, for linear separation. In particular, the power cepstrum is often used as a feature vector for representing the human voice and musical signals. For these applications, the spectrum is usually first transformed using the mel scale. The result is called the mel-frequency cepstrum or MFC (its coefficients are called mel-frequency cepstral coefficients, or MFCCs). It is used for voice identification, pitch detection and much more. The cepstrum is useful in these applications because the low-frequency periodic excitation from the vocal cords and the formant filtering of the vocal tract, which convolve in the time domain and multiply in the frequency domain, are additive and in different regions in the quefrency domain.

Note that a pure sine wave can not be used to test the cepstrum for its pitch determination from quefrency as a pure sine wave does not contain any harmonics and does not lead to quefrency peaks. Rather, a test signal containing harmonics should be used (such as the sum of at least two sines where the second sine is some harmonic (multiple) of the first sine, or better, a signal with a square or triangle waveform, as such signals provide many overtones in the spectrum.).

An important property of the cepstral domain is that the convolution of two signals can be expressed as the addition of their complex cepstra:
 * $$x_1 * x_2 \mapsto x'_1 + x'_2.$$

Applications
The concept of the cepstrum has led to numerous applications:
 * dealing with reflection inference (radar, sonar applications, earth seismology)
 * estimation of speaker fundamental frequency (pitch)
 * speech analysis and recognition
 * medical applications in analysis of electroencephalogram (EEG) and brain waves
 * machine vibration analysis based on harmonic patterns (gearbox faults, turbine blade failures, ...)

Recently, cepstrum-based deconvolution was used on surface electromyography signals, to remove the effect of the stochastic impulse train, which originates an sEMG signal, from the power spectrum of the sEMG signal itself. In this way, only information about the motor unit action potential (MUAP) shape and amplitude was maintained, which was then used to estimate the parameters of a time-domain model of the MUAP itself.

A short-time cepstrum analysis was proposed by Schroeder and Noll in the 1960s for application to pitch determination of human speech.