how to avoid negative frequencies that can be obtained from instantaneous frequency estimation using Hilbert transform?
Here is what I am doing:
- compute analytic signal,
X = hilbert(x)
; - from analytic signal, unwrap the instantaneous phase
- calculate instantaneous frequency from derivation (
np.diff
) of instantaneous phase
The problem I have is that the instantaneous frequency can contains negative frequencies (e.g. chirp signal).
This issue is also well descriped her:
Negative instantaneous frequency with hilbert transform using scipy hilbert
Hilbert Huang Transform: Negative value in instantaneous frequency
The best solution seems to be descriped here:
and here:
Instantaneous frequency estimation using Osculating Circle Method
An other matlab code snipped is posted here, but it has no results:
The question is, how to calculate the velocity vector of the particle and the Osculating Circle method from the analytic signal (in matlab or python)?
Thanks, Tobias