NVIDIA DeepStream SDK API Reference

9.2 Release
FeatureExtractor Class Reference

Detailed Description

Extracts batched ColorNames and HOG features with VPI.

Definition at line 39 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Public Types

enum  FEATURE_TYPES : uint {
  COLOR_NAMES = 0x1,
  HOG = 0x10,
  COLOR_NAMES = 0x1,
  HOG = 0x10
}
 
enum  FEATURE_TYPES : uint {
  COLOR_NAMES = 0x1,
  HOG = 0x10,
  COLOR_NAMES = 0x1,
  HOG = 0x10
}
 

Public Member Functions

 FeatureExtractor ()
 Construct an uninitialized feature extractor. More...
 
virtual ~FeatureExtractor ()
 Release feature-extraction resources. More...
 
bool isInitialized ()
 Report whether GPU feature extraction is initialized. More...
 
uint getNumChannels ()
 Return the number of channels in each extracted feature vector. More...
 
void initialize_ColorNames ()
 Allocate the device memory for the LUT on the device memory and copy the LUT from host to device. More...
 
bool extractFeatures_VPI (const std::map< NvMOTStreamId, NvMOTFrame * > &nvFramesInBatch, const std::map< NvMOTStreamId, std::vector< std::pair< uint, NvMotDataTypes::Rect2f > > > &roisInBatch, const uint lastBboxInd, const bool doUpdateImages)
 Extract batched visual features from source-image regions with VPI. More...
 
bool initialize (const int debugVerboseLevel, const int maxStreamNum, const int maxBufSurfAddrSize, const int maxfeatureImgNum, const NvMotDataTypes::Size srcImgSize, const uint srcImgPitch, const NvBufSurfaceColorFormat colorFormatType, const NvMotDataTypes::Size templateImgSize, const int hogCellSize, const uint featureTypes, const VPIBackend vpiDevType=VPI_BACKEND_CUDA, const VPIImageFormat vpiImgOutputType=VPI_IMAGE_FORMAT_U16)
 Initialize feature extraction and allocate its host and device memory. More...
 
uchar * getOutputFeaturePtrs_VPI (uint &width, uint &height, uint2 &outBatchingGrid, uint &channels, uint &pitch, uint &imgNum)
 Get the metadata for the extracted features by VPI. More...
 
uint getSrcImgNum ()
 Return the number of source image patches in the current batch. More...
 
uint2 getOutBatchingGrid () const
 Return the two-dimensional output batching grid. More...
 
uint getOutputFeatureChannelSize () const
 Return the number of channels in each output feature vector. More...
 
bool isVpiOutputInHighPrecision () const
 Report whether VPI produces 16-bit feature values. More...
 
 FeatureExtractor ()
 Construct an uninitialized feature extractor. More...
 
virtual ~FeatureExtractor ()
 Release feature-extraction resources. More...
 
bool isInitialized ()
 Report whether GPU feature extraction is initialized. More...
 
uint getNumChannels ()
 Return the number of channels in each extracted feature vector. More...
 
void initialize_ColorNames ()
 Allocate the device memory for the LUT on the device memory and copy the LUT from host to device. More...
 
bool extractFeatures_VPI (const std::map< NvMOTStreamId, NvMOTFrame * > &nvFramesInBatch, const std::map< NvMOTStreamId, std::vector< std::pair< uint, NvMotDataTypes::Rect2f > > > &roisInBatch, const uint lastBboxInd, const bool doUpdateImages)
 Extract batched visual features from source-image regions with VPI. More...
 
bool initialize (const int debugVerboseLevel, const int maxStreamNum, const int maxBufSurfAddrSize, const int maxfeatureImgNum, const NvMotDataTypes::Size srcImgSize, const uint srcImgPitch, const NvBufSurfaceColorFormat colorFormatType, const NvMotDataTypes::Size templateImgSize, const int hogCellSize, const uint featureTypes, const VPIBackend vpiDevType=VPI_BACKEND_CUDA, const VPIImageFormat vpiImgOutputType=VPI_IMAGE_FORMAT_U16)
 Initialize feature extraction and allocate its host and device memory. More...
 
