NVIDIA DeepStream SDK API Reference

9.2 Release
FrameTransformTexture Class Reference

Detailed Description

Provides common CUDA texture state for frame transformations.

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

Inheritance diagram for FrameTransformTexture:

Public Member Functions

 FrameTransformTexture (const int cudaBlockSize_2D=32)
 Construct common frame-transform state. More...
 
 ~FrameTransformTexture ()
 Release resources owned by the FrameTransformTexture instance. More...
 
void initialize_common (const int debugVerboseLevel, const int maxStreamNum, const int maxBufSurfAddrSize, const int maxTargetNum, const NvMotDataTypes::Size srcImgSize, const uint srcImgPitch, const NvBufSurfaceColorFormat colorFormatType)
 Initialize common transform state and allocate output memory. More...
 
void updateTextureObject (const std::map< NvMOTStreamId, NvMOTFrame * > &inputMeta)
 Update texture objects from a batch of source frames. More...
 
NvBufSurfaceColorFormat getColorFormat () const
 Get the input surface color format. More...
 
uint getMaxVideoStreams () const
 Get the maximum number of video streams in a batch. More...
 
bool isInitialized_common () const
 Report whether common frame-transform state is initialized. More...
 
 FrameTransformTexture (const int cudaBlockSize_2D=32)
 Construct common frame-transform state. More...
 
 ~FrameTransformTexture ()
 Release resources owned by the FrameTransformTexture instance. More...
 
void initialize_common (const int debugVerboseLevel, const int maxStreamNum, const int maxBufSurfAddrSize, const int maxTargetNum, const NvMotDataTypes::Size srcImgSize, const uint srcImgPitch, const NvBufSurfaceColorFormat colorFormatType)
 Initialize common transform state and allocate output memory. More...
 
void updateTextureObject (const std::map< NvMOTStreamId, NvMOTFrame * > &inputMeta)
 Update texture objects from a batch of source frames. More...
 
NvBufSurfaceColorFormat getColorFormat () const
 Get the input surface color format. More...
 
uint getMaxVideoStreams () const
 Get the maximum number of video streams in a batch. More...
 
bool isInitialized_common () const
 Report whether common frame-transform state is initialized. More...
 

Protected Member Functions

void allocateOutputMemories_common ()
 Allocate device and host memory for transform output. More...
 
void deAllocateOutputMemories_common ()
 Release device and host memory for transform output. More...
 
void allocateOutputMemories_common ()
 Allocate device and host memory for transform output. More...
 
void deAllocateOutputMemories_common ()
 Release device and host memory for transform output. More...
 

Protected Attributes

bool m_isInit_common
 Indicates whether common transform state is initialized. More...
 
std::shared_ptr< FrameInputTexture > m_frameInput
 Shared input-frame texture manager. More...
 
float4 * m_rois_h
 
float4 * m_rois_d
 Host and device regions of interest in x, y, width, and height order. More...
 
uint2 * m_dstOffsets_h
 
uint2 * m_dstOffsets_d
 Host and device byte offsets into transform output memory. More...
 
std::map< uint, std::pair< NvMOTStreamId, uint > > m_targetNumInd2RoisInBatchMapper
 Stream and bounding-box indices keyed by batch target index. More...
 
int m_scaleFactor
 Scale that restores values read through normalized CUDA texture mode. More...
 
uint m_lastInd
 Number of targets in the latest transform. More...
 
uint m_numFramesInBatchMax
 Maximum number of frames processed in a batch. More...
 
int m_maxTargetsToTrack
 Maximum number of targets in a batch. More...
 
const int m_cudaBlockSize_2D
 CUDA block width and height for two-dimensional kernels. More...
 
cudaStream_t m_cuStream
 CUDA stream used for frame transformations. More...
 
int m_debugVerboseLevel
 Debug verbosity level. More...
 

Constructor & Destructor Documentation

◆ FrameTransformTexture() [1/2]

FrameTransformTexture::FrameTransformTexture ( const int  cudaBlockSize_2D = 32)

Construct common frame-transform state.

Parameters
[in]cudaBlockSize_2DCUDA block width and height for two-dimensional kernels.

◆ ~FrameTransformTexture() [1/2]

FrameTransformTexture::~FrameTransformTexture ( )

Release resources owned by the FrameTransformTexture instance.

◆ FrameTransformTexture() [2/2]

FrameTransformTexture::FrameTransformTexture ( const int  cudaBlockSize_2D = 32)

Construct common frame-transform state.

Parameters
[in]cudaBlockSize_2DCUDA block width and height for two-dimensional kernels.

◆ ~FrameTransformTexture() [2/2]

FrameTransformTexture::~FrameTransformTexture ( )

Release resources owned by the FrameTransformTexture instance.

Member Function Documentation

◆ allocateOutputMemories_common() [1/2]

void FrameTransformTexture::allocateOutputMemories_common ( )
protected

Allocate device and host memory for transform output.

◆ allocateOutputMemories_common() [2/2]

void FrameTransformTexture::allocateOutputMemories_common ( )
protected

Allocate device and host memory for transform output.

◆ deAllocateOutputMemories_common() [1/2]

void FrameTransformTexture::deAllocateOutputMemories_common ( )
protected

Release device and host memory for transform output.

◆ deAllocateOutputMemories_common() [2/2]

void FrameTransformTexture::deAllocateOutputMemories_common ( )
protected

Release device and host memory for transform output.

◆ getColorFormat() [1/2]

NvBufSurfaceColorFormat FrameTransformTexture::getColorFormat ( ) const
inline

Get the input surface color format.

Definition at line 244 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

References m_frameInput.

◆ getColorFormat() [2/2]

