trackingEKF
Extended Kalman filter for object tracking
Description
A trackingEKF
object is a discrete-time
extended Kalman filter used to track dynamical states, such as positions and velocities
of objects that can be encountered in an automated
driving scenario. Such objects include automobiles, pedestrians, bicycles, and
stationary structures or obstacles.
A Kalman filter is a recursive algorithm for estimating the evolving state of a
process when measurements are made on the process. The extended Kalman filter can model
the evolution of a state when the state follows a nonlinear motion model, when the
measurements are nonlinear functions of the state, or when both conditions apply. The
extended Kalman filter is based on the linearization of the nonlinear equations. This
approach leads to a filter formulation similar to the linear Kalman filter, trackingKF
.
The process and measurements can have Gaussian noise, which you can include in these ways:
Add noise to both the process and the measurements. In this case, the sizes of the process noise and measurement noise must match the sizes of the state vector and measurement vector, respectively.
Add noise in the state transition function, the measurement model function, or in both functions. In these cases, the corresponding noise sizes are not restricted.
See Extended Kalman Filters for more details.
Creation
Syntax
Description
filter = trackingEKF
creates an extended Kalman filter object for a
discrete-time system by using default values for the
StateTransitionFcn
,
MeasurementFcn
, and State
properties.
The process and measurement noises are assumed to be additive.
specifies
the state transition function, filter
= trackingEKF(transitionfcn
,measurementfcn
,state
)transitionfcn
,
the measurement function, measurementfcn
, and
the initial state of the system, state
.
configures the properties of the extended Kalman filter object by using one or
more filter
= trackingEKF(___,Name,Value
)Name,Value
pair arguments and any of the previous
syntaxes. Any unspecified properties have default values.
Properties
Object Functions
predict | Predict state and state estimation error covariance of tracking filter |
correct | Correct state and state estimation error covariance using tracking filter |
correctjpda | Correct state and state estimation error covariance using tracking filter and JPDA |
distance | Distances between current and predicted measurements of tracking filter |
likelihood | Likelihood of measurement from tracking filter |
clone | Create duplicate tracking filter |
residual | Measurement residual and residual noise from tracking filter |
initialize | Initialize state and covariance of tracking filter |
tunableProperties (Sensor Fusion and Tracking Toolbox) | Get tunable properties of filter |
setTunedProperties (Sensor Fusion and Tracking Toolbox) | Set properties to tuned values |
Examples
More About
Algorithms
The extended Kalman filter estimates the state of a process governed by this nonlinear stochastic equation:
xk is the state at step k. f() is the state transition function. Random noise perturbations, wk, can affect the object motion. The filter also supports a simplified form,
To use the simplified form, set
HasAdditiveProcessNoise
to true
.
In the extended Kalman filter, the measurements are also general functions of the state:
h(xk,vk,t) is the measurement function that determines the measurements as functions of the state. Typical measurements are position and velocity or some function of position and velocity. The measurements can also include noise, represented by vk. Again, the filter offers a simpler formulation.
To use the simplified form, set
HasAdditiveMeasurementNoise
to true
.
These equations represent the actual motion and the actual measurements of the object. However, the noise contribution at each step is unknown and cannot be modeled deterministically. Only the statistical properties of the noise are known.
References
[1] Brown, R.G. and P.Y.C. Wang. Introduction to Random Signal Analysis and Applied Kalman Filtering. 3rd Edition. New York: John Wiley & Sons, 1997.
[2] Kalman, R. E. “A New Approach to Linear Filtering and Prediction Problems.” Transactions of the ASME–Journal of Basic Engineering. Vol. 82, Series D, March 1960, pp. 35–45.
[3] Blackman, Samuel and R. Popoli. Design and Analysis of Modern Tracking Systems. Artech House.1999.
[4] Blackman, Samuel. Multiple-Target Tracking with Radar Applications. Artech House. 1986.
Extended Capabilities
Version History
Introduced in R2017a
See Also
Functions
constacc
|constaccjac
|cameas
|cameasjac
|constturn
|constturnjac
|ctmeas
|ctmeasjac
|constvel
|constveljac
|cvmeas
|cvmeasjac
|initcaekf
|initcvekf
|initctekf