Separates a convolved signal \(x = h * e\) into a minimum-phase
impulse-response component \(h\) and an excitation \(e\) by
low-time liftering of the complex cepstrum.
Usage
hdecon(x, cutoff, n_fft = NULL)
Arguments
- x
Numeric vector (assumed convolution \(h * e\)).
- cutoff
Liftering cutoff (quefrency index). Coefficients above
are zeroed to isolate the slow-varying component.
- n_fft
FFT length (default: next power of 2 \(\geq\) length(x)).
Value
List with filtered (minimum-phase component \(h\)),
name, fs, n_samples, and extra (excitation, cutoff, n_fft).
Details
Reference: Oppenheim & Schafer (2009), Discrete-Time Signal Processing,
3rd ed., on homomorphic systems for convolution.
Examples
# \donttest{
set.seed(1)
x <- sin(2 * pi * 5 * seq(0, 1, length.out = 512))
res <- hdecon(x, cutoff = 20)
length(res$filtered)
#> [1] 512
# }