initcvkf

Создайте постоянную скорость линейный Фильтр Калмана из отчета обнаружения

Описание

пример

filter = initcvkf(detection) создает и инициализирует постоянную скорость линейный Кальман filter от информации, содержавшейся в detection отчет. Для получения дополнительной информации о линейном Фильтре Калмана, смотрите trackingKF.

Функция инициализирует постоянное скоростное состояние тем же соглашением как constvel и cvmeasX; v x; y; v y; z; v z].

Примеры

свернуть все

Создайте и инициализируйте 2D линейный объект Фильтра Калмана из первоначального отчета обнаружения.

Создайте отчет обнаружения из начального 2D измерения, (10,20), положения объекта.

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

Создайте новый трек из отчета обнаружения.

filter = initcvkf(detection)
filter = 
  trackingKF with properties:

               State: [4x1 double]
     StateCovariance: [4x4 double]

         MotionModel: '2D Constant Velocity'
        ControlModel: []
        ProcessNoise: [4x4 double]

    MeasurementModel: [2x4 double]
    MeasurementNoise: [2x2 double]

     MaxNumOOSMSteps: 0

     EnableSmoothing: 0

Покажите состояние.

filter.State
ans = 4×1

    10
     0
    20
     0

Покажите модель изменения состояния.

filter.StateTransitionModel
ans = 4×4

     1     1     0     0
     0     1     0     0
     0     0     1     1
     0     0     0     1

Создайте и инициализируйте 3-D линейный объект Фильтра Калмана из первоначального отчета обнаружения.

Создайте отчет обнаружения из начального 3-D измерения, (10,20, −5), положения объекта.

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

Создайте новый фильтр из обнаружения, сообщают и отображают его свойства.

filter = initcvkf(detection)
filter = 
  trackingKF with properties:

               State: [6x1 double]
     StateCovariance: [6x6 double]

         MotionModel: '3D Constant Velocity'
        ControlModel: []
        ProcessNoise: [6x6 double]

    MeasurementModel: [3x6 double]
    MeasurementNoise: [3x3 double]

     MaxNumOOSMSteps: 0

     EnableSmoothing: 0

Покажите состояние.

filter.State
ans = 6×1

    10
     0
    20
     0
    -5
     0

Покажите модель изменения состояния.

filter.StateTransitionModel
ans = 6×6

     1     1     0     0     0     0
     0     1     0     0     0     0
     0     0     1     1     0     0
     0     0     0     1     0     0
     0     0     0     0     1     1
     0     0     0     0     0     1

Входные параметры

свернуть все

Отчет обнаружения в виде objectDetection объект.

Пример: detection = objectDetection(0,[1;4.5;3],'MeasurementNoise', [1.0 0 0; 0 2.0 0; 0 0 1.5])

Выходные аргументы

свернуть все

Линейный Фильтр Калмана, возвращенный как trackingKF объект.

Алгоритмы

  • Функция вычисляет матрицу шума процесса, принимающую шаг с одним вторым разом и ускоряющее стандартное отклонение 1 м/с2.

  • Можно использовать эту функцию в качестве FilterInitializationFcn свойство multiObjectTracker объект.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Функции

Объекты

Введенный в R2017a