cvmeasmscjac

Якобиан измерения с использованием модели постоянной скорости (CV) в системе координат MSC

Описание

jacobian = cvmeasmscjac(state) вычисляет якобиан относительно углового измерения (азимут и повышение) состояния в системе координат датчика. Движение может быть как в 2-D, так и в трехмерном пространстве. Если модель движения находится в 2-D пространстве, значения, соответствующие повышению, приняты равными нулю.

The trackingEKF и trackingMSCEKF фильтры требуют определения MeasurementJacobianFcn свойство. cvmeasmscjac функция может использоваться как MeasurementJacobianFcn. Как использовать эту MeasurementFcn с trackerGNN и trackerTOMHT, можно использовать trackingMSCEKF фильтр.

пример

jacobian = cvmeasmscjac(state,frame) обеспечивает измерение якобиана в заданной системе координат. Допустимые значения для системы координат 'rectangular' и 'spherical'.

jacobian = cvmeasmscjac(state,frame,laxes) задает оси системы координат датчика. The laxes вход является матрицей 3 на 3 с каждым столбцом, задающим направление локальных x, y и z осей в системе координат датчика. Значение по умолчанию для laxes является [1 0 0;0 1 0;0 0 1].

пример

jacobian = cvmeasmscjac(state,measurementParameters) задает параметры измерения как struct.

Примеры

свернуть все

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

Сферическая система координат

Получите якобиан азимута и измерения повышения из состояния MSC.

mscState = [0.5;0;0.3;0;1e-3;1e-2];
cvmeasmscjac(mscState)
ans = 2×6

   57.2958         0         0         0         0         0
         0         0   57.2958         0         0         0

Прямоугольная система координат

Получите якобиан измерения положения из состояния MSC. Задайте систему координат как второй вход.

cvmeasmscjac(mscState,'rectangular')
ans = 3×6
105 ×

   -0.0046         0   -0.0026         0   -8.3839         0
    0.0084         0   -0.0014         0   -4.5801         0
         0         0    0.0096         0   -2.9552         0

Также можно задать систему координат используя measurementParameters.

cvmeasmscjac(mscState,struct('Frame','rectangular'))
ans = 3×6
105 ×

   -0.0046         0   -0.0026         0   -8.3839         0
    0.0084         0   -0.0014         0   -4.5801         0
         0         0    0.0096         0   -2.9552         0

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

свернуть все

Состояние, которое задано относительно наблюдателя в измененных сферических координатах, как вектор. Для примера, если существует целевое состояние, xT и состояние наблюдателя, xO, state используется функцией xT - xO.

2-D версия измененных сферических координат (MSC) также упоминается как измененные полярные координаты (MPC). В случае:

  • 2-D пространство -- Состояние равняется [az azRate 1/ r vr/ r].

  • Трехмерное пространство -- Состояние равняется [az omega el elRate 1/ r vr/ r].

Переменные, используемые в соглашении:

  • az -- Угол азимута (рад)

  • el -- Угол возвышения (рад)

  • azRate - скорость азимута (рад/с)

  • elRate -- скорость Повышения (рад/с)

  • omega -- azRate × cos (el) (рад/с)

  • 1/ r -- 1/диапазон (1/м)

  • vr/ r -- частота диапазона/диапазона или обратное время перехода (1/с)

Если модель движения находится в 2-D пространстве, значения, соответствующие повышению, принимаются равными нулю, если в качестве выхода запрашивается повышение.

Типы данных: single | double

Измерительные системы координат, заданные как 'spherical' или 'rectangular'. При использовании 'rectangular' система координат, три строки, существующие в jacobian представление якобиана измерений относительно x, y и z положения цели в Декартовой системе координат датчика. При использовании 'spherical' система координат, две строки, существующие в jacobian представляет якобиан азимута и измерений по повышению цели. Если не задано, функция предоставляет якобиан измерений в 'spherical' система координат.

Направление локальных x, y и z осей в сценарии, заданное как матрица 3 на 3. Каждый столбец матрицы задает направление локальных x, y и z осей в системе координат датчика. Если не указано, laxes равно [1 0 0;0 1 0;0 0 1].

Типы данных: double

Параметры измерения, заданные как структура или массив структур. Полями структуры являются:

ОбластьОписаниеПример
Frame

Система координат, используемый для сообщения измерений, заданный как одно из следующих значений:

  • 'rectangular' - Обнаружения регистрируются в прямоугольных координатах.

  • 'spherical' - Обнаружения регистрируются в сферических координатах.

'spherical'
OriginPositionСмещение положения источника системы координат относительно родительской системы координат, заданное как [x y z] вектор с реальным значением.[0 0 0]
OriginVelocityСмещение скорости источника системы координат относительно родительской системы координат, заданное как [vx vy vz] вектор с реальным значением.[0 0 0]
OrientationМатрица поворота системы координат, заданная как действительная ортонормальная матрица 3 на 3.[1 0 0; 0 1 0; 0 0 1]
HasAzimuthЛогический скаляр, указывающий, включен ли азимут в измерение.1
HasElevationЛогический скаляр, указывающий, включено ли в измерение повышение высоты. Для измерений, сообщаемых в прямоугольной системе координат, и если HasElevation является ложным, сообщенные измерения принимают 0 степени повышения.1
HasRangeЛогический скаляр, указывающий, включена ли область значений в измерение.1
HasVelocityЛогический скаляр, указывающий, включают ли сообщенные обнаружения измерения скорости. Для измерений, сообщаемых в прямоугольной системе координат, если HasVelocity является ложным, измерения сообщаются следующим [x y z]. Если HasVelocity является trueизмерения сообщаются как [x y z vx vy vz].1
IsParentToChildЛогический скаляр, указывающий, Orientation выполняет вращение системы координат от родительской системы координат к дочерней системе координат. Когда IsParentToChild является false, затем Orientation выполняет вращение системы координат от дочерней системы координат к родительской системе координат.0

Если вы хотите выполнить только одно преобразование координат, такое как преобразование из каркаса кузова в систему координат датчика, вам нужно только задать структуру параметра измерения. Если необходимо выполнить несколько преобразований координат, необходимо задать массив структур параметров измерения. Чтобы узнать, как выполнить несколько преобразований, смотрите пример «Преобразование обнаружений в формат objectDetection».

Типы данных: struct

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

свернуть все

Целевое измерение в системе координат MSC, возвращаемое как:

  • Матрица , состоящая из одной строки, -- Когда HasElevation установлено в false.

  • Матрица с двумя строками -- Когда frame установлено в 'spherical', функция измеряет азимут и измерения повышения из состояния MSC.

  • Матрица с тремя строками -- Когда frame установлено в 'rectangular'функция измеряет положение измерения из состояния MSC.

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

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

.

См. также

Объекты

Функции

Введенный в R2018b