Optimal Subpattern Assignment Metric

Вычислите оптимальную метрику присвоения подшаблона

  • Библиотека:
  • Sensor Fusion and Tracking Toolbox / Метрики Дорожки

  • Optimal Subpattern Assignment Metric block

Описание

Блок Optimal Subpattern Assignment Metric оценивает эффективность алгоритма отслеживания путем вычисления оптимального присвоения подшаблона (OSPA) метрика между дорожками и известными истинами. Метрика состоит из ошибки локализации, ошибки кардинальности и ошибочных компонентов маркировки. Можно выбрать любой из ошибочных компонентов как блок выход.

Порты

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

развернуть все

Отследите список в виде шины Simulink, содержащей структуру MATLAB.

Если вы задаете параметр Track bus на вкладке Port Setting к objectTrack, структура должна использовать эту форму:

Поле Описание
NumTracksКоличество дорожек
TracksМассив структур дорожки

Каждая структура дорожки должна содержать TrackID и State поля . Кроме того, если вы задаете основанное на NEES расстояние (posnees или velnees) в параметре Distance type каждая структура должна содержать StateCovariance поле .

Поле Определение
TrackIDУникальный идентификатор дорожки раньше отличал несколько дорожек в виде неотрицательного целого числа.
State

Значение вектора состояния во время обновления в виде N - вектор элемента, где N является размерностью состояния.

StateCovariance

Ковариационная матрица неопределенности в виде N-by-N матрица, где N является размерностью состояния.

Если вы задаете параметр Track bus к custom, затем можно использовать собственный формат шины дорожки. В этом случае необходимо задать функцию экстрактора дорожки использование параметра Track extractor function. Функция должна использовать этот синтаксис:

tracks = trackExtractorFcn(trackInputFromBus)
где trackInputFromBus вход от шины дорожки и tracks должен возвратиться как массив структур с TrackID и State поля . Если вы задаете основанное на NEES расстояние (posnees или velnees) в параметре Distance type затем структура должна содержать StateCovariance поле .

Список истин в виде шины Simulink, содержащей структуру MATLAB.

Если вы задаете параметр Truth bus на вкладке Port Setting к Platform, структура должна использовать эту форму:

Поле Описание
NumPlatformsКоличество платформ истины
PlatformsМассив структур платформы истины

Каждая структура платформы имеет эти поля:

Поле Определение
PlatformIDУникальный идентификатор раньше отличал платформы в виде неотрицательного целого числа.
Position

Положение платформы в виде M - вектор элемента, где M является размерностью состояния положения. Например, M = 3 для 3-D положения.

Velocity

Скорость платформы в виде M - вектор элемента, где M является размерностью скоростного состояния. Например, M = 3 для 3-D скорости.

Если вы задаете параметр Truth bus как Actor, структура должна использовать эту форму:

Поле Описание
NumActorsКоличество агентов истины
ActorsМассив структур агента истины

Каждая структура агента имеет эти поля:

Поле Определение
ActorIDУникальный идентификатор раньше отличал агентов в виде неотрицательного целого числа.
Position

Положение агента в виде M - вектор элемента, где M является размерностью состояния положения. Например, M = 3 для 3-D положения.

Velocity

Скорость агента в виде M - вектор элемента, где M является размерностью скоростного состояния. Например, M = 3 для 3-D скорости.

Если вы задаете параметр Truth bus tocustom, затем можно задать собственный формат шины истины. В этом случае необходимо задать функцию экстрактора истины использование параметра Truth extractor function. Функция должна использовать этот синтаксис:

 truths = truthExtractorFcn(truthInputFromBus)
где truthInputFromBus вход от шины истины и truths должен возвратиться как массив структур с PlatformID, Position, и Velocity поля .

Известное присвоение в виде K-by-2 матрица неотрицательных целых чисел. K является количеством пар присвоения. Первыми элементами столбца являются идентификаторы дорожки, и вторыми элементами столбца являются идентификаторы истины. Два идентификатора подряд присвоены друг другу. Если дорожка или истина не присвоены, задайте 0 как другой элемент в строке.

