NVIDIA DeepStream SDK API Reference

8.0 Release
ModelPostProcessor Class Referenceabstract

Detailed Description

Inheritance diagram for ModelPostProcessor:
Collaboration diagram for ModelPostProcessor:

Public Member Functions

virtual ~ModelPostProcessor ()=default
 
virtual NvDsPostProcessStatus initResource (NvDsPostProcessContextInitParams &initParams)
 
const std::vector< std::vector< std::string > > & getLabels () const
 
void freeBatchOutput (NvDsPostProcessBatchOutput &batchOutput)
 
void setNetworkInfo (NvDsInferNetworkInfo networkInfo)
 
virtual NvDsPostProcessStatus parseEachFrame (const std::vector< NvDsInferLayerInfo > &outputLayers, NvDsPostProcessFrameOutput &result)=0
 
virtual void attachMetadata (NvBufSurface *surf, gint batch_idx, NvDsBatchMeta *batch_meta, NvDsFrameMeta *frame_meta, NvDsObjectMeta *object_meta, NvDsObjectMeta *parent_obj_meta, NvDsPostProcessFrameOutput &detection_output, NvDsPostProcessDetectionParams *all_params, std::set< gint > &filterOutClassIds, int32_t unique_id, gboolean output_instance_mask, gboolean process_full_frame, float segmentationThreshold, gboolean maintain_aspect_ratio, NvDsRoiMeta *roi_meta, gboolean symmetric_padding)=0
 
virtual void releaseFrameOutput (NvDsPostProcessFrameOutput &frameOutput)=0
 
virtual ~ModelPostProcessor ()=default
 
virtual NvDsPostProcessStatus initResource (NvDsPostProcessContextInitParams &initParams)
 
const std::vector< std::vector< std::string > > & getLabels () const
 
void freeBatchOutput (NvDsPostProcessBatchOutput &batchOutput)
 
void setNetworkInfo (NvDsInferNetworkInfo networkInfo)
 
virtual NvDsPostProcessStatus parseEachFrame (const std::vector< NvDsInferLayerInfo > &outputLayers, NvDsPostProcessFrameOutput &result)=0
 
virtual void attachMetadata (NvBufSurface *surf, gint batch_idx, NvDsBatchMeta *batch_meta, NvDsFrameMeta *frame_meta, NvDsObjectMeta *object_meta, NvDsObjectMeta *parent_obj_meta, NvDsPostProcessFrameOutput &detection_output, NvDsPostProcessDetectionParams *all_params, std::set< gint > &filterOutClassIds, int32_t unique_id, gboolean output_instance_mask, gboolean process_full_frame, float segmentationThreshold, gboolean maintain_aspect_ratio, NvDsRoiMeta *roi_meta, gboolean symmetric_padding)=0
 
virtual void releaseFrameOutput (NvDsPostProcessFrameOutput &frameOutput)=0
 

Protected Member Functions

 ModelPostProcessor (NvDsPostProcessNetworkType type, int id, int gpuId)
 
NvDsPostProcessStatus parseLabelsFile (const std::string &path)
 
 ModelPostProcessor (NvDsPostProcessNetworkType type, int id, int gpuId)
 
NvDsPostProcessStatus parseLabelsFile (const std::string &path)
 

Protected Attributes

NvDsPostProcessNetworkType m_NetworkType = NvDsPostProcessNetworkType_Other
 
int m_UniqueID = 0
 
uint32_t m_GpuID = 0
 
NvDsInferNetworkInfo m_NetworkInfo = {0}
 
std::vector< NvDsInferLayerInfom_AllLayerInfo
 
std::vector< NvDsInferLayerInfom_OutputLayerInfo
 
std::vector< std::vector< std::string > > m_Labels
 

Constructor & Destructor Documentation

◆ ModelPostProcessor() [1/2]

ModelPostProcessor::ModelPostProcessor ( NvDsPostProcessNetworkType  type,
int  id,
int  gpuId 
)
inlineprotected

◆ ~ModelPostProcessor() [1/2]

virtual ModelPostProcessor::~ModelPostProcessor ( )
virtualdefault

