initcagmphd

Создайте постоянное ускорение gmphd фильтр

Описание

phd = initcagmphd инициализирует постоянное ускорение gmphd отфильтруйте с нулевыми компонентами в фильтре.

пример

phd = initcagmphd(detections) инициализирует постоянное ускорение gmphd отфильтруйте на основе информации, предоставленной в обнаружениях объектов, detections. Функция инициализирует постоянное ускоряющее состояние с тем же соглашением как constacc и cameasX; v x; a x; y; v y; a y; z; v z; a z].

Примечание

Эта функция инициализации не совместима с trackerGNN, trackerJPDA, и trackerTOMHT Системные объекты.

Примеры

свернуть все

Считайте цель точки расположенной в [1;2;3]. Создайте обнаружение для цели с помощью objectDetection.

detection = objectDetection(0,[1;2;3]);

Инициализируйте постоянное ускорение gmphd фильтр с помощью initcagmphd.

phd = initcagmphd(detection);

Проиллюстрируйте начальное состояние и настройку степени фильтра доктора философии.

state = phd.States
state = 9×1

     1
     0
     0
     2
     0
     0
     3
     0
     0

extent = phd.HasExtent
extent = logical
   0

Считайте расширенный объект расположенным в [1; 2; 3]. Обнаружения объекта равномерно распределены в x-, y-, и z-направлениях с размерностями 1,2, 2.3, и 3.5, соответственно. Сгенерируйте 20 случайным образом распределенных обнаружений для объекта с помощью objectDetection.

detections = cell(20,1);
location = [1;2;3];
dimensions = [1.2;2.3;3.5];
rng(2019);
measurements = location + dimensions.*(-1 + 2*rand(3,20));
for i = 1:20
    detections{i} = objectDetection(0,measurements(:,i)); 
end

Инициализируйте постоянное ускорение gmphd фильтр с помощью initcagmphd.

phd = initcagmphd(detections);

Начальное состояние фильтра - то же самое как среднее значение измерений.

state = phd.States
state = 9×1

    1.1034
         0
         0
    2.5597
         0
         0
    2.4861
         0
         0

mean_measure = mean(measurements,2)
mean_measure = 3×1

    1.1034
    2.5597
    2.4861

По умолчанию функция устанавливает HasExtent свойство к истине, если количество измерений больше 1.

extent = phd.HasExtent
extent = logical
   1

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

свернуть все

Обнаружения объектов, заданные как массив ячеек objectDetection объекты. Можно создать detections непосредственно, или можно получить detections от выходных параметров объектов датчика, таких как radarSensor, monostaticRadarSensor, irSensor, и sonarSensor.

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

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

свернуть все

Гауссова смесь фильтр PHD, возвращенный как gmphd объект.

Алгоритмы

  • Можно использовать initcagmphd как FilterInitializationFcn свойство trackingSensorConfiguration.

  • Когда обнаружения обеспечиваются, как введено, функция добавляет один компонент в плотность, которая отражает среднее значение обнаружений. Когда функция вызвана без любых входных параметров, фильтр инициализируется без компонентов в плотности.

  • Функция использует распространение измерений, чтобы задать позиционную ковариацию.

  • Функция конфигурирует шум процесса фильтра путем принятия модульного стандартного отклонения для ускоряющего уровня изменения.

  • Функция задает максимум 500 компонентов в фильтре.

  • Функция устанавливает HasExtent свойство фильтра к true если количество входных обнаружений больше того.

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

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

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

| | |

Введенный в R2019b