objectDetection
Report for single object detection
Description
An objectDetection
object contains an object detection report that was obtained by a sensor for a
single object. You can use the objectDetection
output as the input to trackers such as radarTracker
.
Creation
Description
creates an object detection
= objectDetection(time
,measurement
)detection
at the specified
time
from the specified
measurement
.
creates a detection
= objectDetection(___,Name,Value
)detection
object with properties specified as one
or more Name,Value
pair arguments. Any unspecified
properties have default values. You cannot specify the Time
or Measurement
properties using Name,Value
pairs.
Input Arguments
time
— Detection time
nonnegative real scalar
Detection time, specified as a nonnegative real scalar. This argument sets the Time
property.
measurement
— Object measurement
real-valued N-element vector
Object measurement, specified as a real-valued
N-element vector. N is determined
by the coordinate system used to report detections and other parameters
that you specify in the MeasurementParameters
property for the
objectDetection
object.
This argument sets the Measurement
property.
Output Arguments
detection
— Detection report
objectDetection
object
Detection report for a single object, returned as an
objectDetection
object. An
objectDetection
object contains these
properties:
Property | Definition |
---|---|
Time | Measurement time |
Measurement | Object measurements |
MeasurementNoise | Measurement noise covariance matrix |
SensorIndex | Unique ID of the sensor |
ObjectClassID | Object classification |
ObjectAttributes | Additional information passed to tracker |
MeasurementParameters | Parameters used by initialization functions of nonlinear Kalman tracking filters |
Properties
Time
— Detection time
nonnegative real scalar
Detection time, specified as a nonnegative real scalar. You cannot set this property as a
name-value pair. Use the time
input argument
instead.
Example: 5.0
Data Types: double
Measurement
— Object measurement
real-valued N-element vector
Object measurement, specified as a real-valued N-element vector. You cannot
set this property as a name-value pair. Use the
measurement
input argument instead.
Example: [1.0;-3.4]
Data Types: double
| single
MeasurementNoise
— Measurement noise covariance
scalar | real positive semi-definite symmetric N-by-N matrix
Measurement noise covariance, specified as a scalar or a real positive semi-definite symmetric N-by-N matrix. N is the number of elements in the measurement vector. For the scalar case, the matrix is a square diagonal N-by-N matrix having the same data interpretation as the measurement.
Example: [5.0,1.0;1.0,10.0]
Data Types: double
| single
SensorIndex
— Sensor identifier
1
| positive integer
Sensor identifier, specified as a positive integer. The sensor identifier lets you distinguish between different sensors and must be unique to the sensor.
Example: 5
Data Types: double
ObjectClassID
— Object class identifier
0
(default) | positive integer
Object class identifier, specified as a positive
integer. Object class identifiers distinguish between different kinds of
objects. The value 0
denotes an unknown object type. If
the class identifier is nonzero, radarTracker
immediately creates a confirmed track from the detection.
Example: 1
Data Types: double
MeasurementParameters
— Measurement function parameters
{}
(default) | structure array | cell containing structure array | cell array
Measurement function parameters, specified as a structure array, a cell containing a structure
array, or a cell array. The property contains all the arguments used by the
measurement function specified by the MeasurementFcn
property of a nonlinear tracking filter such as trackingEKF
or trackingUKF
.
The table shows sample fields for the
MeasurementParameters
structures.
Field | Description | Example |
---|---|---|
Frame | Frame used to report measurements, specified as one of these values:
| 'spherical' |
OriginPosition | Position offset of the origin of the frame relative to the parent frame, specified as an [x y z] real-valued vector. | [0 0 0] |
OriginVelocity | Velocity offset of the origin of the frame relative to the parent frame, specified as a [vx vy vz] real-valued vector. | [0 0 0] |
Orientation | Frame rotation matrix, specified as a 3-by-3 real-valued orthonormal matrix. | [1 0 0; 0 1 0; 0 0 1] |
HasAzimuth | Logical scalar indicating if azimuth is included in the measurement. | 1 |
HasElevation | Logical scalar indicating if elevation is included in the measurement. For measurements reported in a rectangular frame, and if HasElevation is false, the reported measurements assume 0 degrees of elevation. | 1 |
HasRange | Logical scalar indicating if range is included in the measurement. | 1 |
HasVelocity | Logical scalar indicating if the reported detections include velocity measurements. For measurements reported in the rectangular frame, if HasVelocity is false, the measurements are reported as [x y z] . If HasVelocity is true , measurements are reported as [x y z vx vy vz] . | 1 |
IsParentToChild | Logical scalar indicating if Orientation performs a frame rotation from the parent coordinate frame to the child coordinate frame. When IsParentToChild is false , then Orientation performs a frame rotation from the child coordinate frame to the parent coordinate frame. | 0 |
ObjectAttributes
— Object attributes
{}
(default) | cell array
Object attributes passed through the tracker,
specified as a cell array. These attributes are added to the output of the
radarTracker
but not used by the tracker.
Example: {[10,20,50,100],'radar1'}
Examples
Create Detection from Position Measurement
Create a detection from a position measurement. The detection is made at a timestamp of one second from a position measurement of [100;250;10]
in Cartesian coordinates.
detection = objectDetection(1,[100;250;10])
detection = objectDetection with properties: Time: 1 Measurement: [3x1 double] MeasurementNoise: [3x3 double] SensorIndex: 1 ObjectClassID: 0 MeasurementParameters: {} ObjectAttributes: {}
Create Detection With Measurement Noise
Create an objectDetection
from a time and position measurement. The detection is made at a time of one second for an object position measurement of [100;250;10]
. Add measurement noise and set other properties using Name-Value pairs.
detection = objectDetection(1,[100;250;10],'MeasurementNoise',10, ... 'SensorIndex',1,'ObjectAttributes',{'Example object',5})
detection = objectDetection with properties: Time: 1 Measurement: [3x1 double] MeasurementNoise: [3x3 double] SensorIndex: 1 ObjectClassID: 0 MeasurementParameters: {} ObjectAttributes: {'Example object' [5]}
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Version History
Open Example
You have a modified version of this example. Do you want to open this example with your edits?
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)