0
$\begingroup$

Assume $\tilde{h}(f)$ is a filter estimated by an algorithm for (room) impulse response estimation working in the frequency domain.
Is there a way to assert if such filter is causal? Specifically, without resolving it in the time domain and convolving it with a known signal or estimating its zeros and poles.

I read somewhere that one criterion is that the phase of $\tilde{h}(f)$ should be monotonically non-increasing. Is this correct? Are there others?

$\endgroup$

2 Answers 2

1
$\begingroup$

The generally accepted signal processing definition of a causal system is one in which its output does not respond to a given input before that input is applied. This means it has an impulse response that is zero for all time less than $t=0$. The phase can indeed be monotonically increasing for such a causal system. This will result in negative Group Delay over the portion of the frequency response where this occurs, but this does NOT mean the system is not causal. This interesting an unintuitive property is detailed in this other post.

The way to determine if a system is causal from its frequency response is to take the Hilbert Transform of the real part of the frequency response and compare it to the imaginary part. The negative of the Hilbert Transform of the real part of the frequency response must equal the imaginary part of the frequency response for a causal time domain impulse response.

For a causal system (one-sided in time):

$$H(\omega) = H_R(\omega) - j \hat{H}_R(\omega)$$

Where:

$H(\omega)$: Complex frequency response.

$H_R(\omega)$: Real portion only of complex frequency response.

$\hat{H}_R(\omega)$: Hilbert Transform of the real portion of the complex frequency response.

$\endgroup$
0
$\begingroup$

Depends on a bit on the definition of "causal". Almost all room impulse response estimates are strictly causal (i.e. $h[n] \approx 0, n < 0$ simply because there is sizable time gap between $n=0$ and the arrival of the direct sound (which is supposed to be the first non-zero sample). That time gap is equal to the travel time of a sound wave between sound source and the microphone.

This being said measured impulse response often have pre-ringing, i.e. the direct sound has not a clean onset but a bit of ringing before the main peak. This is a function of how exactly the measurement system works and does happen even for some commercial systems (like SoundCheck for example).

Individual peaks EARLIER than the direct sound can also occur, but that's typically caused by non-linearities or periodic time variances with sweep like measurement signals.

Is there a way to assert if such filter is causal?

Not that I know of. It's really just done by visual inspection using the requirements of your specific application.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.