Присвоения между дорожками и истинами должны быть уникальными. Избыточные или ложные дорожки должны быть обработаны как неприсвоенные дорожки путем присвоения их "0"TruthID.

Зависимости

Чтобы включить этот порт, на вкладке Port Setting, выбирают Assignments.

Вывод

развернуть все

Метрика OSPA, возвращенная как неотрицательный действительный скаляр.

Пример: 10.1

Ошибочный компонент локализации, возвращенный как неотрицательный действительный скаляр.

Пример: 8.5

Зависимости

Чтобы включить этот порт, на вкладке Port Setting, выбирают Localization error.

Ошибочный компонент кардинальности, возвращенный как неотрицательный действительный скаляр.

Пример 6

Зависимости

Чтобы включить этот порт, на вкладке Port Setting, выбирают Cardinality error.

Маркировка ошибочного компонента, возвращенного как неотрицательный действительный скаляр.

Пример: 7.5

Зависимости

Чтобы включить этот порт, на вкладке Port Setting, выбирают Labeling error.

Параметры

развернуть все

Свойства

Порог для расстояния сокращения между дорожкой и истиной в виде действительной положительной скалярной величины. Если вычисленное расстояние между дорожкой и присвоенной истиной выше, чем порог, фактическое расстояние, включенное в метрику, уменьшается до порога.

Пример: 40

Порядок метрики OSPA в виде положительного целого числа.

Пример: 10

Тип расстояния в виде posnees, velnees, posabserr, или velabserr. Тип расстояния задает физическое количество, используемое для расчетов расстояния:

  • posnees – Нормированная ошибка расчета придала квадратную форму (NEES) положения дорожки

  • velnees – Ошибка NEES скорости дорожки

  • posabserr – Абсолютная погрешность положения дорожки

  • velabserr – Абсолютная погрешность скорости дорожки

  • custom – Пользовательская ошибка по дальности

Если вы выбираете custom, необходимо также задать функцию расстояния в параметре Custom distance function.

Пользовательская функция расстояния в виде указателя на функцию. Функция должна поддержать следующий синтаксис:

d = myCustomFcn(Track,Truth)
где Track структура информации о дорожке, Truth структура информации об истине и d расстояние между истиной и дорожкой. Смотрите objectTrack для примера о том, как организовать информацию о дорожке.

Пример: @myCustomFcn

Зависимости

Чтобы включить это свойство, установите параметр Distance type на custom.

Желаемая модель движения платформы в виде constvel, constacc, constturn, или singer. Это свойство выбирает модель движения, используемую входным портом Tracks.

Модели движения ожидают State поле структуры дорожки, чтобы иметь вектор-столбец, содержащий эти значения:

  • constvel — Положение находится в элементах [1 3 5], и скорость находится в элементах [2 4 6].

  • constacc — Положение находится в элементах [1 4 7], скорость находится в элементах [2 5 8], и ускорение находится в элементах [3 6 9].

  • constturn — Положение находится в элементах [1 3 6], скорость находится в элементах [2 4 7], и уровень рыскания находится в элементе 5.

  • singer — Положение находится в элементах [1 4 7], скорость находится в элементах [2 5 8], и ускорение находится в элементах [3 6 9].

StateCovariance поле входа структуры дорожки должно иметь положение, скорость и ковариации угловой скорости вращения в строках и столбцах, соответствующих положению, скорости и угловой скорости вращения State поле структуры дорожки.

Штраф за неправильное присвоение дорожки к истине в виде неотрицательного скаляра. Функция решает, правильно ли присвоение на основе обеспеченного известного входа присвоения от входного порта Assignments. Если присвоение не обеспечивается как вход, последнее известное "оптимальное" присвоение принято, чтобы быть правильным.

Пример 5

