NVIDIA DeepStream SDK API Reference

9.1 Release
9.1/sources/includes/nvds_tracker_meta.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2020-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: Apache-2.0
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
30 #ifndef _NVDS_TRACKER_META_H_
31 #define _NVDS_TRACKER_META_H_
32 
33 #include <stdint.h>
34 #include "nvll_osd_struct.h"
35 
36 #define MAX_LABEL_SIZE 128
37 
38 #ifdef __cplusplus
39 extern "C"
40 {
41 #endif
42 typedef enum { EMPTY = 0,
43  ACTIVE = 1,
44  INACTIVE = 2,
45  TENTATIVE = 3,
46  PROJECTED = 4,
49 
53  typedef struct _NvDsTargetMiscDataFrame
54 {
56  uint32_t frameNum;
60  float confidence;
62  uint32_t age;
66  float visibility;
68  float ptWorldFeet[2];
69 
71 
72 
76 typedef struct _NvDsTargetMiscDataObject
77 {
81  uint32_t numObj;
83  uint32_t numAllocated;
85  uint64_t uniqueId;
87  uint16_t classId;
90 
92 
96 typedef struct _NvDsTargetMiscDataStream
97 {
101  uint32_t streamID;
103  uint64_t surfaceStreamID;
105  uint32_t numAllocated;
107  uint32_t numFilled;
109 
113 typedef struct _NvDsTargetMiscDataBatch
114 {
118  uint32_t numAllocated;
120  uint32_t numFilled;
122  void* priv_data;
124 
128 typedef struct _NvDsReidTensorBatch
129 {
131  uint32_t featureSize;
133  uint32_t numFilled;
135  float* ptr_host;
137  float* ptr_dev;
139  void* priv_data;
141 
142 
147 
151 typedef struct _NvDsObjConvexHull
152 {
154  int* list;
156  uint32_t numPointsAllocated;
158  uint32_t numPoints;
160 
164 typedef struct _NvDsObjReid
165 {
167  uint32_t featureSize;
169  float* ptr_host;
171  float* ptr_dev;
172 } NvDsObjReid;
173 
177 typedef struct _NvDsObj3DBbox
178 {
180  float xCentre;
181  float yCentre;
182  float zCentre;
183  /* 3D bbox dimensions */
184  float xLen;
185  float yLen;
186  float zLen;
187  /* 3D bbox rotation */
188  float xRot;
189  float yRot;
190  float zRot;
191  /* 3D bbox velocity */
192  float xVel;
193  float yVel;
194  float zVel;
195 } NvDsObj3DBbox;
196 
197 #ifdef __cplusplus
198 }
199 #endif
200 
201 #endif
202 
_NvDsTargetMiscDataObject::numObj
uint32_t numObj
Number of frames this target appreared in the past.
Definition: sources/includes/nvds_tracker_meta.h:81
_NvOSD_RectParams
Holds the box parameters of the box to be overlayed.
Definition: sources/includes/nvll_osd_struct.h:145
_NvDsObj3DBbox::xLen
float xLen
Definition: sources/includes/nvds_tracker_meta.h:184
_NvDsObj3DBbox::zVel
float zVel
Definition: sources/includes/nvds_tracker_meta.h:194
_NvDsObjConvexHull::numPoints
uint32_t numPoints
Holds the number of points in the list.
Definition: sources/includes/nvds_tracker_meta.h:158
TENTATIVE
@ TENTATIVE
\ tracking is not confirmed or w/ low confidence, so not reporting the outputs, but keep tracking (i....
Definition: 9.1/sources/includes/nvds_tracker_meta.h:45
_NvDsTargetMiscDataStream
All misc targets data for a given stream.
Definition: sources/includes/nvds_tracker_meta.h:96
_NvDsTargetMiscDataBatch::list
NvDsTargetMiscDataStream * list
Pointer to array of stream lists.
Definition: sources/includes/nvds_tracker_meta.h:116
_NvDsObjReid::ptr_dev
float * ptr_dev
ReID vector pointer on GPU.
Definition: sources/includes/nvds_tracker_meta.h:171
NvDsReidTensorBatch
struct _NvDsReidTensorBatch NvDsReidTensorBatch
ReID tensor of the batch.
_NvDsTargetMiscDataStream::streamID
uint32_t streamID
Stream id the same as frame_meta->pad_index.
Definition: sources/includes/nvds_tracker_meta.h:101
_NvDsTargetMiscDataStream::surfaceStreamID
uint64_t surfaceStreamID
Stream id used inside tracker plugin.
Definition: sources/includes/nvds_tracker_meta.h:103
_NvDsObjConvexHull::list
int * list
Holds a pointer to a list or array of object information blocks.
Definition: sources/includes/nvds_tracker_meta.h:154
_NvDsObjReid::featureSize
uint32_t featureSize
ReID vector length.
Definition: sources/includes/nvds_tracker_meta.h:167
_NvDsReidTensorBatch::ptr_dev
float * ptr_dev
ReID vector on GPU.
Definition: sources/includes/nvds_tracker_meta.h:137
_NvDsObj3DBbox::xCentre
float xCentre
Centroid of the 3D bbox.
Definition: sources/includes/nvds_tracker_meta.h:180
_NvDsReidTensorBatch::featureSize
uint32_t featureSize
Each target's ReID vector length.
Definition: sources/includes/nvds_tracker_meta.h:131
_NvDsTargetMiscDataFrame::tBbox
NvOSD_RectParams tBbox
Bounding box.
Definition: sources/includes/nvds_tracker_meta.h:58
_NvDsTargetMiscDataStream::list
NvDsTargetMiscDataObject * list
Pointer to targets inside this stream.
Definition: sources/includes/nvds_tracker_meta.h:99
_NvDsTargetMiscDataObject::objLabel
char objLabel[MAX_LABEL_SIZE]
An array of the string describing the target class.
Definition: sources/includes/nvds_tracker_meta.h:89
NvDsTargetMiscDataObject
struct _NvDsTargetMiscDataObject NvDsTargetMiscDataObject
All misc data output for a single target.
_NvDsObjReid
Holds Reid Vector information for an object.
Definition: sources/includes/nvds_tracker_meta.h:164
_NvDsTargetMiscDataFrame::trackerState
TRACKER_STATE trackerState
Curret Tracker State.
Definition: sources/includes/nvds_tracker_meta.h:64
_NvDsTargetMiscDataFrame::confidence
float confidence
Tracking confidence.
Definition: sources/includes/nvds_tracker_meta.h:60
NvDsTargetMiscDataStream
struct _NvDsTargetMiscDataStream NvDsTargetMiscDataStream
All misc targets data for a given stream.
_NvDsObj3DBbox::yRot
float yRot
Definition: sources/includes/nvds_tracker_meta.h:189
QUASIACTIVE
@ QUASIACTIVE
\ tracking is completed, the tracklet is about to be archived, and some projected points are appended...
Definition: 9.1/sources/includes/nvds_tracker_meta.h:47
NvDsTargetMiscDataBatch
struct _NvDsTargetMiscDataBatch NvDsTargetMiscDataBatch
Batch of all streams of a given target misc output.
_NvDsTargetMiscDataObject::uniqueId
uint64_t uniqueId
Target tracking id.
Definition: sources/includes/nvds_tracker_meta.h:85
NvDsObj3DBbox
struct _NvDsObj3DBbox NvDsObj3DBbox
Holds 3D bbox information for an object.
_NvDsTargetMiscDataFrame::age
uint32_t age
Tracking age.
Definition: sources/includes/nvds_tracker_meta.h:62
NvDsTrajectoryBatch
NvDsTargetMiscDataBatch NvDsTrajectoryBatch
Batch of trajectory data in all streams.
Definition: 9.1/sources/includes/nvds_tracker_meta.h:146
_NvDsObj3DBbox::zLen
float zLen
Definition: sources/includes/nvds_tracker_meta.h:186
_NvDsObj3DBbox::yVel
float yVel
Definition: sources/includes/nvds_tracker_meta.h:193
NvDsObjReid
struct _NvDsObjReid NvDsObjReid
Holds Reid Vector information for an object.
_NvDsTargetMiscDataStream::numAllocated
uint32_t numAllocated
Maximum number of objects allocated.
Definition: sources/includes/nvds_tracker_meta.h:105
_NvDsObj3DBbox::xRot
float xRot
Definition: sources/includes/nvds_tracker_meta.h:188
_NvDsReidTensorBatch::priv_data
void * priv_data
Pointer to internal buffer pool needed by gst pipelines to return buffers.
Definition: sources/includes/nvds_tracker_meta.h:139
NvDsObjConvexHull
struct _NvDsObjConvexHull NvDsObjConvexHull
Holds convex hull information.
_NvDsObjConvexHull
Holds convex hull information.
Definition: sources/includes/nvds_tracker_meta.h:151
_NvDsTargetMiscDataObject::classId
uint16_t classId
Target class id.
Definition: sources/includes/nvds_tracker_meta.h:87
_NvDsTargetMiscDataStream::numFilled
uint32_t numFilled
Number of objects in this frame.
Definition: sources/includes/nvds_tracker_meta.h:107
_NvDsTargetMiscDataBatch::priv_data
void * priv_data
Pointer to internal buffer pool needed by gst pipelines to return buffers.
Definition: sources/includes/nvds_tracker_meta.h:122
_NvDsTargetMiscDataObject::numAllocated
uint32_t numAllocated
Maximum number of frames allocated.
Definition: sources/includes/nvds_tracker_meta.h:83
_NvDsTargetMiscDataFrame::frameNum
uint32_t frameNum
Frame number.
Definition: sources/includes/nvds_tracker_meta.h:56
_NvDsTargetMiscDataFrame
A single frame of misc data for a given Target.
Definition: sources/includes/nvds_tracker_meta.h:53
_NvDsReidTensorBatch::ptr_host
float * ptr_host
ReID vector on CPU.
Definition: sources/includes/nvds_tracker_meta.h:135
_NvDsTargetMiscDataFrame::ptWorldFeet
float ptWorldFeet[2]
Feet location of the object on the world ground.
Definition: sources/includes/nvds_tracker_meta.h:68
NvDsTargetMiscDataFrame
struct _NvDsTargetMiscDataFrame NvDsTargetMiscDataFrame
A single frame of misc data for a given Target.
INACTIVE
@ INACTIVE
\ tracking is being confirmed by detectors and actively reporting outputs
Definition: 9.1/sources/includes/nvds_tracker_meta.h:44
_NvDsTargetMiscDataFrame::visibility
float visibility
bbox visibility with respect to the image border
Definition: sources/includes/nvds_tracker_meta.h:66
_NvDsTargetMiscDataObject::list
NvDsTargetMiscDataFrame * list
Pointer to a list per-frame information of the target.
Definition: sources/includes/nvds_tracker_meta.h:79
_NvDsObjConvexHull::numPointsAllocated
uint32_t numPointsAllocated
Holds the number of blocks allocated for the list.
Definition: sources/includes/nvds_tracker_meta.h:156
_NvDsObjReid::ptr_host
float * ptr_host
ReID vector pointer on CPU.
Definition: sources/includes/nvds_tracker_meta.h:169
_NvDsReidTensorBatch::numFilled
uint32_t numFilled
Number of reid vectors in the batch.
Definition: sources/includes/nvds_tracker_meta.h:133
MAX_LABEL_SIZE
#define MAX_LABEL_SIZE
Definition: 9.1/sources/includes/nvds_tracker_meta.h:36
nvll_osd_struct.h
_NvDsTargetMiscDataBatch
Batch of all streams of a given target misc output.
Definition: sources/includes/nvds_tracker_meta.h:113
_NvDsObj3DBbox
Holds 3D bbox information for an object.
Definition: sources/includes/nvds_tracker_meta.h:177
_NvDsObj3DBbox::zCentre
float zCentre
Definition: sources/includes/nvds_tracker_meta.h:182
_NvDsObj3DBbox::yLen
float yLen
Definition: sources/includes/nvds_tracker_meta.h:185
_NvDsTargetMiscDataBatch::numAllocated
uint32_t numAllocated
Number of blocks allocated for the list.
Definition: sources/includes/nvds_tracker_meta.h:118
_NvDsObj3DBbox::xVel
float xVel
Definition: sources/includes/nvds_tracker_meta.h:192
EMPTY
@ EMPTY
Definition: 9.1/sources/includes/nvds_tracker_meta.h:42
TRACKER_STATE
TRACKER_STATE
Definition: 9.1/sources/includes/nvds_tracker_meta.h:42
_NvDsObj3DBbox::zRot
float zRot
Definition: sources/includes/nvds_tracker_meta.h:190
PROJECTED
@ PROJECTED
\ tracking is just started and in a probational period. Waiting to become ACTIVE
Definition: 9.1/sources/includes/nvds_tracker_meta.h:46
_NvDsTargetMiscDataBatch::numFilled
uint32_t numFilled
Number of filled blocks in the list.
Definition: sources/includes/nvds_tracker_meta.h:120
ACTIVE
@ ACTIVE
\ The corresponding tracker is no longer is in use
Definition: 9.1/sources/includes/nvds_tracker_meta.h:43
_NvDsReidTensorBatch
ReID tensor of the batch.
Definition: sources/includes/nvds_tracker_meta.h:128
_NvDsTargetMiscDataObject
All misc data output for a single target.
Definition: sources/includes/nvds_tracker_meta.h:76
_NvDsObj3DBbox::yCentre
float yCentre
Definition: sources/includes/nvds_tracker_meta.h:181