Визуализация данных о датчике из Unreal Engine Среды симуляции

Этот пример показывает, как визуализировать покрытия датчика и обнаружения, полученные с высокоточных радаров и лидарных датчиков в 3D среде симуляции. В этом примере вы узнаете, как:

  1. Сконфигурируйте модели Simulink ® для симуляции в 3D окружении. Это окружение визуализируется с помощью Unreal Engine ® из Epic Games ®.

  2. Считайте достоверные данные и транспортное средство траектории из сценария, созданного с помощью приложения Driving Scenario Designer, а затем воссоздайте этот сценарий в модели Simulink.

  3. Добавьте радарные и лидарные датчики к этим моделям с помощью блоков Simulation 3D Probabilistic Radar и Simulation 3D Lidar.

  4. Визуализируйте сценарий вождения и сгенерированные данные о датчике в Bird ' s-Eye Scope.

Вы можете использовать эти визуализации и данные о датчике для тестирования и улучшения ваших автоматических алгоритмов вождения. Можно также расширить этот пример, чтобы сплавить обнаружения и визуализировать результаты отслеживания объектов, как показано в примере Sensor Fusion Using Synthetic Radar и Vision Data in Simulink.

Смотрите сценарий кубоидного вождения

В этом примере основной истины (дороги, полосы и актёры) и траектории транспортных средств исходят из сценария, который был написан в приложении Driving Scenario Designer. В этом приложении автомобили и другие актёры представлены в виде простых фигур коробки, называемых кубоидами. Для получения дополнительной информации об авторских кубоидных сценариях смотрите пример «Создание сценария вождения в интерактивном режиме» и «Генерация синтетических данных о датчике».

Откройте файл сценария кубоидного вождения в приложении.

drivingScenarioDesigner('StraightRoadScenario.mat')

В приложении запустите симуляцию сценария. В этом сценарии автомобиля , оборудованного датчиком (синяя машина) едет на север по прямой дороге с постоянной скоростью. В соседней полосе оранжевая машина едет на север с несколько большей постоянной скоростью. В противоположной полосе жёлтый грузовик едет на юг с постоянной скоростью.

При разработке сценариев вождения, которые вы позже воссоздаете в среде симуляции 3D, необходимо использовать дорожную сеть, идентичную сети из сцен 3D по умолчанию. В противном случае в воссозданном сценарии положения транспортных средств и датчиков неточны. Этот сценарий вождения использует воссоздание сцены «Прямая дорога». Чтобы выбрать другую кубоидную версию 3D сцены, на панели инструментов приложения выберите Open > Prebuilt Scenario > Simulation3D и выберите из доступных сцен. Не все 3D сцены имеют соответствующие версии в приложении.

Размерности транспортных средств в кубоидных сценариях должны также совпадать с размерностями одного из предопределенных 3D типов транспортных средств симуляции. На панели инструментов приложения, в разделе 3D Display, выбор Use 3D Simulation Actor Dimensions устанавливает для каждого кубоидного транспортного средства размерности 3D типа транспортного средства. В этом сценарии транспортные средства имеют эти 3D типы отображения и соответствующие размерности транспортного средства.

Чтобы изменить транспортное средство на другой тип отображения, на вкладке Актёры в левой панели приложения обновите параметр 3D Display Type для этого транспортного средства. Чтобы изменить цвет транспортного средства, выберите цветовую закрашенную фигуру рядом с выбранным транспортным средством и выберите новый цвет.

Чтобы просмотреть, как автомобили отображаются в 3D среде, используйте окно 3D display, доступное из приложения. На панели инструментов приложения выберите 3D Display > View Simulation in 3D Display и снова запустите симуляцию.

Откройте 3D модель симуляции

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

open_system('Visualize3DSimulationSensorCoveragesDetections')

Просмотр строения сцены

Блок Simulation 3D Scene Configuration конфигурирует модель для симуляции в 3D окружении.

  • Параметр имя установлен по умолчанию Straight road сцена. Эта сцена соответствует кубоидной версии, заданной в файле сценария приложения.

  • Параметр Scene view установлен в Ego Vehicle. Во время симуляции в 3D окне симуляции отображается сцена из-за автомобиля , оборудованного датчиком.