uchar * getOutputFeaturePtrs_VPI (uint &width, uint &height, uint2 &outBatchingGrid, uint &channels, uint &pitch, uint &imgNum)
 Get the metadata for the extracted features by VPI. More...
 
uint getSrcImgNum ()
 Return the number of source image patches in the current batch. More...
 
uint2 getOutBatchingGrid () const
 Return the two-dimensional output batching grid. More...
 
uint getOutputFeatureChannelSize () const
 Return the number of channels in each output feature vector. More...
 
bool isVpiOutputInHighPrecision () const
 Report whether VPI produces 16-bit feature values. More...
 

Static Public Attributes

static const uint NUM_CHANNELS_COLORNAMES = 10
 Number of channels in the ColorNames feature. More...
 
static const uint NUM_CHANNELS_HOG_SENSITIVE = 18
 Number of channels in the contrast-sensitive HOG feature. More...
 
static const uint NUM_CHANNELS_HOG_INSENSITIVE = NUM_CHANNELS_HOG_SENSITIVE/2
 Number of channels in the contrast-insensitive HOG feature. More...
 

Protected Member Functions

void initialize_VPI ()
 Initialize and allocate the input/output memories for VPI. More...
 
void initialize_VPI ()
 Initialize and allocate the input/output memories for VPI. More...
 

Protected Attributes

const uint m_featureTypeHog = VPI_HOG_CONTRAST_SENSITIVE
 Selected VPI HOG feature type. More...
 
const uint m_numOfChannelsByHog = FeatureExtractor::NUM_CHANNELS_HOG_SENSITIVE
 Number of output feature channels extracted by HOG. More...
 
const uint m_numOfChannelsByColorNames = FeatureExtractor::NUM_CHANNELS_COLORNAMES
 Number of output feature channels extracted by ColorNames. More...
 
uint8_t * m_srcImgPatchPtr_d [2]
 Device pointers to externally allocated source image storage. More...
 
uint m_srcSubImgWidth [2]
 Source image-patch widths for each plane. More...
 
uint m_srcSubImgHeight [2]
 Source image-patch heights for each plane, including the NV12 plane layout. More...
 
uint m_dstSubImgHeight [2]
 Destination image-patch heights for each plane. More...
 
uint2 m_outBatchingGrid
 Grid dimensions used to compose outputs in memory. More...
 
uint m_srcImgColorChannels
 Number of color channels in a source image patch. More...
 
NvBufSurfaceColorFormat m_colorFormatType
 Source image color format. More...
 
uint m_srcImgPatchPitch [2]
 Source image-patch pitches for each plane. More...
 
uint m_srcImgPatchNum
 Number of source image patches processed in a batch. More...
 
uint m_maxfeatureImgNum
 Maximum number of feature images processed in a batch. More...
 
uint m_maxNumFramesInBatch
 Maximum number of video streams processed in a batch. More...
 
uint m_numFeatureChannelsOut
 Total # of feature channels, including other types of features, so extra channel space can be reserved. More...
 
uint m_featureTypes
 The types of visual features to be used (e.g., ColorNames and/or HOG). More...
 
cuComplex * m_batch_ftrs_device
 Device memory to hold the extracted features. More...
 
size_t m_batch_ftrs_device_pitch
 Pitch of the device feature buffer. More...
 
void * m_batch_array_host_real
 Host memory to download the extracted features. More...
 
std::shared_ptr< cuDCFFrameTransformTexture > m_subImageCropper2
 Cropper & Scaler. More...
 
bool m_initGpu
 Indicates whether GPU feature extraction is initialized. More...
 
int m_debugVerboseLevel
 Debug verbosity level. More...
 
const int m_cudaBlockSize = 32
 Tile/block size. More...
 
const bool m_showGpuTiming = false
 Controls whether GPU timing is displayed. More...
 