◆ ModelPostProcessor() [2/2]

ModelPostProcessor::ModelPostProcessor ( NvDsPostProcessNetworkType  type,
int  id,
int  gpuId 
)
inlineprotected

◆ ~ModelPostProcessor() [2/2]

virtual ModelPostProcessor::~ModelPostProcessor ( )
virtualdefault

Member Function Documentation

◆ attachMetadata() [1/2]

virtual void ModelPostProcessor::attachMetadata ( NvBufSurface surf,
gint  batch_idx,
NvDsBatchMeta batch_meta,
NvDsFrameMeta frame_meta,
NvDsObjectMeta object_meta,
NvDsObjectMeta parent_obj_meta,
NvDsPostProcessFrameOutput detection_output,
NvDsPostProcessDetectionParams all_params,
std::set< gint > &  filterOutClassIds,
int32_t  unique_id,
gboolean  output_instance_mask,
gboolean  process_full_frame,
float  segmentationThreshold,
gboolean  maintain_aspect_ratio,
NvDsRoiMeta roi_meta,
gboolean  symmetric_padding 
)
pure virtual

◆ attachMetadata() [2/2]

virtual void ModelPostProcessor::attachMetadata ( NvBufSurface surf,
gint  batch_idx,
NvDsBatchMeta batch_meta,
NvDsFrameMeta frame_meta,
NvDsObjectMeta object_meta,
NvDsObjectMeta parent_obj_meta,
NvDsPostProcessFrameOutput detection_output,
NvDsPostProcessDetectionParams all_params,
std::set< gint > &  filterOutClassIds,
int32_t  unique_id,
gboolean  output_instance_mask,
gboolean  process_full_frame,
float  segmentationThreshold,
gboolean  maintain_aspect_ratio,
NvDsRoiMeta roi_meta,
gboolean  symmetric_padding 
)
pure virtual

◆ freeBatchOutput() [1/2]

void ModelPostProcessor::freeBatchOutput ( NvDsPostProcessBatchOutput batchOutput)

◆ freeBatchOutput() [2/2]

void ModelPostProcessor::freeBatchOutput ( NvDsPostProcessBatchOutput batchOutput)

◆ getLabels() [1/2]

const std::vector<std::vector<std::string> >& ModelPostProcessor::getLabels ( ) const
inline

◆ getLabels() [2/2]

const std::vector<std::vector<std::string> >& ModelPostProcessor::getLabels ( ) const
inline

◆ initResource() [1/2]

◆ initResource() [2/2]

◆ parseEachFrame() [1/2]

◆ parseEachFrame() [2/2]

◆ parseLabelsFile() [1/2]

NvDsPostProcessStatus ModelPostProcessor::parseLabelsFile ( const std::string &  path)
protected

◆ parseLabelsFile() [2/2]

NvDsPostProcessStatus ModelPostProcessor::parseLabelsFile ( const std::string &  path)
protected

◆ releaseFrameOutput() [1/2]

◆ releaseFrameOutput() [2/2]

◆ setNetworkInfo() [1/2]

void ModelPostProcessor::setNetworkInfo ( NvDsInferNetworkInfo  networkInfo)
inline

◆ setNetworkInfo() [2/2]

void ModelPostProcessor::setNetworkInfo ( NvDsInferNetworkInfo  networkInfo)
inline

Field Documentation

◆ m_AllLayerInfo

std::vector< NvDsInferLayerInfo > ModelPostProcessor::m_AllLayerInfo
protected

◆ m_GpuID

uint32_t ModelPostProcessor::m_GpuID = 0
protected

◆ m_Labels

std::vector< std::vector< std::string > > ModelPostProcessor::m_Labels
protected

◆ m_NetworkInfo

NvDsInferNetworkInfo ModelPostProcessor::m_NetworkInfo = {0}
protected

◆ m_NetworkType

◆ m_OutputLayerInfo

std::vector< NvDsInferLayerInfo > ModelPostProcessor::m_OutputLayerInfo
protected

◆ m_UniqueID

int ModelPostProcessor::m_UniqueID = 0
protected

The documentation for this class was generated from the following file: