Tracking Scenario Reader

Libraries:
Sensor Fusion and Tracking Toolbox /
Tracking Scenario and Sensor Models
Description
The Tracking Scenario Reader
block reads a trackingScenario
object or a Tracking Scenario Designer
session file and outputs platform poses and simulation time. You can configure the block to
optionally output detections, point clouds, emissions, sensor and emitter configurations, and
sensor coverages from the scenario.
Examples
Track Point Targets in Dense Clutter Using GM-PHD Tracker in Simulink
Radars generally receive echoes from all surfaces in the signal path. These unwanted back-scattered signals or echoes generated from physical objects are called clutter. In a densely cluttered environment, missed detections and false alarms make tracking objects a challenging task for conventional trackers such as Global Nearest-Neighbor (GNN) tracker. In such an environment a PHD tracker provides better estimation of objects as it can handle multiple detections per object per sensor without clustering them first. This example shows you how to track points targets in dense clutter using a Gaussian mixture probability hypothesis density (GM-PHD) tracker with a constant velocity model in Simulink. The example closely follows the Track Point Targets in Dense Clutter Using GM-PHD Tracker MATLAB® example.
- Since R2021a
- Open Model
Ports
Input
Platform pose information, specified as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumPlatforms | Number of valid platforms, specified as a nonnegative integer. |
Platforms | Platforms, specified as an array of platform pose structures. The first
NumPlatforms of these structures are actual platform
poses. |
The fields of each platform structure is:
Field | Description |
---|---|
PlatformID | Unique platform identifier, specified as a positive integer. |
ClassID | Platform classification identifier, specified as a nonnegative integer |
Position | Position of the platform, specified as a 3-element real-valued vector.
|
Velocity | Velocity of the platform, specified as a 3-element real-valued vector in m/s. |
Acceleration | Acceleration of the platform, specified as a 3-element real-valued vector in m/s2. |
Orientation | Orientation of the platform with respect to the local scenario frame, specified as a 3-by-3 rotation matrix. |
AngularVelocity | Angular velocity of the platform relative to the local scenario frame, specified as a 3-element real-valued vector in degrees per second. |
You must pre-define each platform in the scenario before specifying its pose as input. Use this input when you cannot pre-define the platform properties, such as its position, in the scenario. For example, define the platform position in response to positions of other platforms for collision avoidance during the scenario run. Selecting this option disables all block output ports except the default Platforms and Simulation Time output ports.
Dependencies
To enable this port, in the Scenario tab, select the
Source of platform pose parameter as Input
port
.
Output
Information of platforms in the scenario, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumPlatforms | Number of valid platforms, returned as a nonnegative integer. |
Platforms | Platforms, returned as an array of platform pose structures. The first
NumPlatforms of these structures are actual platform
poses. |
The fields of each platform structure are:
Field | Description |
---|---|
PlatformID | Unique platform identifier, returned as a positive integer. |
ClassID | Platform classification identifier, returned as a nonnegative integer |
Position | Position of the platform, returned as a 3-element real-valued vector.
|
Velocity | Velocity of the platform, returned as a 3-element real-valued vector in m/s. |
Acceleration | Acceleration of the platform, returned as a 3-element real-valued vector in m/s2. |
Orientation | Orientation of the platform with respect to the local scenario frame, returned as a 3-by-3 rotation matrix. |
AngularVelocity | Angular velocity of the platform relative to the local scenario frame, returned as a 3-element real-valued vector in degrees per second. |
The platform structure also contains these fields if you select the Include profiles information with platforms parameter in the Output Setting tab.
Field | Description |
---|---|
Dimensions | Platform dimensions and origin offset, returned as a structure.
The structure contains the |
Mesh | Mesh of the platform, returned as a structure. |
The mesh structure contains these fields:
Field | Description |
---|---|
NumVertices | Number of valid vertices, returned as a positive integer. |
Vertices | Vertices of the platform mesh, returned as an N-by-3 real-valued matrix, where N is the maximum number of vertices among all platform meshes in the scenario. The first, second, and third element of each row represents the x-, y-, and z-position of each vertex, respectively. |
NumFaces | Number of valid faces, returned as a positive integer. |
Faces | Faces of the platform mesh, returned as an
M-by-3 matrix of positive integers, where
M is the maximum number of faces among all platform
meshes in the scenario. The three elements in each row are the vertex IDs
of the three vertices forming the triangle face. The ID of the vertex is
its corresponding row number specified in the |
Current simulation time, returned as a nonnegative scalar in seconds.
Coverage configurations in the scenario, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumConfigurations | Number of valid coverage configurations, returned as a nonnegative integer. |
Configurations | Coverage configurations, returned as an array of coverage configuration
structures. The first NumConfigurations of these
structures are actual coverage configurations. |
The fields of each coverage configuration structure are:
Field | Description |
---|---|
Index | Unique sensor or emitter index, returned as a positive integer for sensors and returned as a negative integer for emitters. |
LookAngle | The current boresight angles of the sensor or emitter, returned
as two-element vector [ |
FieldOfView | The field of view of the sensor or emitter, returned a 2-by-2
real-valued matrix in degrees. If the sensor is a lidar sensor, the first
row returns the lower and upper azimuth limits and second row returns the
lower and upper elevation limits. For other types of sensors or emitters,
the first column contains the azimuth and elevation field of view and the
second column is returned as NaN . |
ScanLimits | The minimum and maximum angles the sensor or emitter can scan
from its mounting orientation, returned as 2-by-2 matrix
[ |
Range | The range of the beam and coverage area of the sensor or emitter, returned as a scalar in meters. |
Position | The origin position of the sensor or emitter, returned as a
three-element vector [x , y ,
z ] in meters. |
Orientation | The rotation transformation from the scenario frame to the sensor or emitter mounting frame, returned as a rotation matrix. |
Dependencies
To enable this port, in the Output Settings tab, select the Coverage parameter.
Detection list, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumDetections | Number of detections, returned as a nonnegative integer. |
Detections | Object detections, returned as an array of object detection structures.
The first NumDetections of these detections are actual
detections. |
The fields of each object detection structure are:
Field | Description |
---|---|
Time | Measurement time, returned as a positive scalar. |
Measurement | Object measurements, returned as a real-valued vector. |
MeasurementNoise | Measurement noise covariance matrix, returned as a positive define matrix. |
SensorIndex | Unique ID of the sensor, returned as a positive integer. |
ObjectClassID | Object classification ID, returned as a nonnegative integer. |
MeasurementParameters | Measurement parameters, returned as a structure. |
ObjectAttributes | Additional information passed to tracker, returned as a structure. |
See objectDetection
for more detailed
explanations of these fields.
Dependencies
To enable this port, in the Output Settings tab, select the Detections parameter.
Sensor configurations in the scenario, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumConfigurations | Number of valid sensor configurations, returned as a nonnegative integer. |
Configurations | Sensor configurations, returned as an array of coverage configuration
structures. The first NumConfigurations of these
structures are actual sensor configurations. |
The fields of each sensor configuration structure are:
Field | Description |
---|---|
SensorIndex | Unique sensor identifier, returned as a positive integer. |
IsValidTime | Indicate if the sensor should report at least a detection at the
current time, returned as false or
true . |
IsScanDone | Indicate if the sensor has completed the current scan, returned as
false or true . |
FieldOfView | The field of view of the sensor or emitter, returned a 2-by-2
real-valued matrix in degrees. If the sensor is a lidar sensor, the first
row returns the lower and upper azimuth limits and second row returns the
lower and upper elevation limits. For other types of sensors or emitters,
the first column contains the azimuth and elevation field of view and the
second column is returned as NaN . |
MeasurementParameters | Sensor measurement parameters, returned as an array of structures
containing the coordinate frame transforms needed to transform positions
and velocities in the scenario frame to the current sensor frame. See the
|
Dependencies
To enable this port, in the Output Settings tab, select the Sensor parameter.
Radar and sonar emissions in the scenario, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumEmissions | Number of valid emissions, returned as a nonnegative integer. |
Emissions | Emissions, returned as an array of emission structures. The first
NumEmissions of these structures are actual
emissions. |
The fields of each emission structure are:
Field | Description |
---|---|
PlatformID | Platform identifier, returned as a positive integer. |
EmitterIndex | Emitter identifier, returned as a positive integer. |
OriginPosition | Location of emitter, returned as a 1-by-3 real-valued vector in meters. |
OriginVelocity | Velocity of emitter, returned as a 1-by-3 real-valued vector in m/s. |
Orientation | Orientation of emitter with respect to the local scenario frame, returned as a 3-by-3 rotation matrix. |
FieldOfView | Field of view of the emitter, returned as a two-element vector
[ |
EIRP | Effective isotropic radiated power of the radar emission, returned as a
scalar in dB for radar emission and returned as NaN for
sonar emission. |
RCS | Cumulative radar cross-section, returned as a scalar in dBsm for radar
emission and returned as NaN for sonar emission. |
CenterFrequency | Center frequency of the signal, returned as a positive scalar in Hz. |
BandWidth | Half-power bandwidth of the signal, returned as a positive scalar in Hz. |
WaveformType | Waveform type identifier, returned as a nonnegative integer. |
ProcessingGain | Processing gain associated with the signal waveform, returned as a scalar in dB. |
PropagationRange | Total distance over which the signal has propagated, returned as a nonnegative scalar in meters. For direct-path signals, the range is zero. |
PropagationRangeRate | Total range rate for the path over which the signal has propagated, returned as a scalar in m/s. For direct-path signals, the range rate is zero. |
SourceLevel | Cumulative source level of an emitted signal, returned as a scalar in
dB per micro-pascal for sonar emission and returned as
NaN for radar emission. The cumulative source level of
the emitted signal in decibels is relative to the intensity of a sound wave
having an rms pressure of 1 micro-pascal. |
TargetStrength | Cumulative target strength of the source platform emitting the signal,
returned as a scalar in dB for sonar emission and returned as
NaN for radar emission. |
Dependencies
To enable this port, in the Output Settings tab, select the Emissions parameter.
Emitter configurations in the scenario, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumConfigurations | Number of valid emitter configurations, returned as a nonnegative integer. |
Configurations | Emitter configurations, returned as an array of emitter configuration
structures. The first NumConfigurations of these
structures are actual emitter configurations. |
The fields of each emitter configuration are:
Field | Description |
---|---|
EmitterIndex | Unique emitter identifier, returned as a positive integer. |
IsValidTime | Indicate the emission status of the sensor, returned as
false or true . |
IsScanDone | Indicate if the emitter has completed its current scan, returned as
false or true . |
FieldOfView | The field of view of the emitter, specified as a two-element vector
[azimuth ; elevation ] in
degrees. |
MeasurementParameters | Emitter measurement parameters, returned as an array of
structures containing the coordinate frame transforms needed to transform
positions and velocities in the scenario frame to the current emitter
frame. See the |
Dependencies
To enable this port, in the Output Settings tab, select the Emitter parameter.
Point clouds, returned as a Simulink bus containing a MATLAB structure. The structure has the form:
Field | Description |
---|---|
NumPointClouds | Number of valid point clouds, returned as a nonnegative integer. |
PointClouds | Point clouds, returned as an array point cloud structures. The first
NumPointClouds of these point cloud structures
represent actual point clouds. |
The fields of each point cloud structure are:
Field | Description |
---|---|
NumPoints | Number of valid points in the Points field, returned
as a nonnegative integer. |
Points | Unorganized points reported from the lidar, returned as an
N-by-3 real-valued matrix, where N
is the maximum number of points from all lidar sensors in the scenario. The
first NumPoints rows represent actual points generated
from the lidar. |
Clusters | Cluster labels of points in the Points field,
returned as an N-by-2 matrix of nonnegative integers,
where N is the maximum number of points from all lidar
sensors in the scenario. The first NumPoint rows
represent actual cluster labels of the points. For each row of the matrix,
the first element represents the PlatformID of the target
generating the point whereas the second element represents the
ClassID of the target. |
See monostaticLidarSensor
for more information.
Dependencies
To enable this port, in the Output Settings tab, select the Point clouds parameter.
Parameters
Scenario
Specify the source of tracking scenario as one of these options:
trackingScenario
— In the Workspace variable name parameter, specify the name of a MATLAB workspace variable that represents atrackingScenario
object.Tracking Scenario Designer session file
— In the Session file parameter, specify the name of a session file that was saved from the Tracking Scenario Designer app.
Specify the workspace variable name as the name of a trackingScenario
object in the MATLAB workspace.
If you change the definition of the tracking scenario, use the Refresh Scenario Data button on the Scenario tab to update the scenario.
Dependencies
To enable this parameter, set the Source of scenario
parameter to trackingScenario
.
Specify the session file as the name of a session file that was saved from the Tracking Scenario Designer app.
If you change the session file, use the Refresh Scenario Data button on the Scenario tab to update the file.
Dependencies
To enable this parameter, set the Source of scenario
parameter to Tracking Scenario Designer session file
.
Select the source of platform pose as
Scenario
— Use the platform poses defined in the scenario that is specified by the Workspace variable name or Session file parameter.Input port
— Specify the platform poses by using the Platform poses input port. Select this option when you cannot pre-define the platform properties, such as its position, in the scenario. For example, define the platform position in response to positions of other platforms for collision avoidance during the scenario run. Also, selecting this option disables all block output ports except the default Platforms and Simulation Time output ports.
Specify the sample time of simulation as a positive real scalar in seconds. Inherited and continuous sample times are not supported.
This sample time overrides the sample time defined in the
trackignScenario
object or the Tracking Scenario
Designer app session file. To obtain the same or similar outputs as the
scenario source, define this parameter according to the sample time defined in the
trackignScenario
object or the Tracking Scenario
Designer app session file.
Specify coordinate system to report platform poses as
Cartesian
— Report each platform position as a 3-element Cartesian position coordinates in meters with respect to the scenario frame.Geodetic
— Report each platform position as a 3-element geodetic coordinates: latitude in degrees, longitude in degrees, and altitude in meters. To select this option, you must specify the Source of scenario parameter astrackingScenario
and set theIsEarthCentered
property of the scenario astrue
.
Output Settings
Platforms
Select this parameter include platform profile information, including platform dimension and mesh, in the Platforms output.
Sensors and emitters
Select this parameter to enable the Detections output port.
Dependencies
To enable this parameter, select the Source of platform
pose parameter on the Scenario tab as
Scenario
.
Select this parameter to enable the Point Clouds output port.
Dependencies
To enable this parameter, select the Source of platform
pose parameter on the Scenario tab as
Scenario
.
Select this parameter to enable the Emissions output port.
Dependencies
To enable this parameter, select the Source of platform
pose parameter on the Scenario tab as
Scenario
.
Select this parameter to enable occlusion of signal from platforms in emission propagation.
Dependencies
To enable this parameter, select the Emissions parameter.
Configurations
Select this parameter to enable the Coverage Configurations output port.
Dependencies
To enable this parameter, select the Source of platform
pose parameter on the Scenario tab as
Scenario
.
Select this parameter to enable the Sensor Configurations output port.
Dependencies
To enable this parameter, select the Source of platform
pose parameter on the Scenario tab as
Scenario
.
Select this parameter to enable the Emitter Configurations output port.
Dependencies
To enable this parameter, select the Source of platform
pose parameter on the Scenario tab as
Scenario
.
Random number generator settings
Select the method to generate random number seed as
Repeatable
, Not repeatable
, or
Specify seed
. When selected as
Repeatable
— The blocks uses the same random seed every time.Not repeatable
— The blocks uses a different random seed every time.Specify seed
— Specify a random seed for the block using the Initial Seed parameter.
Dependencies
To enable this parameter, select the Detections, Point clouds, or Emissions parameter.
Specify the initial seed for randomization in the block as a nonnegative integer.
Dependencies
To enable this parameter, select the Random number
generation parameter as Specify seed
.
Bus Settings
Platforms
Specify the source of the name for the platform poses bus returned in the Platforms output port as one of these options:
Auto
— The block automatically creates a platform poses bus name.Property
— Specify the platform poses bus name by using the Specify platform bus name parameter.
Specify the name of the platform pose bus returned in the Platforms output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of platform bus
name parameter as Property
.
Specify the source of the maximum number of platforms that you can have in the tracking scenario as one of these options:
Auto
— The block sets the maximum number of platforms to the number of platforms in the tracking scenario.Property
— Specify the maximum number of platforms by using the Maximum number of platforms parameter.
Specify the maximum number of platforms as a positive integer.
Dependencies
To enable this parameter, set the Source of maximum number of
platforms parameter to Property
.
Detections
Specify the source of the name for the detection bus returned in the Detections output port as one of these options:
Auto
— The block automatically creates a detection bus name.Property
— Specify the detection bus name by using the Specify detection bus name parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Detections parameter.
Specify the name of the detection bus returned in the Detections output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of detection bus
name parameter as Property
.
Specify the source of the maximum number of detections that you can generate from the tracking scenario as one of these options:
Auto
— The block sets the maximum number of detections to the number of generated detections in the tracking scenario.Property
— Specify the maximum number of detections by using the Maximum number of detections parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Detections parameter.
Specify the maximum number of detections as a positive integer.
Dependencies
To enable this parameter, set the Source of maximum number of
detections parameter to Property
.
Point clouds
Specify the source of the name for the point bus returned in the Point Clouds output port as one of these options:
Auto
— The block automatically creates a point cloud bus name.Property
— Specify the point cloud bus name by using the Specify point cloud bus name parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Point clouds parameter.
Specify the name of the point cloud bus returned in the Point Clouds output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of point cloud bus
name parameter as Property
.
Specify the maximum number of lidar sensors as a positive integer.
Dependencies
To enable this parameter, set the Source of maximum number of lidar
sensors parameter to Property
.
Specify the source of the maximum number of lidar sensors that you can have in the tracking scenario as one of these options:
Auto
— The block sets the maximum number of lidar sensors to the number of lidar sensors in the tracking scenario.Property
— Specify the maximum number of detections by using the Maximum number of lidar sensors parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Point clouds parameter.
Emissions
Specify the source of the name for the emission bus returned in the Emissions output port as one of these options:
Auto
— The block automatically creates an emission bus name.Property
— Specify the emission bus name by using the Specify emission bus name parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Emissions parameter.
Specify the name of the emission bus returned in the Emissions output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of emission bus
name parameter as Property
.
Specify the source of the maximum number of emissions that you can generate from the tracking scenario as one of these options:
Auto
— The block sets the maximum number of emissions to the number of emissions generated in the tracking scenario.Property
— Specify the maximum number of emissions by using the Maximum number of emissions parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Emissions parameter.
Specify the maximum number of emissions as a positive integer.
Dependencies
To enable this parameter, set the Source of maximum number of
emissions parameter to Property
.
Configurations
Specify the source of the name for the coverage configuration bus returned in the Coverage Configurations output port as one of these options:
Auto
— The block automatically creates a coverage configuration bus name.Property
— Specify the coverage configuration bus name by using the Specify coverage configuration bus name parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Coverage parameter.
Specify the name of the coverage configuration bus returned in the Coverage Configurations output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of coverage configuration
bus name parameter as Property
.
Specify the source of the name for the sensor configuration bus returned in the Sensor Configurations output port as one of these options:
Auto
— The block automatically creates a sensor configuration bus name.Property
— Specify the sensor configuration bus name by using the Specify sensor configuration bus name parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Sensor parameter.
Specify the name of the sensor configuration bus returned in the Sensor Configurations output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of sensor configuration
bus name parameter as Property
.
Specify the source of the name for the emitter configuration bus returned in the Emitter Configurations output port as one of these options:
Auto
— The block automatically creates an emitter configuration bus name.Property
— Specify the emitter configuration bus name by using the Specify emitter configuration bus name parameter.
Specify the name of the emitter configuration bus returned in the Emitter Configurations output port as a valid bus name.
Dependencies
To enable this parameter, select the Source of emitter configuration
bus name parameter as Property
.
Specify the source of the maximum number of sensors that you can have in the tracking scenario as one of these options:
Auto
— The block sets the maximum number of emissions to the number of sensors in the tracking scenario.Property
— Specify the maximum number of sensors by using the Maximum number of sensors parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Coverage or Sensor parameter.
Specify the maximum number of sensors as a positive integer.
Dependencies
To enable this parameter, set the Source of maximum number of
sensors parameter to Property
.
Specify the source of the maximum number of emitters that you can have in the tracking scenario as one of these options:
Auto
— The block sets the maximum number of emitters to the number of emitters in the tracking scenario.Property
— Specify the maximum number of emitters by using the Maximum number of emitters parameter.
Dependencies
To enable this port, in the Output Settings tab, select the Emitter or Sensor parameter.
Specify the maximum number of emitters as a positive integer.
Dependencies
To enable this parameter, set the Source of maximum number of
emitters parameter to Property
.
Version History
Introduced in R2021bAs of R2023a, the Simulink buses created by this block no longer show in MATLAB workspace.
See Also
trackingScenario
| Tracking Scenario Designer | fusionRadarSensor
| monostaticLidarSensor
| radarEmitter
| sonarEmitter
Topics
- Create Nonvirtual Buses (Simulink)
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)