NVIDIA DeepStream SDK API Reference

7.0 Release
post_processor_struct.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: MIT
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice shall be included in
13  * all copies or substantial portions of the Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21  * DEALINGS IN THE SOFTWARE.
22  */
23 
24 #ifndef __POST_PROCESS_STRUCT_HPP__
25 #define __POST_PROCESS_STRUCT_HPP__
26 
27 #include <iostream>
28 #include <vector>
29 #include <memory>
30 #include "gstnvdsinfer.h"
31 
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 #define _PATH_MAX 4096
38 #define _MAX_STR_LENGTH 1024
39 
43 #define getDimsCHWFromDims(dimsCHW,dims) \
44  do { \
45  (dimsCHW).c = (dims).d[0]; \
46  (dimsCHW).h = (dims).d[1]; \
47  (dimsCHW).w = (dims).d[2]; \
48  } while (0)
49 
50 #define getDimsHWCFromDims(dimsCHW,dims) \
51  do { \
52  (dimsCHW).h = (dims).d[0]; \
53  (dimsCHW).w = (dims).d[1]; \
54  (dimsCHW).c = (dims).d[2]; \
55  } while (0)
56 
57 #define DIVIDE_AND_ROUND_UP(a, b) ((a + b - 1) / b)
58 
59 inline const char *safeStr(const std::string &str)
60 {
61  return str.c_str();
62 }
63 
64 inline bool string_empty(const char* str) {
65  return !str || strlen(str) == 0;
66 }
67 
68 constexpr float DEFAULT_PRE_CLUSTER_THRESHOLD = 0.2;
69 constexpr float DEFAULT_POST_CLUSTER_THRESHOLD = 0.0;
70 constexpr float DEFAULT_EPS = 0.0;
71 constexpr int DEFAULT_GROUP_THRESHOLD = 0;
72 constexpr int DEFAULT_MIN_BOXES = 0;
73 constexpr float DEFAULT_DBSCAN_MIN_SCORE = 0;
74 constexpr float DEFAULT_NMS_IOU_THRESHOLD = 0.3;
75 constexpr int DEFAULT_TOP_K = -1;
76 constexpr bool ATHR_ENABLED = true;
77 constexpr float ATHR_THRESHOLD = 60.0;
78 constexpr int PROCESS_MODEL_FULL_FRAME = 1;
79 constexpr int PROCESS_MODEL_OBJECTS = 2;
80 
84 typedef enum {
103 
104 
105 typedef enum {
111 
112 #define printMsg(level, tag_str, fmt, ...) \
113  do { \
114  char* baseName = strrchr((char*)__FILE__, '/'); \
115  baseName = (baseName) ? (baseName + 1) : (char*)__FILE__; \
116  char logMsgBuffer[5 * _MAX_STR_LENGTH + 1]; \
117  snprintf(logMsgBuffer, 5 * _MAX_STR_LENGTH, \
118  tag_str " NvDsPostProcess::%s() <%s:%d> : " fmt, \
119  __func__, baseName, __LINE__, ##__VA_ARGS__); \
120  fprintf(stderr, "%s\n", logMsgBuffer); \
121  } while (0)
122 
123 #define printError(fmt, ...) \
124  do { \
125  printMsg (NVDSINFER_LOG_ERROR, "Error in", fmt, ##__VA_ARGS__); \
126  } while (0)
127 
128 #define printWarning(fmt, ...) \
129  do { \
130  printMsg (NVDSINFER_LOG_WARNING, "Warning from", fmt, ##__VA_ARGS__); \
131  } while (0)
132 
133 #define printInfo(fmt, ...) \
134  do { \
135  printMsg (NVDSINFER_LOG_INFO, "Info from", fmt, ##__VA_ARGS__); \
136  } while (0)
137 
138 #define printDebug(fmt, ...) \
139  do { \
140  printMsg (NVDSINFER_LOG_DEBUG, "DEBUG", fmt, ##__VA_ARGS__); \
141  } while (0)
142 
143 typedef struct
144 {
145  unsigned int roiTopOffset;
146  unsigned int roiBottomOffset;
147  unsigned int detectionMinWidth;
148  unsigned int detectionMinHeight;
149  unsigned int detectionMaxWidth;
150  unsigned int detectionMaxHeight;
152 
156 typedef struct
157 {
160 
164 
165 
169 typedef enum
170 {
177 
181 typedef enum {
186 
187 
191 typedef enum
192 {
212 
216 typedef struct
217 {
221 
225 
228  float eps;
231  int minBoxes;
238  float minScore;
243  int topK;
244 
245  unsigned int roiTopOffset;
246  unsigned int roiBottomOffset;
247  unsigned int detectionMinWidth;
248  unsigned int detectionMinHeight;
249  unsigned int detectionMaxWidth;
250  unsigned int detectionMaxHeight;
252 
254 
255 
256 
261 {
264  unsigned int uniqueID;
265 
269  unsigned int maxBatchSize;
270 
275 
276 
279 
281  unsigned int numDetectedClasses;
282 
286 
290 
292 
296  unsigned int numOutputLayers;
297 
299  unsigned int gpuID;
300 
303 
306 
310 
317 
320 
323 
327 typedef struct
328 {
330  unsigned int classId;
331 
333  float left;
335  float top;
337  float width;
339  float height;
340 
345 
349 typedef struct
350 {
354  unsigned int attributeIndex;
356  unsigned int attributeValue;
364 
365 
370 
374 typedef struct
375 {
377  unsigned int classId;
378 
380  float left;
382  float top;
384  float width;
386  float height;
387 
391 
393  float *mask;
395  unsigned int mask_width;
397  unsigned int mask_height;
399  unsigned int mask_size;
401 
405 typedef struct
406 {
408  float left;
410  float top;
412  float width;
414  float height;
418  char *label;
419  /* confidence score of the detected object. */
420  float confidence;
421  /* Instance mask information for the object. */
422  float *mask;
424  unsigned int mask_width;
426  unsigned int mask_height;
428  unsigned int mask_size;
430 
435 typedef struct
436 {
440  unsigned int numObjects;
442 
447 typedef struct
448 {
454  unsigned int numAttributes;
457  char *label;
459 
463 typedef struct
464 {
466  unsigned int width;
468  unsigned int height;
470  unsigned int classes;
473  int *class_map;
479 
483 typedef struct
484 {
491  union
492  {
502  };
504 
509 typedef struct
510 {
514  unsigned int numFrames;
515 
521 
524  void **hostBuffers;
526  unsigned int numHostBuffers;
527 
529  void* priv;
531 
532 #ifdef __cplusplus
533 }
534 #endif
535 
539 typedef struct
540 {
544  unsigned int numClassesConfigured;
550  std::vector<float> perClassPreclusterThreshold;
551  /* Per-class threshold to be applied after the clustering operation. */
552  std::vector<float> perClassPostclusterThreshold;
553 
555 
556 
560  std::vector<NvDsPostProcessAttribute> attributes;
562  std::string label;
563 
565  NvDsPostProcessObjectInfo() = default;
567  for (auto &attr : attributes) {
568  if (attr.attributeLabel)
569  free (attr.attributeLabel);
570  }
571  }
572 };
573 
574 
580 {
586  unsigned long last_inferred_frame_num;
590  unsigned long last_accessed_frame_num;
594 
595 
596 #endif
NvDsPostProcessObject
Holds information about one detected object.
Definition: post_processor_struct.h:405
_NvDsPostProcessContextInitParams::clusterMode
NvDsPostProcessClusterMode clusterMode
Holds the type of clustering mode.
Definition: post_processor_struct.h:305
NvDsPostProcessBatchOutput::numFrames
unsigned int numFrames
Holds the number of elements in frames.
Definition: post_processor_struct.h:514
NvDsPostProcessObjectInfo::label
std::string label
Cached string label.
Definition: post_processor_struct.h:562
NvDsPostProcessBatchOutput::numOutputDeviceBuffers
unsigned int numOutputDeviceBuffers
Holds the number of elements in *outputDeviceBuffers.
Definition: post_processor_struct.h:520
NvDsPostProcessContextInitParams
struct _NvDsPostProcessContextInitParams NvDsPostProcessContextInitParams
Holds the initialization parameters required for the NvDsPostProcessContext interface.
NvDsPostProcessObjectInfo::attributes
std::vector< NvDsPostProcessAttribute > attributes
Vector of cached classification attributes.
Definition: post_processor_struct.h:560
_NvOSD_RectParams
Holds the box parameters of the box to be overlayed.
Definition: nvll_osd_struct.h:140
NvDsPostProcessColorParams::bg_color
NvOSD_ColorParams bg_color
Definition: post_processor_struct.h:162
NvDsPostProcessBatchOutput::frames
NvDsPostProcessFrameOutput * frames
Holds a pointer to an array of outputs for each frame in the batch.
Definition: post_processor_struct.h:512
NvDsPostProcessParseObjectInfo
NvDsPostProcessObjectDetectionInfo NvDsPostProcessParseObjectInfo
A typedef defined to maintain backward compatibility.
Definition: post_processor_struct.h:369
_NvDsPostProcessContextInitParams::labelsFilePath
char labelsFilePath[_PATH_MAX]
Holds the pathname of the labels file containing strings for the class labels.
Definition: post_processor_struct.h:274
NvDsPostProcessObjectDetectionInfo
Holds information about one parsed object from a detector's output.
Definition: post_processor_struct.h:327
_NvDsPostProcessContextInitParams::customBBoxInstanceMaskParseFuncName
char customBBoxInstanceMaskParseFuncName[_MAX_STR_LENGTH]
Holds the name of the bounding box and instance mask parse function in the custom library.
Definition: post_processor_struct.h:309
NvDsPostProcessInstanceMaskInfo::classId
unsigned int classId
Holds the ID of the class to which the object belongs.
Definition: post_processor_struct.h:377
_NvDsPostProcessContextInitParams::classifierThreshold
float classifierThreshold
Holds the minimum confidence threshold for the classifier to consider a label valid.
Definition: post_processor_struct.h:289
NvDsPostProcessObjectInfo::~NvDsPostProcessObjectInfo
~NvDsPostProcessObjectInfo()
Definition: post_processor_struct.h:566
_NvDsPostProcessContextInitParams::inferInputDims
NvDsInferDimsCHW inferInputDims
Inference input dimensions for runtime engine.
Definition: post_processor_struct.h:302
NvDsPostProcessDetectionParams::detectionMinHeight
unsigned int detectionMinHeight
Definition: post_processor_struct.h:248
NvDsPostProcessAttribute
Holds information about one classified attribute.
Definition: post_processor_struct.h:349
NvDsPostProcessInstanceMaskInfo::height
float height
Holds the height of the object's bounding box.
Definition: post_processor_struct.h:386
NvDsPostProcessInstanceMaskInfo::left
float left
Holds the horizontal offset of the bounding box shape for the object.
Definition: post_processor_struct.h:380
NvDsPostProcessBatchOutput::priv
void * priv
Holds a private context pointer for the set of output buffers.
Definition: post_processor_struct.h:529
NvDsPostProcessDetectionParams
Holds detection and bounding box grouping parameters.
Definition: post_processor_struct.h:216
NvDsPostProcessDetectionFilterParams::roiBottomOffset
unsigned int roiBottomOffset
Definition: post_processor_struct.h:146
NvDsPostProcessNetworkType
NvDsPostProcessNetworkType
Defines network types.
Definition: post_processor_struct.h:191
NvDsPostProcessBatchOutput::hostBuffers
void ** hostBuffers
Holds a pointer to an array of pointers to host buffers for this batch.
Definition: post_processor_struct.h:524
_NvDsPostProcessObjectHistory::under_inference
int under_inference
Boolean indicating if the object is already being inferred on.
Definition: post_processor_struct.h:582
NvDsPostProcessDetectionParams::color_params
NvDsPostProcessColorParams color_params
Definition: post_processor_struct.h:251
DEFAULT_MIN_BOXES
constexpr int DEFAULT_MIN_BOXES
Definition: post_processor_struct.h:72
NVDSPOSTPROCESS_SUCCESS
@ NVDSPOSTPROCESS_SUCCESS
operation succeeded.
Definition: post_processor_struct.h:86
NvDsPostProcessObjectDetectionInfo::detectionConfidence
float detectionConfidence
Holds the object detection confidence level; must in the range [0.0,1.0].
Definition: post_processor_struct.h:343
DEFAULT_POST_CLUSTER_THRESHOLD
constexpr float DEFAULT_POST_CLUSTER_THRESHOLD
Definition: post_processor_struct.h:69
NvDsPostProcessSegmentationOutput::width
unsigned int width
Holds the width of the output.
Definition: post_processor_struct.h:466
NvDsPostProcessAttribute::attributeValue
unsigned int attributeValue
Holds the the attribute's output value.
Definition: post_processor_struct.h:356
gstnvdsinfer.h
NvDsPostProcessInstanceMaskInfo::mask_width
unsigned int mask_width
Holds width of mask.
Definition: post_processor_struct.h:395
NvDsPostProcessDetectionParams::detectionMaxHeight
unsigned int detectionMaxHeight
Definition: post_processor_struct.h:250
NvDsPostProcessParseDetectionParams::perClassPreclusterThreshold
std::vector< float > perClassPreclusterThreshold
Holds a per-class vector of detection confidence thresholds to be applied prior to the clustering ope...
Definition: post_processor_struct.h:550
NvDsPostProcessDetectionFilterParams::detectionMaxHeight
unsigned int detectionMaxHeight
Definition: post_processor_struct.h:150
DEFAULT_EPS
constexpr float DEFAULT_EPS
Definition: post_processor_struct.h:70
NvDsPostProcessObject::classIndex
int classIndex
Holds the index for the object's class.
Definition: post_processor_struct.h:416
NvDsPostProcessObject::top
float top
Holds the object's offset from the top boundary of the frame.
Definition: post_processor_struct.h:410
NvDsPostProcessObjectDetectionInfo::width
float width
Holds the width of the object's bounding box.
Definition: post_processor_struct.h:337
NvDsPostProcessDetectionParams::eps
float eps
Holds the epsilon to control merging of overlapping boxes.
Definition: post_processor_struct.h:228
_NvDsPostProcessContextInitParams::numDetectedClasses
unsigned int numDetectedClasses
Holds the number of classes detected by a detector network.
Definition: post_processor_struct.h:281
_NvDsPostProcessContextInitParams::perClassDetectionParams
NvDsPostProcessDetectionParams * perClassDetectionParams
Holds per-class detection parameters.
Definition: post_processor_struct.h:285
_NvDsPostProcessObjectHistory::cached_info
NvDsPostProcessObjectInfo cached_info
Cached object information.
Definition: post_processor_struct.h:592
NvDsPostProcessObjectInfo
Holds the cached information of an object.
Definition: post_processor_struct.h:558
NvDsPostProcessClassificationOutput::label
char * label
Holds a pointer to a string containing a label for the classified output.
Definition: post_processor_struct.h:457
NvDsPostProcessDetectionFilterParams::detectionMinWidth
unsigned int detectionMinWidth
Definition: post_processor_struct.h:147
_NvDsPostProcessContextInitParams::uniqueID
unsigned int uniqueID
Holds a unique identifier for the instance.
Definition: post_processor_struct.h:264
NvDsPostProcessDetectionOutput
Holds information on all objects detected by a detector network in one frame.
Definition: post_processor_struct.h:435
NVDSPOSTPROCESS_CLUSTER_NONE
@ NVDSPOSTPROCESS_CLUSTER_NONE
Definition: post_processor_struct.h:175
NvDsPostProcessObjectDetectionInfo::top
float top
Holds the vertical offset of the object's bounding box.
Definition: post_processor_struct.h:335
NvDsPostProcessStatus
NvDsPostProcessStatus
Enum for the status codes returned by NvDsPostProcessAlgorithm.
Definition: post_processor_struct.h:84
DEFAULT_DBSCAN_MIN_SCORE
constexpr float DEFAULT_DBSCAN_MIN_SCORE
Definition: post_processor_struct.h:73
NvDsPostProcessColorParams::have_border_color
int have_border_color
Definition: post_processor_struct.h:158
NvDsPostProcessObject::mask_height
unsigned int mask_height
Holds height of mask.
Definition: post_processor_struct.h:426
NvDsPostProcessInstanceMaskInfo
Holds information about one parsed object and instance mask from a detector's output.
Definition: post_processor_struct.h:374
NVDSPOSTPROCESS_OUTPUT_PARSING_FAILED
@ NVDSPOSTPROCESS_OUTPUT_PARSING_FAILED
Output parsing failed.
Definition: post_processor_struct.h:95
NvDsPostProcessDetectionParams::detectionMinWidth
unsigned int detectionMinWidth
Definition: post_processor_struct.h:247
NvDsPostProcessInstanceMaskInfo::mask
float * mask
Holds object segment mask.
Definition: post_processor_struct.h:393
NvDsPostProcessObject::mask
float * mask
Definition: post_processor_struct.h:422
NVDSPOSTPROCESS_CLUSTER_DBSCAN_NMS_HYBRID
@ NVDSPOSTPROCESS_CLUSTER_DBSCAN_NMS_HYBRID
Definition: post_processor_struct.h:174
safeStr
const char * safeStr(const std::string &str)
Definition: post_processor_struct.h:59
NvDsPostProcessColorParams
Holds the bounding box coloring information for one class;.
Definition: post_processor_struct.h:156
NvDsPostProcessTensorOrder_kNCHW
@ NvDsPostProcessTensorOrder_kNCHW
Definition: post_processor_struct.h:182
DEFAULT_GROUP_THRESHOLD
constexpr int DEFAULT_GROUP_THRESHOLD
Definition: post_processor_struct.h:71
PROCESS_MODEL_OBJECTS
constexpr int PROCESS_MODEL_OBJECTS
Definition: post_processor_struct.h:79
NvDsPostProcessDetectionFilterParams
Definition: post_processor_struct.h:143
NvDsPostProcessDetectionParams::nmsIOUThreshold
float nmsIOUThreshold
IOU threshold to be used with NMS mode of clustering.
Definition: post_processor_struct.h:240
NvDsPostProcessSegmentationOutput::class_map
int * class_map
Holds a pointer to an array for the 2D pixel class map.
Definition: post_processor_struct.h:473
NvDsPostProcessAttribute::attributeLabel
char * attributeLabel
Holds a pointer to a string containing the attribute's label.
Definition: post_processor_struct.h:362
NvDsPostProcessBatchOutput::numHostBuffers
unsigned int numHostBuffers
Holds the number of elements in hostBuffers.
Definition: post_processor_struct.h:526
NvDsPostProcessObject::confidence
float confidence
Definition: post_processor_struct.h:420
NvDsPostProcessInstanceMaskInfo::top
float top
Holds the vertical offset of the object's bounding box.
Definition: post_processor_struct.h:382
_NvDsPostProcessObjectHistory::last_inferred_frame_num
unsigned long last_inferred_frame_num
Number of the frame in the stream when the object was last inferred on.
Definition: post_processor_struct.h:586
NvDsPostProcessInstanceMaskInfo::detectionConfidence
float detectionConfidence
Holds the object detection confidence level; must in the range [0.0,1.0].
Definition: post_processor_struct.h:390
NvDsPostProcessColorParams::have_bg_color
int have_bg_color
Definition: post_processor_struct.h:161
NvDsPostProcessAttribute::attributeConfidence
float attributeConfidence
Holds the attribute's confidence level.
Definition: post_processor_struct.h:358
_NvDsPostProcessContextInitParams::segmentationThreshold
float segmentationThreshold
Definition: post_processor_struct.h:291
NVDSPOSTPROCESS_CUSTOM_LIB_FAILED
@ NVDSPOSTPROCESS_CUSTOM_LIB_FAILED
Custom Library interface implementation failed.
Definition: post_processor_struct.h:91
NVDSPOSTPROCESS_CLUSTER_DBSCAN
@ NVDSPOSTPROCESS_CLUSTER_DBSCAN
Definition: post_processor_struct.h:172
NvDsPostProcessObject::label
char * label
Holds a pointer to a string containing a label for the object.
Definition: post_processor_struct.h:418
_NvDsPostProcessContextInitParams::gpuID
unsigned int gpuID
Holds the ID of the GPU which is to run the inference.
Definition: post_processor_struct.h:299
NvDsPostProcessFrameOutput::outputType
NvDsPostProcessNetworkType outputType
Holds an output type indicating the valid member in the union of detectionOutput, classificationOutpu...
Definition: post_processor_struct.h:488
NvDsPostProcessDetectionParams::postClusterThreshold
float postClusterThreshold
Hold the bounding box detection threshold to be applied post clustering operation.
Definition: post_processor_struct.h:224
DEFAULT_PRE_CLUSTER_THRESHOLD
constexpr float DEFAULT_PRE_CLUSTER_THRESHOLD
Definition: post_processor_struct.h:68
NvDsPostProcessClusterMode
NvDsPostProcessClusterMode
Enum for clustering mode for detectors.
Definition: post_processor_struct.h:169
NvDsPostProcessInstanceMaskInfo::width
float width
Holds the width of the object's bounding box.
Definition: post_processor_struct.h:384
NvDsPostProcessNetworkType_Detector
@ NvDsPostProcessNetworkType_Detector
Specifies a detector.
Definition: post_processor_struct.h:195
_NvDsPostProcessObjectHistory::last_accessed_frame_num
unsigned long last_accessed_frame_num
Number of the frame in the stream when the object was last accessed.
Definition: post_processor_struct.h:590
NvDsPostProcessDetectionOutput::objects
NvDsPostProcessObject * objects
Holds a pointer to an array of objects.
Definition: post_processor_struct.h:438
_NvDsPostProcessContextInitParams
Holds the initialization parameters required for the NvDsPostProcessContext interface.
Definition: post_processor_struct.h:260
_NvDsPostProcessContextInitParams::customClassifierParseFuncName
char customClassifierParseFuncName[_MAX_STR_LENGTH]
Name of the custom classifier attribute parsing function in the custom library.
Definition: post_processor_struct.h:316
NVDSPOSTPROCESS_CLUSTER_GROUP_RECTANGLES
@ NVDSPOSTPROCESS_CLUSTER_GROUP_RECTANGLES
Definition: post_processor_struct.h:171
NvDsPostProcessDetectionParams::roiTopOffset
unsigned int roiTopOffset
Definition: post_processor_struct.h:245
NvDsPostProcessObjectDetectionInfo::left
float left
Holds the horizontal offset of the bounding box shape for the object.
Definition: post_processor_struct.h:333
NvDsPostProcessFrameOutput
Holds the information inferred by the network on one frame.
Definition: post_processor_struct.h:483
NVDSPOSTPROCESS_INVALID_PARAMS
@ NVDSPOSTPROCESS_INVALID_PARAMS
Invalid parameters were supplied.
Definition: post_processor_struct.h:93
NvDsPostProcessBatchOutput::outputDeviceBuffers
void ** outputDeviceBuffers
Holds a pointer to an array of pointers to output device buffers for this batch.
Definition: post_processor_struct.h:518
NvDsPostProcessObject::mask_size
unsigned int mask_size
Holds size of mask in bytes.
Definition: post_processor_struct.h:428
_NvDsPostProcessContextInitParams::classifier_type
char * classifier_type
Definition: post_processor_struct.h:321
NVDSPOSTPROCESS_LOG_ERROR
@ NVDSPOSTPROCESS_LOG_ERROR
Definition: post_processor_struct.h:106
NvDsInferDimsCHW
Holds the dimensions of a three-dimensional layer.
Definition: nvdsinfer.h:59
ATHR_ENABLED
constexpr bool ATHR_ENABLED
Definition: post_processor_struct.h:76
_NvDsPostProcessContextInitParams::networkType
NvDsPostProcessNetworkType networkType
Holds the network type.
Definition: post_processor_struct.h:278
NvDsPostProcessNetworkType_Segmentation
@ NvDsPostProcessNetworkType_Segmentation
Specifies a segmentation network.
Definition: post_processor_struct.h:201
NvDsPostProcessDetectionOutput::numObjects
unsigned int numObjects
Holds the number of objects in objects.
Definition: post_processor_struct.h:440
NvDsPostProcessDetectionParams::preClusterThreshold
float preClusterThreshold
Holds the bounding box detection threshold to be applied prior to clustering operation.
Definition: post_processor_struct.h:220
NvDsPostProcessDetectionParams::detectionMaxWidth
unsigned int detectionMaxWidth
Definition: post_processor_struct.h:249
NvDsPostProcessTensorOrder_kNHWC
@ NvDsPostProcessTensorOrder_kNHWC
Definition: post_processor_struct.h:183
_NvDsPostProcessContextInitParams::outputLayerNames
char ** outputLayerNames
Holds a pointer to an array of pointers to output layer names.
Definition: post_processor_struct.h:294
NvDsPostProcesLogLevel
NvDsPostProcesLogLevel
Definition: post_processor_struct.h:105
_NvDsPostProcessContextInitParams::segmentationOutputOrder
NvDsPostProcessTensorOrder segmentationOutputOrder
Holds output order for segmentation network.
Definition: post_processor_struct.h:319
NvDsPostProcessSegmentationOutput
Holds information parsed from segmentation network output for one frame.
Definition: post_processor_struct.h:463
ATHR_THRESHOLD
constexpr float ATHR_THRESHOLD
Definition: post_processor_struct.h:77
NvDsPostProcessInstanceMaskInfo::mask_size
unsigned int mask_size
Holds size of mask in bytes.
Definition: post_processor_struct.h:399
NvDsPostProcessBatchOutput
Holds the output for all of the frames in a batch (an array of frame), and related buffer information...
Definition: post_processor_struct.h:509
_PATH_MAX
#define _PATH_MAX
Definition: post_processor_struct.h:37
DEFAULT_TOP_K
constexpr int DEFAULT_TOP_K
Definition: post_processor_struct.h:75
NvDsPostProcessDetectionParams::groupThreshold
int groupThreshold
Holds the minimum number boxes in a cluster to be considered an object during grouping using OpenCV g...
Definition: post_processor_struct.h:234
NvDsPostProcessClassificationOutput::numAttributes
unsigned int numAttributes
Holds the size of the attributes array.
Definition: post_processor_struct.h:454
NvDsPostProcessDetectionFilterParams::detectionMaxWidth
unsigned int detectionMaxWidth
Definition: post_processor_struct.h:149
NvDsPostProcessInstanceMaskInfo::mask_height
unsigned int mask_height
Holds height of mask.
Definition: post_processor_struct.h:397
NvDsPostProcessDetectionParams::roiBottomOffset
unsigned int roiBottomOffset
Definition: post_processor_struct.h:246
_NvDsPostProcessContextInitParams::maxBatchSize
unsigned int maxBatchSize
Holds the maximum number of frames to be inferred together in a batch.
Definition: post_processor_struct.h:269
NVDSPOSTPROCESS_UNKNOWN_ERROR
@ NVDSPOSTPROCESS_UNKNOWN_ERROR
Unknown error was encountered.
Definition: post_processor_struct.h:101
NvDsPostProcessTensorOrder
NvDsPostProcessTensorOrder
Defines UFF layer orders.
Definition: post_processor_struct.h:181
NvDsPostProcessObject::mask_width
unsigned int mask_width
Holds width of mask.
Definition: post_processor_struct.h:424
NVDSPOSTPROCESS_LOG_WARNING
@ NVDSPOSTPROCESS_LOG_WARNING
Definition: post_processor_struct.h:107
NvDsPostProcessSegmentationOutput::height
unsigned int height
Holds the height of the output.
Definition: post_processor_struct.h:468
NvDsPostProcessFrameOutput::classificationOutput
NvDsPostProcessClassificationOutput classificationOutput
Holds classifier output.
Definition: post_processor_struct.h:498
_NvOSD_ColorParams
Holds the color parameters of the box or text to be overlayed.
Definition: nvll_osd_struct.h:81
NvDsPostProcessColorParams::border_color
NvOSD_ColorParams border_color
Definition: post_processor_struct.h:159
_NvDsPostProcessObjectHistory
Holds the inference information/history for one object based on it's tracking id.
Definition: post_processor_struct.h:579
NvDsPostProcessObject::height
float height
Holds the object's height.
Definition: post_processor_struct.h:414
PROCESS_MODEL_FULL_FRAME
constexpr int PROCESS_MODEL_FULL_FRAME
Definition: post_processor_struct.h:78
NvDsPostProcessTensorOrder_kNC
@ NvDsPostProcessTensorOrder_kNC
Definition: post_processor_struct.h:184
NvDsPostProcessDetectionParams::minBoxes
int minBoxes
Holds the minimum number of boxes in a cluster to be considered an object during grouping using DBSCA...
Definition: post_processor_struct.h:231
NvDsPostProcessFrameOutput::segmentationOutput
NvDsPostProcessSegmentationOutput segmentationOutput
Holds classifier output.
Definition: post_processor_struct.h:501
NvDsPostProcessDetectionFilterParams::detectionMinHeight
unsigned int detectionMinHeight
Definition: post_processor_struct.h:148
NvDsPostProcessParseDetectionParams::perClassPostclusterThreshold
std::vector< float > perClassPostclusterThreshold
Definition: post_processor_struct.h:552
NvDsPostProcessNetworkType_Classifier
@ NvDsPostProcessNetworkType_Classifier
Specifies a classifier.
Definition: post_processor_struct.h:198
_NvDsPostProcessContextInitParams::customBBoxParseFuncName
char customBBoxParseFuncName[_MAX_STR_LENGTH]
Holds the name of the custom bounding box function in the custom library.
Definition: post_processor_struct.h:313
NvDsPostProcessAttribute::attributeIndex
unsigned int attributeIndex
Holds the index of the attribute's label.
Definition: post_processor_struct.h:354
NvDsPostProcessObjectHistory
struct _NvDsPostProcessObjectHistory NvDsPostProcessObjectHistory
Holds the inference information/history for one object based on it's tracking id.
NvDsPostProcessClassificationOutput::attributes
NvDsPostProcessAttribute * attributes
Holds a pointer to an array of attributes.
Definition: post_processor_struct.h:452
NvDsPostProcessDetectionFilterParams::roiTopOffset
unsigned int roiTopOffset
Definition: post_processor_struct.h:145
NvDsPostProcessObject::left
float left
Holds the object's offset from the left boundary of the frame.
Definition: post_processor_struct.h:408
NVDSPOSTPROCESS_LOG_INFO
@ NVDSPOSTPROCESS_LOG_INFO
Definition: post_processor_struct.h:108
NVDSPOSTPROCESS_RESOURCE_ERROR
@ NVDSPOSTPROCESS_RESOURCE_ERROR
Resource error was encountered.
Definition: post_processor_struct.h:99
NvDsPostProcessDetectionParams::topK
int topK
Number of objects with objects to be filtered in the decensding order of probability.
Definition: post_processor_struct.h:243
NvDsPostProcessClassificationOutput
Holds information on all attributes classifed by a classifier network for one frame.
Definition: post_processor_struct.h:447
NvDsPostProcessDetectionParams::minScore
float minScore
Minimum score in a cluster for the cluster to be considered an object during grouping.
Definition: post_processor_struct.h:238
NvDsPostProcessObjectDetectionInfo::height
float height
Holds the height of the object's bounding box.
Definition: post_processor_struct.h:339
NvDsPostProcessSegmentationOutput::class_probability_map
float * class_probability_map
Holds a pointer to an array containing raw probabilities.
Definition: post_processor_struct.h:477
NvDsPostProcessObjectInfo::NvDsPostProcessObjectInfo
NvDsPostProcessObjectInfo()=default
NvDsPostProcessNetworkType_Other
@ NvDsPostProcessNetworkType_Other
Specifies other.
Definition: post_processor_struct.h:210
NvDsPostProcessFrameOutput::detectionOutput
NvDsPostProcessDetectionOutput detectionOutput
Holds detector output.
Definition: post_processor_struct.h:495
NvDsPostProcessParseDetectionParams::numClassesConfigured
unsigned int numClassesConfigured
Holds the number of classes requested to be parsed, starting with class ID 0.
Definition: post_processor_struct.h:544
NvDsPostProcessObjectDetectionInfo::classId
unsigned int classId
Holds the ID of the class to which the object belongs.
Definition: post_processor_struct.h:330
_NvDsPostProcessContextInitParams::numOutputLayers
unsigned int numOutputLayers
Holds the number of output layer names.
Definition: post_processor_struct.h:296
NVDSPOSTPROCESS_CLUSTER_NMS
@ NVDSPOSTPROCESS_CLUSTER_NMS
Definition: post_processor_struct.h:173
NVDSPOSTPROCESS_CONFIG_FAILED
@ NVDSPOSTPROCESS_CONFIG_FAILED
Failed to configure the instance possibly due to an erroneous initialization property.
Definition: post_processor_struct.h:89
NVDSPOSTPROCESS_LOG_DEBUG
@ NVDSPOSTPROCESS_LOG_DEBUG
Definition: post_processor_struct.h:109
NvDsPostProcessSegmentationOutput::classes
unsigned int classes
Holds the number of classes supported by the network.
Definition: post_processor_struct.h:470
NvDsPostProcessParseDetectionParams
Holds the detection parameters required for parsing objects.
Definition: post_processor_struct.h:539
_NvDsPostProcessObjectHistory::last_inferred_coords
NvOSD_RectParams last_inferred_coords
Bounding box co-ordinates of the object when it was last inferred on.
Definition: post_processor_struct.h:584
_MAX_STR_LENGTH
#define _MAX_STR_LENGTH
Definition: post_processor_struct.h:38
NvDsPostProcessNetworkType_InstanceSegmentation
@ NvDsPostProcessNetworkType_InstanceSegmentation
Specifies a instance segmentation network.
Definition: post_processor_struct.h:205
string_empty
bool string_empty(const char *str)
Definition: post_processor_struct.h:64
DEFAULT_NMS_IOU_THRESHOLD
constexpr float DEFAULT_NMS_IOU_THRESHOLD
Definition: post_processor_struct.h:74
NvDsPostProcessObject::width
float width
Holds the object's width.
Definition: post_processor_struct.h:412
NVDSPOSTPROCESS_CUDA_ERROR
@ NVDSPOSTPROCESS_CUDA_ERROR
CUDA error was encountered.
Definition: post_processor_struct.h:97