1
$\begingroup$

A maneuvering target is flying in 3d cartesian space, but a sensor (passive infrared or mic array, etc.) can only observe it in polar coordinate with 2d orientations (azimuth, elevation). For simplicity, there is only one target and one stationary observer fixed in origin coordinates. The question is what's the best way of modeling its states and motions for Kalman tracking? enter image description here

From my investigations so far, there could be three approaches:

  1. All in 3d format. represent location of target states and observations all onto a unit sphere ($X= [x, y, z], |X|=1$), and normalize the location each time after state correcting/predicting (as was done in a sound source tracking system).

  2. All in 2d format (azimuth, elevation). Simplest but may not well simulate the linear motions in real 3d cartesian space, but with circular curves instead.

  3. remain 3d location states and 2d angle observations, use EKF/UKF to tackle nonlinear transformation with constraint that $|X|=1$.

$\endgroup$
9
  • $\begingroup$ Have you researched "angle only tracking". I've see a number of papers that transform these observations into 3 dimensions. For example: Range estimation using angle-only target tracking with particle filters $\endgroup$ Nov 6, 2022 at 16:21
  • $\begingroup$ "people often use EKF/UKF ... since it's an invertible transformation" Eh? Do you mean you want to use $\mathbf x = \begin{bmatrix}x & y & z\end{bmatrix}^T,\ \| \mathbf x \| = 1$? You certainly can use this; I've done something similar with 3D orientations and unit quaternions. $\endgroup$
    – TimWescott
    Nov 6, 2022 at 16:42
  • $\begingroup$ This is a great problem statement, but for Stackexchange it's flawed, in the sense that Stackexchange wants one clear question that has one clear answer. This question is the thesis statement for a wide-ranging discussion that may include opinions. What it lacks is, first -- questions, i.e., some clear interrogative statement followed by a question mark, and second, questions that are complete and aren't subject to opinion (i.e., "what is best, A or B?" is an opinion question, but "what are the possible advantages of A vs. B?" leaves the opinion-making to the reader). $\endgroup$
    – TimWescott
    Nov 6, 2022 at 16:48
  • 1
    $\begingroup$ ... and conversely to what @PeterK. said, if if you encode "all that" into a model and get it wrong then it'll make things worse. $\endgroup$
    – TimWescott
    Nov 8, 2022 at 4:59
  • 1
    $\begingroup$ @TimWescott. All models are wrong. Some are useful. :-) I did say If you know more about how the target moves. Clearly, if you don't it'll go poorly. $\endgroup$
    – Peter K.
    Nov 8, 2022 at 13:05

1 Answer 1

1
$\begingroup$

So, let's see how to start this. Let's make the states the 3D location and the 3D velocities: $$ \mathbf{x}_k = \left [ x_k\ \dot{x}_k\ y_k\ \dot{y}_k\ z_k\ \dot{z}_k \right ]^T $$ Then, following the Mathworks page I referenced in my comment, let's just assume a random walk for the state update equation: $$ \mathbf{x}_{k+1} = \mathbf{A} \mathbf{x}_{k} + \epsilon_k $$ where $$\mathbf{A} = \left [\begin{array}{cccccc} 1 & \Delta t & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 &1 & \Delta t & 0 & 0 \\ 0 & 0 &0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & \Delta t \\ 0 & 0 & 0 & 0 & 0 & 1 \\ \end{array} \right] $$ and $\epsilon_k$ is the independent, identically distributed process noise.

Then the output equation is just $$ \mathbf{z}_k = \left [ \begin{array}{c} \arcsin\left(\frac{z_k}{ \sqrt{x_k^2 + y_k^2 + z_k^2}}\right)\\ \arctan\left(\frac{y_k}{ x_k}\right)\\ \end{array} \right ] + \eta_k $$ where $\eta_k$ is the measurement noise and the measurements are the elevation $$\phi = \arcsin\left(\frac{z_k}{ \sqrt{x_k^2 + y_k^2 + z_k^2}}\right)$$ and the azimuth $$\psi = \arctan \left(\frac{y_k}{ x_k}\right)$$

And I'd just then apply your EKF equations to that. I can't see a good reason to normalize $|\mathbf{x}_k | = 1$, just with what I've written.

It may be that the model doesn't work well without some sort of correction, but I'd try it without the normalization first.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.