Create a constant turn rate tracking cubature Kalman filter object, trackingCKF
, from an initial detection report. The detection report is made from an initial 3-D position measurement of the Kalman filter state in spherical coordinates. You can obtain the 3-D position measurement using the constant turn rate measurement function, ctmeas
.
This example uses the coordinates, az = 30, e1 = 5, r = 100, rr = 4
and a measurement noise of diag([2.5, 2.5, 0.5, 1].^2)
.
Use the MeasurementParameters
property of the detection
object to define the frame. When not defined, the fields of the MeasurementParameters
struct use default values. In this example, sensor position, sensor velocity, orientation, elevation, and range rate flags are default.
detection =
objectDetection with properties:
Time: 0
Measurement: [4×1 double]
MeasurementNoise: [4×4 double]
SensorIndex: 1
ObjectClassID: 0
ObjectClassParameters: []
MeasurementParameters: [1×1 struct]
ObjectAttributes: {}
Use initctckf
to create a trackingCKF
filter initialized at the provided position and using the measurement noise defined above.
ckf =
trackingCKF with properties:
State: [7×1 double]
StateCovariance: [7×7 double]
StateTransitionFcn: @constturn
ProcessNoise: [4×4 double]
HasAdditiveProcessNoise: 0
MeasurementFcn: @ctmeas
HasMeasurementWrapping: 1
MeasurementNoise: [4×4 double]
HasAdditiveMeasurementNoise: 1
EnableSmoothing: 0
Verify that the filter state produces the same measurement as above.
meas2 = 4×1
30.0000
5.0000
100.0000
4.0000