initctgmphd

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

Описание

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

пример

phd = initctgmphd(detections) инициализирует постоянную скорость поворота gmphd фильтр на основе информации, предоставляемой в обнаружениях объектов, detections. Функция инициализирует постоянное состояние скорости поворота с тем же соглашением, что и constturn и ctmeas, [x; <reservedrangesplaceholder8> <reservedrangesplaceholder7>; y; v y; ω; z; v z], где ω - скорость поворота.

Примечание

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

Примеры

свернуть все

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

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

Инициализируйте постоянную скорость поворота gmphd фильтровать, используя initctgmphd.

phd = initctgmphd(detection);

Отображение начального состояния и настройки экстента filter.

state = phd.States
state = 7×1

     1
     0
     2
     0
     0
     3
     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 фильтровать, используя initctgmphd.

phd = initctgmphd(detections);

Начальное состояние фильтра совпадает со средним значением измерений.

state = phd.States
state = 7×1

    1.1034
         0
    2.5597
         0
         0
    2.4861
         0

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

    1.1034
    2.5597
    2.4861

По умолчанию функция устанавливает HasExtent свойство true, если количество измерений больше 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 объект.

Алгоритмы

  • Вы можете использовать initctgmphd как FilterInitializationFcn свойство trackingSensorConfiguration.

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

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

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

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

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

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

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

.

См. также

| | |

Введенный в R2019b