exponenta event banner

getTrackVelocities

Получение обновленной ковариационной матрицы скоростей и скоростей

Описание

пример

velocity = getTrackVelocities(tracks,velocitySelector) возвращает скорости отслеживаемых объектов.

пример

[velocity,velocityCovariances] = getTrackVelocities(tracks,velocitySelector) также возвращает ковариационные матрицы скорости дорожки.

Примеры

свернуть все

Создайте расширенный трекер фильтра Калмана для 3-D движения с постоянным ускорением.

tracker = radarTracker('FilterInitializationFcn',@initcaekf);

Инициализируйте трекер с одним обнаружением.

detection = objectDetection(0,[10;-20;4],'ObjectClassID',3);
tracks = tracker(detection,0);

Добавьте второе обнаружение позже и в другом положении.

detection = objectDetection(0.1,[10.3;-20.2;4],'ObjectClassID',3);
tracks = tracker(detection,0.2);

Получите вектор скорости из состояния дорожки.

velocitySelector = [0 1 0 0 0 0 0 0 0; 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 0 0 1 0];
velocity = getTrackVelocities(tracks,velocitySelector)
velocity = 1×3

    1.0093   -0.6728         0

Создайте расширенный трекер фильтра Калмана для 3-D движения с постоянным ускорением.

tracker = radarTracker('FilterInitializationFcn',@initcaekf);

Инициализируйте трекер с одним обнаружением.

detection = objectDetection(0,[10;-20;4],'ObjectClassID',3);
tracks = step(tracker,detection,0);

Добавьте второе обнаружение позже и в другом положении.

detection = objectDetection(0.1,[10.3;-20.2;4.3],'ObjectClassID',3);
tracks = step(tracker,detection,0.2);

Получите вектор скорости из состояния дорожки.

velocitySelector = [0 1 0 0 0 0 0 0 0; 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 0 0 1 0];
[velocity,velocityCovariance] = getTrackVelocities(tracks,velocitySelector)
velocity = 1×3

    1.0093   -0.6728    1.0093

velocityCovariance = 3×3

   70.0685         0         0
         0   70.0685         0
         0         0   70.0685

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

свернуть все

Дорожки объектов, указанные как массив objectTrack объекты или массив структур, содержащих достаточную информацию для получения информации о скорости дорожки. Как минимум, эти структуры должны содержать State векторное поле столбца и положительное-определенное StateCovariance поле матрицы. Пример структуры дорожки см. в разделе toStruct.

Селектор скорости, заданный как D-на-N вещественная матрица единиц и нулей. D - количество размеров трекера. N - размер вектора состояния. Используя эту матрицу, функция извлекает скорости отслеживания из вектора состояния. Умножьте вектор состояния на матрицу селектора скорости, возвращающую скорости. Один и тот же селектор применяется ко всем дорожкам объектов.

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

свернуть все

Скорости отслеживаемых объектов в момент последнего обновления, возвращаемые в виде вектора 1-by-D или вещественной матрицы M-by-D. D представляет количество элементов скорости. M представляет количество дорожек.

Ковариационные матрицы скорости отслеживаемых объектов, возвращаемые как вещественно-значимая матрица D-за-D-матрицей или вещественно-значимая матрица D-за-D-за-M. D представляет количество элементов скорости. M представляет количество дорожек. Каждая подматрица D-by-D является ковариационной матрицей скорости для дорожки.

Подробнее

свернуть все

Селектор скорости для 2-Dimensional движения

Отображение матрицы выбора скорости для двумерного движения, когда состояние состоит из положения и скорости.

[01000001]

Селектор скорости для 3-Dimensional движения

Отображение матрицы выбора скорости для трехмерного движения, когда состояние состоит из положения и скорости.

[010000000100000001]

Селектор скорости для 3-Dimensional движения с ускорением

Отображение матрицы выбора скорости для трехмерного движения, когда состояние состоит из положения, скорости и ускорения.

[010000000000010000000000010]

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.
Представлен в R2021a