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, чтобы custom, тогда можно задать свой собственный формат шины истинности. В этом случае необходимо задать функцию извлечения истинности с помощью параметра 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].

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

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

Пример: 5

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

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

  • 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.

Алгоритмы

расширить все

Ссылки

[1] Шухмахер, Б., Б. -Т. Во, и Б. -Н. Во. «Согласованная метрика для Эффективности фильтров Мультиобъекта». Транзакции IEEE по обработке сигналов, том, 56, №, 8, стр. 3447-3457, 2008.

[2] Ристик, Б., Б. -Н. Во, Д. Кларк и Б. -Т. Во. «Метрика для оценки эффективности многоцелевых алгоритмов отслеживания». Транзакции IEEE по обработке сигналов, том, 59, №, 7, стр. 3452-3457, 2011.

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

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

.
Введенный в R2021a
Для просмотра документации необходимо авторизоваться на сайте