Approaches to fitting noisy oscillatory data?

103 Views Asked by At

I have observations $\hat{f}$ from data at points $\mathbf{x}=\{x_1,\ldots,x_N\}$, that is modeled as a known oscillatory form $f(k\ x)$ (for example, the sinc function), where $k$ controls the frequency, corrupted by noise $n(x)$ whose statistical characteristics are not known.

We're trying to find a $k$ that best fits the data. Typical approaches include minimizing the error:

$$\min_k \Vert \hat{f}(x) - f(k x)\Vert_p,\ x\in\mathbf{x}$$

where $p$ is either 1 or 2. Approaches using Kalman filtering are off the table because the noise is unknown and is most probably not Gaussian. Some other local suggestions (down the hall) included performing a fit over smoothed envelopes of the fit function and data, but this seems to suggest ignoring the subtleties in the data (essentially, it's a fit over the slowly varying features).

Are there well known methods or tricks when dealing with fitting oscillatory functions?

1

There are 1 best solutions below

0
On BEST ANSWER

If it's batch data, try using a total variational technique. I've implemented the algorithm listed here with great success.

This algorithm computes the noiseless derivative, but you can just re-integrate that. In fact, the algorithm generates an "integration" matrix as part of the process that you can just apply by multiplying against the resulting derivative signal.