Синтаксис

Транспортного средства датчика окружения

Этот пример показывает, как реализовать симуляцию синтетических данных, чтобы обнаружить транспортные средства с помощью нескольких датчиков зрения и радара, и сгенерировать слитые дорожки для анализа объемного вида в Simulink ® с Automated Driving Toolbox™. Также показано, как использовать инструменты количественного анализа в Sensor Fusion and Tracking Toolbox™ для оценки эффективности трекера.

Введение

Слияние и отслеживание датчиков является фундаментальным компонентом восприятия беспилотных аппаратов. Автономное транспортное средство использует множество бортовых датчиков, чтобы понять окружающий мир. Каждый из датчиков, используемых транспортным средством для беспилотных приложений, таких как радар, камера и датчики лидара, имеет свои ограничения. Цель слияния и отслеживания датчиков состоит в том, чтобы взять входы различных датчиков и типов датчиков и использовать объединенную информацию для более точного восприятия окружения. Любая передовая система автономного управления автомобилем, которая может принимать критические решения, такие как следование по дорожной полосе или изменение дорожной полосы, сильно полагается на слияние датчиков и отслеживание. Таким образом, вы должны протестировать проект систем слияния и отслеживания датчиков с помощью модели уровня компонента. Эта модель позволяет вам протестировать критические сценарии, которые трудно протестировать в реальном времени.

Этот пример показывает, как сплавить и отслеживать обнаружения с нескольких датчиков обнаружения зрения и радарного датчика. Датчики установлены на автомобиль , оборудованный датчиком так, что они обеспечивают 360 степеням покрытие вокруг автомобиля , оборудованного датчиком. Пример объединяет радиолокационные обнаружения, соединяет их с обнаружениями зрения и отслеживает обнаружения с помощью совместного вероятностного трекера ассоциации данных (JPDA) с несколькими объектами. Пример также показывает, как вычислить эффективность трекера с помощью обобщенной метрики оптимального назначения подшаблона (GOSPA) для набора предопределенных сценариев в разомкнутый контур окружения. В этом примере вы:

  1. Исследуйте тестовую модель - Модель содержит датчики, алгоритм слияния датчиков и отслеживания и метрики для оценки функциональности. Генераторы обнаружения из ведущего сценария используются для моделирования обнаружений с радара и датчика зрения.

  2. Сконфигурируйте датчики и окружение - настройте сценарий вождения, который включает автомобиль , оборудованный датчиком с камерой и радарным датчиком. Постройте график зоны покрытия каждого датчика с помощью Bird ' s-Eye Scope.

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

  4. Оцените эффективность трекера - Используйте метрику GOSPA, чтобы оценить эффективность трекера.

  5. Симулируйте тестовую модель и анализируйте результаты - Модель конфигурирует сценарий с несколькими целевыми транспортными средствами, окружающими автомобиль , оборудованный датчиком, который выполняет маневры изменения маршрута. Симулируйте модель и анализируйте компоненты метрики GOSPA, чтобы понять эффективность трекера.

  6. Исследуйте другие сценарии - Эти сценарии тестируют систему на дополнительных условиях.

Исследуйте тестовую модель

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

open_system('SurroundVehicleSensorFusionTestBench');

Открытие этой модели запускает helperSLSurroundVehicleSensorFusionSetup скрипт, который инициализирует дорожный сценарий с помощью drivingScenario объект в базовом рабочем пространстве. Скрипт также конфигурирует параметры датчика, параметры трекера и сигналы шины Simulink, необходимые для определения входов и выходов для SurroundVehicleSensorFusionTestBench модель. Тестовая модель содержит следующие подсистемы:

  1. Датчики и Окружение - Эта подсистема задает сцену, камеру и радарные датчики, используемые для симуляции.

  2. Surround Vehicle Sensor Fusion - Эта подсистема запирает обнаружения от нескольких датчиков, чтобы создать дорожки.

  3. Оценка метрики - Эта подсистема оценивает проект слияния датчика объемного транспортного средства с помощью метрики GOSPA.

Сконфигурируйте датчики и окружение

