Skip to content

Instantly share code, notes, and snippets.

@viktorkelemen
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save viktorkelemen/9862779 to your computer and use it in GitHub Desktop.
Save viktorkelemen/9862779 to your computer and use it in GitHub Desktop.
Extracting white noise statistics in GPS coordinate time series
First a GPS time series is decomposed into sub-time series using the EMD. Then the Hurst parameter is estimated for each sub-time series. Finally the sub-time series with H ≤ 0.5 are selected to extract the statistics of the white noise.
1. EMD (Empirical Mode Decomposition)
http://www.slideshare.net/EMYJANE/empirical-mode-decomposition
http://www.slideshare.net/puneet4gupta/hilbert-huang-transformhht
https://github.com/jaidevd/pyhht/blob/master/EMD.py
The EMD method consists of decomposing a time series, x(t), into sub-series, also called Intrinsic Mode Function (IMF). The decomposition of x(t) is done via the study of consecutive local extrema (i.e. two minima in the time interval [t1, t2]).
Each IMF is the result of applying a different band-pass filter with certain cutoff frequencies.
According to [4], the pseudo code of the EMD algorithm is formulated as:
- Step 1: find all the maxima and minima points. Fit the upper envelope according to the maxima points, and the lower envelope according to the minima points.
- Step 2: compute the mean value (m(t)) of the upper and lower envelopes.
- Step 3: compute the difference value (d(t)) between the time series x(t) and the mean value m(t).
- Step 4: iterate on the residual m(t).
The iteration in the last step of the EMD stops when d(t) is considered as zero-mean according to some stopping criterion. This stopping criterion will influence the number of IMFs extracted from the original time series, with the first IMFs corresponding to the high frequencies.
The number of the IMFs is generally linked to the level of noise in the time series
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment