actorProfiles

Физический и радарные характеристики агентов в ведущем сценарии

Описание

пример

profiles = actorProfiles(scenario) возвращает физические характеристики и радарные характеристики, profiles, для всех агентов в ведущем сценарии, scenario. Агенты включают Actor объекты, Vehicle объекты и Barrier сегменты, которые можно создать использование actor, vehicle и barrier функции, соответственно.

Можно использовать профили агента в качестве входных параметров к радару, видению, и лоцировать датчики, такие как drivingRadarDataGenerator, visionDetectionGenerator и lidarPointCloudGenerator объекты.

Примеры

свернуть все

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

Создайте ведущий объект сценария.

scenario = drivingScenario('SampleTime',0.1','StopTime',60);

Создайте кривую дорогу с помощью дорожных центральных точек после дуги круга с 800-метровым радиусом. Дуга запускается на уровне 0 °, заканчивается на уровне 90 ° и производится в шаге на 5 °.

angs = [0:5:90]';
R = 800;
roadcenters = R*[cosd(angs) sind(angs) zeros(size(angs))];
roadwidth = 10;
road(scenario,roadcenters,roadwidth);

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

roadcenters = [700 0 0; 100 0 0];
road(scenario,roadcenters)
ans = 
  Road with properties:

           Name: ""
         RoadID: 2
    RoadCenters: [2x3 double]
      RoadWidth: 6
      BankAngle: [2x1 double]

roadcenters = [400 400 0; 0 0 0];
road(scenario,roadcenters)
ans = 
  Road with properties:

           Name: ""
         RoadID: 3
    RoadCenters: [2x3 double]
      RoadWidth: 6
      BankAngle: [2x1 double]

Получите дорожные контуры.

rbdry = roadBoundaries(scenario);

Добавьте автомобиль и велосипед к сценарию. Расположите автомобиль в начале первой дороги подряд.

car = vehicle(scenario,'ClassID',1,'Position',[700 0 0], ...
    'Length',3,'Width',2,'Height',1.6);

Расположите велосипед дальше в будущем.

bicycle = actor(scenario,'ClassID',3,'Position',[706 376 0]', ...
    'Length',2,'Width',0.45,'Height',1.5);

Постройте сценарий.

plot(scenario,'Centerline','on','RoadCenters','on');
title('Scenario');

Figure contains an axes. The axes with title Scenario contains 1219 objects of type patch, line.

Отобразите положения агента и профили.

poses = actorPoses(scenario)
poses=2×1 struct array with fields:
    ActorID
    Position
    Velocity
    Roll
    Pitch
    Yaw
    AngularVelocity

profiles = actorProfiles(scenario)
profiles=2×1 struct array with fields:
    ActorID
    ClassID
    Length
    Width
    Height
    OriginOffset
    MeshVertices
    MeshFaces
    RCSPattern
    RCSAzimuthAngles
    RCSElevationAngles

Входные параметры

свернуть все

Ведущий сценарий в виде drivingScenario объект.

Выходные аргументы

свернуть все

Профили агента, возвращенные как структура или как массив структур. Каждая структура содержит физические характеристики и радарные характеристики агента.

Структуры профиля агента имеют эти поля.

Поле Описание
ActorIDЗаданный сценарием идентификатор агента в виде положительного целого числа.
ClassIDИдентификатор классификации в виде неотрицательного целого числа. 0 представляет объект неизвестного или неприсвоенного класса.
LengthДлина агента в виде положительного скаляра с действительным знаком. Модули исчисляются в метрах.
WidthШирина агента в виде положительного скаляра с действительным знаком. Модули исчисляются в метрах.
HeightВысота агента в виде положительного скаляра с действительным знаком. Модули исчисляются в метрах.
OriginOffsetСмещение вращательного центра агента от его геометрического центра в виде вектора с действительным знаком из формы [x, y, z]. Вращательный центр или источник, расположен в нижнем центре агента. Для транспортных средств вращательный центр является точкой на земле ниже центра задней оси. Модули исчисляются в метрах.
MeshVerticesПоймайте в сети вершины агента в виде n-by-3 матрица с действительным знаком вершин. Каждая строка в матрице задает точку в трехмерном пространстве.
MeshFacesПоймайте в сети поверхности агента в виде m-by-3 матрица целых чисел. Каждая строка MeshFaces представляет треугольник, заданный идентификаторами вершины, которые являются номерами строк вершин.
RCSPatternШаблон радарного поперечного сечения (RCS) агента в виде numel(RCSElevationAngles)- numel(RCSAzimuthAngles) матрица с действительным знаком. Модули находятся в децибелах на квадратный метр.
RCSAzimuthAnglesУглы азимута, соответствующие строкам RCSPatternВ виде вектора из значений в области значений [–180, 180]. Модули в градусах.
RCSElevationAnglesУглы возвышения, соответствующие строкам RCSPatternВ виде вектора из значений в области значений [–90, 90]. Модули в градусах.

Для полных определений этих полей структуры смотрите actor, vehicle и barrier функции.

Введенный в R2017a