DriveWorks SDK Reference
3.0.4260 Release
For Test and Development only

MapNet.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_DNN_MAPNET_H_
49 #define DW_DNN_MAPNET_H_
50 
51 #include <dw/core/Context.h>
52 #include <dw/dnn/DNN.h>
53 
54 #ifdef __cplusplus
55 extern "C" {
56 #endif
57 
59 
62 typedef struct dwMapNetObject* dwMapNetHandle_t;
63 
65 typedef enum {
83 
85 typedef enum {
93 } dwMapNetType;
94 
95 typedef struct dwMapNetParams
96 {
98  dwMapNetType mapNetType;
106  const void* networkCustomData;
108 
117 dwStatus dwMapNet_initDefaultParams(dwMapNetParams* params, dwMapNetType mapnetType, dwContextHandle_t ctx);
118 
130 dwStatus dwMapNet_initialize(dwMapNetHandle_t* mapNetHandle,
131  const dwMapNetParams* mapNetParams,
132  dwContextHandle_t ctx);
133 
142 dwStatus dwMapNet_reset(dwMapNetHandle_t obj);
143 
153 dwStatus dwMapNet_release(dwMapNetHandle_t obj);
154 
165 dwStatus dwMapNet_getInputBlobsize(dwBlobSize* inputBlobsize, dwMapNetHandle_t obj);
166 
178 dwStatus dwMapNet_getClassLabel(const char** classLabel, uint32_t classIdx, dwMapNetHandle_t obj);
179 
190 dwStatus dwMapNet_getDNNMetaData(dwDNNMetaData* metaData, dwMapNetHandle_t obj);
191 
192 #ifdef __cplusplus
193 }
194 #endif
195 
196 #endif // DW_DNN_MAPNET_H_
dwProcessorType processorType
Processor type. Supported processors: GPU, DLA (only on DDPX)
Definition: MapNet.h:104
Regression based detection model.
Definition: MapNet.h:89
DW_API_PUBLIC dwStatus dwMapNet_getClassLabel(const char **classLabel, uint32_t classIdx, dwMapNetHandle_t obj)
Returns the class label for a given class index.
DW_API_PUBLIC dwStatus dwMapNet_initDefaultParams(dwMapNetParams *params, dwMapNetType mapnetType, dwContextHandle_t ctx)
Initializes MapNet parameters with default values.
DW_API_PUBLIC dwStatus dwMapNet_initialize(dwMapNetHandle_t *mapNetHandle, const dwMapNetParams *mapNetParams, dwContextHandle_t ctx)
Initializes MapNet module.
struct dwMapNetObject * dwMapNetHandle_t
Handle to a MapNet object.
Definition: MapNet.h:62
dwMapNetType mapNetType
MapNet category type(segmentation, regressor)
Definition: MapNet.h:98
dwPrecision
Definition: Types.h:140
MapNet model that performs single-class lane detection on front camera.
Definition: MapNet.h:71
Loads custom MapNet model if available.
Definition: MapNet.h:81
NVIDIA DriveWorks API: Core Methods
Holds blob dimensions.
Definition: DNNTypes.h:60
DW_API_PUBLIC dwStatus dwMapNet_getInputBlobsize(dwBlobSize *inputBlobsize, dwMapNetHandle_t obj)
Returns input blob size that MapNet expects.
NVIDIA DriveWorks API: DNN Methods
End to end based detection model.
Definition: MapNet.h:91
dwStatus
Status definition.
Definition: Status.h:166
const void * networkCustomData
Custom network data. Must be set if custom model is selected and available.
Definition: MapNet.h:106
dwProcessorType
Processor type definitions.
Definition: Types.h:159
DW_API_PUBLIC dwStatus dwMapNet_reset(dwMapNetHandle_t obj)
Resets MapNet.
dwMapNetModel
MapNet network models to be loaded by MapNet module.
Definition: MapNet.h:65
MapNet model that performs multi-class lane detection on front camera.
Definition: MapNet.h:68
MapNet model that performs detection by end to end based approach.
Definition: MapNet.h:77
MapNet model that performs detection by regression.
Definition: MapNet.h:74
DW_API_PUBLIC dwStatus dwMapNet_release(dwMapNetHandle_t obj)
Releases the MapNet module.
struct dwContextObject * dwContextHandle_t
Context handle.
Definition: Context.h:80
dwMapNetType
MapNet type.
Definition: MapNet.h:85
Specifies TensorRT model header.
Definition: DNN.h:69
dwPrecision networkPrecision
MapNet network precision. Default is DW_PRECISION_FP32.
Definition: MapNet.h:102
dwMapNetModel networkModel
MapNet network model. Default is DW_MAPNET_MODEL_FRONT_MULTI_CLASS.
Definition: MapNet.h:100
Segmentation based detection model.
Definition: MapNet.h:87
DW_API_PUBLIC dwStatus dwMapNet_getDNNMetaData(dwDNNMetaData *metaData, dwMapNetHandle_t obj)
Returns the DNN metadata.
#define DW_API_PUBLIC
Definition: Exports.h:56