int m_hogCellSize
 Cell size of HOG feature. More...
 
cudaEvent_t m_eventStart
 Event start point for GPU timers. More...
 
cudaEvent_t m_eventStop
 Event stop point for GPU timers. More...
 
bool m_isVpiInitialized
 Indicates whether VPI resources are initialized. More...
 
VPIImage m_vpiInputImage [2]
 For input image source. More...
 
VPIImageData m_vpiInputImageData [2]
 VPI metadata for input image planes. More...
 
std::vector< VPIImage > m_vpiOutFeatures
 VPI output feature images. More...
 
std::vector< VPIImageData > m_vpiOutFeaturesData
 Metadata for VPI output feature images. More...
 
VPIStream m_vpiStream
 Stream used for VPI operations. More...
 
VPIPayload m_vpiColorNames
 VPI ColorNames payload. More...
 
VPIPayload m_vpiHOG
 VPI HOG payload. More...
 
void * m_batch_vpi_ftrs
 CUDA output buffer where VPI lib will write the extracted features. More...
 
size_t m_batch_vpi_ftrs_pitch
 Pitch of the VPI feature output buffer. More...
 
VPIBackend m_vpiDevType
 VPI backend used for feature extraction. More...
 
const int m_vpiImgFlags = VPI_BACKEND_CUDA | VPI_RESTRICT_MEM_USAGE
 Flags used to wrap CUDA image memory for VPI. More...
 
VPIImageFormat m_vpiImgOutputType
 VPI image format used for feature output. More...
 

Member Enumeration Documentation

◆ FEATURE_TYPES [1/2]

Enumerator
COLOR_NAMES 

ColorNames feature.

HOG 

HOG feature.

COLOR_NAMES 

ColorNames feature.

HOG 

HOG feature.

Definition at line 48 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ FEATURE_TYPES [2/2]

Enumerator
COLOR_NAMES 

ColorNames feature.

HOG 

HOG feature.

COLOR_NAMES 

ColorNames feature.

HOG 

HOG feature.

Definition at line 48 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Constructor & Destructor Documentation

◆ FeatureExtractor() [1/2]

FeatureExtractor::FeatureExtractor ( )

Construct an uninitialized feature extractor.

◆ ~FeatureExtractor() [1/2]

virtual FeatureExtractor::~FeatureExtractor ( )
virtual

Release feature-extraction resources.

◆ FeatureExtractor() [2/2]

FeatureExtractor::FeatureExtractor ( )

Construct an uninitialized feature extractor.

◆ ~FeatureExtractor() [2/2]

virtual FeatureExtractor::~FeatureExtractor ( )
virtual

Release feature-extraction resources.

Member Function Documentation

◆ extractFeatures_VPI() [1/2]

bool FeatureExtractor::extractFeatures_VPI ( const std::map< NvMOTStreamId, NvMOTFrame * > &  nvFramesInBatch,
const std::map< NvMOTStreamId, std::vector< std::pair< uint, NvMotDataTypes::Rect2f > > > &  roisInBatch,
const uint  lastBboxInd,
const bool  doUpdateImages 
)

Extract batched visual features from source-image regions with VPI.

Parameters
[in]nvFramesInBatchThe input images from which features are extracted.
[in]roisInBatchThe ROIs for each stream, as pairs of bbox index and rectangle.
[in]lastBboxIndThe last bbox index in the batch.
[in]doUpdateImagesWhether to store input images on the first extraction call for a batch.
Returns
True when feature extraction succeeds.

◆ extractFeatures_VPI() [2/2]

bool FeatureExtractor::extractFeatures_VPI ( const std::map< NvMOTStreamId, NvMOTFrame * > &  nvFramesInBatch,
const std::map< NvMOTStreamId, std::vector< std::pair< uint, NvMotDataTypes::Rect2f > > > &  roisInBatch,
const uint  lastBboxInd,
const bool  doUpdateImages 
)

Extract batched visual features from source-image regions with VPI.

