DriveWorks SDK Reference

| 0.6.67 Release

Object.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) 2016-2017 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 
45 #ifndef DW_OBJECT_OBJECT_H__
46 #define DW_OBJECT_OBJECT_H__
47 
48 #include <dw/core/Context.h>
49 
50 #ifdef __cplusplus
51 extern "C" {
52 #endif
53 
55 
57 #define DW_OBJECT_MAX_CLASSES 32
58 
59 typedef struct dwObject {
65  uint32_t classId;
85  uint32_t numMembers;
87  uint32_t lifetime;
91  uint32_t objectId;
99 } dwObject;
100 
102 typedef struct dwObjectList {
106  uint32_t count;
107 } dwObjectList;
108 
129 dwStatus dwObject_merge(dwObject *mergedObjects, size_t *numMergedObjects, size_t maxNumMergedObjects,
130  const dwObject * const* objectLists, const size_t *numObjectsPerList, size_t numLists,
131  float32_t thresholdIOU, float32_t maxMatchDistance, dwContextHandle_t ctx);
132 
133 #ifdef __cplusplus
134 }
135 #endif
136 
137 #endif // DW_OBJECT_OBJECT_H__
float32_t confidence
Confidence of the object.
Definition: Object.h:81
float float32_t
Specifies POD types.
Definition: Types.h:77
uint32_t numMembers
Number of members of the object if the object is formed by other objects via clustering.
Definition: Object.h:85
dwBox2Df box
Bounding box of the detected object.
Definition: Object.h:61
dwObject * objects
Pointer to array of objects.
Definition: Object.h:104
uint32_t count
The number of objects in the array.
Definition: Object.h:106
Defines a three-element floating-point vector.
Definition: Types.h:225
dwBox2Df boxVariance
Variance of bounding boxes of the members of the cluster.
Definition: Object.h:63
uint64_t dwTime_t
Specifies a timestamp unit, in microseconds.
Definition: Types.h:89
float32_t orientationYaw
Yaw orientation of the object.
Definition: Object.h:71
NVIDIA DriveWorks API: Core Methods
Definition: Types.h:162
uint32_t objectId
Object ID. A within-class unique id assigned by dwObjectTracking module.
Definition: Object.h:91
float32_t horizontalVisibility
Visibility flags Probability estimation between 0 (occluded) - 1 (visible), whether object&#39;s width is...
Definition: Object.h:76
dwStatus
Status definition.
Definition: Status.h:167
float32_t bottomVisibility
Whether object&#39;s bottom is fully visible or not.
Definition: Object.h:79
A list of dwObject.
Definition: Object.h:102
float32_t trackingConfidence
Tracking confidence of the object.
Definition: Object.h:83
dwBool isConfirmed
Is object confirmed? Not confirmed object needs to be tracked and maintained internally, but should not be displayed and used.
Definition: Object.h:94
uint32_t classId
Class ID of the detected object.
Definition: Object.h:65
uint8_t dwBool
Definition: Types.h:79
struct dwContextObject * dwContextHandle_t
Context handle.
Definition: Context.h:78
DW_API_PUBLIC dwStatus dwObject_merge(dwObject *mergedObjects, size_t *numMergedObjects, size_t maxNumMergedObjects, const dwObject *const *objectLists, const size_t *numObjectsPerList, size_t numLists, float32_t thresholdIOU, float32_t maxMatchDistance, dwContextHandle_t ctx)
Merges an object with another in any other list if the intersection over union is over the given thre...
uint32_t numUndetectedFrames
Number of frames since the object was detected last time.
Definition: Object.h:89
uint32_t lifetime
Lifetime of the object in frames. The first time the object is detected, it is set to 1...
Definition: Object.h:87
dwTime_t timestamp
Timestamp.
Definition: Object.h:98
#define DW_API_PUBLIC
Definition: Exports.h:76
dwVector3f velocity
Velocity of the object in x, y image space coordinates and z in scale factor.
Definition: Object.h:96