Блок Scenario Reader считывает достоверные данные (дорожные контуры, разметку маршрута и положения актёра) из файла сценария приложения. The Bird ' s-Eye Scope визуализирует эти достоверные данные, а не достоверные данные 3D среды симуляции. Чтобы использовать одну и ту же сцену для кубоидной и 3D среды симуляции, достоверные данные для обоих окружений должны совпадать. Если вы создаете новый сценарий, можно сгенерировать блок Scenario Reader, который считывает данные из файла сценария. Сначала откройте файл сценария в приложении Driving Scenario Designer. Затем на панели инструментов приложения выберите экспорт > Export Simulink Model. Если вы обновляете сценарий, вам не нужно генерировать новый блок Scenario Reader.

Оба блока Simulation 3D Scene Configuration и Scenario Reader имеют значение параметра Sample time 0.1. В сложение все другие 3D симуляции транспортного средства и сенсорные блоки наследуют свои шаги расчета от блока Симуляции 3D Scene Configuration. Путем установки одного шага расчета по всей модели, Bird ' s-Eye Scope отображает данные из всех блоков с постоянной скоростью. Если данные основные истины и датчика имеют различные шаги расчета, то возможности визуализируют их в разных временных интервалах. Этот процесс заставляет визуализацию данных основных истин и датчика мигать.

Просмотр строения транспортного средства

Блоки Simulation 3D Vehicle with Ground Following задают внешние виды и траектории транспортных средств в 3D среде симуляции. Каждое транспортное средство является прямым аналогом одного из транспортных средств, определенных в файле сценария приложения Driving Scenario Designer.

В 3D окружении положения транспортного средства находятся в мировых координатах. Однако блок Scenario Reader выводит положения актёров, не являющихся эго, в координатах автомобиля , оборудованного датчиком. Блок Vehicle To World преобразует эти неэгоистические положения актёра в мировые координаты. Поскольку автомобиль , оборудованный датчиком выводится в мировых координатах, это преобразование не обязательно для автомобиля , оборудованного датчиком. Для получения дополнительной информации о транспортном средстве и мировых системах координат смотрите Системы координат в Automated Driving Toolbox.

Местоположения транспортного средства источников различны между кубоидным и 3D сценариями.

  • В кубоидных сценариях источник транспортного средства находится на земле, в центре задней оси.

  • В 3D сценариях источник транспортного средства находится на земле, в геометрическом центре транспортного средства.

Блоки Cuboid To 3D Simulation преобразуют кубоидные исходные положения в 3D исходные положения симуляции. В идентификаторе актёра, используемом для параметров преобразования этих блоков, заданное ActorID каждого транспортного средства определяет, какой источник транспортного средства должно быть преобразовано. Блок Scenario Reader выводит ActorID значения в его выходном порту Actors. В приложении Driving Scenario Designer можно найти соответствующую ActorID значения на вкладке «Актёры», в списке выбора актёра. The ActorID для каждого транспортного средства является значением, которое предшествует двоеточию.

Каждый блок Cuboid To 3D Simulation выводит значения X, Y и Yaw, которые поступают непосредственно в соответствующие блоки транспортных средств. В среде симуляции 3D наземный рельеф 3D сцены определяет положение Z (повышение), угол крена и угол тангажа транспортных средств.

В каждой Симуляции 3D Транспортного средства с блоком Ground Following, параметр Type соответствует 3D Отображению Type, выбранному для этого транспортного средства в приложении сложения, параметр Color соответствует цвету транспортного средства, указанному в приложении. Чтобы поддерживать аналогичные визуализации транспортного средства между Bird ' s-Eye Scope и окном симуляции 3D, указанный тип и цвет должны совпадать. Чтобы изменить цвет транспортного средства в приложении, на вкладке Актёры, щелкните цветовая закрашенная фигура справа от имени актёра в списке выбора актёра. Выберите цвет, наиболее близкий к цветам, доступным в параметре Color блока Simulation 3D Vehicle with Ground Following.

Просмотр строения датчика

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

  • Блок Simulation 3D Probabilistic Radar генерирует обнаружения объектов на основе статистической модели. Этот датчик установлен на переднем бампере автомобиля , оборудованного датчиком.

  • Блок датчика Simulation 3D Lidar генерирует обнаружения в виде облака точек. Этот датчик установлен в центре крыши автомобиля , оборудованного датчиком.

