Interpolation with almost constant slope E

58 Views Asked by At

I have a curve $(\sigma_t,\varepsilon_t)$ described parametrically:

Data here

for (implicit) $t_i=(0,1,...n)$ I have two data series

$\sigma_{t_i}=\sigma_1, \sigma_2, ... \sigma_n$

$\varepsilon_{t_i}=\varepsilon_1, \varepsilon_2, ... \varepsilon_n$

The data series are rounded (quantization error), and I need to recover the original, non rounded curve $(s_t,e_t)$

I assume that the ratio E is unknown, but varies smoothly. E is

$E_t=\frac{\Delta s_{t}}{\Delta e_{t}}$

so, for any point on the curve $(e_0,s_0)$, it should be

$E_t=\frac{s_{0}-s_{-1}}{e_{0}-e_{-1}} \approx \frac{s_{1}-s_{0}}{e_{1}-e_{0}}$

Because all the values are quantized

$\Delta \sigma_{t}= n_t \delta$

$\Delta \varepsilon_{t}= m_t \epsilon$

where $\delta$ and $\epsilon$ are constants, and $n_t \geq 0$ and $m_t\geq 0$ are integers. Note that the integers can be zero, which means that for variations of $\sigma_{t}$ frequently $\varepsilon_{t}$ doesn't change (and vice versa).

It means that, due to the rounding, frequently ${\Delta \sigma_{t}}=0$, or ${\Delta \varepsilon_{t}}=0$, and $E_t=\frac{\Delta s_{t}}{\Delta e_{t}}$ can't easily be estimated on each point.

I had tried many different ways to interpolate the data to estimate $(s_t,e_t)$, but for it, I need to estimate $E_t$ from $(\sigma_t,\varepsilon_t)$, and because of the difficulty explained on the former paragraph, I need to use a large number of data points for the estimation. But E may not be representative along distant points. The number of distant points to use to get E is variable, and the data contains some rare, but present pathological points, where E can't vary smoothly (due to noise or unknown causes).

For that reason, trying to estimate E before the interpolation seems to be the wrong strategy.

There is an interpolation method where E is implicit and varies smoothly?

I'm not sure how to define "smoothly". I may say $\Delta E_t \leq \Delta$, but the pathological points frequently break that criteria.

1

There are 1 best solutions below

0
On

I'm not allowed to comment, only to "answer", but what you want to do is:

  1. To minimize the second derivative. Probably minimize the "energy" or the area under the second derivative squared. That will make E as constant as possible.
  2. To have continuity maybe until the second derivative.
  3. To keep the interpolation bounded inside the rectangles where the rounding is compatible.

The first two points should't be hard to encode with a sparse matrix and a solver. I'm not sure how to deal with the rounding bounds.