Skip to content

models#

Tracking models can be chosen from the ros parameter ~tracking_model:

Each model has its own parameters, which can be set in the ros parameter server.

  • model name
    • parameter name for general
    • override parameter name for each tracking object class

linear constant acceleration model#

  • prediction
\[ \begin{bmatrix} x_{k+1} \\ y_{k+1} \\ v_{x_{k+1}} \\ v_{y_{k+1}} \\ a_{x_{k+1}} \\ a_{y_{k+1}} \end{bmatrix} = \begin{bmatrix} 1 & 0 & dt & 0 & \frac{1}{2}dt^2 & 0 \\ 0 & 1 & 0 & dt & 0 & \frac{1}{2}dt^2 \\ 0 & 0 & 1 & 0 & dt & 0 \\ 0 & 0 & 0 & 1 & 0 & dt \\ 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 \\ \end{bmatrix} \begin{bmatrix} x_k \\ y_k \\ v_{x_k} \\ v_{y_k} \\ a_{x_k} \\ a_{y_k} \end{bmatrix} + noise \]
  • noise model

    • random walk in acc: 2 parameters(currently disabled)
    • random state noise: 6 parameters
  • observation
    • observation: x,y,vx,vy
    • observation noise: 4 parameters

constant turn rate and velocity model#

Just idea, not implemented yet.

\[ \begin{align} x_{k+1} &= x_k + \frac{v_k}{\omega_k} (sin(\theta_k + \omega_k dt) - sin(\theta_k)) \\ y_{k+1} &= y_k + \frac{v_k}{\omega_k} (cos(\theta_k) - cos(\theta_k + \omega_k dt)) \\ v_{k+1} &= v_k \\ \theta_{k+1} &= \theta_k + \omega_k dt \\ \omega_{k+1} &= \omega_k \end{align} \]