distance

Расстояния между текущими и предсказанными измерениями отслеживания фильтра

Описание

dist = distance(filter,zmeas) вычисляет нормированные расстояния между одним или несколькими текущими объектными измерениями, zmeas, и соответствующие предсказанные измерения вычисляются входом filter. Используйте эту функцию, чтобы присвоить измерения дорожкам.

Этот расчет расстояния учитывает ковариацию предсказанного состояния и шума измерения.

dist = distance(filter,zmeas,measparams) задает дополнительные параметры, которые используются MeasurementFcn из фильтра.

Если filter trackingKF или trackingABF объект, затем вы не можете использовать этот синтаксис.

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

свернуть все

Отфильтруйте для объектного отслеживания, заданного как один из этих объектов:

  • trackingKF — Линейный Фильтр Калмана

  • trackingEKF — Расширенный Фильтр Калмана

  • trackingUKF — Сигма-точечный фильтр Калмана

  • trackingABF — Фильтр альфы - беты

  • trackingCKF — Фильтр Калмана кубатуры

  • trackingIMM — Фильтр взаимодействующей многоуровневой модели (IMM)

  • trackingGSF — Фильтр гауссовой суммы

  • trackingPF — Фильтр частиц

  • trackingMSCEKF — Расширенный Фильтр Калмана с помощью модифицированных сферических координат (MSC)

Измерения отслеживаемых объектов, заданных как матрица. Каждая строка матрицы содержит вектор измерения.

Параметры для функции измерения, заданной как массив ячеек. Параметры передаются функции измерения, которая задана в MeasurementFcn свойство filter. Если filter trackingKF или trackingABF объект, затем вы не можете задать measparams.

Предположим, что вы устанавливаете MeasurementFcn свойство filter к @cameas, и затем установленный эти значения:

measurementParams = {frame,sensorpos,sensorpos}

distance функционируйте внутренне вызывает следующее:

cameas(state,frame,sensorpos,sensorvel)

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

свернуть все

Расстояния между измерениями, возвращенными как вектор-строка. Каждый элемент соответствует расстоянию между предсказанным измерением во входе filter и измерение, содержавшее подряд zmeas.

Алгоритмы

distance функция вычисляет нормированное расстояние между объектом фильтра и набором измерений. Этот расчет расстояния является вариантом расстояния Mahalanobis и учитывает невязку (различие между объектным измерением и значением, предсказанным фильтром), остаточная ковариация и шум измерения.

Считайте расширенный Фильтр Калмана с x состояния и измерением z. Уравнения использовались для расчета невязки, z res, и остаточная ковариация, S,

z res = zh (x),

S = R + HPHT,

где:

  • h является функцией, определяемой измерения в MeasurementFcn свойство фильтра.

  • R является ковариацией шума измерения, заданной в MeasurementNoise свойство фильтра.

  • H является якобианом функции, определяемой измерения в MeasurementJacobianFcn свойство фильтра.

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

Уравнение для расстояния Mahalanobis, d 2,

d 2 = z resTS–1z,

Функция расстояния вычисляет нормированное расстояние, d n, как

d n = d 2 + журнал (|S |),

где журнал (|S |) является логарифмом определителя остаточной ковариации S.

Журнал (|S |) термин составляет дорожки, которые являются coasted, означая, что они предсказаны, но не имели обновления в течение долгого времени. Дорожки в этом состоянии могут сделать S очень большим, приведя к меньшему расстоянию Mahalonobis относительно обновленных дорожек. Это различие в значениях расстояния может заставить курсировавшие дорожки неправильно брать обнаружения из обновленных дорожек. Журнал (|S |) термин компенсирует этот эффект путем наложения штрафа на такие дорожки, прогнозы которых очень сомнительны.

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

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

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

| | | | | |

Введенный в R2018b