В этом примере показано, как сконфигурировать и использовать GNN и средства отслеживания JPDA в симулированном магистральном сценарии в Simulink® с Sensor Fusion and Tracking Toolbox ™. Это сопровождает Fusion Датчика Используя Синтетические Данные о Радаре и Видении в Simulink (Automated Driving Toolbox) пример. Основное преимущество моделирования системы в Simulink является простотой выполнения, "что - если" анализ и выбор средства отслеживания, которое приводит к лучшей производительности на основе требований.
Синтетический радар и данные о видении помогают нам в оценке целевых алгоритмов отслеживания. Этот пример, в основном, фокусируется на способностях к отслеживанию trackerGNN и trackerJPDA в Simulink®.
Настройка этого примера совпадает с настройкой, обсужденной в Setup и Обзоре раздела Model Fusion Датчика Используя Синтетические Данные о Радаре и Видении в примере Simulink, за исключением того, что симулированные обнаружения конкатенированы как вход к Trackers блок. Чтобы симулировать модель, откройте TrackSimulatedVehiclesUsingGNNandJPDAExample.slx прикрепленный файл в Simulink.
![]()
Trackers блок является различной подсистемой, которую можно использовать, чтобы переключиться между средством отслеживания GNN и средством отслеживания JPDA.
Первый вариант блока Trackers, trackerGNN, принимает постоянную скоростную модель движения и расширенный Фильтр Калмана путем установки функции инициализации Фильтра как initcvekf по умолчанию.
![]()
Со средством отслеживания GNN можно выбрать собственный индивидуально настраиваемый фильтр, который соответствует движению симулированных объектов. Можно выбрать алгоритм присвоения среди MatchPairs, Munkres, Jonker-Volgenant, Аукциона и собственного индивидуально настраиваемого алгоритма присвоения. Можно также задать логику обслуживания дорожки, чтобы быть History или Score.
Второй вариант Trackers блок, trackerJPDA, также принимает постоянную скоростную модель движения и расширенный Фильтр Калмана функцией инициализации фильтра по умолчанию initcvekf.
![]()
С trackerJPDA, можно настроить собственную функцию инициализации фильтра и выбрать между History и Integrated логика дорожки.
Можно выбрать предпочтительную подсистему путем устанавливания значения условной переменной 'Tracker' в базовом рабочем пространстве. Следующая таблица показывает значения 'Средства отслеживания', соответствующие их настройкам.
![]()
Можно также использовать Поиск и Редактирование Используя Model Explorer (Simulink), чтобы изменить значение Tracker.
![]()
Метрики Дорожки реализованы с помощью блока MATLAB System. Код для блока задан классом помощника, HelperTrackMetrics.
Чтобы визуализировать результаты, вы будете использовать Bird ' s-Eye Scope. Bird ' s-Eye Scope является инструментом визуализации уровня модели с помощью меню, предоставленного на панели инструментов модели Simulink. После открытия осциллографа нажмите Find Signals, чтобы настроить сигналы. Затем запустите симуляцию, чтобы отобразить агентов, видение и радарные обнаружения, дорожки и дорожные контуры. Следующее изображение показывает видимый с большого расстояния осциллограф для этого примера.
В Simulink можно также запустить этот пример через интерпретированное выполнение или генерацию кода. С интерпретированным выполнением модель симулирует блок с помощью механизма выполнения MATLAB, который позволяет более быстрое время запуска. С генерацией кода модель симулирует блок с помощью подмножества кода MATLAB, поддержанного для генерации кода, которая позволяет лучшую производительность, чем интерпретированное выполнение.
После выполнения модели можно визуализировать результаты на фигурах ниже.
![]()
Вышеупомянутый рисунок показывает результаты отслеживания с помощью синтетического радара и данных о видении с trackerGNN. Вы видите, что средство отслеживания обеспечило дорожки в области отслеживания.
![]()
Вышеупомянутый рисунок показывает результаты отслеживания с помощью синтетического радара и данных о видении с trackerJPDA. Вы видите, что средство отслеживания обеспечило дорожки в области отслеживания, и производительность отслеживания лучше, чем тот из trackerGNN как существует меньше ложных сгенерированных дорожек.
Можно использовать Track Metric блокируйтесь, чтобы оценить производительность отслеживания каждого средства отслеживания с помощью количественных метрик. В этом примере вы просматриваете количество целевых дорожек, количество избыточных дорожек и количество ложных дорожек. Целевая дорожка является дорожкой, которая сопоставлена с уникальными целями. Избыточная дорожка является дорожкой, которая сопоставлена с объектом основной истины, который был сопоставлен к другой дорожке. Ложная дорожка является дорожкой, которая не сопоставлена ни с какими объектами основной истины. Ниже первой фигуры показывает результаты производительности отслеживания средства отслеживания GNN, и второй рисунок показывает результаты средства отслеживания JPDA.
![]()
Метрики присвоения иллюстрируют, что две избыточных дорожки были инициализированы и подтверждены trackerGNN тогда как trackerJPDA не создает избыточных дорожек. Избыточные дорожки были сгенерированы из-за несовершенной кластеризации, где обнаружения, принадлежащие той же цели, кластеризировались больше чем в один кластер. Кроме того, trackerGNN созданный и подтвержденный три лжи отслеживает тогда как trackerJPDA подтвержденный никакая ложная дорожка. Эти метрики показывают тот trackerJPDA обеспечивает лучшую производительность отслеживания, чем trackerGNN.
В этом примере показано, как сгенерировать сценарий, симулируйте обнаружения датчика и используйте эти обнаружения, чтобы отследить движущиеся транспортные средства вокруг автомобиля, оборудованного датчиком с помощью trackerGNN и trackerJPDA блоки в Simulink. Вы также видели простоту обмена между этими двумя средствами отслеживания, гибкостью настройки этих средств отслеживания, чтобы удовлетворить вашим собственным целевым требованиям отслеживания и способности оценить результаты отслеживания с помощью метрик дорожки..