Мультисенсорный, многообъектный трекер с использованием назначения GNN
The trackerGNN
Системный object™ является трекером, способным обрабатывать обнаружения многих целей с нескольких датчиков. Трекер использует глобальный алгоритм назначения ближайшего соседа (GNN). Трекер инициализирует, подтверждает, предсказывает, исправляет и удаляет треки. Входами к трекеру являются отчеты об обнаружении, сгенерированные objectDetection
, fusionRadarSensor
, irSensor
, или sonarSensor
объекты. Трекер оценивает вектор состояния и векторную ковариационную матрицу состояния для каждой дорожки. Каждое обнаружение назначается самое большее одной дорожке. Если обнаружение не может быть назначено ни одному треку, трекер инициализирует новый трек.
Любой новый трек запускается в предварительном состоянии. Если предварительному дорожке назначено достаточное количество обнаружений, его статус меняется на подтвержденный. Если обнаружение уже имеет известную классификацию (ObjectClassID
поле возвращаемой дорожки ненулевое), эта дорожка немедленно подтверждается. Когда дорожка подтверждена, трекер рассматривает дорожку как представление физического объекта. Если обнаружение не назначено дорожке в пределах заданного количества обновлений, дорожка удаляется.
Чтобы отслеживать объекты, использующие этот объект:
Создайте trackerGNN
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
создает tracker
= trackerGNNtrackerGNN
Системный объект со значениями свойств по умолчанию.
устанавливает свойства для трекера, используя одну или несколько пары "имя-значение". Для примера, tracker
= trackerGNN(Name,Value
)trackerGNN('FilterInitializationFcn',@initcvukf,'MaxNumTracks',100)
создает мультиобъект трекер, который использует постоянную скорость, сигма-точечный фильтр Калмана и допускает максимум 100 треков. Заключайте каждое имя свойства в кавычки.
Для обработки обнаружений и обновления треков вызовите трекер с аргументами, как если бы это была функция (описанная здесь).
возвращает список подтвержденных треков, которые обновляются из списка обнаружений, confirmedTracks
= tracker(detections
,time
)detections
, во время обновления, time
. Подтвержденные дорожки корректируются и прогнозируются до времени обновления.
также задает матрицу затрат, confirmedTracks
= tracker(detections
,time
,costMatrix
)costMatrix
.
Чтобы включить этот синтаксис, установите HasCostMatrixInput
свойство к true
.
также задает список ожидаемых обнаруживаемых дорожек, confirmedTracks
= tracker(___,detectableTrackIDs
)detectableTrackIDs
.
Чтобы включить этот синтаксис, установите HasDetectableTrackIDsInput
свойство к true
.
[
также возвращает список предварительных треков, confirmedTracks
,tentativeTracks
,allTracks
] = tracker(___)tentativeTracks
и список всех треков, allTracks
.
[
также возвращает информацию, confirmedTracks
,tentativeTracks
,allTracks
,analysisInformation
] = tracker(___)analysisInformation
, который может использоваться для анализа дорожек.
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
[1] Блэкмен, С. и Р. Пополи. Проект и анализ современных систем слежения. Artech House Radar Library, Бостон, 1999.
assignauction
| assignjv
| assignkbest
| assignkbestsd
| assignmunkres
| assignsd
| assignTOMHT
| clusterTrackBranches
| compatibleTrackBranches
| fusecovint
| fusecovunion
| fusexcov
| getTrackPositions
| getTrackVelocities
| pruneTrackBranches
| triangulateLOS