Создайте объект фильтра частиц отслеживания постоянной скорости, trackingPF
, из первоначального отчета об обнаружении. Отчет о обнаружении составляется из начального 3-D измерения положения состояния фильтра частиц в сферических координатах. Можно получить измерение положения 3-D с помощью функции измерения постоянной скорости, cvmeas
.
Этот пример использует координаты az = 30, e1 = 5, r = 100, rr = 4
и измерение шум diag([2.5, 2.5, 0.5, 1].^2)
.
Используйте MeasurementParameters
свойство detection
объект для определения системы координат. Когда не определено, поля MeasurementParameters
struct использует значения по умолчанию. В этом примере положение датчика, скорость датчика, ориентация, повышение и скорость области значений по умолчанию.
detection =
objectDetection with properties:
Time: 0
Measurement: [4x1 double]
MeasurementNoise: [4x4 double]
SensorIndex: 1
ObjectClassID: 0
MeasurementParameters: [1x1 struct]
ObjectAttributes: {}
Использование initcvpf
для создания trackingPF
фильтр, инициализированный в заданном положении и использующий измерительный шум, заданный выше.
pf =
trackingPF with properties:
State: [6⨯1 double]
StateCovariance: [6⨯6 double]
IsStateVariableCircular: [0 0 0 0 0 0]
StateTransitionFcn: @constvel
ProcessNoiseSamplingFcn: []
ProcessNoise: [3x3 double]
HasAdditiveProcessNoise: 0
MeasurementFcn: @cvmeas
MeasurementLikelihoodFcn: []
MeasurementNoise: [4x4 double]
Particles: [6x1000 double]
Weights: [1x1000 double]
ResamplingPolicy: [1x1 trackingResamplingPolicy]
ResamplingMethod: 'multinomial'
Проверьте, что состояние фильтра создает примерно то же измерение, что и detection.Measurement
.
meas2 = 4×1
29.9188
5.0976
99.8303
4.0255