Suppose I have to track the (2D) position of an object, that moves along a steady but curved path. The object can record its own position coordinates, however, the measurement sensor is located at a fixed (known) offset from the object's center. Now from the recorded path of the sensor I need to calculate back to the actual path of the object.

Visualization of paths

Let's introduce the following notation:

  • $\vec{c}[n]$ ... center of object at sample $n$
  • $\vec{m}[n]$ ... measured position at sample $n$
  • $\vec{d}[n] = \vec{m}[n] - \vec{c}[n]$ ... offset of the sensor

The distance between the sensor and the center is always constant ($|\vec{d}[n]| = d = const.$). Only the direction of $\vec{d}[n]$ changes and points in the direction of the tangent of the actual path. This leads me to the following equation (the first term is the normalized tangent vector, scaled by the length of the offset.):

$$ \frac{\dot{\vec{c}}[n]}{|\dot{\vec{c}}[n]|} \cdot d + \vec{c}[n] = \vec{m}[n] $$

So, this is a nonlinear differential equation system. I have no idea how solve it.

Moreover, the curve is not given by a mathematical function, and I only have the measurement samples. So the differential quotient $\dot{\vec{c}}[n]$ is actually a difference quotient, approximated by

$$ \dot{\vec{c}}[n] \approx \frac{\vec{c}[n+1] - \vec{c}[n]}{\Delta t} $$

The time difference $\Delta t$ between the samples is irrelevant, because it cancels out in the differential equation. Initial conditions (like the center position at start) can be assumed to be known.

Can anyone help me how to find a solution for this? A numerical method is also acceptable. Or maybe I'm completely on the wrong track, and there's a much simpler way to tackle this problem?



You must log in to answer this question.