DriveWorks SDK Reference
3.5.78 Release
For Test and Development only

ObjectDetector_processpipeline.h
Go to the documentation of this file.
1 // This code contains IDIA Confidential Information and is disclosed
3 // under the Mutual Non-Disclosure Agreement.
4 //
5 // Notice
6 // ALL IDIA 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) 2017-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 
47 #ifndef DW_OBJECT_OBJECTDETECTOR_PROCESSPIPELINE_H_
48 #define DW_OBJECT_OBJECTDETECTOR_PROCESSPIPELINE_H_
49 
51 
52 #ifdef __cplusplus
53 extern "C" {
54 #endif
55 
59 typedef enum {
68 
74 
79 
86 
90 typedef enum {
99 
105 
110 
117 
129 dwStatus dwObjectDetector_bindInput(const dwImageCUDA* const* images,
130  uint32_t imageCount, dwObjectDetectorHandle_t obj);
131 
142 
154  uint32_t imageIdx,
155  dwObjectClass objectClass,
177 dwStatus dwObjectDetector_setActiveImageIndices(const uint32_t* imageMap, uint32_t numImages,
179 
187 dwStatus dwObjectDetector_process(dwObjectDetectorStage stage, dwObjectDetectorHandle_t obj);
188 
196 dwStatus dwObjectDetector_processDLA(dwObjectDetectorDLAStage stage, dwObjectDetectorHandle_t obj);
197 
198 #ifdef __cplusplus
199 }
200 #endif
201 
203 #endif // DW_OBJECT_OBJECTDETECTOR_PROCESSPIPELINE_H_
dwObjectDetectorOutputType
The type of the detector output.
Defines a CUDA image.
Definition: Image.h:266
struct dwObjectDetectorObject * dwObjectDetectorHandle_t
Handle to an object detector.
DW_API_PUBLIC dwStatus dwObjectDetector_bindInputTensor(dwAutoNetOutputHandle_t netTensor, dwObjectDetectorHandle_t obj)
Binds the network inference output tensor.
dwObjectDetectorDLAStage
The DLA process stages of the ObjectDetector.
dwStatus
Status definition.
Definition: Status.h:178
After inference the GPU postprocesses the detections in device memory.
DW_API_PUBLIC dwStatus dwObjectDetector_process(dwObjectDetectorStage stage, dwObjectDetectorHandle_t obj)
Perform object detection GPU stages.
NVIDIA DriveWorks API: ObjectDetector Methods
DNN inference is run on the prepared images / batches asynchronously on the GPU.
DNN inference is run on the prepared images / batches asynchronously on the DLA device.
DW_API_PUBLIC dwStatus dwObjectDetector_setActiveImageIndices(const uint32_t *imageMap, uint32_t numImages, dwObjectDetectorHandle_t obj)
Set active images to infer (DW_OBJECT_DETECTOR_STAGE_GPU_ASYNC_INFERENCE) or interpret (DW_OBJECT_DET...
DW_API_PUBLIC dwStatus dwObjectDetector_processDLA(dwObjectDetectorDLAStage stage, dwObjectDetectorHandle_t obj)
Perform object detection DLA stages.
Input images are prepared by scaling, padding and performing other transformations set in dataConditi...
Input images are prepared by scaling, padding and performing other transformations set in dataConditi...
dwObjectDetectorStage
The GPU process stages of the ObjectDetector.
Homogeneous array of structs.
Definition: ObjectArray.h:68
DW_OBJECT_DETECTOR_STAGE_CPU_SYNC_POSTPROCESSING waits for the previous stage to finish processing an...
struct dwAutoNetOutputObject * dwAutoNetOutputHandle_t
Handle to a AutoNet output object.
Definition: AutoNet.h:71
DW_OBJECT_DETECTOR_STAGE_CPU_SYNC_POSTPROCESSING waits for the previous stage to finish processing an...
DW_API_PUBLIC dwStatus dwObjectDetector_bindOutput(dwObjectArray *objectArray, uint32_t imageIdx, dwObjectClass objectClass, dwObjectDetectorOutputType type, dwObjectDetectorHandle_t obj)
Bind the ouput of the detector to array of objects.
After inference the GPU postprocesses the detections in device memory.
dwObjectClass
Object classes known to DriveWorks.
Definition: Obstacle.h:110
#define DW_API_PUBLIC
Definition: Exports.h:56
DW_API_PUBLIC dwStatus dwObjectDetector_bindInput(const dwImageCUDA *const *images, uint32_t imageCount, dwObjectDetectorHandle_t obj)
Binds the input to the detector as a list of images.