DriveWorks SDK Reference
3.5.78 Release
For Test and Development only

WaitNet.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) 2018-2019 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 
48 #ifndef DW_WAITNET_H_
49 #define DW_WAITNET_H_
50 
51 #include <dw/waitcondition/camera/WaitConditionsGeometry.h>
52 #include <dw/core/Context.h>
53 #include <dw/dnn/DNN.h>
54 
55 #ifdef __cplusplus
56 extern "C" {
57 #endif
58 
60 
63 typedef struct dwWaitNetObject* dwWaitNetHandle_t;
64 
66 typedef enum dwWaitNetModel {
78 
79 typedef struct dwWaitNetParams
80 {
90 
102 
114 dwStatus dwWaitNet_initialize(dwWaitNetHandle_t* waitnetHandle,
115  const dwWaitNetParams* waitnetParams,
116  dwContextHandle_t ctx);
117 
127 dwStatus dwWaitNet_reset(dwWaitNetHandle_t obj);
128 
140 dwStatus dwWaitNet_release(dwWaitNetHandle_t obj);
141 
157 dwStatus dwWaitNet_getAvailableClasses(const dwWaitConditionObjectClass** intersectionClasses, const dwWaitConditionObjectClass** trafficControlClasses, uint32_t* numIntersectionClasses, uint32_t* numTrafficControlClasses, dwWaitNetHandle_t obj);
168 dwStatus dwWaitNet_getInputBlobsize(dwBlobSize* inputBlobsize, dwWaitNetHandle_t obj);
169 
181 dwStatus dwWaitNet_getOutputBlobsize(dwBlobSize* outputBlobsize, uint32_t blobIdx, dwWaitNetHandle_t obj);
182 
183 #ifdef __cplusplus
184 }
185 #endif
186 
187 #endif // DW_WAITNET_H_
dwPrecision
Definition: Types.h:140
DW_API_PUBLIC dwStatus dwWaitNet_initialize(dwWaitNetHandle_t *waitnetHandle, const dwWaitNetParams *waitnetParams, dwContextHandle_t ctx)
Initializes WaitNet module.
DW_API_PUBLIC dwStatus dwWaitNet_reset(dwWaitNetHandle_t obj)
Resets WaitNet.
model count
Definition: WaitNet.h:73
NVIDIA DriveWorks API: Core Methods
dwWaitNetModel
WaitNet network models to be loaded by WaitNet module.
Definition: WaitNet.h:66
model that detects multiple intersections, waypoints, traffic lights (TL) and road signs (RS) per fra...
Definition: WaitNet.h:71
DW_API_PUBLIC dwStatus dwWaitNet_getInputBlobsize(dwBlobSize *inputBlobsize, dwWaitNetHandle_t obj)
Returns input blob size that WaitNet expects.
NVIDIA DriveWorks API: DNN Methods
dwStatus
Status definition.
Definition: Status.h:178
dwPrecision networkPrecision
Waitnet network precision. Default is DW_PRECISION_FP32.
Definition: WaitNet.h:84
DW_API_PUBLIC dwStatus dwWaitNet_getOutputBlobsize(dwBlobSize *outputBlobsize, uint32_t blobIdx, dwWaitNetHandle_t obj)
Returns output blob size that WaitNet expects.
Holds blob dimensions.
Definition: Types.h:560
uint32_t maxClustersPerClass
Maximum number of clusters per class.
Definition: WaitNet.h:88
uint32_t maxProposalsPerClass
Maximum number of RAW detections per class directly obtained from DNN.
Definition: WaitNet.h:86
DW_API_PUBLIC dwStatus dwWaitNet_getAvailableClasses(const dwWaitConditionObjectClass **intersectionClasses, const dwWaitConditionObjectClass **trafficControlClasses, uint32_t *numIntersectionClasses, uint32_t *numTrafficControlClasses, dwWaitNetHandle_t obj)
Returns the object classes that WaitNet can detect.
dwWaitNetModel networkModel
Waitnet network model. Default is DW_WAITNET_MODEL_DETECTION.
Definition: WaitNet.h:82
struct dwWaitNetObject * dwWaitNetHandle_t
Handle to a WaitNet object.
Definition: WaitNet.h:63
struct dwContextObject * dwContextHandle_t
Context handle.
Definition: Context.h:80
WaitNet models model that detects multiple intersections plus traffic lights (TL) and road signs (RS)...
Definition: WaitNet.h:69
DW_API_PUBLIC dwStatus dwWaitNet_release(dwWaitNetHandle_t obj)
Releases the WaitNet module.
DW_API_PUBLIC dwStatus dwWaitNet_initDefaultParams(dwWaitNetParams *params, dwContextHandle_t ctx)
Initializes WaitNet parameters with default values.
Loads custom SignNet model if available.
Definition: WaitNet.h:76
#define DW_API_PUBLIC
Definition: Exports.h:56