Выберите тип симуляции из этих опций:

  • Interpreted execution — Симулируйте модель с помощью интерпретатора MATLAB. Эта опция сокращает время запуска. В Interpreted execution режим, можно отладить исходный код блока.

  • Code generation — Симулируйте модель с помощью сгенерированного кода C. В первый раз, когда вы запускаете симуляцию, Simulink генерирует код С для блока. Код С снова используется для последующих симуляций, пока модель не изменяется. Эта опция требует дополнительного времени запуска.

Параметр порта

Выберите этот параметр, чтобы включить вход известных присвоений через входной порт Assignments.

Выберите этот параметр, чтобы включить выход ошибочного компонента локализации через выходной порт Localization Error.

Выберите этот параметр, чтобы включить выход ошибочного компонента кардинальности через выходной порт Cardinality Error.

Выберите этот параметр, чтобы включить выход ошибочного компонента маркировки через выходной порт Labeling Error.

Отследите выбор шины в виде objectTrack или custom. См. описание входного порта Tracks для получения дополнительной информации о каждом выборе.

Выбор шины истины в виде Platform, Actor, или custom. См. описание входного порта Truths для получения дополнительной информации о каждом выборе.

Отследите функцию экстрактора в виде указателя на функцию. Функция должна поддержать этот синтаксис:

tracks = trackExtractorFcn(trackInputFromBus)
где trackInputFromBus вход от шины дорожки и tracks должен возвратиться как массив структур с TrackID и State поля . Если вы задаете основанное на NEES расстояние (posnees или velnees) в параметре Distance type затем структура должна содержать StateCovariance поле .

Пример: @myCustomFcn

Зависимости

Чтобы включить это свойство, установите параметр Track bus на custom.

Экстрактор истины функционирует в виде указателя на функцию. Функция должна поддержать этот синтаксис:

 truths = truthExtractorFcn(truthInputFromBus)
где truthInputFromBus вход от шины дорожки и truths должен возвратиться как массив структур с PlatformID, Position, и Velocity как имена полей.

Пример: @myCustomFcn

Зависимости

Чтобы включить это свойство, установите параметр Truth bus на custom.

Примеры модели

Track Point Targets in Dense Clutter Using GM-PHD Tracker in Simulink

Отследите цели точки в плотной помехе Используя средство отслеживания GM-PHD в Simulink

Радары обычно получают эхо от всех поверхностей в пути прохождения сигнала. Эти нежелательные рассеянные спиной сигналы или эхо, сгенерированное от физических объектов, называются помехой. В плотно нарушенной среде пропущенные обнаружения и ложные предупреждения делают объекты отслеживания сложной задачей для обычных средств отслеживания, таких как средство отслеживания Глобальной переменной, ближайшего соседа (GNN). В такой среде средство отслеживания PHD обеспечивает лучшую оценку объектов, когда это может обработать несколько обнаружений на объект на датчик, не кластеризируя их сначала. Этот пример показывает вам, как отследить цели точек в плотной помехе с помощью Гауссовой плотности гипотезы вероятности смеси (GM-PHD) средство отслеживания с постоянной скоростной моделью в Simulink. Пример сопровождает Цели Точки Дорожки в Плотной Помехе Используя пример GM-PHD Tracker MATLAB®.

Алгоритмы

развернуть все

Ссылки

[1] Schuhmacher, B., B.-T. Vo и B.-N. Vo. "Сопоставимая Метрика для Оценки результатов деятельности Мультиобъектных Фильтров". Транзакции IEEE на Обработке сигналов, Vol, 56, нет, 8, стр 3447–3457, 2008.

[2] Ristic, B., B.-N. Vo, Д. Кларк и B.-T. Vo. "Метрика для Оценки результатов деятельности Мультицелевых Алгоритмов Отслеживания". Транзакции IEEE на Обработке сигналов, Vol, 59, нет, 7, стр 3452–3457, 2011.

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

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

Введенный в R2021a