Design driving scenarios, configure sensors, and generate synthetic data
The Driving Scenario Designer app enables you to design synthetic driving scenarios for testing your autonomous driving systems.
Using the app, you can:
Create road and actor models using a drag-and-drop interface.
Configure vision, radar, and lidar sensors mounted on the ego vehicle. You can use these sensors to simulate detections of actors and lane boundaries in the scenario and to generate point cloud data from a scenario.
Load driving scenarios representing European New Car Assessment Programme (Euro NCAP®) test protocols [1][2][3] and other prebuilt scenarios.
Import OpenDRIVE® roads and lanes into a driving scenario. The app supports OpenDRIVE format specification version 1.4H [4].
Import road data from OpenStreetMap® or HERE HD Live Map[1] web services into a driving scenario.
Export the road network in a driving scenario to an OpenDRIVE file.
Export synthetic sensor detections to MATLAB®.
Generate MATLAB code of the scenario and sensors, and then programmatically modify the scenario and import it back into the app for further simulation.
Generate a Simulink® model from the scenario and sensors, and use the generated models to test your sensor fusion or vehicle control algorithms.
To learn more about the app, see Driving Scenario Designer.
MATLAB Toolstrip: On the Apps tab, under Automotive, click the app icon.
MATLAB command prompt: Enter
drivingScenarioDesigner
.
Roads
— Road width, bank angle, lane specifications, and road center
locationsTo enable the Roads parameters, add at least one road to the scenario. Then, select a road from either the Scenario Canvas or the Road parameter. The parameter values in the Roads tab are based on the road you select.
Parameter | Description |
---|---|
Road | Road to modify, specified as a list of the roads in the scenario. |
Name | Name of road. |
Width (m) | Width of the road, in meters, specified as a decimal scalar in the range (0, 50]. If the curvature of the road is too sharp to accommodate the specified road width, the app does not generate the road. Default:
|
Bank Angle (deg) | Side-to-side incline of the road, in degrees, specified as one of these values:
When you add an actor to a road, you do not have to change the actor position to match the bank angles specified by this parameter. The actor automatically follows the bank angles of the road. Default:
|
Lanes
— Lane specifications, such as lane types and lane markingsUse these parameters to specify lane information, such as lane types and lane markings.
Parameter | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Number of lanes | Number of lanes in the road, specified as one of these values:
If you increase the number of lanes, the added lanes are of the width specified in the Lane Width (m) parameter. If Lane Width (m) is a vector of differing lane widths, then the added lanes are of the width specified in the last vector element. | ||||||||||||
Lane Width (m) | Width of each lane in the road, in meters, specified as one of these values:
The width of each lane must be greater than the width of the lane markings it contains. These lane markings are specified by the Marking > Width (m) parameter. | ||||||||||||
Lane Types | Lanes in the road, specified as a list of the lane types in the selected road. To modify one or more lane parameters that include lane type, color, and strength, select the desired lane from the drop-down list. | ||||||||||||
Lane Types > Type | Type of lane, specified as one of these values:
Default:
| ||||||||||||
Lane Types > Color | Color of lane, specified as an RGB triplet with default values as:
Alternatively, you can also specify some common colors as an RGB triplet, hexadecimal color code, color name, or short color name. For more information, see Color Specifications for Lanes and Markings. | ||||||||||||
Lane Types > Strength | Saturation strength of lane color, specified as a decimal scalar in the range [0, 1].
Default:
| ||||||||||||
Lane Markings | Lane markings, specified as a list of the lane markings in the selected road. To modify one or more lane marking parameters which include marking type, color, and strength, select the desired lane marking from the drop-down list. A road with N lanes has (N + 1) lane markings. | ||||||||||||
Lane Markings > Specify multiple marker types along a lane | Select this parameter to define composite lane markings. A composite lane marking comprises multiple marker types along a lane. The portion of the lane marking that contains each marker type is referred as a marker segment. For more information on composite lane markings, see Composite Lane Marking. | ||||||||||||
Lane Markings > Number of Segments | Number of marker segments in a composite lane marking, specified as an integer greater than or equal to 2. A composite lane marking must have at least two marker segments. Default:
Dependencies To enable this parameter, select the Specify multiple marker types along a lane parameter. | ||||||||||||
Lane Markings > Segment Range | Normalized range for each marker segment in a composite lane marking, specified as a row vector of values in the range [0, 1].. The length of the vector must be equal to the Number of Segments parameter value. Default: Dependencies To enable this parameter, select the Specify multiple marker types along a lane parameter. | ||||||||||||
Lane Markings > Marker Segment | Marker segments, specified as a list of marker types in the selected lane marking. To modify one or more marker segment parameters that include marking type, color, and strength, select the desired marker segment from the drop-down list. Dependencies To enable this parameter, select the Specify multiple marker types along a lane parameter. | ||||||||||||
Lane Markings > Type | Type of lane marking, specified as one of these values:
By default, for a one-way road, the leftmost lane marking is a solid yellow line, the rightmost lane marking is a solid white line, and the markings for the inner lanes are dashed white lines. For two-way roads, the default outermost lane markings are both solid white lines and the dividing lane marking is two solid yellow lines. If you enable the Specify multiple marker types along a lane parameter, then this value is applied to the selected marker segment in a composite lane marking. | ||||||||||||
Lane Markings > Color | Color of lane marking, specified as an RGB triplet, hexadecimal color code, color name, or short color name. For a lane marker specifying a double line, the same color is used for both lines. You can also specify some common colors as an RGB triplet, hexadecimal color code, color name, or short color name. For more information, see Color Specifications for Lanes and Markings. If you enable the Specify multiple marker types along a lane parameter, then this value is applied to the selected marker segment in a composite lane marking. | ||||||||||||
Lane Markings > Strength | Saturation strength of lane marking color, specified as a decimal scalar in the range [0, 1].
For a lane marker specifying a double line, the same strength is used for both lines. Default:
If you enable the Specify multiple marker types along a lane parameter, then this value is applied to the selected marker segment in a composite lane marking. | ||||||||||||
Lane Markings > Width (m) | Width of lane marking, in meters, specified as a positive decimal scalar. The width of the lane marking must be less than the width of its enclosing lane. The enclosing lane is the lane directly to the left of the lane marking. For a lane marker specifying a double line, the same width is used for both lines. Default:
If you enable the Specify multiple marker types along a lane parameter, then this value is applied to the selected marker segment in a composite lane marking. | ||||||||||||
Lane Markings > Length (m) | Length of dashes in dashed lane markings, in meters, specified as a decimal scalar in the range (0, 50]. For a lane marker specifying a double line, the same length is used for both lines. Default:
If you enable the Specify multiple marker types along a lane parameter, then this value is applied to the selected marker segment in a composite lane marking. | ||||||||||||
Lane Markings > Space (m) | Length of spaces between dashes in dashed lane markings, in meters, specified as a decimal scalar in the range (0, 150]. For a lane marker specifying a double line, the same space is used for both lines. Default:
If you enable the Specify multiple marker types along a lane parameter, then this value is applied to the selected marker segment in a composite lane marking. |
Road Centers
— Road center locationsEach row of the Road Centers table contains the x-, y-, and z-positions of a road center within the selected road. All roads must have at least two unique road center positions. When you update a cell within the table, the Scenario Canvas updates to reflect the new road center position. The orientation of the road depends on the values of the road centers. The road centers specifies the direction in which the road renders in the Scenario Canvas. For more information, see Draw Direction of Road and Numbering of Lanes.
Parameter | Description |
---|---|
x (m) | x-axis position of the road center, in meters, specified as a decimal scalar. |
y (m) | y-axis position of the road center, in meters, specified as a decimal scalar. |
z (m) | z-axis position of the road center, in meters, specified as a decimal scalar.
Default:
|
Actors
— Actor positions, orientations, RCS patterns, and trajectoriesTo enable the Actors parameters, add at least one actor to the scenario. Then, select an actor from either the Scenario Canvas or from the list on the Actors tab. The parameter values in the Actors tab are based on the actor you select.
Parameter | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Color | To change the color of an actor, next to the actor selection list, click the color patch for that actor. Then, use the color picker to select
one of the standard colors commonly used in MATLAB graphics. Alternatively, select a custom
color from the Custom Colors tab
by first clicking By default, the app sets each newly
created actor to a new color. This color order is based
on the default color order of To set a single default color for all newly created actors of a specific class, on the app toolstrip, select Add Actor > Edit Actor Classes. Then, select Set Default Color and click the corresponding color patch to set the color. To select a default color for a class, the Scenario Canvas must contain no actors of that class. Color changes made in the app are carried forward into Bird's-Eye Scope visualizations. | ||||||||||||
Set as Ego Vehicle | Set the selected actor as the ego vehicle in the scenario. When you add sensors to your scenario, the app adds them to the ego vehicle. In addition, the Ego-Centric View and Bird's-Eye Plot windows display simulations from the perspective of the ego vehicle. Only actors who have vehicle
classes, such as For more details on actor classes, see the Class parameter description. | ||||||||||||
Name | Name of actor. | ||||||||||||
Class | Class of actor, specified as the list of classes to which you can change the selected actor. You
can change the class of vehicle actors only to other
vehicle classes. The default vehicle classes are
The list of vehicle and nonvehicle classes appear in the app toolstrip, in the Add Actor > Vehicles and Add Actor > Other sections, respectively. Actors created in the app have default sets of dimensions, radar cross-section patterns, and other properties based on their Class ID value. The table shows the default Class ID values and actor classes.
To modify actor classes or create new actor classes, on the app toolstrip, select Add Actor > Edit Actor Classes or Add Actor > New Actor Class, respectively. | ||||||||||||
3D Display Type | Display type of actor as it appears in the 3D display window, specified as the list of display types to which you can change the selected actor. To display the scenario in the 3D display window during simulation, on the app toolstrip, click 3D Display > View Simulation in 3D Display. The app renders this display by using the Unreal Engine® from Epic Games®. For any actor, the available 3D Display Type options depend on the actor class specified in the Class parameter.
If you change the dimensions of an
actor using the Actor Properties
parameters, the app applies these changes in the
Scenario Canvas display but not
in the 3D display. This case does not apply to actors
whose 3D Display Type is set to
In the 3D display, actors of all other display types have predefined dimensions. To use the same dimensions in both displays, you can apply the predefined 3D display dimensions to the actors in the Scenario Canvas display. On the app toolstrip, under 3D Display, select Use 3D Simulation Actor Dimensions. |
Actor Properties
— Actor properties, including position and orientationUse these parameters to specify properties such as the position and orientation of an actor.
Parameter | Description |
---|---|
Length (m) | Length of actor, in meters, specified as a decimal scalar in the range (0, 60]. For vehicles, the length must be greater than (Front Overhang + Rear Overhang). |
Width (m) | Width of actor, in meters, specified as a decimal scalar in the range (0, 20]. |
Height (m) | Height of actor, in meters, specified as a decimal scalar in the range (0, 20]. |
Front Overhang | Distance between the front axle and front bumper, in meters, specified as a decimal scalar. The front overhang must be less than (Length (m) – Rear Overhang). This parameter applies to vehicles only. Default:
|
Rear Overhang | Distance between the rear axle and rear bumper, in meters, specified as a decimal scalar. The rear overhang must be less than (Length (m) – Front Overhang). This parameter applies to vehicles only. Default:
|
Roll (°) | Orientation angle of the actor about its x-axis, in degrees, specified as a decimal scalar. Roll (°) is clockwise-positive when looking in the forward direction of the x-axis, which points forward from the actor. When you export the MATLAB function of the driving scenario and run that function, the roll angles of actors in the output scenario are wrapped to the range [–180, 180]. Default:
|
Pitch (°) | Orientation angle of the actor about its y-axis, in degrees, specified as a decimal scalar. Pitch (°) is clockwise-positive when looking in the forward direction of the y-axis, which points to the left of the actor. When you export the MATLAB function of the driving scenario and run that function, the pitch angles of actors in the output scenario are wrapped to the range [–180, 180]. Default:
|
Yaw (°) | Orientation angle of the actor about its z-axis, in degrees, specified as a decimal scalar. Yaw (°) is clockwise-positive when looking in the forward direction of the z-axis, which points up from the ground. However, the Scenario Canvas has a bird's-eye-view perspective that looks in the reverse direction of the z-axis. Therefore, when viewing actors on this canvas, Yaw (°) is counterclockwise-positive. When you export the MATLAB function of the driving scenario and run that function, the yaw angles of actors in the output scenario are wrapped to the range [–180, 180]. Default:
|
Radar Cross Section
— RCS of actorUse these parameters to manually specify the radar cross-section (RCS) of an actor. Alternatively, to import an RCS from a file or from the MATLAB workspace, expand this parameter section and click Import.
Parameter | Description |
---|---|
Azimuth Angles (deg) | Horizontal reflection pattern of actor, in degrees, specified as a vector of monotonically increasing decimal values in the range [–180, 180]. Default: |
Elevation Angles (deg) | Vertical reflection pattern of actor, in degrees, specified as a vector of monotonically increasing decimal values in the range [–90, 90]. Default: |
Pattern (dBsm) | RCS pattern, in decibels per square meter, specified as a Q-by-P table of decimal values. RCS is a function of the azimuth and elevation angles, where:
|
Trajectory
— Actor trajectoriesSpawn and Despawn an Actor During Simulation
Parameter | Description |
---|---|
Actor spawn and despawn | Select this parameter to spawn or despawn an actor in the driving scenario, while the simulation is running. To enable this parameter, you must first select an actor in the scenario by clicking on the actor. Specify values for the Entry Time(s) and Exit Time(s) parameters to make the actor enter (spawn) and exit (despawn) the scenario, respectively. |
Entry Time(s) | Specify the time at which an actor spawns
into the scenario during simulation. The entry
time must always be less than the exit time. Units
are in seconds. The default value for entry time
is 0 . |
Exit Time(s) | Specify the time at which an actor despawns
from the scenario during simulation. The exit time
must always be greater than the entry time. Units
are in seconds. The default value for exit time is
Inf . |
The values for the Entry Time(s) and Exit Time(s) parameters must be less than the entire simulation time that is set by either the stop condition or the stop time. If you specify values for Entry Time(s) and Exit Time(s) that are greater than the simulation duration, as determined by either the set stop time or stop condition, then the actor will either not spawn or not despawn, respectively
Use the Waypoints, Speeds, Wait Times, and
Yaw table to manually set or modify the
positions, speeds, wait times, and yaw orientation angles of
actors at their specified waypoints. When specifying
trajectories, to switch between adding forward and reverse
motion waypoints, use the add forward and reverse motion
waypoint buttons .
Parameter | Description |
---|---|
Constant Speed (m/s) | Default speed of actors as you add waypoints, specified as a positive decimal scalar in meters per second. If you set specific speed values in the v (m/s) column of the Waypoints, Speeds, Wait Times, and Yaw table, then the app clears the Constant Speed (m/s) value. If you then specify a new Constant Speed (m/s) value, then the app sets all waypoints to the new constant speed value. The default speed of an actor varies by actor class. For example, cars and trucks have a default constant speed of 30 meters per second, whereas pedestrians have a default constant speed of 1.5 meters per second. |
Waypoints, Speeds, Wait Times, and Yaw | Actor waypoints, specified as a table. Each row corresponds to a waypoint and contains the position, speed, and orientation of the actor at that waypoint. The table has these columns.
|
Sensors (Camera)
— Camera sensor placement, intrinsic camera parameters, and detection parametersTo access these parameters, add at least one camera sensor to the scenario by following these steps:
On the app toolstrip, click Add Camera.
From the Sensors tab, select the sensor from the list. The parameter values in this tab are based on the sensor you select.
Parameter | Description |
---|---|
Enabled | Enable or disable the selected sensor. Select this parameter to capture sensor data during simulation and visualize that data in the Bird's-Eye Plot pane. |
Name | Name of sensor. |
Update Interval (ms) | Frequency at which the sensor updates, in milliseconds, specified as an integer multiple of the app sample time defined under Settings, in the Sample Time (ms) parameter. The
default Update Interval (ms) value of
If you update the app sample time such that a sensor is no longer a multiple of the app sample time, the app prompts you with the option to automatically update the Update Interval (ms) parameter to the closest integer multiple. Default:
|
Type | Type of sensor, specified as Radar for radar sensors, Vision for camera sensors, or Lidar for lidar sensors. |
Sensor Placement
— Camera position and orientationUse these parameters to set the position and orientation of the selected camera sensor.
Parameter | Description |
---|---|
X (m) | X-axis position of the sensor in the vehicle coordinate system, in meters, specified as a decimal scalar. The X-axis points forward from the vehicle. The origin is located at the center of the vehicle's rear axle. |
Y (m) | Y-axis position of the sensor in the vehicle coordinate system, in meters, specified as a decimal scalar. The Y-axis points to the left of the vehicle. The origin is located at the center of the vehicle's rear axle. |
Height (m) | Height of the sensor above the ground, in meters, specified as a positive decimal scalar. Default:
|
Roll (°) | Orientation angle of the sensor about its X-axis, in degrees, specified as a decimal scalar. Roll (°) is clockwise-positive when looking in the forward direction of the X-axis, which points forward from the sensor. Default:
|
Pitch (°) | Orientation angle of the sensor about its Y-axis, in degrees, specified as a decimal scalar. Pitch (°) is clockwise-positive when looking in the forward direction of the Y-axis, which points to the left of the sensor. Default:
|
Yaw (°) | Orientation angle of the sensor about its Z-axis, in degrees, specified as a decimal scalar. Yaw (°) is clockwise-positive when looking in the forward direction of the Z-axis, which points up from the ground. The Sensor Canvas has a bird's-eye-view perspective that looks in the reverse direction of the Z-axis. Therefore, when viewing sensor coverage areas on this canvas, Yaw (°) is counterclockwise-positive. |
Camera Settings
— Intrinsic camera parametersUse these parameters to set the intrinsic parameters of the camera sensor.
Parameter | Description |
---|---|
Focal Length X | Horizontal point at which the camera is in focus, in pixels, specified as a positive decimal scalar. The default focal length changes depending on where you place the sensor on the ego vehicle. |
Focal Length Y | Vertical point at which the camera is in focus, in pixels, specified as a positive decimal scalar. The default focal length changes depending on where you place the sensor on the ego vehicle. |
Image Width | Horizontal camera resolution, in pixels, specified as a positive integer. Default:
|
Image Height | Vertical camera resolution, in pixels, specified as a positive integer. Default:
|
Principal Point X | Horizontal image center, in pixels, specified as a positive decimal scalar. Default:
|
Principal Point Y | Vertical image center, in pixels, specified as a positive decimal scalar. Default:
|
Detection Parameters
— Camera detection parametersTo view all camera detection parameters in the app, expand the Sensor Limits, Lane Settings, and Accuracy & Noise Settings sections.
Parameter | Description |
---|---|
Detection Type | Type of detections reported by camera, specified as one of these values:
Default:
|
Detection Probability | Probability that the camera detects an object, specified as a decimal scalar in the range (0, 1]. Default:
|
False Positives Per Image | Number of false positives reported per update interval, specified as a nonnegative decimal scalar. This value must be less than or equal to the maximum number of detections specified in the Limit # of Detections parameter. Default:
|
Limit # of Detections | Select this parameter to limit the number of simultaneous object detections that the sensor reports. Specify Limit # of Detections as a positive integer less than 263. To
enable this parameter, set the Detection
Type parameter to
Default:
|
Detection Coordinates | Coordinate system of output detection locations, specified as one of these values:
Default: |
Sensor Limits
Parameter | Description |
---|---|
Max Speed (m/s) | Fastest relative speed at which the camera can detect objects, in meters per second, specified as a nonnegative decimal scalar. Default:
|
Max Range (m) | Farthest distance at which the camera can detect objects, in meters, specified as a positive decimal scalar. Default:
|
Max Allowed Occlusion | Maximum percentage of object that can be blocked while still being detected, specified as a decimal scalar in the range [0, 1). Default:
|
Min Object Image Width | Minimum horizontal size of objects that the camera can detect, in pixels, specified as positive decimal scalar. Default:
|
Min Object Image Height | Minimum vertical size of objects that the camera can detect, in pixels, specified as positive decimal scalar. Default:
|
Lane Settings
Parameter | Description |
---|---|
Lane Update Interval (ms) | Frequency at which the sensor updates lane detections, in milliseconds, specified as a decimal scalar. Default:
|
Min Lane Image Width | Minimum horizontal size of objects that the sensor can detect, in pixels, specified as a decimal scalar. To enable this
parameter, set the Detection
Type parameter to
Default:
|
Min Lane Image Height | Minimum vertical size of objects that the sensor can detect, in pixels, specified as a decimal scalar. To enable this
parameter, set the Detection
Type parameter to
Default:
|
Boundary Accuracy | Accuracy with which the sensor places a lane boundary, in pixels, specified as a decimal scalar. To enable this parameter, set
the Detection Type parameter
to Default:
|
Limit # of Lanes | Select this parameter to limit the number of lane detections that the sensor reports. Specify Limit # of Lanes as a positive integer. To enable this
parameter, set the Detection
Type parameter to
Default:
|
Accuracy & Noise Settings
Parameter | Description |
---|---|
Bounding Box Accuracy | Positional noise used for fitting bounding boxes to targets, in pixels, specified as a positive decimal scalar. Default:
|
Process Noise Intensity (m/s^2) | Noise intensity used for smoothing position and velocity measurements, in meters per second squared, specified as a positive decimal scalar. Default:
|
Has Noise | Select this parameter to enable adding noise to sensor measurements. Default:
|
Sensors (Radar)
— Radar sensor placement and detection parametersTo access these parameters, add at least one radar sensor to the scenario.
On the app toolstrip, click Add Radar.
On the Sensors tab, select the sensor from the list. The parameter values changes based on the sensor you select.
Parameter | Description |
---|---|
Enabled | Enable or disable the selected sensor. Select this parameter to capture sensor data during simulation and visualize that data in the Bird's-Eye Plot pane. |
Name | Name of sensor. |
Update Interval (ms) | Frequency at which the sensor updates, in milliseconds, specified as an integer multiple of the app sample time defined under Settings, in the Sample Time (ms) parameter. The
default Update Interval (ms) value of
If you update the app sample time such that a sensor is no longer a multiple of the app sample time, the app prompts you with the option to automatically update the Update Interval (ms) parameter to the closest integer multiple. Default:
|
Type | Type of sensor, specified as Radar for radar sensors, Vision for camera sensors, or Lidar for lidar sensors. |
Sensor Placement
— Radar position and orientationUse these parameters to set the position and orientation of the selected radar sensor.
Parameter | Description |
---|---|
X (m) | X-axis position of the sensor in the vehicle coordinate system, in meters, specified as a decimal scalar. The X-axis points forward from the vehicle. The origin is located at the center of the vehicle's rear axle. |
Y (m) | Y-axis position of the sensor in the vehicle coordinate system, in meters, specified as a decimal scalar. The Y-axis points to the left of the vehicle. The origin is located at the center of the vehicle's rear axle. |
Height (m) | Height of the sensor above the ground, in meters, specified as a positive decimal scalar. Default:
|
Roll (°) | Orientation angle of the sensor about its X-axis, in degrees, specified as a decimal scalar. Roll (°) is clockwise-positive when looking in the forward direction of the X-axis, which points forward from the sensor. Default:
|
Pitch (°) | Orientation angle of the sensor about its Y-axis, in degrees, specified as a decimal scalar. Pitch (°) is clockwise-positive when looking in the forward direction of the Y-axis, which points to the left of the sensor. Default:
|
Yaw (°) | Orientation angle of the sensor about its Z-axis, in degrees, specified as a decimal scalar. Yaw (°) is clockwise-positive when looking in the forward direction of the Z-axis, which points up from the ground. The Sensor Canvas has a bird's-eye-view perspective that looks in the reverse direction of the Z-axis. Therefore, when viewing sensor coverage areas on this canvas, Yaw (°) is counterclockwise-positive. |
Detection Parameters
— Radar detection parametersTo view all radar detection parameters in the app, expand the Advanced Parameters and Accuracy & Noise Settings sections.
Parameter | Description |
---|---|
Detection Probability | Probability that the radar detects an object, specified as a decimal scalar in the range (0, 1]. Default:
|
False Alarm Rate | Probability of a false detection per
resolution rate, specified as a decimal scalar in
the range [ Default:
|
Field of View Azimuth | Horizontal field of view of radar, in degrees, specified as a positive decimal scalar. Default:
|
Field of View Elevation | Vertical field of view of radar, in degrees, specified as a positive decimal scalar. Default:
|
Max Range (m) | Farthest distance at which the radar can detect objects, in meters, specified as a positive decimal scalar. Default:
|
Range Rate Min, Range Rate Max | Select this parameter to set minimum and maximum range rate limits for the radar. Specify Range Rate Min and Range Rate Max as decimal scalars, in meters per second, where Range Rate Min is less than Range Rate Max. Default (Min):
Default (Max):
|
Has Elevation | Select this parameter to enable the radar to measure the elevation of objects. This parameter enables the elevation parameters in the Accuracy & Noise Settings section. Default:
|
Has Occlusion | Select this parameter to enable the radar to model occlusion. Default:
|
Advanced Parameters
Parameter | Description |
---|---|
Reference Range | Reference range for a given probability of detection, in meters, specified as a positive decimal scalar. The reference range is the range at which the radar detects a target of the size specified by Reference RCS, given the probability of detection specified by Detection Probability. Default:
|
Reference RCS | Reference RCS for a given probability of detection, in decibels per square meter, specified as a nonnegative decimal scalar. The reference RCS is the target size at which the radar detects a target, given the reference range specified by Reference Range and the probability of detection specified by Detection Probability. Default:
|
Limit # of Detections | Select this parameter to limit the number of simultaneous detections that the sensor reports. Specify Limit # of Detections as a positive integer less than 263. Default:
|
Detection Coordinates | Coordinate system of output detection locations, specified as one of these values:
Default: |
Accuracy & Noise Settings
Parameter | Description |
---|---|
Azimuth Resolution | Minimum separation in azimuth angle at which the radar can distinguish between two targets, in degrees, specified as a positive decimal scalar. The azimuth resolution is typically the 3 dB downpoint in the azimuth angle beamwidth of the radar. Default:
|
Azimuth Bias Fraction | Maximum azimuth accuracy of the radar, specified as a nonnegative decimal scalar. The azimuth bias is expressed as a fraction of the azimuth resolution specified by the Azimuth Resolution parameter. Units are dimensionless. Default:
|
Elevation Resolution | Minimum separation in elevation angle at which the radar can distinguish between two targets, in degrees, specified as a positive decimal scalar. The elevation resolution is typically the 3 dB downpoint in the elevation angle beamwidth of the radar. To enable this parameter, in the Detection Parameters section, select the Has Elevation parameter. Default:
|
Elevation Bias Fraction | Maximum elevation accuracy of the radar, specified as a nonnegative decimal scalar. The elevation bias is expressed as a fraction of the elevation resolution specified by the Elevation Resolution parameter. Units are dimensionless. To enable this parameter, under Detection Parameters, select the Has Elevation parameter. Default:
|
Range Resolution | Minimum range separation at which the radar can distinguish between two targets, in meters, specified as a positive decimal scalar. Default:
|
Range Bias Fraction | Maximum range accuracy of the radar, specified as a nonnegative decimal scalar. The range bias is expressed as a fraction of the range resolution specified in the Range Resolution parameter. Units are dimensionless. Default:
|
Range Rate Resolution | Minimum range rate separation at which the radar can distinguish between two targets, in meters per second, specified as a positive decimal scalar. To enable this parameter, in the Detection Parameters section, select the Range Rate Min, Range Rate Max parameter and set the range rate values. Default:
|
Range Rate Bias Fraction | Maximum range rate accuracy of the radar, specified as a nonnegative decimal scalar. The range rate bias is expressed as a fraction of the range rate resolution specified in the Range Rate Resolution parameter. Units are dimensionless. To enable this parameter, under the Detection Parameters section, select the Range Rate Min, Range Rate Max parameter and set the range rate values. Default:
|
Has Noise | Select this parameter to enable adding noise to sensor measurements. Default:
|
Has False Alarms | Select this parameter to enable false alarms in sensor detections. Default:
|
Sensors (Lidar)
— Lidar sensor placement, point cloud reporting, and detection parametersTo access these parameters, add at least one lidar sensor to the scenario.
On the app toolstrip, click Add Lidar.
On the Sensors tab, select the sensor from the list. The parameter values change based on the sensor you select.
When you add a lidar sensor to a scenario, the Bird's-Eye Plot and Ego-Centric View display the mesh representations of actors. For example, here is a sample view of actor meshes on the Ego-Centric View.
The lidar sensors use these more detailed representations of actors to generate point cloud data. The Scenario Canvas still displays only the cuboid representations. The other sensors still base their detections on the cuboid representations.
To turn off actor meshes, use the properties under Display on the app toolstrip. To modify the mesh display types of actors, select Add Actor > Edit Actor Classes. In the Class Editor, modify the Mesh Display Type parameter of that actor class.
Parameter | Description |
---|---|
Enabled | Enable or disable the selected sensor. Select this parameter to capture sensor data during simulation and visualize that data in the Bird's-Eye Plot pane. |
Name | Name of sensor. |
Update Interval (ms) | Frequency at which the sensor updates, in milliseconds, specified as an integer multiple of the app sample time defined under Settings, in the Sample Time (ms) parameter. The
default Update Interval (ms) value of
If you update the app sample time such that a sensor is no longer a multiple of the app sample time, the app prompts you with the option to automatically update the Update Interval (ms) parameter to the closest integer multiple. Default:
|
Type | Type of sensor, specified as Radar for radar sensors, Vision for camera sensors, or Lidar for lidar sensors. |
Sensor Placement
— Lidar position and orientationUse these parameters to set the position and orientation of the selected lidar sensor.
Parameter | Description |
---|---|
X (m) | X-axis position of the sensor in the vehicle coordinate system, in meters, specified as a decimal scalar. The X-axis points forward from the vehicle. The origin is located at the center of the vehicle's rear axle. |
Y (m) | Y-axis position of the sensor in the vehicle coordinate system, in meters, specified as a decimal scalar. The Y-axis points to the left of the vehicle. The origin is located at the center of the vehicle's rear axle. |
Height (m) | Height of the sensor above the ground, in meters, specified as a positive decimal scalar. Default:
|
Roll (°) | Orientation angle of the sensor about its X-axis, in degrees, specified as a decimal scalar. Roll (°) is clockwise-positive when looking in the forward direction of the X-axis, which points forward from the sensor. Default:
|
Pitch (°) | Orientation angle of the sensor about its Y-axis, in degrees, specified as a decimal scalar. Pitch (°) is clockwise-positive when looking in the forward direction of the Y-axis, which points to the left of the sensor. Default:
|
Yaw (°) | Orientation angle of the sensor about its Z-axis, in degrees, specified as a decimal scalar. Yaw (°) is clockwise-positive when looking in the forward direction of the Z-axis, which points up from the ground. The Sensor Canvas has a bird's-eye-view perspective that looks in the reverse direction of the Z-axis. Therefore, when viewing sensor coverage areas on this canvas, Yaw (°) is counterclockwise-positive. |
Point Cloud Reporting
— Point cloud reporting parametersParameter | Description |
---|---|
Detection Coordinates | Coordinate system of output detection locations, specified as one of these values:
Default: |
Output organized point cloud locations | Select this parameter to output the generated sensor data as an organized point cloud. If you clear this parameter, the output is unorganized. Default:
|
Include ego vehicle in generated point cloud | Select this parameter to include the ego vehicle in the generated point cloud. Default:
|
Include roads in generated point cloud | Select this parameter to include roads in the generated point cloud. Default:
|
Detection Parameters
— Lidar detection parametersSensor Limits
Parameter | Description |
---|---|
Max Range (m) | Farthest distance at which the lidar can detect objects, in meters, specified as a positive decimal scalar. Default:
|
Range Accuracy (m) | Accuracy of range measurements, in meters, specified as a positive decimal scalar. Default:
|
Azimuth | Azimuthal resolution of the lidar sensor, in degrees, specified as a positive decimal scalar. The azimuthal resolution defines the minimum separation in azimuth angle at which the lidar can distinguish two targets. Default:
|
Elevation | Elevation resolution of the lidar sensor, in degrees, specified as a positive decimal scalar. The elevation resolution defines the minimum separation in elevation angle at which the lidar can distinguish two targets. Default:
|
Azimuthal Limits (deg) | Azimuthal limits of the lidar sensor,
in degrees, specified as a two-element vector of
decimal scalars of the form Default: |
Elevation Limits (deg) | Elevation limits of the lidar sensor,
in degrees, specified as a two-element vector of
decimal scalars of the form Default: |
Has Noise | Select this parameter to enable adding noise to sensor measurements. Default:
|
Settings
— Simulation sample time, stop condition, and stop timeTo access these parameters, on the app toolstrip, click Settings.
Parameter | Description |
---|---|
Sample Time (ms) | Frequency at which the simulation updates, in milliseconds. Increase the sample time to speed up simulation. This increase has no effect on actor speeds, even though actors can appear to go faster during simulation. The actor positions are just being sampled and displayed on the app at less frequent intervals, resulting in faster, choppier animations. Decreasing the sample time results in smoother animations, but the actors appear to move slower, and the simulation takes longer. The sample time does not correlate
to the actual time. For example, if the app samples
every 0.1 seconds (Sample Time
(ms) = Default:
|
Stop Condition | Stop condition of simulation, specified as one of these values:
Default: |
Stop Time (s) | Stop time of simulation, in seconds, specified as a positive decimal scalar. To enable
this parameter, set the Stop
Condition parameter to Default:
|
Use RNG Seed | Select this parameter to use a random number generator (RNG) seed to reproduce the same results for each simulation. Specify the RNG seed as a nonnegative integer less than 232. Default:
|
OpenStreetMap — Import Limitations
When importing OpenStreetMap data, road and lane features have these limitations:
Lane-level information is not imported from OpenStreetMap roads. Lane specifications are based only on the direction of travel specified in the OpenStreetMap road network, where:
One-way roads are imported as single-lane roads with default lane
specifications. These lanes are programmatically equivalent to lanespec
(1)
.
Two-way roads are imported as two-lane roads with bidirectional travel
and default lane specifications. These lanes are programmatically
equivalent to lanespec
([1 1])
.
The table shows these differences in the OpenStreetMap road network and the road network in the imported driving scenario.
OpenStreetMap Road Network | Imported Driving Scenario |
---|---|
When importing OpenStreetMap road networks that specify elevation data, if elevation data is not specified for all roads being imported, then the generated road network might contain inaccuracies and some roads might overlap.
The basemap used in the app can have slight differences from the map used in the OpenStreetMap service. Some imported road issues might also be due to missing or inaccurate map data in the OpenStreetMap service. To check whether the data is missing or inaccurate due to the map service, consider viewing the map data on an external map viewer.
If you receive a warning that the geometry of a road is unable to be computed, then the curvature of the road is too sharp for it to render properly and it is not imported.
HERE HD Live Map — Import Limitations
When importing HERE HDLM data, these road and lane features are not supported:
Lanes with varying widths — In the generated road network, each lane is set to have the maximum width found along its entire length. Consider a HERE HDLM lane with a width that varies from 2 to 4 meters along its length. In the generated road network, the lane width is 4 meters along its entire length.
Roads with varying numbers of lanes along their lengths — In the generated road network, each road is set to have the maximum number of lanes along its entire length. Consider a HERE HDLM road with 3 lanes on one half and 2 lanes on the other half. In the generated road network, the road has 3 lanes along its entire length.
Multiple lane marking styles along a lane — In the generated road network, each lane is set to have the marking style of the lane segment with the maximum width along the road. Consider a HERE HDLM lane with 2 lane segments. The first lane segment is 2 meters wide and has solid markings. The second lane segment is 4 meters wide and has dashed markings. In the generated road network, the lane has a fixed width of 4 meters throughout and dashed markings along its entire length.
These modifications to the road networks can sometimes cause roads to overlap in the driving scenario. Consider the HERE HDLM roads for the divided highway highlighted in blue in the table. Due to the unsupported features, in the imported driving scenario, the lane widths of the roads increase. This limitation causes the roads to overlap and appear as one road. Sensors that detect lanes are unable to detect the covered lanes.
HERE HDLM Road Network | Imported Driving Scenario |
---|---|
|
|
If you receive a warning that the geometry of a road is unable to be computed, then the curvature of the road is too sharp for it to render properly and it is not imported.
In addition to the unsupported features, the basemap used in the app might have slight differences from the map used in the HERE HDLM service. Some issues with the imported roads might also be due to missing or inaccurate map data in the HERE HDLM service. To check where the issue stems from in the map data, use the HERE HD Live Map Viewer to view the geometry of the HERE HDLM road network. This viewer requires a valid HERE license. For more details, see the HERE Technologies website.
HERE HD Live Map — Route Selection Limitations
When selecting HERE HD Live Map roads to import from a region of interest, the maximum allowable size of the region is 20 square kilometers. If you specify a driving route that is greater than 20 square kilometers, the app draws a region that is optimized to fit as much of the beginning of the route as possible into the display. This figure shows an example of a region drawn around the start of a route that exceeds this maximum size.
OpenDRIVE Import Limitations
You can import only lanes, lane type information, and roads. The import of road objects and traffic signals is not supported.
OpenDRIVE files containing large road networks can take up to several minutes to load. In addition, these road networks can cause slow interactions on the app canvas. Examples of large road networks include ones that model the roads of a city or ones with roads that are thousands of meters long.
Lanes with variable widths are not supported. The width is set to the highest width found within that lane. For example, if a lane has a width that varies from 2 meters to 4 meters, the app sets the lane width to 4 meters throughout.
Roads with lane type information specified as driving
,
border
, restricted
,
shoulder
, and parking
are
supported. Lanes with any other lane type information are imported as border
lanes.
Roads with multiple lane marking styles specified as
'Unmarked'
, 'Solid'
,
'DoubleSolid'
, 'Dashed'
,
'DoubleDashed'
, 'SolidDashed'
,
and 'DashedSolid'
are supported.
Lane marking styles Bott Dots
, Curbs
,
and Grass
are not supported. Lanes with these marking
styles are imported as unmarked.
Euro NCAP Limitations
Scenarios of speed assistance systems (SAS) are not supported. These scenarios require the detection of speed limits from traffic signs, which the app does not support.
3D Display Limitations
These limitations describe how 3D Display visualizations differ from the cuboid visualizations that appear on the Scenario Canvas.
Roads do not form junctions with unmarked lanes at intersections. The roads and their lane markings overlap.
Not all actor or lane marking colors are supported. The 3D display matches the selected color to the closest available color that it can render.
Lane type colors of nondriving lanes are not supported. If you select a nondriving lane type, in the 3D display, the lane displays as a driving lane.
On the Actors tab, specified Roll (°) and Pitch (°) parameter values of an actor are ignored. In the Waypoints table, z (m) values (that is, elevation values) are also ignored. During simulation, actors follow the elevation and banking angle of the road surface.
Multiple marking styles along a lane are not supported. The 3D display applies the first lane marking style of the first lane segment along the entire length of the lane.
Actors with a 3D Display Type of
Cuboid
do not move in the 3D display. During
simulation, these actors remain stationary at their initial specified
positions.
When importing map data, the map regions you specify and the number of roads you select have a direct effect on app performance. To improve performance, specify the smallest map regions and select the fewest roads that you need to create your driving scenario.
You can undo (press Ctrl+Z) and redo (press Ctrl+Y) changes you make on the scenario and sensor canvases. For example, you can use these shortcuts to delete a recently placed road center or redo the movement of a radar sensor. For more shortcuts, see Keyboard Shortcuts and Mouse Actions for Driving Scenario Designer
In scenarios that contain many actors, to keep track of the ego vehicle, you can add an indicator around the vehicle. On the app toolstrip, select Display > Show ego indicator. The circle around the ego vehicle highlights the location of the vehicle in the scenario. This circle is not a sensor coverage area.
[1] European New Car Assessment Programme. Euro NCAP Assessment Protocol - SA. Version 8.0.2. January 2018.
[2] European New Car Assessment Programme. Euro NCAP AEB C2C Test Protocol. Version 2.0.1. January 2018.
[3] European New Car Assessment Programme. Euro NCAP LSS Test Protocol. Version 2.0.1. January 2018.
[4] Dupuis, Marius, et al. OpenDRIVE Format Specification. Revision 1.4, Issue H, Document No. VI2014.106. Bad Aibling, Germany: VIRES Simulationstechnologie GmbH, November 4, 2015.
[1] You need to enter into a separate agreement with HERE in order to gain access to the HDLM services and to get the required credentials (access_key_id and access_key_secret) for using the HERE Service.