Подсистема Sensors and Environment конфигурирует дорожную сеть, устанавливает положения транспортных средств и синтезирует датчики. Откройте Подсистему Датчиков и Окружения.

open_system('SurroundVehicleSensorFusionTestBench/Sensors and Environment');

  • Блок Scenario Reader конфигурирует сценарий вождения и выводит положения актёра, которые управляют положениями целевых транспортных средств.

  • Блок Транспортное средство To World преобразует положения актёра из координат автомобиля , оборудованного датчиком в мировые координаты.

  • Блок Vision Detection Generator моделирует обнаружения объектов с помощью модели датчика камеры.

  • Блок Driving Radar Data Generator моделирует обнаружения объектов на основе статистической модели. Он также выходами кластеризованные обнаружения объектов для дальнейшей обработки.

Подсистема конфигурирует пять датчиков зрения и радарный датчик, чтобы захватить объемный вид транспортного средства. Эти датчики установлены на другие места на автомобиль , оборудованный датчиком, чтобы захватить вид степени 360. The helperSLSurroundVehicleSensorFusionSetup скрипт устанавливает параметры моделей датчика.

Bird 's-Eye Scope отображает покрытие датчика с помощью кубоидного представления. Зона радиолокационного покрытия и обнаружения находятся в красном цвете. Зона покрытия зрения и обнаружения окрашены в синий цвет.

Выполните слияние и отслеживание датчика

Surround Транспортного средства Sensor Fusion является образцом модели, которая обрабатывает визуальные и радиолокационные обнаружения и генерирует положение и скорость треков относительно автомобиля , оборудованного датчиком. Откройте образец модели Surround Vehicle Sensor Fusion.

open_system('SurroundVehicleSensorFusion');

  • Блок Конкатенации Обнаружения Видения конкатенирует обнаружение видения. Время предсказания управляется временем в Подсистеме Датчиков и Окружения.

  • Блок Delete Velocity From Vision является блоком MATLAB function, который удаляет информацию о скорости из обнаружений зрения.

  • Блок Vision и Radar Detection Concatenation конкатенирует обнаружения зрения и радара.

  • Блок Add Localization Information является Блоком MATLAB function, которое добавляет информацию локализации для автомобиля , оборудованного датчиком к конкатенированным обнаружениям с помощью предполагаемого автомобиля , оборудованного датчиком положения. Это позволяет трекеру отслеживать в глобальной системе координат и минимизирует эффект на дорожках маневров изменения маршрута автомобиля , оборудованного датчиком.

  • Блок Joint Probabilistic Data Association Multi Object Tracker (Sensor Fusion and Tracking Toolbox) выполняет слияние и управляет треками стационарных и движущихся объектов.

  • Блок Convert To Ego является блоком MATLAB Function, который преобразует дорожки из глобальной системы координат в систему координат ego с помощью предполагаемой информации о автомобиле , оборудованном датчиком. Bird ' s-Eye Scope отображений дорожки в систему координат ego.

Joint Probabilistic Data Association Multi-Object Tracker является ключевым блоком в образце модели Surround Vehicle Sensor Fusion. Трекер запирает информацию, содержащуюся в конкатенированных обнаружениях, и отслеживает объекты вокруг автомобиля , оборудованного датчиком. Затем трекер выводит список подтвержденных треков. Эти дорожки обновляются во времени предсказания, управляемого цифровыми часами в Подсистеме Датчиков и Окружения.

Оценка эффективности трекера

Подсистема оценки метрики вычисляет различные метрики, чтобы оценить эффективность трекера. Откройте подсистему Metrics Assessment.

Эта метрика оценивает эффективность трекера путем объединения и назначения, и точности оценки состояния в одно значение стоимости. Откройте подсистему Metrics Assessment.

open_system('SurroundVehicleSensorFusionTestBench/Metrics Assessment');

Чтобы оценить эффективность трекера, необходимо удалить основную истину информацию актёров, которые находятся вне зоны покрытия датчиков. Для этого подсистема использует блок Filter Within Coverage MATLAB Function, чтобы фильтровать только те субъекты, которые находятся в зоне покрытия датчиков.