Parameters
[in]nvFramesInBatchThe input images from which features are extracted.
[in]roisInBatchThe ROIs for each stream, as pairs of bbox index and rectangle.
[in]lastBboxIndThe last bbox index in the batch.
[in]doUpdateImagesWhether to store input images on the first extraction call for a batch.
Returns
True when feature extraction succeeds.

◆ getNumChannels() [1/2]

uint FeatureExtractor::getNumChannels ( )
inline

Return the number of channels in each extracted feature vector.

Definition at line 61 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_numFeatureChannelsOut.

◆ getNumChannels() [2/2]

uint FeatureExtractor::getNumChannels ( )
inline

Return the number of channels in each extracted feature vector.

Definition at line 61 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_numFeatureChannelsOut.

◆ getOutBatchingGrid() [1/2]

uint2 FeatureExtractor::getOutBatchingGrid ( ) const
inline

Return the two-dimensional output batching grid.

Definition at line 147 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_outBatchingGrid.

◆ getOutBatchingGrid() [2/2]

uint2 FeatureExtractor::getOutBatchingGrid ( ) const
inline

Return the two-dimensional output batching grid.

Definition at line 147 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_outBatchingGrid.

◆ getOutputFeatureChannelSize() [1/2]

uint FeatureExtractor::getOutputFeatureChannelSize ( ) const
inline

Return the number of channels in each output feature vector.

Definition at line 150 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_numFeatureChannelsOut.

◆ getOutputFeatureChannelSize() [2/2]

uint FeatureExtractor::getOutputFeatureChannelSize ( ) const
inline

Return the number of channels in each output feature vector.

Definition at line 150 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_numFeatureChannelsOut.

◆ getOutputFeaturePtrs_VPI() [1/2]

uchar* FeatureExtractor::getOutputFeaturePtrs_VPI ( uint &  width,
uint &  height,
uint2 &  outBatchingGrid,
uint &  channels,
uint &  pitch,
uint &  imgNum 
)

Get the metadata for the extracted features by VPI.

Parameters
[out]widthThe feature width.
[out]heightThe feature height, including the NV12 plane layout when applicable.
[out]outBatchingGridThe dimensions of the VPI feature grid.
[out]channelsThe number of channels in each image patch.
[out]pitchThe pitch of a source image patch.
[out]imgNumThe number of image patches in the batch.
Returns
The device pointer to the feature-vector data.

◆ getOutputFeaturePtrs_VPI() [2/2]

uchar* FeatureExtractor::getOutputFeaturePtrs_VPI ( uint &  width,
uint &  height,
uint2 &  outBatchingGrid,
uint &  channels,
uint &  pitch,
uint &  imgNum 
)

Get the metadata for the extracted features by VPI.

Parameters
[out]widthThe feature width.
[out]heightThe feature height, including the NV12 plane layout when applicable.
[out]outBatchingGridThe dimensions of the VPI feature grid.
[out]channelsThe number of channels in each image patch.
[out]pitchThe pitch of a source image patch.
[out]imgNumThe number of image patches in the batch.
Returns
The device pointer to the feature-vector data.

◆ getSrcImgNum() [1/2]

uint FeatureExtractor::getSrcImgNum ( )
inline

Return the number of source image patches in the current batch.

Definition at line 144 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_srcImgPatchNum.

◆ getSrcImgNum() [2/2]

uint FeatureExtractor::getSrcImgNum ( )
inline

Return the number of source image patches in the current batch.

Definition at line 144 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_srcImgPatchNum.

◆ initialize() [1/2]

bool FeatureExtractor::initialize ( const int  debugVerboseLevel,
const int  maxStreamNum,
const int  maxBufSurfAddrSize,
const int  maxfeatureImgNum,
const NvMotDataTypes::Size  srcImgSize,
const uint  srcImgPitch,
const NvBufSurfaceColorFormat  colorFormatType,
const NvMotDataTypes::Size  templateImgSize,
const int  hogCellSize,
const uint  featureTypes,
const VPIBackend  vpiDevType = VPI_BACKEND_CUDA,
const VPIImageFormat  vpiImgOutputType = VPI_IMAGE_FORMAT_U16 
)