Хотя можно задать датчики в приложении Driving Scenario Designer и экспортировать их в Simulink, экспортированные блоки несовместимы со средой симуляции 3D. Вы должны задать 3D датчики симуляции в модели непосредственно.

Моделирование и визуализация сценария

Во время симуляции можно визуализировать сценарий как в окне симуляции 3D, так и в окне Bird 's-Eye Scope.

Сначала откройте возможности. На панели инструментов Simulink, в разделе Review Результатов, нажмите Bird ' s-Eye Scope. Затем, чтобы найти сигналы, которые могут отобразить возможности, нажмите Find Signals.

Чтобы запустить симуляцию, щелкните Запуском в модели или возможностях. Когда симуляция начинается, это может занять несколько секунд, чтобы инициализировать окно 3D симуляции, особенно когда вы запускаете его впервые в сеансе Simulink. Когда это окно откроется, он отображает сценарий с высокоточной графикой, но не отображает обнаружения или покрытия датчика.

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

Модель запускает симуляцию со скоростью 0,5 секунды на стену-тактовую секунду. Чтобы настроить темп, на панели инструментов Simulink выберите Запуск > Темп симуляции, а затем переместите ползунок, чтобы увеличить или уменьшить скорость симуляции.

Изменение сценария вождения

При изменении сценария вождения может потребоваться обновить сценарий в приложении Driving Scenario Designer, модели Simulink или в обоих местах, в зависимости от того, что вы изменяете.

  • Измените дорожную сеть - В приложении выберите новую предварительно построенную сцену из папки Simulation3D. Не изменяйте эти дорожные сети, иначе дороги не будут совпадать с дорогами в выбранной 3D сцене. В модели, в блоке Simulation 3D Scene Configuration, выберите соответствующую сцену в параметре Scene name.

  • Измените траектории транспортного средства - В приложении измените траектории транспортного средства и сохраните сценарий. В модели вам не нужно ничего обновлять для учета этого изменения. Блок Scenario Reader автоматически извлекает эти изменения.

  • Измените внешний вид автомобиля - В приложении обновите цвет и 3D Тип дисплея транспортных средств. Также убедитесь, что выбрана опция 3D Отображение > Использовать 3D симуляции размерностей актёра. В модели обновляйте параметры Color и Type соответствующих блоков Simulation 3D Vehicle with Ground Following.

  • Добавить новое транспортное средство - В приложении создайте новое транспортное средство и укажите траекторию, цвет и 3D тип отображения. В модель добавьте новый блок Simulation 3D Vehicle с Ground Following и соответствующий блок Cuboid To 3D Simulation. Настройте эти блоки аналогично настройке существующих неавтомобилей , оборудованных датчиком. В блоке Cuboid To 3D Simulation установите ActorID нового транспортного средства.

  • Установите новый автомобиль , оборудованный датчиком - В приложении на вкладке Актёры выберите транспортное средство, которую вы хотите задать в качестве автомобиля , оборудованного датчиком и нажатия кнопки Задать как Автомобиль , оборудованный датчиком. В модели, в блоках Cuboid To 3D Simulation, обновляйте ActorID, используемый для параметров преобразования, с учетом того, какой автомобиль является новым автомобилем , оборудованным датчиком. В блоках датчиков установите параметры Parent имени таким образом, чтобы датчики были установлены на новом автомобиле , оборудованном датчиком.

  • Измените или добавьте датчики - В приложении вам не нужно вносить какие-либо изменения. В модели измените или добавьте блоки датчиков. При добавлении блоков датчиков установите имя родителя всех датчиков для автомобиля , оборудованного датчиком.

Чтобы визуализировать любой обновленный сценарий в Bird ' s-Eye Scope, необходимо снова нажать кнопку Find Signals. Если вы изменяете сценарий или заинтересованы только в визуализации данных о датчике, рассмотрите отключение 3D окна во время симуляции. В блоке Simulation 3D Scene Configuration очистите параметр Display 3D simulation window.

См. также

Приложения

Блоки

Похожие темы