NvBufSurfaceColorFormat FrameTransformTexture::getColorFormat ( ) const
inline

Get the input surface color format.

Definition at line 244 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

References m_frameInput.

◆ getMaxVideoStreams() [1/2]

uint FrameTransformTexture::getMaxVideoStreams ( ) const
inline

Get the maximum number of video streams in a batch.

Definition at line 247 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

References m_numFramesInBatchMax.

◆ getMaxVideoStreams() [2/2]

uint FrameTransformTexture::getMaxVideoStreams ( ) const
inline

Get the maximum number of video streams in a batch.

Definition at line 247 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

References m_numFramesInBatchMax.

◆ initialize_common() [1/2]

void FrameTransformTexture::initialize_common ( const int  debugVerboseLevel,
const int  maxStreamNum,
const int  maxBufSurfAddrSize,
const int  maxTargetNum,
const NvMotDataTypes::Size  srcImgSize,
const uint  srcImgPitch,
const NvBufSurfaceColorFormat  colorFormatType 
)

Initialize common transform state and allocate output memory.

Parameters
[in]debugVerboseLevelDebug verbosity level.
[in]maxStreamNumMaximum number of input streams.
[in]maxBufSurfAddrSizeMaximum number of cached surface-buffer addresses.
[in]maxTargetNumMaximum number of targets in a batch.
[in]srcImgSizeInput image dimensions.
[in]srcImgPitchInput image pitch in bytes.
[in]colorFormatTypeInput surface color format.

◆ initialize_common() [2/2]

void FrameTransformTexture::initialize_common ( const int  debugVerboseLevel,
const int  maxStreamNum,
const int  maxBufSurfAddrSize,
const int  maxTargetNum,
const NvMotDataTypes::Size  srcImgSize,
const uint  srcImgPitch,
const NvBufSurfaceColorFormat  colorFormatType 
)

Initialize common transform state and allocate output memory.

Parameters
[in]debugVerboseLevelDebug verbosity level.
[in]maxStreamNumMaximum number of input streams.
[in]maxBufSurfAddrSizeMaximum number of cached surface-buffer addresses.
[in]maxTargetNumMaximum number of targets in a batch.
[in]srcImgSizeInput image dimensions.
[in]srcImgPitchInput image pitch in bytes.
[in]colorFormatTypeInput surface color format.

◆ isInitialized_common() [1/2]

bool FrameTransformTexture::isInitialized_common ( ) const
inline

Report whether common frame-transform state is initialized.

Definition at line 250 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

References m_isInit_common.

◆ isInitialized_common() [2/2]

bool FrameTransformTexture::isInitialized_common ( ) const
inline

Report whether common frame-transform state is initialized.

Definition at line 250 of file 9.2/sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

References m_isInit_common.

◆ updateTextureObject() [1/2]

void FrameTransformTexture::updateTextureObject ( const std::map< NvMOTStreamId, NvMOTFrame * > &  inputMeta)

Update texture objects from a batch of source frames.

Parameters
[in]inputMetaSource frames keyed by stream ID.

◆ updateTextureObject() [2/2]

void FrameTransformTexture::updateTextureObject ( const std::map< NvMOTStreamId, NvMOTFrame * > &  inputMeta)

Update texture objects from a batch of source frames.

Parameters
[in]inputMetaSource frames keyed by stream ID.

Field Documentation

◆ m_cudaBlockSize_2D

const int FrameTransformTexture::m_cudaBlockSize_2D
protected

CUDA block width and height for two-dimensional kernels.

Definition at line 276 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_cuStream

cudaStream_t FrameTransformTexture::m_cuStream
protected

CUDA stream used for frame transformations.

Definition at line 277 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_debugVerboseLevel

int FrameTransformTexture::m_debugVerboseLevel
protected

◆ m_dstOffsets_d

uint2 * FrameTransformTexture::m_dstOffsets_d
protected

Host and device byte offsets into transform output memory.

Definition at line 266 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_dstOffsets_h

uint2 * FrameTransformTexture::m_dstOffsets_h
protected

◆ m_frameInput

std::shared_ptr< FrameInputTexture > FrameTransformTexture::m_frameInput
protected

Shared input-frame texture manager.

Definition at line 262 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

Referenced by getColorFormat().

◆ m_isInit_common

bool FrameTransformTexture::m_isInit_common
protected

Indicates whether common transform state is initialized.

Definition at line 259 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

Referenced by isInitialized_common().

◆ m_lastInd

uint FrameTransformTexture::m_lastInd
protected

Number of targets in the latest transform.

Definition at line 271 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_maxTargetsToTrack

int FrameTransformTexture::m_maxTargetsToTrack
protected

Maximum number of targets in a batch.

Definition at line 273 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_numFramesInBatchMax

uint FrameTransformTexture::m_numFramesInBatchMax
protected

Maximum number of frames processed in a batch.

Definition at line 272 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

Referenced by getMaxVideoStreams().

◆ m_rois_d

float4 * FrameTransformTexture::m_rois_d
protected

Host and device regions of interest in x, y, width, and height order.

Definition at line 265 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_rois_h

float4 * FrameTransformTexture::m_rois_h
protected

◆ m_scaleFactor

int FrameTransformTexture::m_scaleFactor
protected

Scale that restores values read through normalized CUDA texture mode.

Definition at line 270 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.

◆ m_targetNumInd2RoisInBatchMapper

std::map< uint, std::pair< NvMOTStreamId, uint > > FrameTransformTexture::m_targetNumInd2RoisInBatchMapper
protected

Stream and bounding-box indices keyed by batch target index.

Definition at line 267 of file sources/libs/nvmultiobjecttracker/include/modules/FrameTransform/FrameTransform.hpp.


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