Your problems are coming from the unwrapping of the phase. Your estimate of the instantaneous frequency can only be negative if diff(unrolled_phase) is negative. Just add 2pi to those points (and all the values after).
Instantaneous Frequency
4 次查看(过去 30 天)
显示 更早的评论
Hello
I am estimating the Instantaneous Frequency of my signal using the following code.
h=hilbert(acc);
unrolled_phase = unwrap(angle(h));
inst_freq = ((diff(unrolled_phase))'./diff(T))/(2*pi);
I get both positive and negative frequencies (very few) also some spikes. How to avoid negative frequency and unrealistic. frequencies?
0 个评论
采纳的回答
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Measurements and Feature Extraction 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!