Подсистема содержит метрический блок GOSPA, который вычисляет эти метрики:

  • GOSPA metric - Измеряет расстояние между набором треков и их основными истинами. Эта метрика объединяет и присвоение, и точность оценки состояния в одно значение стоимости.

  • Ошибка переключения - указывает на возникшую ошибку во время переключения пути. Более высокая ошибка переключения указывает на неправильное назначение треков истине во время переключения треков.

  • Ошибка локализации - указывает на точность оценки состояния. Более высокая ошибка локализации указывает, что назначенные дорожки не оценивают состояние истин правильно.

  • Пропущенная целевая ошибка - указывает на наличие пропущенных целей. Более высокая пропущенная целевая ошибка указывает, что цели не отслеживаются.

  • Ошибка false tracks - указывает на наличие ложных треков.

Моделирование Тестовая модель и анализ результатов

Во время симуляции можно визуализировать сценарий с помощью Bird 's-Eye Scope. Чтобы открыть возможности, нажмите Bird 's-Eye Scope в разделе Review Results на панели инструментов Simulink. Затем нажмите Find Signals, чтобы найти сигналы, которые могут отобразить возможности. Выберите tracksInEgo сигнал для подтвержденных дорожек.

Сконфигурируйте SurroundVehicleSensorFusionTestBench модель для симуляции scenario_LC_06_DoubleLaneChange сценарий. Этот сценарий содержит 10 транспортных средств, включая автомобиль , оборудованный датчиком, и определяет их траектории. В этом сценарии автомобиля , оборудованного датчиком меняет полосы два раза. Целевые актёры перемещаются по автомобилю , оборудованному датчиком.

helperSLSurroundVehicleSensorFusionSetup("scenarioFcnName","scenario_LC_06_DoubleLaneChange");

Симулируйте тестовую модель.

sim('SurroundVehicleSensorFusionTestBench');

Когда симуляция начнется, используйте окно Bird ' s-Eye Scope, чтобы визуализировать актёра эго, актёра-мишени, покрытия и обнаружения датчика и подтвержденные дорожки.

Во время симуляции модель выводит метрику GOSPA и ее компоненты, которые измеряют статистическое расстояние между несколькими треками и истинами. Модель регистрирует эти метрики с подтвержденными треками и основной истиной информацией в переменном базовом рабочем пространстве logsout . Можно построить график значений в logsout при помощи helperPlotSensorFusionResults функция.

helperPlotSurroundVehicleSensorFusionResults(logsout);

В этой симуляции параметры Distance Type и Cutoff distance метрического блока GOSPA установлены в custom и 30 соответственно. The helperComputeDistanceToTruth функция вычисляет пользовательское расстояние путем объединения ошибок в положении и скорости между каждой истиной и дорожкой.

Исследуйте другие сценарии

Можно использовать процедуру в этом примере, чтобы исследовать эти другие сценарии, которые совместимы с SurroundVehicleSensorFusionTestBench:

  scenario_LC_01_SlowMoving
  scenario_LC_02_SlowMovingWithPassingCar
  scenario_LC_03_DisabledCar
  scenario_LC_06_DoubleLaneChange [Default]
  scenario_LC_07_RightLaneChange
  scenario_LC_08_SlowmovingCar_Curved
  scenario_LC_09_CutInWithBreak_Curved
  scenario_LC_10_SingleLaneChange_Curved
  scenario_SVSF_01_ConstVelocityAsTargets
  scenario_SVSF_02_CrossTargetActors

Используйте эти дополнительные сценарии для анализа SurroundVehicleSensorFusionTestBench при различных условиях.

Заключение

Этот пример показал, как моделировать и оценивать эффективность компонента слияния датчика объемного транспортного средства и отслеживания для маневров изменения маршрута шоссе. Эта модель уровня компонента позволяет вам стресс-тестировать свой проект в разомкнутый контур виртуального окружения и помогает в настройке параметров трекера путем оценки метрик GOSPA. Следующим логическим шагом является интеграция этой модели уровня компонента в систему с обратной связью, такую как изменение маршрута магистрали.

См. также

| | |

Похожие темы