NVIDIA DeepStream SDK API Reference

6.4 Release
invtracker_proc.h
Go to the documentation of this file.
1 
11 #ifndef _INVTRACKERPROC_H
12 #define _INVTRACKERPROC_H
13 
14 #include "nvbufsurface.h"
15 #include "nvdstracker.h"
16 
17 #include <vector>
18 
21 {
26 };
27 
30 {
34 };
35 
38 {
47 };
48 
51 {
53  uint32_t batchSize;
54  uint32_t trackerWidth;
55  uint32_t trackerHeight;
59  std::vector<std::string> trackerConfigFilePerSubBatch;
60 
63 
65  int32_t gpuId;
66  int32_t compute_hw;
67 
68  uint32_t trackingSurfType;
70 
71  bool inputTensorMeta = false;
72  uint32_t tensorMetaGieId = 0;
73  std::vector<std::vector<int>> subBatchesConfig = {};
74 
78  uint32_t numTransforms;
81  bool pastFrame;
84 
86 
90  uint32_t reidFeatureSize;
96 
97  char* gstName;
98 };
99 
102 {
103 public:
104  virtual ~INvTrackerProc() {};
105 
106  virtual bool init(const TrackerConfig& config) = 0;
107  virtual void deInit() = 0;
108 
110  virtual bool addSource(uint32_t sourceId) = 0;
112  virtual bool removeSource(uint32_t sourceId, bool removeObjectIdMapping=true) = 0;
114  virtual bool resetSource(uint32_t sourceId) = 0;
116  virtual bool submitInput(const InputParams& inputParams) = 0;
118  virtual CompletionStatus waitForCompletion(InputParams& inputParams) = 0;
120  virtual bool flushReqs() = 0;
121 };
122 
123 #endif
TrackerConfig::subBatchesConfig
std::vector< std::vector< int > > subBatchesConfig
Definition: invtracker_proc.h:73
InputParams
Copyright (c) 2019-2023, NVIDIA CORPORATION.
Definition: invtracker_proc.h:20
TrackerConfig::outputVisibility
bool outputVisibility
Definition: invtracker_proc.h:93
TrackerConfig::trackerConfigFile
char * trackerConfigFile
Definition: invtracker_proc.h:57
TrackerConfig::trackingSurfType
uint32_t trackingSurfType
Definition: invtracker_proc.h:68
TrackerConfig::maxTargetsPerStream
uint32_t maxTargetsPerStream
Definition: invtracker_proc.h:79
TrackerConfig::trackerLibFile
char * trackerLibFile
Definition: invtracker_proc.h:56
INvTrackerProc::waitForCompletion
virtual CompletionStatus waitForCompletion(InputParams &inputParams)=0
Wait until a batch's process is done.
INvTrackerProc::flushReqs
virtual bool flushReqs()=0
Flush the request to send the batch downstream.
NvBufSurface
Holds information about batched buffers.
Definition: nvbufsurface.h:503
TrackerConfig::batchSize
uint32_t batchSize
From DeepStream app config file.
Definition: invtracker_proc.h:53
TrackerConfig::trackerConfigFilePerSubBatch
std::vector< std::string > trackerConfigFilePerSubBatch
Definition: invtracker_proc.h:59
TrackerConfig::maxMiscDataPoolSize
uint32_t maxMiscDataPoolSize
Definition: invtracker_proc.h:89
TrackerConfig::tensorMetaGieId
uint32_t tensorMetaGieId
Definition: invtracker_proc.h:72
TrackerConfig::outputConvexHull
bool outputConvexHull
Definition: invtracker_proc.h:95
TrackerConfig::reidFeatureSize
uint32_t reidFeatureSize
Definition: invtracker_proc.h:90
TrackingIdResetMode_NewIdAfterStreamReset
@ TrackingIdResetMode_NewIdAfterStreamReset
Terminate existing objects and assign new ids after stream reset.
Definition: invtracker_proc.h:42
TrackerConfig::outputTerminatedTracks
bool outputTerminatedTracks
Definition: invtracker_proc.h:82
TrackerConfig::colorFormat
NvBufSurfaceColorFormat colorFormat
From low level tracker library query.
Definition: invtracker_proc.h:76
TrackerConfig::maxTrajectoryBufferLength
uint32_t maxTrajectoryBufferLength
Definition: invtracker_proc.h:83
TrackerConfig::displayTrackingId
bool displayTrackingId
Definition: invtracker_proc.h:61
InputParams::pPreservedData
void * pPreservedData
Definition: invtracker_proc.h:24
TrackerConfig::maxConvexHullSize
uint32_t maxConvexHullSize
Definition: invtracker_proc.h:91
TrackerConfig::outputShadowTracks
bool outputShadowTracks
Definition: invtracker_proc.h:85
TrackerConfig::trackingSurfTypeFromConfig
bool trackingSurfTypeFromConfig
Definition: invtracker_proc.h:69
INvTrackerProc::addSource
virtual bool addSource(uint32_t sourceId)=0
Tracker actions when a source is added to the pipeline.
TrackerConfig::pastFrame
bool pastFrame
Definition: invtracker_proc.h:81
_NvDsBatchMeta
Holds information about a formed batch containing frames from different sources.
Definition: nvdsmeta.h:240
TrackingIdResetMode_Default
@ TrackingIdResetMode_Default
No id reset.
Definition: invtracker_proc.h:40
InputParams::pSurfaceBatch
NvBufSurface * pSurfaceBatch
Definition: invtracker_proc.h:22
CompletionStatus
CompletionStatus
Tracker process completion status.
Definition: invtracker_proc.h:29
TrackerConfig::compute_hw
int32_t compute_hw
Definition: invtracker_proc.h:66
INvTrackerProc::deInit
virtual void deInit()=0
TrackerConfig::maxConvBufPoolSize
uint32_t maxConvBufPoolSize
Store buffer pool size since low level tracker needs this info.
Definition: invtracker_proc.h:88
NvBufSurfaceMemType
NvBufSurfaceMemType
Specifies memory types for NvBufSurface.
Definition: nvbufsurface.h:300
TrackerConfig::maxShadowTrackingAge
uint32_t maxShadowTrackingAge
Definition: invtracker_proc.h:80
TrackerConfig::trackerConfigFileList
char * trackerConfigFileList
Definition: invtracker_proc.h:58
TrackingIdResetMode_MaxValue
@ TrackingIdResetMode_MaxValue
Max value of the enum.
Definition: invtracker_proc.h:46
TrackerConfig::numTransforms
uint32_t numTransforms
Definition: invtracker_proc.h:78
TrackerConfig::memType
NvBufSurfaceMemType memType
Definition: invtracker_proc.h:77
NvMOTCompute
uint8_t NvMOTCompute
Definition: nvdstracker.h:62
TrackerConfig::outputReidTensor
bool outputReidTensor
Definition: invtracker_proc.h:92
TrackerConfig::trackingIdResetMode
TrackingIdResetMode trackingIdResetMode
Definition: invtracker_proc.h:62
INvTrackerProc
Virtual base class for tracker plugin processing.
Definition: invtracker_proc.h:101
INvTrackerProc::init
virtual bool init(const TrackerConfig &config)=0
InputParams::eventMarker
bool eventMarker
Definition: invtracker_proc.h:25
CompletionStatus_Error
@ CompletionStatus_Error
Definition: invtracker_proc.h:32
INvTrackerProc::resetSource
virtual bool resetSource(uint32_t sourceId)=0
Tracker actions when a source is reset.
TrackerConfig::gstName
char * gstName
Definition: invtracker_proc.h:97
TrackingIdResetMode
TrackingIdResetMode
Bitwise flags for tracker id reset.
Definition: invtracker_proc.h:37
TrackerConfig::trackerWidth
uint32_t trackerWidth
Definition: invtracker_proc.h:54
TrackerConfig::outputFootLocation
bool outputFootLocation
Definition: invtracker_proc.h:94
TrackerConfig
Tracker plugin config params.
Definition: invtracker_proc.h:50
INvTrackerProc::submitInput
virtual bool submitInput(const InputParams &inputParams)=0
Submit an input batch to tracker process queue.
INvTrackerProc::removeSource
virtual bool removeSource(uint32_t sourceId, bool removeObjectIdMapping=true)=0
Tracker actions when a source is removed to the pipeline.
nvbufsurface.h
INvTrackerProc::~INvTrackerProc
virtual ~INvTrackerProc()
Definition: invtracker_proc.h:104
CompletionStatus_OK
@ CompletionStatus_OK
Definition: invtracker_proc.h:31
TrackerConfig::computeTarget
NvMOTCompute computeTarget
Definition: invtracker_proc.h:64
TrackingIdResetMode_FromZeroAfterEOS
@ TrackingIdResetMode_FromZeroAfterEOS
Id starts from 0 after stream reaching EOS.
Definition: invtracker_proc.h:44
CompletionStatus_Exit
@ CompletionStatus_Exit
Definition: invtracker_proc.h:33
TrackerConfig::inputTensorMeta
bool inputTensorMeta
Definition: invtracker_proc.h:71
nvdstracker.h
TrackerConfig::trackerHeight
uint32_t trackerHeight
Definition: invtracker_proc.h:55
TrackerConfig::gpuId
int32_t gpuId
Definition: invtracker_proc.h:65
NvBufSurfaceColorFormat
NvBufSurfaceColorFormat
Defines color formats for NvBufSurface.
Definition: nvbufsurface.h:103
InputParams::pBatchMeta
NvDsBatchMeta * pBatchMeta
Definition: invtracker_proc.h:23