Initialize feature extraction and allocate its host and device memory.

Parameters
[in]debugVerboseLevelThe debug level that selects which intermediate information is printed.
[in]maxStreamNumThe maximum number of streams to extract.
[in]maxBufSurfAddrSizeThe maximum number of possible surface buffer addresses.
[in]maxfeatureImgNumThe maximum number of feature images.
[in]srcImgSizeThe input image size.
[in]srcImgPitchThe input image pitch.
[in]colorFormatTypeThe color format of the input image.
[in]templateImgSizeThe size of the tracker templates.
[in]hogCellSizeThe cell size of the HOG feature.
[in]featureTypesThe feature types to extract, such as ColorNames or HOG.
[in]vpiDevTypeThe VPI backend, CUDA or CPU.
[in]vpiImgOutputTypeThe VPI image format of the extracted features.
Returns
True when initialization completes.

◆ initialize() [2/2]

bool FeatureExtractor::initialize ( const int  debugVerboseLevel,
const int  maxStreamNum,
const int  maxBufSurfAddrSize,
const int  maxfeatureImgNum,
const NvMotDataTypes::Size  srcImgSize,
const uint  srcImgPitch,
const NvBufSurfaceColorFormat  colorFormatType,
const NvMotDataTypes::Size  templateImgSize,
const int  hogCellSize,
const uint  featureTypes,
const VPIBackend  vpiDevType = VPI_BACKEND_CUDA,
const VPIImageFormat  vpiImgOutputType = VPI_IMAGE_FORMAT_U16 
)

Initialize feature extraction and allocate its host and device memory.

Parameters
[in]debugVerboseLevelThe debug level that selects which intermediate information is printed.
[in]maxStreamNumThe maximum number of streams to extract.
[in]maxBufSurfAddrSizeThe maximum number of possible surface buffer addresses.
[in]maxfeatureImgNumThe maximum number of feature images.
[in]srcImgSizeThe input image size.
[in]srcImgPitchThe input image pitch.
[in]colorFormatTypeThe color format of the input image.
[in]templateImgSizeThe size of the tracker templates.
[in]hogCellSizeThe cell size of the HOG feature.
[in]featureTypesThe feature types to extract, such as ColorNames or HOG.
[in]vpiDevTypeThe VPI backend, CUDA or CPU.
[in]vpiImgOutputTypeThe VPI image format of the extracted features.
Returns
True when initialization completes.

◆ initialize_ColorNames() [1/2]

void FeatureExtractor::initialize_ColorNames ( )

Allocate the device memory for the LUT on the device memory and copy the LUT from host to device.

◆ initialize_ColorNames() [2/2]

void FeatureExtractor::initialize_ColorNames ( )

Allocate the device memory for the LUT on the device memory and copy the LUT from host to device.

◆ initialize_VPI() [1/2]

void FeatureExtractor::initialize_VPI ( )
protected

Initialize and allocate the input/output memories for VPI.

◆ initialize_VPI() [2/2]

void FeatureExtractor::initialize_VPI ( )
protected

Initialize and allocate the input/output memories for VPI.

◆ isInitialized() [1/2]

bool FeatureExtractor::isInitialized ( )
inline

Report whether GPU feature extraction is initialized.

Definition at line 58 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_initGpu.

◆ isInitialized() [2/2]

bool FeatureExtractor::isInitialized ( )
inline

Report whether GPU feature extraction is initialized.

Definition at line 58 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_initGpu.

◆ isVpiOutputInHighPrecision() [1/2]

bool FeatureExtractor::isVpiOutputInHighPrecision ( ) const
inline

Report whether VPI produces 16-bit feature values.

Definition at line 153 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_vpiImgOutputType.

◆ isVpiOutputInHighPrecision() [2/2]

bool FeatureExtractor::isVpiOutputInHighPrecision ( ) const
inline

Report whether VPI produces 16-bit feature values.

