Main Content

initcakf

Create constant-acceleration linear Kalman filter from detection report

Description

example

filter= initcakf(detection)creates and initializes a constant-acceleration linear Kalmanfilterfrom information contained in adetectionreport. For more information about the linear Kalman filter, seetrackingKF.

The function initializes a constant acceleration state with the same convention asconstaccandcameas, [x;vx;ax;y;vy;ay;z;vz;az].

Examples

全部折叠

Create and initialize a 2-D constant-acceleration linear Kalman filter object from an initial detection report.

Create the detection report from an initial 2-D measurement, (10,−5), of the object position. Assume uncorrelated measurement noise.

detection = objectDetection(0,[10;-5],'MeasurementNoise',eye(2),...'SensorIndex',1,'ObjectClassID',1,'ObjectAttributes',{'Car',5});

Create the new filter from the detection report.

filter = initcakf(detection);

Show the filter state.

filter.State
ans =6×110 0 0 -5 0 0

Show the state transition model.

filter.StateTransitionModel
ans =6×61.0000 1.0000 0.5000 0 0 0 0 1.0000 1.0000 0 0 0 0 0 1.0000 0 0 0 0 0 0 1.0000 1.0000 0.5000 0 0 0 0 1.0000 1.0000 0 0 0 0 0 1.0000

Input Arguments

全部折叠

Detection report, specified as anobjectDetectionobject.

Example:detection = objectDetection(0,[1;4.5;3],'MeasurementNoise', [1.0 0 0; 0 2.0 0; 0 0 1.5])

Output Arguments

全部折叠

Linear Kalman filter, returned as atrackingKFobject.

Algorithms

  • The function computes the process noise matrix assuming a one-second time step and an acceleration rate standard deviation of 1 m/s3.

  • You can use this function as theFilterInitializationFcn财产的multiObjectTrackerobject.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Introduced in R2017a