DriveWorks SDK Reference
3.5.78 Release
For Test and Development only
SignalInterface.h
Go to the documentation of this file.
1
// This code contains NVIDIA Confidential Information and is disclosed
3
// under the Mutual Non-Disclosure Agreement.
4
//
5
// Notice
6
// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
7
// NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
8
// THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
9
// MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
10
//
11
// NVIDIA Corporation assumes no responsibility for the consequences of use of such
12
// information or for any infringement of patents or other rights of third parties that may
13
// result from its use. No license is granted by implication or otherwise under any patent
14
// or patent rights of NVIDIA Corporation. No third party distribution is allowed unless
15
// expressly authorized by NVIDIA. Details are subject to change without notice.
16
// This code supersedes and replaces all information previously supplied.
17
// NVIDIA Corporation products are not authorized for use as critical
18
// components in life support devices or systems without express written approval of
19
// NVIDIA Corporation.
20
//
21
// Copyright (c) 2020 NVIDIA Corporation. All rights reserved.
22
//
23
// NVIDIA Corporation and its licensors retain all intellectual property and proprietary
24
// rights in and to this software and related documentation and any modifications thereto.
25
// Any use, reproduction, disclosure or distribution of this software and related
26
// documentation without an express license agreement from NVIDIA Corporation is
27
// strictly prohibited.
28
//
30
31
#ifndef DW_WORLDMODEL_SIGNALINTERFACE_H_
32
#define DW_WORLDMODEL_SIGNALINTERFACE_H_
33
48
#include <
dw/core/Types.h
>
49
50
#ifdef __cplusplus
51
extern
"C"
{
52
#endif
53
54
#define DW_MAX_BULBS_PER_LIGHT 8
55
#define DW_TRAFFIC_LIGHT_STATES_MAX_COUNT 32
56
#define DW_TRAFFIC_LIGHT_ARRAY_MAX_COUNT 32
57
59
typedef
enum
dwTrafficLightColor
{
60
DW_TRAFFIC_LIGHT_COLOR_INVALID
= 0,
61
DW_TRAFFIC_LIGHT_COLOR_UNKNOWN
= 1,
62
DW_TRAFFIC_LIGHT_COLOR_NONE
= 2,
63
DW_TRAFFIC_LIGHT_COLOR_GREEN
= 3,
64
DW_TRAFFIC_LIGHT_COLOR_RED
= 4,
65
DW_TRAFFIC_LIGHT_COLOR_YELLOW
= 5,
66
DW_TRAFFIC_LIGHT_COLOR_ORANGE
= 6,
67
DW_TRAFFIC_LIGHT_COLOR_WHITE
= 7,
68
69
DW_TRAFFIC_LIGHT_COLOR_COUNT
= 8,
70
}
dwTrafficLightColor
;
71
73
typedef
enum
dwTrafficLightMode
{
74
DW_TRAFFIC_LIGHT_MODE_INVALID
= 0,
75
DW_TRAFFIC_LIGHT_MODE_UNKNOWN
= 1,
76
DW_TRAFFIC_LIGHT_MODE_CONSTANT
= 2,
77
DW_TRAFFIC_LIGHT_MODE_OCCLUDED
= 3,
78
DW_TRAFFIC_LIGHT_MODE_SELF_OCCLUDED
= 4,
79
DW_TRAFFIC_LIGHT_MODE_FLASHING
= 5,
80
DW_TRAFFIC_LIGHT_MODE_COUNTER
= 6,
81
DW_TRAFFIC_LIGHT_MODE_COUNT
= 7,
82
}
dwTrafficLightMode
;
83
85
typedef
enum
dwTrafficLightShape
{
86
DW_TRAFFIC_LIGHT_SHAPE_INVALID
= 0,
87
DW_TRAFFIC_LIGHT_SHAPE_UNKNOWN
= 1,
88
DW_TRAFFIC_LIGHT_SHAPE_CIRCLE_SOLID
= 2,
89
DW_TRAFFIC_LIGHT_SHAPE_ARROW_STRAIGHT
= 3,
90
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DOWN
= 4,
91
DW_TRAFFIC_LIGHT_SHAPE_ARROW_LEFT
= 5,
92
DW_TRAFFIC_LIGHT_SHAPE_ARROW_RIGHT
= 6,
93
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_UP_RIGHT
= 7,
94
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_UP_LEFT
= 8,
95
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_DOWN_RIGHT
= 9,
96
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_DOWN_LEFT
= 10,
97
DW_TRAFFIC_LIGHT_SHAPE_ARROW_LEFT_U_TURN
= 11,
98
DW_TRAFFIC_LIGHT_SHAPE_ARROW_RIGHT_U_TURN
= 12,
99
DW_TRAFFIC_LIGHT_SHAPE_PEDESTRIAN
= 13,
100
DW_TRAFFIC_LIGHT_SHAPE_HAND
= 14,
101
DW_TRAFFIC_LIGHT_SHAPE_VERTICAL_BLOCK
= 15,
102
DW_TRAFFIC_LIGHT_SHAPE_DIAGONAL_BLOCK_LEFT
= 16,
103
DW_TRAFFIC_LIGHT_SHAPE_DIAGONAL_BLOCK_RIGHT
= 17,
104
DW_TRAFFIC_LIGHT_SHAPE_HORIZONTAL_BLOCK
= 18,
105
DW_TRAFFIC_LIGHT_SHAPE_BICYCLE
= 19,
106
DW_TRAFFIC_LIGHT_SHAPE_COUNTER
= 20,
107
DW_TRAFFIC_LIGHT_SHAPE_CROSS
= 21,
108
DW_TRAFFIC_LIGHT_SHAPE_LETTERS
= 22,
109
DW_TRAFFIC_LIGHT_SHAPE_NUMBERS
= 23,
110
DW_TRAFFIC_LIGHT_SHAPE_OTHER
= 24,
111
DW_TRAFFIC_LIGHT_SHAPE_COUNT
= 25,
112
}
dwTrafficLightShape
;
113
115
typedef
enum
dwTrafficSignalSubject
{
116
DW_TRAFFIC_SIGNAL_SUBJECT_INVALID
= 0,
117
DW_TRAFFIC_SIGNAL_SUBJECT_UNKNOWN
= 1,
118
DW_TRAFFIC_SIGNAL_SUBJECT_ALL_SUBJECTS
= 2,
119
DW_TRAFFIC_SIGNAL_SUBJECT_VEHICLE
= 3,
120
DW_TRAFFIC_SIGNAL_SUBJECT_TRUCK
= 4,
121
DW_TRAFFIC_SIGNAL_SUBJECT_TRAM
= 5,
122
DW_TRAFFIC_SIGNAL_SUBJECT_PEDESTRIAN
= 6,
123
DW_TRAFFIC_SIGNAL_SUBJECT_BIKE
= 7,
124
DW_TRAFFIC_SIGNAL_SUBJECT_MOTORCYCLE
= 8,
125
DW_TRAFFIC_SIGNAL_SUBJECT_VEHICLES_ON_TRACKS
= 9,
126
DW_TRAFFIC_SIGNAL_SUBJECT_TAXI
= 10,
127
DW_TRAFFIC_SIGNAL_SUBJECT_BUS
= 11,
128
DW_TRAFFIC_SIGNAL_SUBJECT_TRACTOR
= 12,
129
DW_TRAFFIC_SIGNAL_SUBJECT_LONG_TRUCK
= 13,
130
DW_TRAFFIC_SIGNAL_SUBJECT_MOPED
= 14,
131
DW_TRAFFIC_SIGNAL_SUBJECT_EMERGENCY_VEHICLES
= 15,
132
DW_TRAFFIC_SIGNAL_SUBJECT_ACCESSIBLE_VEHICLES
= 16,
133
DW_TRAFFIC_SIGNAL_SUBJECT_COUNT
= 17
134
}
dwTrafficSignalSubject
;
135
137
typedef
struct
dwSignalBody
138
{
139
dwTime_t
timestamp_us
;
140
uint64_t
trackId
;
141
float32_t
confidence
;
142
uint64_t
sensorIdMask
;
143
dwVector3f
position
;
144
dwConfidence3f
positionConfidence
;
145
dwVector3f
orientation
;
146
dwConfidence2f
orientationConfidence
;
147
}
dwSignalBody
;
148
150
typedef
struct
dwBulbState
151
{
152
dwTrafficLightColor
lightColor
;
153
dwTrafficLightShape
lightShape
;
154
dwTrafficSignalSubject
lightSubject
;
155
dwTrafficLightMode
lightMode
;
156
uint64_t
counterValue
;
157
}
dwBulbState
;
158
160
typedef
struct
dwTrafficLightState
161
{
162
float32_t
probability
;
163
dwBulbState
bulbStates[
DW_MAX_BULBS_PER_LIGHT
];
164
uint32_t
count
;
165
}
dwTrafficLightState
;
166
170
typedef
struct
dwTrafficLight
171
{
172
dwSignalBody
signalBody
;
173
dwTrafficLightState
lightStates[
DW_TRAFFIC_LIGHT_STATES_MAX_COUNT
];
174
uint32_t
lightStatesCount
;
175
}
dwTrafficLight
;
176
178
typedef
struct
dwTrafficLightsArray
179
{
180
dwTrafficLight
lights[
DW_TRAFFIC_LIGHT_ARRAY_MAX_COUNT
];
181
uint32_t
count
;
182
}
dwTrafficLightsArray
;
183
184
#ifdef __cplusplus
185
}
186
#endif
187
190
#endif // DW_WORLDMODEL_SIGNALINTERFACE_H_
DW_TRAFFIC_SIGNAL_SUBJECT_TRAM
Definition:
SignalInterface.h:121
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DOWN
Definition:
SignalInterface.h:90
dwSignalBody::confidence
float32_t confidence
Confidence value inferred by the tracker that the traffic signal exists.
Definition:
SignalInterface.h:141
dwSignalBody::orientationConfidence
dwConfidence2f orientationConfidence
Confidence on the traffic signal orientation.
Definition:
SignalInterface.h:146
DW_TRAFFIC_LIGHT_MODE_OCCLUDED
Definition:
SignalInterface.h:77
DW_TRAFFIC_SIGNAL_SUBJECT_BUS
Definition:
SignalInterface.h:127
Types.h
NVIDIA DriveWorks API: Core Types
dwTrafficSignalSubject
dwTrafficSignalSubject
Type of actors that the Traffic Light apaplies to.
Definition:
SignalInterface.h:115
float32_t
float float32_t
Specifies POD types.
Definition:
Types.h:70
DW_TRAFFIC_LIGHT_COLOR_GREEN
Definition:
SignalInterface.h:63
DW_TRAFFIC_LIGHT_SHAPE_DIAGONAL_BLOCK_LEFT
Definition:
SignalInterface.h:102
DW_TRAFFIC_LIGHT_COLOR_RED
Definition:
SignalInterface.h:64
DW_TRAFFIC_LIGHT_SHAPE_CIRCLE_SOLID
Definition:
SignalInterface.h:88
dwVector3f
Defines a three-element floating-point vector.
Definition:
Types.h:319
dwBulbState::lightShape
dwTrafficLightShape lightShape
Traffic light shape.
Definition:
SignalInterface.h:153
dwSignalBody::orientation
dwVector3f orientation
Orientation of the traffic signal.
Definition:
SignalInterface.h:145
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_UP_LEFT
Definition:
SignalInterface.h:94
dwTrafficLightMode
dwTrafficLightMode
Type of traffic light bulb mode.
Definition:
SignalInterface.h:73
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_DOWN_RIGHT
Definition:
SignalInterface.h:95
DW_TRAFFIC_LIGHT_COLOR_WHITE
Definition:
SignalInterface.h:67
DW_TRAFFIC_LIGHT_COLOR_ORANGE
Definition:
SignalInterface.h:66
dwBulbState::lightMode
dwTrafficLightMode lightMode
Traffic light mode.
Definition:
SignalInterface.h:155
DW_TRAFFIC_SIGNAL_SUBJECT_VEHICLE
Definition:
SignalInterface.h:119
DW_MAX_BULBS_PER_LIGHT
#define DW_MAX_BULBS_PER_LIGHT
Definition:
SignalInterface.h:54
DW_TRAFFIC_SIGNAL_SUBJECT_TAXI
Definition:
SignalInterface.h:126
DW_TRAFFIC_LIGHT_SHAPE_COUNTER
Definition:
SignalInterface.h:106
DW_TRAFFIC_LIGHT_SHAPE_CROSS
Definition:
SignalInterface.h:107
dwTrafficLight
Structure representing one physical light and the evidence (likelihood) distribution over its states ...
Definition:
SignalInterface.h:170
DW_TRAFFIC_SIGNAL_SUBJECT_COUNT
Definition:
SignalInterface.h:133
DW_TRAFFIC_LIGHT_SHAPE_ARROW_LEFT_U_TURN
Definition:
SignalInterface.h:97
dwConfidence3f
Definition:
Types.h:524
dwConfidence2f
Definition:
Types.h:517
DW_TRAFFIC_SIGNAL_SUBJECT_EMERGENCY_VEHICLES
Definition:
SignalInterface.h:131
DW_TRAFFIC_LIGHT_SHAPE_PEDESTRIAN
Definition:
SignalInterface.h:99
dwTrafficLightState
Structure representing one possible state of a traffic light.
Definition:
SignalInterface.h:160
DW_TRAFFIC_LIGHT_SHAPE_HORIZONTAL_BLOCK
Definition:
SignalInterface.h:104
DW_TRAFFIC_LIGHT_SHAPE_ARROW_RIGHT_U_TURN
Definition:
SignalInterface.h:98
dwSignalBody::sensorIdMask
uint64_t sensorIdMask
Bitmask indicating which sensors agreed with this.
Definition:
SignalInterface.h:142
DW_TRAFFIC_LIGHT_SHAPE_ARROW_LEFT
Definition:
SignalInterface.h:91
DW_TRAFFIC_SIGNAL_SUBJECT_BIKE
Definition:
SignalInterface.h:123
DW_TRAFFIC_LIGHT_COLOR_YELLOW
Definition:
SignalInterface.h:65
DW_TRAFFIC_LIGHT_SHAPE_OTHER
Definition:
SignalInterface.h:110
DW_TRAFFIC_LIGHT_SHAPE_DIAGONAL_BLOCK_RIGHT
Definition:
SignalInterface.h:103
DW_TRAFFIC_LIGHT_COLOR_INVALID
Definition:
SignalInterface.h:60
DW_TRAFFIC_LIGHT_MODE_COUNT
Definition:
SignalInterface.h:81
DW_TRAFFIC_LIGHT_MODE_SELF_OCCLUDED
Definition:
SignalInterface.h:78
DW_TRAFFIC_LIGHT_COLOR_NONE
Definition:
SignalInterface.h:62
DW_TRAFFIC_LIGHT_SHAPE_INVALID
Definition:
SignalInterface.h:86
DW_TRAFFIC_SIGNAL_SUBJECT_UNKNOWN
Definition:
SignalInterface.h:117
dwSignalBody::timestamp_us
dwTime_t timestamp_us
Global host system timestamp, the timestamp of the image that contained the sign/light.
Definition:
SignalInterface.h:139
DW_TRAFFIC_LIGHT_SHAPE_LETTERS
Definition:
SignalInterface.h:108
dwBulbState
Information about a traffic bulb object.
Definition:
SignalInterface.h:150
DW_TRAFFIC_LIGHT_SHAPE_HAND
Definition:
SignalInterface.h:100
DW_TRAFFIC_LIGHT_MODE_INVALID
Definition:
SignalInterface.h:74
dwTime_t
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
Definition:
Types.h:82
DW_TRAFFIC_SIGNAL_SUBJECT_ACCESSIBLE_VEHICLES
Definition:
SignalInterface.h:132
dwTrafficLightState::probability
float32_t probability
Evidence assigned to this state.
Definition:
SignalInterface.h:162
DW_TRAFFIC_SIGNAL_SUBJECT_PEDESTRIAN
Definition:
SignalInterface.h:122
DW_TRAFFIC_SIGNAL_SUBJECT_ALL_SUBJECTS
Definition:
SignalInterface.h:118
DW_TRAFFIC_LIGHT_SHAPE_COUNT
Definition:
SignalInterface.h:111
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_DOWN_LEFT
Definition:
SignalInterface.h:96
DW_TRAFFIC_SIGNAL_SUBJECT_MOTORCYCLE
Definition:
SignalInterface.h:124
DW_TRAFFIC_LIGHT_SHAPE_ARROW_RIGHT
Definition:
SignalInterface.h:92
dwTrafficLight::lightStatesCount
uint32_t lightStatesCount
Number of traffic light states/classes are given a non-negligible probability by classifier.
Definition:
SignalInterface.h:174
DW_TRAFFIC_LIGHT_MODE_FLASHING
Definition:
SignalInterface.h:79
dwTrafficLightsArray::count
uint32_t count
Number of traffic lights bounding boxes appear in a singla frame.
Definition:
SignalInterface.h:181
DW_TRAFFIC_SIGNAL_SUBJECT_INVALID
Definition:
SignalInterface.h:116
DW_TRAFFIC_SIGNAL_SUBJECT_TRUCK
Definition:
SignalInterface.h:120
DW_TRAFFIC_SIGNAL_SUBJECT_TRACTOR
Definition:
SignalInterface.h:128
DW_TRAFFIC_LIGHT_MODE_COUNTER
Definition:
SignalInterface.h:80
DW_TRAFFIC_LIGHT_MODE_UNKNOWN
Definition:
SignalInterface.h:75
dwBulbState::lightSubject
dwTrafficSignalSubject lightSubject
Actors the traffic light applies to.
Definition:
SignalInterface.h:154
dwTrafficLightState::count
uint32_t count
Number of light bulbs that defines a traffic light bounding box.
Definition:
SignalInterface.h:164
dwBulbState::lightColor
dwTrafficLightColor lightColor
Traffic light color.
Definition:
SignalInterface.h:152
dwBulbState::counterValue
uint64_t counterValue
Counter value (if any)
Definition:
SignalInterface.h:156
DW_TRAFFIC_LIGHT_SHAPE_UNKNOWN
Definition:
SignalInterface.h:87
DW_TRAFFIC_LIGHT_SHAPE_ARROW_STRAIGHT
Definition:
SignalInterface.h:89
DW_TRAFFIC_LIGHT_COLOR_COUNT
Definition:
SignalInterface.h:69
DW_TRAFFIC_LIGHT_MODE_CONSTANT
Definition:
SignalInterface.h:76
DW_TRAFFIC_LIGHT_SHAPE_ARROW_DIAGONAL_UP_RIGHT
Definition:
SignalInterface.h:93
DW_TRAFFIC_LIGHT_STATES_MAX_COUNT
#define DW_TRAFFIC_LIGHT_STATES_MAX_COUNT
Definition:
SignalInterface.h:55
dwTrafficLightsArray
Array of lights (light boards)
Definition:
SignalInterface.h:178
DW_TRAFFIC_SIGNAL_SUBJECT_VEHICLES_ON_TRACKS
Definition:
SignalInterface.h:125
dwTrafficLightColor
dwTrafficLightColor
Type of traffic light bulb color.
Definition:
SignalInterface.h:59
DW_TRAFFIC_LIGHT_ARRAY_MAX_COUNT
#define DW_TRAFFIC_LIGHT_ARRAY_MAX_COUNT
Definition:
SignalInterface.h:56
DW_TRAFFIC_LIGHT_SHAPE_VERTICAL_BLOCK
Definition:
SignalInterface.h:101
DW_TRAFFIC_LIGHT_SHAPE_NUMBERS
Definition:
SignalInterface.h:109
DW_TRAFFIC_SIGNAL_SUBJECT_LONG_TRUCK
Definition:
SignalInterface.h:129
dwSignalBody::position
dwVector3f position
3D Position information on a reference point on the traffic signal object
Definition:
SignalInterface.h:143
dwTrafficLight::signalBody
dwSignalBody signalBody
Physical property of a light.
Definition:
SignalInterface.h:172
dwSignalBody::trackId
uint64_t trackId
Track ID of the traffic signal object persistent over time.
Definition:
SignalInterface.h:140
DW_TRAFFIC_LIGHT_COLOR_UNKNOWN
Definition:
SignalInterface.h:61
dwTrafficLightShape
dwTrafficLightShape
Type of traffic light bulb shape.
Definition:
SignalInterface.h:85
dwSignalBody::positionConfidence
dwConfidence3f positionConfidence
Confidence on the traffic signal position.
Definition:
SignalInterface.h:144
DW_TRAFFIC_LIGHT_SHAPE_BICYCLE
Definition:
SignalInterface.h:105
DW_TRAFFIC_SIGNAL_SUBJECT_MOPED
Definition:
SignalInterface.h:130
dwSignalBody
Attributes to represent one physical traffic light/sign.
Definition:
SignalInterface.h:137
Advance Information | Subject to Change | Prepared and Provided under NDA | Generated by NVIDIA | Mon Nov 16 2020 19:14:16 | PR-08397-V5.0