Definition at line 153 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

References m_vpiImgOutputType.

Field Documentation

◆ m_batch_array_host_real

void * FeatureExtractor::m_batch_array_host_real
protected

Host memory to download the extracted features.

Definition at line 187 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_batch_ftrs_device

cuComplex * FeatureExtractor::m_batch_ftrs_device
protected

Device memory to hold the extracted features.

Definition at line 185 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_batch_ftrs_device_pitch

size_t FeatureExtractor::m_batch_ftrs_device_pitch
protected

Pitch of the device feature buffer.

Definition at line 186 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_batch_vpi_ftrs

void * FeatureExtractor::m_batch_vpi_ftrs
protected

CUDA output buffer where VPI lib will write the extracted features.

Definition at line 210 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_batch_vpi_ftrs_pitch

size_t FeatureExtractor::m_batch_vpi_ftrs_pitch
protected

Pitch of the VPI feature output buffer.

Definition at line 211 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_colorFormatType

NvBufSurfaceColorFormat FeatureExtractor::m_colorFormatType
protected

Source image color format.

Definition at line 178 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_cudaBlockSize

const int FeatureExtractor::m_cudaBlockSize = 32
protected

◆ m_debugVerboseLevel

int FeatureExtractor::m_debugVerboseLevel
protected

Debug verbosity level.

Definition at line 192 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_dstSubImgHeight

uint FeatureExtractor::m_dstSubImgHeight
protected

Destination image-patch heights for each plane.

Definition at line 175 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_eventStart

cudaEvent_t FeatureExtractor::m_eventStart
protected

Event start point for GPU timers.

Definition at line 198 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_eventStop

cudaEvent_t FeatureExtractor::m_eventStop
protected

Event stop point for GPU timers.

Definition at line 199 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_featureTypeHog

const uint FeatureExtractor::m_featureTypeHog = VPI_HOG_CONTRAST_SENSITIVE
protected

Selected VPI HOG feature type.

Contrast-sensitive HOG adds numOrientations channels, contrast-insensitive HOG adds half as many, and texture HOG adds four.

Definition at line 168 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_featureTypes

uint FeatureExtractor::m_featureTypes
protected

The types of visual features to be used (e.g., ColorNames and/or HOG).

Definition at line 184 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_hogCellSize

int FeatureExtractor::m_hogCellSize
protected

Cell size of HOG feature.

Definition at line 195 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_initGpu

bool FeatureExtractor::m_initGpu
protected

Indicates whether GPU feature extraction is initialized.

Definition at line 189 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Referenced by isInitialized().

◆ m_isVpiInitialized

bool FeatureExtractor::m_isVpiInitialized
protected

Indicates whether VPI resources are initialized.

Definition at line 202 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_maxfeatureImgNum

uint FeatureExtractor::m_maxfeatureImgNum
protected

Maximum number of feature images processed in a batch.

Definition at line 181 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_maxNumFramesInBatch

uint FeatureExtractor::m_maxNumFramesInBatch
protected

Maximum number of video streams processed in a batch.

Definition at line 182 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_numFeatureChannelsOut

uint FeatureExtractor::m_numFeatureChannelsOut
protected

Total # of feature channels, including other types of features, so extra channel space can be reserved.

Definition at line 183 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Referenced by getNumChannels(), and getOutputFeatureChannelSize().

◆ m_numOfChannelsByColorNames

const uint FeatureExtractor::m_numOfChannelsByColorNames = FeatureExtractor::NUM_CHANNELS_COLORNAMES
protected

Number of output feature channels extracted by ColorNames.

Definition at line 171 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_numOfChannelsByHog

const uint FeatureExtractor::m_numOfChannelsByHog = FeatureExtractor::NUM_CHANNELS_HOG_SENSITIVE
protected

Number of output feature channels extracted by HOG.

Definition at line 170 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_outBatchingGrid

uint2 FeatureExtractor::m_outBatchingGrid
protected

Grid dimensions used to compose outputs in memory.

