|
|
NVIDIA DeepStream SDK API Reference
|
9.0 Release
|
Go to the documentation of this file.
18 #include "buffer_probe.hpp"
22 #include "gstnvdsinfer.h"
23 #include "nvdsinfer_custom_impl.h"
24 #include "nvdsinfer_dbscan.h"
32 std::vector < NvDsInferObjectDetectionInfo > &objectList);
34 #define PGIE_CLASS_ID_VEHICLE 0
35 #define PGIE_CLASS_ID_PERSON 2
52 for (data.
initiateIterator(frame_itr); !frame_itr->done(); frame_itr->next()) {
53 int network_width = 0;
54 int network_height = 0;
56 int stream_height = 0;
67 float scalers[] = {(float)stream_width/network_width, (
float)stream_height/network_height };
82 std::vector <NvDsInferObjectDetectionInfo> objectList;
88 clusteringParams.
eps = 0.95;
93 std::vector <std::vector<NvDsInferObjectDetectionInfo>> perClassObjectList(n_classes);
94 for (
auto & obj:objectList) {
95 perClassObjectList[obj.classId].emplace_back (obj);
99 for (
unsigned int c = 0; c < perClassObjectList.size(); c++) {
101 size_t numObjects = perClassObjectList[c].size();
104 if (clusteringParams.
minBoxes > 0) {
107 perClassObjectList[c].resize(numObjects);
110 for (
unsigned int i = 0; i < numObjects; i++) {
112 if (data.
acquire(object_meta)) {
118 frame_meta.
append(object_meta);
123 std::cout <<
"Object Counter: " <<
" Pad Idx = " << frame_meta.
padIndex() <<
" Frame Number = " << frame_meta.
frameNum() <<
131 return probeReturn::Probe_Ok;
Holds the box parameters of the box to be overlayed.
void * buffer
Holds a pointer to the buffer for the layer data.
float minScore
Holds the sum of neighborhood confidence thresholds.
float width
Holds the width of the object's bounding box.
int enableATHRFilter
Holds a Boolean; true enables the area-to-hit ratio (ATHR) filter.
#define PGIE_CLASS_ID_VEHICLE
float left
Holds the horizontal offset of the bounding box shape for the object.
Represent a custom object for the purpose of probing output buffers.
float thresholdATHR
Holds the area-to-hit ratio threshold.
bool NvDsInferParseCustomResnet(std::vector< NvDsInferLayerInfo > const &outputLayersInfo, NvDsInferNetworkInfo const &networkInfo, NvDsInferParseDetectionParams const &detectionParams, std::vector< NvDsInferObjectDetectionInfo > &objectList)
unsigned int numClassesConfigured
Holds the number of classes requested to be parsed, starting with class ID 0.
NvDsInferDBScanHandle NvDsInferDBScanCreate()
Creates a new DBScan object clustering context.
void NvDsInferDBScanCluster(NvDsInferDBScanHandle handle, NvDsInferDBScanClusteringParams *params, NvDsInferObjectDetectionInfo *objects, size_t *numObjects)
Clusters an array of objects in place using specified clustering parameters.
Holds the detection parameters required for parsing objects.
Holds information about one parsed object from a detector's output.
probeReturn
Return values from user implemented probe interfaces.
Holds information about the model network.
#define PGIE_CLASS_ID_PERSON
Holds information about one layer in the model.
std::vector< float > perClassPreclusterThreshold
Holds a per-class vector of detection confidence thresholds to be applied prior to the clustering ope...
Holds object clustering parameters required by DBSCAN.
float top
Holds the vertical offset of the object's bounding box.
void NvDsInferDBScanDestroy(NvDsInferDBScanHandle handle)
Destroys a DBScan object clustering context.
float height
Holds the height of the object's bounding box.
Holds the color parameters of the box or text to be overlayed.
Object & getProperty(const std::string &name, T &value, Args &... args)
Template for getting multiple properties.