Engee documentation

rceps

Real kepstr and minimum-phase reduction.

Library

EngeeDSP

Syntax

Function call

  • y, ym = rceps(x) — returns a real kepstr y and the restored minimum-phase version ym the input sequence.

Arguments

Input arguments

# x — input signal

+ real vector

Details

The input signal, given as a real vector.

Output arguments

# y — real kepstr

+ vector

Details

A real-valued kepstr returned as a vector.

# ym — minimum-phase real kepstr

+ vector

Details

The minimum-phase real-valued kepstr returned as a vector.

Algorithms

The real kepstr is the inverse Fourier transform of the real logarithm of the Fourier transform module of the sequence.

Function rceps works only with real data.

Function rceps — this is the implementation of algorithm 7.2 from [2]:

y = real(ifft(log(abs(fft(x)))))

The corresponding window transformation in the cepstral region generates a reconstructed minimum-phase signal:

w = [1.0; fill(2.0, n÷2 - 1); fill(1.0, 1 - n % 2); zeros(n÷2 - 1)]
ym = real(ifft(exp.(fft(w .* y))))

Literature

  1. Oppenheim, Alan V., and Ronald W. Schafer. Digital Signal Processing, Englewood Cliffs, NJ, Prentice-Hall, 1975.

  2. Programs for Digital Signal Processing, IEEE Press, New York, 1979.