Definition at line 176 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Referenced by getOutBatchingGrid().

◆ m_showGpuTiming

const bool FeatureExtractor::m_showGpuTiming = false
protected

Controls whether GPU timing is displayed.

Definition at line 194 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_srcImgColorChannels

uint FeatureExtractor::m_srcImgColorChannels
protected

Number of color channels in a source image patch.

Definition at line 177 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_srcImgPatchNum

uint FeatureExtractor::m_srcImgPatchNum
protected

Number of source image patches processed in a batch.

Definition at line 180 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Referenced by getSrcImgNum().

◆ m_srcImgPatchPitch

uint FeatureExtractor::m_srcImgPatchPitch
protected

Source image-patch pitches for each plane.

Definition at line 179 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_srcImgPatchPtr_d

uint8_t * FeatureExtractor::m_srcImgPatchPtr_d
protected

Device pointers to externally allocated source image storage.

Definition at line 172 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_srcSubImgHeight

uint FeatureExtractor::m_srcSubImgHeight
protected

Source image-patch heights for each plane, including the NV12 plane layout.

Definition at line 174 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_srcSubImgWidth

uint FeatureExtractor::m_srcSubImgWidth
protected

Source image-patch widths for each plane.

Definition at line 173 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_subImageCropper2

std::shared_ptr< cuDCFFrameTransformTexture > FeatureExtractor::m_subImageCropper2
protected

◆ m_vpiColorNames

VPIPayload FeatureExtractor::m_vpiColorNames
protected

VPI ColorNames payload.

Definition at line 208 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiDevType

VPIBackend FeatureExtractor::m_vpiDevType
protected

VPI backend used for feature extraction.

Definition at line 212 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiHOG

VPIPayload FeatureExtractor::m_vpiHOG
protected

◆ m_vpiImgFlags

const int FeatureExtractor::m_vpiImgFlags = VPI_BACKEND_CUDA | VPI_RESTRICT_MEM_USAGE
protected

Flags used to wrap CUDA image memory for VPI.

Source image patches are on CUDA memory.

Definition at line 213 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiImgOutputType

VPIImageFormat FeatureExtractor::m_vpiImgOutputType
protected

VPI image format used for feature output.

Unsigned 8-bit or 16-bit integer, so the range is [0, 255] or [0, 65535], whereas ColorNames values are in [-1, 1).

Definition at line 215 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

Referenced by isVpiOutputInHighPrecision().

◆ m_vpiInputImage

VPIImage FeatureExtractor::m_vpiInputImage
protected

For input image source.

Definition at line 203 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiInputImageData

VPIImageData FeatureExtractor::m_vpiInputImageData
protected

VPI metadata for input image planes.

Definition at line 204 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiOutFeatures

std::vector< VPIImage > FeatureExtractor::m_vpiOutFeatures
protected

VPI output feature images.

Definition at line 205 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiOutFeaturesData

std::vector< VPIImageData > FeatureExtractor::m_vpiOutFeaturesData
protected

Metadata for VPI output feature images.

Definition at line 206 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ m_vpiStream

VPIStream FeatureExtractor::m_vpiStream
protected

Stream used for VPI operations.

Definition at line 207 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ NUM_CHANNELS_COLORNAMES

static const uint FeatureExtractor::NUM_CHANNELS_COLORNAMES = 10
static

Number of channels in the ColorNames feature.

Definition at line 53 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ NUM_CHANNELS_HOG_INSENSITIVE

static const uint FeatureExtractor::NUM_CHANNELS_HOG_INSENSITIVE = NUM_CHANNELS_HOG_SENSITIVE/2
static

Number of channels in the contrast-insensitive HOG feature.

Definition at line 55 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.

◆ NUM_CHANNELS_HOG_SENSITIVE

static const uint FeatureExtractor::NUM_CHANNELS_HOG_SENSITIVE = 18
static

Number of channels in the contrast-sensitive HOG feature.

Definition at line 54 of file sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/featureExtractor.hpp.


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